@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.
Files changed (171) hide show
  1. package/dist/oinone-kunlun-vue-admin-base.css +1 -1
  2. package/dist/oinone-kunlun-vue-admin-base.esm.js +9602 -9235
  3. package/dist/oinone-kunlun-vue-admin-base.scss +1 -1
  4. package/dist/types/src/action/component/action/ActionWidget.d.ts +10 -1
  5. package/dist/types/src/action/server-actions/ServerActionWidget.d.ts +1 -5
  6. package/dist/types/src/action/url-actions/UrlActionWidget.d.ts +1 -3
  7. package/dist/types/src/basic/field/complex/select/FormSelectComplexFieldWidget.d.ts +8 -2
  8. package/dist/types/src/basic/table-column/BaseTableColumnWidget.d.ts +3 -0
  9. package/dist/types/src/components/upload/File.vue.d.ts +0 -9
  10. package/dist/types/src/field/detail/enum/multi/DetailEnumMultiFieldWidget.d.ts +2 -1
  11. package/dist/types/src/field/detail/enum/single/DetailEnumFieldWidget.d.ts +2 -1
  12. package/dist/types/src/field/detail/index.d.ts +0 -1
  13. package/dist/types/src/field/detail/m2m/select/DetailM2MSelectFieldWidget.d.ts +1 -1
  14. package/dist/types/src/field/detail/o2m/index.d.ts +1 -0
  15. package/dist/types/src/field/detail/o2m/{DetailO2MSelectFieldWidget.d.ts → select/DetailO2MSelectFieldWidget.d.ts} +1 -1
  16. package/dist/types/src/field/form/abstract/FormInputAbstractFieldWidget.d.ts +22 -18
  17. package/dist/types/src/field/form/abstract/checkbox/FormCheckboxWidget.d.ts +1 -1
  18. package/dist/types/src/field/form/{enum/radio → boolean}/FormBooleanRadioFieldWidget.d.ts +4 -2
  19. package/dist/types/src/field/form/{enum/select/bool → boolean}/FormBooleanSelectFieldWidget.d.ts +2 -2
  20. package/dist/types/src/field/form/boolean/index.d.ts +2 -0
  21. package/dist/types/src/field/form/enum/FormEnumFieldAbstractWidget.d.ts +17 -5
  22. package/dist/types/src/field/form/enum/checkbox/FormEnumMultiCheckboxFieldWidget.d.ts +1 -0
  23. package/dist/types/src/field/form/enum/index.d.ts +1 -0
  24. package/dist/types/src/field/form/enum/radio/FormEnumRadioWidget.d.ts +4 -1
  25. package/dist/types/src/field/form/enum/radio/index.d.ts +0 -1
  26. package/dist/types/src/field/form/enum/select/index.d.ts +0 -1
  27. package/dist/types/src/field/form/enum/select/multi/FormEnumMultiSelectFieldWidget.d.ts +2 -1
  28. package/dist/types/src/field/form/enum/select/single/FormEnumFieldWidget.d.ts +2 -1
  29. package/dist/types/src/field/form/float/Plat.vue.d.ts +2 -2
  30. package/dist/types/src/field/form/index.d.ts +1 -2
  31. package/dist/types/src/field/form/integer/FormIntegerFieldWidget.d.ts +0 -1
  32. package/dist/types/src/field/form/m2o/upload/FormM2OUploadFieldWidget.d.ts +0 -1
  33. package/dist/types/src/field/form/o2o/index.d.ts +1 -0
  34. package/dist/types/src/field/form/o2o/upload/AbstractFormO2OUploadFieldWidget.d.ts +5 -0
  35. package/dist/types/src/field/form/o2o/upload/FormO2OUploadDraggableFieldWidget.d.ts +8 -0
  36. package/dist/types/src/field/form/o2o/upload/FormO2OUploadFieldWidget.d.ts +7 -0
  37. package/dist/types/src/field/form/o2o/upload/FormO2OUploadImgFieldWidget.d.ts +8 -0
  38. package/dist/types/src/field/form/o2o/upload/index.d.ts +4 -0
  39. package/dist/types/src/field/form/string/FormStringFieldWidget.d.ts +12 -3
  40. package/dist/types/src/field/form/string/iframe/FormStringIframeFieldWidget.d.ts +1 -0
  41. package/dist/types/src/field/form/string/media/FormStringMediaPlayerFieldWidget.d.ts +1 -0
  42. package/dist/types/src/field/form/string/tag/Tag.vue.d.ts +6 -6
  43. package/dist/types/src/field/form/string/upload/FormStringUploadFieldWidget.d.ts +11 -2
  44. package/dist/types/src/field/form/text/DefaultTextarea.vue.d.ts +4 -6
  45. package/dist/types/src/field/form/text/FormTextFieldWidget.d.ts +3 -1
  46. package/dist/types/src/field/form/text/index.d.ts +1 -0
  47. package/dist/types/src/field/form/text/typing.d.ts +4 -0
  48. package/dist/types/src/field/table/boolean/TableBooleanRadioFieldWidget.d.ts +3 -0
  49. package/dist/types/src/field/table/boolean/index.d.ts +1 -0
  50. package/dist/types/src/field/table/string/upload/TableStringMultiUploadWidget.d.ts +1 -1
  51. package/dist/types/src/provider/RootWidget.d.ts +2 -2
  52. package/dist/types/src/spi/LayoutManager.d.ts +20 -17
  53. package/dist/types/src/spi/MaskManager.d.ts +33 -5
  54. package/dist/types/src/tags/context/runtime-context-helper.d.ts +1 -0
  55. package/dist/types/src/typing/widget-names.d.ts +1 -0
  56. package/package.json +8 -8
  57. package/src/action/component/action/ActionWidget.ts +203 -28
  58. package/src/action/server-actions/ServerActionWidget.ts +6 -104
  59. package/src/action/url-actions/UrlActionWidget.ts +2 -37
  60. package/src/basic/element/BaseElementViewWidget.ts +11 -2
  61. package/src/basic/field/complex/select/FormSelectComplexFieldWidget.ts +24 -32
  62. package/src/basic/form-item/BaseFormItemWidget.ts +4 -0
  63. package/src/basic/gallery-item/DefaultGalleryItem.vue +6 -1
  64. package/src/basic/table-column/BaseTableColumnWidget.ts +5 -2
  65. package/src/components/upload/File.vue +0 -45
  66. package/src/field/detail/boolean/Boolean.vue +2 -3
  67. package/src/field/detail/boolean/DetailBooleanFieldWidget.ts +1 -1
  68. package/src/field/detail/boolean/DetailBooleanSelectFieldWidget.ts +1 -1
  69. package/src/field/detail/enum/multi/DetailEnumMultiFieldWidget.ts +9 -5
  70. package/src/field/detail/enum/single/DetailEnumFieldWidget.ts +8 -2
  71. package/src/field/detail/html/DetailHtmlFieldWidget.ts +1 -1
  72. package/src/field/detail/index.ts +0 -1
  73. package/src/field/detail/m2m/select/DetailM2MSelectFieldWidget.ts +3 -5
  74. package/src/field/detail/m2m/table/DetailM2MTableFieldWidget.ts +3 -1
  75. package/src/field/detail/m2o/DetailM2OSelectFieldWidget.ts +1 -1
  76. package/src/field/detail/m2o/upload/DetailM2OUploadWidget.ts +2 -3
  77. package/src/field/detail/number/DetailNumberWidget.ts +1 -1
  78. package/src/field/detail/o2m/index.ts +1 -0
  79. package/src/field/detail/o2m/{DetailO2MSelectFieldWidget.ts → select/DetailO2MSelectFieldWidget.ts} +4 -5
  80. package/src/field/detail/o2m/{Select.vue → select/Select.vue} +1 -1
  81. package/src/field/detail/o2m/table/DetailO2MTableFieldWidget.ts +3 -1
  82. package/src/field/detail/o2o/DetailO2OSelectFieldWidget.ts +1 -1
  83. package/src/field/detail/string/hyperlinks/DetailStringHyperlinksFieldWidget.ts +1 -1
  84. package/src/field/detail/string/iframe/DetailStringIframeFieldWidget.ts +2 -2
  85. package/src/field/detail/string/media/DetailStringMediaPlayerFieldWidget.ts +1 -1
  86. package/src/field/detail/string/string-with-copy/DetailStringWithCopyFieldWidget.ts +1 -1
  87. package/src/field/detail/string/tag/DetailStringTagFieldWidget.ts +1 -1
  88. package/src/field/detail/string/upload/DetailStringUploadFieldWidget.ts +1 -1
  89. package/src/field/detail/string/upload/DetailStringUploadImgFieldWidget.ts +1 -1
  90. package/src/field/form/abstract/FormInputAbstractFieldWidget.ts +54 -50
  91. package/src/field/form/abstract/checkbox/FormCheckboxWidget.ts +1 -3
  92. package/src/field/form/{enum/radio → boolean}/FormBooleanRadioFieldWidget.ts +22 -4
  93. package/src/field/form/{enum/select/bool → boolean}/FormBooleanSelectFieldWidget.ts +4 -5
  94. package/src/field/form/boolean/index.ts +2 -0
  95. package/src/field/form/enum/FormEnumFieldAbstractWidget.ts +42 -33
  96. package/src/field/form/enum/checkbox/FormEnumMultiCheckboxFieldWidget.ts +9 -1
  97. package/src/field/form/enum/index.ts +2 -1
  98. package/src/field/form/enum/radio/FormEnumRadioWidget.ts +21 -8
  99. package/src/field/form/enum/radio/index.ts +0 -1
  100. package/src/field/form/enum/select/index.ts +0 -1
  101. package/src/field/form/enum/select/multi/FormEnumMultiSelectFieldWidget.ts +2 -1
  102. package/src/field/form/enum/select/single/FormEnumFieldWidget.ts +2 -1
  103. package/src/field/form/index.ts +1 -3
  104. package/src/field/form/integer/FormIntegerFieldWidget.ts +0 -5
  105. package/src/field/form/integer/FormIntegerSliderFieldWidget.ts +1 -1
  106. package/src/field/form/integer/FormIntegerTagFieldWidget.ts +1 -0
  107. package/src/field/form/m2m/select/FormM2MFieldSelectWidget.ts +2 -2
  108. package/src/field/form/m2m/table/FormM2MTableFieldWidget.ts +2 -0
  109. package/src/field/form/m2m/upload/FormM2MUploadFieldWidget.ts +3 -3
  110. package/src/field/form/m2m/upload/FormM2MUploadImgFieldWidget.ts +1 -1
  111. package/src/field/form/m2o/form/FormM2OFormFieldWidget.ts +1 -1
  112. package/src/field/form/m2o/upload/FormM2OUploadFieldWidget.ts +2 -9
  113. package/src/field/form/m2o/upload/FormM2OUploadImgFieldWidget.ts +1 -1
  114. package/src/field/form/o2m/table/FormO2MTableFieldWidget.ts +2 -0
  115. package/src/field/form/o2m/upload/FormO2MUploadImgFieldWidget.ts +1 -1
  116. package/src/field/form/o2o/index.ts +1 -0
  117. package/src/field/form/o2o/upload/AbstractFormO2OUploadFieldWidget.ts +18 -0
  118. package/src/field/form/o2o/upload/FormO2OUploadDraggableFieldWidget.ts +47 -0
  119. package/src/field/form/o2o/upload/FormO2OUploadFieldWidget.ts +42 -0
  120. package/src/field/form/o2o/upload/FormO2OUploadImgFieldWidget.ts +62 -0
  121. package/src/field/form/o2o/upload/index.ts +4 -0
  122. package/src/field/form/string/DefaultString.vue +2 -2
  123. package/src/field/form/string/FormStringFieldWidget.ts +36 -27
  124. package/src/field/form/string/download/DefaultDownload.vue +1 -0
  125. package/src/field/form/string/iframe/FormStringIframeFieldWidget.ts +8 -1
  126. package/src/field/form/string/input/FormStringInputFieldWidget.ts +0 -4
  127. package/src/field/form/string/media/FormStringMediaPlayerFieldWidget.ts +7 -2
  128. package/src/field/form/string/media/FormStringMultiMediaPlayerFieldWidget.ts +1 -1
  129. package/src/field/form/string/tag/Tag.vue +0 -3
  130. package/src/field/form/string/upload/FormStringUploadFieldWidget.ts +24 -17
  131. package/src/field/form/string/upload/FormStringUploadImgFieldWidget.ts +1 -1
  132. package/src/field/form/text/DefaultTextarea.vue +11 -5
  133. package/src/field/form/text/FormTextFieldWidget.ts +32 -5
  134. package/src/field/form/text/index.ts +1 -0
  135. package/src/field/form/text/typing.ts +1 -0
  136. package/src/field/gallery/boolean/GalleryBooleanFieldWidget.ts +7 -3
  137. package/src/field/gallery/boolean/GalleryBooleanSelectFieldWidget.ts +1 -1
  138. package/src/field/gallery/common/GalleryCommonField.vue +7 -1
  139. package/src/field/gallery/common/GalleryCommonFieldWidget.ts +2 -8
  140. package/src/field/gallery/enum/single/GalleryEnumTagFieldWidget.ts +1 -1
  141. package/src/field/gallery/html/GalleryHtmlFieldWidget.ts +2 -2
  142. package/src/field/gallery/m2m/GalleryM2MSelectFieldWidget.ts +1 -1
  143. package/src/field/gallery/m2o/GalleryM2OSelectFieldWidget.ts +1 -1
  144. package/src/field/gallery/o2m/GalleryO2MSelectFieldWidget.ts +1 -1
  145. package/src/field/gallery/o2o/GalleryO2OSelectFieldWidget.ts +1 -1
  146. package/src/field/gallery/string/default/GalleryStringFieldWidget.ts +1 -2
  147. package/src/field/gallery/string/hyperlinks/GalleryStringHyperlinksFieldWidget.ts +1 -1
  148. package/src/field/gallery/string/iframe/GalleryStringIframeFieldWidget.ts +2 -2
  149. package/src/field/gallery/string/media-player/GalleryStringMediaPlayerWidget.ts +1 -1
  150. package/src/field/gallery/string/string-tag/GalleryStringTagStringFieldWidget.ts +1 -1
  151. package/src/field/gallery/string/tag/GalleryStringTagFieldWidget.ts +1 -1
  152. package/src/field/gallery/text-content/number/GalleryNumberTextContentWidget.ts +1 -1
  153. package/src/field/gallery/text-content/string/GalleryStringTextContentWidget.ts +1 -1
  154. package/src/field/table/boolean/TableBooleanFieldWidget.ts +7 -2
  155. package/src/field/table/boolean/TableBooleanRadioFieldWidget.ts +13 -0
  156. package/src/field/table/boolean/TableBooleanSelectFieldWidget.ts +1 -1
  157. package/src/field/table/boolean/index.ts +1 -0
  158. package/src/field/table/string/upload/TableStringMultiUploadWidget.ts +3 -3
  159. package/src/main-view/DefaultMetadataMainViewWidget.ts +7 -24
  160. package/src/spi/LayoutManager.ts +20 -17
  161. package/src/spi/MaskManager.ts +36 -6
  162. package/src/tags/context/runtime-context-helper.ts +11 -9
  163. package/src/typing/widget-names.ts +2 -0
  164. package/src/util/utils.ts +2 -1
  165. package/src/view/application-screen/gallery/AppsGalleryWidget.ts +2 -2
  166. package/src/view/card/CardWidget.ts +4 -4
  167. package/src/view/gallery/GalleryWidget.ts +9 -3
  168. package/src/view/popup/drawer/style/index.scss +3 -1
  169. package/dist/types/src/field/form/enum/select/bool/index.d.ts +0 -1
  170. package/src/field/form/enum/select/bool/index.ts +0 -1
  171. /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: ['UploadImg']
