@oinone/kunlun-vue-admin-base 6.2.10 → 6.2.12
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/oinone-kunlun-vue-admin-base.css +1 -1
- package/dist/oinone-kunlun-vue-admin-base.esm.js +9602 -9235
- package/dist/oinone-kunlun-vue-admin-base.scss +1 -1
- package/dist/types/src/action/component/action/ActionWidget.d.ts +10 -1
- package/dist/types/src/action/server-actions/ServerActionWidget.d.ts +1 -5
- package/dist/types/src/action/url-actions/UrlActionWidget.d.ts +1 -3
- package/dist/types/src/basic/field/complex/select/FormSelectComplexFieldWidget.d.ts +8 -2
- package/dist/types/src/basic/table-column/BaseTableColumnWidget.d.ts +3 -0
- package/dist/types/src/components/upload/File.vue.d.ts +0 -9
- package/dist/types/src/field/detail/enum/multi/DetailEnumMultiFieldWidget.d.ts +2 -1
- package/dist/types/src/field/detail/enum/single/DetailEnumFieldWidget.d.ts +2 -1
- package/dist/types/src/field/detail/index.d.ts +0 -1
- package/dist/types/src/field/detail/m2m/select/DetailM2MSelectFieldWidget.d.ts +1 -1
- package/dist/types/src/field/detail/o2m/index.d.ts +1 -0
- package/dist/types/src/field/detail/o2m/{DetailO2MSelectFieldWidget.d.ts → select/DetailO2MSelectFieldWidget.d.ts} +1 -1
- package/dist/types/src/field/form/abstract/FormInputAbstractFieldWidget.d.ts +22 -18
- package/dist/types/src/field/form/abstract/checkbox/FormCheckboxWidget.d.ts +1 -1
- package/dist/types/src/field/form/{enum/radio → boolean}/FormBooleanRadioFieldWidget.d.ts +4 -2
- package/dist/types/src/field/form/{enum/select/bool → boolean}/FormBooleanSelectFieldWidget.d.ts +2 -2
- package/dist/types/src/field/form/boolean/index.d.ts +2 -0
- package/dist/types/src/field/form/enum/FormEnumFieldAbstractWidget.d.ts +17 -5
- package/dist/types/src/field/form/enum/checkbox/FormEnumMultiCheckboxFieldWidget.d.ts +1 -0
- package/dist/types/src/field/form/enum/index.d.ts +1 -0
- package/dist/types/src/field/form/enum/radio/FormEnumRadioWidget.d.ts +4 -1
- package/dist/types/src/field/form/enum/radio/index.d.ts +0 -1
- package/dist/types/src/field/form/enum/select/index.d.ts +0 -1
- package/dist/types/src/field/form/enum/select/multi/FormEnumMultiSelectFieldWidget.d.ts +2 -1
- package/dist/types/src/field/form/enum/select/single/FormEnumFieldWidget.d.ts +2 -1
- package/dist/types/src/field/form/float/Plat.vue.d.ts +2 -2
- package/dist/types/src/field/form/index.d.ts +1 -2
- package/dist/types/src/field/form/integer/FormIntegerFieldWidget.d.ts +0 -1
- package/dist/types/src/field/form/m2o/upload/FormM2OUploadFieldWidget.d.ts +0 -1
- package/dist/types/src/field/form/o2o/index.d.ts +1 -0
- package/dist/types/src/field/form/o2o/upload/AbstractFormO2OUploadFieldWidget.d.ts +5 -0
- package/dist/types/src/field/form/o2o/upload/FormO2OUploadDraggableFieldWidget.d.ts +8 -0
- package/dist/types/src/field/form/o2o/upload/FormO2OUploadFieldWidget.d.ts +7 -0
- package/dist/types/src/field/form/o2o/upload/FormO2OUploadImgFieldWidget.d.ts +8 -0
- package/dist/types/src/field/form/o2o/upload/index.d.ts +4 -0
- package/dist/types/src/field/form/string/FormStringFieldWidget.d.ts +12 -3
- package/dist/types/src/field/form/string/iframe/FormStringIframeFieldWidget.d.ts +1 -0
- package/dist/types/src/field/form/string/media/FormStringMediaPlayerFieldWidget.d.ts +1 -0
- package/dist/types/src/field/form/string/tag/Tag.vue.d.ts +6 -6
- package/dist/types/src/field/form/string/upload/FormStringUploadFieldWidget.d.ts +11 -2
- package/dist/types/src/field/form/text/DefaultTextarea.vue.d.ts +4 -6
- package/dist/types/src/field/form/text/FormTextFieldWidget.d.ts +3 -1
- package/dist/types/src/field/form/text/index.d.ts +1 -0
- package/dist/types/src/field/form/text/typing.d.ts +4 -0
- package/dist/types/src/field/table/boolean/TableBooleanRadioFieldWidget.d.ts +3 -0
- package/dist/types/src/field/table/boolean/index.d.ts +1 -0
- package/dist/types/src/field/table/string/upload/TableStringMultiUploadWidget.d.ts +1 -1
- package/dist/types/src/provider/RootWidget.d.ts +2 -2
- package/dist/types/src/spi/LayoutManager.d.ts +20 -17
- package/dist/types/src/spi/MaskManager.d.ts +33 -5
- package/dist/types/src/tags/context/runtime-context-helper.d.ts +1 -0
- package/dist/types/src/typing/widget-names.d.ts +1 -0
- package/package.json +8 -8
- package/src/action/component/action/ActionWidget.ts +203 -28
- package/src/action/server-actions/ServerActionWidget.ts +6 -104
- package/src/action/url-actions/UrlActionWidget.ts +2 -37
- package/src/basic/element/BaseElementViewWidget.ts +11 -2
- package/src/basic/field/complex/select/FormSelectComplexFieldWidget.ts +24 -32
- package/src/basic/form-item/BaseFormItemWidget.ts +4 -0
- package/src/basic/gallery-item/DefaultGalleryItem.vue +6 -1
- package/src/basic/table-column/BaseTableColumnWidget.ts +5 -2
- package/src/components/upload/File.vue +0 -45
- package/src/field/detail/boolean/Boolean.vue +2 -3
- package/src/field/detail/boolean/DetailBooleanFieldWidget.ts +1 -1
- package/src/field/detail/boolean/DetailBooleanSelectFieldWidget.ts +1 -1
- package/src/field/detail/enum/multi/DetailEnumMultiFieldWidget.ts +9 -5
- package/src/field/detail/enum/single/DetailEnumFieldWidget.ts +8 -2
- package/src/field/detail/html/DetailHtmlFieldWidget.ts +1 -1
- package/src/field/detail/index.ts +0 -1
- package/src/field/detail/m2m/select/DetailM2MSelectFieldWidget.ts +3 -5
- package/src/field/detail/m2m/table/DetailM2MTableFieldWidget.ts +3 -1
- package/src/field/detail/m2o/DetailM2OSelectFieldWidget.ts +1 -1
- package/src/field/detail/m2o/upload/DetailM2OUploadWidget.ts +2 -3
- package/src/field/detail/number/DetailNumberWidget.ts +1 -1
- package/src/field/detail/o2m/index.ts +1 -0
- package/src/field/detail/o2m/{DetailO2MSelectFieldWidget.ts → select/DetailO2MSelectFieldWidget.ts} +4 -5
- package/src/field/detail/o2m/{Select.vue → select/Select.vue} +1 -1
- package/src/field/detail/o2m/table/DetailO2MTableFieldWidget.ts +3 -1
- package/src/field/detail/o2o/DetailO2OSelectFieldWidget.ts +1 -1
- package/src/field/detail/string/hyperlinks/DetailStringHyperlinksFieldWidget.ts +1 -1
- package/src/field/detail/string/iframe/DetailStringIframeFieldWidget.ts +2 -2
- package/src/field/detail/string/media/DetailStringMediaPlayerFieldWidget.ts +1 -1
- package/src/field/detail/string/string-with-copy/DetailStringWithCopyFieldWidget.ts +1 -1
- package/src/field/detail/string/tag/DetailStringTagFieldWidget.ts +1 -1
- package/src/field/detail/string/upload/DetailStringUploadFieldWidget.ts +1 -1
- package/src/field/detail/string/upload/DetailStringUploadImgFieldWidget.ts +1 -1
- package/src/field/form/abstract/FormInputAbstractFieldWidget.ts +54 -50
- package/src/field/form/abstract/checkbox/FormCheckboxWidget.ts +1 -3
- package/src/field/form/{enum/radio → boolean}/FormBooleanRadioFieldWidget.ts +22 -4
- package/src/field/form/{enum/select/bool → boolean}/FormBooleanSelectFieldWidget.ts +4 -5
- package/src/field/form/boolean/index.ts +2 -0
- package/src/field/form/enum/FormEnumFieldAbstractWidget.ts +42 -33
- package/src/field/form/enum/checkbox/FormEnumMultiCheckboxFieldWidget.ts +9 -1
- package/src/field/form/enum/index.ts +2 -1
- package/src/field/form/enum/radio/FormEnumRadioWidget.ts +21 -8
- package/src/field/form/enum/radio/index.ts +0 -1
- package/src/field/form/enum/select/index.ts +0 -1
- package/src/field/form/enum/select/multi/FormEnumMultiSelectFieldWidget.ts +2 -1
- package/src/field/form/enum/select/single/FormEnumFieldWidget.ts +2 -1
- package/src/field/form/index.ts +1 -3
- package/src/field/form/integer/FormIntegerFieldWidget.ts +0 -5
- package/src/field/form/integer/FormIntegerSliderFieldWidget.ts +1 -1
- package/src/field/form/integer/FormIntegerTagFieldWidget.ts +1 -0
- package/src/field/form/m2m/select/FormM2MFieldSelectWidget.ts +2 -2
- package/src/field/form/m2m/table/FormM2MTableFieldWidget.ts +2 -0
- package/src/field/form/m2m/upload/FormM2MUploadFieldWidget.ts +3 -3
- package/src/field/form/m2m/upload/FormM2MUploadImgFieldWidget.ts +1 -1
- package/src/field/form/m2o/form/FormM2OFormFieldWidget.ts +1 -1
- package/src/field/form/m2o/upload/FormM2OUploadFieldWidget.ts +2 -9
- package/src/field/form/m2o/upload/FormM2OUploadImgFieldWidget.ts +1 -1
- package/src/field/form/o2m/table/FormO2MTableFieldWidget.ts +2 -0
- package/src/field/form/o2m/upload/FormO2MUploadImgFieldWidget.ts +1 -1
- package/src/field/form/o2o/index.ts +1 -0
- package/src/field/form/o2o/upload/AbstractFormO2OUploadFieldWidget.ts +18 -0
- package/src/field/form/o2o/upload/FormO2OUploadDraggableFieldWidget.ts +47 -0
- package/src/field/form/o2o/upload/FormO2OUploadFieldWidget.ts +42 -0
- package/src/field/form/o2o/upload/FormO2OUploadImgFieldWidget.ts +62 -0
- package/src/field/form/o2o/upload/index.ts +4 -0
- package/src/field/form/string/DefaultString.vue +2 -2
- package/src/field/form/string/FormStringFieldWidget.ts +36 -27
- package/src/field/form/string/download/DefaultDownload.vue +1 -0
- package/src/field/form/string/iframe/FormStringIframeFieldWidget.ts +8 -1
- package/src/field/form/string/input/FormStringInputFieldWidget.ts +0 -4
- package/src/field/form/string/media/FormStringMediaPlayerFieldWidget.ts +7 -2
- package/src/field/form/string/media/FormStringMultiMediaPlayerFieldWidget.ts +1 -1
- package/src/field/form/string/tag/Tag.vue +0 -3
- package/src/field/form/string/upload/FormStringUploadFieldWidget.ts +24 -17
- package/src/field/form/string/upload/FormStringUploadImgFieldWidget.ts +1 -1
- package/src/field/form/text/DefaultTextarea.vue +11 -5
- package/src/field/form/text/FormTextFieldWidget.ts +32 -5
- package/src/field/form/text/index.ts +1 -0
- package/src/field/form/text/typing.ts +1 -0
- package/src/field/gallery/boolean/GalleryBooleanFieldWidget.ts +7 -3
- package/src/field/gallery/boolean/GalleryBooleanSelectFieldWidget.ts +1 -1
- package/src/field/gallery/common/GalleryCommonField.vue +7 -1
- package/src/field/gallery/common/GalleryCommonFieldWidget.ts +2 -8
- package/src/field/gallery/enum/single/GalleryEnumTagFieldWidget.ts +1 -1
- package/src/field/gallery/html/GalleryHtmlFieldWidget.ts +2 -2
- package/src/field/gallery/m2m/GalleryM2MSelectFieldWidget.ts +1 -1
- package/src/field/gallery/m2o/GalleryM2OSelectFieldWidget.ts +1 -1
- package/src/field/gallery/o2m/GalleryO2MSelectFieldWidget.ts +1 -1
- package/src/field/gallery/o2o/GalleryO2OSelectFieldWidget.ts +1 -1
- package/src/field/gallery/string/default/GalleryStringFieldWidget.ts +1 -2
- package/src/field/gallery/string/hyperlinks/GalleryStringHyperlinksFieldWidget.ts +1 -1
- package/src/field/gallery/string/iframe/GalleryStringIframeFieldWidget.ts +2 -2
- package/src/field/gallery/string/media-player/GalleryStringMediaPlayerWidget.ts +1 -1
- package/src/field/gallery/string/string-tag/GalleryStringTagStringFieldWidget.ts +1 -1
- package/src/field/gallery/string/tag/GalleryStringTagFieldWidget.ts +1 -1
- package/src/field/gallery/text-content/number/GalleryNumberTextContentWidget.ts +1 -1
- package/src/field/gallery/text-content/string/GalleryStringTextContentWidget.ts +1 -1
- package/src/field/table/boolean/TableBooleanFieldWidget.ts +7 -2
- package/src/field/table/boolean/TableBooleanRadioFieldWidget.ts +13 -0
- package/src/field/table/boolean/TableBooleanSelectFieldWidget.ts +1 -1
- package/src/field/table/boolean/index.ts +1 -0
- package/src/field/table/string/upload/TableStringMultiUploadWidget.ts +3 -3
- package/src/main-view/DefaultMetadataMainViewWidget.ts +7 -24
- package/src/spi/LayoutManager.ts +20 -17
- package/src/spi/MaskManager.ts +36 -6
- package/src/tags/context/runtime-context-helper.ts +11 -9
- package/src/typing/widget-names.ts +2 -0
- package/src/util/utils.ts +2 -1
- package/src/view/application-screen/gallery/AppsGalleryWidget.ts +2 -2
- package/src/view/card/CardWidget.ts +4 -4
- package/src/view/gallery/GalleryWidget.ts +9 -3
- package/src/view/popup/drawer/style/index.scss +3 -1
- package/dist/types/src/field/form/enum/select/bool/index.d.ts +0 -1
- package/src/field/form/enum/select/bool/index.ts +0 -1
- /package/dist/types/src/field/detail/o2m/{Select.vue.d.ts → select/Select.vue.d.ts} +0 -0
|
@@ -11,7 +11,7 @@ import { AbstractFormM2OUploadFieldWidget } from './AbstractFormM2OUploadFieldWi
|
|
|
11
11
|
FormFieldWidget.Token({
|
|
12
12
|
viewType: [ViewType.Form, ViewType.Detail],
|
|
13
13
|
ttype: ModelFieldType.ManyToOne,
|
|
14
|
-
widget:
|
|
14
|
+
widget: 'UploadImg'
|
|
15
15
|
})
|
|
16
16
|
)
|
|
17
17
|
export class FormM2OUploadImgFieldWidget extends AbstractFormM2OUploadFieldWidget {
|
|
@@ -9,7 +9,7 @@ import { FormO2MFieldUploadBaseWidget } from '../base/FormO2MFieldUploadBaseWidg
|
|
|
9
9
|
FormFieldWidget.Token({
|
|
10
10
|
viewType: [ViewType.Form, ViewType.Detail],
|
|
11
11
|
ttype: ModelFieldType.OneToMany,
|
|
12
|
-
widget:
|
|
12
|
+
widget: 'UploadImg'
|
|
13
13
|
})
|
|
14
14
|
)
|
|
15
15
|
export class FormO2MUploadImgFieldWidget extends FormO2MFieldUploadBaseWidget {
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { SubmitRelationHandler, SubmitValue } from '@oinone/kunlun-engine';
|
|
2
|
+
import { AbstractFormM2OUploadFieldWidget } from '../../m2o';
|
|
3
|
+
|
|
4
|
+
export class AbstractFormO2OUploadFieldWidget extends AbstractFormM2OUploadFieldWidget {
|
|
5
|
+
public async submit(submitValue: SubmitValue) {
|
|
6
|
+
const { field, itemName, value, viewMode, submitCache, submitType, relationUpdateType } = this;
|
|
7
|
+
return SubmitRelationHandler.O2O(
|
|
8
|
+
field,
|
|
9
|
+
itemName,
|
|
10
|
+
submitValue,
|
|
11
|
+
value,
|
|
12
|
+
viewMode,
|
|
13
|
+
submitCache,
|
|
14
|
+
submitType,
|
|
15
|
+
relationUpdateType
|
|
16
|
+
);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { ModelFieldType, ViewType } from '@oinone/kunlun-meta';
|
|
2
|
+
import { SPI } from '@oinone/kunlun-spi';
|
|
3
|
+
import { Widget } from '@oinone/kunlun-vue-widget';
|
|
4
|
+
import { translateValueByKey } from '@oinone/kunlun-engine';
|
|
5
|
+
import { FormFieldWidget } from '../../../../basic';
|
|
6
|
+
import { UploadDraggable } from '../../../../components';
|
|
7
|
+
import { FormO2OUploadFieldWidget } from './FormO2OUploadFieldWidget';
|
|
8
|
+
|
|
9
|
+
@SPI.ClassFactory(
|
|
10
|
+
FormFieldWidget.Token({
|
|
11
|
+
viewType: [ViewType.Form, ViewType.Detail, ViewType.Gallery],
|
|
12
|
+
ttype: ModelFieldType.OneToOne,
|
|
13
|
+
widget: 'UploadDraggable'
|
|
14
|
+
})
|
|
15
|
+
)
|
|
16
|
+
export class FormO2OUploadDraggableFieldWidget extends FormO2OUploadFieldWidget {
|
|
17
|
+
public initialize(config) {
|
|
18
|
+
super.initialize(config);
|
|
19
|
+
this.setComponent(UploadDraggable);
|
|
20
|
+
return this;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
// 拖拽上传图标
|
|
24
|
+
@Widget.Reactive()
|
|
25
|
+
public get draggableIcon() {
|
|
26
|
+
return this.getDsl().draggableIcon || 'oinone-shangchuan1';
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
// 拖拽上传提示词
|
|
30
|
+
@Widget.Reactive()
|
|
31
|
+
public get draggableTipText() {
|
|
32
|
+
return this.getDsl().draggableTipText || '点击 或 拖拽文件到这里上传';
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
// 是否展示支持拓展名
|
|
36
|
+
@Widget.Reactive()
|
|
37
|
+
public get showDraggableExtendsionsText() {
|
|
38
|
+
return this.getDsl().showDraggableExtendsionsText ?? true;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
// 允许上传的文件类型提示文本
|
|
42
|
+
@Widget.Reactive()
|
|
43
|
+
public get draggableExtendsionsText() {
|
|
44
|
+
const allowdFileExtensionsString = this.limitFileExtensions || translateValueByKey('全部');
|
|
45
|
+
return translateValueByKey('支持拓展名: ') + allowdFileExtensionsString;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { ModelFieldType, ViewType } from '@oinone/kunlun-meta';
|
|
2
|
+
import { SPI } from '@oinone/kunlun-spi';
|
|
3
|
+
import { Widget } from '@oinone/kunlun-vue-widget';
|
|
4
|
+
import { FormFieldWidget } from '../../../../basic';
|
|
5
|
+
import { UploadCom } from '../../../../components';
|
|
6
|
+
import { AbstractFormO2OUploadFieldWidget } from './AbstractFormO2OUploadFieldWidget';
|
|
7
|
+
|
|
8
|
+
@SPI.ClassFactory(
|
|
9
|
+
FormFieldWidget.Token({
|
|
10
|
+
viewType: [ViewType.Form, ViewType.Detail, ViewType.Gallery, ViewType.Table],
|
|
11
|
+
ttype: ModelFieldType.OneToOne,
|
|
12
|
+
widget: 'Upload'
|
|
13
|
+
})
|
|
14
|
+
)
|
|
15
|
+
export class FormO2OUploadFieldWidget extends AbstractFormO2OUploadFieldWidget {
|
|
16
|
+
public initialize(config) {
|
|
17
|
+
super.initialize(config);
|
|
18
|
+
this.setComponent(UploadCom);
|
|
19
|
+
return this;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
@Widget.Method()
|
|
23
|
+
protected getImportFile(data) {
|
|
24
|
+
this.change((data && data[0]) || null);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
@Widget.Method()
|
|
28
|
+
public change(value) {
|
|
29
|
+
let finalValue = value;
|
|
30
|
+
if (Array.isArray(finalValue)) {
|
|
31
|
+
finalValue = finalValue?.[0];
|
|
32
|
+
}
|
|
33
|
+
super.change(finalValue);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
@Widget.Method()
|
|
37
|
+
protected remove(file) {
|
|
38
|
+
if (file) {
|
|
39
|
+
this.change(null as any);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { ModelFieldType, ViewType } from '@oinone/kunlun-meta';
|
|
2
|
+
import { BooleanHelper } from '@oinone/kunlun-shared';
|
|
3
|
+
import { SPI } from '@oinone/kunlun-spi';
|
|
4
|
+
import { Widget } from '@oinone/kunlun-vue-widget';
|
|
5
|
+
import { isBoolean, isNil, isString } from 'lodash-es';
|
|
6
|
+
import { FormFieldWidget } from '../../../../basic';
|
|
7
|
+
import { UploadImgCom } from '../../../../components';
|
|
8
|
+
import { AbstractFormO2OUploadFieldWidget } from './AbstractFormO2OUploadFieldWidget';
|
|
9
|
+
|
|
10
|
+
@SPI.ClassFactory(
|
|
11
|
+
FormFieldWidget.Token({
|
|
12
|
+
viewType: [ViewType.Form, ViewType.Detail],
|
|
13
|
+
ttype: ModelFieldType.OneToOne,
|
|
14
|
+
widget: 'UploadImg'
|
|
15
|
+
})
|
|
16
|
+
)
|
|
17
|
+
export class FormO2OUploadImgFieldWidget extends AbstractFormO2OUploadFieldWidget {
|
|
18
|
+
public initialize(config) {
|
|
19
|
+
super.initialize(config);
|
|
20
|
+
this.setComponent(UploadImgCom);
|
|
21
|
+
return this;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
@Widget.Method()
|
|
25
|
+
protected getImportFile(data) {
|
|
26
|
+
this.change((data && data[0]) || null);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
@Widget.Method()
|
|
30
|
+
public change(v) {
|
|
31
|
+
const value = Array.isArray(v) ? v[0] || null : {};
|
|
32
|
+
super.change(value);
|
|
33
|
+
|
|
34
|
+
this.blur();
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
@Widget.Method()
|
|
38
|
+
protected remove(file) {
|
|
39
|
+
if (file) {
|
|
40
|
+
this.change(null as any);
|
|
41
|
+
|
|
42
|
+
this.blur();
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
@Widget.Reactive()
|
|
47
|
+
protected get showPreviewTitle() {
|
|
48
|
+
let { showPreviewTitle } = this.getDsl();
|
|
49
|
+
if (isNil(showPreviewTitle)) {
|
|
50
|
+
showPreviewTitle = true;
|
|
51
|
+
}
|
|
52
|
+
if (isBoolean(showPreviewTitle)) {
|
|
53
|
+
return showPreviewTitle;
|
|
54
|
+
}
|
|
55
|
+
if (isString(showPreviewTitle)) {
|
|
56
|
+
if (BooleanHelper.isStringBoolean(showPreviewTitle)) {
|
|
57
|
+
return !!BooleanHelper.toBoolean(showPreviewTitle);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
return false;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
@@ -97,10 +97,10 @@ export default defineComponent({
|
|
|
97
97
|
|
|
98
98
|
const computeRealLength = (length) => {
|
|
99
99
|
let finalLength = toNumber(length);
|
|
100
|
-
if (props.
|
|
100
|
+
if (props.suffixStore) {
|
|
101
101
|
finalLength -= props.suffix?.length || 0;
|
|
102
102
|
}
|
|
103
|
-
if (props.
|
|
103
|
+
if (props.prefixStore) {
|
|
104
104
|
finalLength -= props.prefix?.length || 0;
|
|
105
105
|
}
|
|
106
106
|
return finalLength > 0 ? finalLength : 0;
|
|
@@ -51,33 +51,6 @@ export class FormStringFieldWidget extends FormInputAbstractFieldWidget<string,
|
|
|
51
51
|
return false;
|
|
52
52
|
}
|
|
53
53
|
|
|
54
|
-
@Widget.Reactive()
|
|
55
|
-
protected get patternType() {
|
|
56
|
-
const _patternType = this.getDsl().patternType;
|
|
57
|
-
if (_patternType) {
|
|
58
|
-
return this.executeExpression(_patternType);
|
|
59
|
-
}
|
|
60
|
-
return undefined;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
@Widget.Reactive()
|
|
64
|
-
protected get pattern() {
|
|
65
|
-
const _pattern = this.getDsl().pattern;
|
|
66
|
-
if (_pattern) {
|
|
67
|
-
return _pattern;
|
|
68
|
-
}
|
|
69
|
-
return undefined;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
@Widget.Reactive()
|
|
73
|
-
protected get clearSetEmpty() {
|
|
74
|
-
const _clearSetEmpty = this.getDsl().clearSetEmpty;
|
|
75
|
-
if (isNil(_clearSetEmpty)) {
|
|
76
|
-
return true;
|
|
77
|
-
}
|
|
78
|
-
return _clearSetEmpty || false;
|
|
79
|
-
}
|
|
80
|
-
|
|
81
54
|
@Widget.Reactive()
|
|
82
55
|
protected get crypto() {
|
|
83
56
|
return this.getDsl().crypto || false;
|
|
@@ -145,4 +118,40 @@ export class FormStringFieldWidget extends FormInputAbstractFieldWidget<string,
|
|
|
145
118
|
|
|
146
119
|
super.change(val);
|
|
147
120
|
}
|
|
121
|
+
|
|
122
|
+
/**
|
|
123
|
+
* @deprecated invalid prop
|
|
124
|
+
*/
|
|
125
|
+
@Widget.Reactive()
|
|
126
|
+
protected get patternType() {
|
|
127
|
+
const _patternType = this.getDsl().patternType;
|
|
128
|
+
if (_patternType) {
|
|
129
|
+
return this.executeExpression(_patternType);
|
|
130
|
+
}
|
|
131
|
+
return undefined;
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
/**
|
|
135
|
+
* @deprecated invalid prop
|
|
136
|
+
*/
|
|
137
|
+
@Widget.Reactive()
|
|
138
|
+
protected get pattern() {
|
|
139
|
+
const _pattern = this.getDsl().pattern;
|
|
140
|
+
if (_pattern) {
|
|
141
|
+
return _pattern;
|
|
142
|
+
}
|
|
143
|
+
return undefined;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
/**
|
|
147
|
+
* @deprecated invalid prop
|
|
148
|
+
*/
|
|
149
|
+
@Widget.Reactive()
|
|
150
|
+
protected get clearSetEmpty() {
|
|
151
|
+
const _clearSetEmpty = this.getDsl().clearSetEmpty;
|
|
152
|
+
if (isNil(_clearSetEmpty)) {
|
|
153
|
+
return true;
|
|
154
|
+
}
|
|
155
|
+
return _clearSetEmpty || false;
|
|
156
|
+
}
|
|
148
157
|
}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { ModelFieldType, ViewType } from '@oinone/kunlun-meta';
|
|
2
2
|
import { SPI } from '@oinone/kunlun-spi';
|
|
3
|
+
import { InputMediaMode } from '@oinone/kunlun-vue-ui-common';
|
|
4
|
+
import { Widget } from '@oinone/kunlun-vue-widget';
|
|
3
5
|
import { FormFieldWidget } from '../../../../basic';
|
|
4
6
|
import { FormStringInputFieldWidget } from '../input';
|
|
5
7
|
import DefaultFormIframe from './DefaultFormIframe.vue';
|
|
@@ -8,7 +10,7 @@ import DefaultFormIframe from './DefaultFormIframe.vue';
|
|
|
8
10
|
FormFieldWidget.Token({
|
|
9
11
|
viewType: ViewType.Form,
|
|
10
12
|
ttype: ModelFieldType.String,
|
|
11
|
-
widget:
|
|
13
|
+
widget: 'Iframe'
|
|
12
14
|
})
|
|
13
15
|
)
|
|
14
16
|
export class FormStringIframeFieldWidget extends FormStringInputFieldWidget {
|
|
@@ -17,6 +19,11 @@ export class FormStringIframeFieldWidget extends FormStringInputFieldWidget {
|
|
|
17
19
|
this.setComponent(DefaultFormIframe);
|
|
18
20
|
return this;
|
|
19
21
|
}
|
|
22
|
+
|
|
23
|
+
@Widget.Reactive()
|
|
24
|
+
protected get mode() {
|
|
25
|
+
return this.getDsl().mode || InputMediaMode.DYNAMIC;
|
|
26
|
+
}
|
|
20
27
|
}
|
|
21
28
|
|
|
22
29
|
/**
|
|
@@ -18,10 +18,6 @@ import { FormStringFieldWidget } from '../FormStringFieldWidget';
|
|
|
18
18
|
)
|
|
19
19
|
export class FormStringInputFieldWidget extends FormStringFieldWidget {
|
|
20
20
|
public submit(submitValue: SubmitValue) {
|
|
21
|
-
// const finalValue = this.addPrefixSuffix(this.inputRealValue);
|
|
22
|
-
// if (!finalValue && this.inputRealValue === undefined) {
|
|
23
|
-
// return undefined;
|
|
24
|
-
// }
|
|
25
21
|
let finalValue = this.value;
|
|
26
22
|
/**
|
|
27
23
|
* 数据提交的时候,如果判断当前字段是否需要加密
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { translateValueByKey } from '@oinone/kunlun-engine';
|
|
2
2
|
import { ModelFieldType, ViewType } from '@oinone/kunlun-meta';
|
|
3
3
|
import { SPI } from '@oinone/kunlun-spi';
|
|
4
|
-
import { defaultMultiPartConfig, ValidateTrigger, WidgetTrigger } from '@oinone/kunlun-vue-ui-common';
|
|
4
|
+
import { defaultMultiPartConfig, InputMediaMode, ValidateTrigger, WidgetTrigger } from '@oinone/kunlun-vue-ui-common';
|
|
5
5
|
import { Widget } from '@oinone/kunlun-vue-widget';
|
|
6
6
|
import { isArray, isNumber } from 'lodash-es';
|
|
7
7
|
import { FormFieldWidget } from '../../../../basic';
|
|
@@ -18,7 +18,7 @@ enum FileSource {
|
|
|
18
18
|
FormFieldWidget.Token({
|
|
19
19
|
viewType: ViewType.Form,
|
|
20
20
|
ttype: ModelFieldType.String,
|
|
21
|
-
widget:
|
|
21
|
+
widget: 'MediaPlayer'
|
|
22
22
|
})
|
|
23
23
|
)
|
|
24
24
|
export class FormStringMediaPlayerFieldWidget extends FormStringInputFieldWidget {
|
|
@@ -28,6 +28,11 @@ export class FormStringMediaPlayerFieldWidget extends FormStringInputFieldWidget
|
|
|
28
28
|
return this;
|
|
29
29
|
}
|
|
30
30
|
|
|
31
|
+
@Widget.Reactive()
|
|
32
|
+
protected get mode() {
|
|
33
|
+
return this.getDsl().mode || InputMediaMode.DYNAMIC;
|
|
34
|
+
}
|
|
35
|
+
|
|
31
36
|
@Widget.Reactive()
|
|
32
37
|
protected get fileSource() {
|
|
33
38
|
return this.getDsl().fileSource;
|
|
@@ -10,7 +10,7 @@ import Media from './Media.vue';
|
|
|
10
10
|
viewType: [ViewType.Form, ViewType.Detail, ViewType.Table],
|
|
11
11
|
ttype: ModelFieldType.String,
|
|
12
12
|
multi: true,
|
|
13
|
-
widget:
|
|
13
|
+
widget: 'MediaPlayer'
|
|
14
14
|
})
|
|
15
15
|
)
|
|
16
16
|
export class FormStringMultiMediaPlayerFieldWidget extends FormStringFieldWidget {
|
|
@@ -128,11 +128,6 @@ export class FormStringUploadFieldWidget extends FormFieldWidget<string[], Runti
|
|
|
128
128
|
return -1;
|
|
129
129
|
}
|
|
130
130
|
|
|
131
|
-
@Widget.Reactive()
|
|
132
|
-
protected get allLimitSize() {
|
|
133
|
-
return this.getDsl().allLimitSize || '';
|
|
134
|
-
}
|
|
135
|
-
|
|
136
131
|
@Widget.Reactive()
|
|
137
132
|
protected get multiple(): boolean {
|
|
138
133
|
const _multiple = this.getDsl().multi;
|
|
@@ -154,18 +149,6 @@ export class FormStringUploadFieldWidget extends FormFieldWidget<string[], Runti
|
|
|
154
149
|
return BooleanHelper.toBoolean(this.getDsl().privateLink);
|
|
155
150
|
}
|
|
156
151
|
|
|
157
|
-
// 文件展示的前缀文本
|
|
158
|
-
@Widget.Reactive()
|
|
159
|
-
protected get fileDisplayPrefixText() {
|
|
160
|
-
return this.getDsl().displayPrefixText || 'prefix:';
|
|
161
|
-
}
|
|
162
|
-
|
|
163
|
-
// 文件展示的占位文本
|
|
164
|
-
@Widget.Reactive()
|
|
165
|
-
protected get fileDisplayText() {
|
|
166
|
-
return this.getDsl().fileDisplayText || 'fileDisplayText';
|
|
167
|
-
}
|
|
168
|
-
|
|
169
152
|
public async validator(): Promise<ValidatorInfo> {
|
|
170
153
|
const res = await super.validator();
|
|
171
154
|
if (!isValidatorSuccess(res)) {
|
|
@@ -187,4 +170,28 @@ export class FormStringUploadFieldWidget extends FormFieldWidget<string[], Runti
|
|
|
187
170
|
}
|
|
188
171
|
return this.validatorSuccess();
|
|
189
172
|
}
|
|
173
|
+
|
|
174
|
+
/**
|
|
175
|
+
* @deprecated invalid prop
|
|
176
|
+
*/
|
|
177
|
+
@Widget.Reactive()
|
|
178
|
+
protected get allLimitSize() {
|
|
179
|
+
return this.getDsl().allLimitSize || '';
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
/**
|
|
183
|
+
* @deprecated invalid code
|
|
184
|
+
*/
|
|
185
|
+
@Widget.Reactive()
|
|
186
|
+
protected get fileDisplayPrefixText() {
|
|
187
|
+
return this.getDsl().displayPrefixText || 'prefix:';
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
/**
|
|
191
|
+
* @deprecated invalid code
|
|
192
|
+
*/
|
|
193
|
+
@Widget.Reactive()
|
|
194
|
+
protected get fileDisplayText() {
|
|
195
|
+
return this.getDsl().fileDisplayText || 'fileDisplayText';
|
|
196
|
+
}
|
|
190
197
|
}
|
|
@@ -8,7 +8,7 @@ import { FormStringUploadFieldWidget } from './FormStringUploadFieldWidget';
|
|
|
8
8
|
BaseFieldWidget.Token({
|
|
9
9
|
viewType: ViewType.Form,
|
|
10
10
|
ttype: [ModelFieldType.String, ModelFieldType.Text],
|
|
11
|
-
widget:
|
|
11
|
+
widget: 'UploadImg'
|
|
12
12
|
})
|
|
13
13
|
)
|
|
14
14
|
export class FormStringUploadImgFieldWidget extends FormStringUploadFieldWidget {
|
|
@@ -47,7 +47,7 @@ export default defineComponent({
|
|
|
47
47
|
type: String
|
|
48
48
|
},
|
|
49
49
|
rows: {
|
|
50
|
-
type: Number,
|
|
50
|
+
type: [Number, Boolean, Object],
|
|
51
51
|
default: 3
|
|
52
52
|
},
|
|
53
53
|
allowClear: {
|
|
@@ -80,13 +80,19 @@ export default defineComponent({
|
|
|
80
80
|
const realValue = ref(props.value || props.defaultValue);
|
|
81
81
|
|
|
82
82
|
const autoSize = computed(() => {
|
|
83
|
-
const
|
|
83
|
+
const rows = props.rows;
|
|
84
84
|
if (isNil(rows)) {
|
|
85
85
|
return true;
|
|
86
86
|
}
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
87
|
+
if (typeof rows === 'number') {
|
|
88
|
+
if (rows < 0) {
|
|
89
|
+
return undefined;
|
|
90
|
+
}
|
|
91
|
+
return {
|
|
92
|
+
minRows: rows
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
return rows;
|
|
90
96
|
});
|
|
91
97
|
|
|
92
98
|
watch(
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { ModelFieldType, ViewType } from '@oinone/kunlun-meta';
|
|
2
|
+
import { BooleanHelper } from '@oinone/kunlun-shared';
|
|
2
3
|
import { SPI } from '@oinone/kunlun-spi';
|
|
3
4
|
import { Widget } from '@oinone/kunlun-vue-widget';
|
|
4
5
|
import { isNaN, isNumber } from 'lodash-es';
|
|
@@ -6,6 +7,7 @@ import { FormFieldWidget } from '../../../basic';
|
|
|
6
7
|
import { isValidatorSuccess, ValidatorInfo } from '../../../typing';
|
|
7
8
|
import { FormStringFieldWidget } from '../string/FormStringFieldWidget';
|
|
8
9
|
import DefaultTextarea from './DefaultTextarea.vue';
|
|
10
|
+
import { InputTextareaSize } from './typing';
|
|
9
11
|
|
|
10
12
|
@SPI.ClassFactory(FormFieldWidget.Token({ viewType: [ViewType.Form, ViewType.Search], ttype: ModelFieldType.Text }))
|
|
11
13
|
export class FormTextFieldWidget extends FormStringFieldWidget {
|
|
@@ -16,12 +18,37 @@ export class FormTextFieldWidget extends FormStringFieldWidget {
|
|
|
16
18
|
}
|
|
17
19
|
|
|
18
20
|
@Widget.Reactive()
|
|
19
|
-
protected get
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
protected get defaultRows(): InputTextareaSize {
|
|
22
|
+
return 3;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
@Widget.Reactive()
|
|
26
|
+
protected get rows(): InputTextareaSize {
|
|
27
|
+
const { rows } = this.getDsl();
|
|
28
|
+
if (rows == null) {
|
|
29
|
+
return this.defaultRows;
|
|
30
|
+
}
|
|
31
|
+
const autoSize = BooleanHelper.toBoolean(rows);
|
|
32
|
+
if (autoSize != null) {
|
|
33
|
+
return autoSize;
|
|
34
|
+
}
|
|
35
|
+
const minRows = Number(rows);
|
|
36
|
+
if (!isNaN(minRows)) {
|
|
37
|
+
return minRows;
|
|
38
|
+
}
|
|
39
|
+
if (typeof rows === 'string') {
|
|
40
|
+
const [minRows, maxRows] = rows.split(',');
|
|
41
|
+
const minRowsNumber = Number(minRows);
|
|
42
|
+
const maxRowsNumber = Number(maxRows);
|
|
43
|
+
if (isNaN(minRowsNumber) || isNaN(maxRowsNumber)) {
|
|
44
|
+
return this.defaultRows;
|
|
45
|
+
}
|
|
46
|
+
return {
|
|
47
|
+
minRows: minRowsNumber,
|
|
48
|
+
maxRows: maxRowsNumber
|
|
49
|
+
};
|
|
23
50
|
}
|
|
24
|
-
return
|
|
51
|
+
return this.defaultRows;
|
|
25
52
|
}
|
|
26
53
|
|
|
27
54
|
@Widget.Reactive()
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type InputTextareaSize = number | boolean | { minRows?: number; maxRows?: number } | undefined;
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
import { ModelFieldType, ViewType } from '@oinone/kunlun-meta';
|
|
2
2
|
import { SPI } from '@oinone/kunlun-spi';
|
|
3
|
-
|
|
4
3
|
import { FormFieldWidget } from '../../../basic/field';
|
|
5
|
-
import Boolean from './Boolean.vue';
|
|
6
4
|
import { DetailBooleanFieldWidget } from '../../detail';
|
|
5
|
+
import Boolean from './Boolean.vue';
|
|
7
6
|
|
|
8
|
-
@SPI.ClassFactory(
|
|
7
|
+
@SPI.ClassFactory(
|
|
8
|
+
FormFieldWidget.Token({
|
|
9
|
+
viewType: ViewType.Gallery,
|
|
10
|
+
ttype: ModelFieldType.Boolean
|
|
11
|
+
})
|
|
12
|
+
)
|
|
9
13
|
export class GalleryBooleanFieldWidget extends DetailBooleanFieldWidget {
|
|
10
14
|
public initialize(props) {
|
|
11
15
|
super.initialize(props);
|
|
@@ -52,7 +52,13 @@ export default defineComponent({
|
|
|
52
52
|
|
|
53
53
|
const justifyContent = computed(() => {
|
|
54
54
|
return Optional.ofNullable(props.justifyContent)
|
|
55
|
-
.map((v) =>
|
|
55
|
+
.map((v) => {
|
|
56
|
+
const target = FlexRowJustify[v];
|
|
57
|
+
if (target) {
|
|
58
|
+
return target;
|
|
59
|
+
}
|
|
60
|
+
return v as FlexRowJustify;
|
|
61
|
+
})
|
|
56
62
|
.orElse(FlexRowJustify.START);
|
|
57
63
|
});
|
|
58
64
|
|
|
@@ -8,14 +8,8 @@ import GalleryCommonField from './GalleryCommonField.vue';
|
|
|
8
8
|
|
|
9
9
|
@SPI.ClassFactory(
|
|
10
10
|
FormFieldWidget.Token({
|
|
11
|
-
viewType:
|
|
12
|
-
ttype: [
|
|
13
|
-
ModelFieldType.String,
|
|
14
|
-
ModelFieldType.Text,
|
|
15
|
-
ModelFieldType.Phone,
|
|
16
|
-
ModelFieldType.Email,
|
|
17
|
-
ModelFieldType.Related
|
|
18
|
-
]
|
|
11
|
+
viewType: ViewType.Gallery,
|
|
12
|
+
ttype: [ModelFieldType.Text, ModelFieldType.Related]
|
|
19
13
|
})
|
|
20
14
|
)
|
|
21
15
|
export class GalleryCommonFieldWidget extends DetailCommonFieldWidget {
|
|
@@ -7,7 +7,7 @@ import Html from './Html.vue';
|
|
|
7
7
|
|
|
8
8
|
@SPI.ClassFactory(
|
|
9
9
|
FormFieldWidget.Token({
|
|
10
|
-
viewType:
|
|
10
|
+
viewType: ViewType.Gallery,
|
|
11
11
|
ttype: ModelFieldType.HTML
|
|
12
12
|
})
|
|
13
13
|
)
|
|
@@ -20,6 +20,6 @@ export class GalleryHtmlFieldWidget extends DetailHtmlFieldWidget {
|
|
|
20
20
|
|
|
21
21
|
@Widget.Reactive()
|
|
22
22
|
public get showHeight() {
|
|
23
|
-
return this.getDsl()
|
|
23
|
+
return this.getDsl().showHeight;
|
|
24
24
|
}
|
|
25
25
|
}
|