@titaui/pc 1.7.18 → 1.7.22

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 (36) hide show
  1. package/lib/components/cascader/index.css +38 -11
  2. package/lib/components/cascader/index.js +10 -5
  3. package/lib/components/cascader/time.js +31 -0
  4. package/lib/components/create-okr-modal/index.js +6 -6
  5. package/lib/components/form/form-fields/group/index.js +2 -1
  6. package/lib/components/menus/components/menu-tree/index.css +4 -0
  7. package/lib/components/nav-top/components/user-own-menu/utils.js +1 -1
  8. package/lib/components/okr-detail/e-list/images/e-list-empty.png +0 -0
  9. package/lib/components/okr-detail/e-list/index.css +19 -1
  10. package/lib/components/okr-detail/e-list/index.js +32 -8
  11. package/lib/components/okr-detail/e-list/util.js +49 -22
  12. package/lib/components/scrollbar/index.js +13 -3
  13. package/lib/components/select-tags/index.css +51 -40
  14. package/lib/components/select-tags/index.js +8 -10
  15. package/lib/components/upvote/index.js +19 -14
  16. package/lib/index.js +8 -0
  17. package/lib/utils/bs-global.js +0 -7
  18. package/package.json +1 -1
  19. package/src/components/cascader/index.scss +50 -27
  20. package/src/components/cascader/index.tsx +18 -16
  21. package/src/components/cascader/time.js +13 -0
  22. package/src/components/create-okr-modal/index.tsx +6 -6
  23. package/src/components/form/form-fields/group/index.tsx +3 -3
  24. package/src/components/menus/components/menu-tree/index.scss +3 -0
  25. package/src/components/menus/export-modules/manage-menus/index.tsx +1 -1
  26. package/src/components/nav-top/components/user-own-menu/utils.ts +1 -1
  27. package/src/components/okr-detail/e-list/images/e-list-empty.png +0 -0
  28. package/src/components/okr-detail/e-list/index.js +121 -70
  29. package/src/components/okr-detail/e-list/index.scss +17 -2
  30. package/src/components/okr-detail/e-list/util.ts +44 -18
  31. package/src/components/scrollbar/index.tsx +2 -1
  32. package/src/components/select-tags/index.scss +129 -105
  33. package/src/components/select-tags/index.tsx +32 -32
  34. package/src/components/upvote/index.tsx +12 -9
  35. package/src/index.js +2 -1
  36. package/src/utils/bs-global.js +0 -10
@@ -1,104 +1,155 @@
1
- import React, { useState, useEffect } from 'react';
2
- import SearchForm from './search-form';
3
- import OkrTree from '../components/okr-tree';
4
- import { getKrsByCondition } from '../request-apis';
5
- import { formatEListDataToSelectTree, formatCondition } from './util';
6
- import { EListContext } from '../context';
7
- import PaddingLayout from '../components/padding-layout';
8
- import Loading from '../loading';
9
- import { getUserInfo } from '../../../utils/bs-global';
10
- import './index.scss';
1
+ import React, { useState, useEffect } from "react";
2
+ import SearchForm from "./search-form";
3
+ import OkrTree from "../components/okr-tree";
4
+ import { getKrsByCondition } from "../request-apis";
5
+ import {
6
+ formatEListDataToSelectTree,
7
+ formatCondition,
8
+ getIfInitCondition,
9
+ } from "./util";
10
+ import { EListContext } from "../context";
11
+ import PaddingLayout from "../components/padding-layout";
12
+ import Loading from "../loading";
13
+ import { getUserInfo } from "../../../utils/bs-global";
14
+ import ConditionRender from "../../condition-render";
15
+ import EmptyPng from './images/e-list-empty.png';
16
+ import "./index.scss";
11
17
 
12
- const preCls = 'okr-detail-e';
18
+ const preCls = "okr-detail-e";
13
19
 
