@oinone/kunlun-vue-admin-base 6.2.0 → 6.2.2

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.
@@ -47,7 +47,7 @@ declare const _default: import("vue").DefineComponent<{
47
47
  default: boolean;
48
48
  };
49
49
  layout: {
50
- type: PropType<import("@oinone/kunlun-vue-ui-common").FormLayout>;
50
+ type: PropType<import("@oinone/kunlun-vue-ui-antd").FormLayout>;
51
51
  };
52
52
  label: {
53
53
  type: (BooleanConstructor | StringConstructor)[];
@@ -141,7 +141,7 @@ declare const _default: import("vue").DefineComponent<{
141
141
  default: boolean;
142
142
  };
143
143
  layout: {
144
- type: PropType<import("@oinone/kunlun-vue-ui-common").FormLayout>;
144
+ type: PropType<import("@oinone/kunlun-vue-ui-antd").FormLayout>;
145
145
  };
146
146
  label: {
147
147
  type: (BooleanConstructor | StringConstructor)[];
@@ -1,105 +1,61 @@
1
1
  import { PropType } from 'vue';
2
2
  import { IVariableContextItem } from '@oinone/kunlun-vue-expression';
3
3
  import '@wangeditor/editor/dist/css/style.css';
4
- declare const _default: {
5
- components: {
6
- Editor: import("vue").DefineComponent<{
7
- mode: {
8
- type: StringConstructor;
9
- default: string;
10
- };
11
- defaultContent: {
12
- type: PropType<import("@wangeditor/editor").SlateDescendant[]>;
13
- default: never[];
14
- };
15
- defaultHtml: {
16
- type: StringConstructor;
17
- default: string;
18
- };
19
- defaultConfig: {
20
- type: PropType<Partial<import("@wangeditor/editor").IEditorConfig>>;
21
- default: {};
22
- };
23
- modelValue: {
24
- type: StringConstructor;
25
- default: string;
26
- };
27
- }, {
28
- box: import("vue").Ref<null>;
29
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
30
- mode?: unknown;
31
- defaultContent?: unknown;
32
- defaultHtml?: unknown;
33
- defaultConfig?: unknown;
34
- modelValue?: unknown;
35
- } & {
36
- mode: string;
37
- defaultContent: import("@wangeditor/editor").SlateDescendant[];
38
- defaultHtml: string;
39
- defaultConfig: Partial<import("@wangeditor/editor").IEditorConfig>;
40
- modelValue: string;
41
- }>, {
42
- mode: string;
43
- defaultContent: import("@wangeditor/editor").SlateDescendant[];
44
- defaultHtml: string;
45
- defaultConfig: Partial<import("@wangeditor/editor").IEditorConfig>;
46
- modelValue: string;
47
- }>;
48
- Toolbar: import("vue").DefineComponent<{
49
- editor: {
50
- type: PropType<import("@wangeditor/editor").IDomEditor>;
51
- };
52
- mode: {
53
- type: StringConstructor;
54
- default: string;
55
- };
56
- defaultConfig: {
57
- type: PropType<Partial<import("@wangeditor/editor").IToolbarConfig>>;
58
- default: {};
59
- };
60
- }, {
61
- selector: import("vue").Ref<null>;
62
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
63
- editor?: unknown;
64
- mode?: unknown;
65
- defaultConfig?: unknown;
66
- } & {
67
- mode: string;
68
- defaultConfig: Partial<import("@wangeditor/editor").IToolbarConfig>;
69
- } & {
70
- editor?: import("@wangeditor/editor").IDomEditor | undefined;
71
- }>, {
72
- mode: string;
73
- defaultConfig: Partial<import("@wangeditor/editor").IToolbarConfig>;
74
- }>;
4
+ import { CSSStyle } from '@oinone/kunlun-shared';
5
+ declare const _default: import("vue").DefineComponent<{
6
+ contextItems: PropType<IVariableContextItem[]>;
7
+ change: {
8
+ type: FunctionConstructor;
75
9
  };
76
- props: {
77
- contextItems: PropType<IVariableContextItem[]>;
78
- change: FunctionConstructor;
79
- value: StringConstructor;
10
+ value: {
11
+ type: StringConstructor;
80
12
  };
81
- setup(props: any): {
82
- editorId: string;
83
- mode: string;
84
- defaultHtml: import("vue").Ref<string>;
85
- toolbarConfig: {
86
- insertKeys: {
87
- index: number;
88
- keys: string[];
89
- };
90
- excludeKeys: string[];
91
- modalAppendToBody: boolean;
13
+ height: {
14
+ type: StringConstructor;
15
+ };
16
+ richTextToolbarExcludeKeys: {
17
+ type: PropType<string[]>;
18
+ default: () => never[];
19
+ };
20
+ }, {
21
+ editorStyle: import("vue").ComputedRef<CSSStyle>;
22
+ editorId: string;
23
+ mode: string;
24
+ defaultHtml: import("vue").Ref<string>;
25
+ toolbarConfig: import("vue").ComputedRef<{
26
+ insertKeys: {
27
+ index: number;
28
+ keys: string[];
29
+ };
30
+ excludeKeys: string[];
31
+ modalAppendToBody: boolean;
32
+ }>;
33
+ editorConfig: import("vue").ComputedRef<{
34
+ placeholder: string;
35
+ EXTEND_CONF: {
36
+ contextItems: IVariableContextItem[] | undefined;
92
37
  };
93
- editorConfig: import("vue").ComputedRef<{
94
- placeholder: string;
95
- EXTEND_CONF: {
96
- contextItems: any;
97
- };
98
- }>;
99
- editorRef: import("vue").ShallowRef<any>;
100
- handleCreated: (editor: any) => void;
101
- handleDestroyed: (editor: any) => void;
102
- handleChange: (editor: any) => void;
38
+ }>;
39
+ editorRef: import("vue").ShallowRef<any>;
40
+ handleCreated: (editor: any) => void;
41
+ handleDestroyed: (editor: any) => void;
42
+ handleChange: (editor: any) => void;
43
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
44
+ contextItems: PropType<IVariableContextItem[]>;
45
+ change: {
46
+ type: FunctionConstructor;
47
+ };
48
+ value: {
49
+ type: StringConstructor;
50
+ };
51
+ height: {
52
+ type: StringConstructor;
53
+ };
54
+ richTextToolbarExcludeKeys: {
55
+ type: PropType<string[]>;
56
+ default: () => never[];
103
57
  };
104
- };
58
+ }>>, {
59
+ richTextToolbarExcludeKeys: string[];
60
+ }>;
105
61
  export default _default;
@@ -2,6 +2,13 @@ import { ValidatorInfo } from '../../../../typing';
2
2
  import { FormStringFieldWidget } from '../../string';
3
3
  export declare class FormHtmlRichTextFieldWidget extends FormStringFieldWidget {
4
4
  initialize(props: any): this;
5
+ /**
6
+ * 富文本工具栏排除的key
7
+ *
8
+ * @example
9
+ * richTextToolbarExcludeKeys="fullScreen,uploadImage"
10
+ */
11
+ protected get richTextToolbarExcludeKeys(): string[] | null;
5
12
  protected get encode(): boolean | undefined;
6
13
  protected get height(): string | undefined;
7
14
  validator(): Promise<ValidatorInfo>;
@@ -16,6 +16,7 @@ declare const _default: import("vue").DefineComponent<Readonly<{
16
16
  maxLength?: any;
17
17
  encode?: any;
18
18
  height?: any;
19
+ richTextToolbarExcludeKeys?: any;
19
20
  }>, {
20
21
  handleCreated: (editor: any) => void;
21
22
  handleChange: (editor: any) => void;
@@ -24,7 +25,7 @@ declare const _default: import("vue").DefineComponent<Readonly<{
24
25
  defaultHtml: import("vue").Ref<string>;
25
26
  editorRef: import("vue").ShallowRef<any>;
26
27
  editorNodeRef: any;
27
- toolbarConfig: Partial<IToolbarConfig>;
28
+ toolbarConfig: import("vue").ComputedRef<Partial<IToolbarConfig>>;
28
29
  editorConfig: import("vue").ComputedRef<{
29
30
  placeholder: any;
30
31
  readOnly: boolean | undefined;
@@ -102,6 +103,7 @@ declare const _default: import("vue").DefineComponent<Readonly<{
102
103
  maxLength?: any;
103
104
  encode?: any;
104
105
  height?: any;
106
+ richTextToolbarExcludeKeys?: any;
105
107
  }>>>, {
106
108
  readonly value?: any;
107
109
  readonly field?: any;
@@ -115,5 +117,6 @@ declare const _default: import("vue").DefineComponent<Readonly<{
115
117
  readonly maxLength?: any;
116
118
  readonly encode?: any;
117
119
  readonly height?: any;
120
+ readonly richTextToolbarExcludeKeys?: any;
118
121
  }>;
119
122
  export default _default;
@@ -18,7 +18,10 @@ export declare class TableWidget<Props extends TableWidgetProps = TableWidgetPro
18
18
  protected get checkbox(): boolean;
19
19
  protected get lineHeight(): number | undefined;
20
20
  protected get minLineHeight(): number | undefined;
21
- protected get autoLineHeight(): boolean | undefined;
21
+ /**
22
+ * 表格行高是否自适应,默认开启
23
+ */
24
+ protected get autoLineHeight(): boolean;
22
25
  protected get enableSequence(): boolean;
23
26
  protected get defaultPageSize(): number;
24
27
  protected get activeCount(): number | undefined;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oinone/kunlun-vue-admin-base",
3
- "version": "6.2.0",
3
+ "version": "6.2.2",
4
4
  "main": "index.ts",
5
5
  "scripts": {
6
6
  "prebuild": "rimraf dist",
@@ -14,13 +14,13 @@
14
14
  "doc": "typedoc --out docs src/index.ts"
15
15
  },
16
16
  "dependencies": {
17
- "@oinone/kunlun-vue-admin-layout": "6.2.0",
18
- "@oinone/kunlun-vue-router": "6.2.0",
19
- "@oinone/kunlun-vue-ui": "6.2.0",
20
- "@oinone/kunlun-vue-ui-antd": "6.2.0",
21
- "@oinone/kunlun-vue-ui-common": "6.2.0",
22
- "@oinone/kunlun-vue-ui-el": "6.2.0",
23
- "@oinone/kunlun-vue-widget": "6.2.0",
17
+ "@oinone/kunlun-vue-admin-layout": "6.2.2",
18
+ "@oinone/kunlun-vue-router": "6.2.2",
19
+ "@oinone/kunlun-vue-ui": "6.2.2",
20
+ "@oinone/kunlun-vue-ui-antd": "6.2.2",
21
+ "@oinone/kunlun-vue-ui-common": "6.2.2",
22
+ "@oinone/kunlun-vue-ui-el": "6.2.2",
23
+ "@oinone/kunlun-vue-widget": "6.2.2",
24
24
  "@wangeditor/editor": "5.1.23",
25
25
  "@wangeditor/editor-for-vue": "5.1.11",
26
26
  "@wangeditor/plugin-upload-attachment": "1.1.0",
@@ -61,5 +61,5 @@
61
61
  "element-plus": ">=2.2.17",
62
62
  "vue": ">=3.2.40"
63
63
  },
64
- "gitHead": "b65bbf1d649da1017810c5608473d5daa1a41f94"
64
+ "gitHead": "2b4c0c7911626c105ca71c2d41e54af470e2e079"
65
65
  }
@@ -9,16 +9,16 @@
9
9
  @onCreated="handleCreated"
10
10
  @onDestroyed="handleDestroyed"
11
11
  @onChange="handleChange"
12
- style="height: 500px; overflow-y: hidden"
12
+ :style="editorStyle"
13
13
  />
14
14
  </div>
15
15
  </template>
16
16
  <script lang="ts">
17
- import { computed, onBeforeUnmount, PropType, ref, shallowRef, watch } from 'vue';
17
+ import { computed, onBeforeUnmount, PropType, ref, shallowRef, watch, defineComponent } from 'vue';
18
18
  import { ZH_CN_CODE } from '@oinone/kunlun-vue-ui-common';
19
19
  import { translateValueByKey } from '@oinone/kunlun-engine';
20
20
  import { Editor, Toolbar } from '@wangeditor/editor-for-vue';
21
- import { i18nChangeLanguage } from '@wangeditor/editor';
21
+ import { DomEditor, i18nChangeLanguage } from '@wangeditor/editor';
22
22
  import {
23
23
  IVariableContextItem,
24
24
  ExpressionElementClass,
@@ -27,16 +27,27 @@ import {
27
27
  EXPRESSION_MODAL_PANEL_CLASS_NAME
28
28
  } from '@oinone/kunlun-vue-expression';
29
29
  import '@wangeditor/editor/dist/css/style.css';
30
- import { uniqueKeyGenerator } from '@oinone/kunlun-shared';
30
+ import { CSSStyle, uniqueKeyGenerator } from '@oinone/kunlun-shared';
31
31
 
32
32
  const EDITOR_DEFAULT_HTML = '<p><br></p>';
33
33
  const EDITOR_EXP_MODAL_CLASS = 'exp-modal-in-body';
34
- export default {
34
+ export default defineComponent({
35
35
  components: { Editor, Toolbar },
36
36
  props: {
37
37
  contextItems: Array as PropType<IVariableContextItem[]>,
38
- change: Function,
39
- value: String
38
+ change: {
39
+ type: Function
40
+ },
41
+ value: {
42
+ type: String
43
+ },
44
+ height: {
45
+ type: String
46
+ },
47
+ richTextToolbarExcludeKeys: {
48
+ type: Array as PropType<string[]>,
49
+ default: () => []
50
+ }
40
51
  },
41
52
  setup(props) {
42
53
  const editorId = `${ExpressionElementClass}-${Math.random().toString().slice(-5)}`; //【注意】编辑器 id ,要全局唯一
@@ -50,21 +61,31 @@ export default {
50
61
  i18nChangeLanguage('en');
51
62
  }
52
63
 
53
- const toolbarConfig = {
54
- insertKeys: {
55
- index: 28, //
56
- keys: [OioWangEditExpressionModalMenuConf.key]
57
- },
58
- // FIXME: 全屏显示有些bug
59
- excludeKeys: ['fullScreen', 'uploadImage', 'insertVideo'],
60
- modalAppendToBody: true
61
- };
64
+ const toolbarConfig = computed(() => {
65
+ return {
66
+ insertKeys: {
67
+ index: 28, //
68
+ keys: [OioWangEditExpressionModalMenuConf.key]
69
+ },
70
+ excludeKeys: [...(props.richTextToolbarExcludeKeys || []), 'fullScreen', 'uploadImage', 'insertVideo'],
71
+ modalAppendToBody: true
72
+ };
73
+ });
74
+
62
75
  const editorConfig = computed(() => {
63
76
  return {
64
77
  placeholder: `${translateValueByKey('请输入内容')}...`,
65
78
  EXTEND_CONF: { contextItems: props.contextItems }
66
79
  };
67
80
  });
81
+
82
+ const editorStyle = computed(() => {
83
+ const style = {} as CSSStyle;
84
+ style.height = props.height || '400px';
85
+ style.overflowY = 'hidden';
86
+ return style;
87
+ });
88
+
68
89
  watch(
69
90
  () => props.contextItems,
70
91
  (newVal) => {
@@ -137,6 +158,7 @@ export default {
137
158
  };
138
159
 
139
160
  return {
161
+ editorStyle,
140
162
  editorId,
141
163
  mode: 'simple',
142
164
  defaultHtml,
@@ -148,7 +170,7 @@ export default {
148
170
  handleChange
149
171
  };
150
172
  }
151
- };
173
+ });
152
174
  </script>
153
175
  <style lang="scss">
154
176
  .exp-modal-in-body.w-e-modal {
@@ -16,6 +16,22 @@ export class FormHtmlRichTextFieldWidget extends FormStringFieldWidget {
16
16
  return this;
17
17
  }
18
18
 
19
+ /**
20
+ * 富文本工具栏排除的key
21
+ *
22
+ * @example
23
+ * richTextToolbarExcludeKeys="fullScreen,uploadImage"
24
+ */
25
+ @Widget.Reactive()
26
+ protected get richTextToolbarExcludeKeys(): string[] | null {
27
+ const { richTextToolbarExcludeKeys } = this.getDsl() as { richTextToolbarExcludeKeys?: string };
28
+ if (!richTextToolbarExcludeKeys) {
29
+ return null;
30
+ }
31
+
32
+ return richTextToolbarExcludeKeys.split(',').map((v) => v.trim());
33
+ }
34
+
19
35
  @Widget.Reactive()
20
36
  protected get encode() {
21
37
  const _encode = this.getDsl().encode;
@@ -118,7 +118,8 @@ export default defineComponent({
118
118
  'disabled',
119
119
  'maxLength',
120
120
  'encode',
121
- 'height'
121
+ 'height',
122
+ 'richTextToolbarExcludeKeys'
122
123
  ],
123
124
  setup(props) {
124
125
  const editorId = `${DEFAULT_PREFIX}-richtext-${Math.random().toString().slice(-5)}`; // 【注意】编辑器 id ,要全局唯一
@@ -137,13 +138,17 @@ export default defineComponent({
137
138
  return { 'form-rich-text-disabled': innerDisabled.value, 'form-rich-text-readonly': innerReadonly.value };
138
139
  });
139
140
 
140
- const toolbarConfig: Partial<IToolbarConfig> = {
141
- // 插入哪些菜单
142
- insertKeys: {
143
- index: 0, // 自定义插入的位置
144
- keys: ['uploadAttachment'] // “上传附件”菜单
145
- }
146
- };
141
+ const toolbarConfig = computed<Partial<IToolbarConfig>>(() => {
142
+ return {
143
+ // 插入哪些菜单
144
+ insertKeys: {
145
+ index: 0, // 自定义插入的位置
146
+ keys: ['uploadAttachment'] // “上传附件”菜单
147
+ },
148
+ excludeKeys: props.richTextToolbarExcludeKeys
149
+ };
150
+ });
151
+
147
152
  const editorConfig = computed(() => {
148
153
  return {
149
154
  placeholder: props.placeholder || `${translateValueByKey('请输入内容')}...`,
@@ -515,10 +515,14 @@ export default defineComponent({
515
515
 
516
516
  rows.forEach((row, index) => {
517
517
  const height = row.clientHeight;
518
+ row.style.height = 'auto';
518
519
 
519
520
  const leftFixedRow = leftFixedRows[index];
520
521
  const rightFixedRow = rightFixedRows[index];
521
522
 
523
+ leftFixedRow && (leftFixedRow.style.height = 'auto');
524
+ rightFixedRow && (rightFixedRow.style.height = 'auto');
525
+
522
526
  const maxHeight = Math.max(
523
527
  height || 0,
524
528
  leftFixedRow?.clientHeight || 0,
@@ -589,8 +593,6 @@ export default defineComponent({
589
593
  if (v && v.length) {
590
594
  nextTick(() => {
591
595
  calcTableColumnHeight();
592
-
593
- stop();
594
596
  });
595
597
  }
596
598
  },
@@ -114,11 +114,12 @@ export class TableWidget<Props extends TableWidgetProps = TableWidgetProps> exte
114
114
  return undefined;
115
115
  }
116
116
 
117
+ /**
118
+ * 表格行高是否自适应,默认开启
119
+ */
117
120
  @Widget.Reactive()
118
- protected get autoLineHeight(): boolean | undefined {
119
- const autoLineHeight = Optional.ofNullable(this.getDsl().autoLineHeight)
120
- .map(BooleanHelper.toBoolean)
121
- .orElse(undefined);
121
+ protected get autoLineHeight(): boolean {
122
+ const autoLineHeight = Optional.ofNullable(this.getDsl().autoLineHeight).map(BooleanHelper.toBoolean).orElse(true);
122
123
 
123
124
  if (typeof autoLineHeight === 'boolean') {
124
125
  return autoLineHeight;
@@ -128,7 +129,7 @@ export class TableWidget<Props extends TableWidgetProps = TableWidgetProps> exte
128
129
  return this.tableConfig.autoLineHeight;
129
130
  }
130
131
 
131
- return undefined;
132
+ return true;
132
133
  }
133
134
 
134
135
  @Widget.Reactive()