linear-react-components-ui 0.4.75 → 0.4.76-rc.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/.eslintrc.js +2 -5
- package/.tool-versions +1 -0
- package/.vscode/settings.json +8 -9
- package/README.md +23 -0
- package/config/jest/cssTransform.js +14 -0
- package/config/jest/fileTransform.js +12 -0
- package/config/jest/storageMock.js +40 -0
- package/jest.config.js +18 -0
- package/lib/alerts/alert.spec.js +133 -0
- package/lib/assets/styles/dropdown.scss +25 -2
- package/lib/assets/styles/effects.scss +12 -0
- package/lib/assets/styles/floatMenu.scss +0 -1
- package/lib/assets/styles/multiSelect.scss +105 -0
- package/lib/assets/styles/panel.scss +0 -1
- package/lib/assets/styles/periodpicker.scss +65 -0
- package/lib/assets/styles/popover.scss +9 -11
- package/lib/assets/styles/progress.scss +8 -1
- package/lib/assets/styles/select.scss +1 -0
- package/lib/assets/styles/table.scss +13 -5
- package/lib/assets/styles/tabs.scss +77 -43
- package/lib/assets/styles/treeview.scss +32 -0
- package/lib/avatar/avatar.spec.js +190 -0
- package/lib/avatar/index.js +6 -2
- package/lib/badge/badge.spec.js +127 -0
- package/lib/badge/index.js +3 -5
- package/lib/buttons/DefaultButton.js +7 -1
- package/lib/buttons/buttons.spec.js +504 -0
- package/lib/calendar/calendar.spec.js +171 -0
- package/lib/checkbox/Label.js +37 -0
- package/lib/checkbox/checkbox.spec.js +215 -0
- package/lib/checkbox/index.js +21 -6
- package/lib/dialog/Custom.js +7 -1
- package/lib/dialog/base/index.js +18 -6
- package/lib/dialog/dialog.spec.js +488 -0
- package/lib/dialog/form/index.js +23 -4
- package/lib/drawer/Drawer.js +3 -0
- package/lib/drawer/Drawer.spec.js +258 -0
- package/lib/drawer/Header.js +4 -1
- package/lib/drawer/index.js +4 -1
- package/lib/dropdown/Popup.js +1 -0
- package/lib/dropdown/dropdown.spec.js +168 -0
- package/lib/dropdown/withDropdown.js +10 -4
- package/lib/fieldset/fieldset.spec.js +329 -0
- package/lib/form/Field.js +2 -0
- package/lib/form/FieldNumber.js +10 -2
- package/lib/form/FieldPeriod.js +100 -0
- package/lib/form/form.spec.js +285 -0
- package/lib/form/helpers.js +9 -1
- package/lib/form/index.js +76 -10
- package/lib/form/withFieldHOC.js +2 -0
- package/lib/form/withFormSecurity.js +106 -0
- package/lib/gridlayout/GridRow.js +1 -1
- package/lib/gridlayout/gridLayout.spec.js +169 -0
- package/lib/icons/helper.js +16 -0
- package/lib/icons/icons.spec.js +86 -0
- package/lib/icons/index.js +2 -0
- package/lib/inputs/base/InputTextBase.js +15 -5
- package/lib/inputs/base/base.spec.js +690 -0
- package/lib/inputs/color/color_input.spec.js +174 -0
- package/lib/inputs/color/index.js +2 -2
- package/lib/inputs/date/date.spec.js +344 -0
- package/lib/inputs/date/index.js +7 -6
- package/lib/inputs/mask/Cpf.js +9 -9
- package/lib/inputs/mask/input_mask.spec.js +590 -0
- package/lib/inputs/multiSelect/ActionButtons.js +68 -0
- package/lib/inputs/multiSelect/Dropdown.js +200 -0
- package/lib/inputs/multiSelect/helper.js +18 -0
- package/lib/inputs/multiSelect/index.js +343 -0
- package/lib/inputs/number/BaseNumber.js +1 -1
- package/lib/inputs/number/index.js +7 -5
- package/lib/inputs/number/numberfield.spec.js +215 -0
- package/lib/inputs/period/Dialog.js +38 -0
- package/lib/inputs/period/Dropdown.js +90 -0
- package/lib/inputs/period/PeriodList.js +79 -0
- package/lib/inputs/period/helper.js +118 -0
- package/lib/inputs/period/index.js +490 -0
- package/lib/inputs/search/search_input.spec.js +209 -0
- package/lib/inputs/select/Dropdown.js +4 -4
- package/lib/inputs/select/index.js +26 -3
- package/lib/inputs/select/multiple/index.js +9 -7
- package/lib/inputs/select/select.spec.js +391 -0
- package/lib/inputs/select/simple/index.js +30 -18
- package/lib/inputs/text/textfield.spec.js +215 -0
- package/lib/inputs/textarea/textarea.spec.js +59 -0
- package/lib/internals/withTooltip.js +83 -82
- package/lib/labelMessages/index.js +3 -2
- package/lib/labelMessages/labelMessages.spec.js +176 -0
- package/lib/labels/label.spec.js +162 -0
- package/lib/list/Item.js +3 -3
- package/lib/list/index.js +21 -10
- package/lib/list/list.spec.js +611 -0
- package/lib/menus/float/MenuItem.js +25 -8
- package/lib/menus/float/float-menu.spec.js +221 -0
- package/lib/menus/sidenav/index.js +7 -3
- package/lib/menus/sidenav/popup_menu_search/index.js +1 -1
- package/lib/menus/sidenav/sidenav.spec.js +312 -0
- package/lib/noPermission/index.js +2 -1
- package/lib/panel/panel.spec.js +216 -0
- package/lib/popover/index.js +2 -1
- package/lib/popover/popover.spec.js +146 -0
- package/lib/progress/Bar.js +40 -9
- package/lib/progress/index.js +12 -4
- package/lib/progress/progress.spec.js +86 -0
- package/lib/radio/radio.spec.js +189 -0
- package/lib/spinner/SpinnerLoading.js +14 -24
- package/lib/spinner/index.js +6 -1
- package/lib/spinner/spinner.spec.js +152 -0
- package/lib/split/Split.js +10 -12
- package/lib/split/split.spec.js +151 -0
- package/lib/table/Header.js +3 -1
- package/lib/table/Row.js +2 -5
- package/lib/table/index.js +1 -4
- package/lib/table/table.spec.js +352 -0
- package/lib/tabs/DropdownItems.js +84 -0
- package/lib/tabs/Menu.js +18 -5
- package/lib/tabs/MenuItems.js +7 -7
- package/lib/tabs/Panel.js +1 -3
- package/lib/tabs/index.js +126 -17
- package/lib/tabs/tabs.spec.js +346 -0
- package/lib/toolbar/index.js +8 -4
- package/lib/toolbar/toolbar.spec.js +394 -0
- package/lib/tooltip/index.js +13 -0
- package/lib/tooltip/tooltip.spec.js +203 -0
- package/lib/treeview/Node.js +288 -18
- package/lib/treeview/index.js +448 -35
- package/lib/treeview/treeview.spec.js +261 -0
- package/package.json +19 -9
- package/.DS_Store +0 -0
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
@import "colors.scss";
|
|
2
2
|
@import "effects.scss";
|
|
3
|
+
|
|
4
|
+
.table-component,
|
|
5
|
+
.innertable {
|
|
6
|
+
contain: strict;
|
|
7
|
+
}
|
|
8
|
+
|
|
3
9
|
.table-component {
|
|
4
10
|
width: 100%;
|
|
5
11
|
max-width: 100%;
|
|
@@ -8,7 +14,8 @@
|
|
|
8
14
|
font-size: 14px;
|
|
9
15
|
max-height: 20em;
|
|
10
16
|
position: relative;
|
|
11
|
-
> .headercontainer,
|
|
17
|
+
> .headercontainer,
|
|
18
|
+
.bodycontainer {
|
|
12
19
|
width: 100%;
|
|
13
20
|
.innertable {
|
|
14
21
|
width: 100%;
|
|
@@ -31,7 +38,8 @@
|
|
|
31
38
|
vertical-align: middle;
|
|
32
39
|
border-bottom: 1px solid $component-border-color-soft;
|
|
33
40
|
line-height: 18px;
|
|
34
|
-
> .hidden,
|
|
41
|
+
> .hidden,
|
|
42
|
+
> .rowhover {
|
|
35
43
|
display: none;
|
|
36
44
|
animation: revealelement 0.2s forwards ease-in-out;
|
|
37
45
|
}
|
|
@@ -39,7 +47,7 @@
|
|
|
39
47
|
border-bottom: 0;
|
|
40
48
|
}
|
|
41
49
|
}
|
|
42
|
-
|
|
50
|
+
|
|
43
51
|
> .bodycontainer > .innertable > .tbody > .trow,
|
|
44
52
|
> .tbody > .trow {
|
|
45
53
|
&.-selected {
|
|
@@ -48,7 +56,7 @@
|
|
|
48
56
|
}
|
|
49
57
|
&:hover {
|
|
50
58
|
> .rowcolumn > .rowhover {
|
|
51
|
-
display: table
|
|
59
|
+
display: table;
|
|
52
60
|
}
|
|
53
61
|
}
|
|
54
62
|
}
|
|
@@ -84,7 +92,7 @@
|
|
|
84
92
|
background: $header-container-bg;
|
|
85
93
|
}
|
|
86
94
|
> .headercontainer > .innertable > .theader,
|
|
87
|
-
> .theader {
|
|
95
|
+
> .theader {
|
|
88
96
|
background: $header-container-bg;
|
|
89
97
|
}
|
|
90
98
|
}
|
|
@@ -1,4 +1,29 @@
|
|
|
1
1
|
@import "colors.scss";
|
|
2
|
+
%tab-closepanel {
|
|
3
|
+
background-color: transparent;
|
|
4
|
+
border: 0;
|
|
5
|
+
height: 20px;
|
|
6
|
+
margin-right: 5px;
|
|
7
|
+
padding: 0;
|
|
8
|
+
text-shadow: 0 1px 0 $font-color-second;
|
|
9
|
+
width: 20px;
|
|
10
|
+
visibility: hidden;
|
|
11
|
+
transition: all 0.2s ease-in-out;
|
|
12
|
+
border-radius: 4px;
|
|
13
|
+
&:after {
|
|
14
|
+
content: "×";
|
|
15
|
+
font-size: 20px;
|
|
16
|
+
text-shadow: none;
|
|
17
|
+
color: $font-color-soft;
|
|
18
|
+
transition: all 0.2s ease-in-out;
|
|
19
|
+
}
|
|
20
|
+
&:hover {
|
|
21
|
+
background-color: $color-light-dark;
|
|
22
|
+
&:after {
|
|
23
|
+
color: $font-color-second;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
}
|
|
2
27
|
%tab-component-menus {
|
|
3
28
|
.menu {
|
|
4
29
|
-webkit-box-shadow: 0px -1px 0px $component-border-color inset;
|
|
@@ -7,22 +32,26 @@
|
|
|
7
32
|
display: flex;
|
|
8
33
|
flex-wrap: nowrap;
|
|
9
34
|
justify-content: center;
|
|
10
|
-
flex
|
|
35
|
+
flex: 1;
|
|
11
36
|
&.-firsttabident > .menuitem:first-child {
|
|
12
37
|
margin-left: 15px;
|
|
13
38
|
}
|
|
14
39
|
}
|
|
15
|
-
.menu
|
|
40
|
+
.menu > .menuitem {
|
|
16
41
|
border-bottom: 0;
|
|
17
|
-
border-radius: 5px 5px 0px 0px;
|
|
18
|
-
-moz-border-radius: 5px 5px 0px 0px;
|
|
19
|
-
-webkit-border-radius: 5px 5px 0px 0px;
|
|
42
|
+
border-radius: 5px 5px 0px 0px;
|
|
43
|
+
-moz-border-radius: 5px 5px 0px 0px;
|
|
44
|
+
-webkit-border-radius: 5px 5px 0px 0px;
|
|
20
45
|
text-shadow: 0 1px $font-color-second;
|
|
21
46
|
cursor: pointer;
|
|
22
47
|
line-height: 20px;
|
|
23
48
|
margin-right: 1px;
|
|
24
49
|
padding: 0;
|
|
25
50
|
width: auto;
|
|
51
|
+
min-width: 100px;
|
|
52
|
+
display: flex;
|
|
53
|
+
justify-content: space-between;
|
|
54
|
+
align-items: center;
|
|
26
55
|
&.selected {
|
|
27
56
|
border: 1px solid $component-border-color;
|
|
28
57
|
background: $font-color-second;
|
|
@@ -31,40 +60,22 @@
|
|
|
31
60
|
box-shadow: 0;
|
|
32
61
|
font-weight: bold; /* z-index: 2; */
|
|
33
62
|
}
|
|
34
|
-
&.selected > .closepanel,
|
|
63
|
+
&.selected > .closepanel,
|
|
64
|
+
&:hover > .closepanel {
|
|
35
65
|
visibility: visible;
|
|
36
66
|
}
|
|
37
67
|
}
|
|
38
|
-
.menu
|
|
68
|
+
.menu > .menuitem > .menubutton {
|
|
69
|
+
white-space: nowrap;
|
|
70
|
+
text-overflow: ellipsis;
|
|
39
71
|
background: transparent;
|
|
40
72
|
border: 0;
|
|
41
73
|
}
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
float: right;
|
|
46
|
-
height: 20px;
|
|
47
|
-
margin: 5px 5px 0 0;
|
|
48
|
-
padding: 0;
|
|
49
|
-
text-shadow: 0 1px 0 $font-color-second;
|
|
50
|
-
width: 20px;
|
|
51
|
-
visibility: hidden;
|
|
52
|
-
transition: all 0.2s ease-in-out;
|
|
53
|
-
border-radius: 4px;
|
|
54
|
-
&:after {
|
|
55
|
-
content: "×";
|
|
56
|
-
font-size: 20px;
|
|
57
|
-
text-shadow: none;
|
|
58
|
-
color: $font-color-soft;
|
|
59
|
-
transition: all 0.2s ease-in-out;
|
|
60
|
-
}
|
|
61
|
-
&:hover {
|
|
62
|
-
background-color: $color-light-dark;
|
|
63
|
-
&:after {
|
|
64
|
-
color: $font-color-second;
|
|
65
|
-
}
|
|
66
|
-
}
|
|
74
|
+
|
|
75
|
+
.menu > .menuitem > .closepanel {
|
|
76
|
+
@extend %tab-closepanel;
|
|
67
77
|
}
|
|
78
|
+
|
|
68
79
|
.menubar {
|
|
69
80
|
width: auto;
|
|
70
81
|
border-bottom: 1px solid #dae1e8;
|
|
@@ -86,6 +97,10 @@
|
|
|
86
97
|
flex-wrap: nowrap;
|
|
87
98
|
width: 100%;
|
|
88
99
|
@extend %tab-component-menus;
|
|
100
|
+
> .dropdownbutton {
|
|
101
|
+
border-bottom: 1px solid $component-border-color;
|
|
102
|
+
padding: 0 0.8rem;
|
|
103
|
+
}
|
|
89
104
|
}
|
|
90
105
|
> .panel {
|
|
91
106
|
background-color: $font-color-second;
|
|
@@ -111,9 +126,9 @@
|
|
|
111
126
|
justify-content: center;
|
|
112
127
|
}
|
|
113
128
|
> .menu > .menuitem {
|
|
114
|
-
border-radius: 5px 0px 0px 5px;
|
|
115
|
-
-moz-border-radius: 5px 0px 0px 5px;
|
|
116
|
-
-webkit-border-radius: 5px 0px 0px 5px;
|
|
129
|
+
border-radius: 5px 0px 0px 5px;
|
|
130
|
+
-moz-border-radius: 5px 0px 0px 5px;
|
|
131
|
+
-webkit-border-radius: 5px 0px 0px 5px;
|
|
117
132
|
&.selected {
|
|
118
133
|
border: 1px solid $component-border-color;
|
|
119
134
|
border-right: 1px solid $font-color-second;
|
|
@@ -121,8 +136,8 @@
|
|
|
121
136
|
width: 100%;
|
|
122
137
|
}
|
|
123
138
|
}
|
|
124
|
-
> .menu
|
|
125
|
-
float: left
|
|
139
|
+
> .menu > .menuitem > .closepanel {
|
|
140
|
+
float: left;
|
|
126
141
|
}
|
|
127
142
|
> .panel {
|
|
128
143
|
border-top: 1px solid $component-border-color;
|
|
@@ -139,9 +154,9 @@
|
|
|
139
154
|
box-shadow: 0 1px 1px 0px $component-border-color inset;
|
|
140
155
|
}
|
|
141
156
|
> .menu > .menuitem {
|
|
142
|
-
border-radius: 0px 0px 5px 5px;
|
|
143
|
-
-moz-border-radius: 0px 0px 5px 5px;
|
|
144
|
-
-webkit-border-radius: 0px 0px 5px 5px;
|
|
157
|
+
border-radius: 0px 0px 5px 5px;
|
|
158
|
+
-moz-border-radius: 0px 0px 5px 5px;
|
|
159
|
+
-webkit-border-radius: 0px 0px 5px 5px;
|
|
145
160
|
&.selected {
|
|
146
161
|
border: 1px solid $component-border-color;
|
|
147
162
|
border-top: 1px solid $font-color-second;
|
|
@@ -167,9 +182,9 @@
|
|
|
167
182
|
justify-content: center;
|
|
168
183
|
}
|
|
169
184
|
> .menu > .menuitem {
|
|
170
|
-
border-radius: 0px 5px 5px 0px;
|
|
171
|
-
-moz-border-radius: 0px 5px 5px 0px;
|
|
172
|
-
-webkit-border-radius: 0px 5px 5px 0px;
|
|
185
|
+
border-radius: 0px 5px 5px 0px;
|
|
186
|
+
-moz-border-radius: 0px 5px 5px 0px;
|
|
187
|
+
-webkit-border-radius: 0px 5px 5px 0px;
|
|
173
188
|
&.selected {
|
|
174
189
|
border: 1px solid $component-border-color;
|
|
175
190
|
border-left: 1px solid $font-color-second;
|
|
@@ -182,3 +197,22 @@
|
|
|
182
197
|
border-right: 0;
|
|
183
198
|
}
|
|
184
199
|
}
|
|
200
|
+
|
|
201
|
+
/*
|
|
202
|
+
Dropdown hide tabs
|
|
203
|
+
*/
|
|
204
|
+
.dropdown-hide-tabs .menuitem {
|
|
205
|
+
cursor: pointer;
|
|
206
|
+
line-height: 20px;
|
|
207
|
+
margin-right: 1px;
|
|
208
|
+
display: flex;
|
|
209
|
+
align-items: center;
|
|
210
|
+
justify-content: space-between;
|
|
211
|
+
min-height: 50px;
|
|
212
|
+
> .closepanel {
|
|
213
|
+
@extend %tab-closepanel;
|
|
214
|
+
}
|
|
215
|
+
&:hover > .closepanel {
|
|
216
|
+
visibility: visible;
|
|
217
|
+
}
|
|
218
|
+
}
|
|
@@ -42,6 +42,25 @@
|
|
|
42
42
|
animation: revealelement 0.3s forwards ease-in-out;
|
|
43
43
|
> .label {
|
|
44
44
|
width: auto;
|
|
45
|
+
display: flex;
|
|
46
|
+
justify-content: flex-start;
|
|
47
|
+
align-items: center;
|
|
48
|
+
>.node-menu {
|
|
49
|
+
animation: revealelement 0.3s forwards ease-in-out;
|
|
50
|
+
margin-left: 10px;
|
|
51
|
+
}
|
|
52
|
+
>.node-rightelements {
|
|
53
|
+
animation: revealelement 0.3s forwards ease-in-out;
|
|
54
|
+
display: flex;
|
|
55
|
+
justify-content: flex-start;
|
|
56
|
+
align-items: center;
|
|
57
|
+
}
|
|
58
|
+
>.node-toolbarelements {
|
|
59
|
+
animation: revealelement 0.3s forwards ease-in-out;
|
|
60
|
+
width: auto;
|
|
61
|
+
height: 100%;
|
|
62
|
+
margin-left: 10px;
|
|
63
|
+
}
|
|
45
64
|
&:hover {
|
|
46
65
|
background-color: rgb(209, 209, 209);
|
|
47
66
|
}
|
|
@@ -53,3 +72,16 @@
|
|
|
53
72
|
float: left;
|
|
54
73
|
}
|
|
55
74
|
}
|
|
75
|
+
|
|
76
|
+
.nodelist > .treeviewitem > .label > .node-rightelements > .element,
|
|
77
|
+
.treeview-component > .treeviewcontainer > .treeviewitem > .label > .node-rightelements > .element {
|
|
78
|
+
margin-left: 10px;
|
|
79
|
+
display: flex;
|
|
80
|
+
align-items: center;
|
|
81
|
+
height: 100%;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
.nodelist > .treeviewitem > .label > .node-toolbarelements > .toolbar-group > .buttonbar,
|
|
85
|
+
.treeview-component > .treeviewcontainer > .treeviewitem > .label > .node-toolbarelements > .toolbar-group > .buttonbar {
|
|
86
|
+
border: none;
|
|
87
|
+
}
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
4
|
+
|
|
5
|
+
var _react = _interopRequireDefault(require("react"));
|
|
6
|
+
|
|
7
|
+
require("babel-polyfill");
|
|
8
|
+
|
|
9
|
+
require("@testing-library/jest-dom/extend-expect");
|
|
10
|
+
|
|
11
|
+
var _react2 = require("@testing-library/react");
|
|
12
|
+
|
|
13
|
+
var _ = _interopRequireDefault(require("."));
|
|
14
|
+
|
|
15
|
+
var _icons = _interopRequireDefault(require("../icons"));
|
|
16
|
+
|
|
17
|
+
var _list = _interopRequireWildcard(require("../list"));
|
|
18
|
+
|
|
19
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
20
|
+
|
|
21
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
22
|
+
|
|
23
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
24
|
+
|
|
25
|
+
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
26
|
+
|
|
27
|
+
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
28
|
+
|
|
29
|
+
describe('Avatar', function () {
|
|
30
|
+
it('should render correctly', function () {
|
|
31
|
+
var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_["default"], {
|
|
32
|
+
label: "B"
|
|
33
|
+
})),
|
|
34
|
+
container = _render.container;
|
|
35
|
+
|
|
36
|
+
expect(container.firstChild).toHaveClass('avatar-component -default');
|
|
37
|
+
expect(container.firstChild).toHaveTextContent('B');
|
|
38
|
+
expect(_react2.screen.getByRole('button')).toBeInTheDocument();
|
|
39
|
+
});
|
|
40
|
+
it('should apply customClass', function () {
|
|
41
|
+
var _render2 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_["default"], {
|
|
42
|
+
label: "B",
|
|
43
|
+
customClass: "avatarteste"
|
|
44
|
+
})),
|
|
45
|
+
container = _render2.container;
|
|
46
|
+
|
|
47
|
+
expect(container.firstChild).toHaveClass('avatarteste');
|
|
48
|
+
});
|
|
49
|
+
it('should change color', function () {
|
|
50
|
+
var _render3 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_["default"], {
|
|
51
|
+
label: "B",
|
|
52
|
+
color: "#333"
|
|
53
|
+
})),
|
|
54
|
+
container = _render3.container;
|
|
55
|
+
|
|
56
|
+
expect(container.firstChild).toHaveStyle('background-color: #333');
|
|
57
|
+
});
|
|
58
|
+
it('should change to square', function () {
|
|
59
|
+
var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_["default"], {
|
|
60
|
+
label: "B",
|
|
61
|
+
square: true
|
|
62
|
+
})),
|
|
63
|
+
container = _render4.container;
|
|
64
|
+
|
|
65
|
+
expect(container.firstChild).toHaveClass('-square');
|
|
66
|
+
});
|
|
67
|
+
it('should change to mini', function () {
|
|
68
|
+
var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_["default"], {
|
|
69
|
+
label: "B",
|
|
70
|
+
size: "mini"
|
|
71
|
+
})),
|
|
72
|
+
container = _render5.container;
|
|
73
|
+
|
|
74
|
+
expect(container.firstChild).toHaveClass('-mini');
|
|
75
|
+
});
|
|
76
|
+
it('should render icon with iconName', function () {
|
|
77
|
+
var _render6 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_["default"], {
|
|
78
|
+
iconName: "calc"
|
|
79
|
+
})),
|
|
80
|
+
container = _render6.container;
|
|
81
|
+
|
|
82
|
+
expect(container.firstChild).toContainElement(_react2.screen.getByTestId('icon'));
|
|
83
|
+
});
|
|
84
|
+
it('should render Icon with icon', function () {
|
|
85
|
+
var _render7 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_["default"], {
|
|
86
|
+
icon: /*#__PURE__*/_react["default"].createElement(_icons["default"], {
|
|
87
|
+
name: "user"
|
|
88
|
+
})
|
|
89
|
+
})),
|
|
90
|
+
container = _render7.container;
|
|
91
|
+
|
|
92
|
+
expect(container.firstChild).toContainElement(_react2.screen.getByTestId('icon'));
|
|
93
|
+
});
|
|
94
|
+
it('should render with image', function () {
|
|
95
|
+
var mockAvatar = /*#__PURE__*/_react["default"].createElement(_["default"], {
|
|
96
|
+
src: "https://yt3.ggpht.com/a-/AAuE7mDGQh9L3n_EULfeZEO9rs_JR4BY376CSrlxdw=s900-mo-c-c0xffffffff-rj-k-no",
|
|
97
|
+
srcAlt: "Avatar Teste"
|
|
98
|
+
});
|
|
99
|
+
|
|
100
|
+
var _render8 = (0, _react2.render)(mockAvatar),
|
|
101
|
+
container = _render8.container;
|
|
102
|
+
|
|
103
|
+
expect(container.firstChild).toContainElement(_react2.screen.getByAltText('Avatar Teste'));
|
|
104
|
+
expect(_react2.screen.getByAltText('Avatar Teste')).toHaveClass('imgavatar');
|
|
105
|
+
});
|
|
106
|
+
it('should not render icon if has image', function () {
|
|
107
|
+
var mockAvatar = /*#__PURE__*/_react["default"].createElement(_["default"], {
|
|
108
|
+
src: "https://yt3.ggpht.com/a-/AAuE7mDGQh9L3n_EULfeZEO9rs_JR4BY376CSrlxdw=s900-mo-c-c0xffffffff-rj-k-no",
|
|
109
|
+
srcAlt: "Avatar Teste"
|
|
110
|
+
});
|
|
111
|
+
|
|
112
|
+
var _render9 = (0, _react2.render)(mockAvatar),
|
|
113
|
+
container = _render9.container;
|
|
114
|
+
|
|
115
|
+
expect(container.firstChild).not.toContainElement(document.querySelector('.icon-component'));
|
|
116
|
+
});
|
|
117
|
+
it('should change size', function () {
|
|
118
|
+
var _render10 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_["default"], {
|
|
119
|
+
label: "B",
|
|
120
|
+
width: "56px",
|
|
121
|
+
height: "56px"
|
|
122
|
+
})),
|
|
123
|
+
container = _render10.container;
|
|
124
|
+
|
|
125
|
+
expect(container.firstChild).toHaveStyle('width: 56px; height:56px');
|
|
126
|
+
});
|
|
127
|
+
it('should open dropdown and render chilren', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
|
|
128
|
+
var mockAvatar, _render11, container;
|
|
129
|
+
|
|
130
|
+
return regeneratorRuntime.wrap(function _callee$(_context) {
|
|
131
|
+
while (1) {
|
|
132
|
+
switch (_context.prev = _context.next) {
|
|
133
|
+
case 0:
|
|
134
|
+
mockAvatar = /*#__PURE__*/_react["default"].createElement(_["default"], {
|
|
135
|
+
label: "B",
|
|
136
|
+
dropdown: true
|
|
137
|
+
}, /*#__PURE__*/_react["default"].createElement(_list["default"], null, /*#__PURE__*/_react["default"].createElement(_list.ListItem, {
|
|
138
|
+
rightIconName: "exclamation",
|
|
139
|
+
text: "Icone na direita"
|
|
140
|
+
}), /*#__PURE__*/_react["default"].createElement(_list.ListItem, {
|
|
141
|
+
rightIconName: "user",
|
|
142
|
+
text: "Icone na direita"
|
|
143
|
+
}), /*#__PURE__*/_react["default"].createElement(_list.ListItem, {
|
|
144
|
+
text: "Itemlist sem \xEDcone"
|
|
145
|
+
}), /*#__PURE__*/_react["default"].createElement(_list.ListItem, {
|
|
146
|
+
text: "Itemlist sem \xEDcone Disabled",
|
|
147
|
+
disabled: true
|
|
148
|
+
})));
|
|
149
|
+
_render11 = (0, _react2.render)(mockAvatar), container = _render11.container;
|
|
150
|
+
|
|
151
|
+
_react2.fireEvent.click(container.firstChild);
|
|
152
|
+
|
|
153
|
+
_context.next = 5;
|
|
154
|
+
return (0, _react2.waitFor)(function () {
|
|
155
|
+
return _react2.screen.getByTestId('dropdown-component');
|
|
156
|
+
});
|
|
157
|
+
|
|
158
|
+
case 5:
|
|
159
|
+
expect(container.firstChild).toHaveTextContent('B');
|
|
160
|
+
expect(_react2.screen.getByTestId('dropdown-component')).toBeInTheDocument();
|
|
161
|
+
|
|
162
|
+
case 7:
|
|
163
|
+
case "end":
|
|
164
|
+
return _context.stop();
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
}, _callee);
|
|
168
|
+
})));
|
|
169
|
+
it('should callback function onClick', function () {
|
|
170
|
+
var mockOnClick = jest.fn();
|
|
171
|
+
|
|
172
|
+
var _render12 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_["default"], {
|
|
173
|
+
label: "B",
|
|
174
|
+
onClick: mockOnClick
|
|
175
|
+
})),
|
|
176
|
+
container = _render12.container;
|
|
177
|
+
|
|
178
|
+
_react2.fireEvent.click(container.firstChild);
|
|
179
|
+
|
|
180
|
+
expect(mockOnClick).toBeCalledTimes(1);
|
|
181
|
+
});
|
|
182
|
+
it('should use targetRef', function () {
|
|
183
|
+
var mockTargetRef = jest.fn();
|
|
184
|
+
(0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_["default"], {
|
|
185
|
+
label: "B",
|
|
186
|
+
targetRef: mockTargetRef
|
|
187
|
+
}));
|
|
188
|
+
expect(mockTargetRef).toBeCalledTimes(1);
|
|
189
|
+
});
|
|
190
|
+
});
|
package/lib/avatar/index.js
CHANGED
|
@@ -54,6 +54,7 @@ var Avatar = function Avatar(props) {
|
|
|
54
54
|
iconName = props.iconName,
|
|
55
55
|
icon = props.icon,
|
|
56
56
|
src = props.src,
|
|
57
|
+
srcAlt = props.srcAlt,
|
|
57
58
|
customClass = props.customClass,
|
|
58
59
|
targetRef = props.targetRef,
|
|
59
60
|
label = props.label,
|
|
@@ -64,6 +65,7 @@ var Avatar = function Avatar(props) {
|
|
|
64
65
|
id = props.id;
|
|
65
66
|
var dropdownRef = (0, _react.useRef)(null);
|
|
66
67
|
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("div", {
|
|
68
|
+
"data-testid": "avatar",
|
|
67
69
|
id: id,
|
|
68
70
|
onKeyPress: null,
|
|
69
71
|
role: "button",
|
|
@@ -83,14 +85,14 @@ var Avatar = function Avatar(props) {
|
|
|
83
85
|
backgroundColor: "".concat(color),
|
|
84
86
|
cursor: "".concat(dropdown ? 'pointer' : 'normal')
|
|
85
87
|
}, style)
|
|
86
|
-
}, (iconName || icon) && getIcon(iconName, icon), src && /*#__PURE__*/_react["default"].createElement("img", {
|
|
88
|
+
}, (iconName || icon) && !src && getIcon(iconName, icon), src && /*#__PURE__*/_react["default"].createElement("img", {
|
|
87
89
|
className: "imgavatar",
|
|
88
90
|
style: {
|
|
89
91
|
width: "".concat(width),
|
|
90
92
|
height: "".concat(height)
|
|
91
93
|
},
|
|
92
94
|
src: src,
|
|
93
|
-
alt:
|
|
95
|
+
alt: srcAlt
|
|
94
96
|
}), label), dropdown && getDropdownPopup(dropdownRef.current));
|
|
95
97
|
};
|
|
96
98
|
|
|
@@ -103,6 +105,7 @@ Avatar.propTypes = {
|
|
|
103
105
|
iconName: _propTypes["default"].string,
|
|
104
106
|
icon: _propTypes["default"].instanceOf(Object),
|
|
105
107
|
src: _propTypes["default"].string,
|
|
108
|
+
srcAlt: _propTypes["default"].string,
|
|
106
109
|
children: _propTypes["default"].element,
|
|
107
110
|
square: _propTypes["default"].bool,
|
|
108
111
|
customClass: _propTypes["default"].string,
|
|
@@ -124,6 +127,7 @@ Avatar.defaultProps = {
|
|
|
124
127
|
iconName: '',
|
|
125
128
|
icon: null,
|
|
126
129
|
src: '',
|
|
130
|
+
srcAlt: 'Avatar',
|
|
127
131
|
customClass: '',
|
|
128
132
|
children: null,
|
|
129
133
|
square: false,
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _react = _interopRequireDefault(require("react"));
|
|
4
|
+
|
|
5
|
+
var _react2 = require("@testing-library/react");
|
|
6
|
+
|
|
7
|
+
require("@testing-library/jest-dom/extend-expect");
|
|
8
|
+
|
|
9
|
+
var _ = _interopRequireDefault(require("."));
|
|
10
|
+
|
|
11
|
+
var _icons = _interopRequireDefault(require("../icons"));
|
|
12
|
+
|
|
13
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
14
|
+
|
|
15
|
+
function _extends() { _extends = Object.assign || 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); }
|
|
16
|
+
|
|
17
|
+
var mockBadge = function mockBadge(props) {
|
|
18
|
+
return /*#__PURE__*/_react["default"].createElement(_["default"], _extends({
|
|
19
|
+
customClass: "mockBadge",
|
|
20
|
+
customClassForBadge: "classforbadge",
|
|
21
|
+
content: "10"
|
|
22
|
+
}, props), /*#__PURE__*/_react["default"].createElement(_icons["default"], {
|
|
23
|
+
name: "bell_alert"
|
|
24
|
+
}));
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
describe('Badges', function () {
|
|
28
|
+
it('should render correctly', function () {
|
|
29
|
+
var _render = (0, _react2.render)(mockBadge()),
|
|
30
|
+
container = _render.container;
|
|
31
|
+
|
|
32
|
+
expect(container.firstChild).toBeTruthy();
|
|
33
|
+
});
|
|
34
|
+
it('should render children', function () {
|
|
35
|
+
var _render2 = (0, _react2.render)(mockBadge()),
|
|
36
|
+
container = _render2.container,
|
|
37
|
+
getByTestId = _render2.getByTestId;
|
|
38
|
+
|
|
39
|
+
expect(container.firstChild).toContainElement(getByTestId('icon'));
|
|
40
|
+
});
|
|
41
|
+
it('should render content', function () {
|
|
42
|
+
var _render3 = (0, _react2.render)(mockBadge()),
|
|
43
|
+
container = _render3.container;
|
|
44
|
+
|
|
45
|
+
expect(container.firstChild).toHaveTextContent('10');
|
|
46
|
+
});
|
|
47
|
+
it('should apply custom class', function () {
|
|
48
|
+
var _render4 = (0, _react2.render)(mockBadge()),
|
|
49
|
+
container = _render4.container;
|
|
50
|
+
|
|
51
|
+
expect(container.firstChild).toHaveClass('mockBadge');
|
|
52
|
+
});
|
|
53
|
+
it('should apply custom class', function () {
|
|
54
|
+
var _render5 = (0, _react2.render)(mockBadge()),
|
|
55
|
+
container = _render5.container;
|
|
56
|
+
|
|
57
|
+
expect(container.firstChild).toHaveClass('mockBadge');
|
|
58
|
+
});
|
|
59
|
+
it('should apply custom class for badge', function () {
|
|
60
|
+
var _render6 = (0, _react2.render)(mockBadge()),
|
|
61
|
+
container = _render6.container;
|
|
62
|
+
|
|
63
|
+
expect(container.querySelector('.badge')).toHaveClass('classforbadge');
|
|
64
|
+
});
|
|
65
|
+
it('should apply custom top', function () {
|
|
66
|
+
var _render7 = (0, _react2.render)(mockBadge({
|
|
67
|
+
top: '10px'
|
|
68
|
+
})),
|
|
69
|
+
container = _render7.container;
|
|
70
|
+
|
|
71
|
+
expect(container.querySelector('.badge')).toHaveStyle('top: 10px;');
|
|
72
|
+
});
|
|
73
|
+
it('should apply custom right', function () {
|
|
74
|
+
var _render8 = (0, _react2.render)(mockBadge({
|
|
75
|
+
right: '10px'
|
|
76
|
+
})),
|
|
77
|
+
container = _render8.container;
|
|
78
|
+
|
|
79
|
+
expect(container.querySelector('.badge')).toHaveStyle('right: 10px;');
|
|
80
|
+
});
|
|
81
|
+
it('should apply default color', function () {
|
|
82
|
+
var _render9 = (0, _react2.render)(mockBadge()),
|
|
83
|
+
container = _render9.container;
|
|
84
|
+
|
|
85
|
+
expect(container.querySelector('.badge')).toHaveClass('-default');
|
|
86
|
+
});
|
|
87
|
+
it('should apply primary color', function () {
|
|
88
|
+
var _render10 = (0, _react2.render)(mockBadge({
|
|
89
|
+
color: 'primary'
|
|
90
|
+
})),
|
|
91
|
+
container = _render10.container;
|
|
92
|
+
|
|
93
|
+
expect(container.querySelector('.badge')).toHaveClass('-primary');
|
|
94
|
+
});
|
|
95
|
+
it('should apply danger color', function () {
|
|
96
|
+
var _render11 = (0, _react2.render)(mockBadge({
|
|
97
|
+
color: 'danger'
|
|
98
|
+
})),
|
|
99
|
+
container = _render11.container;
|
|
100
|
+
|
|
101
|
+
expect(container.querySelector('.badge')).toHaveClass('-danger');
|
|
102
|
+
});
|
|
103
|
+
it('should apply warning color', function () {
|
|
104
|
+
var _render12 = (0, _react2.render)(mockBadge({
|
|
105
|
+
color: 'warning'
|
|
106
|
+
})),
|
|
107
|
+
container = _render12.container;
|
|
108
|
+
|
|
109
|
+
expect(container.querySelector('.badge')).toHaveClass('-warning');
|
|
110
|
+
});
|
|
111
|
+
it('should apply success color', function () {
|
|
112
|
+
var _render13 = (0, _react2.render)(mockBadge({
|
|
113
|
+
color: 'success'
|
|
114
|
+
})),
|
|
115
|
+
container = _render13.container;
|
|
116
|
+
|
|
117
|
+
expect(container.querySelector('.badge')).toHaveClass('-success');
|
|
118
|
+
});
|
|
119
|
+
it('should apply info color', function () {
|
|
120
|
+
var _render14 = (0, _react2.render)(mockBadge({
|
|
121
|
+
color: 'info'
|
|
122
|
+
})),
|
|
123
|
+
container = _render14.container;
|
|
124
|
+
|
|
125
|
+
expect(container.querySelector('.badge')).toHaveClass('-info');
|
|
126
|
+
});
|
|
127
|
+
});
|
package/lib/badge/index.js
CHANGED
|
@@ -13,8 +13,6 @@ require("../assets/styles/badge.scss");
|
|
|
13
13
|
|
|
14
14
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
15
15
|
|
|
16
|
-
function _extends() { _extends = Object.assign || 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); }
|
|
17
|
-
|
|
18
16
|
var Badge = function Badge(props) {
|
|
19
17
|
var color = props.color,
|
|
20
18
|
customClass = props.customClass,
|
|
@@ -23,9 +21,9 @@ var Badge = function Badge(props) {
|
|
|
23
21
|
content = props.content,
|
|
24
22
|
top = props.top,
|
|
25
23
|
right = props.right;
|
|
26
|
-
return /*#__PURE__*/_react["default"].createElement("div",
|
|
24
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
27
25
|
className: "badge-component ".concat(customClass)
|
|
28
|
-
},
|
|
26
|
+
}, children, /*#__PURE__*/_react["default"].createElement("span", {
|
|
29
27
|
className: "badge -".concat(color, " ").concat(customClassForBadge),
|
|
30
28
|
style: {
|
|
31
29
|
top: "".concat(top),
|
|
@@ -49,7 +47,7 @@ Badge.propTypes = {
|
|
|
49
47
|
children: _propTypes["default"].element.isRequired,
|
|
50
48
|
customClass: _propTypes["default"].string,
|
|
51
49
|
customClassForBadge: _propTypes["default"].string,
|
|
52
|
-
content: _propTypes["default"].object
|
|
50
|
+
content: _propTypes["default"].oneOfType([_propTypes["default"].object, _propTypes["default"].string])
|
|
53
51
|
};
|
|
54
52
|
var _default = Badge;
|
|
55
53
|
exports["default"] = _default;
|