amis 1.5.6-beta.0 → 1.5.6-beta.4

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 (53) hide show
  1. package/lib/Root.js +1 -1
  2. package/lib/Root.js.map +2 -2
  3. package/lib/SchemaRenderer.js +4 -4
  4. package/lib/SchemaRenderer.js.map +2 -2
  5. package/lib/components/Card.d.ts +20 -20
  6. package/lib/components/Collapse.js +4 -6
  7. package/lib/components/Collapse.js.map +2 -2
  8. package/lib/components/CollapseGroup.d.ts +20 -20
  9. package/lib/components/CollapseGroup.js +5 -3
  10. package/lib/components/CollapseGroup.js.map +2 -2
  11. package/lib/components/ColorPicker.d.ts +84 -84
  12. package/lib/components/DatePicker.d.ts +84 -84
  13. package/lib/components/DateRangePicker.d.ts +84 -84
  14. package/lib/components/LocationPicker.d.ts +84 -84
  15. package/lib/components/MonthRangePicker.d.ts +84 -84
  16. package/lib/components/Select.d.ts +237 -237
  17. package/lib/components/Tabs.d.ts +20 -20
  18. package/lib/components/index.d.ts +2 -1
  19. package/lib/components/index.js +4 -2
  20. package/lib/components/index.js.map +2 -2
  21. package/lib/index.js +1 -1
  22. package/lib/renderers/Collapse.js +8 -2
  23. package/lib/renderers/Collapse.js.map +2 -2
  24. package/lib/renderers/CollapseGroup.js.map +2 -2
  25. package/lib/renderers/Form/InputCity.d.ts +84 -84
  26. package/lib/renderers/Form/InputColor.d.ts +84 -84
  27. package/lib/store/formItem.js +11 -1
  28. package/lib/store/formItem.js.map +2 -2
  29. package/lib/utils/helper.js +2 -7
  30. package/lib/utils/helper.js.map +2 -2
  31. package/package.json +2 -2
  32. package/sdk/charts.js +17 -17
  33. package/sdk/color-picker.js +65 -65
  34. package/sdk/cropperjs.js +3 -3
  35. package/sdk/exceljs.js +1 -1
  36. package/sdk/markdown.js +69 -69
  37. package/sdk/papaparse.js +1 -1
  38. package/sdk/renderers/Form/CityDB.js +1 -1
  39. package/sdk/rest.js +18 -18
  40. package/sdk/rich-text.js +62 -62
  41. package/sdk/sdk.js +1296 -1206
  42. package/sdk/thirds/hls.js/hls.js +18 -18
  43. package/sdk/thirds/mpegts.js/mpegts.js +2 -2
  44. package/sdk/tinymce.js +57 -57
  45. package/src/Root.tsx +1 -0
  46. package/src/SchemaRenderer.tsx +4 -0
  47. package/src/components/Collapse.tsx +19 -12
  48. package/src/components/CollapseGroup.tsx +9 -11
  49. package/src/components/index.tsx +2 -0
  50. package/src/renderers/Collapse.tsx +27 -27
  51. package/src/renderers/CollapseGroup.tsx +13 -12
  52. package/src/store/formItem.ts +15 -0
  53. package/src/utils/helper.ts +5 -14
package/src/Root.tsx CHANGED
@@ -150,6 +150,7 @@ export function renderChild(
150
150
  <SchemaRenderer
151
151
  {...props}
152
152
  schema={schema}
153
+ propKey={schema.key}
153
154
  $path={`${prefix ? `${prefix}/` : ''}${(schema && schema.type) || ''}`}
154
155
  />
155
156
  );
@@ -242,6 +242,7 @@ export class SchemaRenderer extends React.Component<SchemaRendererProps, any> {
242
242
  data: defaultData,
243
243
  value: defaultValue,
244
244
  activeKey: defaultActiveKey,
245
+ key: propKey,
245
246
  ...restSchema
246
247
  } = schema;
247
248
  return rest.invisible
