funda-ui 4.7.517 → 4.7.533

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 (37) hide show
  1. package/CascadingSelect/index.css +105 -88
  2. package/CascadingSelect/index.js +25 -24
  3. package/CascadingSelectE2E/index.css +105 -88
  4. package/CascadingSelectE2E/index.js +26 -25
  5. package/Date/index.js +3 -1
  6. package/DropdownMenu/index.js +3 -1
  7. package/LiveSearch/index.js +2 -1
  8. package/Select/index.d.ts +1 -0
  9. package/Select/index.js +70 -14
  10. package/Tooltip/index.css +69 -68
  11. package/Tooltip/index.d.ts +15 -1
  12. package/Tooltip/index.js +153 -57
  13. package/lib/cjs/CascadingSelect/index.js +25 -24
  14. package/lib/cjs/CascadingSelectE2E/index.js +26 -25
  15. package/lib/cjs/Date/index.js +3 -1
  16. package/lib/cjs/DropdownMenu/index.js +3 -1
  17. package/lib/cjs/LiveSearch/index.js +2 -1
  18. package/lib/cjs/Select/index.d.ts +1 -0
  19. package/lib/cjs/Select/index.js +70 -14
  20. package/lib/cjs/Tooltip/index.d.ts +15 -1
  21. package/lib/cjs/Tooltip/index.js +153 -57
  22. package/lib/css/CascadingSelect/index.css +105 -88
  23. package/lib/css/CascadingSelectE2E/index.css +105 -88
  24. package/lib/css/Tooltip/index.css +69 -68
  25. package/lib/esm/CascadingSelect/Group.tsx +3 -5
  26. package/lib/esm/CascadingSelect/index.scss +89 -68
  27. package/lib/esm/CascadingSelect/index.tsx +23 -21
  28. package/lib/esm/CascadingSelectE2E/Group.tsx +4 -3
  29. package/lib/esm/CascadingSelectE2E/index.scss +83 -63
  30. package/lib/esm/CascadingSelectE2E/index.tsx +24 -22
  31. package/lib/esm/Date/index.tsx +4 -1
  32. package/lib/esm/DropdownMenu/index.tsx +2 -1
  33. package/lib/esm/LiveSearch/index.tsx +2 -1
  34. package/lib/esm/Select/index.tsx +75 -17
  35. package/lib/esm/Tooltip/index.scss +63 -60
  36. package/lib/esm/Tooltip/index.tsx +143 -44
  37. package/package.json +1 -1
@@ -2,23 +2,23 @@
2
2
  <!-- Cascading Select -->
3
3
  /* ====================================================== */
4
4
 
