yootd 0.0.8 → 0.0.10
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/LICENSE +21 -21
- package/README.md +43 -43
- package/dist/Preview/components/preview/phone.scss +8 -8
- package/dist/Preview/index.scss +35 -35
- package/dist/Preview/types/type.d.ts +21 -21
- package/dist/anchor/index.scss +23 -23
- package/dist/approval-process/index.scss +95 -95
- package/dist/areas/index.scss +21 -21
- package/dist/areas/types/types.d.ts +39 -39
- package/dist/aside/components/SortableItem.scss +93 -93
- package/dist/aside/index.scss +25 -25
- package/dist/aside/types/types.d.ts +44 -44
- package/dist/badge/index.scss +5 -5
- package/dist/buildings/types/types.d.ts +21 -21
- package/dist/button/index.scss +30 -30
- package/dist/cascader/index.scss +5 -5
- package/dist/config-provider/context.d.ts +1 -0
- package/dist/config-provider/index.d.ts +1 -0
- package/dist/config-provider/index.js +3 -1
- package/dist/courses/types/types.d.ts +18 -18
- package/dist/dictionary/types/types.d.ts +14 -14
- package/dist/drawer-modal/index.scss +39 -39
- package/dist/drawer-modal/types/types.d.ts +3 -3
- package/dist/dropdown/assets/arrow-down.svg +5 -5
- package/dist/empty/index.scss +15 -15
- package/dist/group-title/index.scss +31 -31
- package/dist/hooks/useOSS.d.ts +1 -0
- package/dist/hooks/useOSS.js +11 -0
- package/dist/image/index.scss +26 -26
- package/dist/index.d.ts +2 -0
- package/dist/index.js +2 -1
- package/dist/input/index.scss +5 -5
- package/dist/modal/index.scss +65 -65
- package/dist/pagination/index.scss +47 -47
- package/dist/school/index.scss +21 -21
- package/dist/school/types/types.d.ts +84 -84
- package/dist/state/index.scss +89 -89
- package/dist/steps/index.scss +32 -32
- package/dist/student-dropdown/types/types.d.ts +44 -44
- package/dist/table/components/primary-header-row/index.scss +58 -58
- package/dist/table/components/primary-tbody-row/index.scss +5 -5
- package/dist/table/index.module.scss +9 -9
- package/dist/table/index.scss +33 -33
- package/dist/tabs/index.scss +81 -81
- package/dist/tag/index.scss +4 -4
- package/dist/teacher/types/types.d.ts +31 -31
- package/dist/tree/index.scss +25 -25
- package/dist/upload/index.scss +115 -115
- package/dist/user-dropdown/types/types.d.ts +45 -45
- package/dist/video-player/assets/control-background.png +0 -0
- package/dist/video-player/assets/player-icon.svg +1 -0
- package/dist/video-player/index.d.ts +70 -0
- package/dist/video-player/index.js +875 -0
- package/dist/video-player/index.scss +310 -0
- package/dist/year-term/index.scss +21 -21
- package/dist/year-term/types/types.d.ts +28 -28
- package/dist/zones/index.module.scss +23 -23
- package/dist/zones/types/types.d.ts +26 -26
- package/package.json +8 -3
package/dist/tabs/index.scss
CHANGED
@@ -1,81 +1,81 @@
|
|
1
|
-
.yot-tabs {
|
2
|
-
&-large {
|
3
|
-
.ant-tabs-tab.ant-tabs-tab-active {
|
4
|
-
color: var(--ant-color-primary);
|
5
|
-
}
|
6
|
-
.ant-tabs-tab-btn {
|
7
|
-
font-size: var(--ant-font-size-lg);
|
8
|
-
}
|
9
|
-
.ant-tabs-nav-wrap {
|
10
|
-
background-color: white;
|
11
|
-
padding-left: 1.5rem;
|
12
|
-
padding-right: 1.5rem;
|
13
|
-
}
|
14
|
-
.ant-tabs-nav::before{
|
15
|
-
content: '';
|
16
|
-
position: absolute;
|
17
|
-
right: 1.5rem;
|
18
|
-
left: 1.5rem;
|
19
|
-
z-index: 10;
|
20
|
-
border-bottom-width: var(--ant-line-width);
|
21
|
-
border-bottom-style: solid;
|
22
|
-
border-bottom-color: #E5E5E5;
|
23
|
-
}
|
24
|
-
}
|
25
|
-
&-small {
|
26
|
-
.ant-tabs-tab.ant-tabs-tab-active {
|
27
|
-
color: var(--ant-color-primary);
|
28
|
-
}
|
29
|
-
.ant-tabs-tab-btn {
|
30
|
-
font-size: var(--ant-font-size);
|
31
|
-
}
|
32
|
-
.ant-tabs-nav-wrap {
|
33
|
-
background-color: white;
|
34
|
-
padding-left: 1.5rem;
|
35
|
-
padding-right: 1.5rem;
|
36
|
-
}
|
37
|
-
.ant-tabs-nav::before{
|
38
|
-
content: '';
|
39
|
-
position: absolute;
|
40
|
-
right: 1.5rem;
|
41
|
-
left: 1.5rem;
|
42
|
-
z-index: 10;
|
43
|
-
border-bottom-width: var(--ant-line-width);
|
44
|
-
border-bottom-style: solid;
|
45
|
-
border-bottom-color: #E5E5E5;
|
46
|
-
}
|
47
|
-
}
|
48
|
-
&-capsule {
|
49
|
-
&__content {
|
50
|
-
padding-top: var(--ant-margin);
|
51
|
-
padding-bottom: var(--ant-margin);
|
52
|
-
box-sizing: border-box;
|
53
|
-
background-color: white;
|
54
|
-
padding-left: var(--ant-padding-lg);
|
55
|
-
padding-right: var(--ant-padding-lg);
|
56
|
-
}
|
57
|
-
.ant-radio-button-wrapper.ant-radio-button-wrapper-checked.css-var-r4.ant-radio-css-var {
|
58
|
-
padding-left: var(--ant-padding);
|
59
|
-
padding-right: var(--ant-padding);
|
60
|
-
box-sizing: border-box;
|
61
|
-
font-size: var(--ant-font-size);
|
62
|
-
color: var(--ant-color-primary);
|
63
|
-
}
|
64
|
-
.ant-radio-button.ant-radio-button-checked {
|
65
|
-
font-size: var(--ant-font-size);
|
66
|
-
color: var(--ant-color-primary);
|
67
|
-
}
|
68
|
-
&__value {
|
69
|
-
font-size: 14px;
|
70
|
-
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto,
|
71
|
-
'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji',
|
72
|
-
'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
|
73
|
-
color: #000000e0;
|
74
|
-
}
|
75
|
-
}
|
76
|
-
&-istabmargin {
|
77
|
-
.ant-tabs-nav {
|
78
|
-
margin-bottom: 0;
|
79
|
-
}
|
80
|
-
}
|
81
|
-
}
|
1
|
+
.yot-tabs {
|
2
|
+
&-large {
|
3
|
+
.ant-tabs-tab.ant-tabs-tab-active {
|
4
|
+
color: var(--ant-color-primary);
|
5
|
+
}
|
6
|
+
.ant-tabs-tab-btn {
|
7
|
+
font-size: var(--ant-font-size-lg);
|
8
|
+
}
|
9
|
+
.ant-tabs-nav-wrap {
|
10
|
+
background-color: white;
|
11
|
+
padding-left: 1.5rem;
|
12
|
+
padding-right: 1.5rem;
|
13
|
+
}
|
14
|
+
.ant-tabs-nav::before{
|
15
|
+
content: '';
|
16
|
+
position: absolute;
|
17
|
+
right: 1.5rem;
|
18
|
+
left: 1.5rem;
|
19
|
+
z-index: 10;
|
20
|
+
border-bottom-width: var(--ant-line-width);
|
21
|
+
border-bottom-style: solid;
|
22
|
+
border-bottom-color: #E5E5E5;
|
23
|
+
}
|
24
|
+
}
|
25
|
+
&-small {
|
26
|
+
.ant-tabs-tab.ant-tabs-tab-active {
|
27
|
+
color: var(--ant-color-primary);
|
28
|
+
}
|
29
|
+
.ant-tabs-tab-btn {
|
30
|
+
font-size: var(--ant-font-size);
|
31
|
+
}
|
32
|
+
.ant-tabs-nav-wrap {
|
33
|
+
background-color: white;
|
34
|
+
padding-left: 1.5rem;
|
35
|
+
padding-right: 1.5rem;
|
36
|
+
}
|
37
|
+
.ant-tabs-nav::before{
|
38
|
+
content: '';
|
39
|
+
position: absolute;
|
40
|
+
right: 1.5rem;
|
41
|
+
left: 1.5rem;
|
42
|
+
z-index: 10;
|
43
|
+
border-bottom-width: var(--ant-line-width);
|
44
|
+
border-bottom-style: solid;
|
45
|
+
border-bottom-color: #E5E5E5;
|
46
|
+
}
|
47
|
+
}
|
48
|
+
&-capsule {
|
49
|
+
&__content {
|
50
|
+
padding-top: var(--ant-margin);
|
51
|
+
padding-bottom: var(--ant-margin);
|
52
|
+
box-sizing: border-box;
|
53
|
+
background-color: white;
|
54
|
+
padding-left: var(--ant-padding-lg);
|
55
|
+
padding-right: var(--ant-padding-lg);
|
56
|
+
}
|
57
|
+
.ant-radio-button-wrapper.ant-radio-button-wrapper-checked.css-var-r4.ant-radio-css-var {
|
58
|
+
padding-left: var(--ant-padding);
|
59
|
+
padding-right: var(--ant-padding);
|
60
|
+
box-sizing: border-box;
|
61
|
+
font-size: var(--ant-font-size);
|
62
|
+
color: var(--ant-color-primary);
|
63
|
+
}
|
64
|
+
.ant-radio-button.ant-radio-button-checked {
|
65
|
+
font-size: var(--ant-font-size);
|
66
|
+
color: var(--ant-color-primary);
|
67
|
+
}
|
68
|
+
&__value {
|
69
|
+
font-size: 14px;
|
70
|
+
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto,
|
71
|
+
'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji',
|
72
|
+
'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
|
73
|
+
color: #000000e0;
|
74
|
+
}
|
75
|
+
}
|
76
|
+
&-istabmargin {
|
77
|
+
.ant-tabs-nav {
|
78
|
+
margin-bottom: 0;
|
79
|
+
}
|
80
|
+
}
|
81
|
+
}
|
package/dist/tag/index.scss
CHANGED
@@ -1,5 +1,5 @@
|
|
1
|
-
.yot-tag {
|
2
|
-
&__text {
|
3
|
-
font-weight: bold;
|
4
|
-
}
|
1
|
+
.yot-tag {
|
2
|
+
&__text {
|
3
|
+
font-weight: bold;
|
4
|
+
}
|
5
5
|
}
|
@@ -1,31 +1,31 @@
|
|
1
|
-
import { SelectProps } from 'yootd';
|
2
|
-
|
3
|
-
export interface PageData<T> {
|
4
|
-
content: T[];
|
5
|
-
page: {
|
6
|
-
number: number;
|
7
|
-
size: number;
|
8
|
-
totalElements: number;
|
9
|
-
totalPages: number;
|
10
|
-
};
|
11
|
-
}
|
12
|
-
// 查询老师返回的数据类型
|
13
|
-
export interface IteacherItem {
|
14
|
-
[key: string]: string | number;
|
15
|
-
userId: number; // 老师ID
|
16
|
-
personalName: string; // 老师姓名
|
17
|
-
personalMobile?: string; // 手机号
|
18
|
-
uniqueNumber?: string; // 工号
|
19
|
-
nationName?: string; // 民族
|
20
|
-
gender?: number; // 性别
|
21
|
-
}
|
22
|
-
type LabelOptions =
|
23
|
-
| 'personalName'
|
24
|
-
| 'uniqueNumber'
|
25
|
-
| 'personalMobile'
|
26
|
-
| 'nationName'
|
27
|
-
| 'genderName';
|
28
|
-
export type TeacherProps = SelectProps & {
|
29
|
-
label?: LabelOptions[];
|
30
|
-
connectors?: string;
|
31
|
-
};
|
1
|
+
import { SelectProps } from 'yootd';
|
2
|
+
|
3
|
+
export interface PageData<T> {
|
4
|
+
content: T[];
|
5
|
+
page: {
|
6
|
+
number: number;
|
7
|
+
size: number;
|
8
|
+
totalElements: number;
|
9
|
+
totalPages: number;
|
10
|
+
};
|
11
|
+
}
|
12
|
+
// 查询老师返回的数据类型
|
13
|
+
export interface IteacherItem {
|
14
|
+
[key: string]: string | number;
|
15
|
+
userId: number; // 老师ID
|
16
|
+
personalName: string; // 老师姓名
|
17
|
+
personalMobile?: string; // 手机号
|
18
|
+
uniqueNumber?: string; // 工号
|
19
|
+
nationName?: string; // 民族
|
20
|
+
gender?: number; // 性别
|
21
|
+
}
|
22
|
+
type LabelOptions =
|
23
|
+
| 'personalName'
|
24
|
+
| 'uniqueNumber'
|
25
|
+
| 'personalMobile'
|
26
|
+
| 'nationName'
|
27
|
+
| 'genderName';
|
28
|
+
export type TeacherProps = SelectProps & {
|
29
|
+
label?: LabelOptions[];
|
30
|
+
connectors?: string;
|
31
|
+
};
|
package/dist/tree/index.scss
CHANGED
@@ -1,25 +1,25 @@
|
|
1
|
-
.yot-tree {
|
2
|
-
.ant-tree-node-content-wrapper.ant-tree-node-selected {
|
3
|
-
background-color: var(--ant-color-primary-bg);
|
4
|
-
.ant-tree-title {
|
5
|
-
color: var(--ant-color-primary);
|
6
|
-
}
|
7
|
-
}
|
8
|
-
.ant-tree-node-content-wrapper {
|
9
|
-
.ant-tree-title {
|
10
|
-
color: var(--ant-color-text-secondary);
|
11
|
-
}
|
12
|
-
}
|
13
|
-
&__icon {
|
14
|
-
margin-top: 2px;
|
15
|
-
&.yot-is-selected {
|
16
|
-
.path-1 {
|
17
|
-
stroke: var(--ant-color-primary);
|
18
|
-
}
|
19
|
-
.path-2,
|
20
|
-
.rect-1 {
|
21
|
-
fill: var(--ant-color-primary);
|
22
|
-
}
|
23
|
-
}
|
24
|
-
}
|
25
|
-
}
|
1
|
+
.yot-tree {
|
2
|
+
.ant-tree-node-content-wrapper.ant-tree-node-selected {
|
3
|
+
background-color: var(--ant-color-primary-bg);
|
4
|
+
.ant-tree-title {
|
5
|
+
color: var(--ant-color-primary);
|
6
|
+
}
|
7
|
+
}
|
8
|
+
.ant-tree-node-content-wrapper {
|
9
|
+
.ant-tree-title {
|
10
|
+
color: var(--ant-color-text-secondary);
|
11
|
+
}
|
12
|
+
}
|
13
|
+
&__icon {
|
14
|
+
margin-top: 2px;
|
15
|
+
&.yot-is-selected {
|
16
|
+
.path-1 {
|
17
|
+
stroke: var(--ant-color-primary);
|
18
|
+
}
|
19
|
+
.path-2,
|
20
|
+
.rect-1 {
|
21
|
+
fill: var(--ant-color-primary);
|
22
|
+
}
|
23
|
+
}
|
24
|
+
}
|
25
|
+
}
|
package/dist/upload/index.scss
CHANGED
@@ -1,115 +1,115 @@
|
|
1
|
-
.yot-upload {
|
2
|
-
.ant-upload-list-item {
|
3
|
-
padding: 0;
|
4
|
-
}
|
5
|
-
.ant-upload-list-item.ant-upload-list-item-done {
|
6
|
-
.ant-upload-icon {
|
7
|
-
.anticon.anticon-paper-clip {
|
8
|
-
color: var(--ant-color-primary);
|
9
|
-
}
|
10
|
-
}
|
11
|
-
}
|
12
|
-
.ant-upload-list-item-name {
|
13
|
-
display: flex;
|
14
|
-
align-items: center;
|
15
|
-
}
|
16
|
-
|
17
|
-
&-file {
|
18
|
-
&-btn {
|
19
|
-
&__icon {
|
20
|
-
width: 16px;
|
21
|
-
height: 16px;
|
22
|
-
}
|
23
|
-
&:hover &{
|
24
|
-
&__icon {
|
25
|
-
.path-1 {
|
26
|
-
fill: var(--ant-color-primary);
|
27
|
-
width: 20px;
|
28
|
-
}
|
29
|
-
}
|
30
|
-
}
|
31
|
-
}
|
32
|
-
}
|
33
|
-
&__icon {
|
34
|
-
&--success {
|
35
|
-
width: 16px;
|
36
|
-
height: 16px;
|
37
|
-
position: absolute;
|
38
|
-
top: 0px;
|
39
|
-
right: 24px;
|
40
|
-
}
|
41
|
-
&--again {
|
42
|
-
width: 16px;
|
43
|
-
height: 16px;
|
44
|
-
position: absolute;
|
45
|
-
top: 0px;
|
46
|
-
right: 24px;
|
47
|
-
}
|
48
|
-
&--delete {
|
49
|
-
width: 16px;
|
50
|
-
height: 16px;
|
51
|
-
position: absolute;
|
52
|
-
top: 0px;
|
53
|
-
right: 2px;
|
54
|
-
}
|
55
|
-
}
|
56
|
-
|
57
|
-
&-image {
|
58
|
-
&-btn {
|
59
|
-
width: 100px;
|
60
|
-
height: 100px;
|
61
|
-
border-radius: 8px;
|
62
|
-
background-color: var(--ant-color-border-secondary);
|
63
|
-
display: flex;
|
64
|
-
align-items: center;
|
65
|
-
justify-content: center;
|
66
|
-
flex-direction: column;
|
67
|
-
&__text {
|
68
|
-
font-size: 12px;
|
69
|
-
color: var(--ant-color-text-quaternary);
|
70
|
-
margin-top: 8px;
|
71
|
-
}
|
72
|
-
}
|
73
|
-
}
|
74
|
-
&-video {
|
75
|
-
&-content {
|
76
|
-
position: relative;
|
77
|
-
width: 102px;
|
78
|
-
height: 102px;
|
79
|
-
border-radius: 4px;
|
80
|
-
cursor: pointer;
|
81
|
-
padding: 8px;
|
82
|
-
box-sizing: border-box;
|
83
|
-
border: 1px solid var(--ant-color-border-secondary);
|
84
|
-
&__video {
|
85
|
-
width: 100%;
|
86
|
-
height: 100%;
|
87
|
-
}
|
88
|
-
&:hover &{
|
89
|
-
&-icon {
|
90
|
-
z-index: 10;
|
91
|
-
transition: all;
|
92
|
-
box-sizing: border-box;
|
93
|
-
position: absolute;
|
94
|
-
top: 8px;
|
95
|
-
left: 8px;
|
96
|
-
height: 86px;
|
97
|
-
width: 86px;
|
98
|
-
/* 这里的背景色根据需求设置 */
|
99
|
-
background: rgba(0, 0, 0, 0.6) !important;
|
100
|
-
background-color: #000;
|
101
|
-
filter: Alpha(Opacity=60);
|
102
|
-
opacity: 0.6;
|
103
|
-
&--delete {
|
104
|
-
width: 16px;
|
105
|
-
height: 16px;
|
106
|
-
position: absolute;
|
107
|
-
top: 36px;
|
108
|
-
left: 40%;
|
109
|
-
cursor: pointer;
|
110
|
-
}
|
111
|
-
}
|
112
|
-
}
|
113
|
-
}
|
114
|
-
}
|
115
|
-
}
|
1
|
+
.yot-upload {
|
2
|
+
.ant-upload-list-item {
|
3
|
+
padding: 0;
|
4
|
+
}
|
5
|
+
.ant-upload-list-item.ant-upload-list-item-done {
|
6
|
+
.ant-upload-icon {
|
7
|
+
.anticon.anticon-paper-clip {
|
8
|
+
color: var(--ant-color-primary);
|
9
|
+
}
|
10
|
+
}
|
11
|
+
}
|
12
|
+
.ant-upload-list-item-name {
|
13
|
+
display: flex;
|
14
|
+
align-items: center;
|
15
|
+
}
|
16
|
+
|
17
|
+
&-file {
|
18
|
+
&-btn {
|
19
|
+
&__icon {
|
20
|
+
width: 16px;
|
21
|
+
height: 16px;
|
22
|
+
}
|
23
|
+
&:hover &{
|
24
|
+
&__icon {
|
25
|
+
.path-1 {
|
26
|
+
fill: var(--ant-color-primary);
|
27
|
+
width: 20px;
|
28
|
+
}
|
29
|
+
}
|
30
|
+
}
|
31
|
+
}
|
32
|
+
}
|
33
|
+
&__icon {
|
34
|
+
&--success {
|
35
|
+
width: 16px;
|
36
|
+
height: 16px;
|
37
|
+
position: absolute;
|
38
|
+
top: 0px;
|
39
|
+
right: 24px;
|
40
|
+
}
|
41
|
+
&--again {
|
42
|
+
width: 16px;
|
43
|
+
height: 16px;
|
44
|
+
position: absolute;
|
45
|
+
top: 0px;
|
46
|
+
right: 24px;
|
47
|
+
}
|
48
|
+
&--delete {
|
49
|
+
width: 16px;
|
50
|
+
height: 16px;
|
51
|
+
position: absolute;
|
52
|
+
top: 0px;
|
53
|
+
right: 2px;
|
54
|
+
}
|
55
|
+
}
|
56
|
+
|
57
|
+
&-image {
|
58
|
+
&-btn {
|
59
|
+
width: 100px;
|
60
|
+
height: 100px;
|
61
|
+
border-radius: 8px;
|
62
|
+
background-color: var(--ant-color-border-secondary);
|
63
|
+
display: flex;
|
64
|
+
align-items: center;
|
65
|
+
justify-content: center;
|
66
|
+
flex-direction: column;
|
67
|
+
&__text {
|
68
|
+
font-size: 12px;
|
69
|
+
color: var(--ant-color-text-quaternary);
|
70
|
+
margin-top: 8px;
|
71
|
+
}
|
72
|
+
}
|
73
|
+
}
|
74
|
+
&-video {
|
75
|
+
&-content {
|
76
|
+
position: relative;
|
77
|
+
width: 102px;
|
78
|
+
height: 102px;
|
79
|
+
border-radius: 4px;
|
80
|
+
cursor: pointer;
|
81
|
+
padding: 8px;
|
82
|
+
box-sizing: border-box;
|
83
|
+
border: 1px solid var(--ant-color-border-secondary);
|
84
|
+
&__video {
|
85
|
+
width: 100%;
|
86
|
+
height: 100%;
|
87
|
+
}
|
88
|
+
&:hover &{
|
89
|
+
&-icon {
|
90
|
+
z-index: 10;
|
91
|
+
transition: all;
|
92
|
+
box-sizing: border-box;
|
93
|
+
position: absolute;
|
94
|
+
top: 8px;
|
95
|
+
left: 8px;
|
96
|
+
height: 86px;
|
97
|
+
width: 86px;
|
98
|
+
/* 这里的背景色根据需求设置 */
|
99
|
+
background: rgba(0, 0, 0, 0.6) !important;
|
100
|
+
background-color: #000;
|
101
|
+
filter: Alpha(Opacity=60);
|
102
|
+
opacity: 0.6;
|
103
|
+
&--delete {
|
104
|
+
width: 16px;
|
105
|
+
height: 16px;
|
106
|
+
position: absolute;
|
107
|
+
top: 36px;
|
108
|
+
left: 40%;
|
109
|
+
cursor: pointer;
|
110
|
+
}
|
111
|
+
}
|
112
|
+
}
|
113
|
+
}
|
114
|
+
}
|
115
|
+
}
|
@@ -1,45 +1,45 @@
|
|
1
|
-
import { SelectProps } from 'yootd';
|
2
|
-
|
3
|
-
export interface PageData<T> {
|
4
|
-
content: T[];
|
5
|
-
page: {
|
6
|
-
number: number;
|
7
|
-
size: number;
|
8
|
-
totalElements: number;
|
9
|
-
totalPages: number;
|
10
|
-
};
|
11
|
-
}
|
12
|
-
type LabelOptions =
|
13
|
-
| 'uniqueNumber'
|
14
|
-
| 'personalName'
|
15
|
-
| 'majorName'
|
16
|
-
| 'collegeMajorName'
|
17
|
-
| 'className'
|
18
|
-
| 'gradeName'
|
19
|
-
| 'genderName'
|
20
|
-
| 'deptName'
|
21
|
-
| 'credentialsNo'
|
22
|
-
| 'personalMobile';
|
23
|
-
export type UserDropdownProps = SelectProps & {
|
24
|
-
type?: number; // 1:学生2:教师3:职工
|
25
|
-
label?: LabelOptions[];
|
26
|
-
connectors?: string;
|
27
|
-
teacher_id?: number;
|
28
|
-
};
|
29
|
-
export interface IuserItem {
|
30
|
-
userId: string; // ID
|
31
|
-
uniqueNumber?: string; // 学号/工号
|
32
|
-
personalName: string; // 姓名
|
33
|
-
personalPhoto?: string; // 照片
|
34
|
-
userFaceType?: number; // 人脸类型(1白名单2黑名单3红名单)
|
35
|
-
majorName?: string; // 专业名称
|
36
|
-
collegeMajorName?: string; // 院系名称
|
37
|
-
className?: string; // 班级名称
|
38
|
-
gradeName?: string; // 年级名称
|
39
|
-
genderName?: string; // 性别
|
40
|
-
deptId?: number; // 部门ID
|
41
|
-
deptName?: string; // 部门名称
|
42
|
-
gender?: number; // 性别
|
43
|
-
credentialsNo?: string; // 证件号
|
44
|
-
personalMobile?: string; // 手机号
|
45
|
-
}
|
1
|
+
import { SelectProps } from 'yootd';
|
2
|
+
|
3
|
+
export interface PageData<T> {
|
4
|
+
content: T[];
|
5
|
+
page: {
|
6
|
+
number: number;
|
7
|
+
size: number;
|
8
|
+
totalElements: number;
|
9
|
+
totalPages: number;
|
10
|
+
};
|
11
|
+
}
|
12
|
+
type LabelOptions =
|
13
|
+
| 'uniqueNumber'
|
14
|
+
| 'personalName'
|
15
|
+
| 'majorName'
|
16
|
+
| 'collegeMajorName'
|
17
|
+
| 'className'
|
18
|
+
| 'gradeName'
|
19
|
+
| 'genderName'
|
20
|
+
| 'deptName'
|
21
|
+
| 'credentialsNo'
|
22
|
+
| 'personalMobile';
|
23
|
+
export type UserDropdownProps = SelectProps & {
|
24
|
+
type?: number; // 1:学生2:教师3:职工
|
25
|
+
label?: LabelOptions[];
|
26
|
+
connectors?: string;
|
27
|
+
teacher_id?: number;
|
28
|
+
};
|
29
|
+
export interface IuserItem {
|
30
|
+
userId: string; // ID
|
31
|
+
uniqueNumber?: string; // 学号/工号
|
32
|
+
personalName: string; // 姓名
|
33
|
+
personalPhoto?: string; // 照片
|
34
|
+
userFaceType?: number; // 人脸类型(1白名单2黑名单3红名单)
|
35
|
+
majorName?: string; // 专业名称
|
36
|
+
collegeMajorName?: string; // 院系名称
|
37
|
+
className?: string; // 班级名称
|
38
|
+
gradeName?: string; // 年级名称
|
39
|
+
genderName?: string; // 性别
|
40
|
+
deptId?: number; // 部门ID
|
41
|
+
deptName?: string; // 部门名称
|
42
|
+
gender?: number; // 性别
|
43
|
+
credentialsNo?: string; // 证件号
|
44
|
+
personalMobile?: string; // 手机号
|
45
|
+
}
|
Binary file
|
@@ -0,0 +1 @@
|
|
1
|
+
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1698128671512" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="906" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M177.26002244 1020.68826978c-8.39476931 0-16.78529945-2.08703457-24.36334146-6.21023633-16.33313206-8.95150085-26.50548539-26.04060047-26.50548539-44.65859052L126.39119559 54.20316557c0-18.61799004 10.17235194-35.76219902 26.50548539-44.66565629 16.27661148-8.95291345 36.21436639-8.18564235 51.88479014 1.88214681L916.92809291 469.23344724c14.54989766 9.35562463 23.34737815 25.48528291 23.34737816 42.77785771 0 17.29257478-8.79748049 33.42081908-23.34737816 42.78209687L204.78147112 1012.60153981C196.38528784 1017.94559264 186.82618801 1020.68826978 177.26002244 1020.68826978L177.26002244 1020.68826978zM177.26002244 1020.68826978" fill="#ffffff" p-id="907"></path></svg>
|
@@ -0,0 +1,70 @@
|
|
1
|
+
import { CSSProperties, FC } from 'react';
|
2
|
+
import './index.scss';
|
3
|
+
export interface VideoPlayerProps {
|
4
|
+
/**
|
5
|
+
* 视频地址
|
6
|
+
*/
|
7
|
+
src: string;
|
8
|
+
/**
|
9
|
+
* 是否为直播视频
|
10
|
+
*/
|
11
|
+
isLive?: boolean;
|
12
|
+
/**
|
13
|
+
* 是否展示控制面板
|
14
|
+
*/
|
15
|
+
controls?: boolean;
|
16
|
+
/**
|
17
|
+
* 是否自动播放
|
18
|
+
*/
|
19
|
+
autoPlay?: boolean;
|
20
|
+
/**
|
21
|
+
* 是否获取视频流
|
22
|
+
*/
|
23
|
+
videoEnable?: boolean;
|
24
|
+
/**
|
25
|
+
* 是否获取音频流
|
26
|
+
*/
|
27
|
+
audioEnable?: boolean;
|
28
|
+
/**
|
29
|
+
* 是否静音
|
30
|
+
*/
|
31
|
+
muted?: boolean;
|
32
|
+
/**
|
33
|
+
* 是否在微信小程序中使用
|
34
|
+
*/
|
35
|
+
miniProgram?: boolean;
|
36
|
+
/**
|
37
|
+
* 是否旋转全屏
|
38
|
+
*/
|
39
|
+
rotateWhenFullScreen?: boolean;
|
40
|
+
/**
|
41
|
+
* 视频封面
|
42
|
+
*/
|
43
|
+
poster?: string;
|
44
|
+
/**
|
45
|
+
* 截图回调
|
46
|
+
*/
|
47
|
+
onCapture?: (base64: string) => void;
|
48
|
+
/**
|
49
|
+
* 是否重试
|
50
|
+
*/
|
51
|
+
retry?: boolean;
|
52
|
+
/**
|
53
|
+
* 重试间隔
|
54
|
+
*/
|
55
|
+
retryInterval?: number;
|
56
|
+
/**
|
57
|
+
* 额外样式
|
58
|
+
*/
|
59
|
+
style?: CSSProperties;
|
60
|
+
/**
|
61
|
+
* 类名,用于覆盖默认样式
|
62
|
+
*/
|
63
|
+
className?: string;
|
64
|
+
/**
|
65
|
+
* 播放状态变化回调
|
66
|
+
* @param isPlaying
|
67
|
+
*/
|
68
|
+
onPlayStateChange?: (isPlaying: boolean) => void;
|
69
|
+
}
|
70
|
+
export declare const VideoPlayer: FC<VideoPlayerProps>;
|