14
- export default props => {
20
+ export default (props) => {
15
21
  const { okrId } = props;
16
22
 
17
23
  const loginUser = getUserInfo().Id;
18
24
  const hasCondition = localStorage.getItem(`hasRememberCondition${loginUser}`);
19
25
 
20
- const [krList, setKrList] = useState([])
21
- const [checkedStatus, setCheckedStatus] = useState(hasCondition ? JSON.parse(localStorage.getItem(`okrDrawerECheckedStatus${loginUser}`)) : []);
22
- const [selectUsers, setSelectUsers] = useState(hasCondition ? JSON.parse(localStorage.getItem(`okrDrawerESelectUsers${loginUser}`)) : []);
23
- const [selectName, setSelectName] = useState(hasCondition ? localStorage.getItem(`okrDrawerESelectName${loginUser}`) : 'orderBySystem');
24
- const [noteOrder, setNoteOrder] = useState(hasCondition ? localStorage.getItem(`okrDrawerENoteOrder${loginUser}`) : null);
26
+ const [krList, setKrList] = useState([]);
27
+ const [checkedStatus, setCheckedStatus] = useState(
28
+ hasCondition
29
+ ? JSON.parse(localStorage.getItem(`okrDrawerECheckedStatus${loginUser}`))
30
+ : []
31
+ );
32
+ const [selectUsers, setSelectUsers] = useState(
33
+ hasCondition
34
+ ? JSON.parse(localStorage.getItem(`okrDrawerESelectUsers${loginUser}`))
35
+ : []
36
+ );
37
+ const [selectName, setSelectName] = useState(
38
+ hasCondition
39
+ ? localStorage.getItem(`okrDrawerESelectName${loginUser}`)
40
+ : "orderBySystem"
41
+ );
42
+ const [noteOrder, setNoteOrder] = useState(
43
+ hasCondition
44
+ ? localStorage.getItem(`okrDrawerENoteOrder${loginUser}`)
45
+ : null
46
+ );
25
47
  const [searchKey, setSearchKey] = useState();
26
48
  const [oEList, setOEList] = useState([]);
27
49
  const [expandedKrEs, setExpandedKrEs] = useState([]);
28
50
  const [expandedOEs, setExpandedOEs] = useState([]);
29
51
  const [loading, setLoading] = useState(true);
52
+ const [totalDataNum, setTotalDataNum] = useState(0);
30
53
 
31
54
  const getKrEsData = () => {
32
55
  setLoading(true);
33
56
  getKrsByCondition({
34
57
  okrId,
35
- 'condition': formatCondition({
58
+ "condition": formatCondition({
36
59
  okrId,
37
60
  noteOrder,
38
61
  selectName,
39
62
  checkedStatus,
40
63
  users: selectUsers,
41
- 'keyWord': searchKey
42
- })
43
- }).then(krs => {
44
- const formatKrs = formatEListDataToSelectTree(krs, okrId);
45
- const expandedKrEs = (formatKrs.krsEList || []).map(it => it.key);
46
- const expandedOEs = (formatKrs.oEList[0] || []).map(it => it.key);
64
+ "keyWord": searchKey,
65
+ }),
66
+ }).then((krs) => {
67
+ const formatKrs = formatEListDataToSelectTree(
68
+ krs,
69
+ okrId,
70
+ getIfInitCondition(selectName, checkedStatus, selectUsers, searchKey)
71
+ );
72
+ const expandedKrEs = (formatKrs.krsEList || []).map((it) => it.key);
73
+ const expandedOEs = (formatKrs.oEList[0] || []).map((it) => it.key);
47
74
  setExpandedKrEs(expandedKrEs);
48
75
  setExpandedOEs(expandedOEs);
49
76
  setKrList(formatKrs.krsEList);
50
77
  setOEList(formatKrs.oEList);
51
78
  setLoading(false);
52
- })
53
- }
79
+ });
80
+ };
54
81
 
55
82
  useEffect(() => {
56
83
  getKrEsData();
57
84
  }, [noteOrder, searchKey, selectName, checkedStatus, selectUsers]);
58
85
 
