yootd 0.0.67 → 0.0.69

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 (63) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +43 -43
  3. package/dist/Preview/components/preview/phone.scss +8 -8
  4. package/dist/Preview/index.scss +35 -35
  5. package/dist/Preview/types/type.d.ts +22 -22
  6. package/dist/anchor/index.scss +23 -23
  7. package/dist/approval-process/index.scss +95 -95
  8. package/dist/areas/index.scss +21 -21
  9. package/dist/areas/types/types.d.ts +40 -40
  10. package/dist/areas-treeSelect/index.scss +6 -6
  11. package/dist/areas-treeSelect/types/type.d.ts +39 -39
  12. package/dist/aside/components/SortableItem.scss +111 -111
  13. package/dist/aside/index.scss +46 -46
  14. package/dist/badge/index.scss +5 -5
  15. package/dist/buildings/types/types.d.ts +21 -21
  16. package/dist/button/index.scss +30 -30
  17. package/dist/cascader/index.scss +5 -5
  18. package/dist/courses/types/types.d.ts +18 -18
  19. package/dist/department/index.scss +6 -6
  20. package/dist/department/types/types.d.ts +23 -23
  21. package/dist/dictionary/types/types.d.ts +14 -14
  22. package/dist/drawer-modal/index.scss +42 -42
  23. package/dist/drawer-modal/types/types.d.ts +3 -3
  24. package/dist/dropdown/assets/arrow-down.svg +5 -5
  25. package/dist/dropdown-select/index.scss +6 -6
  26. package/dist/dropdown-select/types/type.d.ts +18 -18
  27. package/dist/empty/index.scss +15 -15
  28. package/dist/export/index.scss +6 -6
  29. package/dist/go-back/components/index.scss +5 -5
  30. package/dist/go-back/index.scss +24 -24
  31. package/dist/group-title/index.scss +31 -31
  32. package/dist/hooks/useBem.js +10 -10
  33. package/dist/image/index.scss +26 -26
  34. package/dist/input/index.scss +5 -5
  35. package/dist/job-title/types/types.d.ts +17 -17
  36. package/dist/modal/index.scss +76 -76
  37. package/dist/pagination/index.scss +47 -47
  38. package/dist/role/types/types.d.ts +22 -22
  39. package/dist/school/index.scss +21 -21
  40. package/dist/school/types/types.d.ts +85 -85
  41. package/dist/state/index.scss +89 -89
  42. package/dist/steps/index.scss +32 -32
  43. package/dist/student-dropdown/types/types.d.ts +44 -44
  44. package/dist/table/components/primary-header-row/index.js +10 -3
  45. package/dist/table/components/primary-header-row/index.scss +65 -58
  46. package/dist/table/components/primary-tbody-row/index.scss +5 -5
  47. package/dist/table/index.d.ts +2 -0
  48. package/dist/table/index.js +4 -2
  49. package/dist/table/index.scss +33 -33
  50. package/dist/tabs/index.scss +86 -86
  51. package/dist/tag/index.scss +4 -4
  52. package/dist/teacher/types/types.d.ts +33 -33
  53. package/dist/tree/index.scss +25 -25
  54. package/dist/upload/index.scss +115 -115
  55. package/dist/user-dropdown/types/types.d.ts +45 -45
  56. package/dist/video-player/index.d.ts +7 -0
  57. package/dist/video-player/index.js +31 -11
  58. package/dist/video-player/index.scss +310 -310
  59. package/dist/year-term/index.scss +21 -21
  60. package/dist/zones/index.module.scss +23 -23
  61. package/dist/zones/types/types.d.ts +26 -26
  62. package/package.json +1 -1
  63. package/dist/table/index.module.scss +0 -9
