@innovaccer/design-system 2.7.0 → 2.8.0-0
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/.github/workflows/chromatic.yml +3 -1
- package/.github/workflows/main.yml +1 -1
- package/.github/workflows/manual.yml +1 -1
- package/.github/workflows/pull_request.yml +1 -1
- package/.github/workflows/test.yml +1 -1
- package/CHANGELOG.md +28 -0
- package/core/components/atoms/_chip/__tests__/__snapshots__/_chip.test.tsx.snap +8 -8
- package/core/components/atoms/_chip/index.tsx +1 -1
- package/core/components/atoms/avatar/__tests__/__snapshots__/Avatar.test.tsx.snap +20 -0
- package/core/components/atoms/avatarGroup/AvatarCount.tsx +29 -0
- package/core/components/atoms/avatarGroup/AvatarGroup.tsx +16 -62
- package/core/components/atoms/avatarGroup/AvatarPopperBody.tsx +37 -0
- package/core/components/atoms/avatarGroup/Avatars.tsx +23 -0
- package/core/components/atoms/avatarGroup/__stories__/index.story.tsx +41 -0
- package/core/components/atoms/avatarGroup/__tests__/AvatarGroup.test.tsx +1 -1
- package/core/components/atoms/avatarGroup/__tests__/__snapshots__/AvatarGroup.test.tsx.snap +8 -4
- package/core/components/atoms/chip/__tests__/__snapshots__/Chip.test.tsx.snap +11 -11
- package/core/components/atoms/chipGroup/__tests__/__snapshots__/chipGroup.test.tsx.snap +4 -4
- package/core/components/atoms/dropdown/DropdownButton.tsx +1 -1
- package/core/components/atoms/dropdown/__tests__/__snapshots__/Dropdown.test.tsx.snap +29 -2
- package/core/components/atoms/popperWrapper/PopperWrapper.tsx +117 -12
- package/core/components/molecules/chipInput/__tests__/__snapshots__/ChipInput.test.tsx.snap +4 -4
- package/core/components/molecules/editableChipInput/__tests__/__snapshots__/EditableChipInput.test.tsx.snap +4 -4
- package/core/components/molecules/editableDropdown/__tests__/__snapshots__/EditableDropdown.test.tsx.snap +1 -0
- package/core/components/molecules/popover/__tests__/__snapshots__/Popover.test.tsx.snap +16 -8
- package/core/components/molecules/tooltip/__tests__/__snapshots__/Tooltip.test.tsx.snap +8 -0
- package/core/components/organisms/calendar/__tests__/__snapshots__/Calendar.test.tsx.snap +8 -8
- package/core/components/organisms/datePicker/__tests__/__snapshots__/DatePicker.test.tsx.snap +14 -13
- package/core/components/organisms/dateRangePicker/__tests__/__snapshots__/DateRangePicker.test.tsx.snap +42 -30
- package/core/components/organisms/table/__tests__/__snapshots__/Table.test.tsx.snap +1544 -0
- package/core/utils/__tests__/__snapshots__/TS.test.tsx.snap +6 -2
- package/css/dist/index.css +11 -1
- package/css/dist/index.css.map +1 -1
- package/css/src/components/ProgressBar.css +1 -1
- package/css/src/components/button.css +1 -0
- package/css/src/components/chip.css +4 -0
- package/css/src/components/slider.css +1 -0
- package/css/src/utils/utility.css +4 -0
- package/dist/core/components/atoms/avatarGroup/AvatarCount.d.ts +2 -0
- package/dist/core/components/atoms/avatarGroup/AvatarGroup.d.ts +2 -2
- package/dist/core/components/atoms/avatarGroup/AvatarPopperBody.d.ts +2 -0
- package/dist/core/components/atoms/avatarGroup/Avatars.d.ts +2 -0
- package/dist/core/components/atoms/popperWrapper/PopperWrapper.d.ts +62 -54
- package/dist/index.esm.js +198 -93
- package/dist/index.js +188 -84
- package/dist/index.js.map +1 -1
- package/dist/index.umd.js +1 -1
- package/dist/index.umd.js.br +0 -0
- package/dist/index.umd.js.gz +0 -0
- package/package.json +1 -1
|
@@ -6,7 +6,7 @@ exports[`Chip component
|
|
|
6
6
|
<body>
|
|
7
7
|
<div>
|
|
8
8
|
<div
|
|
9
|
-
class="Chip Chip--Action"
|
|
9
|
+
class="Chip-wrapper Chip Chip--Action"
|
|
10
10
|
data-test="DesignSystem-Chip--GenericChip"
|
|
11
11
|
>
|
|
12
12
|
<span
|
|
@@ -24,7 +24,7 @@ exports[`Chip component
|
|
|
24
24
|
<body>
|
|
25
25
|
<div>
|
|
26
26
|
<div
|
|
27
|
-
class="Chip Chip--Action"
|
|
27
|
+
class="Chip-wrapper Chip Chip--Action"
|
|
28
28
|
data-test="DesignSystem-Chip--GenericChip"
|
|
29
29
|
>
|
|
30
30
|
<span
|
|
@@ -42,7 +42,7 @@ exports[`Chip component
|
|
|
42
42
|
<body>
|
|
43
43
|
<div>
|
|
44
44
|
<div
|
|
45
|
-
class="Chip Chip-Action--disabled"
|
|
45
|
+
class="Chip-wrapper Chip Chip-Action--disabled"
|
|
46
46
|
data-test="DesignSystem-Chip--GenericChip"
|
|
47
47
|
>
|
|
48
48
|
<span
|
|
@@ -60,7 +60,7 @@ exports[`Chip component
|
|
|
60
60
|
<body>
|
|
61
61
|
<div>
|
|
62
62
|
<div
|
|
63
|
-
class="Chip Chip--Input"
|
|
63
|
+
class="Chip-wrapper Chip Chip--Input"
|
|
64
64
|
data-test="DesignSystem-Chip--GenericChip"
|
|
65
65
|
>
|
|
66
66
|
<span
|
|
@@ -78,7 +78,7 @@ exports[`Chip component
|
|
|
78
78
|
<body>
|
|
79
79
|
<div>
|
|
80
80
|
<div
|
|
81
|
-
class="Chip Chip--Input"
|
|
81
|
+
class="Chip-wrapper Chip Chip--Input"
|
|
82
82
|
data-test="DesignSystem-Chip--GenericChip"
|
|
83
83
|
>
|
|
84
84
|
<span
|
|
@@ -96,7 +96,7 @@ exports[`Chip component
|
|
|
96
96
|
<body>
|
|
97
97
|
<div>
|
|
98
98
|
<div
|
|
99
|
-
class="Chip Chip-Input--disabled"
|
|
99
|
+
class="Chip-wrapper Chip Chip-Input--disabled"
|
|
100
100
|
data-test="DesignSystem-Chip--GenericChip"
|
|
101
101
|
>
|
|
102
102
|
<span
|
|
@@ -114,7 +114,7 @@ exports[`Chip component
|
|
|
114
114
|
<body>
|
|
115
115
|
<div>
|
|
116
116
|
<div
|
|
117
|
-
class="Chip Chip--Selection"
|
|
117
|
+
class="Chip-wrapper Chip Chip--Selection"
|
|
118
118
|
data-test="DesignSystem-Chip--GenericChip"
|
|
119
119
|
>
|
|
120
120
|
<span
|
|
@@ -132,7 +132,7 @@ exports[`Chip component
|
|
|
132
132
|
<body>
|
|
133
133
|
<div>
|
|
134
134
|
<div
|
|
135
|
-
class="Chip Chip--Selection"
|
|
135
|
+
class="Chip-wrapper Chip Chip--Selection"
|
|
136
136
|
data-test="DesignSystem-Chip--GenericChip"
|
|
137
137
|
>
|
|
138
138
|
<span
|
|
@@ -150,7 +150,7 @@ exports[`Chip component
|
|
|
150
150
|
<body>
|
|
151
151
|
<div>
|
|
152
152
|
<div
|
|
153
|
-
class="Chip Chip-Selection--disabled"
|
|
153
|
+
class="Chip-wrapper Chip Chip-Selection--disabled"
|
|
154
154
|
data-test="DesignSystem-Chip--GenericChip"
|
|
155
155
|
>
|
|
156
156
|
<span
|
|
@@ -168,7 +168,7 @@ exports[`Chip component
|
|
|
168
168
|
<body>
|
|
169
169
|
<div>
|
|
170
170
|
<div
|
|
171
|
-
class="Chip Chip--Selection"
|
|
171
|
+
class="Chip-wrapper Chip Chip--Selection"
|
|
172
172
|
data-test="DesignSystem-Chip--GenericChip"
|
|
173
173
|
>
|
|
174
174
|
<span
|
|
@@ -186,7 +186,7 @@ exports[`Chip component
|
|
|
186
186
|
<body>
|
|
187
187
|
<div>
|
|
188
188
|
<div
|
|
189
|
-
class="Chip Chip--Selection Chip-Selection--selected"
|
|
189
|
+
class="Chip-wrapper Chip Chip--Selection Chip-Selection--selected"
|
|
190
190
|
data-test="DesignSystem-Chip--GenericChip"
|
|
191
191
|
>
|
|
192
192
|
<span
|
|
@@ -13,7 +13,7 @@ exports[`ChipGroup component
|
|
|
13
13
|
class="ChipGroup-item"
|
|
14
14
|
>
|
|
15
15
|
<div
|
|
16
|
-
class="Chip Chip--action"
|
|
16
|
+
class="Chip-wrapper Chip Chip--action"
|
|
17
17
|
data-test="DesignSystem-ChipGroup--Chip"
|
|
18
18
|
>
|
|
19
19
|
<i
|
|
@@ -36,7 +36,7 @@ exports[`ChipGroup component
|
|
|
36
36
|
class="ChipGroup-item"
|
|
37
37
|
>
|
|
38
38
|
<div
|
|
39
|
-
class="Chip Chip--input"
|
|
39
|
+
class="Chip-wrapper Chip Chip--input"
|
|
40
40
|
data-test="DesignSystem-ChipGroup--Chip"
|
|
41
41
|
>
|
|
42
42
|
<i
|
|
@@ -68,7 +68,7 @@ exports[`ChipGroup component
|
|
|
68
68
|
class="ChipGroup-item"
|
|
69
69
|
>
|
|
70
70
|
<div
|
|
71
|
-
class="Chip Chip--selection Chip-selection--selected"
|
|
71
|
+
class="Chip-wrapper Chip Chip--selection Chip-selection--selected"
|
|
72
72
|
data-test="DesignSystem-ChipGroup--Chip"
|
|
73
73
|
>
|
|
74
74
|
<i
|
|
@@ -100,7 +100,7 @@ exports[`ChipGroup component
|
|
|
100
100
|
class="ChipGroup-item"
|
|
101
101
|
>
|
|
102
102
|
<div
|
|
103
|
-
class="Chip Chip--selection"
|
|
103
|
+
class="Chip-wrapper Chip Chip--selection"
|
|
104
104
|
data-test="DesignSystem-ChipGroup--Chip"
|
|
105
105
|
>
|
|
106
106
|
<i
|
|
@@ -93,7 +93,7 @@ const DropdownButton = React.forwardRef<HTMLButtonElement, DropdownButtonProps>(
|
|
|
93
93
|
{!menu && (
|
|
94
94
|
<div className="DropdownButton-wrapper">
|
|
95
95
|
{inlineLabel && (
|
|
96
|
-
<Text appearance="subtle" className="mr-4">
|
|
96
|
+
<Text appearance="subtle" className="mr-4 white-space-nowrap">
|
|
97
97
|
{`${inlineLabel.trim().charAt(0).toUpperCase()}${inlineLabel.trim().slice(1)}`}
|
|
98
98
|
</Text>
|
|
99
99
|
)}
|
|
@@ -8,6 +8,7 @@ exports[`Dropdown component
|
|
|
8
8
|
<div
|
|
9
9
|
class="Dropdown"
|
|
10
10
|
>
|
|
11
|
+
<style />
|
|
11
12
|
<div
|
|
12
13
|
class="OutsideClick PopperWrapper-trigger w-100"
|
|
13
14
|
>
|
|
@@ -49,6 +50,7 @@ exports[`Dropdown component
|
|
|
49
50
|
<div
|
|
50
51
|
class="Dropdown"
|
|
51
52
|
>
|
|
53
|
+
<style />
|
|
52
54
|
<div
|
|
53
55
|
class="OutsideClick PopperWrapper-trigger w-100"
|
|
54
56
|
>
|
|
@@ -90,6 +92,7 @@ exports[`Dropdown component
|
|
|
90
92
|
<div
|
|
91
93
|
class="Dropdown"
|
|
92
94
|
>
|
|
95
|
+
<style />
|
|
93
96
|
<div
|
|
94
97
|
class="OutsideClick PopperWrapper-trigger w-100"
|
|
95
98
|
>
|
|
@@ -131,6 +134,7 @@ exports[`Dropdown component
|
|
|
131
134
|
<div
|
|
132
135
|
class="Dropdown"
|
|
133
136
|
>
|
|
137
|
+
<style />
|
|
134
138
|
<div
|
|
135
139
|
class="OutsideClick PopperWrapper-trigger w-100"
|
|
136
140
|
>
|
|
@@ -172,6 +176,7 @@ exports[`Dropdown component
|
|
|
172
176
|
<div
|
|
173
177
|
class="Dropdown"
|
|
174
178
|
>
|
|
179
|
+
<style />
|
|
175
180
|
<div
|
|
176
181
|
class="OutsideClick PopperWrapper-trigger w-100"
|
|
177
182
|
>
|
|
@@ -220,6 +225,7 @@ exports[`Dropdown component
|
|
|
220
225
|
<div
|
|
221
226
|
class="Dropdown"
|
|
222
227
|
>
|
|
228
|
+
<style />
|
|
223
229
|
<div
|
|
224
230
|
class="OutsideClick PopperWrapper-trigger w-100"
|
|
225
231
|
>
|
|
@@ -234,7 +240,7 @@ exports[`Dropdown component
|
|
|
234
240
|
class="DropdownButton-wrapper"
|
|
235
241
|
>
|
|
236
242
|
<span
|
|
237
|
-
class="Text Text--subtle Text--regular mr-4"
|
|
243
|
+
class="Text Text--subtle Text--regular mr-4 white-space-nowrap"
|
|
238
244
|
data-test="DesignSystem-Text"
|
|
239
245
|
>
|
|
240
246
|
Label
|
|
@@ -267,6 +273,7 @@ exports[`Dropdown component
|
|
|
267
273
|
<div
|
|
268
274
|
class="Dropdown"
|
|
269
275
|
>
|
|
276
|
+
<style />
|
|
270
277
|
<div
|
|
271
278
|
class="OutsideClick PopperWrapper-trigger w-100"
|
|
272
279
|
>
|
|
@@ -308,6 +315,7 @@ exports[`Dropdown component
|
|
|
308
315
|
<div
|
|
309
316
|
class="Dropdown"
|
|
310
317
|
>
|
|
318
|
+
<style />
|
|
311
319
|
<div
|
|
312
320
|
class="OutsideClick PopperWrapper-trigger w-100"
|
|
313
321
|
>
|
|
@@ -357,6 +365,7 @@ exports[`Dropdown component
|
|
|
357
365
|
<div
|
|
358
366
|
class="Dropdown"
|
|
359
367
|
>
|
|
368
|
+
<style />
|
|
360
369
|
<div
|
|
361
370
|
class="OutsideClick PopperWrapper-trigger w-100"
|
|
362
371
|
>
|
|
@@ -372,7 +381,7 @@ exports[`Dropdown component
|
|
|
372
381
|
class="DropdownButton-wrapper"
|
|
373
382
|
>
|
|
374
383
|
<span
|
|
375
|
-
class="Text Text--subtle Text--regular mr-4"
|
|
384
|
+
class="Text Text--subtle Text--regular mr-4 white-space-nowrap"
|
|
376
385
|
data-test="DesignSystem-Text"
|
|
377
386
|
>
|
|
378
387
|
Label
|
|
@@ -405,6 +414,7 @@ exports[`Dropdown component
|
|
|
405
414
|
<div
|
|
406
415
|
class="Dropdown"
|
|
407
416
|
>
|
|
417
|
+
<style />
|
|
408
418
|
<div
|
|
409
419
|
class="OutsideClick PopperWrapper-trigger w-100"
|
|
410
420
|
>
|
|
@@ -447,6 +457,7 @@ exports[`Dropdown component
|
|
|
447
457
|
<div
|
|
448
458
|
class="Dropdown"
|
|
449
459
|
>
|
|
460
|
+
<style />
|
|
450
461
|
<div
|
|
451
462
|
class="OutsideClick PopperWrapper-trigger w-100"
|
|
452
463
|
>
|
|
@@ -488,6 +499,7 @@ exports[`Dropdown component
|
|
|
488
499
|
<div
|
|
489
500
|
class="Dropdown"
|
|
490
501
|
>
|
|
502
|
+
<style />
|
|
491
503
|
<div
|
|
492
504
|
class="OutsideClick PopperWrapper-trigger w-100"
|
|
493
505
|
>
|
|
@@ -529,6 +541,7 @@ exports[`Dropdown component
|
|
|
529
541
|
<div
|
|
530
542
|
class="Dropdown"
|
|
531
543
|
>
|
|
544
|
+
<style />
|
|
532
545
|
<div
|
|
533
546
|
class="OutsideClick PopperWrapper-trigger w-100"
|
|
534
547
|
>
|
|
@@ -570,6 +583,7 @@ exports[`Dropdown component
|
|
|
570
583
|
<div
|
|
571
584
|
class="Dropdown"
|
|
572
585
|
>
|
|
586
|
+
<style />
|
|
573
587
|
<div
|
|
574
588
|
class="OutsideClick PopperWrapper-trigger w-100"
|
|
575
589
|
>
|
|
@@ -611,6 +625,7 @@ exports[`Dropdown component
|
|
|
611
625
|
<div
|
|
612
626
|
class="Dropdown"
|
|
613
627
|
>
|
|
628
|
+
<style />
|
|
614
629
|
<div
|
|
615
630
|
class="OutsideClick PopperWrapper-trigger w-100"
|
|
616
631
|
>
|
|
@@ -652,6 +667,7 @@ exports[`Dropdown component
|
|
|
652
667
|
<div
|
|
653
668
|
class="Dropdown"
|
|
654
669
|
>
|
|
670
|
+
<style />
|
|
655
671
|
<div
|
|
656
672
|
class="OutsideClick PopperWrapper-trigger"
|
|
657
673
|
>
|
|
@@ -684,6 +700,7 @@ exports[`Dropdown component
|
|
|
684
700
|
<div
|
|
685
701
|
class="Dropdown"
|
|
686
702
|
>
|
|
703
|
+
<style />
|
|
687
704
|
<div
|
|
688
705
|
class="OutsideClick PopperWrapper-trigger w-100"
|
|
689
706
|
>
|
|
@@ -725,6 +742,7 @@ exports[`Dropdown component
|
|
|
725
742
|
<div
|
|
726
743
|
class="Dropdown"
|
|
727
744
|
>
|
|
745
|
+
<style />
|
|
728
746
|
<div
|
|
729
747
|
class="OutsideClick PopperWrapper-trigger w-100"
|
|
730
748
|
>
|
|
@@ -766,6 +784,7 @@ exports[`Dropdown component
|
|
|
766
784
|
<div
|
|
767
785
|
class="Dropdown"
|
|
768
786
|
>
|
|
787
|
+
<style />
|
|
769
788
|
<div
|
|
770
789
|
class="OutsideClick PopperWrapper-trigger w-100"
|
|
771
790
|
>
|
|
@@ -807,6 +826,7 @@ exports[`Dropdown component
|
|
|
807
826
|
<div
|
|
808
827
|
class="Dropdown"
|
|
809
828
|
>
|
|
829
|
+
<style />
|
|
810
830
|
<div
|
|
811
831
|
class="OutsideClick PopperWrapper-trigger w-100"
|
|
812
832
|
>
|
|
@@ -848,6 +868,7 @@ exports[`Dropdown component
|
|
|
848
868
|
<div
|
|
849
869
|
class="Dropdown"
|
|
850
870
|
>
|
|
871
|
+
<style />
|
|
851
872
|
<div
|
|
852
873
|
class="OutsideClick PopperWrapper-trigger w-100"
|
|
853
874
|
>
|
|
@@ -889,6 +910,7 @@ exports[`Dropdown component
|
|
|
889
910
|
<div
|
|
890
911
|
class="Dropdown"
|
|
891
912
|
>
|
|
913
|
+
<style />
|
|
892
914
|
<div
|
|
893
915
|
class="OutsideClick PopperWrapper-trigger w-100"
|
|
894
916
|
>
|
|
@@ -930,6 +952,7 @@ exports[`Dropdown component
|
|
|
930
952
|
<div
|
|
931
953
|
class="Dropdown"
|
|
932
954
|
>
|
|
955
|
+
<style />
|
|
933
956
|
<div
|
|
934
957
|
class="OutsideClick PopperWrapper-trigger w-100"
|
|
935
958
|
>
|
|
@@ -971,6 +994,7 @@ exports[`Dropdown component
|
|
|
971
994
|
<div
|
|
972
995
|
class="Dropdown"
|
|
973
996
|
>
|
|
997
|
+
<style />
|
|
974
998
|
<div
|
|
975
999
|
class="OutsideClick PopperWrapper-trigger w-100"
|
|
976
1000
|
>
|
|
@@ -1012,6 +1036,7 @@ exports[`Dropdown component
|
|
|
1012
1036
|
<div
|
|
1013
1037
|
class="Dropdown"
|
|
1014
1038
|
>
|
|
1039
|
+
<style />
|
|
1015
1040
|
<div
|
|
1016
1041
|
class="OutsideClick PopperWrapper-trigger w-100"
|
|
1017
1042
|
>
|
|
@@ -1053,6 +1078,7 @@ exports[`Dropdown component
|
|
|
1053
1078
|
<div
|
|
1054
1079
|
class="Dropdown"
|
|
1055
1080
|
>
|
|
1081
|
+
<style />
|
|
1056
1082
|
<div
|
|
1057
1083
|
class="OutsideClick PopperWrapper-trigger w-100"
|
|
1058
1084
|
>
|
|
@@ -1094,6 +1120,7 @@ exports[`Dropdown component
|
|
|
1094
1120
|
<div
|
|
1095
1121
|
class="Dropdown"
|
|
1096
1122
|
>
|
|
1123
|
+
<style />
|
|
1097
1124
|
<div
|
|
1098
1125
|
class="OutsideClick PopperWrapper-trigger w-100"
|
|
1099
1126
|
>
|
|
@@ -86,10 +86,22 @@ export interface PopperWrapperProps {
|
|
|
86
86
|
* type: 'onMouseLeave' | 'onMouseEnter' | 'outsideClick' | 'onClick';
|
|
87
87
|
*/
|
|
88
88
|
onToggle: (open: boolean, type?: string) => void;
|
|
89
|
+
/*
|
|
90
|
+
* animationClass is for providing custom animations for open/close of the popover
|
|
91
|
+
* animationClass.open - takes animation class when popover is open
|
|
92
|
+
* animationClass.close - takes animation class when popover is close
|
|
93
|
+
*/
|
|
94
|
+
animationClass?: {
|
|
95
|
+
open: string;
|
|
96
|
+
close: string;
|
|
97
|
+
};
|
|
89
98
|
}
|
|
90
99
|
|
|
91
100
|
interface PopperWrapperState {
|
|
92
101
|
zIndex?: number;
|
|
102
|
+
animationKeyframe: string;
|
|
103
|
+
isOpen: boolean;
|
|
104
|
+
uniqueKey: string;
|
|
93
105
|
}
|
|
94
106
|
|
|
95
107
|
export class PopperWrapper extends React.Component<PopperWrapperProps, PopperWrapperState> {
|
|
@@ -99,6 +111,7 @@ export class PopperWrapper extends React.Component<PopperWrapperProps, PopperWra
|
|
|
99
111
|
_timer?: number;
|
|
100
112
|
_throttleWait?: boolean;
|
|
101
113
|
offsetMapping: Record<Offset, string>;
|
|
114
|
+
positionOffset: Record<PositionType, string>;
|
|
102
115
|
|
|
103
116
|
static defaultProps = {
|
|
104
117
|
on: 'click',
|
|
@@ -112,7 +125,7 @@ export class PopperWrapper extends React.Component<PopperWrapperProps, PopperWra
|
|
|
112
125
|
constructor(props: PopperWrapperProps) {
|
|
113
126
|
super(props);
|
|
114
127
|
|
|
115
|
-
this.state = {};
|
|
128
|
+
this.state = { animationKeyframe: '', isOpen: this.props.open || false, uniqueKey: '' };
|
|
116
129
|
|
|
117
130
|
this.hoverableDelay = 100;
|
|
118
131
|
this.offsetMapping = {
|
|
@@ -120,6 +133,25 @@ export class PopperWrapper extends React.Component<PopperWrapperProps, PopperWra
|
|
|
120
133
|
medium: '4px',
|
|
121
134
|
large: '8px',
|
|
122
135
|
};
|
|
136
|
+
|
|
137
|
+
this.positionOffset = {
|
|
138
|
+
'auto-start': 'top left',
|
|
139
|
+
auto: 'top',
|
|
140
|
+
'auto-end': 'top right',
|
|
141
|
+
'top-start': 'bottom left',
|
|
142
|
+
top: 'bottom',
|
|
143
|
+
'top-end': 'bottom right',
|
|
144
|
+
'right-start': 'top right',
|
|
145
|
+
right: 'top right',
|
|
146
|
+
'right-end': 'top right',
|
|
147
|
+
'bottom-end': 'top right',
|
|
148
|
+
bottom: 'top',
|
|
149
|
+
'bottom-start': 'top left',
|
|
150
|
+
'left-end': 'top left',
|
|
151
|
+
left: 'top left',
|
|
152
|
+
'left-start': 'top left',
|
|
153
|
+
};
|
|
154
|
+
|
|
123
155
|
this.triggerRef = React.createRef();
|
|
124
156
|
this.popupRef = React.createRef();
|
|
125
157
|
|
|
@@ -141,13 +173,23 @@ export class PopperWrapper extends React.Component<PopperWrapperProps, PopperWra
|
|
|
141
173
|
}
|
|
142
174
|
if (prevProps.open !== this.props.open) {
|
|
143
175
|
this._throttleWait = false;
|
|
176
|
+
this.setState({
|
|
177
|
+
animationKeyframe: '',
|
|
178
|
+
});
|
|
144
179
|
if (this.props.open) {
|
|
145
180
|
const triggerElement = this.triggerRef.current;
|
|
146
181
|
const zIndex = this.getZIndexForLayer(triggerElement);
|
|
147
182
|
|
|
148
183
|
this.setState({
|
|
149
184
|
zIndex: zIndex === undefined ? zIndex : zIndex + 1,
|
|
185
|
+
isOpen: true,
|
|
150
186
|
});
|
|
187
|
+
} else {
|
|
188
|
+
setTimeout(() => {
|
|
189
|
+
this.setState({
|
|
190
|
+
isOpen: false,
|
|
191
|
+
});
|
|
192
|
+
}, 120);
|
|
151
193
|
}
|
|
152
194
|
}
|
|
153
195
|
}
|
|
@@ -292,31 +334,94 @@ export class PopperWrapper extends React.Component<PopperWrapperProps, PopperWra
|
|
|
292
334
|
}
|
|
293
335
|
|
|
294
336
|
getPopperChildren({ ref, style, placement, outOfBoundaries }: PopperChildrenProps) {
|
|
295
|
-
const { offset, children } = this.props;
|
|
296
|
-
const { zIndex } = this.state;
|
|
337
|
+
const { offset, children, open, animationClass } = this.props;
|
|
338
|
+
const { zIndex, animationKeyframe, uniqueKey } = this.state;
|
|
297
339
|
const newStyle = offset ? this.getUpdatedStyle(style, placement, offset) : style;
|
|
340
|
+
let childrenStyles = {
|
|
341
|
+
...newStyle,
|
|
342
|
+
zIndex,
|
|
343
|
+
};
|
|
344
|
+
let classes = '';
|
|
345
|
+
|
|
346
|
+
if (!animationClass) {
|
|
347
|
+
const transformStyles = this.popupRef.current?.style.getPropertyValue('transform');
|
|
348
|
+
if (transformStyles && !animationKeyframe) {
|
|
349
|
+
const uniqueKey = Math.random().toString(36).substring(2, 6);
|
|
350
|
+
|
|
351
|
+
const popperAnimation = `
|
|
352
|
+
@keyframes popper-open-${uniqueKey} {
|
|
353
|
+
from {
|
|
354
|
+
transform: ${transformStyles} scaleY(0.5);
|
|
355
|
+
opacity: 0.5;
|
|
356
|
+
}
|
|
357
|
+
to {
|
|
358
|
+
transform: ${transformStyles} scaleY(1);
|
|
359
|
+
opacity: 1
|
|
360
|
+
}
|
|
361
|
+
}
|
|
362
|
+
@keyframes popper-close-${uniqueKey} {
|
|
363
|
+
from {
|
|
364
|
+
transform: ${transformStyles} scaleY(1);
|
|
365
|
+
opacity: 1
|
|
366
|
+
}
|
|
367
|
+
to {
|
|
368
|
+
transform: ${transformStyles} scaleY(0);
|
|
369
|
+
opacity: 0.5
|
|
370
|
+
}
|
|
371
|
+
}`;
|
|
372
|
+
|
|
373
|
+
this.setState({
|
|
374
|
+
animationKeyframe: popperAnimation,
|
|
375
|
+
uniqueKey,
|
|
376
|
+
});
|
|
377
|
+
}
|
|
298
378
|
|
|
299
|
-
|
|
379
|
+
const popperAnimationStyles = {
|
|
380
|
+
transformOrigin: this.positionOffset[this.props.placement],
|
|
381
|
+
animation: open
|
|
382
|
+
? `popper-open-${uniqueKey} 120ms cubic-bezier(0, 0, 0.38, 0.9)`
|
|
383
|
+
: `popper-close-${uniqueKey} 120ms cubic-bezier(0.2, 0, 1, 0.9)`,
|
|
384
|
+
};
|
|
385
|
+
|
|
386
|
+
childrenStyles = {
|
|
387
|
+
...childrenStyles,
|
|
388
|
+
...popperAnimationStyles,
|
|
389
|
+
};
|
|
390
|
+
} else {
|
|
391
|
+
classes = classNames(
|
|
392
|
+
{
|
|
393
|
+
[`${animationClass.open}`]: open,
|
|
394
|
+
[`${animationClass.close}`]: !open,
|
|
395
|
+
},
|
|
396
|
+
children.props.className
|
|
397
|
+
);
|
|
398
|
+
}
|
|
399
|
+
|
|
400
|
+
const childProps = {
|
|
300
401
|
ref,
|
|
301
|
-
style:
|
|
302
|
-
...newStyle,
|
|
303
|
-
zIndex,
|
|
304
|
-
},
|
|
402
|
+
style: childrenStyles,
|
|
305
403
|
'data-placement': placement,
|
|
306
404
|
'data-hide': outOfBoundaries,
|
|
307
405
|
onMouseEnter: this.handleMouseEnter,
|
|
308
406
|
onMouseLeave: this.handleMouseLeave,
|
|
309
|
-
}
|
|
407
|
+
};
|
|
408
|
+
|
|
409
|
+
const element = React.cloneElement(
|
|
410
|
+
children,
|
|
411
|
+
animationClass ? { ...childProps, className: classes } : { ...childProps }
|
|
412
|
+
);
|
|
310
413
|
return element;
|
|
311
414
|
}
|
|
312
415
|
|
|
313
416
|
render() {
|
|
314
|
-
const { placement, appendToBody,
|
|
417
|
+
const { placement, appendToBody, hide, boundaryElement } = this.props;
|
|
418
|
+
const { animationKeyframe, isOpen } = this.state;
|
|
315
419
|
|
|
316
420
|
return (
|
|
317
421
|
<Manager>
|
|
422
|
+
<style>{animationKeyframe}</style>
|
|
318
423
|
<Reference innerRef={this.triggerRef}>{({ ref }) => this.getTriggerElement(ref)}</Reference>
|
|
319
|
-
{
|
|
424
|
+
{isOpen &&
|
|
320
425
|
appendToBody &&
|
|
321
426
|
ReactDOM.createPortal(
|
|
322
427
|
<Popper
|
|
@@ -331,7 +436,7 @@ export class PopperWrapper extends React.Component<PopperWrapperProps, PopperWra
|
|
|
331
436
|
</Popper>,
|
|
332
437
|
document.body
|
|
333
438
|
)}
|
|
334
|
-
{
|
|
439
|
+
{isOpen && !appendToBody && (
|
|
335
440
|
<Popper placement={placement} innerRef={this.popupRef}>
|
|
336
441
|
{this.getPopperChildren}
|
|
337
442
|
</Popper>
|
|
@@ -13,7 +13,7 @@ exports[`ChipInput component
|
|
|
13
13
|
class="ChipInput-wrapper"
|
|
14
14
|
>
|
|
15
15
|
<div
|
|
16
|
-
class="Chip Chip--input my-2 mx-2"
|
|
16
|
+
class="Chip-wrapper Chip Chip--input my-2 mx-2"
|
|
17
17
|
data-test="DesignSystem-ChipInput--Chip"
|
|
18
18
|
>
|
|
19
19
|
<span
|
|
@@ -33,7 +33,7 @@ exports[`ChipInput component
|
|
|
33
33
|
</i>
|
|
34
34
|
</div>
|
|
35
35
|
<div
|
|
36
|
-
class="Chip Chip--input my-2 mx-2"
|
|
36
|
+
class="Chip-wrapper Chip Chip--input my-2 mx-2"
|
|
37
37
|
data-test="DesignSystem-ChipInput--Chip"
|
|
38
38
|
>
|
|
39
39
|
<span
|
|
@@ -86,7 +86,7 @@ exports[`ChipInput component
|
|
|
86
86
|
class="ChipInput-wrapper"
|
|
87
87
|
>
|
|
88
88
|
<div
|
|
89
|
-
class="Chip Chip-input--disabled my-2 mx-2"
|
|
89
|
+
class="Chip-wrapper Chip Chip-input--disabled my-2 mx-2"
|
|
90
90
|
data-test="DesignSystem-ChipInput--Chip"
|
|
91
91
|
>
|
|
92
92
|
<span
|
|
@@ -106,7 +106,7 @@ exports[`ChipInput component
|
|
|
106
106
|
</i>
|
|
107
107
|
</div>
|
|
108
108
|
<div
|
|
109
|
-
class="Chip Chip-input--disabled my-2 mx-2"
|
|
109
|
+
class="Chip-wrapper Chip Chip-input--disabled my-2 mx-2"
|
|
110
110
|
data-test="DesignSystem-ChipInput--Chip"
|
|
111
111
|
>
|
|
112
112
|
<span
|
|
@@ -20,7 +20,7 @@ exports[`EditableChipInput component
|
|
|
20
20
|
data-test="DesignSystem-EditableChipInput--Default"
|
|
21
21
|
>
|
|
22
22
|
<div
|
|
23
|
-
class="Chip Chip--input my-2 mx-2"
|
|
23
|
+
class="Chip-wrapper Chip Chip--input my-2 mx-2"
|
|
24
24
|
data-test="DesignSystem-EditableChipInput--Chip"
|
|
25
25
|
>
|
|
26
26
|
<span
|
|
@@ -40,7 +40,7 @@ exports[`EditableChipInput component
|
|
|
40
40
|
</i>
|
|
41
41
|
</div>
|
|
42
42
|
<div
|
|
43
|
-
class="Chip Chip--input my-2 mx-2"
|
|
43
|
+
class="Chip-wrapper Chip Chip--input my-2 mx-2"
|
|
44
44
|
data-test="DesignSystem-EditableChipInput--Chip"
|
|
45
45
|
>
|
|
46
46
|
<span
|
|
@@ -86,7 +86,7 @@ exports[`EditableChipInput component
|
|
|
86
86
|
data-test="DesignSystem-EditableChipInput--Default"
|
|
87
87
|
>
|
|
88
88
|
<div
|
|
89
|
-
class="Chip Chip--input my-2 mx-2"
|
|
89
|
+
class="Chip-wrapper Chip Chip--input my-2 mx-2"
|
|
90
90
|
data-test="DesignSystem-EditableChipInput--Chip"
|
|
91
91
|
>
|
|
92
92
|
<span
|
|
@@ -106,7 +106,7 @@ exports[`EditableChipInput component
|
|
|
106
106
|
</i>
|
|
107
107
|
</div>
|
|
108
108
|
<div
|
|
109
|
-
class="Chip Chip--input my-2 mx-2"
|
|
109
|
+
class="Chip-wrapper Chip Chip--input my-2 mx-2"
|
|
110
110
|
data-test="DesignSystem-EditableChipInput--Chip"
|
|
111
111
|
>
|
|
112
112
|
<span
|