14
+ widget: 'UploadImg'
15
15
  })
16
16
  )
17
17
  export class FormM2OUploadImgFieldWidget extends AbstractFormM2OUploadFieldWidget {
@@ -10,6 +10,8 @@ import { TABLE_WIDGET } from '../../../../typing';
10
10
  BaseFieldWidget.Token({
11
11
  viewType: ViewType.Form,
12
12
  ttype: ModelFieldType.OneToMany,
13
+ // fixme @zbh 20250814 6.3.0版本使用多别称
14
+ // widget: ['table', TABLE_WIDGET]
13
15
  widget: TABLE_WIDGET
14
16
  })
15
17
  )
@@ -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: ['UploadImg']
12
+ widget: 'UploadImg'
13
13
  })
14
14
  )
15
15
  export class FormO2MUploadImgFieldWidget extends FormO2MFieldUploadBaseWidget {
@@ -3,3 +3,4 @@ export * from './form/FormO2OFormFieldWidget';
3
3
  export * from './radio';
4
4
  export * from './select/FormO2OSelectFieldWidget';
5
5
  export * from './tree-select/FormO2OTreeSelectFieldWidget';
6
+ export * from './upload';
@@ -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
+ }
@@ -0,0 +1,4 @@
1
+ export * from './AbstractFormO2OUploadFieldWidget';
2
+ export * from './FormO2OUploadDraggableFieldWidget';
3
+ export * from './FormO2OUploadFieldWidget';
4
+ export * from './FormO2OUploadImgFieldWidget';
@@ -97,10 +97,10 @@ export default defineComponent({
97
97
 
98
98
  const computeRealLength = (length) => {
99
99
  let finalLength = toNumber(length);
100
- if (props.showSuffix && props.suffixStore) {
100
+ if (props.suffixStore) {
101
101
  finalLength -= props.suffix?.length || 0;
102
102
  }
103
- if (props.showPrefix && props.prefixStore) {
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
  }
@@ -7,6 +7,7 @@
7
7
 
8
8
  <script lang="ts">
9
9
  import { defineComponent, PropType } from 'vue';
10
+
10
11
  export default defineComponent({
11
12
  name: 'DefaultDownload',
12
13
  props: {
@@ -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: ['Iframe']
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: ['MediaPlayer']
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: ['MediaPlayer']
13
+ widget: 'MediaPlayer'
14
14
  })
15
15
  )
16
16
  export class FormStringMultiMediaPlayerFieldWidget extends FormStringFieldWidget {
@@ -44,9 +44,6 @@ export default defineComponent({
44
44
  tagChange: {
45
45
  type: Function
46
46
  },
47
- blur: {
48
- type: Function
49
- },
50
47
  placeholder: {
51
48
  type: String
52
49
  },
@@ -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: ['UploadImg']
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 { rows } = props;
83
+ const rows = props.rows;
84
84
  if (isNil(rows)) {
85
85
  return true;
86
86
  }
87
- return {
88
- minRows: rows
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 rows(): number {
20
- const rows = Number(this.getDsl().rows);
21
- if (isNaN(rows)) {
22
- return 3;
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 rows;
51
+ return this.defaultRows;
25
52
  }
26
53
 
27
54
  @Widget.Reactive()
@@ -1,2 +1,3 @@
1
1
  export * from './FormTextFieldWidget';
2
2
  export * from './DomainExpGenerator';
3
+ export * from './typing';
@@ -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(FormFieldWidget.Token({ viewType: [ViewType.Gallery], ttype: ModelFieldType.Boolean }))
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);
@@ -6,7 +6,7 @@ import GalleryEnum from '../enum/GalleryEnum.vue';
6
6
 
7
7
  @SPI.ClassFactory(
8
8
  FormFieldWidget.Token({
9
- viewType: [ViewType.Gallery],
9
+ viewType: ViewType.Gallery,
10
10
  ttype: [ModelFieldType.Boolean],
11
11
  widget: ['Select', 'Radio']
12
12
  })
@@ -52,7 +52,13 @@ export default defineComponent({
52
52
 
53
53
  const justifyContent = computed(() => {
54
54
  return Optional.ofNullable(props.justifyContent)
55
- .map((v) => FlexRowJustify[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: [ViewType.Gallery],
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 {
@@ -8,7 +8,7 @@ import GalleryTagEnum from './GalleryTagEnum.vue';
8
8
 
9
9
  @SPI.ClassFactory(
10
10
  FormFieldWidget.Token({
11
- viewType: [ViewType.Gallery],
11
+ viewType: ViewType.Gallery,
12
12
  ttype: ModelFieldType.Enum,
13
13
  widget: ['Tag', 'TagEnum']
14
14
  })
@@ -7,7 +7,7 @@ import Html from './Html.vue';
7
7
 
8
8
  @SPI.ClassFactory(
9
9
  FormFieldWidget.Token({
10
- viewType: [ViewType.Gallery],
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()?.showHeight;
23
+ return this.getDsl().showHeight;
24
24
  }
25
25
  }
@@ -6,7 +6,7 @@ import { GalleryO2MSelectFieldWidget } from '../o2m';
6
6
 
7
7
  @SPI.ClassFactory(
8
8
  FormFieldWidget.Token({
9
- viewType: [ViewType.Gallery],
9
+ viewType: ViewType.Gallery,
10
10
  ttype: ModelFieldType.ManyToMany
11
11
  })
12
12
  )