@@ -1,44 +1,44 @@
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 StudentDropdownProps = SelectProps & {
24
- label?: LabelOptions[];
25
- connectors?: string;
26
- teacher_id: number;
27
- };
28
- export interface IuserItem {
29
- userId: string; // ID
30
- uniqueNumber?: string; // 学号/工号
31
- personalName: string; // 姓名
32
- personalPhoto?: string; // 照片
33
- userFaceType?: number; // 人脸类型(1白名单2黑名单3红名单)
34
- majorName?: string; // 专业名称
35
- collegeMajorName?: string; // 院系名称
36
- className?: string; // 班级名称
37
- gradeName?: string; // 年级名称
38
- genderName?: string; // 性别
39
- deptId?: number; // 部门ID
40
- deptName?: string; // 部门名称
41
- gender?: number; // 性别
42
- credentialsNo?: string; // 证件号
43
- personalMobile?: string; // 手机号
44
- }
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 StudentDropdownProps = SelectProps & {
24
+ label?: LabelOptions[];
25
+ connectors?: string;
26
+ teacher_id: number;
27
+ };
28
+ export interface IuserItem {
29
+ userId: string; // ID
30
+ uniqueNumber?: string; // 学号/工号
31
+ personalName: string; // 姓名
32
+ personalPhoto?: string; // 照片
33
+ userFaceType?: number; // 人脸类型(1白名单2黑名单3红名单)
34
+ majorName?: string; // 专业名称
35
+ collegeMajorName?: string; // 院系名称
36
+ className?: string; // 班级名称
37
+ gradeName?: string; // 年级名称
38
+ genderName?: string; // 性别
39
+ deptId?: number; // 部门ID
40
+ deptName?: string; // 部门名称
41
+ gender?: number; // 性别
42
+ credentialsNo?: string; // 证件号
43
+ personalMobile?: string; // 手机号
44
+ }
@@ -1,6 +1,6 @@
1
1
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
2
  var _excluded = ["rowKey"],
3
- _excluded2 = ["children", "className"],
3
+ _excluded2 = ["children", "className", "style"],
4
4
  _excluded3 = ["key"];
5
5
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
6
6
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
@@ -64,6 +64,7 @@ export var PrimaryHeaderRow = function PrimaryHeaderRow(_ref2) {
64
64
  var _columns$map2;
65
65
  var children = _ref2.children,
66
66
  className = _ref2.className,
67
+ style = _ref2.style,
67
68
  props = _objectWithoutProperties(_ref2, _excluded2);
68
69
  var _useContext = useContext(TableRowContext),
69
70
  columns = _useContext.columns,
@@ -71,7 +72,8 @@ export var PrimaryHeaderRow = function PrimaryHeaderRow(_ref2) {
71
72
  keys = _useContext.keys,
72
73
  updateKeys = _useContext.updateKeys,
73
74
  type = _useContext.type,
74
- showSetting = _useContext.showSetting;
75
+ showSetting = _useContext.showSetting,
76
+ color = _useContext.color;
75
77
  var bem = useBem('table');
76
78
  var handleDragEnd = function handleDragEnd(event) {
77
79
  var active = event.active,
@@ -90,7 +92,12 @@ export var PrimaryHeaderRow = function PrimaryHeaderRow(_ref2) {
90
92
  })) !== null && _columns$map !== void 0 ? _columns$map : [] : []);
91
93
  };