59
- return <EListContext.Provider
60
- value={{
61
- 'refreshEList': getKrEsData
62
- }}
63
- >
64
- <div className={preCls}>
65
- <PaddingLayout>
66
- <SearchForm
67
- checkedStatus={checkedStatus}
68
- setCheckedStatus={setCheckedStatus}
69
- selectName={selectName}
70
- setSelectName={setSelectName}
71
- noteOrder={noteOrder}
72
- setNoteOrder={setNoteOrder}
73
- setSearchKey={setSearchKey}
74
- selectUsers={selectUsers}
75
- setSelectUsers={setSelectUsers}
76
- okrId={okrId}
77
- />
78
- </PaddingLayout>
86
+ useEffect(() => {
87
+ const oElistLength = oEList[0] && oEList[0].length || 0;
88
+ setTotalDataNum(krList.length + oElistLength);
89
+ }, [krList, oEList]);
90
+
91
+ return (
92
+ <EListContext.Provider
93
+ value={{
94
+ "refreshEList": getKrEsData,
95
+ }}
96
+ >
97
+ <div className={preCls}>
98
+ <PaddingLayout>
99
+ <SearchForm
100
+ checkedStatus={checkedStatus}
101
+ setCheckedStatus={setCheckedStatus}
102
+ selectName={selectName}
103
+ setSelectName={setSelectName}
104
+ noteOrder={noteOrder}
105
+ setNoteOrder={setNoteOrder}
106
+ setSearchKey={setSearchKey}
107
+ selectUsers={selectUsers}
108
+ setSelectUsers={setSelectUsers}
109
+ okrId={okrId}
110
+ />
111
+ </PaddingLayout>
79
112
 
80
- {!loading ?
81
- <React.Fragment>
82
- {krList.map((kr, index) => {
83
- return <React.Fragment>
84
- <PaddingLayout padding={`0 32px 0 18px`}>
85
- <OkrTree data={[kr]} defaultExpandedKeys={expandedKrEs} />
86
- </PaddingLayout>
87
- {
88
- // kr左后一个节点 && 没有 OE 时,不显示横线
89
- !((index + 1 == krList.length) && oEList.length == 0) &&
90
- <div className="e__divider"></div>
91
- }
92
- </React.Fragment>
93
- })}
113
+ {!loading ? (
114
+ <React.Fragment>
115
+ <ConditionRender condition={totalDataNum !== 0}>
116
+ {krList.map((kr, index) => {
117
+ return (
118
+ <React.Fragment>
119
+ <PaddingLayout padding={`0 32px 0 18px`}>
120
+ <OkrTree data={[kr]} defaultExpandedKeys={expandedKrEs} />
121
+ </PaddingLayout>
122
+ {
123
+ // kr左后一个节点 && 没有 OE 时,不显示横线
124
+ !(index + 1 == krList.length && oEList.length == 0) && (
125
+ <div className="e__divider"></div>
126
+ )
127
+ }
128
+ </React.Fragment>
129
+ );
130
+ })}
94
131
 
95
- {oEList.map((kr) => {
96
- return <PaddingLayout padding={`0 32px 0 18px`}>
97
- <OkrTree data={kr} defaultExpandedKeys={expandedOEs} />
98
- </PaddingLayout>
99
- })}
100
- </React.Fragment>
101
- : <Loading type="panel" />}
102
- </div>
103
- </EListContext.Provider>
104
- }
132
+ {oEList.map((kr) => {
133
+ return (
134
+ <PaddingLayout padding={`0 32px 0 18px`}>
135
+ <OkrTree data={kr} defaultExpandedKeys={expandedOEs} />
136
+ </PaddingLayout>
137
+ );
138
+ })}
139
+ </ConditionRender>
140
+ <ConditionRender condition={totalDataNum === 0}>
141
+ <div className={`${preCls}__empty`}>
142
+ <img className={`${preCls}__empty-img`} src={EmptyPng}/>
143
+ <span className={`${preCls}__empty-text`}>
144
+ 没有搜索到符合条件的E-执行
145
+ </span>
146
+ </div>
147
+ </ConditionRender>
148
+ </React.Fragment>
149
+ ) : (
150
+ <Loading type="panel" />
151
+ )}
152
+ </div>
153
+ </EListContext.Provider>
154
+ );
155
+ };
@@ -2,7 +2,22 @@
2
2
  padding-bottom: 60px;
3
3
  .e__divider {
4
4
  height: 8px;
5
- background: #F0F2F5;
5
+ background: #f0f2f5;
6
6
  margin: 10px 32px;
7
7
  }
8
- }
8
+ &__empty {
9
+ display: flex;
10
+ flex-direction: column;
11
+ align-items: center;
12
+ padding-top: 117px;
13
+ font-size: 14px;
14
+ &-img {
15
+ width: 128px;
16
+ }
17
+ &-text {
18
+ color: #3f4755;
19
+ line-height: 22px;
20
+ margin-top: 20px;
21
+ }
22
+ }
23
+ }
@@ -51,33 +51,52 @@ export const getETreeNode = (tasks, isFirstLevel, createUserId,krUser) => {
51
51
  })
