@steroidsjs/bootstrap 3.0.0-beta.29 → 3.0.0-beta.30
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/content/Accordion/AccordionItemView.scss +15 -10
- package/content/Alert/AlertView.scss +2 -0
- package/content/Avatar/AvatarView.scss +9 -1
- package/content/Badge/BadgeView.js +6 -6
- package/content/Badge/BadgeView.scss +40 -30
- package/content/Card/CardView.js +34 -14
- package/content/Card/CardView.scss +126 -110
- package/content/Detail/DetailView.scss +1 -0
- package/form/Button/ButtonView.js +1 -0
- package/form/Button/ButtonView.scss +18 -8
- package/form/CheckboxField/CheckboxFieldView.js +6 -3
- package/form/CheckboxField/CheckboxFieldView.scss +66 -1
- package/form/DropDownField/DropDownFieldView.js +46 -47
- package/form/DropDownField/DropDownFieldView.scss +390 -183
- package/form/DropDownField/views/DropDownItem/DropDownItemView.d.ts +3 -0
- package/form/DropDownField/views/DropDownItem/DropDownItemView.js +80 -0
- package/form/DropDownField/views/DropDownItem/DropDownItemView.scss +217 -0
- package/form/DropDownField/views/DropDownItem/index.d.ts +2 -0
- package/form/DropDownField/views/DropDownItem/index.js +7 -0
- package/form/Form/FormView.js +3 -3
- package/form/Form/FormView.scss +10 -14
- package/form/InputField/InputFieldView.scss +0 -27
- package/form/NumberField/NumberFieldView.scss +14 -32
- package/form/PasswordField/PasswordFieldView.scss +3 -6
- package/form/RadioListField/RadioListFieldView.js +7 -4
- package/form/RadioListField/RadioListFieldView.scss +115 -19
- package/form/TextField/TextFieldView.scss +1 -3
- package/icons/index.js +2 -0
- package/icons/svgs/dots.svg +5 -0
- package/icons/svgs/search.svg +4 -0
- package/layout/Tooltip/TooltipView.js +6 -6
- package/layout/Tooltip/TooltipView.scss +45 -37
- package/package.json +3 -3
- package/scss/mixins/index.scss +1 -1
- package/scss/mixins/scroll.scss +31 -0
- package/scss/variables/common/colors.scss +1 -0
- package/scss/variables/index.scss +0 -1
- package/scss/mixins/card.scss +0 -26
- package/scss/variables/components/card.scss +0 -20
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
+
};
|
|
16
|
+
exports.__esModule = true;
|
|
17
|
+
var react_1 = __importDefault(require("react"));
|
|
18
|
+
var useBem_1 = __importDefault(require("@steroidsjs/core/hooks/useBem"));
|
|
19
|
+
var Icon_1 = __importDefault(require("@steroidsjs/core/ui/content/Icon"));
|
|
20
|
+
var form_1 = require("@steroidsjs/core/ui/form");
|
|
21
|
+
var content_1 = require("@steroidsjs/core/ui/content");
|
|
22
|
+
require("./DropDownItemView.scss");
|
|
23
|
+
var GROUP_CONTENT_TYPE = 'group';
|
|
24
|
+
function DropDownItemView(props) {
|
|
25
|
+
var bem = (0, useBem_1["default"])('DropDownItemView');
|
|
26
|
+
var groupProps = props;
|
|
27
|
+
var commonProps = {
|
|
28
|
+
className: bem.element('option', {
|
|
29
|
+
hover: props.hoveredId === props.item[props.primaryKey],
|
|
30
|
+
select: props.selectedIds.includes(props.item[props.primaryKey]),
|
|
31
|
+
size: props.size
|
|
32
|
+
}),
|
|
33
|
+
onFocus: function () { return props.onItemHover(props.item[props.primaryKey]); },
|
|
34
|
+
onMouseOver: function () { return props.onItemHover(props.item[props.primaryKey]); },
|
|
35
|
+
onClick: function (e) {
|
|
36
|
+
e.preventDefault();
|
|
37
|
+
props.onItemSelect(props.item[props.primaryKey]);
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
var renderTypeCases = function (type, src) {
|
|
41
|
+
switch (type) {
|
|
42
|
+
case 'icon':
|
|
43
|
+
return (react_1["default"].createElement("div", __assign({}, commonProps),
|
|
44
|
+
typeof src === 'string' ? (react_1["default"].createElement(Icon_1["default"], { name: src, className: bem.element('icon') })) : (react_1["default"].createElement("span", { className: bem.element('icon') }, src)),
|
|
45
|
+
react_1["default"].createElement("span", null, props.item.label)));
|
|
46
|
+
case 'checkbox':
|
|
47
|
+
return (react_1["default"].createElement("div", __assign({}, commonProps),
|
|
48
|
+
react_1["default"].createElement(form_1.CheckboxField, { label: props.item.label, className: bem.element('checkbox'), size: props.size, inputProps: {
|
|
49
|
+
checked: props.selectedIds.includes(props.item[props.primaryKey])
|
|
50
|
+
} })));
|
|
51
|
+
case 'img':
|
|
52
|
+
return (react_1["default"].createElement("div", __assign({}, commonProps),
|
|
53
|
+
react_1["default"].createElement("span", { className: bem.element('img') },
|
|
54
|
+
react_1["default"].createElement("img", { src: src, alt: "custom source for item" })),
|
|
55
|
+
react_1["default"].createElement("span", null, props.item.label)));
|
|
56
|
+
case 'radio':
|
|
57
|
+
return (react_1["default"].createElement("div", __assign({}, commonProps),
|
|
58
|
+
react_1["default"].createElement(form_1.RadioListField, { items: [props.item], selectedIds: props.selectedIds, className: bem.element('radio', {
|
|
59
|
+
size: props.size
|
|
60
|
+
}), size: props.size })));
|
|
61
|
+
case 'group':
|
|
62
|
+
return (react_1["default"].createElement(content_1.AccordionItem, { childIndex: groupProps.childIndex, isShowMore: groupProps.isShowMore, toggleAccordion: groupProps.toggleAccordion, toggleCollapse: groupProps.toggleCollapse, title: props.item.label, position: "middle", className: bem.element('group', {
|
|
63
|
+
size: props.size
|
|
64
|
+
}) }, props.item[props.groupAttribute].map(function (subItem, itemIndex) { return (react_1["default"].createElement(DropDownItemView, __assign({}, props, { key: itemIndex, item: subItem }))); })));
|
|
65
|
+
default:
|
|
66
|
+
return null;
|
|
67
|
+
}
|
|
68
|
+
};
|
|
69
|
+
if (props.groupAttribute && Array.isArray(props.item[props.groupAttribute])) {
|
|
70
|
+
return renderTypeCases(GROUP_CONTENT_TYPE, props.item[props.groupAttribute]);
|
|
71
|
+
}
|
|
72
|
+
if (props.item.contentType) {
|
|
73
|
+
return renderTypeCases(props.item.contentType, props.item.contentSrc);
|
|
74
|
+
}
|
|
75
|
+
if (props.itemsContent) {
|
|
76
|
+
return renderTypeCases(props.itemsContent.type, props.itemsContent.src);
|
|
77
|
+
}
|
|
78
|
+
return (react_1["default"].createElement("div", __assign({}, commonProps), props.item.label));
|
|
79
|
+
}
|
|
80
|
+
exports["default"] = DropDownItemView;
|
|
@@ -0,0 +1,217 @@
|
|
|
1
|
+
@import "style/variables";
|
|
2
|
+
|
|
3
|
+
:root {
|
|
4
|
+
--drop-down-item-hover-background-color: #f5f8fa;
|
|
5
|
+
--drop-down-item-select-background-color: #eef1f2;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
html[data-theme="dark"] {
|
|
9
|
+
--drop-down-item-select-background-color: #5b5c6b;
|
|
10
|
+
--drop-down-item-hover-background-color: #4e4f57;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
$drop-down-item-select-background-color: var(--drop-down-item-select-background-color);
|
|
14
|
+
$drop-down-item-hover-background-color: var(--drop-down-item-hover-background-color);
|
|
15
|
+
|
|
16
|
+
@mixin statements {
|
|
17
|
+
&_select {
|
|
18
|
+
background-color: $drop-down-item-select-background-color;
|
|
19
|
+
}
|
|
20
|
+
&_hover {
|
|
21
|
+
background-color: $drop-down-item-hover-background-color;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
%fontProperties {
|
|
26
|
+
font-size: $font-size-base;
|
|
27
|
+
font-weight: 400;
|
|
28
|
+
line-height: 22px;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.DropDownItemView {
|
|
32
|
+
$root: &;
|
|
33
|
+
|
|
34
|
+
&__icon {
|
|
35
|
+
display: inline-block;
|
|
36
|
+
width: 24px;
|
|
37
|
+
height: 24px;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
&__option {
|
|
41
|
+
display: flex;
|
|
42
|
+
flex-flow: row wrap;
|
|
43
|
+
position: relative;
|
|
44
|
+
column-gap: 12px;
|
|
45
|
+
align-items: center;
|
|
46
|
+
background-color: $element-background-color;
|
|
47
|
+
color: $text-color;
|
|
48
|
+
|
|
49
|
+
&_size {
|
|
50
|
+
&_lg {
|
|
51
|
+
padding: 16px;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
&_md {
|
|
55
|
+
padding: 12px;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
&_sm {
|
|
59
|
+
padding: 8px;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
@include statements;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
&__checkbox {
|
|
67
|
+
width: 100%;
|
|
68
|
+
height: 24px;
|
|
69
|
+
pointer-events: none;
|
|
70
|
+
|
|
71
|
+
label {
|
|
72
|
+
width: 100%;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
&__img {
|
|
77
|
+
width: 24px;
|
|
78
|
+
height: 24px;
|
|
79
|
+
border-radius: $radius-small;
|
|
80
|
+
overflow: hidden;
|
|
81
|
+
|
|
82
|
+
img {
|
|
83
|
+
width: 100%;
|
|
84
|
+
height: 100%;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
&__radio {
|
|
89
|
+
pointer-events: none;
|
|
90
|
+
width: 100%;
|
|
91
|
+
|
|
92
|
+
div {
|
|
93
|
+
width: 100%;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
label {
|
|
97
|
+
width: 100%;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
label::before {
|
|
101
|
+
position: absolute;
|
|
102
|
+
right: 0;
|
|
103
|
+
margin-right: 0;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
label::after {
|
|
107
|
+
position: absolute;
|
|
108
|
+
right: 0;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
.RadioListFieldView__ellipse {
|
|
112
|
+
left: auto;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
&_size {
|
|
116
|
+
&_lg {
|
|
117
|
+
span {
|
|
118
|
+
right: 6px;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
&_md {
|
|
123
|
+
span {
|
|
124
|
+
right: 5px;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
&_sm {
|
|
129
|
+
span {
|
|
130
|
+
right: 4px;
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
&__group {
|
|
137
|
+
width: auto;
|
|
138
|
+
border-radius: none;
|
|
139
|
+
|
|
140
|
+
.AccordionItemView {
|
|
141
|
+
&__content {
|
|
142
|
+
padding: 0;
|
|
143
|
+
border: none;
|
|
144
|
+
|
|
145
|
+
&_visible {
|
|
146
|
+
border-bottom: 1px solid $border-color;
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
&__header-container {
|
|
151
|
+
display: flex;
|
|
152
|
+
flex-flow: row nowrap;
|
|
153
|
+
justify-content: space-between;
|
|
154
|
+
align-items: center;
|
|
155
|
+
|
|
156
|
+
border: none;
|
|
157
|
+
background-color: $element-background-color;
|
|
158
|
+
|
|
159
|
+
&:hover {
|
|
160
|
+
background-color: $drop-down-item-hover-background-color;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
&__title-container {
|
|
165
|
+
padding: inherit;
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
&__icon-wrapper {
|
|
169
|
+
position: static;
|
|
170
|
+
margin-right: 12px;
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
&__icon-chevron {
|
|
174
|
+
box-shadow: none;
|
|
175
|
+
svg {
|
|
176
|
+
border: 1px solid $border-color;
|
|
177
|
+
border-radius: $radius-small;
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
&_size {
|
|
183
|
+
&_lg {
|
|
184
|
+
font-size: $font-size-lg;
|
|
185
|
+
line-height: 24px;
|
|
186
|
+
|
|
187
|
+
.AccordionItemView__title-container {
|
|
188
|
+
font-size: inherit;
|
|
189
|
+
line-height: inherit;
|
|
190
|
+
padding: 16px;
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
&_md {
|
|
195
|
+
font-size: $font-size-base;
|
|
196
|
+
line-height: 22px;
|
|
197
|
+
|
|
198
|
+
.AccordionItemView__title-container {
|
|
199
|
+
font-size: inherit;
|
|
200
|
+
line-height: inherit;
|
|
201
|
+
padding: 12px;
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
&_sm {
|
|
206
|
+
font-size: $font-size-sm;
|
|
207
|
+
line-height: 18px;
|
|
208
|
+
|
|
209
|
+
.AccordionItemView__title-container {
|
|
210
|
+
font-size: inherit;
|
|
211
|
+
line-height: inherit;
|
|
212
|
+
padding: 8px;
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
exports.__esModule = true;
|
|
6
|
+
var DropDownItemView_1 = __importDefault(require("./DropDownItemView"));
|
|
7
|
+
exports["default"] = DropDownItemView_1["default"];
|
package/form/Form/FormView.js
CHANGED
|
@@ -59,9 +59,9 @@ function FormView(props) {
|
|
|
59
59
|
}
|
|
60
60
|
});
|
|
61
61
|
return (React.createElement("form", { ref: formRef, className: bem(bem.block({
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
}), props.className
|
|
62
|
+
inline: props.layout.layout === 'inline',
|
|
63
|
+
vertical: props.layout.layout === 'vertical'
|
|
64
|
+
}), props.className), onSubmit: props.onSubmit, style: props.style },
|
|
65
65
|
props.children,
|
|
66
66
|
(props.fields || []).map(function (field, index) { return (React.createElement(Field_1["default"], __assign({ key: index }, ((0, isString_1["default"])(field) ? { attribute: field } : field)))); }),
|
|
67
67
|
props.submitLabel && (React.createElement(Button_1["default"], { type: 'submit', label: props.submitLabel }))));
|
package/form/Form/FormView.scss
CHANGED
|
@@ -1,17 +1,13 @@
|
|
|
1
1
|
.FormView {
|
|
2
|
-
&_border {
|
|
3
|
-
padding: 20px;
|
|
4
|
-
border: 1px solid $border-default;
|
|
5
|
-
box-sizing: border-box;
|
|
6
|
-
box-shadow: $shadow-default;
|
|
7
|
-
border-radius: 0.5rem;
|
|
8
|
-
}
|
|
9
|
-
&_inline {
|
|
10
2
|
display: flex;
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
3
|
+
flex-flow: column nowrap;
|
|
4
|
+
|
|
5
|
+
&_inline {
|
|
6
|
+
column-gap: 12px;
|
|
7
|
+
flex-flow: row nowrap;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
&_vertical {
|
|
11
|
+
row-gap: 24px;
|
|
12
|
+
}
|
|
17
13
|
}
|
|
@@ -22,7 +22,6 @@ $lead-icon-disabled-color: var(--lead-icon-disabled-color);
|
|
|
22
22
|
flex-flow: row nowrap;
|
|
23
23
|
align-items: center;
|
|
24
24
|
|
|
25
|
-
width: 240px;
|
|
26
25
|
height: 34px;
|
|
27
26
|
|
|
28
27
|
color: $text-color;
|
|
@@ -249,32 +248,6 @@ $lead-icon-disabled-color: var(--lead-icon-disabled-color);
|
|
|
249
248
|
}
|
|
250
249
|
}
|
|
251
250
|
|
|
252
|
-
//Addons
|
|
253
|
-
&_hasAddon,
|
|
254
|
-
&_hasTextAddon {
|
|
255
|
-
width: fit-content;
|
|
256
|
-
|
|
257
|
-
#{$root}__input-wrapper {
|
|
258
|
-
width: auto;
|
|
259
|
-
}
|
|
260
|
-
|
|
261
|
-
#{$root}__input {
|
|
262
|
-
&_size {
|
|
263
|
-
&_lg {
|
|
264
|
-
width: 206px;
|
|
265
|
-
}
|
|
266
|
-
|
|
267
|
-
&_md {
|
|
268
|
-
width: 200px;
|
|
269
|
-
}
|
|
270
|
-
|
|
271
|
-
&_sm {
|
|
272
|
-
width: 192px;
|
|
273
|
-
}
|
|
274
|
-
}
|
|
275
|
-
}
|
|
276
|
-
}
|
|
277
|
-
|
|
278
251
|
&_hasAddonBefore {
|
|
279
252
|
#{$root}__input {
|
|
280
253
|
border-top-left-radius: 0;
|
|
@@ -14,8 +14,6 @@ $number-field-arrow-color: var(--number-field-arrow-color);
|
|
|
14
14
|
position: relative;
|
|
15
15
|
padding: 0;
|
|
16
16
|
|
|
17
|
-
width: 120px;
|
|
18
|
-
|
|
19
17
|
font-family: $font-family-nunito;
|
|
20
18
|
|
|
21
19
|
// Hide default arrows
|
|
@@ -72,7 +70,7 @@ $number-field-arrow-color: var(--number-field-arrow-color);
|
|
|
72
70
|
}
|
|
73
71
|
}
|
|
74
72
|
|
|
75
|
-
&:last-child{
|
|
73
|
+
&:last-child {
|
|
76
74
|
transform: rotate(180deg);
|
|
77
75
|
}
|
|
78
76
|
}
|
|
@@ -86,23 +84,18 @@ $number-field-arrow-color: var(--number-field-arrow-color);
|
|
|
86
84
|
font-size: $font-size-lg;
|
|
87
85
|
|
|
88
86
|
&-effects {
|
|
89
|
-
border-radius
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
&::placeholder {
|
|
93
|
-
font-size: $font-size-sm;
|
|
87
|
+
border-radius: $radius-large;
|
|
94
88
|
}
|
|
95
|
-
|
|
96
89
|
}
|
|
97
90
|
|
|
98
|
-
&__arrow {
|
|
91
|
+
&__arrow {
|
|
99
92
|
transform: translateX(-3px) translateY(6px);
|
|
100
93
|
|
|
101
|
-
&:last-child{
|
|
94
|
+
&:last-child {
|
|
102
95
|
transform: translateX(-3px) translateY(-8px) rotate(180deg);
|
|
103
96
|
}
|
|
104
97
|
}
|
|
105
|
-
}
|
|
98
|
+
}
|
|
106
99
|
}
|
|
107
100
|
|
|
108
101
|
&_md {
|
|
@@ -115,16 +108,12 @@ $number-field-arrow-color: var(--number-field-arrow-color);
|
|
|
115
108
|
&-effects {
|
|
116
109
|
border-radius: $radius-large;
|
|
117
110
|
}
|
|
118
|
-
|
|
119
|
-
&::placeholder {
|
|
120
|
-
font-size: $font-size-sm;
|
|
121
|
-
}
|
|
122
111
|
}
|
|
123
112
|
|
|
124
|
-
&__arrow {
|
|
113
|
+
&__arrow {
|
|
125
114
|
transform: translateX(-3px) translateY(4px) scale(0.8);
|
|
126
115
|
|
|
127
|
-
&:last-child{
|
|
116
|
+
&:last-child {
|
|
128
117
|
transform: translateX(-3px) translateY(-4px) rotate(180deg) scale(0.8);
|
|
129
118
|
}
|
|
130
119
|
}
|
|
@@ -137,19 +126,15 @@ $number-field-arrow-color: var(--number-field-arrow-color);
|
|
|
137
126
|
height: 34px;
|
|
138
127
|
font-size: $font-size-sm;
|
|
139
128
|
|
|
140
|
-
&::placeholder {
|
|
141
|
-
font-size: $font-size-sm;
|
|
142
|
-
}
|
|
143
|
-
|
|
144
129
|
&-effects {
|
|
145
130
|
border-radius: $radius-small;
|
|
146
131
|
}
|
|
147
132
|
}
|
|
148
133
|
|
|
149
|
-
&__arrow {
|
|
134
|
+
&__arrow {
|
|
150
135
|
transform: translateX(1px) translateY(2px) scale(0.8);
|
|
151
136
|
|
|
152
|
-
&:last-child{
|
|
137
|
+
&:last-child {
|
|
153
138
|
transform: translateX(1px) translateY(-3px) rotate(180deg) scale(0.8);
|
|
154
139
|
}
|
|
155
140
|
}
|
|
@@ -158,7 +143,7 @@ $number-field-arrow-color: var(--number-field-arrow-color);
|
|
|
158
143
|
}
|
|
159
144
|
|
|
160
145
|
&__input {
|
|
161
|
-
width:
|
|
146
|
+
width: 100%;
|
|
162
147
|
outline: none;
|
|
163
148
|
border: 1px solid $border-color;
|
|
164
149
|
border-radius: $radius-small;
|
|
@@ -185,10 +170,10 @@ $number-field-arrow-color: var(--number-field-arrow-color);
|
|
|
185
170
|
|
|
186
171
|
&:active:not(:disabled) {
|
|
187
172
|
border: 1px solid $primary;
|
|
188
|
-
}
|
|
173
|
+
}
|
|
189
174
|
}
|
|
190
175
|
|
|
191
|
-
&:focus-within #{$root}__arrows-container {
|
|
176
|
+
&:focus-within #{$root}__arrows-container {
|
|
192
177
|
opacity: 1;
|
|
193
178
|
pointer-events: all;
|
|
194
179
|
}
|
|
@@ -200,12 +185,9 @@ $number-field-arrow-color: var(--number-field-arrow-color);
|
|
|
200
185
|
top: 0;
|
|
201
186
|
left: 0;
|
|
202
187
|
|
|
203
|
-
width:
|
|
204
|
-
height:
|
|
205
|
-
|
|
206
|
-
transform: translate(-1.6666666667%, -5.8823529412%);
|
|
188
|
+
width: 100%;
|
|
189
|
+
height: 100%;
|
|
207
190
|
background-color: transparent;
|
|
208
|
-
|
|
209
191
|
border: 4px solid $primary-light;
|
|
210
192
|
opacity: 0;
|
|
211
193
|
pointer-events: none;
|
|
@@ -18,14 +18,12 @@ $eye-filled-color: var(--eye-filled-color);
|
|
|
18
18
|
$root: &;
|
|
19
19
|
|
|
20
20
|
position: relative;
|
|
21
|
-
width: 200px;
|
|
22
|
-
|
|
23
21
|
line-height: 24px;
|
|
24
22
|
font-weight: $font-weight-sm;
|
|
25
23
|
|
|
26
24
|
&__container {
|
|
27
25
|
position: relative;
|
|
28
|
-
width:
|
|
26
|
+
width: 100%;
|
|
29
27
|
height: 34px;
|
|
30
28
|
|
|
31
29
|
&::before {
|
|
@@ -33,8 +31,8 @@ $eye-filled-color: var(--eye-filled-color);
|
|
|
33
31
|
content: "";
|
|
34
32
|
width: 100%;
|
|
35
33
|
height: 100%;
|
|
36
|
-
|
|
37
|
-
|
|
34
|
+
|
|
35
|
+
transform: translate(-4px, -4px);
|
|
38
36
|
|
|
39
37
|
border-radius: 16px;
|
|
40
38
|
|
|
@@ -42,7 +40,6 @@ $eye-filled-color: var(--eye-filled-color);
|
|
|
42
40
|
transition: opacity 150ms ease-in-out;
|
|
43
41
|
opacity: 0;
|
|
44
42
|
pointer-events: none;
|
|
45
|
-
transform: translateX(-2%) translateY(-7.5%);
|
|
46
43
|
}
|
|
47
44
|
|
|
48
45
|
&:focus-within:not(&_disabled):not(:active)::before {
|
|
@@ -43,14 +43,17 @@ var useUniqueId_1 = __importDefault(require("@steroidsjs/core/hooks/useUniqueId"
|
|
|
43
43
|
function RadioListFieldView(props) {
|
|
44
44
|
var bem = (0, hooks_1.useBem)('RadioListFieldView');
|
|
45
45
|
var prefix = (0, useUniqueId_1["default"])('radio');
|
|
46
|
-
return (React.createElement("div", { className: bem.block() }, props.items.map(function (item, index) { return (React.createElement("div", { key: typeof item.id !== 'boolean' ? item.id : (item.id ? 'true' : 'false'), className: bem(bem.element('item', {
|
|
47
|
-
hasError: !!props.errors
|
|
48
|
-
|
|
46
|
+
return (React.createElement("div", { className: bem(bem.block(), props.className) }, props.items.map(function (item, index) { return (React.createElement("div", { key: typeof item.id !== 'boolean' ? item.id : (item.id ? 'true' : 'false'), className: bem(bem.element('item', {
|
|
47
|
+
hasError: !!props.errors,
|
|
48
|
+
size: props.size
|
|
49
|
+
})) },
|
|
49
50
|
React.createElement("input", __assign({}, props.inputProps, { id: "".concat(prefix, "_").concat(item.id), tabIndex: index, className: bem(bem.element('input', {
|
|
50
51
|
checked: props.selectedIds.includes(item.id)
|
|
51
52
|
})), checked: props.selectedIds.includes(item.id), disabled: props.disabled || item.disabled, onChange: function () {
|
|
52
53
|
props.onItemSelect(item.id);
|
|
53
54
|
} })),
|
|
54
|
-
React.createElement("label", { htmlFor: "".concat(prefix, "_").concat(item.id), className: bem.element('label') },
|
|
55
|
+
React.createElement("label", { htmlFor: "".concat(prefix, "_").concat(item.id), className: bem.element('label') },
|
|
56
|
+
React.createElement("span", { className: bem.element('ellipse') }),
|
|
57
|
+
item.label))); })));
|
|
55
58
|
}
|
|
56
59
|
exports["default"] = RadioListFieldView;
|