92
94
  return /*#__PURE__*/React.createElement("tr", _extends({
93
- className: "".concat(type === 'primary' ? bem.b('thead').b('row').m('primary') : '', " ").concat(className !== null && className !== void 0 ? className : '')
95
+ className: "".concat(type === 'primary' ? bem.b('thead').b('row').m('primary') : '', " ").concat(color != null ? bem.b('thead').b('row').m('colored') : '', " ").concat(className !== null && className !== void 0 ? className : '')
96
+ // @ts-expect-error
97
+ ,
98
+ style: _objectSpread(_objectSpread({}, style !== null && style !== void 0 ? style : {}), {}, {
99
+ '--th-bg-color': color
100
+ })
94
101
  }, props), children, showSetting ? /*#__PURE__*/React.createElement("th", {
95
102
  className: "ant-table-cell ".concat(bem.b('setting'), " ").concat(type === 'primary' ? bem.b('setting').m('primary') : '')
96
103
  }, /*#__PURE__*/React.createElement("div", {
@@ -1,58 +1,65 @@
1
- .yot-table {
2
- &-thead {
3
- &-row {
4
- &--primary {
5
- th {
6
- background-color: var(--ant-color-primary) !important;
7
- color: #fff !important;
8
- }
9
- }
10
- }
11
- }
12
-
13
- &-setting {
14
- width: 48px;
15
-
16
- &-content {
17
- flex: 1;
18
- display: flex;
19
- justify-content: center;
20
- }
21
-
22
- &-checkbox-group {
23
- min-width: 200px;
24
- display: flex;
25
- flex-direction: column;
26
- }
27
-
28
- &__check-all {
29
- margin-bottom: 5px;
30
- }
31
-
32
- &-checkbox {
33
- display: flex;
34
- align-items: center;
35
- margin-bottom: 5px;
36
- }
37
-
38
- &__drag-handler {
39
- margin-right: 20px;
40
- cursor: grab;
41
- }
42
-
43
- &__icon {
44
- cursor: pointer;
45
- path {
46
- fill: var(--ant-color-text-tertiary);
47
- }
48
- }
49
-
50
- &--primary & {
51
- &__icon {
52
- path {
53
- fill: #fff;
54
- }
55
- }
56
- }
57
- }
58
- }
1
+ .yot-table {
2
+ &-thead {
3
+ &-row {
4
+ &--primary {
5
+ th {
6
+ background-color: var(--ant-color-primary) !important;
7
+ color: #fff !important;
8
+ }
9
+ }
10
+
11
+ &--colored {
12
+ th {
13
+ background-color: var(--th-bg-color) !important;
14
+ color: #fff !important;
15
+ }
16
+ }
17
+ }
18
+ }
19
+
20
+ &-setting {
21
+ width: 48px;
22
+
23
+ &-content {
24
+ flex: 1;
25
+ display: flex;
26
+ justify-content: center;
27
+ }
28
+
29
+ &-checkbox-group {
30
+ min-width: 200px;
31
+ display: flex;
32
+ flex-direction: column;
33
+ }
34
+
35
+ &__check-all {
36
+ margin-bottom: 5px;
37
+ }
38
+
39
+ &-checkbox {
40
+ display: flex;
41
+ align-items: center;
42
+ margin-bottom: 5px;
43
+ }
44
+
45
+ &__drag-handler {
46
+ margin-right: 20px;
47
+ cursor: grab;
48
+ }
49
+
50
+ &__icon {
51
+ cursor: pointer;
52
+ path {
53
+ fill: var(--ant-color-text-tertiary);
54
+ }
55
+ }
56
+
57
+ &--primary & {
58
+ &__icon {
59
+ path {
60
+ fill: #fff;
61
+ }
62
+ }
63
+ }
64
+ }
65
+ }
@@ -1,5 +1,5 @@
1
- .yot-table {
2
- &-setting {
3
- width: 48px;
4
- }
5
- }
1
+ .yot-table {
2
+ &-setting {
3
+ width: 48px;
4
+ }
5
+ }
@@ -11,6 +11,7 @@ export type { ColumnFilterItem, ColumnTitle, ColumnTitleProps, CompareFn, Expand
11
11
  export interface TableProps<T = AnyObject> extends Omit<AntTableProps<T>, 'columns'> {
12
12
  columns?: ColumnsType<T>;
13
13
  type?: 'primary' | 'default';
14
+ color?: string;
14
15
  showSetting?: boolean;
15
16
  }
16
17
  export interface ColumnType<T = AnyObject> extends Omit<AntColumnType<T>, 'key'> {
@@ -34,6 +35,7 @@ export interface ITableRowContext {
34
35
  updateKeys?: (keys: React.Key[]) => void;
35
36
  showSetting?: boolean;
36
37
  type?: 'primary' | 'default';
38
+ color?: string;
37
39
  }
38
40
  export declare const TableRowContext: React.Context<ITableRowContext>;
39
41
  declare const Table: RefTable & {
@@ -1,4 +1,4 @@
1
- var _excluded = ["type", "showSetting", "columns", "components"];
1
+ var _excluded = ["type", "showSetting", "columns", "components", "color"];
2
2
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
3
3
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
4
4
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
@@ -29,6 +29,7 @@ var InternalTable = function InternalTable(_ref, ref) {
29
29
  showSetting = _ref.showSetting,
30
30
  columns = _ref.columns,
31
31
  components = _ref.components,
32
+ color = _ref.color,
32
33
  rest = _objectWithoutProperties(_ref, _excluded);
33
34
  var _useState = useState([]),
34
35
  _useState2 = _slicedToArray(_useState, 2),
@@ -125,7 +126,8 @@ var InternalTable = function InternalTable(_ref, ref) {
125
126
  swapColumns: swapColumns,
126
127
  updateKeys: updateKeys,
127
128
  showSetting: showSetting,
128
- type: type
129
+ type: type,
130
+ color: color
129
131
  }
130
132
  }, /*#__PURE__*/React.createElement(AntTable, _extends({}, rest, {
131
133
  ref: ref,
@@ -1,33 +1,33 @@
1
- .yot-table {
2
- // .yot-table {
3
- // &--primary {
4
- // .ant-table-container {
5
- // .ant-table-content {
6
- // thead {
7
- // tr {
8
- // th {
9
- // background-color: var(--ant-color-primary);
10
- // color: var(--ant-color-bg-base);
11
- // }
12
- // }
13
- // }
14
- // }
15
- // }
16
- // }
17
-
18
- &-header {
19
- &:hover {
20
- &__icon {
21
- position: absolute;
22
- right: 16px;
23
- top: 50%;
24
- transform: translateY(-50%);
25
- cursor: pointer;
26
-
27
- path {
28
- fill: var(--ant-color-primary-bg);
29
- }
30
- }
31
- }
32
- }
33
- }
1
+ .yot-table {
2
+ // .yot-table {
3
+ // &--primary {
4
+ // .ant-table-container {
5
+ // .ant-table-content {
6
+ // thead {
7
+ // tr {
8
+ // th {
9
+ // background-color: var(--ant-color-primary);
10
+ // color: var(--ant-color-bg-base);
11
+ // }
12
+ // }
13
+ // }
14
+ // }
15
+ // }
16
+ // }
17
+
18
+ &-header {
19
+ &:hover {
20
+ &__icon {
21
+ position: absolute;
22
+ right: 16px;
23
+ top: 50%;
24
+ transform: translateY(-50%);
25
+ cursor: pointer;
26
+
27
+ path {
28
+ fill: var(--ant-color-primary-bg);
29
+ }
30
+ }
31
+ }
32
+ }
33
+ }
@@ -1,86 +1,86 @@
1
- .yot-tabs {
2
- // 覆盖 ant 默认样式
3
- .ant-tabs-top > .ant-tabs-nav .ant-tabs-ink-bar,
4
- .ant-tabs-top > div > .ant-tabs-nav .ant-tabs-ink-bar {
5
- bottom: 1px;
6
- }
7
- &-large {
8
- .ant-tabs-tab.ant-tabs-tab-active {
9
- color: var(--ant-color-primary);
10
- }
11
- .ant-tabs-tab-btn {
12
- font-size: var(--ant-font-size-lg);
13
- }
14
- .ant-tabs-nav-wrap {
15
- background-color: white;
16
- padding-left: 1.5rem;
17
- padding-right: 1.5rem;
18
- }
19
- .ant-tabs-nav::before {
20
- content: '';
21
- position: absolute;
22
- right: 1.5rem;
23
- left: 1.5rem;
24
- z-index: 10;
25
- border-bottom-width: var(--ant-line-width);
26
- border-bottom-style: solid;
27
- border-bottom-color: #e5e5e5;
28
- }
29
- }
30
- &-small {
31
- .ant-tabs-tab.ant-tabs-tab-active {
32
- color: var(--ant-color-primary);
33
- }
34
- .ant-tabs-tab-btn {
35
- font-size: var(--ant-font-size);
36
- }
37
- .ant-tabs-nav-wrap {
38
- background-color: white;
39
- padding-left: 1.5rem;
40
- padding-right: 1.5rem;
41
- }
42
- .ant-tabs-nav::before {
43
- content: '';
44
- position: absolute;
45
- right: 1.5rem;
46
- left: 1.5rem;
47
- z-index: 10;
48
- border-bottom-width: var(--ant-line-width);
49
- border-bottom-style: solid;
50
- border-bottom-color: #e5e5e5;
51
- }
52
- }
53
- &-capsule {
54
- &__content {
55
- padding-top: var(--ant-margin);
56
- padding-bottom: var(--ant-margin);
57
- box-sizing: border-box;
58
- background-color: white;
59
- padding-left: var(--ant-padding-lg);
60
- padding-right: var(--ant-padding-lg);
61
- }
62
- .ant-radio-button-wrapper.ant-radio-button-wrapper-checked.css-var-r4.ant-radio-css-var {
63
- padding-left: var(--ant-padding);
64
- padding-right: var(--ant-padding);
65
- box-sizing: border-box;
66
- font-size: var(--ant-font-size);
67
- color: var(--ant-color-primary);
68
- }
69
- .ant-radio-button.ant-radio-button-checked {
70
- font-size: var(--ant-font-size);
71
- color: var(--ant-color-primary);
72
- }
73
- &__value {
74
- font-size: 14px;
75
- font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto,
76
- 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji',
77
- 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
78
- color: #000000e0;
79
- }
80
- }
81
- &-istabmargin {
82
- .ant-tabs-nav {
83
- margin-bottom: 0;
84
- }
85
- }
86
- }
1
+ .yot-tabs {
2
+ // 覆盖 ant 默认样式
3
+ .ant-tabs-top > .ant-tabs-nav .ant-tabs-ink-bar,
4
+ .ant-tabs-top > div > .ant-tabs-nav .ant-tabs-ink-bar {
5
+ bottom: 1px;
6
+ }
7
+ &-large {
8
+ .ant-tabs-tab.ant-tabs-tab-active {
9
+ color: var(--ant-color-primary);
10
+ }
11
+ .ant-tabs-tab-btn {
12
+ font-size: var(--ant-font-size-lg);
13
+ }
14
+ .ant-tabs-nav-wrap {
15
+ background-color: white;
16
+ padding-left: 1.5rem;
17
+ padding-right: 1.5rem;
18
+ }
19
+ .ant-tabs-nav::before {
20
+ content: '';
21
+ position: absolute;
22
+ right: 1.5rem;
23
+ left: 1.5rem;
24
+ z-index: 10;
25
+ border-bottom-width: var(--ant-line-width);
26
+ border-bottom-style: solid;
27
+ border-bottom-color: #e5e5e5;
28
+ }
29
+ }
30
+ &-small {
31
+ .ant-tabs-tab.ant-tabs-tab-active {
32
+ color: var(--ant-color-primary);
33
+ }
34
+ .ant-tabs-tab-btn {
35
+ font-size: var(--ant-font-size);
36
+ }
37
+ .ant-tabs-nav-wrap {
38
+ background-color: white;
39
+ padding-left: 1.5rem;
40
+ padding-right: 1.5rem;
41
+ }
42
+ .ant-tabs-nav::before {
43
+ content: '';
44
+ position: absolute;
45
+ right: 1.5rem;
46
+ left: 1.5rem;
47
+ z-index: 10;
48
+ border-bottom-width: var(--ant-line-width);
49
+ border-bottom-style: solid;
50
+ border-bottom-color: #e5e5e5;
51
+ }
52
+ }
53
+ &-capsule {
54
+ &__content {
55
+ padding-top: var(--ant-margin);
56
+ padding-bottom: var(--ant-margin);
57
+ box-sizing: border-box;
58
+ background-color: white;
59
+ padding-left: var(--ant-padding-lg);
60
+ padding-right: var(--ant-padding-lg);
61
+ }
62
+ .ant-radio-button-wrapper.ant-radio-button-wrapper-checked.css-var-r4.ant-radio-css-var {
63
+ padding-left: var(--ant-padding);
64
+ padding-right: var(--ant-padding);
65
+ box-sizing: border-box;
66
+ font-size: var(--ant-font-size);
67
+ color: var(--ant-color-primary);
68
+ }
69
+ .ant-radio-button.ant-radio-button-checked {
70
+ font-size: var(--ant-font-size);
71
+ color: var(--ant-color-primary);
72
+ }
73
+ &__value {
74
+ font-size: 14px;
75
+ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto,
76
+ 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji',
77
+ 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
78
+ color: #000000e0;
79
+ }
80
+ }
81
+ &-istabmargin {
82
+ .ant-tabs-nav {
83
+ margin-bottom: 0;
84
+ }
85
+ }
86
+ }
@@ -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,33 +1,33 @@
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
- personalEmail?: string; // 邮箱
22
- }
23
- type LabelOptions =
24
- | 'personalName'
25
- | 'uniqueNumber'
26
- | 'personalMobile'
27
- | 'nationName'
28
- | 'genderName'
29
- | 'personalEmail';
30
- export type TeacherProps = SelectProps & {
31
- label?: LabelOptions[];
32
- connectors?: string;
33
- };
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
+ personalEmail?: string; // 邮箱
22
+ }
23
+ type LabelOptions =
24
+ | 'personalName'
25
+ | 'uniqueNumber'
26
+ | 'personalMobile'
27
+ | 'nationName'
28
+ | 'genderName'
29
+ | 'personalEmail';
30
+ export type TeacherProps = SelectProps & {
31
+ label?: LabelOptions[];
32
+ connectors?: string;
33
+ };