@@ -253,6 +254,7 @@ export class SchemaRenderer extends React.Component<SchemaRendererProps, any> {
253
254
  defaultData,
254
255
  defaultValue,
255
256
  defaultActiveKey,
257
+ propKey,
256
258
  $path: $path,
257
259
  $schema: schema,
258
260
  ref: isSFC ? undefined : this.refFn,
@@ -293,6 +295,7 @@ export class SchemaRenderer extends React.Component<SchemaRendererProps, any> {
293
295
  const {
294
296
  data: defaultData,
295
297
  value: defaultValue,
298
+ key: propKey,
296
299
  activeKey: defaultActiveKey,
297
300
  ...restSchema
298
301
  } = schema;
@@ -321,6 +324,7 @@ export class SchemaRenderer extends React.Component<SchemaRendererProps, any> {
321
324
  defaultData={restSchema.defaultData ?? defaultData}
322
325
  defaultValue={restSchema.defaultValue ?? defaultValue}
323
326
  defaultActiveKey={defaultActiveKey}
327
+ propKey={propKey}
324
328
  $path={$path}
325
329
  $schema={{...schema, ...exprProps}}
326
330
  ref={this.refFn}
@@ -55,7 +55,6 @@ export interface CollapseState {
55
55
  }
56
56
 
57
57
  export class Collapse extends React.Component<CollapseProps, CollapseState> {
58
-
59
58
  static defaultProps: Partial<CollapseProps> = {
60
59
  mountOnEnter: false,
61
60
  unmountOnExit: false,
@@ -82,7 +81,10 @@ export class Collapse extends React.Component<CollapseProps, CollapseState> {
82
81
  this.state.collapsed = !!props.collapsed;
83
82
  }
84
83
 
85
- static getDerivedStateFromProps(nextProps: CollapseProps, preState: CollapseState) {
84
+ static getDerivedStateFromProps(
85
+ nextProps: CollapseProps,
86
+ preState: CollapseState
87
+ ) {
86
88
  if (nextProps.propsUpdate && nextProps.collapsed !== preState.collapsed) {
87
89
  return {
88
90
  collapsed: !!nextProps.collapsed
@@ -164,7 +166,9 @@ export class Collapse extends React.Component<CollapseProps, CollapseState> {
164
166
  children
165
167
  } = this.props;
166
168
 
167
- const finalHeader = this.state.collapsed ? header : collapseHeader || header;
169
+ const finalHeader = this.state.collapsed
170
+ ? header
171
+ : collapseHeader || header;
168
172
 
169
173
  let dom = [
170
174
  finalHeader ? (
@@ -173,14 +177,18 @@ export class Collapse extends React.Component<CollapseProps, CollapseState> {
173
177
  onClick={this.toggleCollapsed}
174
178
  className={cx(`Collapse-header`, headingClassName)}
175
179
  >
176
- {showArrow && collapsable
177
- ? expandIcon
178
- ? React.cloneElement(expandIcon, {
179
- ...expandIcon.props,
180
- className: cx('Collapse-icon-tranform')
181
- })
182
- : <span className={cx('Collapse-arrow')} />
183
- : ''}
180
+ {showArrow && collapsable ? (
181
+ expandIcon ? (
182
+ React.cloneElement(expandIcon, {
183
+ ...expandIcon.props,
184
+ className: cx('Collapse-icon-tranform')
185
+ })
186
+ ) : (
187
+ <span className={cx('Collapse-arrow')} />
188
+ )
189
+ ) : (
190
+ ''
191
+ )}
184
192
  {finalHeader}
185
193
  </HeadingComponent>
186
194
  ) : null,
@@ -213,7 +221,6 @@ export class Collapse extends React.Component<CollapseProps, CollapseState> {
213
221
  );
214
222
  }}
215
223
  </Transition>
216
-
217
224
  ];
218
225
 
219
226
  if (headerPosition === 'bottom') {
@@ -28,7 +28,6 @@ class CollapseGroup extends React.Component<
28
28
  CollapseGroupProps,
29
29
  CollapseGroupState
30
30
  > {
31
-
32
31
  static defaultProps: Partial<CollapseGroupProps> = {
33
32
  className: '',
34
33
  accordion: false,
@@ -58,21 +57,18 @@ class CollapseGroup extends React.Component<
58
57
  if (collapsed) {
59
58
  if (this.props.accordion) {
60
59
  activeKey = [];
61
- }
62
- else {
63
- for(let i = 0; i < activeKey.length; i++) {
60
+ } else {
61
+ for (let i = 0; i < activeKey.length; i++) {
64
62
  if (activeKey[i] === item.id) {
65
63
  activeKey.splice(i, 1);
66
64
  break;
67
65
  }
68
66
  }
69
67
  }
70
- }
71
- else {
68
+ } else {
72
69
  if (this.props.accordion) {
73
70
  activeKey = [item.id];
74
- }
75
- else {
71
+ } else {
76
72
  activeKey.push(item.id);
77
73
  }
78
74
  }
@@ -88,7 +84,8 @@ class CollapseGroup extends React.Component<
88
84
 
89
85
  return children.map((child: React.ReactElement, index: number) => {
90
86
  let props = child.props;
91
- const id = props.schema.key || String(index);
87
+
88
+ const id = props.propKey || String(index);
92
89
  const collapsed = this.state.activeKey.indexOf(id) === -1;
93
90
 
94
91
  return React.cloneElement(child as any, {
@@ -98,7 +95,8 @@ class CollapseGroup extends React.Component<
98
95
  collapsed,
99
96
  expandIcon: this.props.expandIcon,
100
97
  propsUpdate: true,
101
- onCollapse: (item: CollapseProps, collapsed: boolean) => this.collapseChange(item, collapsed)
98
+ onCollapse: (item: CollapseProps, collapsed: boolean) =>
99
+ this.collapseChange(item, collapsed)
102
100
  });
103
101
  });
104
102
  };
@@ -116,7 +114,7 @@ class CollapseGroup extends React.Component<
116
114
  className={cx(
117
115
  `CollapseGroup`,
118
116
  {
119
- 'icon-position-right': expandIconPosition === 'right',
117
+ 'icon-position-right': expandIconPosition === 'right'
120
118
  },
121
119
  className
122
120
  )}
@@ -12,6 +12,7 @@ import Button from './Button';
12
12
  import Checkbox from './Checkbox';
13
13
  import Checkboxes from './Selection';
14
14
  import Collapse from './Collapse';
15
+ import CollapseGroup from './CollapseGroup';
15
16
  import DatePicker from './DatePicker';
16
17
  import DateRangePicker from './DateRangePicker';
17
18
  import Drawer from './Drawer';
@@ -69,6 +70,7 @@ export {
69
70
  Checkbox,
70
71
  Checkboxes,
71
72
  Collapse,
73
+ CollapseGroup,
72
74
  DatePicker,
73
75
  DateRangePicker,
74
76
  Drawer,
@@ -1,12 +1,7 @@
1
1
  import React from 'react';
2
2
  import {Renderer, RendererProps} from '../factory';
3
3
  import {Collapse as BasicCollapse} from '../components/Collapse';
4
- import {
5
- BaseSchema,
6
- SchemaCollection,
7
- SchemaTpl,
8
- SchemaObject
9
- } from '../Schema';
4
+ import {BaseSchema, SchemaCollection, SchemaTpl, SchemaObject} from '../Schema';
10
5
 
11
6
  /**
12
7
  * Collapse 折叠渲染器,格式说明。
@@ -63,9 +58,9 @@ export interface CollapseSchema extends BaseSchema {
63
58
  */
64
59
  showArrow?: boolean;
65
60
 
66
- /**
67
- * 自定义切换图标
68
- */
61
+ /**
62
+ * 自定义切换图标
63
+ */
69
64
  expandIcon?: SchemaObject;
70
65
 
71
66
  /**
@@ -104,14 +99,9 @@ export interface CollapseProps
104
99
  children?: JSX.Element | ((props?: any) => JSX.Element);
105
100
  }
106
101
 
107
- export default class Collapse extends React.Component<
108
- CollapseProps,
109
- {}
110
- > {
111
-
102
+ export default class Collapse extends React.Component<CollapseProps, {}> {
112
103
  render() {
113
104
  const {
114
- key,
115
105
  id,
116
106
  classPrefix: ns,
117
107
  classnames: cx,
@@ -144,7 +134,6 @@ export default class Collapse extends React.Component<
144
134
 
145
135
  return (
146
136
  <BasicCollapse
147
- key={key}
148
137
  id={id}
149
138
  classnames={cx}
150
139
  classPrefix={ns}
@@ -162,19 +151,30 @@ export default class Collapse extends React.Component<
162
151
  showArrow={showArrow}
163
152
  disabled={disabled}
164
153
  propsUpdate={propsUpdate}
165
- expandIcon={expandIcon ? render('arrow-icon', expandIcon || '', {className: cx('Collapse-icon-tranform')}) : null}
166
- collapseHeader={collapseTitle || collapseHeader ? render('heading', collapseTitle || collapseHeader) : null}
154
+ expandIcon={
155
+ expandIcon
156
+ ? render('arrow-icon', expandIcon || '', {
157
+ className: cx('Collapse-icon-tranform')
158
+ })
159
+ : null
160
+ }
161
+ collapseHeader={
162
+ collapseTitle || collapseHeader
163
+ ? render('heading', collapseTitle || collapseHeader)
164
+ : null
165
+ }
167
166
  header={render('heading', title || header || '')}
168
- body={children
169
- ? typeof children === 'function'
170
- ? children(this.props)
171
- : children
172
- : body
173
- ? render('body', body)
174
- : null}
167
+ body={
168
+ children
169
+ ? typeof children === 'function'
170
+ ? children(this.props)
171
+ : children
172
+ : body
173
+ ? render('body', body)
174
+ : null
175
+ }
175
176
  onCollapse={onCollapse}
176
- >
177
- </BasicCollapse>
177
+ ></BasicCollapse>
178
178
  );
179
179
  }
180
180
  }
@@ -41,11 +41,13 @@ export interface CollapseGroupSchema extends BaseSchema {
41
41
  export interface CollapseGroupProps
42
42
  extends RendererProps,
43
43
  Omit<CollapseGroupSchema, 'type' | 'className'> {
44
-
45
44
  children?: JSX.Element | ((props?: any) => JSX.Element);
46
45
  }
47
46
 
48
- export class CollapseGroupRender extends React.Component<CollapseGroupProps, {}> {
47
+ export class CollapseGroupRender extends React.Component<
48
+ CollapseGroupProps,
49
+ {}
50
+ > {
49
51
  constructor(props: CollapseGroupProps) {
50
52
  super(props);
51
53
  }
@@ -61,19 +63,18 @@ export class CollapseGroupRender extends React.Component<CollapseGroupProps, {}>
61
63
  } = this.props;
62
64
  return (
63
65
  <CollapseGroup
64
- defaultActiveKey={defaultActiveKey}
65
- accordion={accordion}
66
- expandIcon={expandIcon}
67
- expandIconPosition={expandIconPosition}
68
- className={className}
69
- >
70
- {render('body', body || '')}
71
- </CollapseGroup>
72
- )
66
+ defaultActiveKey={defaultActiveKey}
67
+ accordion={accordion}
68
+ expandIcon={expandIcon}
69
+ expandIconPosition={expandIconPosition}
70
+ className={className}
71
+ >
72
+ {render('body', body || '')}
73
+ </CollapseGroup>
74
+ );
73
75
  }
74
76
  }
75
77
 
76
-
77
78
  @Renderer({
78
79
  type: 'collapse-group'
79
80
  })
@@ -712,6 +712,21 @@ export const FormItemStore = StoreNode.named('FormItemStore')
712
712
  data
713
713
  );
714
714
 
715
+ // 插入新的子节点,用于之后BaseSelection.resolveSelected查找
716
+ if (Array.isArray(self.options[0].children)) {
717
+ const children = self.options[0].children.concat();
718
+
719
+ flattenTree(self.options[0].leftOptions).forEach(item => {
720
+ if (
721
+ !findTree(self.options[0].children, node => node.ref === item.value)
722
+ ) {
723
+ children.push({ref: item.value, defer: true});
724
+ }
725
+ });
726
+
727
+ setOptions([{...self.options[0], children}], undefined, data);
728
+ }
729
+
715
730
  return json;
716
731
  });
717
732
 
@@ -891,11 +891,7 @@ export function filterTree<T extends TreeItem>(
891
891
  ? filterTree(item.children, iterator, level + 1, depthFirst)
892
892
  : undefined;
893
893
 
894
- if (
895
- Array.isArray(children) &&
896
- Array.isArray(item.children) &&
897
- children.length !== item.children.length
898
- ) {
894
+ if (Array.isArray(children) && Array.isArray(item.children)) {
899
895
  item = {...item, children: children};
900
896
  }
901
897
 
@@ -915,11 +911,7 @@ export function filterTree<T extends TreeItem>(
915
911
  depthFirst
916
912
  );
917
913
 
918
- if (
919
- Array.isArray(children) &&
920
- Array.isArray(item.children) &&
921
- children.length !== item.children.length
922
- ) {
914
+ if (Array.isArray(children) && Array.isArray(item.children)) {
923
915
  item = {...item, children: children};
924
916
  }
925
917
  }
@@ -1593,13 +1585,12 @@ export function JSONTraverse(
1593
1585
  });
1594
1586
  }
1595
1587
 
1596
-
1597
1588
  export function convertDateArrayToDate(
1598
1589
  value: number[],
1599
1590
  types: string[],
1600
1591
  date: moment.Moment
1601
1592
  ): moment.Moment | null {
1602
- if (value.length === 0) return date
1593
+ if (value.length === 0) return date;
1603
1594
  for (let i = 0; i < types.length; i++) {
1604
1595
  const type = types[i];
1605
1596
  // @ts-ignore
@@ -1622,7 +1613,7 @@ export function convertDateToObject(value: moment.Moment) {
1622
1613
  export function getRange(min: number, max: number, step: number = 1) {
1623
1614
  const arr = [];
1624
1615
  for (let i = min; i <= max; i += step) {
1625
- arr.push(i);
1616
+ arr.push(i);
1626
1617
  }
1627
1618
  return arr;
1628
- };
1619
+ }