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.
- package/lib/Root.js +1 -1
- package/lib/Root.js.map +2 -2
- package/lib/SchemaRenderer.js +4 -4
- package/lib/SchemaRenderer.js.map +2 -2
- package/lib/components/Card.d.ts +20 -20
- package/lib/components/Collapse.js +4 -6
- package/lib/components/Collapse.js.map +2 -2
- package/lib/components/CollapseGroup.d.ts +20 -20
- package/lib/components/CollapseGroup.js +5 -3
- package/lib/components/CollapseGroup.js.map +2 -2
- package/lib/components/ColorPicker.d.ts +84 -84
- package/lib/components/DatePicker.d.ts +84 -84
- package/lib/components/DateRangePicker.d.ts +84 -84
- package/lib/components/LocationPicker.d.ts +84 -84
- package/lib/components/MonthRangePicker.d.ts +84 -84
- package/lib/components/Select.d.ts +237 -237
- package/lib/components/Tabs.d.ts +20 -20
- package/lib/components/index.d.ts +2 -1
- package/lib/components/index.js +4 -2
- package/lib/components/index.js.map +2 -2
- package/lib/index.js +1 -1
- package/lib/renderers/Collapse.js +8 -2
- package/lib/renderers/Collapse.js.map +2 -2
- package/lib/renderers/CollapseGroup.js.map +2 -2
- package/lib/renderers/Form/InputCity.d.ts +84 -84
- package/lib/renderers/Form/InputColor.d.ts +84 -84
- package/lib/store/formItem.js +11 -1
- package/lib/store/formItem.js.map +2 -2
- package/lib/utils/helper.js +2 -7
- package/lib/utils/helper.js.map +2 -2
- package/package.json +2 -2
- package/sdk/charts.js +17 -17
- package/sdk/color-picker.js +65 -65
- package/sdk/cropperjs.js +3 -3
- package/sdk/exceljs.js +1 -1
- package/sdk/markdown.js +69 -69
- package/sdk/papaparse.js +1 -1
- package/sdk/renderers/Form/CityDB.js +1 -1
- package/sdk/rest.js +18 -18
- package/sdk/rich-text.js +62 -62
- package/sdk/sdk.js +1296 -1206
- package/sdk/thirds/hls.js/hls.js +18 -18
- package/sdk/thirds/mpegts.js/mpegts.js +2 -2
- package/sdk/tinymce.js +57 -57
- package/src/Root.tsx +1 -0
- package/src/SchemaRenderer.tsx +4 -0
- package/src/components/Collapse.tsx +19 -12
- package/src/components/CollapseGroup.tsx +9 -11
- package/src/components/index.tsx +2 -0
- package/src/renderers/Collapse.tsx +27 -27
- package/src/renderers/CollapseGroup.tsx +13 -12
- package/src/store/formItem.ts +15 -0
- package/src/utils/helper.ts +5 -14
package/src/Root.tsx
CHANGED
package/src/SchemaRenderer.tsx
CHANGED
@@ -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(
|
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
|
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
|
-
?
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
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
|
-
|
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
|
-
|
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) =>
|
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
|
)}
|
package/src/components/index.tsx
CHANGED
@@ -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={
|
166
|
-
|
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={
|
169
|
-
|
170
|
-
? children
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
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<
|
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
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
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
|
})
|
package/src/store/formItem.ts
CHANGED
@@ -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
|
|
package/src/utils/helper.ts
CHANGED
@@ -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
|
-
|
1616
|
+
arr.push(i);
|
1626
1617
|
}
|
1627
1618
|
return arr;
|
1628
|
-
}
|
1619
|
+
}
|