@byteluck-fe/model-driven-settings 2.7.0-alpha.31b → 2.7.0-alpha.36

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 (40) hide show
  1. package/README.md +30 -30
  2. package/dist/esm/default/createBaseFields.js +29 -29
  3. package/dist/esm/default/createFormBaseFields.js +56 -56
  4. package/dist/esm/default/index.js +2 -2
  5. package/dist/esm/index.js +4 -4
  6. package/dist/esm/initSettings.js +48 -24
  7. package/dist/esm/props/base.js +33 -10
  8. package/dist/esm/props/checkbox.js +41 -27
  9. package/dist/esm/props/custom.js +36 -36
  10. package/dist/esm/props/input-number.js +47 -31
  11. package/dist/esm/props/input.js +50 -33
  12. package/dist/esm/props/radio.js +44 -29
  13. package/dist/esm/props/select.js +44 -29
  14. package/dist/esm/props/switch.js +47 -31
  15. package/dist/esm/props/textarea.js +56 -37
  16. package/dist/esm/schema/group.js +28 -9
  17. package/dist/esm/schema/index.js +3 -3
  18. package/dist/esm/schema/setting.js +36 -13
  19. package/dist/esm/schema/tab.js +19 -4
  20. package/dist/index.umd.js +2 -2
  21. package/dist/types/default/createBaseFields.d.ts +2 -2
  22. package/dist/types/default/createFormBaseFields.d.ts +3 -3
  23. package/dist/types/default/index.d.ts +2 -2
  24. package/dist/types/defineInstance.d.ts +79 -79
  25. package/dist/types/index.d.ts +4 -4
  26. package/dist/types/initSettings.d.ts +14 -14
  27. package/dist/types/props/base.d.ts +21 -21
  28. package/dist/types/props/checkbox.d.ts +5 -5
  29. package/dist/types/props/custom.d.ts +5 -5
  30. package/dist/types/props/input-number.d.ts +7 -7
  31. package/dist/types/props/input.d.ts +8 -8
  32. package/dist/types/props/radio.d.ts +6 -6
  33. package/dist/types/props/select.d.ts +6 -6
  34. package/dist/types/props/switch.d.ts +7 -7
  35. package/dist/types/props/textarea.d.ts +10 -10
  36. package/dist/types/schema/group.d.ts +19 -19
  37. package/dist/types/schema/index.d.ts +3 -3
  38. package/dist/types/schema/setting.d.ts +69 -69
  39. package/dist/types/schema/tab.d.ts +15 -15
  40. package/package.json +4 -4
