amis 1.6.5-beta.4 → 1.8.0-beta.1
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/Schema.d.ts +3 -2
- package/lib/Schema.js +0 -1
- package/lib/Schema.js.map +2 -2
- package/lib/components/Alert2.js +4 -2
- package/lib/components/Alert2.js.map +2 -2
- package/lib/components/Avatar.d.ts +20 -20
- package/lib/components/Card.d.ts +20 -20
- package/lib/components/CityArea.js +3 -0
- package/lib/components/CityArea.js.map +2 -2
- package/lib/components/DatePicker.d.ts +3 -0
- package/lib/components/DatePicker.js +41 -7
- package/lib/components/DatePicker.js.map +2 -2
- package/lib/components/ListGroup.d.ts +21 -21
- package/lib/components/PopUp.js +2 -1
- package/lib/components/PopUp.js.map +2 -2
- package/lib/components/Progress.js +12 -9
- package/lib/components/Progress.js.map +2 -2
- package/lib/components/Range.js.map +2 -2
- package/lib/components/Tabs.d.ts +27 -23
- package/lib/components/Tabs.js +37 -22
- package/lib/components/Tabs.js.map +2 -2
- package/lib/components/TooltipWrapper.d.ts +21 -20
- package/lib/components/TooltipWrapper.js +2 -2
- package/lib/components/TooltipWrapper.js.map +2 -2
- package/lib/components/calendar/Calendar.js +16 -12
- package/lib/components/calendar/Calendar.js.map +2 -2
- package/lib/components/formula/Editor.d.ts +3 -1
- package/lib/components/formula/Editor.js +20 -2
- package/lib/components/formula/Editor.js.map +2 -2
- package/lib/components/formula/Picker.d.ts +5 -0
- package/lib/components/formula/Picker.js +19 -4
- package/lib/components/formula/Picker.js.map +2 -2
- package/lib/components/icons.js +2 -0
- package/lib/components/icons.js.map +2 -2
- package/lib/factory.js +2 -2
- package/lib/factory.js.map +2 -2
- package/lib/icons/trash.js +10 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.js +2 -1
- package/lib/index.js.map +2 -2
- package/lib/renderers/Action.d.ts +1 -1
- package/lib/renderers/Action.js.map +2 -2
- package/lib/renderers/ButtonGroup.d.ts +2 -2
- package/lib/renderers/ButtonGroup.js.map +1 -1
- package/lib/renderers/Dialog.d.ts +4 -0
- package/lib/renderers/Dialog.js +4 -3
- package/lib/renderers/Dialog.js.map +2 -2
- package/lib/renderers/DropDownButton.d.ts +2 -0
- package/lib/renderers/DropDownButton.js +13 -4
- package/lib/renderers/DropDownButton.js.map +2 -2
- package/lib/renderers/Form/Combo.d.ts +4 -3
- package/lib/renderers/Form/Combo.js +81 -32
- package/lib/renderers/Form/Combo.js.map +2 -2
- package/lib/renderers/Form/InputCity.js +4 -1
- package/lib/renderers/Form/InputCity.js.map +2 -2
- package/lib/renderers/Form/InputColor.js +3 -1
- package/lib/renderers/Form/InputColor.js.map +2 -2
- package/lib/renderers/Form/InputDate.js +3 -1
- package/lib/renderers/Form/InputDate.js.map +2 -2
- package/lib/renderers/Form/InputDateRange.js +3 -1
- package/lib/renderers/Form/InputDateRange.js.map +2 -2
- package/lib/renderers/Form/InputExcel.d.ts +4 -0
- package/lib/renderers/Form/InputExcel.js +33 -6
- package/lib/renderers/Form/InputExcel.js.map +2 -2
- package/lib/renderers/Form/InputFile.d.ts +4 -1
- package/lib/renderers/Form/InputFile.js +9 -0
- package/lib/renderers/Form/InputFile.js.map +2 -2
- package/lib/renderers/Form/InputFormula.d.ts +4 -0
- package/lib/renderers/Form/InputFormula.js +2 -2
- package/lib/renderers/Form/InputFormula.js.map +2 -2
- package/lib/renderers/Form/InputImage.d.ts +4 -1
- package/lib/renderers/Form/InputImage.js +12 -2
- package/lib/renderers/Form/InputImage.js.map +2 -2
- package/lib/renderers/Form/InputRange.d.ts +27 -9
- package/lib/renderers/Form/InputRange.js +88 -23
- package/lib/renderers/Form/InputRange.js.map +2 -2
- package/lib/renderers/Form/InputTable.js +4 -2
- package/lib/renderers/Form/InputTable.js.map +2 -2
- package/lib/renderers/Form/Select.js +3 -1
- package/lib/renderers/Form/Select.js.map +2 -2
- package/lib/renderers/Form/Switch.d.ts +7 -6
- package/lib/renderers/Form/Switch.js +4 -1
- package/lib/renderers/Form/Switch.js.map +2 -2
- package/lib/renderers/Log.js +2 -1
- package/lib/renderers/Log.js.map +2 -2
- package/lib/renderers/Page.js +2 -3
- package/lib/renderers/Page.js.map +2 -2
- package/lib/renderers/PopOver.js +1 -1
- package/lib/renderers/PopOver.js.map +2 -2
- package/lib/renderers/Progress.d.ts +1 -1
- package/lib/renderers/Progress.js +1 -1
- package/lib/renderers/Progress.js.map +2 -2
- package/lib/renderers/Table/TableRow.js +1 -1
- package/lib/renderers/Table/TableRow.js.map +2 -2
- package/lib/renderers/Tabs.d.ts +10 -2
- package/lib/renderers/Tabs.js +3 -3
- package/lib/renderers/Tabs.js.map +2 -2
- package/lib/renderers/TooltipWrapper.d.ts +104 -0
- package/lib/renderers/TooltipWrapper.js +59 -0
- package/lib/renderers/TooltipWrapper.js.map +13 -0
- package/lib/renderers/Video.d.ts +6 -0
- package/lib/renderers/Video.js +13 -6
- package/lib/renderers/Video.js.map +2 -2
- package/lib/store/table.js +1 -1
- package/lib/store/table.js.map +2 -2
- package/lib/themes/ang-ie11.css +242 -46
- package/lib/themes/ang.css +250 -41
- package/lib/themes/ang.css.map +1 -1
- package/lib/themes/antd-ie11.css +242 -46
- package/lib/themes/antd.css +250 -41
- package/lib/themes/antd.css.map +1 -1
- package/lib/themes/cxd-ie11.css +231 -35
- package/lib/themes/cxd.css +252 -42
- package/lib/themes/cxd.css.map +1 -1
- package/lib/themes/dark-ie11.css +242 -46
- package/lib/themes/dark.css +250 -41
- package/lib/themes/dark.css.map +1 -1
- package/lib/themes/default-ie11.css +231 -35
- package/lib/themes/default.css +252 -42
- package/lib/themes/default.css.map +1 -1
- package/package.json +1 -1
- package/schema.json +15871 -608
- package/scss/_properties.scss +23 -12
- package/scss/components/_alert.scss +1 -1
- package/scss/components/_button-group.scss +15 -0
- package/scss/components/_city-area.scss +2 -0
- package/scss/components/_formula.scss +18 -0
- package/scss/components/_popup.scss +13 -3
- package/scss/components/_progress.scss +3 -8
- package/scss/components/_tabs.scss +145 -13
- package/scss/components/_tooltip.scss +72 -0
- package/scss/components/form/_date.scss +13 -0
- package/scss/components/form/_number.scss +2 -0
- package/scss/components/form/_switch.scss +1 -3
- package/scss/themes/_cxd-variables.scss +2 -1
- package/sdk/ang-ie11.css +287 -48
- package/sdk/ang.css +295 -43
- package/sdk/antd-ie11.css +287 -48
- package/sdk/antd.css +295 -43
- package/sdk/barcode.js +51 -51
- package/sdk/charts.js +14 -14
- package/sdk/codemirror.js +7 -7
- package/sdk/color-picker.js +65 -65
- package/sdk/cropperjs.js +2 -2
- package/sdk/cxd-ie11.css +276 -37
- package/sdk/cxd.css +297 -44
- package/sdk/dark-ie11.css +287 -48
- package/sdk/dark.css +295 -43
- 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 +17 -17
- package/sdk/rich-text.js +62 -62
- package/sdk/sdk-ie11.css +276 -37
- package/sdk/sdk.css +297 -44
- package/sdk/sdk.js +1251 -1247
- package/sdk/thirds/hls.js/hls.js +1 -1
- package/sdk/thirds/mpegts.js/mpegts.js +1 -1
- package/sdk/tinymce.js +57 -57
- package/src/Schema.ts +5 -2
- package/src/components/Alert2.tsx +9 -3
- package/src/components/CityArea.tsx +3 -0
- package/src/components/DatePicker.tsx +56 -18
- package/src/components/PopUp.tsx +6 -5
- package/src/components/Progress.tsx +8 -12
- package/src/components/Range.tsx +7 -1
- package/src/components/Tabs.tsx +51 -21
- package/src/components/TooltipWrapper.tsx +4 -1
- package/src/components/calendar/Calendar.tsx +17 -12
- package/src/components/formula/Editor.tsx +34 -3
- package/src/components/formula/Picker.tsx +28 -1
- package/src/components/icons.tsx +2 -0
- package/src/factory.tsx +2 -2
- package/src/icons/trash.svg +8 -0
- package/src/index.tsx +1 -0
- package/src/renderers/Action.tsx +2 -1
- package/src/renderers/ButtonGroup.tsx +2 -2
- package/src/renderers/Dialog.tsx +17 -3
- package/src/renderers/DropDownButton.tsx +14 -3
- package/src/renderers/Form/Combo.tsx +84 -26
- package/src/renderers/Form/InputCity.tsx +13 -1
- package/src/renderers/Form/InputColor.tsx +2 -0
- package/src/renderers/Form/InputDate.tsx +2 -0
- package/src/renderers/Form/InputDateRange.tsx +2 -0
- package/src/renderers/Form/InputExcel.tsx +27 -5
- package/src/renderers/Form/InputFile.tsx +13 -1
- package/src/renderers/Form/InputFormula.tsx +7 -0
- package/src/renderers/Form/InputImage.tsx +32 -12
- package/src/renderers/Form/InputRange.tsx +95 -40
- package/src/renderers/Form/InputTable.tsx +6 -2
- package/src/renderers/Form/Select.tsx +2 -0
- package/src/renderers/Form/Switch.tsx +16 -9
- package/src/renderers/Log.tsx +2 -1
- package/src/renderers/Page.tsx +1 -2
- package/src/renderers/PopOver.tsx +1 -1
- package/src/renderers/Progress.tsx +2 -2
- package/src/renderers/Table/TableRow.tsx +1 -1
- package/src/renderers/Tabs.tsx +16 -4
- package/src/renderers/TooltipWrapper.tsx +219 -0
- package/src/renderers/Video.tsx +21 -6
- package/src/store/table.ts +1 -1
@@ -0,0 +1,219 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import {Renderer, RendererProps} from '../factory';
|
3
|
+
import {BaseSchema, SchemaCollection} from '../Schema';
|
4
|
+
import {filter} from '../utils/tpl';
|
5
|
+
import {escapeHtml} from '../utils/tpl-builtin';
|
6
|
+
import {buildStyle} from '../utils/style';
|
7
|
+
import {TooltipWrapper as TooltipWrapperComp} from '../components';
|
8
|
+
|
9
|
+
import type {Trigger} from '../components/TooltipWrapper';
|
10
|
+
|
11
|
+
export interface TooltipWrapperSchema extends BaseSchema {
|
12
|
+
/**
|
13
|
+
* 文字提示容器
|
14
|
+
*/
|
15
|
+
type: 'tooltip-wrapper';
|
16
|
+
|
17
|
+
/**
|
18
|
+
* 文字提示标题
|
19
|
+
*/
|
20
|
+
title?: string;
|
21
|
+
|
22
|
+
/**
|
23
|
+
* 文字提示
|
24
|
+
*/
|
25
|
+
tooltip?: string;
|
26
|
+
|
27
|
+
/**
|
28
|
+
* 文字提示浮层出现位置,默认为top
|
29
|
+
*/
|
30
|
+
placement?: 'top' | 'right' | 'bottom' | 'left';
|
31
|
+
|
32
|
+
/**
|
33
|
+
* 浮层触发方式,默认为hover
|
34
|
+
*/
|
35
|
+
trigger?: Trigger | Array<Trigger>;
|
36
|
+
|
37
|
+
/**
|
38
|
+
* 浮层隐藏延迟时间,单位ms,默认0
|
39
|
+
*/
|
40
|
+
delay?: number;
|
41
|
+
|
42
|
+
/**
|
43
|
+
* 是否点击非内容区域关闭提示,默认为true
|
44
|
+
*/
|
45
|
+
rootClose?: boolean;
|
46
|
+
|
47
|
+
/**
|
48
|
+
* 内容区域
|
49
|
+
*/
|
50
|
+
body?: SchemaCollection;
|
51
|
+
|
52
|
+
/**
|
53
|
+
* 内容区包裹标签
|
54
|
+
*/
|
55
|
+
wrapperComponent: string;
|
56
|
+
|
57
|
+
/**
|
58
|
+
* 内容区是否内联显示,默认为false
|
59
|
+
*/
|
60
|
+
inline?: boolean;
|
61
|
+
|
62
|
+
/**
|
63
|
+
* 浮层主题色,默认为light
|
64
|
+
*/
|
65
|
+
tooltipTheme?: 'light' | 'dark';
|
66
|
+
|
67
|
+
/**
|
68
|
+
* 内容区自定义样式
|
69
|
+
*/
|
70
|
+
style?: {
|
71
|
+
[propName: string]: any;
|
72
|
+
};
|
73
|
+
|
74
|
+
/**
|
75
|
+
* 自定义提示浮层样式
|
76
|
+
*/
|
77
|
+
tooltipStyle?: {
|
78
|
+
[propName: string]: any;
|
79
|
+
};
|
80
|
+
|
81
|
+
/**
|
82
|
+
* 内容区CSS类名
|
83
|
+
*/
|
84
|
+
className?: string;
|
85
|
+
|
86
|
+
/**
|
87
|
+
* 文字提示浮层CSS类名
|
88
|
+
*/
|
89
|
+
tooltipClassName?: string;
|
90
|
+
}
|
91
|
+
|
92
|
+
export interface TooltipWrapperProps extends RendererProps {
|
93
|
+
/**
|
94
|
+
* 文字提示标题
|
95
|
+
*/
|
96
|
+
title?: string;
|
97
|
+
/**
|
98
|
+
* 文字提示
|
99
|
+
*/
|
100
|
+
tooltip?: string;
|
101
|
+
/**
|
102
|
+
* 文字提示位置
|
103
|
+
*/
|
104
|
+
placement: 'top' | 'right' | 'bottom' | 'left';
|
105
|
+
inline?: boolean;
|
106
|
+
trigger: Trigger | Array<Trigger>;
|
107
|
+
rootClose?: boolean;
|
108
|
+
delay?: number;
|
109
|
+
container?: React.ReactNode;
|
110
|
+
style?: React.CSSProperties;
|
111
|
+
tooltipStyle?: React.CSSProperties;
|
112
|
+
wrapperComponent?: string;
|
113
|
+
tooltipTheme?: 'light' | 'dark';
|
114
|
+
}
|
115
|
+
|
116
|
+
interface TooltipWrapperState {}
|
117
|
+
|
118
|
+
export default class TooltipWrapper extends React.Component<
|
119
|
+
TooltipWrapperProps,
|
120
|
+
TooltipWrapperState
|
121
|
+
> {
|
122
|
+
static defaultProps: Pick<
|
123
|
+
TooltipWrapperProps,
|
124
|
+
| 'placement'
|
125
|
+
| 'trigger'
|
126
|
+
| 'rootClose'
|
127
|
+
| 'delay'
|
128
|
+
| 'inline'
|
129
|
+
| 'wrap'
|
130
|
+
| 'tooltipTheme'
|
131
|
+
> = {
|
132
|
+
placement: 'top',
|
133
|
+
trigger: 'hover',
|
134
|
+
rootClose: true,
|
135
|
+
delay: 0,
|
136
|
+
inline: false,
|
137
|
+
wrap: false,
|
138
|
+
tooltipTheme: 'light'
|
139
|
+
};
|
140
|
+
|
141
|
+
constructor(props: TooltipWrapperProps) {
|
142
|
+
super(props);
|
143
|
+
}
|
144
|
+
|
145
|
+
renderBody() {
|
146
|
+
const {
|
147
|
+
render,
|
148
|
+
classnames: cx,
|
149
|
+
body,
|
150
|
+
className,
|
151
|
+
wrapperComponent,
|
152
|
+
inline,
|
153
|
+
style,
|
154
|
+
data,
|
155
|
+
wrap
|
156
|
+
} = this.props;
|
157
|
+
const Comp =
|
158
|
+
(wrapperComponent as keyof JSX.IntrinsicElements) ||
|
159
|
+
(inline ? 'span' : 'div');
|
160
|
+
|
161
|
+
return (
|
162
|
+
<Comp
|
163
|
+
className={cx('TooltipWrapper', className, {
|
164
|
+
'TooltipWrapper--inline': inline
|
165
|
+
})}
|
166
|
+
style={buildStyle(style, data)}
|
167
|
+
>
|
168
|
+
{render('body', body)}
|
169
|
+
</Comp>
|
170
|
+
);
|
171
|
+
}
|
172
|
+
|
173
|
+
render() {
|
174
|
+
const {
|
175
|
+
tooltipClassName,
|
176
|
+
classPrefix: ns,
|
177
|
+
classnames: cx,
|
178
|
+
container,
|
179
|
+
placement,
|
180
|
+
rootClose,
|
181
|
+
tooltipStyle,
|
182
|
+
title,
|
183
|
+
tooltip,
|
184
|
+
delay,
|
185
|
+
trigger,
|
186
|
+
tooltipTheme,
|
187
|
+
data
|
188
|
+
} = this.props;
|
189
|
+
|
190
|
+
const tooltipObj = {
|
191
|
+
title: escapeHtml(filter(title, data)),
|
192
|
+
content: escapeHtml(filter(tooltip, data))
|
193
|
+
};
|
194
|
+
|
195
|
+
return (
|
196
|
+
<TooltipWrapperComp
|
197
|
+
classPrefix={ns}
|
198
|
+
classnames={cx}
|
199
|
+
style={buildStyle(tooltipStyle, data)}
|
200
|
+
placement={placement}
|
201
|
+
tooltip={tooltipObj}
|
202
|
+
trigger={trigger}
|
203
|
+
rootClose={rootClose}
|
204
|
+
delay={delay}
|
205
|
+
container={container}
|
206
|
+
tooltipClassName={cx(tooltipClassName, {
|
207
|
+
'Tooltip--dark': tooltipTheme === 'dark'
|
208
|
+
})}
|
209
|
+
>
|
210
|
+
{this.renderBody()}
|
211
|
+
</TooltipWrapperComp>
|
212
|
+
);
|
213
|
+
}
|
214
|
+
}
|
215
|
+
|
216
|
+
@Renderer({
|
217
|
+
type: 'tooltip-wrapper'
|
218
|
+
})
|
219
|
+
export class TooltipWrapperRenderer extends TooltipWrapper {}
|
package/src/renderers/Video.tsx
CHANGED
@@ -113,6 +113,12 @@ export interface VideoSchema extends BaseSchema {
|
|
113
113
|
* 跳转到帧时,往前多少秒。
|
114
114
|
*/
|
115
115
|
jumpBufferDuration?: number;
|
116
|
+
|
117
|
+
/**
|
118
|
+
* 默认播放的时候到了下一帧会继续播放,同时高亮下一帧。
|
119
|
+
* 如果配置这个则会停止播放,等待用户选择新的区间再播放。
|
120
|
+
*/
|
121
|
+
stopOnNextFrame?: boolean;
|
116
122
|
}
|
117
123
|
|
118
124
|
const str2seconds: (str: string) => number = str =>
|
@@ -389,6 +395,7 @@ export default class Video extends React.Component<VideoProps, VideoState> {
|
|
389
395
|
player: any;
|
390
396
|
times: Array<number>;
|
391
397
|
currentIndex: number;
|
398
|
+
manualJump = false;
|
392
399
|
constructor(props: VideoProps) {
|
393
400
|
super(props);
|
394
401
|
|
@@ -459,6 +466,7 @@ export default class Video extends React.Component<VideoProps, VideoState> {
|
|
459
466
|
let index = 0;
|
460
467
|
const times = this.times;
|
461
468
|
const len = times.length;
|
469
|
+
const stopOnNextFrame = this.props.stopOnNextFrame;
|
462
470
|
while (index < len - 1) {
|
463
471
|
if (
|
464
472
|
times[index + 1] &&
|
@@ -472,6 +480,12 @@ export default class Video extends React.Component<VideoProps, VideoState> {
|
|
472
480
|
|
473
481
|
if (this.currentIndex !== index) {
|
474
482
|
this.moveCursorToIndex(index);
|
483
|
+
|
484
|
+
stopOnNextFrame && !this.manualJump && player.pause();
|
485
|
+
|
486
|
+
if (this.manualJump) {
|
487
|
+
this.manualJump = false;
|
488
|
+
}
|
475
489
|
}
|
476
490
|
});
|
477
491
|
}
|
@@ -505,6 +519,7 @@ export default class Video extends React.Component<VideoProps, VideoState> {
|
|
505
519
|
const times = this.times;
|
506
520
|
const player = this.player;
|
507
521
|
|
522
|
+
this.manualJump = true;
|
508
523
|
player.seek(times[index] - jumpBufferDuration);
|
509
524
|
player.play();
|
510
525
|
}
|
@@ -572,11 +587,11 @@ export default class Video extends React.Component<VideoProps, VideoState> {
|
|
572
587
|
}
|
573
588
|
|
574
589
|
return (
|
575
|
-
<div className="pull-in-
|
576
|
-
<div className={
|
590
|
+
<div className="pull-in-xs" key={i}>
|
591
|
+
<div className={cx(`Hbox Video-frameItem`)}>
|
577
592
|
{items.map((item, key) => (
|
578
593
|
<div
|
579
|
-
className={
|
594
|
+
className={cx(`Hbox-col Wrapper--xs Video-frame`)}
|
580
595
|
key={key}
|
581
596
|
onClick={() =>
|
582
597
|
this.jumpToIndex(i * (columnsCount as number) + key)
|
@@ -585,7 +600,7 @@ export default class Video extends React.Component<VideoProps, VideoState> {
|
|
585
600
|
{item.src ? (
|
586
601
|
<img className="w-full" alt="poster" src={item.src} />
|
587
602
|
) : null}
|
588
|
-
<div className={
|
603
|
+
<div className={cx(`Video-frameLabel`)}>{item.time}</div>
|
589
604
|
</div>
|
590
605
|
))}
|
591
606
|
|
@@ -593,7 +608,7 @@ export default class Video extends React.Component<VideoProps, VideoState> {
|
|
593
608
|
/* 补充空白 */ restCount
|
594
609
|
? blankArray.map((_, index) => (
|
595
610
|
<div
|
596
|
-
className={
|
611
|
+
className={cx(`Hbox-col Wrapper--xs`)}
|
597
612
|
key={`blank_${index}`}
|
598
613
|
/>
|
599
614
|
))
|
@@ -604,7 +619,7 @@ export default class Video extends React.Component<VideoProps, VideoState> {
|
|
604
619
|
);
|
605
620
|
})}
|
606
621
|
{jumpFrame ? (
|
607
|
-
<span ref={this.cursorRef} className={
|
622
|
+
<span ref={this.cursorRef} className={cx('Video-cursor')} />
|
608
623
|
) : null}
|
609
624
|
</div>
|
610
625
|
);
|
package/src/store/table.ts
CHANGED
@@ -904,7 +904,7 @@ export const TableStore = iRendererStore
|
|
904
904
|
return {
|
905
905
|
// id: String(item && (item as any)[self.primaryField] || `${pindex}-${depth}-${key}`),
|
906
906
|
id: String(id),
|
907
|
-
parentId,
|
907
|
+
parentId: String(parentId),
|
908
908
|
key: String(`${pindex}-${depth}-${index}`),
|
909
909
|
path: `${path}${index}`,
|
910
910
|
depth: depth,
|