cnhis-design-vue 3.1.12-beta.5 → 3.1.12-beta.6

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.
@@ -2563,14 +2563,6 @@ declare const BigTable: SFCWithInstall<import("vue").DefineComponent<{
2563
2563
  showInsertStatus?: boolean | undefined;
2564
2564
  showAsterisk?: boolean | undefined;
2565
2565
  autoClear?: boolean | undefined;
2566
- beforeEditMethod?: ((params: {
2567
- row: any;
2568
- rowIndex: number;
2569
- column: import("vxe-table").VxeTableDefines.ColumnInfo;
2570
- columnIndex: number;
2571
- $table: import("vxe-table").VxeTableConstructor & import("vxe-table").VxeTablePrivateMethods;
2572
- $grid: import("vxe-table").VxeGridConstructor | null | undefined;
2573
- }) => boolean) | undefined;
2574
2566
  activeMethod?: ((params: {
2575
2567
  row: any;
2576
2568
  rowIndex: number;
@@ -2562,14 +2562,6 @@ declare const _default: import("vue").DefineComponent<{
2562
2562
  showInsertStatus?: boolean | undefined;
2563
2563
  showAsterisk?: boolean | undefined;
2564
2564
  autoClear?: boolean | undefined;
2565
- beforeEditMethod?: ((params: {
2566
- row: any;
2567
- rowIndex: number;
2568
- column: import("vxe-table").VxeTableDefines.ColumnInfo;
2569
- columnIndex: number;
2570
- $table: import("vxe-table").VxeTableConstructor & import("vxe-table").VxeTablePrivateMethods;
2571
- $grid: import("vxe-table").VxeGridConstructor | null | undefined;
2572
- }) => boolean) | undefined;
2573
2565
  activeMethod?: ((params: {
2574
2566
  row: any;
2575
2567
  rowIndex: number;
@@ -14,3 +14,4 @@ export * from './radio';
14
14
  export * from './labelSelect';
15
15
  export * from './slider';
16
16
  export * from './complex';
17
+ export * from './simpleComponent';
@@ -14,3 +14,4 @@ export { RADIO } from './radio.js';
14
14
  export { LABEL } from './labelSelect.js';
15
15
  export { SLIDER } from './slider.js';
16
16
  export { COMPLEX } from './complex.js';
17
+ export { BUTTON, TEXT } from './simpleComponent.js';
@@ -58,7 +58,7 @@ const script = defineComponent({
58
58
  }) : createVNode("header", {
59
59
  "class": "form-render__linebarHeader",
60
60
  "onClick": toggleShow
61
- }, [" ", props.title, " "]), createVNode(NCollapseTransition, {
61
+ }, [props.title]), createVNode(NCollapseTransition, {
62
62
  "class": "form-render__linebarItem",
63
63
  "show": _show.value
64
64
  }, slots)]);
@@ -0,0 +1,2 @@
1
+ export declare const TEXT: (props: any) => JSX.Element;
2
+ export declare const BUTTON: (props: any) => JSX.Element;
@@ -0,0 +1,65 @@
1
+ import { createVNode, mergeProps, isVNode } from 'vue';
2
+ import { connect, mapProps } from '@formily/vue';
3
+ import { isObject, isFunction } from 'lodash-es';
4
+ import { NButton } from 'naive-ui';
5
+
6
+ function _isSlot(s) {
7
+ return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
8
+ }
9
+ function createPropFor(props) {
10
+ return (property) => {
11
+ var _a;
12
+ return (_a = props.fieldItem) == null ? void 0 : _a[property];
13
+ };
14
+ }
15
+ function createSlot(renderer, props) {
16
+ if (isObject(renderer)) {
17
+ const result = {};
18
+ Object.entries(renderer).forEach(([key, renderer2]) => {
19
+ isFunction(renderer2) && (result[key] = () => renderer2(props));
20
+ });
21
+ return result;
22
+ }
23
+ return {
24
+ default() {
25
+ return isFunction(renderer) ? renderer(props) : renderer;
26
+ }
27
+ };
28
+ }
29
+ const textScript = (props) => {
30
+ var _a, _b, _c;
31
+ const propFor = createPropFor(props);
32
+ return createVNode("div", (_a = propFor("componentProps")) != null ? _a : {}, [(_c = (_b = createSlot(props.content, props)).default) == null ? void 0 : _c.call(_b)]);
33
+ };
34
+ const TEXT = connect(textScript, mapProps((props) => {
35
+ var _a;
36
+ return {
37
+ ...props,
38
+ content: (_a = props.fieldItem) == null ? void 0 : _a.content
39
+ };
40
+ }));
41
+ const buttonScript = (props) => {
42
+ var _a;
43
+ let _slot;
44
+ const propFor = createPropFor(props);
45
+ function onClick() {
46
+ var _a2;
47
+ const cb = propFor("onClick") || ((_a2 = propFor("componentProps")) == null ? void 0 : _a2.onClick);
48
+ return () => isFunction(cb) && cb(props.fieldItem);
49
+ }
50
+ console.log(props.content);
51
+ return createVNode(NButton, mergeProps((_a = propFor("componentProps")) != null ? _a : {}, {
52
+ "onClick": onClick()
53
+ }), _isSlot(_slot = createSlot(props.content, props)) ? _slot : {
54
+ default: () => [_slot]
55
+ });
56
+ };
57
+ const BUTTON = connect(buttonScript, mapProps((props) => {
58
+ var _a;
59
+ return {
60
+ ...props,
61
+ content: (_a = props.fieldItem) == null ? void 0 : _a.content
62
+ };
63
+ }));
64
+
65
+ export { BUTTON, TEXT };
@@ -6,7 +6,7 @@ const SLIDER = connect(NSlider, mapProps((props, field) => {
6
6
  const _props = assignUpdateValue(props, field);
7
7
  if (Array.isArray(_props.option)) {
8
8
  _props.marks = _props.option.reduce((fin, option) => {
9
- fin[option.value] = option.text;
9
+ fin[+option.value] = option.text;
10
10
  return fin;
11
11
  }, {});
12
12
  }
@@ -1,5 +1,5 @@
1
- import { FieldItem } from '../types';
2
1
  import { BusinessCollector } from '../../../../../es/packages/form-render';
2
+ import { FieldItem } from '../types';
3
3
  /**
4
4
  * @description 胶水层, 将低代码平台中的fieldList转换为JSONSchema
5
5
  */
@@ -1,7 +1,7 @@
1
+ import { isObject } from '@vueuse/core';
1
2
  import { isArray, pick } from 'lodash-es';
2
- import { arrayed, transformDateFormat } from '../utils/index.js';
3
3
  import { useFormValidator, useTypeNormalize } from '../../../../packages/form-render';
4
- import { isObject } from '@vueuse/core';
4
+ import { arrayed, transformDateFormat } from '../utils/index.js';
5
5
 
6
6
  function useFieldListAdaptor(collector, uuid) {
7
7
  const { createValidatorSchema } = useFormValidator();
@@ -10,12 +10,6 @@ function useFieldListAdaptor(collector, uuid) {
10
10
  name: item.val_key,
11
11
  type: "string",
12
12
  title: item.alias || item.name,
13
- "x-decorator": "FORM_ITEM",
14
- "x-decorator-props": {
15
- span: item.elem_width,
16
- showLabel: item.hide_title !== "1",
17
- id: `${uuid}-${item.val_key}`
18
- },
19
13
  "x-component": item.html_type,
20
14
  "x-component-props": {
21
15
  placeholder: item.placeholder,
@@ -28,6 +22,17 @@ function useFieldListAdaptor(collector, uuid) {
28
22
  if (isObject(item.reactions)) {
29
23
  result["x-reactions"] = item.reactions;
30
24
  }
25
+ if (!item.noDecorator) {
26
+ Object.assign(result, {
27
+ "x-decorator": "FORM_ITEM",
28
+ "x-decorator-props": {
29
+ span: item.elem_width,
30
+ showLabel: item.hide_title !== "1",
31
+ id: `${uuid}-${item.val_key}`,
32
+ ...item.decoratorProps || {}
33
+ }
34
+ });
35
+ }
31
36
  const rules = createValidatorSchema(item);
32
37
  rules && (result["x-validator"] = rules);
33
38
  item.is_null === "0" && (result.required = true);
@@ -108,9 +113,9 @@ function useFieldListAdaptor(collector, uuid) {
108
113
  const createSliderSchema = (item) => {
109
114
  const schema = createStandardSchema(item);
110
115
  Object.assign(schema["x-component-props"], {
111
- step: item.step_length,
112
- max: item.max_length,
113
- min: item.min_length,
116
+ step: +item.step_length,
117
+ max: +item.max_length,
118
+ min: +item.min_length,
114
119
  option: item.option
115
120
  });
116
121
  return schema;
@@ -183,22 +188,26 @@ function useFieldListAdaptor(collector, uuid) {
183
188
  const { normalize } = useTypeNormalize();
184
189
  function schemaAdaptor(fieldList) {
185
190
  let prevLinebar = null;
186
- return fieldList.reduce((fin, cur) => {
191
+ return fieldList.reduce((fin, cur, idx) => {
187
192
  var _a;
188
193
  normalize(cur);
189
194
  const obj_type = (_a = cur.validate) == null ? void 0 : _a.obj_type;
190
195
  obj_type && collector.collect(obj_type, cur.val_key);
191
196
  if (cur.html_type === "LINEBAR") {
192
- fin[createFieldName(cur)] = createLinebarSchema(cur);
197
+ fin[createFieldName(cur)] = bindIndex(createLinebarSchema(cur), idx);
193
198
  prevLinebar = fin[createFieldName(cur)].properties = {};
194
199
  } else if (prevLinebar) {
195
- prevLinebar[createFieldName(cur)] = createWidgetSchema(cur);
200
+ prevLinebar[createFieldName(cur)] = bindIndex(createWidgetSchema(cur), idx);
196
201
  } else {
197
202
  prevLinebar = null;
198
- fin[createFieldName(cur)] = createWidgetSchema(cur);
203
+ fin[createFieldName(cur)] = bindIndex(createWidgetSchema(cur), idx);
199
204
  }
200
205
  return fin;
201
206
  }, {});
207
+ function bindIndex(schema, idx) {
208
+ schema["x-index"] = idx;
209
+ return schema;
210
+ }
202
211
  function createFieldName(fieldItem) {
203
212
  if (isArray(fieldItem.suffixConfig)) {
204
213
  return [fieldItem.val_key, fieldItem.suffixConfig.map((f) => f.val_key)].join("-");
@@ -1129,6 +1129,13 @@ body > .vxe-table--tooltip-wrapper {
1129
1129
  .n-dialog__title .svg-wrap {
1130
1130
  margin: 0 0 0 auto;
1131
1131
  }
1132
+ .n-dialog__title .svg-wrap .svg-icon {
1133
+ width: 1em;
1134
+ height: 1em;
1135
+ vertical-align: -0.15em;
1136
+ fill: currentColor;
1137
+ overflow: hidden;
1138
+ }
1132
1139
  .n-dialog__title .svg-wrap svg {
1133
1140
  font-size: 14px;
1134
1141
  cursor: pointer;
@@ -148,6 +148,13 @@
148
148
  .n-dialog__title .svg-wrap {
149
149
  margin: 0 0 0 auto;
150
150
  }
151
+ .n-dialog__title .svg-wrap .svg-icon {
152
+ width: 1em;
153
+ height: 1em;
154
+ vertical-align: -0.15em;
155
+ fill: currentColor;
156
+ overflow: hidden;
157
+ }
151
158
  .n-dialog__title .svg-wrap svg {
152
159
  font-size: 14px;
153
160
  cursor: pointer;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "cnhis-design-vue",
3
3
  "private": false,
4
- "version": "3.1.12-beta.5",
4
+ "version": "3.1.12-beta.6",
5
5
  "license": "ISC",
6
6
  "module": "es/packages/index.js",
7
7
  "main": "es/packages/index.js",
@@ -59,7 +59,7 @@
59
59
  "vue": "^3.2.0",
60
60
  "vue-simple-uploader": "^1.0.0-beta.5",
61
61
  "vuedraggable": "4.1.0",
62
- "vxe-table": "^4.2.5",
62
+ "vxe-table": "4.2.5",
63
63
  "xe-utils": "^3.5.4"
64
64
  },
65
65
  "devDependencies": {