package/README.md CHANGED
@@ -1,30 +1,30 @@
1
- # Settings
2
- 自定义控件设置
3
-
4
- ```
5
- │ defineInstance.ts // 定义控件函数
6
- │ index.ts
7
- │ initSettings.ts // 初始化setting,被外部引用
8
-
9
- ├─default // 内部默认值
10
- │ createBaseFields.ts // 基础控件的默认setting
11
- │ createFormBaseFields.ts // 表单控件的默认setting
12
- │ index.ts
13
-
14
- ├─props // 内置的setting控件
15
- │ base.ts
16
- │ checkbox.ts
17
- │ custom.ts
18
- │ input-number.ts
19
- │ input.ts
20
- │ radio.ts
21
- │ select.ts
22
- │ switch.ts
23
- │ textarea.ts
24
-
25
- └─schema // setting的容器和schema定义
26
- group.ts
27
- index.ts
28
- setting.ts
29
- tab.ts
30
- ```
1
+ # Settings
2
+ 自定义控件设置
3
+
4
+ ```
5
+ │ defineInstance.ts // 定义控件函数
6
+ │ index.ts
7
+ │ initSettings.ts // 初始化setting,被外部引用
8
+
9
+ ├─default // 内部默认值
10
+ │ createBaseFields.ts // 基础控件的默认setting
11
+ │ createFormBaseFields.ts // 表单控件的默认setting
12
+ │ index.ts
13
+
14
+ ├─props // 内置的setting控件
15
+ │ base.ts
16
+ │ checkbox.ts
17
+ │ custom.ts
18
+ │ input-number.ts
19
+ │ input.ts
20
+ │ radio.ts
21
+ │ select.ts
22
+ │ switch.ts
23
+ │ textarea.ts
24
+
25
+ └─schema // setting的容器和schema定义
26
+ group.ts
27
+ index.ts
28
+ setting.ts
29
+ tab.ts
30
+ ```
@@ -1,64 +1,64 @@
1
1
  export function createBaseFields() {
2
2
  return [
3
3
  {
4
- label: '隐藏',
5
- key: 'isHide',
6
- type: 'boolean',
7
- component: 'switch'
4
+ label: "隐藏",
5
+ key: "isHide",
6
+ type: "boolean",
7
+ component: "switch"
8
8
  },
9
9
  {
10
- key: 'superSetting',
11
- component: 'super-setting'
10
+ key: "superSetting",
11
+ component: "super-setting"
12
12
  },
13
13
  {
14
- key: 'style.width',
15
- component: 'styleComponent',
14
+ key: "style.width",
15
+ component: "styleComponent",
16
16
  props: {
17
- configKey: 'style.widthConfig',
17
+ configKey: "style.widthConfig",
18
18
  options: [
19
- 'px',
20
- '%',
21
- 'fill',
22
- 'hug'
19
+ "px",
20
+ "%",
21
+ "fill",
22
+ "hug"
23
23
  ]
24
24
  },
25
25
  scopeEffect: function scopeEffect(driven, payload) {
26
26
  var oldParent = payload.oldParent, newParent = payload.newParent, instance = payload.instance;
27
- if ((oldParent === null || oldParent === void 0 ? void 0 : oldParent.type) === 'advanced-container' && newParent.type === 'positioning-container') {
28
- driven.setInstance(instance, 'style.width', '');
29
- driven.setInstance(instance, 'style.widthConfig', 'fill');
27
+ if ((oldParent === null || oldParent === void 0 ? void 0 : oldParent.type) === "advanced-container" && newParent.type === "positioning-container") {
28
+ driven.setInstance(instance, "style.width", "");
29
+ driven.setInstance(instance, "style.widthConfig", "fill");
30
30
  }
31
31
  if (newParent) {
32
32
  return {
33
- visible: newParent.type === 'advanced-container'
33
+ visible: newParent.type === "advanced-container"
34
34
  };
35
35
  }
36
36
  }
37
37
  },
38
38
  {
39
- key: 'style.height',
40
- component: 'styleComponent',
39
+ key: "style.height",
40
+ component: "styleComponent",
41
41
  props: {
42
- configKey: 'style.heightConfig',
42
+ configKey: "style.heightConfig",
43
43
  options: [
44
- 'px',
45
- '%',
46
- 'fill',
47
- 'hug'
44
+ "px",
45
+ "%",
46
+ "fill",
47
+ "hug"
48
48
  ]
49
49
  },
50
50
  scopeEffect: function scopeEffect(driven, payload) {
51
51
  var oldParent = payload.oldParent, newParent = payload.newParent, instance = payload.instance;
52
- if ((oldParent === null || oldParent === void 0 ? void 0 : oldParent.type) === 'advanced-container' && newParent.type === 'positioning-container') {
53
- driven.setInstance(instance, 'style.height', '');
54
- driven.setInstance(instance, 'style.heightConfig', 'fill');
52
+ if ((oldParent === null || oldParent === void 0 ? void 0 : oldParent.type) === "advanced-container" && newParent.type === "positioning-container") {
53
+ driven.setInstance(instance, "style.height", "");
54
+ driven.setInstance(instance, "style.heightConfig", "fill");
55
55
  }
56
56
  if (payload.newParent) {
57
57
  return {
58
- visible: payload.newParent.type === 'advanced-container'
58
+ visible: payload.newParent.type === "advanced-container"
59
59
  };
60
60
  }
61
61
  }
62
- },
62
+ }
63
63
  ];
64
64
  }
@@ -1,41 +1,41 @@
1
- function _arrayLikeToArray(arr, len) {
1
+ function _array_like_to_array(arr, len) {
2
2
  if (len == null || len > arr.length) len = arr.length;
3
3
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
4
4
  return arr2;
5
5
  }
6
- function _arrayWithoutHoles(arr) {
7
- if (Array.isArray(arr)) return _arrayLikeToArray(arr);
6
+ function _array_without_holes(arr) {
7
+ if (Array.isArray(arr)) return _array_like_to_array(arr);
8
8
  }
9
- function _iterableToArray(iter) {
9
+ function _iterable_to_array(iter) {
10
10
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
11
11
  }
12
- function _nonIterableSpread() {
12
+ function _non_iterable_spread() {
13
13
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
14
14
  }
15
- function _toConsumableArray(arr) {
16
- return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();
15
+ function _to_consumable_array(arr) {
16
+ return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
17
17
  }
18
- function _unsupportedIterableToArray(o, minLen) {
18
+ function _unsupported_iterable_to_array(o, minLen) {
19
19
  if (!o) return;
20
- if (typeof o === "string") return _arrayLikeToArray(o, minLen);
20
+ if (typeof o === "string") return _array_like_to_array(o, minLen);
21
21
  var n = Object.prototype.toString.call(o).slice(8, -1);
22
22
  if (n === "Object" && o.constructor) n = o.constructor.name;
23
23
  if (n === "Map" || n === "Set") return Array.from(n);
24
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
24
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
25
25
  }
26
- import { createBaseFields } from './createBaseFields';
26
+ import { createBaseFields } from "./createBaseFields";
27
27
  export function createFormBaseFields(defaultValues) {
28
- return _toConsumableArray(createBaseFields()).concat([
28
+ return _to_consumable_array(createBaseFields()).concat([
29
29
  {
30
- type: 'DataBind',
31
- key: 'dataBind',
32
- component: 'data-bind',
30
+ type: "DataBind",
31
+ key: "dataBind",
32
+ component: "data-bind",
33
33
  defaultValue: defaultValues === null || defaultValues === void 0 ? void 0 : defaultValues.dataBind
34
34
  },
35
35
  {
36
- key: 'caption',
37
- type: 'string',
38
- component: 'input',
36
+ key: "caption",
37
+ type: "string",
38
+ component: "input",
39
39
  props: {
40
40
  maxLength: 80,
41
41
  i18n: true
@@ -43,88 +43,88 @@ export function createFormBaseFields(defaultValues) {
43
43
  defaultValue: defaultValues === null || defaultValues === void 0 ? void 0 : defaultValues.caption,
44
44
  validator: function validator(value) {
45
45
  if (!value) {
46
- return '标题必填';
46
+ return "标题必填";
47
47
  }
48
48
  }
49
49
  },
50
50
  {
51
- label: '隐藏标题',
52
- key: 'isHideCaption',
53
- type: 'boolean',
54
- component: 'switch',
51
+ label: "隐藏标题",
52
+ key: "isHideCaption",
53
+ type: "boolean",
54
+ component: "switch",
55
55
  defaultValue: defaultValues === null || defaultValues === void 0 ? void 0 : defaultValues.isHideCaption,
56
56
  props: {
57
- showType: 'checkbox'
57
+ showType: "checkbox"
58
58
  },
59
59
  // 在明细表内隐藏
60
60
  scopeEffect: function scopeEffect(driven, payload) {
61
- var ref, ref1;
62
- if (((ref = payload.current) === null || ref === void 0 ? void 0 : ref.type) !== ((ref1 = payload.from) === null || ref1 === void 0 ? void 0 : ref1.type)) {
61
+ var _payload_current, _payload_from;
62
+ if (((_payload_current = payload.current) === null || _payload_current === void 0 ? void 0 : _payload_current.type) !== ((_payload_from = payload.from) === null || _payload_from === void 0 ? void 0 : _payload_from.type)) {
63
63
  //明细子表内默认开启
64
- if (payload.current.type === 'subtable') {
65
- driven.setInstance(payload.control, 'isHideCaption', true);
64
+ if (payload.current.type === "subtable") {
65
+ driven.setInstance(payload.control, "isHideCaption", true);
66
66
  }
67
67
  return {
68
- visible: payload.current.type !== 'subtable'
68
+ visible: payload.current.type !== "subtable"
69
69
  };
70
70
  }
71
71
  }
72
72
  },
73
73
  {
74
- key: 'labelPosition',
75
- type: 'string',
76
- component: 'radio',
74
+ key: "labelPosition",
75
+ type: "string",
76
+ component: "radio",
77
77
  defaultValue: defaultValues === null || defaultValues === void 0 ? void 0 : defaultValues.labelPosition,
78
78
  props: {
79
- showType: 'solid',
79
+ showType: "solid",
80
80
  options: [
81
81
  {
82
- label: '上下布局',
83
- value: 'top'
82
+ label: "上下布局",
83
+ value: "top"
84
84
  },
85
85
  {
86
- label: '左右布局',
87
- value: 'left'
88
- },
86
+ label: "左右布局",
87
+ value: "left"
88
+ }
89
89
  ]
90
90
  }
91
91
  },
92
92
  {
93
- key: 'defaultState',
94
- type: 'string',
95
- component: 'radio',
93
+ key: "defaultState",
94
+ type: "string",
95
+ component: "radio",
96
96
  defaultValue: defaultValues === null || defaultValues === void 0 ? void 0 : defaultValues.defaultState,
97
97
  props: {
98
- showType: 'solid',
98
+ showType: "solid",
99
99
  options: [
100
100
  {
101
- label: '普通',
102
- value: 'default'
101
+ label: "普通",
102
+ value: "default"
103
103
  },
104
104
  {
105
- label: '只读',
106
- value: 'readonly'
107
- },
105
+ label: "只读",
106
+ value: "readonly"
107
+ }
108
108
  ]
109
109
  }
110
110
  },
111
111
  {
112
- label: '必填',
113
- key: 'required',
114
- type: 'boolean',
115
- component: 'switch',
112
+ label: "必填",
113
+ key: "required",
114
+ type: "boolean",
115
+ component: "switch",
116
116
  defaultValue: defaultValues === null || defaultValues === void 0 ? void 0 : defaultValues.required
117
117
  },
118
118
  {
119
- label: '提示文字',
120
- key: 'placeholder',
121
- type: 'string',
122
- component: 'input',
119
+ label: "提示文字",
120
+ key: "placeholder",
121
+ type: "string",
122
+ component: "input",
123
123
  defaultValue: defaultValues === null || defaultValues === void 0 ? void 0 : defaultValues.placeholder,
124
124
  props: {
125
125
  maxLength: 80,
126
126
  i18n: true
127
127
  }
128
- },
128
+ }
129
129
  ]);
130
130
  }
@@ -1,2 +1,2 @@
1
- export * from './createBaseFields';
2
- export * from './createFormBaseFields';
1
+ export * from "./createBaseFields";
2
+ export * from "./createFormBaseFields";
package/dist/esm/index.js CHANGED
@@ -1,4 +1,4 @@
1
- export * from './defineInstance';
2
- export * from './initSettings';
3
- export * from './schema';
4
- export * from './default';
1
+ export * from "./defineInstance";
2
+ export * from "./initSettings";
3
+ export * from "./schema";
4
+ export * from "./default";
@@ -1,4 +1,4 @@
1
- function _defineProperty(obj, key, value) {
1
+ function _define_property(obj, key, value) {
2
2
  if (key in obj) {
3
3
  Object.defineProperty(obj, key, {
4
4
  value: value,
@@ -11,7 +11,7 @@ function _defineProperty(obj, key, value) {
11
11
  }
12
12
  return obj;
13
13
  }
14
- function _objectSpread(target) {
14
+ function _object_spread(target) {
15
15
  for(var i = 1; i < arguments.length; i++){
16
16
  var source = arguments[i] != null ? arguments[i] : {};
17
17
  var ownKeys = Object.keys(source);
@@ -21,36 +21,60 @@ function _objectSpread(target) {
21
21
  }));
22
22
  }
23
23
  ownKeys.forEach(function(key) {
24
- _defineProperty(target, key, source[key]);
24
+ _define_property(target, key, source[key]);
25
25
  });
26
26
  }
27
27
  return target;
28
28
  }
29
- import { Group, Setting } from './schema';
30
- import { CustomProps } from './props/custom';
31
- import { InputProps } from './props/input';
32
- import { InputNumberProps } from './props/input-number';
33
- import { SwitchProps } from './props/switch';
34
- import { CheckboxProps } from './props/checkbox';
35
- import { SelectProps } from './props/select';
36
- import { RadioProps } from './props/radio';
37
- import { TextareaProps } from './props/textarea';
38
- import { isTabSchema, Tab } from './schema/tab';
29
+ function ownKeys(object, enumerableOnly) {
30
+ var keys = Object.keys(object);
31
+ if (Object.getOwnPropertySymbols) {
32
+ var symbols = Object.getOwnPropertySymbols(object);
33
+ if (enumerableOnly) {
34
+ symbols = symbols.filter(function(sym) {
35
+ return Object.getOwnPropertyDescriptor(object, sym).enumerable;
36
+ });
37
+ }
38
+ keys.push.apply(keys, symbols);
39
+ }
40
+ return keys;
41
+ }
42
+ function _object_spread_props(target, source) {
43
+ source = source != null ? source : {};
44
+ if (Object.getOwnPropertyDescriptors) {
45
+ Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
46
+ } else {
47
+ ownKeys(Object(source)).forEach(function(key) {
48
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
49
+ });
50
+ }
51
+ return target;
52
+ }
53
+ import { Group, Setting } from "./schema";
54
+ import { CustomProps } from "./props/custom";
55
+ import { InputProps } from "./props/input";
56
+ import { InputNumberProps } from "./props/input-number";
57
+ import { SwitchProps } from "./props/switch";
58
+ import { CheckboxProps } from "./props/checkbox";
59
+ import { SelectProps } from "./props/select";
60
+ import { RadioProps } from "./props/radio";
61
+ import { TextareaProps } from "./props/textarea";
62
+ import { isTabSchema, Tab } from "./schema/tab";
39
63
  function propsFactory(component, props) {
40
64
  switch(component){
41
- case 'input':
65
+ case "input":
42
66
  return new InputProps(props);
43
- case 'textarea':
67
+ case "textarea":
44
68
  return new TextareaProps(props);
45
- case 'input-number':
69
+ case "input-number":
46
70
  return new InputNumberProps(props);
47
- case 'switch':
71
+ case "switch":
48
72
  return new SwitchProps(props);
49
- case 'radio':
73
+ case "radio":
50
74
  return new RadioProps(props);
51
- case 'checkbox':
75
+ case "checkbox":
52
76
  return new CheckboxProps(props);
53
- case 'select':
77
+ case "select":
54
78
  return new SelectProps(props);
55
79
  default:
56
80
  return new CustomProps(props);
@@ -62,14 +86,14 @@ function buildSettingItem(settingMap) {
62
86
  if (!schema) {
63
87
  return;
64
88
  }
65
- return new Setting(_objectSpread({}, schema, {
66
- props: propsFactory(schema.component, 'props' in schema ? schema.props : undefined)
89
+ return new Setting(_object_spread_props(_object_spread({}, schema), {
90
+ props: propsFactory(schema.component, "props" in schema ? schema.props : undefined)
67
91
  }));
68
92
  };
69
93
  }
70
94
  export function initSettings(params) {
71
95
  var generatorGroup = function generatorGroup(group) {
72
- return new Group(_objectSpread({}, group, {
96
+ return new Group(_object_spread_props(_object_spread({}, group), {
73
97
  items: group.items.map(buildSettingItem(settingMap)).filter(Boolean)
74
98
  }));
75
99
  };
@@ -82,7 +106,7 @@ export function initSettings(params) {
82
106
  }, new Map());
83
107
  return params.groups.map(function(item) {
84
108
  if (isTabSchema(item)) {
85
- return new Tab(_objectSpread({}, item, {
109
+ return new Tab(_object_spread_props(_object_spread({}, item), {
86
110
  items: generatorGroups(item.items)
87
111
  }));
88
112
  } else {
@@ -1,4 +1,4 @@
1
- function _classCallCheck(instance, Constructor) {
1
+ function _class_call_check(instance, Constructor) {
2
2
  if (!(instance instanceof Constructor)) {
3
3
  throw new TypeError("Cannot call a class as a function");
4
4
  }
@@ -12,23 +12,46 @@ function _defineProperties(target, props) {
12
12
  Object.defineProperty(target, descriptor.key, descriptor);
13
13
  }
14
14
  }
15
- function _createClass(Constructor, protoProps, staticProps) {
15
+ function _create_class(Constructor, protoProps, staticProps) {
16
16
  if (protoProps) _defineProperties(Constructor.prototype, protoProps);
17
17
  if (staticProps) _defineProperties(Constructor, staticProps);
18
18
  return Constructor;
19
19
  }
20
+ function _define_property(obj, key, value) {
21
+ if (key in obj) {
22
+ Object.defineProperty(obj, key, {
23
+ value: value,
24
+ enumerable: true,
25
+ configurable: true,
26
+ writable: true
27
+ });
28
+ } else {
29
+ obj[key] = value;
30
+ }
31
+ return obj;
32
+ }
20
33
  export var BaseProps = /*#__PURE__*/ function() {
21
34
  "use strict";
22
35
  function BaseProps(props) {
23
- _classCallCheck(this, BaseProps);
24
- var ref;
25
- this.visible = (ref = props === null || props === void 0 ? void 0 : props.visible) !== null && ref !== void 0 ? ref : true;
26
- var ref1;
27
- this.expression = (ref1 = props === null || props === void 0 ? void 0 : props.expression) !== null && ref1 !== void 0 ? ref1 : false;
28
- var ref2;
29
- this.updateParent = (ref2 = props === null || props === void 0 ? void 0 : props.updateParent) !== null && ref2 !== void 0 ? ref2 : false;
36
+ _class_call_check(this, BaseProps);
37
+ /**
38
+ * 显示隐藏
39
+ * */ _define_property(this, "visible", void 0);
40
+ /**
41
+ * 开启表达式
42
+ * */ _define_property(this, "expression", void 0);
43
+ /**
44
+ *
45
+ * 是否改变父属性
46
+ */ _define_property(this, "updateParent", void 0);
47
+ var _props_visible;
48
+ this.visible = (_props_visible = props === null || props === void 0 ? void 0 : props.visible) !== null && _props_visible !== void 0 ? _props_visible : true;
49
+ var _props_expression;
50
+ this.expression = (_props_expression = props === null || props === void 0 ? void 0 : props.expression) !== null && _props_expression !== void 0 ? _props_expression : false;
51
+ var _props_updateParent;
52
+ this.updateParent = (_props_updateParent = props === null || props === void 0 ? void 0 : props.updateParent) !== null && _props_updateParent !== void 0 ? _props_updateParent : false;
30
53
  }
31
- _createClass(BaseProps, [
54
+ _create_class(BaseProps, [
32
55
  {
33
56
  key: "isAtomicComponent",
34
57
  get: function get() {