52
52
  }
53
53
 
54
- export const formatTreeDataToNode = (tree) => {
55
- return tree.map((item, index) => {
56
- return {
57
- 'key': item.mileStoneId,
58
- 'index': index,
59
- 'title': item.mileStoneId !== 0 ? item.mileStoneName : '目标下的其他执行',
60
- 'nodeType': 'e-kr',
61
- 'isLeaf': false,
62
- 'children': getETreeNode(item.tasks, true, item.createUserId,item.user),
63
- 'data': { ...item },
64
- 'isOTask': item.mileStoneId === 0
65
- }
66
- })
54
+ export const formatTreeDataToNode = (tree, isInitCondition) => {
55
+ if(isInitCondition) {
56
+ return tree.map((item, index) => {
57
+ return {
58
+ 'key': item.mileStoneId,
59
+ 'index': index,
60
+ 'title': item.mileStoneId !== 0 ? item.mileStoneName : '目标下的其他执行',
61
+ 'nodeType': 'e-kr',
62
+ 'isLeaf': false,
63
+ 'children': getETreeNode(item.tasks, true, item.createUserId,item.user),
64
+ 'data': { ...item },
65
+ 'isOTask': item.mileStoneId === 0
66
+ }
67
+ })
68
+ } else {
69
+ const result: any = [];
70
+ tree.forEach((item, index) => {
71
+ if (item.tasks && item.tasks.length > 0) {
72
+ result.push({
73
+ 'key': item.mileStoneId,
74
+ 'index': index,
75
+ 'title': item.mileStoneId !== 0 ? item.mileStoneName : '目标下的其他执行',
76
+ 'nodeType': 'e-kr',
77
+ 'isLeaf': false,
78
+ 'children': getETreeNode(item.tasks, true, item.createUserId,item.user),
79
+ 'data': { ...item },
80
+ 'isOTask': item.mileStoneId === 0
81
+ })
82
+ }
83
+ })
84
+ return result;
85
+ }
67
86
  }
68
87
 
69
- export const formatEListDataToSelectTree = (data, workId) => {
88
+ export const formatEListDataToSelectTree = (data, workId, isInitCondition) => {
70
89
  const tree = data.map(item => {
71
90
  return {
72
91
  ...item,
73
92
  'tasks': toTree(item.tasks)
74
93
  }
75
94
  })
76
- const formatKrsTreeDataToNode = formatTreeDataToNode(tree.filter(d => d.mileStoneId !== 0));
77
- const formatOTreeDataToNode = formatTreeDataToNode(tree.filter(d => d.mileStoneId === 0));
95
+ const formatKrsTreeDataToNode = formatTreeDataToNode(tree.filter(d => d.mileStoneId !== 0), isInitCondition);
96
+ const formatOTreeDataToNode = formatTreeDataToNode(tree.filter(d => d.mileStoneId === 0), isInitCondition);
78
97
  const result = {
79
98
  'krsEList': formatKrsTreeDataToNode,
80
- 'oEList': formatOTreeDataToNode.length > 0 ? [formatTreeDataToNode(tree.filter(d => d.mileStoneId === 0))] : [[{
99
+ 'oEList': isInitCondition && formatOTreeDataToNode.length === 0 ? [[{
81
100
  'key': 0,
82
101
  'index': 0,
83
102
  'title': '目标下的其他执行',
@@ -99,7 +118,7 @@ export const formatEListDataToSelectTree = (data, workId) => {
99
118
  mileStoneId: 0
100
119
  },
101
120
  'isOTask': true
102
- }]]
121
+ }]] : [formatOTreeDataToNode]
103
122
  }
104
123
  return result;
105
124
  }
@@ -142,4 +161,11 @@ export const formatCondition = ({okrId, noteOrder, selectName, checkedStatus, us
142
161
  }))
143
162
  }
144
163
 
164
+ }
165
+
166
+ export const getIfInitCondition = (selectName, checkedStatus, users, keyWord) => {
167
+ if (keyWord || selectName !== 'orderBySystem' || checkedStatus.length !== 0 || users.length !== 0) {
168
+ return false;
169
+ }
170
+ return true;
145
171
  }
@@ -11,13 +11,14 @@ interface Props {
11
11
  }
12
12
 