5
- .casc-select__wrapper {
5
+ .casc-menu__wrapper {
6
6
 
7
- --casc-select-arrow-fill: #a5a5a5;
8
- --casc-select-result-arrow-fill: #a5a5a5;
7
+ --casc-menu-arrow-fill: #a5a5a5;
8
+ --casc-menu-result-arrow-fill: #a5a5a5;
9
9
 
10
- --casc-select-result-font-size: 1rem;
11
- --casc-select-result-padding-x: 0.75rem;
12
- --casc-select-result-padding-y: 0.375rem;
10
+ --casc-menu-result-font-size: 1rem;
11
+ --casc-menu-result-padding-x: 0.75rem;
12
+ --casc-menu-result-padding-y: 0.375rem;
13
13
 
14
14
 
15
- .casc-select__result {
15
+ .casc-menu__result {
16
16
  position: absolute;
17
17
  left: auto;
18
18
  z-index: 1;
19
19
  top: 0;
20
- padding: var(--casc-select-result-padding-y) var(--casc-select-result-padding-x);
21
- font-size: var(--casc-select-result-font-size);
20
+ padding: var(--casc-menu-result-padding-y) var(--casc-menu-result-padding-x);
21
+ font-size: var(--casc-menu-result-font-size);
22
22
  font-weight: 400;
23
23
  line-height: 1.5;
24
24
  color: inherit;
@@ -45,7 +45,7 @@
45
45
  margin: 0 0.3rem;
46
46
 
47
47
  path {
48
- fill: var(--casc-select-result-arrow-fill);
48
+ fill: var(--casc-menu-result-arrow-fill);
49
49
  }
50
50
 
51
51
  }
@@ -53,7 +53,7 @@
53
53
  }
54
54
 
55
55
 
56
- .casc-select__closemask {
56
+ .casc-menu__closemask {
57
57
  position: absolute;
58
58
  z-index: 1;
59
59
  top: 0;
@@ -65,13 +65,13 @@
65
65
  }
66
66
 
67
67
 
68
- .casc-select__trigger {
68
+ .casc-menu__trigger {
69
69
  position: relative;
70
70
  z-index: 0;
71
71
  }
72
72
 
73
73
 
74
- .casc-select__val {
74
+ .casc-menu__val {
75
75
  position: relative;
76
76
 
77
77
 
@@ -94,7 +94,7 @@
94
94
 
95
95
  svg {
96
96
  .arrow-fill-g {
97
- fill: var(--casc-select-arrow-fill);
97
+ fill: var(--casc-menu-arrow-fill);
98
98
  }
99
99
  }
100
100
  }
@@ -105,45 +105,47 @@
105
105
  }
106
106
 
107
107
  /*------ List ------*/
108
- .casc-select__items-wrapper {
109
-
110
-
111
- --casc-select-opt-font-size: 0.875rem;
112
- --casc-select-opt-padding-x: .4rem;
113
- --casc-select-opt-padding-y: .3rem;
114
-
115
- --casc-select-opt-header-border-color: rgba(1, 1, 1, .2);
116
- --casc-select-opt-header-text-color: #999;
117
- --casc-select-opt-hover-bg: #f7f7f7;
118
- --casc-select-opt-active-bg: #eeeeee;
119
-
120
-
121
- --casc-select-items-box-shadow: 0 5px 15px 5px rgba(80, 102, 224, 0.08);
122
- --casc-select-items-bg: #fff;
123
- --casc-select-items-color: inherit;
124
- --casc-select-items-border-color: rgba(0, 0, 0, .1);
125
- --casc-select-items-li-border-color: #eee;
126
-
127
- --casc-select-loader-color: #000000;
128
- --casc-select-clean-btn-color: #b5b5b5;
108
+ .casc-menu__items-wrapper {
109
+
110
+ --casc-menu-scrollbar-color: rgba(0, 0, 0, 0.2);
111
+ --casc-menu-scrollbar-track: rgba(0, 0, 0, 0);
112
+ --casc-menu-scrollbar-h: 3px;
113
+ --casc-menu-scrollbar-w: 3px;
114
+ --casc-menu-per-col-maxheight: 300px;
115
+ --casc-menu-opt-font-size: 0.875rem;
116
+ --casc-menu-opt-padding-x: .4rem;
117
+ --casc-menu-opt-padding-y: .3rem;
118
+
119
+ --casc-menu-opt-header-border-color: rgba(1, 1, 1, .2);
120
+ --casc-menu-opt-header-text-color: #999;
121
+ --casc-menu-opt-hover-bg: #f7f7f7;
122
+ --casc-menu-opt-active-bg: #eeeeee;
123
+
124
+
125
+ --casc-menu-items-box-shadow: 0 5px 15px 5px rgba(80, 102, 224, 0.08);
126
+ --casc-menu-items-bg: #fff;
127
+ --casc-menu-items-color: inherit;
128
+ --casc-menu-items-border-color: rgba(0, 0, 0, .1);
129
+ --casc-menu-items-li-border-color: #eee;
130
+
131
+ --casc-menu-loader-color: #000000;
132
+ --casc-menu-clean-btn-color: #b5b5b5;
129
133
 
130
- --casc-select-searchbox-border-color: #ddd;
134
+ --casc-menu-searchbox-border-color: #ddd;
131
135
 
132
136
 
133
- box-shadow: var(--casc-select-items-box-shadow);
137
+ box-shadow: var(--casc-menu-items-box-shadow);
134
138
  position: absolute;
135
139
  left: auto;
136
- max-height: 300px;
137
- border: 1px solid var(--casc-select-items-border-color);
138
- background: var(--casc-select-items-bg);
140
+ border: 1px solid var(--casc-menu-items-border-color);
141
+ background: var(--casc-menu-items-bg);
139
142
  padding: 10px;
140
- overflow-y: auto;
141
143
  box-sizing: border-box;
142
144
  top: 2.3rem;
143
145
  border-radius: 5px;
144
146
  width: max-content;
145
147
  /* required -> the content will not wrap at all even if it causes overflows*/
146
- color: var(--casc-select-items-color);
148
+ color: var(--casc-menu-items-color);
147
149
 
148
150
 
149
151
  display: none;
@@ -162,7 +164,7 @@
162
164
  padding: 0;
163
165
  }
164
166
 
165
- .casc-select__items-loader {
167
+ .casc-menu__items-loader {
166
168
  position: absolute;
167
169
  pointer-events: none;
168
170
  left: 0;
@@ -174,30 +176,30 @@
174
176
  text-align: center;
175
177
  transform-origin: center;
176
178
  transform: translate(2px, 5px) rotate(0);
177
- animation: 1s linear infinite casc-select__spinner;
179
+ animation: 1s linear infinite casc-menu__spinner;
178
180
 
179
181
  svg {
180
182
  vertical-align: top;
181
183
 
182
184
  path {
183
- fill: var(--casc-select-loader-color);
185
+ fill: var(--casc-menu-loader-color);
184
186
  }
185
187
  }
186
188
  }
187
189
 
188
- @keyframes casc-select__spinner {
190
+ @keyframes casc-menu__spinner {
189
191
  to {
190
192
  transform: translate(2px, 5px) rotate(-360deg);
191
193
  }
192
194
  }
193
195
 
194
- .casc-select__close {
196
+ .casc-menu__close {
195
197
  svg {
196
198
  opacity: .4;
197
199
  }
198
200
  }
199
201
 
200
- .casc-select__close:hover {
202
+ .casc-menu__close:hover {
201
203
  svg {
202
204
  transition: .2s ease-out;
203
205
  opacity: .7;
@@ -216,7 +218,7 @@
216
218
  float: left;
217
219
  padding: 0 10px;
218
220
  margin-right: 15px;
219
- border-right: 1px dotted var(--casc-select-items-li-border-color);
221
+ border-right: 1px dotted var(--casc-menu-items-li-border-color);
220
222
  transition: .2s ease-out;
221
223
 
222
224
  &.hide-col {
@@ -231,11 +233,30 @@
231
233
  }
232
234
  }
233
235
 
236
+ /* Column */
237
+ .casc-menu__items-col {
238
+ max-height: var(--casc-menu-per-col-maxheight);
239
+ overflow-y: auto;
240
+
241
+ &::-webkit-scrollbar {
242
+ width: var(--casc-menu-scrollbar-w);
243
+ }
244
+
245
+ &::-webkit-scrollbar-thumb {
246
+ background: var(--casc-menu-scrollbar-color);
247
+ }
248
+
249
+ &::-webkit-scrollbar-track {
250
+ background: var(--casc-menu-scrollbar-track);
251
+ }
252
+
253
+ }
254
+
234
255
 
235
256
  /* Searchbox */
236
- .casc-select__items-col-searchbox {
257
+ .casc-menu__items-col-searchbox {
237
258
  input {
238
- border: 1px solid var(--casc-select-searchbox-border-color);
259
+ border: 1px solid var(--casc-menu-searchbox-border-color);
239
260
  border-radius: 0.15rem;
240
261
  width: 100%;
241
262
  background: transparent;
@@ -244,29 +265,29 @@
244
265
  }
245
266
 
246
267
  /* Options */
247
- .casc-select__opt {
248
- padding: var(--casc-select-opt-padding-y) var(--casc-select-opt-padding-x);
249
- font-size: var(--casc-select-opt-font-size);
268
+ .casc-menu__opt {
269
+ padding: var(--casc-menu-opt-padding-y) var(--casc-menu-opt-padding-x);
270
+ font-size: var(--casc-menu-opt-font-size);
250
271
  border-radius: 2px;
251
272
 
252
273
  &:hover {
253
- background: var(--casc-select-opt-hover-bg);
274
+ background: var(--casc-menu-opt-hover-bg);
254
275
  }
255
276
 
256
277
  &.active {
257
- background: var(--casc-select-opt-active-bg);
278
+ background: var(--casc-menu-opt-active-bg);
258
279
  }
259
280
  }
260
281
 
261
- .casc-select__opt-header {
262
- padding: var(--casc-select-opt-padding-y) var(--casc-select-opt-padding-x);
263
- font-size: var(--casc-select-opt-font-size);
264
- border-bottom: 1px dotted var(--casc-select-opt-header-border-color);
282
+ .casc-menu__opt-header {
283
+ padding: var(--casc-menu-opt-padding-y) var(--casc-menu-opt-padding-x);
284
+ font-size: var(--casc-menu-opt-font-size);
285
+ border-bottom: 1px dotted var(--casc-menu-opt-header-border-color);
265
286
  border-radius: 2px;
266
287
  position: sticky;
267
- top: calc(var(--casc-select-opt-font-size) * -1);
268
- background: var(--casc-select-items-bg);
269
- color: var(--casc-select-opt-header-text-color);
288
+ top: 0;
289
+ background: var(--casc-menu-items-bg);
290
+ color: var(--casc-menu-opt-header-text-color);
270
291
  display: flex;
271
292
  align-items: center;
272
293
 
@@ -276,14 +297,14 @@
276
297
 
277
298
 
278
299
  &:hover {
279
- background: var(--casc-select-opt-hover-bg);
300
+ background: var(--casc-menu-opt-hover-bg);
280
301
  }
281
302
 
282
303
  &.active {
283
- background: var(--casc-select-opt-active-bg);
304
+ background: var(--casc-menu-opt-active-bg);
284
305
  }
285
306
 
286
- .casc-select__opt-header__clean {
307
+ .casc-menu__opt-header__clean {
287
308
  display: inline-block;
288
309
  margin-left: .2rem;
289
310
  padding: .1rem;
@@ -294,11 +315,11 @@
294
315
 
295
316
  svg {
296
317
 
297
- border: 1px var(--casc-select-clean-btn-color) solid;
318
+ border: 1px var(--casc-menu-clean-btn-color) solid;
298
319
  border-radius: 50%;
299
320
 
300
321
  path {
301
- fill: var(--casc-select-clean-btn-color);
322
+ fill: var(--casc-menu-clean-btn-color);
302
323
  }
303
324
  }
304
325
  }
@@ -23,6 +23,7 @@ import {
23
23
  import { clsWrite, combinedCls } from 'funda-utils/dist/cjs/cls';
24
24
 
25
25
 
26
+
26
27
  import Group from './Group';
27
28
 
28
29
 
@@ -167,6 +168,7 @@ const CascadingSelect = forwardRef((props: CascadingSelectProps, externalRef: an
167
168
  const rootRef = useRef<any>(null);
168
169
  const inputRef = useRef<any>(null);
169
170
  const listRef = useRef<any>(null);
171
+ const MIN_SPACE_FOR_DROPDOWN = 200; // Minimum space needed to show dropdown below trigger
170
172
 
171
173
  // searchable
172
174
  const [columnSearchKeywords, setColumnSearchKeywords] = useState<string[]>([]);
@@ -260,7 +262,7 @@ const CascadingSelect = forwardRef((props: CascadingSelectProps, externalRef: an
260
262
  if (rootRef.current === null || inputRef.current === null) return
261
263
 
262
264
  // update modal position
263
- const _modalRef: any = document.querySelector(`#casc-select__items-wrapper-${idRes}`);
265
+ const _modalRef: any = document.querySelector(`#casc-menu__items-wrapper-${idRes}`);
264
266
  const _triggerRef: any = inputRef.current;
265
267
 
266
268
  // console.log(getAbsolutePositionOfStage(_triggerRef));
@@ -281,7 +283,7 @@ const CascadingSelect = forwardRef((props: CascadingSelectProps, externalRef: an
281
283
  // STEP 2:
282
284
  //-----------
283
285
  // Detect position
284
- if (window.innerHeight - _triggerBox.top > 100) {
286
+ if (window.innerHeight - _triggerBox.top > MIN_SPACE_FOR_DROPDOWN) {
285
287
  targetPos = 'bottom';
286
288
  } else {
287
289
  targetPos = 'top';
@@ -343,7 +345,7 @@ const CascadingSelect = forwardRef((props: CascadingSelectProps, externalRef: an
343
345
 
344
346
  function popwinPosHide() {
345
347
 
346
- const _modalRef: any = document.querySelector(`#casc-select__items-wrapper-${idRes}`);
348
+ const _modalRef: any = document.querySelector(`#casc-menu__items-wrapper-${idRes}`);
347
349
 
348
350
  if (_modalRef !== null) {
349
351
  // remove classnames and styles
@@ -357,9 +359,9 @@ const CascadingSelect = forwardRef((props: CascadingSelectProps, externalRef: an
357
359
  if (listRef.current === null) return;
358
360
 
359
361
  let latestDisplayColIndex: number = 0;
360
- const currentItemsInner: any = listRef.current.querySelector('.casc-select__items-inner');
362
+ const currentItemsInner: any = listRef.current.querySelector('.casc-menu__items-inner');
361
363
  if (currentItemsInner !== null) {
362
- const colItemsWrapper = [].slice.call(currentItemsInner.querySelectorAll('.casc-select__items-col'));
364
+ const colItemsWrapper = [].slice.call(currentItemsInner.querySelectorAll('.casc-menu__items-col'));
363
365
  colItemsWrapper.forEach((perCol: any) => {
364
366
  perCol.classList.remove('hide-col');
365
367
  });
@@ -595,10 +597,10 @@ const CascadingSelect = forwardRef((props: CascadingSelectProps, externalRef: an
595
597
 
596
598
  // active current option with DOM
597
599
  //////////////////////////////////////////
598
- const currentItemsInner: any = e.currentTarget.closest('.casc-select__items-inner');
600
+ const currentItemsInner: any = e.currentTarget.closest('.casc-menu__items-inner');
599
601
  if (currentItemsInner !== null) {
600
602
  curData.forEach((v: any, col: number) => {
601
- const colItemsWrapper = currentItemsInner.querySelectorAll('.casc-select__items-col');
603
+ const colItemsWrapper = currentItemsInner.querySelectorAll('.casc-menu__items-col');
602
604
  colItemsWrapper.forEach((perCol: HTMLUListElement) => {
603
605
  const _col = Number(perCol.dataset.col);
604
606
 
@@ -1155,14 +1157,14 @@ const CascadingSelect = forwardRef((props: CascadingSelectProps, externalRef: an
1155
1157
  <>
1156
1158
 
1157
1159
  <div
1158
- className={clsWrite(wrapperClassName, 'casc-select__wrapper mb-3 position-relative', `casc-select__wrapper ${wrapperClassName}`)}
1160
+ className={clsWrite(wrapperClassName, 'casc-menu__wrapper mb-3 position-relative', `casc-menu__wrapper ${wrapperClassName}`)}
1159
1161
  ref={rootRef}
1160
- data-overlay-id={`casc-select__items-wrapper-${idRes}`}
1162
+ data-overlay-id={`casc-menu__items-wrapper-${idRes}`}
1161
1163
  >
1162
1164
  {label ? <>{typeof label === 'string' ? <label htmlFor={idRes} className="form-label" dangerouslySetInnerHTML={{ __html: `${label}` }}></label> : <label htmlFor={idRes} className="form-label" >{label}</label>}</> : null}
1163
1165
 
1164
1166
  {triggerContent ? <>
1165
- <div className={clsWrite(wrapperClassName, 'casc-select__trigger d-inline w-auto', `casc-select__trigger ${triggerClassName}`)} onClick={handleDisplayOptions}>{triggerContent}</div>
1167
+ <div className={clsWrite(wrapperClassName, 'casc-menu__trigger d-inline w-auto', `casc-menu__trigger ${triggerClassName}`)} onClick={handleDisplayOptions}>{triggerContent}</div>
1166
1168
  </> : null}
1167
1169
 
1168
1170
 
@@ -1171,16 +1173,16 @@ const CascadingSelect = forwardRef((props: CascadingSelectProps, externalRef: an
1171
1173
 
1172
1174
  <div
1173
1175
  ref={listRef}
1174
- id={`casc-select__items-wrapper-${idRes}`}
1175
- className="casc-select__items-wrapper position-absolute border shadow small"
1176
+ id={`casc-menu__items-wrapper-${idRes}`}
1177
+ className="casc-menu__items-wrapper position-absolute border shadow small"
1176
1178
  style={{ zIndex: DEPTH, display: 'none' }}
1177
1179
  >
1178
- <ul className="casc-select__items-inner">
1179
- {loading ? <><div className="casc-select__items-loader">{loader || <svg height="12px" width="12px" viewBox="0 0 512 512"><g><path fill="inherit" d="M256,0c-23.357,0-42.297,18.932-42.297,42.288c0,23.358,18.94,42.288,42.297,42.288c23.357,0,42.279-18.93,42.279-42.288C298.279,18.932,279.357,0,256,0z" /><path fill="inherit" d="M256,427.424c-23.357,0-42.297,18.931-42.297,42.288C213.703,493.07,232.643,512,256,512c23.357,0,42.279-18.93,42.279-42.288C298.279,446.355,279.357,427.424,256,427.424z" /><path fill="inherit" d="M74.974,74.983c-16.52,16.511-16.52,43.286,0,59.806c16.52,16.52,43.287,16.52,59.806,0c16.52-16.511,16.52-43.286,0-59.806C118.261,58.463,91.494,58.463,74.974,74.983z" /><path fill="inherit" d="M377.203,377.211c-16.503,16.52-16.503,43.296,0,59.815c16.519,16.52,43.304,16.52,59.806,0c16.52-16.51,16.52-43.295,0-59.815C420.489,360.692,393.722,360.7,377.203,377.211z" /><path fill="inherit" d="M84.567,256c0.018-23.348-18.922-42.279-42.279-42.279c-23.357-0.009-42.297,18.932-42.279,42.288c-0.018,23.348,18.904,42.279,42.279,42.279C65.645,298.288,84.567,279.358,84.567,256z" /><path fill="inherit" d="M469.712,213.712c-23.357,0-42.279,18.941-42.297,42.288c0,23.358,18.94,42.288,42.297,42.297c23.357,0,42.297-18.94,42.279-42.297C512.009,232.652,493.069,213.712,469.712,213.712z" /><path fill="inherit" d="M74.991,377.22c-16.519,16.511-16.519,43.296,0,59.806c16.503,16.52,43.27,16.52,59.789,0c16.52-16.519,16.52-43.295,0-59.815C118.278,360.692,91.511,360.692,74.991,377.22z" /><path fill="inherit" d="M437.026,134.798c16.52-16.52,16.52-43.304,0-59.824c-16.519-16.511-43.304-16.52-59.823,0c-16.52,16.52-16.503,43.295,0,59.815C393.722,151.309,420.507,151.309,437.026,134.798z" /></g></svg>}</div></> : null}
1180
+ <ul className="casc-menu__items-inner">
1181
+ {loading ? <><div className="casc-menu__items-loader">{loader || <svg height="12px" width="12px" viewBox="0 0 512 512"><g><path fill="inherit" d="M256,0c-23.357,0-42.297,18.932-42.297,42.288c0,23.358,18.94,42.288,42.297,42.288c23.357,0,42.279-18.93,42.279-42.288C298.279,18.932,279.357,0,256,0z" /><path fill="inherit" d="M256,427.424c-23.357,0-42.297,18.931-42.297,42.288C213.703,493.07,232.643,512,256,512c23.357,0,42.279-18.93,42.279-42.288C298.279,446.355,279.357,427.424,256,427.424z" /><path fill="inherit" d="M74.974,74.983c-16.52,16.511-16.52,43.286,0,59.806c16.52,16.52,43.287,16.52,59.806,0c16.52-16.511,16.52-43.286,0-59.806C118.261,58.463,91.494,58.463,74.974,74.983z" /><path fill="inherit" d="M377.203,377.211c-16.503,16.52-16.503,43.296,0,59.815c16.519,16.52,43.304,16.52,59.806,0c16.52-16.51,16.52-43.295,0-59.815C420.489,360.692,393.722,360.7,377.203,377.211z" /><path fill="inherit" d="M84.567,256c0.018-23.348-18.922-42.279-42.279-42.279c-23.357-0.009-42.297,18.932-42.279,42.288c-0.018,23.348,18.904,42.279,42.279,42.279C65.645,298.288,84.567,279.358,84.567,256z" /><path fill="inherit" d="M469.712,213.712c-23.357,0-42.279,18.941-42.297,42.288c0,23.358,18.94,42.288,42.297,42.297c23.357,0,42.297-18.94,42.279-42.297C512.009,232.652,493.069,213.712,469.712,213.712z" /><path fill="inherit" d="M74.991,377.22c-16.519,16.511-16.519,43.296,0,59.806c16.503,16.52,43.27,16.52,59.789,0c16.52-16.519,16.52-43.295,0-59.815C118.278,360.692,91.511,360.692,74.991,377.22z" /><path fill="inherit" d="M437.026,134.798c16.52-16.52,16.52-43.304,0-59.824c-16.519-16.511-43.304-16.52-59.823,0c-16.52,16.52-16.503,43.295,0,59.815C393.722,151.309,420.507,151.309,437.026,134.798z" /></g></svg>}</div></> : null}
1180
1182
  {showCloseBtn ? <a href="#" tabIndex={-1} onClick={(e) => {
1181
1183
  e.preventDefault();
1182
1184
  cancel();
1183
- }} className="casc-select__close position-absolute top-0 end-0 mt-0 mx-1"><svg width="10px" height="10px" viewBox="0 0 1024 1024"><path fill="#000" d="M195.2 195.2a64 64 0 0 1 90.496 0L512 421.504 738.304 195.2a64 64 0 0 1 90.496 90.496L602.496 512 828.8 738.304a64 64 0 0 1-90.496 90.496L512 602.496 285.696 828.8a64 64 0 0 1-90.496-90.496L421.504 512 195.2 285.696a64 64 0 0 1 0-90.496z" /></svg></a> : null}
1185
+ }} className="casc-menu__close position-absolute top-0 end-0 mt-0 mx-1"><svg width="10px" height="10px" viewBox="0 0 1024 1024"><path fill="#000" d="M195.2 195.2a64 64 0 0 1 90.496 0L512 421.504 738.304 195.2a64 64 0 0 1 90.496 90.496L602.496 512 828.8 738.304a64 64 0 0 1-90.496 90.496L512 602.496 285.696 828.8a64 64 0 0 1-90.496-90.496L421.504 512 195.2 285.696a64 64 0 0 1 0-90.496z" /></svg></a> : null}
1184
1186
 
1185
1187
 
1186
1188
 
@@ -1199,11 +1201,11 @@ const CascadingSelect = forwardRef((props: CascadingSelectProps, externalRef: an
1199
1201
 
1200
1202
 
1201
1203
  return (
1202
- <li key={level} data-col={level} className="casc-select__items-col">
1204
+ <li key={level} data-col={level} className="casc-menu__items-col">
1203
1205
 
1204
1206
  {/* SEARCH BOX */}
1205
1207
  {searchable && (
1206
- <div className="casc-select__items-col-searchbox">
1208
+ <div className="casc-menu__items-col-searchbox">
1207
1209
  <input
1208
1210
  type="text"
1209
1211
  placeholder={searchPlaceholder}
@@ -1243,7 +1245,7 @@ const CascadingSelect = forwardRef((props: CascadingSelectProps, externalRef: an
1243
1245
 
1244
1246
 
1245
1247
  <div className={combinedCls(
1246
- 'casc-select__val',
1248
+ 'casc-menu__val',
1247
1249
  {
1248
1250
  'inputable': inputable,
1249
1251
  }
@@ -1277,7 +1279,7 @@ const CascadingSelect = forwardRef((props: CascadingSelectProps, externalRef: an
1277
1279
  }
1278
1280
  }}
1279
1281
  id={idRes}
1280
- data-overlay-id={`casc-select__items-wrapper-${idRes}`}
1282
+ data-overlay-id={`casc-menu__items-wrapper-${idRes}`}
1281
1283
  name={name}
1282
1284
  className={combinedCls(
1283
1285
  clsWrite(controlClassName, 'form-control'),
@@ -1342,7 +1344,7 @@ const CascadingSelect = forwardRef((props: CascadingSelectProps, externalRef: an
1342
1344
 
1343
1345
 
1344
1346
  {/** REVIEW RESULT */}
1345
- {!inputable ? <div className="casc-select__result">{displayInfo()}</div> : null}
1347
+ {!inputable ? <div className="casc-menu__result">{displayInfo()}</div> : null}
1346
1348
 
1347
1349
 
1348
1350
  {/* Required marking */}
@@ -1359,7 +1361,7 @@ const CascadingSelect = forwardRef((props: CascadingSelectProps, externalRef: an
1359
1361
 
1360
1362
 
1361
1363
  {isShow ? <div
1362
- className="casc-select__closemask"
1364
+ className="casc-menu__closemask"
1363
1365
  onClick={(e) => {
1364
1366
  e.preventDefault();
1365
1367
  cancel();
@@ -3,6 +3,7 @@ import React from 'react';
3
3
  import { combinedCls } from 'funda-utils/dist/cjs/cls';
4
4
 
5
5
 
6
+
6
7
  export type GroupFnType = (arg1: any, arg2: any, arg3: number) => void;
7
8
 
8
9
  export type GroupProps = {
@@ -40,7 +41,7 @@ export default function Group(props: GroupProps) {
40
41
  data-level={level}
41
42
  data-query={item.queryId}
42
43
  className={combinedCls(
43
- 'casc-select-e2e__opt',
44
+ 'casc-menu-e2e__opt',
44
45
  {
45
46
  'active': item.current
46
47
  }
@@ -53,12 +54,12 @@ export default function Group(props: GroupProps) {
53
54
  } else {
54
55
  return columnTitle[level] === '' || perColumnHeadersShow === false ? null : <h3
55
56
  key={index}
56
- className="casc-select-e2e__opt-header"
57
+ className="casc-menu-e2e__opt-header"
57
58
  >
58
59
  <span dangerouslySetInnerHTML={{
59
60
  __html: columnTitle[level]
60
61
  }}></span>
61
- <div className="casc-select-e2e__opt-header__clean">
62
+ <div className="casc-menu-e2e__opt-header__clean">
62
63
  <a
63
64
  tabIndex={-1}
64
65
  href="#"