@ibiz-template/mob-vue3-components 0.0.4 → 0.0.5
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.min.css +1 -1
- package/dist/index.system.min.js +2 -2
- package/dist/index.system.min.js.map +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-mdctrl/form-mdctrl-form/form-mdctrl-form.mjs +1 -0
- package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-multi-form/repeater-multi-form.mjs +2 -1
- package/es/control/form/form-detail/form-mdctrl/form-mdctrl.css +1 -1
- package/es/control/form/form-detail/form-mdctrl/form-mdctrl.d.ts +1 -0
- package/es/control/form/form-detail/form-mdctrl/form-mdctrl.mjs +7 -3
- package/es/control/form/form-detail/form-mdctrl/index.d.ts +8 -0
- package/es/control/form/form-detail/form-mdctrl/index.mjs +1 -1
- package/es/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.css +1 -1
- package/es/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.d.ts +10 -2
- package/es/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.mjs +29 -17
- package/es/control/form/form-detail/index.mjs +6 -0
- package/es/control/form/index.mjs +6 -0
- package/es/control/index.mjs +6 -0
- package/es/editor/span/span/span.css +1 -1
- package/es/index.d.ts +1 -0
- package/es/index.mjs +51 -1
- package/es/view-engine/mob-edit-view.engine.mjs +1 -2
- package/lib/control/form/form-detail/form-item/form-item-container/form-item-container.css +1 -1
- package/lib/control/form/form-detail/form-mdctrl/form-mdctrl-form/form-mdctrl-form.cjs +1 -0
- package/lib/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/repeater-multi-form/repeater-multi-form.cjs +2 -1
- package/lib/control/form/form-detail/form-mdctrl/form-mdctrl.cjs +6 -2
- package/lib/control/form/form-detail/form-mdctrl/form-mdctrl.css +1 -1
- package/lib/control/form/form-detail/form-mdctrl/index.cjs +6 -0
- package/lib/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.cjs +28 -16
- package/lib/control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.css +1 -1
- package/lib/control/form/form-detail/index.cjs +12 -0
- package/lib/control/form/index.cjs +12 -0
- package/lib/control/index.cjs +12 -0
- package/lib/editor/span/span/span.css +1 -1
- package/lib/index.cjs +156 -38
- package/lib/view-engine/mob-edit-view.engine.cjs +1 -2
- package/package.json +6 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-form-item-container{--ibiz-form-item-container-label-width:8.125rem;--ibiz-form-item-container-line-height:var(--ibiz-form-item-line-height);--ibiz-form-item-container-require-mark-color:var(--ibiz-color-danger);--ibiz-form-item-container-container-padding:var(--ibiz-spacing-base);--ibiz-form-item-container-left-container-padding:var(--ibiz-spacing-base);--ibiz-form-item-container-error-margin-top:var(--ibiz-spacing-extra-tight);--ibiz-form-item-container-bg-color:var(--ibiz-color-bg-1);--ibiz-form-item-container-label-font-size:var(--ibiz-font-size-header-6);--ibiz-form-item-container-label-text-color:var(--ibiz-color-text-0);--ibiz-form-item-container-container-error-padding:0 var(--ibiz-spacing-base);--ibiz-form-item-container-border:0.0625rem var(--ibiz-color-border) solid;--ibiz-form-item-container-editor-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-none) var(--ibiz-spacing-tight) var(--ibiz-spacing-none);--ibiz-form-item-label-line-height:1;--ibiz-form-item-label-font-size:var(--ibiz-font-size-header-5);--ibiz-form-item-label-text-color:var(--ibiz-color-text-0);position:relative;width:100%;height:100%;padding:var(--ibiz-form-item-container-container-padding);font-size:var(--ibiz-form-item-font-size);background-color:var(--ibiz-form-item-container-bg-color);border-width:calc(100% - var(--ibiz-spacing-base) * 2);border-radius:var(--ibiz-border-radius-small)}.ibiz-form-item-container::after{position:absolute;z-index:1;width:calc(100% - var(--ibiz-spacing-base) * 2);height:.
|
|
1
|
+
.ibiz-form-item-container{--ibiz-form-item-container-label-width:8.125rem;--ibiz-form-item-container-line-height:var(--ibiz-form-item-line-height);--ibiz-form-item-container-require-mark-color:var(--ibiz-color-danger);--ibiz-form-item-container-container-padding:var(--ibiz-spacing-base);--ibiz-form-item-container-left-container-padding:var(--ibiz-spacing-base);--ibiz-form-item-container-error-margin-top:var(--ibiz-spacing-extra-tight);--ibiz-form-item-container-bg-color:var(--ibiz-color-bg-1);--ibiz-form-item-container-label-font-size:var(--ibiz-font-size-header-6);--ibiz-form-item-container-label-text-color:var(--ibiz-color-text-0);--ibiz-form-item-container-container-error-padding:0 var(--ibiz-spacing-base);--ibiz-form-item-container-border:0.0625rem var(--ibiz-color-border) solid;--ibiz-form-item-container-editor-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-none) var(--ibiz-spacing-tight) var(--ibiz-spacing-none);--ibiz-form-item-label-line-height:1;--ibiz-form-item-label-font-size:var(--ibiz-font-size-header-5);--ibiz-form-item-label-text-color:var(--ibiz-color-text-0);position:relative;width:100%;height:100%;padding:var(--ibiz-form-item-container-container-padding);font-size:var(--ibiz-form-item-font-size);background-color:var(--ibiz-form-item-container-bg-color);border-width:calc(100% - var(--ibiz-spacing-base) * 2);border-radius:var(--ibiz-border-radius-small)}.ibiz-form-item-container::after{position:absolute;z-index:1;width:calc(100% - var(--ibiz-spacing-base) * 2);height:.0625rem;content:"";background-color:var(--ibiz-color-border);transform:scaleY(.5)}.ibiz-form-item-container__label{position:relative;flex-shrink:0;width:var(--ibiz-form-item-container-label-width);overflow:visible;color:var(--ibiz-form-item-label-text-color)}.ibiz-form-item-container__label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block;width:100%;font-size:var(--ibiz-form-item-container-label-font-size);text-align:var(--ibiz-form-item-container-label-align)}.ibiz-form-item-container__editor{width:100%;text-align:var(--ibiz-form-item-container-editor-align)}.ibiz-form-item-container__editor .van-cell{padding-bottom:0}.ibiz-form-item-container.is-required .ibiz-form-item-container__label::before{position:absolute;top:.1875rem;left:-.625rem;display:inline-block;height:100%;font-size:.875rem;color:var(--ibiz-form-item-error-color);content:"*"}.ibiz-form-item-container.is-error::after{background-color:var(--ibiz-form-item-error-color)}.ibiz-form-item-container.is-error .ibiz-form-item-container-content{border-color:var(--ibiz-form-item-error-color)}.ibiz-form-item-container--left::after{bottom:0}.ibiz-form-item-container--right.is-required .ibiz-form-item-container__label::before{right:-.625rem;left:auto}.ibiz-form-item-container--right .ibiz-form-item-container__editor{position:relative;width:calc(100% - var(--ibiz-form-item-container-label-width))}.ibiz-form-item-container--left .ibiz-form-item-container__editor{width:calc(100% - var(--ibiz-form-item-container-label-width))}.ibiz-form-item-container--top .ibiz-form-item-container__editor{padding:var(--ibiz-form-item-container-editor-padding)}.ibiz-form-item-container--bottom .ibiz-form-item-container__editor{padding:var(--ibiz-form-item-container-editor-padding)}.ibiz-form-item-container-content{position:relative}.ibiz-form-item-container--left .ibiz-form-item-container-content,.ibiz-form-item-container--right .ibiz-form-item-container-content{height:100%;display:flex;align-items:center;justify-content:center}.ibiz-form-item-container-error{position:absolute;bottom:0;width:calc(100% - var(--ibiz-spacing-base));padding-right:var(--ibiz-spacing-base);font-size:var(--ibiz-form-item-error-font-size);line-height:var(--ibiz-form-item-font-size);color:var(--ibiz-form-item-error-color);text-align:var(--ibiz-form-item-container-editor-align)}
|
|
@@ -44,6 +44,7 @@ const FormMDCtrlForm = /* @__PURE__ */ defineComponent({
|
|
|
44
44
|
return createVNode(resolveComponent("iBizMDCtrlContainer"), {
|
|
45
45
|
"class": this.ns.b(),
|
|
46
46
|
"items": state.items || [],
|
|
47
|
+
"caption": this.controller.model.caption,
|
|
47
48
|
"enableCreate": this.controller.enableCreate,
|
|
48
49
|
"enableDelete": this.controller.enableDelete,
|
|
49
50
|
"onAddClick": (index) => this.controller.create(index),
|
|
@@ -26,7 +26,7 @@ const RepeaterMultiForm = /* @__PURE__ */ defineComponent({
|
|
|
26
26
|
};
|
|
27
27
|
const removeClick = async (index) => {
|
|
28
28
|
const confirm = await ibiz.modal.confirm({
|
|
29
|
-
title: "\
|
|
29
|
+
title: "\u5220\u9664\u63D0\u9192",
|
|
30
30
|
desc: "\u662F\u5426\u5220\u9664\u9009\u4E2D\u9879?"
|
|
31
31
|
});
|
|
32
32
|
if (confirm) {
|
|
@@ -44,6 +44,7 @@ const RepeaterMultiForm = /* @__PURE__ */ defineComponent({
|
|
|
44
44
|
return createVNode(resolveComponent("iBizMDCtrlContainer"), {
|
|
45
45
|
"class": this.ns.b(),
|
|
46
46
|
"items": items,
|
|
47
|
+
"caption": this.controller.model.caption,
|
|
47
48
|
"enableCreate": this.controller.enableCreate,
|
|
48
49
|
"enableDelete": this.controller.enableDelete,
|
|
49
50
|
"onAddClick": (index) => this.controller.create(index),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-form-mdctrl{--ibiz-form-mdctrl-header-height:32px;--ibiz-form-mdctrl-header-bg-color:var(--ibiz-color-bg-1);--ibiz-form-mdctrl-header-padding:var(--ibiz-spacing-base);--ibiz-form-mdctrl-header-border-color:var(--ibiz-color-border);--ibiz-form-mdctrl-caption-text-color:var(--ibiz-color-text-
|
|
1
|
+
.ibiz-form-mdctrl{--ibiz-form-mdctrl-header-height:32px;--ibiz-form-mdctrl-header-bg-color:var(--ibiz-color-bg-1);--ibiz-form-mdctrl-header-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base);--ibiz-form-mdctrl-header-border-color:var(--ibiz-color-border);--ibiz-form-mdctrl-caption-text-color:var(--ibiz-color-text-2);--ibiz-form-mdctrl-caption-font-size:var(--ibiz-font-size-header-6);--ibiz-form-mdctrl-caption-font-weight:var(--ibiz-font-weight-regular);--ibiz-form-mdctrl-caption-height:2rem;--ibiz-form-mdctrl-caption-line-height:2rem;height:100%}.ibiz-form-mdctrl__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;height:var(--ibiz-form-mdctrl-caption-height);font-size:var(--ibiz-form-mdctrl-caption-font-size);font-weight:var(--ibiz-form-mdctrl-caption-font-weight);line-height:var(--ibiz-form-mdctrl-caption-line-height);color:var(--ibiz-form-mdctrl-caption-text-color)}.ibiz-form-mdctrl--has-value .ibiz-form-mdctrl-header{display:none}.ibiz-form-mdctrl-header{display:flex;padding:var(--ibiz-form-mdctrl-header-padding)}
|
|
@@ -15,6 +15,7 @@ export declare const FormMDCtrl: import("vue").DefineComponent<{
|
|
|
15
15
|
c: FormMDCtrlController;
|
|
16
16
|
ns: import("@ibiz-template/core").Namespace;
|
|
17
17
|
hasCaption: boolean | undefined;
|
|
18
|
+
hasValue: import("vue").ComputedRef<boolean | undefined>;
|
|
18
19
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
19
20
|
modelData: {
|
|
20
21
|
type: PropType<IDEFormMDCtrl>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createTextVNode, createVNode, resolveComponent, defineComponent } from 'vue';
|
|
1
|
+
import { computed, createTextVNode, createVNode, resolveComponent, defineComponent } from 'vue';
|
|
2
2
|
import { useNamespace, useController } from '@ibiz-template/vue3-util';
|
|
3
3
|
import { FormMDCtrlController } from '@ibiz-template/runtime';
|
|
4
4
|
import './form-mdctrl.css';
|
|
@@ -21,10 +21,14 @@ const FormMDCtrl = /* @__PURE__ */ defineComponent({
|
|
|
21
21
|
useController(props.controller);
|
|
22
22
|
const c = props.controller;
|
|
23
23
|
const hasCaption = c.model.showCaption && !!c.model.caption;
|
|
24
|
+
const hasValue = computed(() => {
|
|
25
|
+
return c.value && c.value.length > 0 || c.state.items && c.state.items.length > 0;
|
|
26
|
+
});
|
|
24
27
|
return {
|
|
25
28
|
c,
|
|
26
29
|
ns,
|
|
27
|
-
hasCaption
|
|
30
|
+
hasCaption,
|
|
31
|
+
hasValue
|
|
28
32
|
};
|
|
29
33
|
},
|
|
30
34
|
render() {
|
|
@@ -55,7 +59,7 @@ const FormMDCtrl = /* @__PURE__ */ defineComponent({
|
|
|
55
59
|
break;
|
|
56
60
|
}
|
|
57
61
|
return createVNode("div", {
|
|
58
|
-
"class": [this.ns.b(), this.ns.m(this.modelData.codeName), ...this.controller.containerClass, this.hasCaption ? this.ns.m("show-caption") : ""]
|
|
62
|
+
"class": [this.ns.b(), this.ns.m(this.modelData.codeName), ...this.controller.containerClass, this.hasCaption ? this.ns.m("show-caption") : "", this.hasValue ? this.ns.m("has-value") : ""]
|
|
59
63
|
}, [this.hasCaption && createVNode("div", {
|
|
60
64
|
"class": this.ns.b("header")
|
|
61
65
|
}, [createVNode("span", {
|
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
import FormMDCtrl from './form-mdctrl';
|
|
2
|
+
import { FormMDCtrlForm } from './form-mdctrl-form/form-mdctrl-form';
|
|
3
|
+
import { FormMDCtrlMD } from './form-mdctrl-md/form-mdctrl-md';
|
|
4
|
+
import { FormMDCtrlRepeater } from './form-mdctrl-repeater/form-mdctrl-repeater';
|
|
5
|
+
import { FormMDCtrlProvider } from './form-mdctrl.provider';
|
|
6
|
+
import { MDCtrlContainer } from './mdctrl-container/mdctrl-container';
|
|
1
7
|
export declare const IBizFormMDCtrl: import("@ibiz-template/vue3-util").TypeWithInstall<import("vue").DefineComponent<{
|
|
2
8
|
modelData: {
|
|
3
9
|
type: import("vue").PropType<import("@ibiz/model-core").IDEFormMDCtrl>;
|
|
@@ -11,6 +17,7 @@ export declare const IBizFormMDCtrl: import("@ibiz-template/vue3-util").TypeWith
|
|
|
11
17
|
c: import("@ibiz-template/runtime").FormMDCtrlController;
|
|
12
18
|
ns: import("@ibiz-template/core").Namespace;
|
|
13
19
|
hasCaption: boolean | undefined;
|
|
20
|
+
hasValue: import("vue").ComputedRef<boolean | undefined>;
|
|
14
21
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
15
22
|
modelData: {
|
|
16
23
|
type: import("vue").PropType<import("@ibiz/model-core").IDEFormMDCtrl>;
|
|
@@ -22,3 +29,4 @@ export declare const IBizFormMDCtrl: import("@ibiz-template/vue3-util").TypeWith
|
|
|
22
29
|
};
|
|
23
30
|
}>>, {}, {}>>;
|
|
24
31
|
export default IBizFormMDCtrl;
|
|
32
|
+
export { MDCtrlContainer, FormMDCtrlProvider, FormMDCtrlRepeater, FormMDCtrlMD, FormMDCtrlForm, FormMDCtrl, };
|
|
@@ -17,4 +17,4 @@ const IBizFormMDCtrl = withInstall(FormMDCtrl, function(v) {
|
|
|
17
17
|
registerFormDetailProvider("MDCTRL", () => new FormMDCtrlProvider());
|
|
18
18
|
});
|
|
19
19
|
|
|
20
|
-
export { IBizFormMDCtrl, IBizFormMDCtrl as default };
|
|
20
|
+
export { FormMDCtrl, FormMDCtrlForm, FormMDCtrlMD, FormMDCtrlProvider, FormMDCtrlRepeater, IBizFormMDCtrl, MDCtrlContainer, IBizFormMDCtrl as default };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-mdctrl-container{display:flex;flex-direction:column;padding:var(--ibiz-
|
|
1
|
+
.ibiz-mdctrl-container{--ibiz-mdctrl-container-header-bg-color:transparent;--ibiz-mdctrl-container-header-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base);--ibiz-mdctrl-container-header-border-color:var(--ibiz-color-border);--ibiz-mdctrl-container-caption-text-color:var(--ibiz-color-text-2);--ibiz-mdctrl-container-caption-font-size:var(--ibiz-font-size-header-6);--ibiz-mdctrl-container-caption-font-weight:var(--ibiz-font-weight-regular);--ibiz-mdctrl-container-caption-height:1.25rem;--ibiz-mdctrl-container-caption-line-height:1.25rem;--ibiz-mdctrl-container-button-text-color:var(--ibiz-color-info);--ibiz-mdctrl-container-button-font-size:var(--ibiz-font-size-header-6);--ibiz-mdctrl-container-button-font-weight:var(--ibiz-font-weight-regular);display:flex;flex-direction:column}.ibiz-mdctrl-container__btn{width:auto;padding:0;margin-left:10px;font-size:var(--ibiz-mdctrl-container-button-font-size);color:var(--ibiz-mdctrl-container-button-text-color);background-color:transparent;border:none}.ibiz-mdctrl-container__btn:active{background-color:transparent}.ibiz-mdctrl-container__btn:active::before{opacity:0}.ibiz-mdctrl-container-item{overflow:hidden}.ibiz-mdctrl-container-item__form{flex-grow:1}.ibiz-mdctrl-container-item .ibiz-mdctrl-container-item-header{display:flex;align-items:center;justify-content:flex-end;padding:var(--ibiz-mdctrl-container-header-padding);background-color:var(--ibiz-mdctrl-container-header-bg-color)}.ibiz-mdctrl-container-item-header__caption{flex-grow:1;height:var(--ibiz-mdctrl-container-caption-height);font-size:var(--ibiz-mdctrl-container-caption-font-size);font-weight:var(--ibiz-mdctrl-container-caption-font-weight);line-height:var(--ibiz-mdctrl-container-caption-line-height);color:var(--ibiz-mdctrl-container-caption-text-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-mdctrl-container-item-header__action{--van-button-small-height:1.25rem;display:flex;flex-grow:1;flex-shrink:0;justify-content:flex-end;height:1.25rem;line-height:1.25rem;text-align:right}.ibiz-mdctrl-container-item .ibiz-mdctrl-container-item-content{background-color:var(--ibiz-color-bg-1)}.ibiz-mdctrl-container-item .ibiz-form-page-item{--ibiz-form-page-item-gap:0}.ibiz-mdctrl-container-no-data{width:100%;display:flex;justify-content:flex-end}.ibiz-mdctrl-container-footer{color:red}.ibiz-mdctrl-container-footer .ibiz-mdctrl-container__btn{width:100%;padding:0;margin-left:0;font-size:var(--ibiz-font-size-header-5);color:var(--ibiz-mdctrl-container-button-text-color);background-color:var(--ibiz-color-bg-1);border:none}.ibiz-mdctrl-container-footer .ibiz-mdctrl-container__btn:active{background-color:transparent}.ibiz-mdctrl-container-footer .ibiz-mdctrl-container__btn:active::before{opacity:.1}.ibiz-mdctrl-container-footer .ibiz-mdctrl-container__btn .van-icon{margin-right:var(--ibiz-spacing-extra-tight)}
|
|
@@ -13,12 +13,16 @@ export declare const MDCtrlContainer: import("vue").DefineComponent<{
|
|
|
13
13
|
type: PropType<IData[]>;
|
|
14
14
|
required: true;
|
|
15
15
|
};
|
|
16
|
+
caption: {
|
|
17
|
+
type: StringConstructor;
|
|
18
|
+
required: false;
|
|
19
|
+
};
|
|
16
20
|
}, {
|
|
17
21
|
ns: import("@ibiz-template/core").Namespace;
|
|
18
22
|
showActions: import("vue").ComputedRef<boolean>;
|
|
19
|
-
renderAddBtn: (index?: number) => JSX.Element | null;
|
|
23
|
+
renderAddBtn: (index?: number, showButton?: boolean) => JSX.Element | null;
|
|
20
24
|
renderRemoveBtn: (item: IData, index: number) => JSX.Element | null;
|
|
21
|
-
|
|
25
|
+
renderActionBtn: (item: IData, index: number) => (JSX.Element | null)[];
|
|
22
26
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
23
27
|
addClick: (_index?: number) => true;
|
|
24
28
|
removeClick: (_data: IData, _index: number) => true;
|
|
@@ -35,6 +39,10 @@ export declare const MDCtrlContainer: import("vue").DefineComponent<{
|
|
|
35
39
|
type: PropType<IData[]>;
|
|
36
40
|
required: true;
|
|
37
41
|
};
|
|
42
|
+
caption: {
|
|
43
|
+
type: StringConstructor;
|
|
44
|
+
required: false;
|
|
45
|
+
};
|
|
38
46
|
}>> & {
|
|
39
47
|
onRemoveClick?: ((_data: IData, _index: number) => any) | undefined;
|
|
40
48
|
onAddClick?: ((_index?: number | undefined) => any) | undefined;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { computed, resolveComponent,
|
|
1
|
+
import { computed, resolveComponent, createVNode, createTextVNode, defineComponent } from 'vue';
|
|
2
2
|
import { useNamespace } from '@ibiz-template/vue3-util';
|
|
3
3
|
import './mdctrl-container.css';
|
|
4
4
|
|
|
@@ -17,6 +17,10 @@ const MDCtrlContainer = /* @__PURE__ */ defineComponent({
|
|
|
17
17
|
items: {
|
|
18
18
|
type: Object,
|
|
19
19
|
required: true
|
|
20
|
+
},
|
|
21
|
+
caption: {
|
|
22
|
+
type: String,
|
|
23
|
+
required: false
|
|
20
24
|
}
|
|
21
25
|
},
|
|
22
26
|
emits: {
|
|
@@ -30,17 +34,18 @@ const MDCtrlContainer = /* @__PURE__ */ defineComponent({
|
|
|
30
34
|
const showActions = computed(() => {
|
|
31
35
|
return props.enableCreate || props.enableDelete;
|
|
32
36
|
});
|
|
33
|
-
const renderAddBtn = (index) => {
|
|
37
|
+
const renderAddBtn = (index, showButton = true) => {
|
|
34
38
|
if (!props.enableCreate) {
|
|
35
39
|
return null;
|
|
36
40
|
}
|
|
37
41
|
return createVNode(resolveComponent("van-button"), {
|
|
38
|
-
"class": [ns.
|
|
42
|
+
"class": [ns.e("create"), ns.e("btn")],
|
|
39
43
|
"size": "small",
|
|
40
|
-
"onClick": () => emit("addClick", index === void 0 ? void 0 : index + 1)
|
|
41
|
-
"type": "primary"
|
|
44
|
+
"onClick": () => emit("addClick", index === void 0 ? void 0 : index + 1)
|
|
42
45
|
}, {
|
|
43
|
-
default: () => [
|
|
46
|
+
default: () => [showButton && createVNode(resolveComponent("van-icon"), {
|
|
47
|
+
"name": "plus"
|
|
48
|
+
}, null), createTextVNode("\u6DFB\u52A0")]
|
|
44
49
|
});
|
|
45
50
|
};
|
|
46
51
|
const renderRemoveBtn = (item, index) => {
|
|
@@ -49,9 +54,8 @@ const MDCtrlContainer = /* @__PURE__ */ defineComponent({
|
|
|
49
54
|
}
|
|
50
55
|
if (ibiz.config.form.mdCtrlConfirmBeforeRemove) {
|
|
51
56
|
return createVNode(resolveComponent("van-button"), {
|
|
52
|
-
"class": [ns.
|
|
57
|
+
"class": [ns.e("remove"), ns.e("btn")],
|
|
53
58
|
"size": "small",
|
|
54
|
-
"type": "danger",
|
|
55
59
|
"onClick": () => {
|
|
56
60
|
emit("removeClick", item, index);
|
|
57
61
|
}
|
|
@@ -60,7 +64,7 @@ const MDCtrlContainer = /* @__PURE__ */ defineComponent({
|
|
|
60
64
|
});
|
|
61
65
|
}
|
|
62
66
|
return createVNode(resolveComponent("van-button"), {
|
|
63
|
-
"class": [ns.
|
|
67
|
+
"class": [ns.e("remove"), ns.e("btn")],
|
|
64
68
|
"type": "danger",
|
|
65
69
|
"size": "small",
|
|
66
70
|
"onClick": () => {
|
|
@@ -70,21 +74,21 @@ const MDCtrlContainer = /* @__PURE__ */ defineComponent({
|
|
|
70
74
|
default: () => [createTextVNode("\u5220\u9664")]
|
|
71
75
|
});
|
|
72
76
|
};
|
|
73
|
-
const
|
|
74
|
-
return [renderAddBtn(index), renderRemoveBtn(item, index)];
|
|
77
|
+
const renderActionBtn = (item, index) => {
|
|
78
|
+
return [renderAddBtn(index, false), renderRemoveBtn(item, index)];
|
|
75
79
|
};
|
|
76
80
|
return {
|
|
77
81
|
ns,
|
|
78
82
|
showActions,
|
|
79
83
|
renderAddBtn,
|
|
80
84
|
renderRemoveBtn,
|
|
81
|
-
|
|
85
|
+
renderActionBtn
|
|
82
86
|
};
|
|
83
87
|
},
|
|
84
88
|
render() {
|
|
85
89
|
return createVNode("div", {
|
|
86
90
|
"class": this.ns.b()
|
|
87
|
-
}, [this.
|
|
91
|
+
}, [this.items.map((item, index) => {
|
|
88
92
|
const formComponent = this.$slots.item ? this.$slots.item({
|
|
89
93
|
data: item,
|
|
90
94
|
index
|
|
@@ -92,10 +96,18 @@ const MDCtrlContainer = /* @__PURE__ */ defineComponent({
|
|
|
92
96
|
return createVNode("div", {
|
|
93
97
|
"class": this.ns.b("item"),
|
|
94
98
|
"key": item.id
|
|
95
|
-
}, [
|
|
96
|
-
"class": this.ns.b("item-
|
|
97
|
-
}, [
|
|
98
|
-
|
|
99
|
+
}, [createVNode("div", {
|
|
100
|
+
"class": this.ns.b("item-header")
|
|
101
|
+
}, [createVNode("div", {
|
|
102
|
+
"class": this.ns.be("item-header", "caption")
|
|
103
|
+
}, [this.caption || ""]), createVNode("div", {
|
|
104
|
+
"class": this.ns.be("item-header", "action")
|
|
105
|
+
}, [this.renderActionBtn(item, index)])]), createVNode("div", {
|
|
106
|
+
"class": this.ns.b("item-content")
|
|
107
|
+
}, [formComponent])]);
|
|
108
|
+
}), this.enableCreate && createVNode("div", {
|
|
109
|
+
"class": this.ns.b("footer")
|
|
110
|
+
}, [this.renderAddBtn()])]);
|
|
99
111
|
}
|
|
100
112
|
});
|
|
101
113
|
|
|
@@ -17,5 +17,11 @@ export { FormDRUIPartProvider } from './form-druipart/form-druipart.provider.mjs
|
|
|
17
17
|
export { FormRawItemProvider } from './form-rawitem/form-rawitem.provider.mjs';
|
|
18
18
|
export { FormTabPanelProvider } from './form-tab-panel/form-tab-panel.provider.mjs';
|
|
19
19
|
export { FormTabPageProvider } from './form-tab-page/form-tab-page.provider.mjs';
|
|
20
|
+
export { MDCtrlContainer } from './form-mdctrl/mdctrl-container/mdctrl-container.mjs';
|
|
21
|
+
export { FormMDCtrlProvider } from './form-mdctrl/form-mdctrl.provider.mjs';
|
|
22
|
+
export { FormMDCtrlRepeater } from './form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater.mjs';
|
|
23
|
+
export { FormMDCtrlMD } from './form-mdctrl/form-mdctrl-md/form-mdctrl-md.mjs';
|
|
24
|
+
export { FormMDCtrlForm } from './form-mdctrl/form-mdctrl-form/form-mdctrl-form.mjs';
|
|
25
|
+
export { FormMDCtrl } from './form-mdctrl/form-mdctrl.mjs';
|
|
20
26
|
|
|
21
27
|
"use strict";
|
|
@@ -22,5 +22,11 @@ export { IBizFormTabPanel } from './form-detail/form-tab-panel/index.mjs';
|
|
|
22
22
|
export { FormTabPageProvider } from './form-detail/form-tab-page/form-tab-page.provider.mjs';
|
|
23
23
|
export { IBizFormTabPage } from './form-detail/form-tab-page/index.mjs';
|
|
24
24
|
export { IBizFormMDCtrl } from './form-detail/form-mdctrl/index.mjs';
|
|
25
|
+
export { MDCtrlContainer } from './form-detail/form-mdctrl/mdctrl-container/mdctrl-container.mjs';
|
|
26
|
+
export { FormMDCtrlProvider } from './form-detail/form-mdctrl/form-mdctrl.provider.mjs';
|
|
27
|
+
export { FormMDCtrlRepeater } from './form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater.mjs';
|
|
28
|
+
export { FormMDCtrlMD } from './form-detail/form-mdctrl/form-mdctrl-md/form-mdctrl-md.mjs';
|
|
29
|
+
export { FormMDCtrlForm } from './form-detail/form-mdctrl/form-mdctrl-form/form-mdctrl-form.mjs';
|
|
30
|
+
export { FormMDCtrl } from './form-detail/form-mdctrl/form-mdctrl.mjs';
|
|
25
31
|
|
|
26
32
|
"use strict";
|
package/es/control/index.mjs
CHANGED
|
@@ -37,6 +37,12 @@ export { IBizFormTabPanel } from './form/form-detail/form-tab-panel/index.mjs';
|
|
|
37
37
|
export { FormTabPageProvider } from './form/form-detail/form-tab-page/form-tab-page.provider.mjs';
|
|
38
38
|
export { IBizFormTabPage } from './form/form-detail/form-tab-page/index.mjs';
|
|
39
39
|
export { IBizFormMDCtrl } from './form/form-detail/form-mdctrl/index.mjs';
|
|
40
|
+
export { MDCtrlContainer } from './form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.mjs';
|
|
41
|
+
export { FormMDCtrlProvider } from './form/form-detail/form-mdctrl/form-mdctrl.provider.mjs';
|
|
42
|
+
export { FormMDCtrlRepeater } from './form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater.mjs';
|
|
43
|
+
export { FormMDCtrlMD } from './form/form-detail/form-mdctrl/form-mdctrl-md/form-mdctrl-md.mjs';
|
|
44
|
+
export { FormMDCtrlForm } from './form/form-detail/form-mdctrl/form-mdctrl-form/form-mdctrl-form.mjs';
|
|
45
|
+
export { FormMDCtrl } from './form/form-detail/form-mdctrl/form-mdctrl.mjs';
|
|
40
46
|
export { IBizEditFormControl } from './form/edit-form/index.mjs';
|
|
41
47
|
export { IBizFormControl } from './form/form/index.mjs';
|
|
42
48
|
export { PickupViewPanelProvider } from './pickup-view-panel/pickup-view-panel.provider.mjs';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-span{display:
|
|
1
|
+
.ibiz-span{display:block;width:100%;font-size:var(--ibiz-form-item-font-size);line-height:var(--ibiz-editor-default-line-height);color:inherit;white-space:pre-line;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ibiz-span--disabled{color:var(--ibiz-form-item-disabled-color)}.ibiz-span--readonly{color:var(--ibiz-form-item-readonly-color)}
|
package/es/index.d.ts
CHANGED
package/es/index.mjs
CHANGED
|
@@ -43,6 +43,56 @@ export { ConfirmUtil } from './util/confirm-util/confirm-util.mjs';
|
|
|
43
43
|
export { calcUniqueKey, useViewStack } from './util/store/view-stack/view-stack.mjs';
|
|
44
44
|
export { View404 } from './view/404-view/404-view.mjs';
|
|
45
45
|
export { LoginView } from './view/login-view/login-view.mjs';
|
|
46
|
+
export { MDCtrlProvider } from './control/list/md-ctrl/md-ctrl.provider.mjs';
|
|
47
|
+
export { AppMenuProvider } from './control/app-menu/app-menu.provider.mjs';
|
|
48
|
+
export { SearchFormProvider } from './control/form/search-form/search-form.provider.mjs';
|
|
49
|
+
export { FormGroupPanelProvider } from './control/form/form-detail/form-group-panel/form-group-panel.provider.mjs';
|
|
50
|
+
export { IBizFormGroupPanel } from './control/form/form-detail/form-group-panel/index.mjs';
|
|
51
|
+
export { FormItemProvider } from './control/form/form-detail/form-item/form-item.provider.mjs';
|
|
52
|
+
export { IBizFormItemContainer } from './control/form/form-detail/form-item/form-item-container/form-item-container.mjs';
|
|
53
|
+
export { IBizFormItem } from './control/form/form-detail/form-item/index.mjs';
|
|
54
|
+
export { IBizFormPageItem } from './control/form/form-detail/form-page/form-page-item/form-page-item.mjs';
|
|
55
|
+
export { FormPageProvider } from './control/form/form-detail/form-page/form-page.provider.mjs';
|
|
56
|
+
export { IBizFormPage } from './control/form/form-detail/form-page/index.mjs';
|
|
57
|
+
export { FormButtonProvider } from './control/form/form-detail/form-button/form-button.provider.mjs';
|
|
58
|
+
export { IBizFormButton } from './control/form/form-detail/form-button/index.mjs';
|
|
59
|
+
export { FormDRUIPartProvider } from './control/form/form-detail/form-druipart/form-druipart.provider.mjs';
|
|
60
|
+
export { IBizFormDRUIPart } from './control/form/form-detail/form-druipart/index.mjs';
|
|
61
|
+
export { FormRawItemProvider } from './control/form/form-detail/form-rawitem/form-rawitem.provider.mjs';
|
|
62
|
+
export { IBizFormRawItem } from './control/form/form-detail/form-rawitem/index.mjs';
|
|
63
|
+
export { FormTabPanelProvider } from './control/form/form-detail/form-tab-panel/form-tab-panel.provider.mjs';
|
|
64
|
+
export { IBizFormTabPanel } from './control/form/form-detail/form-tab-panel/index.mjs';
|
|
65
|
+
export { FormTabPageProvider } from './control/form/form-detail/form-tab-page/form-tab-page.provider.mjs';
|
|
66
|
+
export { IBizFormTabPage } from './control/form/form-detail/form-tab-page/index.mjs';
|
|
67
|
+
export { IBizFormMDCtrl } from './control/form/form-detail/form-mdctrl/index.mjs';
|
|
68
|
+
export { MDCtrlContainer } from './control/form/form-detail/form-mdctrl/mdctrl-container/mdctrl-container.mjs';
|
|
69
|
+
export { FormMDCtrlProvider } from './control/form/form-detail/form-mdctrl/form-mdctrl.provider.mjs';
|
|
70
|
+
export { FormMDCtrlRepeater } from './control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater.mjs';
|
|
71
|
+
export { FormMDCtrlMD } from './control/form/form-detail/form-mdctrl/form-mdctrl-md/form-mdctrl-md.mjs';
|
|
72
|
+
export { FormMDCtrlForm } from './control/form/form-detail/form-mdctrl/form-mdctrl-form/form-mdctrl-form.mjs';
|
|
73
|
+
export { FormMDCtrl } from './control/form/form-detail/form-mdctrl/form-mdctrl.mjs';
|
|
74
|
+
export { PickupViewPanelProvider } from './control/pickup-view-panel/pickup-view-panel.provider.mjs';
|
|
75
|
+
export { PickupViewPanelController } from './control/pickup-view-panel/pickup-view-panel.controller.mjs';
|
|
76
|
+
export { ListProvider } from './control/list/list/list.provider.mjs';
|
|
77
|
+
export { TabExpPanelProvider } from './control/tab-exp-panel/tab-exp-panel.provider.mjs';
|
|
78
|
+
export { CaptionBarProvider } from './control/caption-bar/caption-bar.provider.mjs';
|
|
79
|
+
export { SearchBarProvider } from './control/search-bar/search-bar.provider.mjs';
|
|
80
|
+
export { DRTabProvider } from './control/drtab/drtab.provider.mjs';
|
|
81
|
+
export { DRTabController } from './control/drtab/drtab.controller.mjs';
|
|
82
|
+
export { TreeProvider } from './control/tree/tree.provider.mjs';
|
|
83
|
+
export { DataViewControlProvider } from './control/data-view/data-view.provider.mjs';
|
|
84
|
+
export { DashboardProvider } from './control/dashboard/dashboard.provider.mjs';
|
|
85
|
+
export { PortletPartState } from './control/dashboard/portlet/portlet-part/portlet-part.state.mjs';
|
|
86
|
+
export { ContainerPortletProvider } from './control/dashboard/portlet/container-portlet/container-portlet.provider.mjs';
|
|
87
|
+
export { ContainerPortlet } from './control/dashboard/portlet/container-portlet/container-portlet.mjs';
|
|
88
|
+
export { IBizContainerPortlet } from './control/dashboard/portlet/container-portlet/index.mjs';
|
|
89
|
+
export { PortletLayout } from './control/dashboard/portlet/portlet-layout/portlet-layout.mjs';
|
|
90
|
+
export { MenuPortletProvider } from './control/dashboard/portlet/menu-portlet/menu-portlet.provider.mjs';
|
|
91
|
+
export { MenuPortlet } from './control/dashboard/portlet/menu-portlet/menu-portlet.mjs';
|
|
92
|
+
export { IBizMenuPortlet } from './control/dashboard/portlet/menu-portlet/index.mjs';
|
|
93
|
+
export { ViewPortlet } from './control/dashboard/portlet/view-portlet/view-portlet.mjs';
|
|
94
|
+
export { IBizViewPortlet } from './control/dashboard/portlet/view-portlet/index.mjs';
|
|
95
|
+
export { CalendarProvider } from './control/calendar/calendar.provider.mjs';
|
|
46
96
|
|
|
47
97
|
"use strict";
|
|
48
98
|
var index = {
|
|
@@ -82,4 +132,4 @@ var index = {
|
|
|
82
132
|
}
|
|
83
133
|
};
|
|
84
134
|
|
|
85
|
-
export { IBizCommonComponents, IBizEditor, IBizPanelComponents, index as default };
|
|
135
|
+
export { IBizAppMenuControl, IBizCalendarControl, IBizCaptionBarControl, IBizChartControl, IBizCommonComponents, IBizDRTabControl, IBizDashboardControl, IBizDataViewControl, IBizEditFormControl, IBizEditor, IBizFormControl, IBizListControl, IBizMDCtrlControl, IBizPanelComponents, IBizPickupViewPanelControl, IBizSearchBarControl, IBizSearchFormControl, IBizTabExpPanelControl, IBizToolbarControl, IBizTreeControl, IBizWizardPanelControl, index as default };
|
|
@@ -214,8 +214,7 @@ class MobEditViewEngine extends ViewEngineBase {
|
|
|
214
214
|
const entityService = await app.deService.getService(
|
|
215
215
|
this.view.model.appDataEntityId
|
|
216
216
|
);
|
|
217
|
-
await entityService.wf.
|
|
218
|
-
"withdraw",
|
|
217
|
+
await entityService.wf.wfWithdraw(
|
|
219
218
|
this.view.context,
|
|
220
219
|
{
|
|
221
220
|
...this.view.params,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-form-item-container{--ibiz-form-item-container-label-width:8.125rem;--ibiz-form-item-container-line-height:var(--ibiz-form-item-line-height);--ibiz-form-item-container-require-mark-color:var(--ibiz-color-danger);--ibiz-form-item-container-container-padding:var(--ibiz-spacing-base);--ibiz-form-item-container-left-container-padding:var(--ibiz-spacing-base);--ibiz-form-item-container-error-margin-top:var(--ibiz-spacing-extra-tight);--ibiz-form-item-container-bg-color:var(--ibiz-color-bg-1);--ibiz-form-item-container-label-font-size:var(--ibiz-font-size-header-6);--ibiz-form-item-container-label-text-color:var(--ibiz-color-text-0);--ibiz-form-item-container-container-error-padding:0 var(--ibiz-spacing-base);--ibiz-form-item-container-border:0.0625rem var(--ibiz-color-border) solid;--ibiz-form-item-container-editor-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-none) var(--ibiz-spacing-tight) var(--ibiz-spacing-none);--ibiz-form-item-label-line-height:1;--ibiz-form-item-label-font-size:var(--ibiz-font-size-header-5);--ibiz-form-item-label-text-color:var(--ibiz-color-text-0);position:relative;width:100%;height:100%;padding:var(--ibiz-form-item-container-container-padding);font-size:var(--ibiz-form-item-font-size);background-color:var(--ibiz-form-item-container-bg-color);border-width:calc(100% - var(--ibiz-spacing-base) * 2);border-radius:var(--ibiz-border-radius-small)}.ibiz-form-item-container::after{position:absolute;z-index:1;width:calc(100% - var(--ibiz-spacing-base) * 2);height:.
|
|
1
|
+
.ibiz-form-item-container{--ibiz-form-item-container-label-width:8.125rem;--ibiz-form-item-container-line-height:var(--ibiz-form-item-line-height);--ibiz-form-item-container-require-mark-color:var(--ibiz-color-danger);--ibiz-form-item-container-container-padding:var(--ibiz-spacing-base);--ibiz-form-item-container-left-container-padding:var(--ibiz-spacing-base);--ibiz-form-item-container-error-margin-top:var(--ibiz-spacing-extra-tight);--ibiz-form-item-container-bg-color:var(--ibiz-color-bg-1);--ibiz-form-item-container-label-font-size:var(--ibiz-font-size-header-6);--ibiz-form-item-container-label-text-color:var(--ibiz-color-text-0);--ibiz-form-item-container-container-error-padding:0 var(--ibiz-spacing-base);--ibiz-form-item-container-border:0.0625rem var(--ibiz-color-border) solid;--ibiz-form-item-container-editor-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-none) var(--ibiz-spacing-tight) var(--ibiz-spacing-none);--ibiz-form-item-label-line-height:1;--ibiz-form-item-label-font-size:var(--ibiz-font-size-header-5);--ibiz-form-item-label-text-color:var(--ibiz-color-text-0);position:relative;width:100%;height:100%;padding:var(--ibiz-form-item-container-container-padding);font-size:var(--ibiz-form-item-font-size);background-color:var(--ibiz-form-item-container-bg-color);border-width:calc(100% - var(--ibiz-spacing-base) * 2);border-radius:var(--ibiz-border-radius-small)}.ibiz-form-item-container::after{position:absolute;z-index:1;width:calc(100% - var(--ibiz-spacing-base) * 2);height:.0625rem;content:"";background-color:var(--ibiz-color-border);transform:scaleY(.5)}.ibiz-form-item-container__label{position:relative;flex-shrink:0;width:var(--ibiz-form-item-container-label-width);overflow:visible;color:var(--ibiz-form-item-label-text-color)}.ibiz-form-item-container__label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block;width:100%;font-size:var(--ibiz-form-item-container-label-font-size);text-align:var(--ibiz-form-item-container-label-align)}.ibiz-form-item-container__editor{width:100%;text-align:var(--ibiz-form-item-container-editor-align)}.ibiz-form-item-container__editor .van-cell{padding-bottom:0}.ibiz-form-item-container.is-required .ibiz-form-item-container__label::before{position:absolute;top:.1875rem;left:-.625rem;display:inline-block;height:100%;font-size:.875rem;color:var(--ibiz-form-item-error-color);content:"*"}.ibiz-form-item-container.is-error::after{background-color:var(--ibiz-form-item-error-color)}.ibiz-form-item-container.is-error .ibiz-form-item-container-content{border-color:var(--ibiz-form-item-error-color)}.ibiz-form-item-container--left::after{bottom:0}.ibiz-form-item-container--right.is-required .ibiz-form-item-container__label::before{right:-.625rem;left:auto}.ibiz-form-item-container--right .ibiz-form-item-container__editor{position:relative;width:calc(100% - var(--ibiz-form-item-container-label-width))}.ibiz-form-item-container--left .ibiz-form-item-container__editor{width:calc(100% - var(--ibiz-form-item-container-label-width))}.ibiz-form-item-container--top .ibiz-form-item-container__editor{padding:var(--ibiz-form-item-container-editor-padding)}.ibiz-form-item-container--bottom .ibiz-form-item-container__editor{padding:var(--ibiz-form-item-container-editor-padding)}.ibiz-form-item-container-content{position:relative}.ibiz-form-item-container--left .ibiz-form-item-container-content,.ibiz-form-item-container--right .ibiz-form-item-container-content{height:100%;display:flex;align-items:center;justify-content:center}.ibiz-form-item-container-error{position:absolute;bottom:0;width:calc(100% - var(--ibiz-spacing-base));padding-right:var(--ibiz-spacing-base);font-size:var(--ibiz-form-item-error-font-size);line-height:var(--ibiz-form-item-font-size);color:var(--ibiz-form-item-error-color);text-align:var(--ibiz-form-item-container-editor-align)}
|
|
@@ -46,6 +46,7 @@ const FormMDCtrlForm = /* @__PURE__ */ vue.defineComponent({
|
|
|
46
46
|
return vue.createVNode(vue.resolveComponent("iBizMDCtrlContainer"), {
|
|
47
47
|
"class": this.ns.b(),
|
|
48
48
|
"items": state.items || [],
|
|
49
|
+
"caption": this.controller.model.caption,
|
|
49
50
|
"enableCreate": this.controller.enableCreate,
|
|
50
51
|
"enableDelete": this.controller.enableDelete,
|
|
51
52
|
"onAddClick": (index) => this.controller.create(index),
|
|
@@ -28,7 +28,7 @@ const RepeaterMultiForm = /* @__PURE__ */ vue.defineComponent({
|
|
|
28
28
|
};
|
|
29
29
|
const removeClick = async (index) => {
|
|
30
30
|
const confirm = await ibiz.modal.confirm({
|
|
31
|
-
title: "\
|
|
31
|
+
title: "\u5220\u9664\u63D0\u9192",
|
|
32
32
|
desc: "\u662F\u5426\u5220\u9664\u9009\u4E2D\u9879?"
|
|
33
33
|
});
|
|
34
34
|
if (confirm) {
|
|
@@ -46,6 +46,7 @@ const RepeaterMultiForm = /* @__PURE__ */ vue.defineComponent({
|
|
|
46
46
|
return vue.createVNode(vue.resolveComponent("iBizMDCtrlContainer"), {
|
|
47
47
|
"class": this.ns.b(),
|
|
48
48
|
"items": items,
|
|
49
|
+
"caption": this.controller.model.caption,
|
|
49
50
|
"enableCreate": this.controller.enableCreate,
|
|
50
51
|
"enableDelete": this.controller.enableDelete,
|
|
51
52
|
"onAddClick": (index) => this.controller.create(index),
|
|
@@ -25,10 +25,14 @@ const FormMDCtrl = /* @__PURE__ */ vue.defineComponent({
|
|
|
25
25
|
vue3Util.useController(props.controller);
|
|
26
26
|
const c = props.controller;
|
|
27
27
|
const hasCaption = c.model.showCaption && !!c.model.caption;
|
|
28
|
+
const hasValue = vue.computed(() => {
|
|
29
|
+
return c.value && c.value.length > 0 || c.state.items && c.state.items.length > 0;
|
|
30
|
+
});
|
|
28
31
|
return {
|
|
29
32
|
c,
|
|
30
33
|
ns,
|
|
31
|
-
hasCaption
|
|
34
|
+
hasCaption,
|
|
35
|
+
hasValue
|
|
32
36
|
};
|
|
33
37
|
},
|
|
34
38
|
render() {
|
|
@@ -59,7 +63,7 @@ const FormMDCtrl = /* @__PURE__ */ vue.defineComponent({
|
|
|
59
63
|
break;
|
|
60
64
|
}
|
|
61
65
|
return vue.createVNode("div", {
|
|
62
|
-
"class": [this.ns.b(), this.ns.m(this.modelData.codeName), ...this.controller.containerClass, this.hasCaption ? this.ns.m("show-caption") : ""]
|
|
66
|
+
"class": [this.ns.b(), this.ns.m(this.modelData.codeName), ...this.controller.containerClass, this.hasCaption ? this.ns.m("show-caption") : "", this.hasValue ? this.ns.m("has-value") : ""]
|
|
63
67
|
}, [this.hasCaption && vue.createVNode("div", {
|
|
64
68
|
"class": this.ns.b("header")
|
|
65
69
|
}, [vue.createVNode("span", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-form-mdctrl{--ibiz-form-mdctrl-header-height:32px;--ibiz-form-mdctrl-header-bg-color:var(--ibiz-color-bg-1);--ibiz-form-mdctrl-header-padding:var(--ibiz-spacing-base);--ibiz-form-mdctrl-header-border-color:var(--ibiz-color-border);--ibiz-form-mdctrl-caption-text-color:var(--ibiz-color-text-
|
|
1
|
+
.ibiz-form-mdctrl{--ibiz-form-mdctrl-header-height:32px;--ibiz-form-mdctrl-header-bg-color:var(--ibiz-color-bg-1);--ibiz-form-mdctrl-header-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base);--ibiz-form-mdctrl-header-border-color:var(--ibiz-color-border);--ibiz-form-mdctrl-caption-text-color:var(--ibiz-color-text-2);--ibiz-form-mdctrl-caption-font-size:var(--ibiz-font-size-header-6);--ibiz-form-mdctrl-caption-font-weight:var(--ibiz-font-weight-regular);--ibiz-form-mdctrl-caption-height:2rem;--ibiz-form-mdctrl-caption-line-height:2rem;height:100%}.ibiz-form-mdctrl__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;height:var(--ibiz-form-mdctrl-caption-height);font-size:var(--ibiz-form-mdctrl-caption-font-size);font-weight:var(--ibiz-form-mdctrl-caption-font-weight);line-height:var(--ibiz-form-mdctrl-caption-line-height);color:var(--ibiz-form-mdctrl-caption-text-color)}.ibiz-form-mdctrl--has-value .ibiz-form-mdctrl-header{display:none}.ibiz-form-mdctrl-header{display:flex;padding:var(--ibiz-form-mdctrl-header-padding)}
|
|
@@ -21,5 +21,11 @@ const IBizFormMDCtrl = vue3Util.withInstall(formMdctrl.FormMDCtrl, function(v) {
|
|
|
21
21
|
runtime.registerFormDetailProvider("MDCTRL", () => new formMdctrl_provider.FormMDCtrlProvider());
|
|
22
22
|
});
|
|
23
23
|
|
|
24
|
+
exports.FormMDCtrl = formMdctrl.FormMDCtrl;
|
|
25
|
+
exports.FormMDCtrlForm = formMdctrlForm.FormMDCtrlForm;
|
|
26
|
+
exports.FormMDCtrlMD = formMdctrlMd.FormMDCtrlMD;
|
|
27
|
+
exports.FormMDCtrlRepeater = formMdctrlRepeater.FormMDCtrlRepeater;
|
|
28
|
+
exports.FormMDCtrlProvider = formMdctrl_provider.FormMDCtrlProvider;
|
|
29
|
+
exports.MDCtrlContainer = mdctrlContainer.MDCtrlContainer;
|
|
24
30
|
exports.IBizFormMDCtrl = IBizFormMDCtrl;
|
|
25
31
|
exports.default = IBizFormMDCtrl;
|
|
@@ -19,6 +19,10 @@ const MDCtrlContainer = /* @__PURE__ */ vue.defineComponent({
|
|
|
19
19
|
items: {
|
|
20
20
|
type: Object,
|
|
21
21
|
required: true
|
|
22
|
+
},
|
|
23
|
+
caption: {
|
|
24
|
+
type: String,
|
|
25
|
+
required: false
|
|
22
26
|
}
|
|
23
27
|
},
|
|
24
28
|
emits: {
|
|
@@ -32,17 +36,18 @@ const MDCtrlContainer = /* @__PURE__ */ vue.defineComponent({
|
|
|
32
36
|
const showActions = vue.computed(() => {
|
|
33
37
|
return props.enableCreate || props.enableDelete;
|
|
34
38
|
});
|
|
35
|
-
const renderAddBtn = (index) => {
|
|
39
|
+
const renderAddBtn = (index, showButton = true) => {
|
|
36
40
|
if (!props.enableCreate) {
|
|
37
41
|
return null;
|
|
38
42
|
}
|
|
39
43
|
return vue.createVNode(vue.resolveComponent("van-button"), {
|
|
40
|
-
"class": [ns.
|
|
44
|
+
"class": [ns.e("create"), ns.e("btn")],
|
|
41
45
|
"size": "small",
|
|
42
|
-
"onClick": () => emit("addClick", index === void 0 ? void 0 : index + 1)
|
|
43
|
-
"type": "primary"
|
|
46
|
+
"onClick": () => emit("addClick", index === void 0 ? void 0 : index + 1)
|
|
44
47
|
}, {
|
|
45
|
-
default: () => [vue.
|
|
48
|
+
default: () => [showButton && vue.createVNode(vue.resolveComponent("van-icon"), {
|
|
49
|
+
"name": "plus"
|
|
50
|
+
}, null), vue.createTextVNode("\u6DFB\u52A0")]
|
|
46
51
|
});
|
|
47
52
|
};
|
|
48
53
|
const renderRemoveBtn = (item, index) => {
|
|
@@ -51,9 +56,8 @@ const MDCtrlContainer = /* @__PURE__ */ vue.defineComponent({
|
|
|
51
56
|
}
|
|
52
57
|
if (ibiz.config.form.mdCtrlConfirmBeforeRemove) {
|
|
53
58
|
return vue.createVNode(vue.resolveComponent("van-button"), {
|
|
54
|
-
"class": [ns.
|
|
59
|
+
"class": [ns.e("remove"), ns.e("btn")],
|
|
55
60
|
"size": "small",
|
|
56
|
-
"type": "danger",
|
|
57
61
|
"onClick": () => {
|
|
58
62
|
emit("removeClick", item, index);
|
|
59
63
|
}
|
|
@@ -62,7 +66,7 @@ const MDCtrlContainer = /* @__PURE__ */ vue.defineComponent({
|
|
|
62
66
|
});
|
|
63
67
|
}
|
|
64
68
|
return vue.createVNode(vue.resolveComponent("van-button"), {
|
|
65
|
-
"class": [ns.
|
|
69
|
+
"class": [ns.e("remove"), ns.e("btn")],
|
|
66
70
|
"type": "danger",
|
|
67
71
|
"size": "small",
|
|
68
72
|
"onClick": () => {
|
|
@@ -72,21 +76,21 @@ const MDCtrlContainer = /* @__PURE__ */ vue.defineComponent({
|
|
|
72
76
|
default: () => [vue.createTextVNode("\u5220\u9664")]
|
|
73
77
|
});
|
|
74
78
|
};
|
|
75
|
-
const
|
|
76
|
-
return [renderAddBtn(index), renderRemoveBtn(item, index)];
|
|
79
|
+
const renderActionBtn = (item, index) => {
|
|
80
|
+
return [renderAddBtn(index, false), renderRemoveBtn(item, index)];
|
|
77
81
|
};
|
|
78
82
|
return {
|
|
79
83
|
ns,
|
|
80
84
|
showActions,
|
|
81
85
|
renderAddBtn,
|
|
82
86
|
renderRemoveBtn,
|
|
83
|
-
|
|
87
|
+
renderActionBtn
|
|
84
88
|
};
|
|
85
89
|
},
|
|
86
90
|
render() {
|
|
87
91
|
return vue.createVNode("div", {
|
|
88
92
|
"class": this.ns.b()
|
|
89
|
-
}, [this.
|
|
93
|
+
}, [this.items.map((item, index) => {
|
|
90
94
|
const formComponent = this.$slots.item ? this.$slots.item({
|
|
91
95
|
data: item,
|
|
92
96
|
index
|
|
@@ -94,10 +98,18 @@ const MDCtrlContainer = /* @__PURE__ */ vue.defineComponent({
|
|
|
94
98
|
return vue.createVNode("div", {
|
|
95
99
|
"class": this.ns.b("item"),
|
|
96
100
|
"key": item.id
|
|
97
|
-
}, [
|
|
98
|
-
"class": this.ns.b("item-
|
|
99
|
-
}, [
|
|
100
|
-
|
|
101
|
+
}, [vue.createVNode("div", {
|
|
102
|
+
"class": this.ns.b("item-header")
|
|
103
|
+
}, [vue.createVNode("div", {
|
|
104
|
+
"class": this.ns.be("item-header", "caption")
|
|
105
|
+
}, [this.caption || ""]), vue.createVNode("div", {
|
|
106
|
+
"class": this.ns.be("item-header", "action")
|
|
107
|
+
}, [this.renderActionBtn(item, index)])]), vue.createVNode("div", {
|
|
108
|
+
"class": this.ns.b("item-content")
|
|
109
|
+
}, [formComponent])]);
|
|
110
|
+
}), this.enableCreate && vue.createVNode("div", {
|
|
111
|
+
"class": this.ns.b("footer")
|
|
112
|
+
}, [this.renderAddBtn()])]);
|
|
101
113
|
}
|
|
102
114
|
});
|
|
103
115
|
|