13
13
  export default (props: Props) => {
14
- const { children, style } = props;
14
+ const { children, style,...restProps } = props;
15
15
 
16
16
  // @ts-ignore
17
17
  return <SimpleBar
18
18
  className={classNames(preCls)}
19
19
  timeout={800}
20
20
  style={style}
21
+ {...restProps}
21
22
  >
22
23
  {children}
23
24
  </SimpleBar>
@@ -1,83 +1,112 @@
1
- .rc-select-single:not(.rc-select-customize-input) .rc-select-selector {
2
- border: 1px solid #DFE3EA;
3
- }
1
+ .titaui-select-tags {
2
+ display: flex;
3
+ .rc-select-single:not(.rc-select-customize-input) .rc-select-selector {
4
+ border: 1px solid #DFE3EA;
5
+ }
4
6
 
5
- .rc-select-focused{
6
- .rc-select-selector{
7
- border: 1px solid #DFE3EA !important;
7
+ .rc-select-focused {
8
+ .rc-select-selector {
9
+ border: 1px solid #DFE3EA !important;
10
+ }
8
11
  }
9
- }
10
- .rc-select-selection-item-remove{
11
- display: flex;
12
- align-items: center;
13
- }
14
- .rc-select-multiple .rc-select-selector .rc-select-selection-search-input {
15
- display: none;
16
- }
17
12
 
18
- .rc-select-single:not(.rc-select-customize-input) .rc-select-selector .rc-select-selection-search-input{
19
- display: none;
20
- }
13
+ .rc-select-selection-item-remove {
14
+ display: flex;
15
+ align-items: center;
16
+ }
21
17
 
22
- .rc-select-single .rc-select-selector .rc-select-selection-item, .rc-select-single .rc-select-selector .rc-select-selection-placeholder{
23
- top: unset;
24
- left: 12px;
25
- }
18
+ .rc-select-multiple .rc-select-selector .rc-select-selection-search-input {
19
+ display: none;
20
+ }
26
21
 
27
- .rc-select-single .rc-select-selector{
28
- align-items: center;
29
- }
22
+ .rc-select-single:not(.rc-select-customize-input) .rc-select-selector .rc-select-selection-search-input {
23
+ display: none;
24
+ }
30
25
 
31
- .rc-select-selector{
32
- cursor: pointer;
33
- padding: 0 12px;
34
- background: #FFFFFF;
35
- border-radius: 8px;
36
- border: 1px solid #DFE3EA;
37
- height: 36px;
38
- box-sizing: border-box;
39
- }
40
- .rc-select-multiple .rc-select-selector {
41
- height: unset;
42
- padding: 7px 12px 0;
43
- border: 1px solid #DFE3EA;
44
- }
45
- .rc-select-multiple .rc-select-selector .rc-select-selection-overflow-item {
46
- display: flex;
47
- align-items: center;
48
- margin-bottom: 7px;
49
- }
50
- .rc-select-multiple .rc-select-selector .rc-select-selection-placeholder{
51
- line-height: 1;
52
- margin-bottom: 7px;
53
- position: relative;
54
- top: -2px;
55
- }
26
+ .rc-select-single .rc-select-selector .rc-select-selection-item,
27
+ .rc-select-single .rc-select-selector .rc-select-selection-placeholder {
28
+ top: unset;
29
+ left: 12px;
30
+ }
56
31
 
57
- .rc-select-selection-item-content{
58
- margin-right: 8px;
59
- }
32
+ .rc-select-single .rc-select-selector {
33
+ align-items: center;
34
+ }
60
35
 
61
- .rc-select-multiple .rc-select-selector .rc-select-selection-item {
62
- font-size: 12px;
63
- flex: none;
64
- height: 20px;
65
- display: flex;
66
- align-items: center;
67
- background: #F0F4FA;
68
- border-radius: 10px;
69
- margin-right: 2px;
70
- padding: 0 5px 0 10px;
71
- .tu-icon-cross{
36
+ .rc-select-selector {
72
37
  cursor: pointer;
73
- color:#a4acB9;
74
- font-size: 14px;
38
+ padding: 0 12px;
39
+ background: #FFFFFF;
40
+ border-radius: 8px;
41
+ border: 1px solid #DFE3EA;
42
+ height: 36px;
43
+ box-sizing: border-box;
44
+ }
45
+
46
+ .rc-select-multiple .rc-select-selector {
47
+ height: unset;
48
+ padding: 7px 12px 0;
49
+ border: 1px solid #DFE3EA;
50
+ }
51
+
52
+ .rc-select-multiple .rc-select-selector .rc-select-selection-overflow-item {
53
+ display: flex;
54
+ align-items: center;
55
+ margin-bottom: 7px;
56
+ }
57
+
58
+ .rc-select-multiple .rc-select-selector .rc-select-selection-placeholder {
59
+ line-height: 1;
60
+ margin-bottom: 7px;
61
+ position: relative;
62
+ top: -2px;
63
+ }
64
+
65
+ .rc-select-selection-item-content {
66
+ margin-right: 8px;
67
+ }
68
+
69
+ .rc-select-multiple .rc-select-selector .rc-select-selection-item {
70
+ font-size: 12px;
71
+ flex: none;
72
+ height: 20px;
73
+ display: flex;
74
+ align-items: center;
75
+ background: #F0F4FA;
76
+ border-radius: 10px;
77
+ margin-right: 2px;
78
+ padding: 0 5px 0 10px;
79
+
80
+ .tu-icon-cross {
81
+ cursor: pointer;
82
+ color: #a4acB9;
83
+ font-size: 14px;
84
+ }
85
+ }
86
+
87
+ .titaui-select-noborder {
88
+ .rc-select-selector {
89
+ border: none !important;
90
+ height: 22px;
91
+ line-height: 1;
92
+ }
93
+ }
94
+
95
+ .rc-select-arrow {
96
+ font-size: 16px;
97
+ transform: scale(0.5);
98
+ }
99
+
100
+ .rc-select-show-arrow .rc-select-arrow {
101
+ top: 0;
102
+ bottom: 0;
103
+ margin: auto;
104
+ right: 12px;
105
+ height: 22px;
75
106
  }
76
107
  }
77
- .rc-select-item {
78
- font-size: 14px;
79
- }
80
- .rc-select-dropdown{
108
+
109
+ .titaui-dropDown {
81
110
  z-index: 2000;
82
111
  box-sizing: border-box;
83
112
  padding: 16px 6px;
@@ -85,48 +114,43 @@
85
114
  box-shadow: 0px 4px 12px 0px rgba(127, 145, 180, 0.2);
86
115
  border: 1px solid #F0F2F5;
87
116
  border-radius: 8px;
88
- }
89
117
 
90
- .rc-select-item-option{
91
- height: 36px;
92
- line-height: 36px;
93
- cursor: pointer;
94
- }
95
- .rc-select-item-option-selected {
118
+ .rc-select-item {
119
+ font-size: 14px;
120
+ padding: 7px 6px;
121
+ }
96
122
 
97
- color: #2879FF;
98
- }
99
- .rc-select-item-option-active {
100
- border-radius: 8px;
101
- color: #2879FF;
102
- background: #F7F8FA;
103
- }
123
+ .rc-select-item-option {
124
+ height: 36px;
125
+ box-sizing: border-box;
126
+ line-height: 36px;
127
+ cursor: pointer;
128
+ }
104
129
 
105
- .rc-select-arrow{
106
- font-size: 16px;
107
- transform: scale(0.5);
108
- }
109
- .rc-select-show-arrow .rc-select-arrow {
110
- top: 0;
111
- bottom: 0;
112
- margin: auto;
113
- right: 12px;
114
- height: 22px;
115
- }
130
+ .rc-select-item-option-selected {
116
131
 
117
- .rc-select-item-option-state{
118
- display: none;
119
- }
132
+ color: #2879FF;
133
+ }
120
134
 
121
- .titaui-select-hasSelectItem{
122
- .rc-select-item-option-state{
123
- display: block;
135
+ .rc-select-item-option-content {
136
+ line-height: 24px;
137
+ }
138
+
139
+ .rc-select-item-option-active {
140
+ border-radius: 8px;
141
+ color: #2879FF;
142
+ background: #F7F8FA;
143
+ }
144
+
145
+
146
+
147
+ .rc-select-item-option-state {
148
+ display: none;
124
149
  }
125
150
  }
126
- .titaui-select-noborder{
127
- .rc-select-selector{
128
- border: none !important;
129
- height: 22px;
130
- line-height: 1;
151
+
152
+ .titaui-select-hasSelectItem {
153
+ .rc-select-item-option-state {
154
+ display: block;
131
155
  }
132
156
  }