@laerdal/life-react-components 0.0.280-dev.1 → 0.0.280-dev.12.full
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/dist/esm/Banners/Banner.js +107 -52
- package/dist/esm/Banners/Banner.js.map +1 -1
- package/dist/esm/Banners/styles.js +122 -0
- package/dist/esm/Banners/styles.js.map +1 -0
- package/dist/esm/Button/Iconbutton.js +1 -1
- package/dist/esm/Button/Iconbutton.js.map +1 -1
- package/dist/esm/Chips/InputChip.js +3 -0
- package/dist/esm/Chips/InputChip.js.map +1 -1
- package/dist/esm/Dropdown/DropdownButton.js +2 -0
- package/dist/esm/Dropdown/DropdownButton.js.map +1 -1
- package/dist/esm/Dropdown/DropdownFilter.js +0 -1
- package/dist/esm/Dropdown/DropdownFilter.js.map +1 -1
- package/dist/esm/Footer/Components/FooterNewsletterAndSocialSection.js +36 -15
- package/dist/esm/Footer/Components/FooterNewsletterAndSocialSection.js.map +1 -1
- package/dist/esm/GlobalNavigationBar/UserMenu/MobileUserMenu.js +4 -0
- package/dist/esm/GlobalNavigationBar/UserMenu/MobileUserMenu.js.map +1 -1
- package/dist/esm/GlobalNavigationBar/mobile/MobileMenu.js +2 -0
- package/dist/esm/GlobalNavigationBar/mobile/MobileMenu.js.map +1 -1
- package/dist/esm/InputFields/DatepickerField.js +2 -0
- package/dist/esm/InputFields/DatepickerField.js.map +1 -1
- package/dist/esm/InputFields/styling.js +7 -1
- package/dist/esm/InputFields/styling.js.map +1 -1
- package/dist/esm/Modals/Modal.js +2 -0
- package/dist/esm/Modals/Modal.js.map +1 -1
- package/dist/esm/Modals/ModalDialog.js +4 -0
- package/dist/esm/Modals/ModalDialog.js.map +1 -1
- package/dist/esm/Switcher/MobileSwitcherMenu.js +4 -0
- package/dist/esm/Switcher/MobileSwitcherMenu.js.map +1 -1
- package/dist/esm/Table/Table.js +6 -0
- package/dist/esm/Table/Table.js.map +1 -1
- package/dist/esm/Tabs/Tabs.js +3 -3
- package/dist/esm/Tabs/Tabs.js.map +1 -1
- package/dist/esm/Toasters/Toast.js +13 -1
- package/dist/esm/Toasters/Toast.js.map +1 -1
- package/dist/esm/icons/contenticons/ContentIcons.js +444 -296
- package/dist/esm/icons/contenticons/ContentIcons.js.map +1 -1
- package/dist/esm/icons/systemicons/SystemIcons.js +43 -25
- package/dist/esm/icons/systemicons/SystemIcons.js.map +1 -1
- package/dist/js/Banners/Banner.d.ts +2 -0
- package/dist/js/Banners/Banner.js +74 -41
- package/dist/js/Banners/Banner.js.map +1 -1
- package/dist/js/Banners/styles.d.ts +1 -0
- package/dist/js/Banners/styles.js +33 -0
- package/dist/js/Banners/styles.js.map +1 -0
- package/dist/js/Button/Iconbutton.js +3 -1
- package/dist/js/Button/Iconbutton.js.map +1 -1
- package/dist/js/Chips/InputChip.js +3 -0
- package/dist/js/Chips/InputChip.js.map +1 -1
- package/dist/js/Dropdown/DropdownButton.js +2 -0
- package/dist/js/Dropdown/DropdownButton.js.map +1 -1
- package/dist/js/Dropdown/DropdownFilter.js +0 -1
- package/dist/js/Dropdown/DropdownFilter.js.map +1 -1
- package/dist/js/Footer/Components/FooterNewsletterAndSocialSection.js +18 -4
- package/dist/js/Footer/Components/FooterNewsletterAndSocialSection.js.map +1 -1
- package/dist/js/GlobalNavigationBar/UserMenu/MobileUserMenu.js +4 -0
- package/dist/js/GlobalNavigationBar/UserMenu/MobileUserMenu.js.map +1 -1
- package/dist/js/GlobalNavigationBar/mobile/MobileMenu.js +2 -0
- package/dist/js/GlobalNavigationBar/mobile/MobileMenu.js.map +1 -1
- package/dist/js/InputFields/DatepickerField.js +2 -0
- package/dist/js/InputFields/DatepickerField.js.map +1 -1
- package/dist/js/InputFields/styling.js +2 -2
- package/dist/js/InputFields/styling.js.map +1 -1
- package/dist/js/Modals/Modal.js +2 -0
- package/dist/js/Modals/Modal.js.map +1 -1
- package/dist/js/Modals/ModalDialog.js +4 -0
- package/dist/js/Modals/ModalDialog.js.map +1 -1
- package/dist/js/Switcher/MobileSwitcherMenu.js +4 -0
- package/dist/js/Switcher/MobileSwitcherMenu.js.map +1 -1
- package/dist/js/Table/Table.js +6 -0
- package/dist/js/Table/Table.js.map +1 -1
- package/dist/js/Tabs/Tabs.js +1 -1
- package/dist/js/Tabs/Tabs.js.map +1 -1
- package/dist/js/Toasters/Toast.js +6 -2
- package/dist/js/Toasters/Toast.js.map +1 -1
- package/dist/js/icons/contenticons/ContentIcons.js +592 -296
- package/dist/js/icons/contenticons/ContentIcons.js.map +1 -1
- package/dist/js/icons/systemicons/SystemIcons.d.ts +2 -0
- package/dist/js/icons/systemicons/SystemIcons.js +403 -373
- package/dist/js/icons/systemicons/SystemIcons.js.map +1 -1
- package/dist/umd/Banners/Banner.js +109 -55
- package/dist/umd/Banners/Banner.js.map +1 -1
- package/dist/umd/Banners/styles.js +141 -0
- package/dist/umd/Banners/styles.js.map +1 -0
- package/dist/umd/Button/Iconbutton.js +1 -1
- package/dist/umd/Button/Iconbutton.js.map +1 -1
- package/dist/umd/Chips/InputChip.js +3 -0
- package/dist/umd/Chips/InputChip.js.map +1 -1
- package/dist/umd/Dropdown/DropdownButton.js +2 -0
- package/dist/umd/Dropdown/DropdownButton.js.map +1 -1
- package/dist/umd/Dropdown/DropdownFilter.js +0 -1
- package/dist/umd/Dropdown/DropdownFilter.js.map +1 -1
- package/dist/umd/Footer/Components/FooterNewsletterAndSocialSection.js +39 -19
- package/dist/umd/Footer/Components/FooterNewsletterAndSocialSection.js.map +1 -1
- package/dist/umd/GlobalNavigationBar/UserMenu/MobileUserMenu.js +4 -0
- package/dist/umd/GlobalNavigationBar/UserMenu/MobileUserMenu.js.map +1 -1
- package/dist/umd/GlobalNavigationBar/mobile/MobileMenu.js +2 -0
- package/dist/umd/GlobalNavigationBar/mobile/MobileMenu.js.map +1 -1
- package/dist/umd/InputFields/DatepickerField.js +2 -0
- package/dist/umd/InputFields/DatepickerField.js.map +1 -1
- package/dist/umd/InputFields/styling.js +7 -1
- package/dist/umd/InputFields/styling.js.map +1 -1
- package/dist/umd/Modals/Modal.js +2 -0
- package/dist/umd/Modals/Modal.js.map +1 -1
- package/dist/umd/Modals/ModalDialog.js +4 -0
- package/dist/umd/Modals/ModalDialog.js.map +1 -1
- package/dist/umd/Switcher/MobileSwitcherMenu.js +4 -0
- package/dist/umd/Switcher/MobileSwitcherMenu.js.map +1 -1
- package/dist/umd/Table/Table.js +6 -0
- package/dist/umd/Table/Table.js.map +1 -1
- package/dist/umd/Tabs/Tabs.js +3 -3
- package/dist/umd/Tabs/Tabs.js.map +1 -1
- package/dist/umd/Toasters/Toast.js +13 -1
- package/dist/umd/Toasters/Toast.js.map +1 -1
- package/dist/umd/icons/contenticons/ContentIcons.js +444 -296
- package/dist/umd/icons/contenticons/ContentIcons.js.map +1 -1
- package/dist/umd/icons/systemicons/SystemIcons.js +46 -26
- package/dist/umd/icons/systemicons/SystemIcons.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
(function (global, factory) {
|
|
2
2
|
if (typeof define === "function" && define.amd) {
|
|
3
|
-
define(["exports", "prop-types", "react", "styled-components", "../styles", "../icons/systemicons/SystemIcons", "../Button"], factory);
|
|
3
|
+
define(["exports", "prop-types", "react", "styled-components", "../styles", "../icons/systemicons/SystemIcons", "../Button", "./styles"], factory);
|
|
4
4
|
} else if (typeof exports !== "undefined") {
|
|
5
|
-
factory(exports, require("prop-types"), require("react"), require("styled-components"), require("../styles"), require("../icons/systemicons/SystemIcons"), require("../Button"));
|
|
5
|
+
factory(exports, require("prop-types"), require("react"), require("styled-components"), require("../styles"), require("../icons/systemicons/SystemIcons"), require("../Button"), require("./styles"));
|
|
6
6
|
} else {
|
|
7
7
|
var mod = {
|
|
8
8
|
exports: {}
|
|
9
9
|
};
|
|
10
|
-
factory(mod.exports, global.propTypes, global.react, global.styledComponents, global.styles, global.SystemIcons, global.Button);
|
|
10
|
+
factory(mod.exports, global.propTypes, global.react, global.styledComponents, global.styles, global.SystemIcons, global.Button, global.styles);
|
|
11
11
|
global.undefined = mod.exports;
|
|
12
12
|
}
|
|
13
|
-
})(this, function (exports, _propTypes, _react, _styledComponents, _styles, _SystemIcons, _Button) {
|
|
13
|
+
})(this, function (exports, _propTypes, _react, _styledComponents, _styles, _SystemIcons, _Button, _styles2) {
|
|
14
14
|
"use strict";
|
|
15
15
|
|
|
16
16
|
Object.defineProperty(exports, "__esModule", {
|
|
@@ -90,20 +90,30 @@
|
|
|
90
90
|
margin-top: ${props => props.bottom ? 'auto' : '0'};
|
|
91
91
|
|
|
92
92
|
button:last-child {
|
|
93
|
-
margin: 0 0 0 auto;
|
|
94
93
|
line-height: 0;
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
94
|
+
margin: 0 0 0 8px;
|
|
95
|
+
${_styles.BREAKPOINTS.MEDIUM} {
|
|
96
|
+
margin: 0 0 0 16px;
|
|
97
|
+
}
|
|
98
|
+
${_styles.BREAKPOINTS.LARGE} {
|
|
99
|
+
margin: 0 0 0 32px;
|
|
100
|
+
}
|
|
101
|
+
&.small {
|
|
102
|
+
margin: 0 0 0 8px;
|
|
103
|
+
}
|
|
104
|
+
&.medium {
|
|
105
|
+
margin: 0 0 0 16px;
|
|
106
|
+
}
|
|
107
|
+
&.large {
|
|
108
|
+
margin: 0 0 0 32px;
|
|
109
|
+
}
|
|
100
110
|
}
|
|
101
111
|
|
|
102
112
|
a {
|
|
103
113
|
color: ${props => props.link};
|
|
104
114
|
font-weight: bold;
|
|
105
115
|
text-decoration: none;
|
|
106
|
-
|
|
116
|
+
|
|
107
117
|
&:hover {
|
|
108
118
|
text-decoration: underline;
|
|
109
119
|
}
|
|
@@ -113,32 +123,50 @@
|
|
|
113
123
|
font-style: normal;
|
|
114
124
|
font-weight: normal;
|
|
115
125
|
font-size: 16px;
|
|
116
|
-
line-height:
|
|
126
|
+
line-height: 20px;
|
|
117
127
|
`;
|
|
118
128
|
const BannerCenter = _styledComponents2.default.div`
|
|
119
129
|
color: ${props => props.color};
|
|
120
130
|
font-size: 18px;
|
|
121
131
|
display: flex;
|
|
122
|
-
justify-content: flex-start;
|
|
123
|
-
align-items: center;
|
|
124
132
|
width: 100%;
|
|
125
|
-
margin: 0
|
|
133
|
+
margin: 0 6px 0 16px;
|
|
126
134
|
${_styles.BREAKPOINTS.MEDIUM} {
|
|
127
|
-
margin: 0 32px;
|
|
135
|
+
margin: 0 22px 0 32px;
|
|
128
136
|
}
|
|
129
137
|
${_styles.BREAKPOINTS.LARGE} {
|
|
130
|
-
margin: 0 56px;
|
|
138
|
+
margin: 0 46px 0 56px;
|
|
139
|
+
}
|
|
140
|
+
&.small {
|
|
141
|
+
margin: 0 6px 0 16px;
|
|
131
142
|
}
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
margin: 0 auto;
|
|
143
|
+
&.medium {
|
|
144
|
+
margin: 0 22px 0 32px;
|
|
135
145
|
}
|
|
136
|
-
|
|
137
|
-
margin
|
|
146
|
+
&.large {
|
|
147
|
+
margin: 0 46px 0 56px;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
> svg {
|
|
151
|
+
flex-shrink: 0;
|
|
152
|
+
margin: 12px 0;
|
|
153
|
+
}
|
|
154
|
+
`;
|
|
155
|
+
const ButtonWrapper = _styledComponents2.default.div`
|
|
156
|
+
margin: 0 0 0 auto;
|
|
157
|
+
${props => props.type ? (0, _styles2.getButtonStyle)(props.type) : null};
|
|
158
|
+
`;
|
|
159
|
+
const BannerContentWrapper = _styledComponents2.default.div`
|
|
160
|
+
display: flex;
|
|
161
|
+
align-items: center;
|
|
162
|
+
margin: 12px 0;
|
|
163
|
+
&:not(:first-child) {
|
|
164
|
+
margin-left: 8px;
|
|
138
165
|
}
|
|
139
166
|
`;
|
|
140
167
|
|
|
141
168
|
const Banner = ({
|
|
169
|
+
size,
|
|
142
170
|
type,
|
|
143
171
|
children,
|
|
144
172
|
bottom,
|
|
@@ -146,7 +174,8 @@
|
|
|
146
174
|
linkText,
|
|
147
175
|
link,
|
|
148
176
|
onClose,
|
|
149
|
-
icon
|
|
177
|
+
icon,
|
|
178
|
+
noIcon
|
|
150
179
|
}) => {
|
|
151
180
|
const formatTypeToLowerCase = type?.toLowerCase();
|
|
152
181
|
|
|
@@ -159,20 +188,25 @@
|
|
|
159
188
|
hover: _styles.COLORS.warning_20,
|
|
160
189
|
bottom: bottom
|
|
161
190
|
}, /*#__PURE__*/React.createElement(BannerCenter, {
|
|
162
|
-
color: _styles.COLORS.warning_700
|
|
163
|
-
|
|
191
|
+
color: _styles.COLORS.warning_700,
|
|
192
|
+
className: size
|
|
193
|
+
}, icon ? icon : noIcon ? null : /*#__PURE__*/React.createElement(_SystemIcons.Help, {
|
|
164
194
|
color: _styles.COLORS.warning_700,
|
|
165
195
|
size: "24px"
|
|
166
|
-
}), children, "\xA0\xA0", link && linkText && /*#__PURE__*/React.createElement("a", {
|
|
196
|
+
}), /*#__PURE__*/React.createElement(BannerContentWrapper, null, children, "\xA0\xA0", link && linkText && /*#__PURE__*/React.createElement("a", {
|
|
167
197
|
href: link,
|
|
168
198
|
target: "_blank"
|
|
169
|
-
}, linkText), onClose && /*#__PURE__*/React.createElement(
|
|
170
|
-
|
|
171
|
-
|
|
199
|
+
}, linkText)), onClose && /*#__PURE__*/React.createElement(ButtonWrapper, {
|
|
200
|
+
type: formatTypeToLowerCase
|
|
201
|
+
}, /*#__PURE__*/React.createElement(_Button.IconButton, {
|
|
202
|
+
variant: "secondary",
|
|
203
|
+
shape: "circular",
|
|
204
|
+
useTransparentBackground: true,
|
|
205
|
+
action: () => onClose()
|
|
172
206
|
}, /*#__PURE__*/React.createElement(_SystemIcons.Close, {
|
|
173
207
|
color: _styles.COLORS.warning_500,
|
|
174
208
|
size: "24px"
|
|
175
|
-
}))));
|
|
209
|
+
})))));
|
|
176
210
|
|
|
177
211
|
case 'critical':
|
|
178
212
|
return /*#__PURE__*/React.createElement(BannerContainer, {
|
|
@@ -180,22 +214,28 @@
|
|
|
180
214
|
type: _styles.COLORS.critical_100,
|
|
181
215
|
link: _styles.COLORS.critical_700,
|
|
182
216
|
hover: _styles.COLORS.critical_20,
|
|
183
|
-
bottom: bottom
|
|
217
|
+
bottom: bottom,
|
|
218
|
+
className: size
|
|
184
219
|
}, /*#__PURE__*/React.createElement(BannerCenter, {
|
|
185
|
-
color: _styles.COLORS.critical_700
|
|
186
|
-
|
|
220
|
+
color: _styles.COLORS.critical_700,
|
|
221
|
+
className: size
|
|
222
|
+
}, icon ? icon : noIcon ? null : /*#__PURE__*/React.createElement(_SystemIcons.Attention, {
|
|
187
223
|
color: _styles.COLORS.critical_700,
|
|
188
224
|
size: "24px"
|
|
189
|
-
}), children, "\xA0\xA0", link && linkText && /*#__PURE__*/React.createElement("a", {
|
|
225
|
+
}), /*#__PURE__*/React.createElement(BannerContentWrapper, null, children, "\xA0\xA0", link && linkText && /*#__PURE__*/React.createElement("a", {
|
|
190
226
|
href: link,
|
|
191
227
|
target: "_blank"
|
|
192
|
-
}, linkText), onClose && /*#__PURE__*/React.createElement(
|
|
193
|
-
|
|
194
|
-
|
|
228
|
+
}, linkText)), onClose && /*#__PURE__*/React.createElement(ButtonWrapper, {
|
|
229
|
+
type: formatTypeToLowerCase
|
|
230
|
+
}, /*#__PURE__*/React.createElement(_Button.IconButton, {
|
|
231
|
+
variant: "secondary",
|
|
232
|
+
shape: "circular",
|
|
233
|
+
useTransparentBackground: true,
|
|
234
|
+
action: () => onClose()
|
|
195
235
|
}, /*#__PURE__*/React.createElement(_SystemIcons.Close, {
|
|
196
236
|
color: _styles.COLORS.critical_500,
|
|
197
237
|
size: "24px"
|
|
198
|
-
}))));
|
|
238
|
+
})))));
|
|
199
239
|
|
|
200
240
|
case 'positive':
|
|
201
241
|
return /*#__PURE__*/React.createElement(BannerContainer, {
|
|
@@ -203,22 +243,28 @@
|
|
|
203
243
|
type: _styles.COLORS.correct_100,
|
|
204
244
|
link: _styles.COLORS.correct_700,
|
|
205
245
|
hover: _styles.COLORS.correct_20,
|
|
206
|
-
bottom: bottom
|
|
246
|
+
bottom: bottom,
|
|
247
|
+
className: size
|
|
207
248
|
}, /*#__PURE__*/React.createElement(BannerCenter, {
|
|
208
|
-
color: _styles.COLORS.correct_700
|
|
209
|
-
|
|
249
|
+
color: _styles.COLORS.correct_700,
|
|
250
|
+
className: size
|
|
251
|
+
}, icon ? icon : noIcon ? null : /*#__PURE__*/React.createElement(_SystemIcons.ThumbsUp, {
|
|
210
252
|
color: _styles.COLORS.correct_700,
|
|
211
253
|
size: "24px"
|
|
212
|
-
}), children, "\xA0\xA0", link && linkText && /*#__PURE__*/React.createElement("a", {
|
|
254
|
+
}), /*#__PURE__*/React.createElement(BannerContentWrapper, null, children, "\xA0\xA0", link && linkText && /*#__PURE__*/React.createElement("a", {
|
|
213
255
|
href: link,
|
|
214
256
|
target: "_blank"
|
|
215
|
-
}, linkText), onClose && /*#__PURE__*/React.createElement(
|
|
216
|
-
|
|
217
|
-
|
|
257
|
+
}, linkText)), onClose && /*#__PURE__*/React.createElement(ButtonWrapper, {
|
|
258
|
+
type: formatTypeToLowerCase
|
|
259
|
+
}, /*#__PURE__*/React.createElement(_Button.IconButton, {
|
|
260
|
+
variant: "secondary",
|
|
261
|
+
shape: "circular",
|
|
262
|
+
useTransparentBackground: true,
|
|
263
|
+
action: () => onClose()
|
|
218
264
|
}, /*#__PURE__*/React.createElement(_SystemIcons.Close, {
|
|
219
265
|
color: _styles.COLORS.correct_500,
|
|
220
266
|
size: "24px"
|
|
221
|
-
}))));
|
|
267
|
+
})))));
|
|
222
268
|
|
|
223
269
|
default:
|
|
224
270
|
return /*#__PURE__*/React.createElement(BannerContainer, {
|
|
@@ -226,26 +272,33 @@
|
|
|
226
272
|
type: _styles.COLORS.primary_100,
|
|
227
273
|
link: _styles.COLORS.primary_700,
|
|
228
274
|
hover: _styles.COLORS.primary_20,
|
|
229
|
-
bottom: bottom
|
|
275
|
+
bottom: bottom,
|
|
276
|
+
className: size
|
|
230
277
|
}, /*#__PURE__*/React.createElement(BannerCenter, {
|
|
231
|
-
color: _styles.COLORS.primary_700
|
|
232
|
-
|
|
278
|
+
color: _styles.COLORS.primary_700,
|
|
279
|
+
className: size
|
|
280
|
+
}, icon ? icon : noIcon ? null : /*#__PURE__*/React.createElement(_SystemIcons.Tip, {
|
|
233
281
|
color: _styles.COLORS.primary_700,
|
|
234
282
|
size: "24px"
|
|
235
|
-
}), children, "\xA0\xA0", link && linkText && /*#__PURE__*/React.createElement("a", {
|
|
283
|
+
}), /*#__PURE__*/React.createElement(BannerContentWrapper, null, children, "\xA0\xA0", link && linkText && /*#__PURE__*/React.createElement("a", {
|
|
236
284
|
href: link,
|
|
237
285
|
target: "_blank"
|
|
238
|
-
}, linkText), onClose && /*#__PURE__*/React.createElement(
|
|
239
|
-
|
|
240
|
-
|
|
286
|
+
}, linkText)), onClose && /*#__PURE__*/React.createElement(ButtonWrapper, {
|
|
287
|
+
type: "neutral"
|
|
288
|
+
}, /*#__PURE__*/React.createElement(_Button.IconButton, {
|
|
289
|
+
variant: "secondary",
|
|
290
|
+
shape: "circular",
|
|
291
|
+
useTransparentBackground: true,
|
|
292
|
+
action: () => onClose()
|
|
241
293
|
}, /*#__PURE__*/React.createElement(_SystemIcons.Close, {
|
|
242
294
|
color: _styles.COLORS.primary_500,
|
|
243
295
|
size: "24px"
|
|
244
|
-
}))));
|
|
296
|
+
})))));
|
|
245
297
|
}
|
|
246
298
|
};
|
|
247
299
|
|
|
248
300
|
Banner.propTypes = {
|
|
301
|
+
size: _propTypes2.default.oneOf(['small', 'medium', 'large']),
|
|
249
302
|
type: _propTypes2.default.string,
|
|
250
303
|
link: _propTypes2.default.string,
|
|
251
304
|
linkText: _propTypes2.default.string,
|
|
@@ -253,7 +306,8 @@
|
|
|
253
306
|
bottom: _propTypes2.default.bool,
|
|
254
307
|
testId: _propTypes2.default.string,
|
|
255
308
|
icon: _propTypes2.default.node,
|
|
256
|
-
onClose: _propTypes2.default.func
|
|
309
|
+
onClose: _propTypes2.default.func,
|
|
310
|
+
noIcon: _propTypes2.default.bool
|
|
257
311
|
};
|
|
258
312
|
exports.default = Banner;
|
|
259
313
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/Banners/Banner.tsx"],"names":["BannerContainer","styled","div","props","COLORS","correct_100","black","primary_20","link","BannerCenter","color","BREAKPOINTS","MEDIUM","LARGE","XLARGE","type","linkText","hover","bottom","testId","icon","onClose","Banner","formatTypeToLowerCase","warning_700","critical_700","correct_700","primary_700"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\n\nimport { BREAKPOINTS, COLORS } from '../styles';\nimport { Tip, Attention, ThumbsUp, Help, Close } from '../icons/systemicons/SystemIcons';\nimport { Button } from '../Button';\n\n/**\n * Styles for <Banner />\n */\nconst BannerContainer = styled.div<BannerProps>`\n background: ${(props: BannerProps) => (props.type ? props.type : COLORS.correct_100)};\n min-height: 48px;\n display: flex;\n color: ${COLORS.black};\n margin-top: ${(props: BannerProps) => (props.bottom ? 'auto' : '0')};\n\n button:last-child {\n margin: 0 0 0 auto;\n line-height: 0;\n cursor: pointer;\n }\n button:last-child:hover {\n margin: 0 0 0 auto;\n background: ${(props: BannerProps) => (props.hover ? props.hover : COLORS.primary_20)};\n }\n\n a {\n color: ${(props: BannerProps) => (props.link)};\n font-weight: bold;\n text-decoration: none;\n \n &:hover {\n text-decoration: underline;\n }\n }\n\n font-family: Lato;\n font-style: normal;\n font-weight: normal;\n font-size: 16px;\n line-height: 140%;\n`;\n\nconst BannerCenter = styled.div`\n color: ${(props) => props.color};\n font-size: 18px;\n display: flex;\n justify-content: flex-start;\n align-items: center;\n width: 100%;\n margin: 0 8px;\n ${BREAKPOINTS.MEDIUM} {\n margin: 0 32px;\n }\n ${BREAKPOINTS.LARGE} {\n margin: 0 56px;\n }\n ${BREAKPOINTS.XLARGE} {\n width: 1120px;\n margin: 0 auto;\n }\n >svg {\n margin-right:8px;\n }\n`;\n\ntype BannerProps = {\n type?: string;\n link?: string;\n linkText?: string;\n hover?: string;\n bottom?: boolean;\n testId?: string;\n icon?: React.ReactNode;\n onClose?: () => void;\n};\n\nconst Banner: React.FunctionComponent<BannerProps> = ({ type, children, bottom, testId, linkText, link, onClose, icon }) => {\n\n const formatTypeToLowerCase = type?.toLowerCase();\n switch (formatTypeToLowerCase) {\n case 'warning':\n return (\n <BannerContainer data-testid={testId} type={COLORS.warning_100} link={COLORS.warning_700} hover={COLORS.warning_20} bottom={bottom}>\n <BannerCenter color={COLORS.warning_700}>\n { icon ? icon : <Help color={COLORS.warning_700} size=\"24px\" /> }\n {children} \n {link && linkText && <a href={link} target=\"_blank\">{linkText}</a>}\n { onClose &&\n <Button variant=\"text\" onClick={() => onClose()}>\n <Close color={COLORS.warning_500} size=\"24px\" />\n </Button>\n }\n </BannerCenter>\n </BannerContainer>\n );\n case 'critical':\n return (\n <BannerContainer data-testid={testId} type={COLORS.critical_100} link={COLORS.critical_700} hover={COLORS.critical_20} bottom={bottom}>\n <BannerCenter color={COLORS.critical_700}>\n { icon ? icon : <Attention color={COLORS.critical_700} size=\"24px\" /> }\n {children} \n {link && linkText && <a href={link} target=\"_blank\">{linkText}</a>}\n { onClose &&\n <Button variant=\"text\" onClick={() => onClose()}>\n <Close color={COLORS.critical_500} size=\"24px\" />\n </Button>\n }\n </BannerCenter>\n </BannerContainer>\n );\n case 'positive':\n return (\n <BannerContainer data-testid={testId} type={COLORS.correct_100} link={COLORS.correct_700} hover={COLORS.correct_20} bottom={bottom}>\n <BannerCenter color={COLORS.correct_700}>\n { icon ? icon : <ThumbsUp color={COLORS.correct_700} size=\"24px\" /> }\n {children} \n {link && linkText && <a href={link} target=\"_blank\">{linkText}</a>}\n { onClose &&\n <Button variant=\"text\" onClick={() => onClose()}>\n <Close color={COLORS.correct_500} size=\"24px\" />\n </Button>\n }\n </BannerCenter>\n </BannerContainer>\n );\n default:\n return (\n <BannerContainer data-testid={testId} type={COLORS.primary_100} link={COLORS.primary_700} hover={COLORS.primary_20} bottom={bottom}>\n <BannerCenter color={COLORS.primary_700}>\n { icon ? icon : <Tip color={COLORS.primary_700} size=\"24px\" /> } \n {children} \n {link && linkText && <a href={link} target=\"_blank\">{linkText}</a>}\n { onClose &&\n <Button variant=\"text\" onClick={() => onClose()}>\n <Close color={COLORS.primary_500} size=\"24px\" />\n </Button>\n }\n </BannerCenter>\n </BannerContainer>\n );\n }\n};\n\nexport default Banner;\n"],"file":"Banner.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/Banners/Banner.tsx"],"names":["BannerContainer","styled","div","props","COLORS","correct_100","black","BREAKPOINTS","MEDIUM","LARGE","link","BannerCenter","color","ButtonWrapper","getButtonStyle","BannerContentWrapper","size","type","linkText","hover","bottom","testId","icon","onClose","noIcon","Banner","formatTypeToLowerCase"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\n\nimport { BREAKPOINTS, COLORS } from '../styles';\nimport { Tip, Attention, ThumbsUp, Help, Close } from '../icons/systemicons/SystemIcons';\nimport { IconButton } from '../Button';\nimport { getButtonStyle } from './styles';\n\n/**\n * Styles for <Banner />\n */\nconst BannerContainer = styled.div<BannerProps>`\n background: ${(props: BannerProps) => (props.type ? props.type : COLORS.correct_100)};\n min-height: 48px;\n display: flex;\n color: ${COLORS.black};\n margin-top: ${(props: BannerProps) => (props.bottom ? 'auto' : '0')};\n\n button:last-child {\n line-height: 0;\n margin: 0 0 0 8px;\n ${BREAKPOINTS.MEDIUM} {\n margin: 0 0 0 16px;\n }\n ${BREAKPOINTS.LARGE} {\n margin: 0 0 0 32px;\n }\n &.small {\n margin: 0 0 0 8px;\n }\n &.medium {\n margin: 0 0 0 16px;\n }\n &.large {\n margin: 0 0 0 32px;\n }\n }\n\n a {\n color: ${(props: BannerProps) => props.link};\n font-weight: bold;\n text-decoration: none;\n\n &:hover {\n text-decoration: underline;\n }\n }\n\n font-family: Lato;\n font-style: normal;\n font-weight: normal;\n font-size: 16px;\n line-height: 20px;\n`;\n\nconst BannerCenter = styled.div`\n color: ${(props) => props.color};\n font-size: 18px;\n display: flex;\n width: 100%;\n margin: 0 6px 0 16px;\n ${BREAKPOINTS.MEDIUM} {\n margin: 0 22px 0 32px;\n }\n ${BREAKPOINTS.LARGE} {\n margin: 0 46px 0 56px;\n }\n &.small {\n margin: 0 6px 0 16px;\n }\n &.medium {\n margin: 0 22px 0 32px;\n }\n &.large {\n margin: 0 46px 0 56px;\n }\n\n > svg {\n flex-shrink: 0;\n margin: 12px 0;\n }\n`;\n\nconst ButtonWrapper = styled.div<{ type?: string }>`\n margin: 0 0 0 auto;\n ${(props) => (props.type ? getButtonStyle(props.type) : null)};\n`;\n\nconst BannerContentWrapper = styled.div`\n display: flex;\n align-items: center;\n margin: 12px 0;\n &:not(:first-child) {\n margin-left: 8px;\n }\n`;\n\ntype BannerProps = {\n size?: 'small' | 'medium' | 'large';\n type?: string;\n link?: string;\n linkText?: string;\n hover?: string;\n bottom?: boolean;\n testId?: string;\n icon?: React.ReactNode;\n onClose?: () => void;\n noIcon?: boolean;\n};\n\nconst Banner: React.FunctionComponent<BannerProps> = ({ size, type, children, bottom, testId, linkText, link, onClose, icon, noIcon }) => {\n const formatTypeToLowerCase = type?.toLowerCase();\n switch (formatTypeToLowerCase) {\n case 'warning':\n return (\n <BannerContainer data-testid={testId} type={COLORS.warning_100} link={COLORS.warning_700} hover={COLORS.warning_20} bottom={bottom}>\n <BannerCenter color={COLORS.warning_700} className={size}>\n {icon ? icon : noIcon ? null : <Help color={COLORS.warning_700} size=\"24px\" />}\n <BannerContentWrapper>\n {children} \n {link && linkText && (\n <a href={link} target=\"_blank\">\n {linkText}\n </a>\n )}\n </BannerContentWrapper>\n {onClose && (\n <ButtonWrapper type={formatTypeToLowerCase}>\n <IconButton variant=\"secondary\" shape=\"circular\" useTransparentBackground action={() => onClose()}>\n <Close color={COLORS.warning_500} size=\"24px\" />\n </IconButton>\n </ButtonWrapper>\n )}\n </BannerCenter>\n </BannerContainer>\n );\n case 'critical':\n return (\n <BannerContainer data-testid={testId} type={COLORS.critical_100} link={COLORS.critical_700} hover={COLORS.critical_20} bottom={bottom} className={size}>\n <BannerCenter color={COLORS.critical_700} className={size}>\n {icon ? icon : noIcon ? null : <Attention color={COLORS.critical_700} size=\"24px\" />}\n <BannerContentWrapper>\n {children} \n {link && linkText && (\n <a href={link} target=\"_blank\">\n {linkText}\n </a>\n )}\n </BannerContentWrapper>\n {onClose && (\n <ButtonWrapper type={formatTypeToLowerCase}>\n <IconButton variant=\"secondary\" shape=\"circular\" useTransparentBackground action={() => onClose()}>\n <Close color={COLORS.critical_500} size=\"24px\" />\n </IconButton>\n </ButtonWrapper>\n )}\n </BannerCenter>\n </BannerContainer>\n );\n case 'positive':\n return (\n <BannerContainer data-testid={testId} type={COLORS.correct_100} link={COLORS.correct_700} hover={COLORS.correct_20} bottom={bottom} className={size}>\n <BannerCenter color={COLORS.correct_700} className={size}>\n {icon ? icon : noIcon ? null : <ThumbsUp color={COLORS.correct_700} size=\"24px\" />}\n <BannerContentWrapper>\n {children} \n {link && linkText && (\n <a href={link} target=\"_blank\">\n {linkText}\n </a>\n )}\n </BannerContentWrapper>\n {onClose && (\n <ButtonWrapper type={formatTypeToLowerCase}>\n <IconButton variant=\"secondary\" shape=\"circular\" useTransparentBackground action={() => onClose()}>\n <Close color={COLORS.correct_500} size=\"24px\" />\n </IconButton>\n </ButtonWrapper>\n )}\n </BannerCenter>\n </BannerContainer>\n );\n default:\n return (\n <BannerContainer data-testid={testId} type={COLORS.primary_100} link={COLORS.primary_700} hover={COLORS.primary_20} bottom={bottom} className={size}>\n <BannerCenter color={COLORS.primary_700} className={size}>\n {icon ? icon : noIcon ? null : <Tip color={COLORS.primary_700} size=\"24px\" />}\n <BannerContentWrapper>\n {children} \n {link && linkText && (\n <a href={link} target=\"_blank\">\n {linkText}\n </a>\n )}\n </BannerContentWrapper>\n {onClose && (\n <ButtonWrapper type=\"neutral\">\n <IconButton variant=\"secondary\" shape=\"circular\" useTransparentBackground action={() => onClose()}>\n <Close color={COLORS.primary_500} size=\"24px\" />\n </IconButton>\n </ButtonWrapper>\n )}\n </BannerCenter>\n </BannerContainer>\n );\n }\n};\n\nexport default Banner;\n"],"file":"Banner.js"}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
(function (global, factory) {
|
|
2
|
+
if (typeof define === "function" && define.amd) {
|
|
3
|
+
define(["exports", "styled-components", "../styles"], factory);
|
|
4
|
+
} else if (typeof exports !== "undefined") {
|
|
5
|
+
factory(exports, require("styled-components"), require("../styles"));
|
|
6
|
+
} else {
|
|
7
|
+
var mod = {
|
|
8
|
+
exports: {}
|
|
9
|
+
};
|
|
10
|
+
factory(mod.exports, global.styledComponents, global.styles);
|
|
11
|
+
global.undefined = mod.exports;
|
|
12
|
+
}
|
|
13
|
+
})(this, function (exports, _styledComponents, _styles) {
|
|
14
|
+
"use strict";
|
|
15
|
+
|
|
16
|
+
Object.defineProperty(exports, "__esModule", {
|
|
17
|
+
value: true
|
|
18
|
+
});
|
|
19
|
+
exports.getButtonStyle = undefined;
|
|
20
|
+
|
|
21
|
+
const getButtonStyle = exports.getButtonStyle = type => {
|
|
22
|
+
switch (type) {
|
|
23
|
+
case 'warning':
|
|
24
|
+
return _styledComponents.css`
|
|
25
|
+
div {
|
|
26
|
+
background-color: transparent;
|
|
27
|
+
}
|
|
28
|
+
div svg path,
|
|
29
|
+
div svg {
|
|
30
|
+
fill: ${_styles.COLORS.warning_500};
|
|
31
|
+
}
|
|
32
|
+
&:hover:not(:disabled) {
|
|
33
|
+
div {
|
|
34
|
+
background-color: ${_styles.COLORS.warning_200};
|
|
35
|
+
}
|
|
36
|
+
div svg path,
|
|
37
|
+
div svg {
|
|
38
|
+
fill: ${_styles.COLORS.warning_700};
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
&:active:not(:disabled) {
|
|
42
|
+
div {
|
|
43
|
+
background: ${_styles.COLORS.warning_300};
|
|
44
|
+
}
|
|
45
|
+
div svg path,
|
|
46
|
+
div svg {
|
|
47
|
+
fill: ${_styles.COLORS.warning_800};
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
`;
|
|
51
|
+
|
|
52
|
+
case 'critical':
|
|
53
|
+
return _styledComponents.css`
|
|
54
|
+
div {
|
|
55
|
+
background-color: transparent;
|
|
56
|
+
}
|
|
57
|
+
div svg path,
|
|
58
|
+
div svg {
|
|
59
|
+
fill: ${_styles.COLORS.critical_600};
|
|
60
|
+
}
|
|
61
|
+
&:hover:not(:disabled) {
|
|
62
|
+
div {
|
|
63
|
+
background-color: ${_styles.COLORS.critical_200};
|
|
64
|
+
}
|
|
65
|
+
div svg path,
|
|
66
|
+
div svg {
|
|
67
|
+
fill: ${_styles.COLORS.critical_700};
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
&:active:not(:disabled) {
|
|
71
|
+
div {
|
|
72
|
+
background: ${_styles.COLORS.critical_300};
|
|
73
|
+
}
|
|
74
|
+
div svg path,
|
|
75
|
+
div svg {
|
|
76
|
+
fill: ${_styles.COLORS.critical_800};
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
`;
|
|
80
|
+
|
|
81
|
+
case 'positive':
|
|
82
|
+
return _styledComponents.css`
|
|
83
|
+
div {
|
|
84
|
+
background-color: transparent;
|
|
85
|
+
}
|
|
86
|
+
div svg path,
|
|
87
|
+
div svg {
|
|
88
|
+
fill: ${_styles.COLORS.correct_500};
|
|
89
|
+
}
|
|
90
|
+
&:hover:not(:disabled) {
|
|
91
|
+
div {
|
|
92
|
+
background-color: ${_styles.COLORS.correct_200};
|
|
93
|
+
}
|
|
94
|
+
div svg path,
|
|
95
|
+
div svg {
|
|
96
|
+
fill: ${_styles.COLORS.correct_700};
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
&:active:not(:disabled) {
|
|
100
|
+
div {
|
|
101
|
+
background: ${_styles.COLORS.correct_300};
|
|
102
|
+
}
|
|
103
|
+
div svg path,
|
|
104
|
+
div svg {
|
|
105
|
+
fill: ${_styles.COLORS.correct_800};
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
`;
|
|
109
|
+
|
|
110
|
+
default:
|
|
111
|
+
return _styledComponents.css`
|
|
112
|
+
div {
|
|
113
|
+
background-color: transparent;
|
|
114
|
+
}
|
|
115
|
+
div svg path,
|
|
116
|
+
div svg {
|
|
117
|
+
fill: ${_styles.COLORS.primary_500};
|
|
118
|
+
}
|
|
119
|
+
&:hover:not(:disabled) {
|
|
120
|
+
div {
|
|
121
|
+
background-color: ${_styles.COLORS.primary_200};
|
|
122
|
+
}
|
|
123
|
+
div svg path,
|
|
124
|
+
div svg {
|
|
125
|
+
fill: ${_styles.COLORS.primary_700};
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
&:active:not(:disabled) {
|
|
129
|
+
div {
|
|
130
|
+
background: ${_styles.COLORS.primary_300};
|
|
131
|
+
}
|
|
132
|
+
div svg path,
|
|
133
|
+
div svg {
|
|
134
|
+
fill: ${_styles.COLORS.primary_800};
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
`;
|
|
138
|
+
}
|
|
139
|
+
};
|
|
140
|
+
});
|
|
141
|
+
//# sourceMappingURL=styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/Banners/styles.tsx"],"names":["getButtonStyle","type","css","COLORS","warning_500","warning_200","warning_700","warning_300","warning_800","critical_600","critical_200","critical_700","critical_300","critical_800","correct_500","correct_200","correct_700","correct_300","correct_800","primary_500","primary_200","primary_700","primary_300","primary_800"],"mappings":";;;;;;;;;;;;;;;;;;;;AAGO,QAAMA,cAAc,WAAdA,cAAc,GAAIC,IAAD,IAAkB;AAC9C,YAAA,IAAA;AACE,WAAA,SAAA;AACE,eAAOC,qBAAI;AACjB;AACA;AACA;AACA;AACA;AACA,kBAAkBC,eAAOC,WAAY;AACrC;AACA;AACA;AACA,gCAAgCD,eAAOE,WAAY;AACnD;AACA;AACA;AACA,oBAAoBF,eAAOG,WAAY;AACvC;AACA;AACA;AACA;AACA,0BAA0BH,eAAOI,WAAY;AAC7C;AACA;AACA;AACA,oBAAoBJ,eAAOK,WAAY;AACvC;AACA;AAzBM,OAAA;;AA2BF,WAAA,UAAA;AACE,eAAON,qBAAI;AACjB;AACA;AACA;AACA;AACA;AACA,kBAAkBC,eAAOM,YAAa;AACtC;AACA;AACA;AACA,gCAAgCN,eAAOO,YAAa;AACpD;AACA;AACA;AACA,oBAAoBP,eAAOQ,YAAa;AACxC;AACA;AACA;AACA;AACA,0BAA0BR,eAAOS,YAAa;AAC9C;AACA;AACA;AACA,oBAAoBT,eAAOU,YAAa;AACxC;AACA;AAzBM,OAAA;;AA2BF,WAAA,UAAA;AACE,eAAOX,qBAAI;AACjB;AACA;AACA;AACA;AACA;AACA,kBAAkBC,eAAOW,WAAY;AACrC;AACA;AACA;AACA,gCAAgCX,eAAOY,WAAY;AACnD;AACA;AACA;AACA,oBAAoBZ,eAAOa,WAAY;AACvC;AACA;AACA;AACA;AACA,0BAA0Bb,eAAOc,WAAY;AAC7C;AACA;AACA;AACA,oBAAoBd,eAAOe,WAAY;AACvC;AACA;AAzBM,OAAA;;AA2BF;AACE,eAAOhB,qBAAI;AACjB;AACA;AACA;AACA;AACA;AACA,kBAAkBC,eAAOgB,WAAY;AACrC;AACA;AACA;AACA,gCAAgChB,eAAOiB,WAAY;AACnD;AACA;AACA;AACA,oBAAoBjB,eAAOkB,WAAY;AACvC;AACA;AACA;AACA;AACA,0BAA0BlB,eAAOmB,WAAY;AAC7C;AACA;AACA;AACA,oBAAoBnB,eAAOoB,WAAY;AACvC;AACA;AAzBM,OAAA;AAtFJ;AADK,GAAA","sourcesContent":["import { css } from 'styled-components';\nimport { COLORS } from '../styles';\n\nexport const getButtonStyle = (type: string) => {\n switch (type) {\n case 'warning':\n return css`\n div {\n background-color: transparent;\n }\n div svg path,\n div svg {\n fill: ${COLORS.warning_500};\n }\n &:hover:not(:disabled) {\n div {\n background-color: ${COLORS.warning_200};\n }\n div svg path,\n div svg {\n fill: ${COLORS.warning_700};\n }\n }\n &:active:not(:disabled) {\n div {\n background: ${COLORS.warning_300};\n }\n div svg path,\n div svg {\n fill: ${COLORS.warning_800};\n }\n }\n `;\n case 'critical':\n return css`\n div {\n background-color: transparent;\n }\n div svg path,\n div svg {\n fill: ${COLORS.critical_600};\n }\n &:hover:not(:disabled) {\n div {\n background-color: ${COLORS.critical_200};\n }\n div svg path,\n div svg {\n fill: ${COLORS.critical_700};\n }\n }\n &:active:not(:disabled) {\n div {\n background: ${COLORS.critical_300};\n }\n div svg path,\n div svg {\n fill: ${COLORS.critical_800};\n }\n }\n `;\n case 'positive':\n return css`\n div {\n background-color: transparent;\n }\n div svg path,\n div svg {\n fill: ${COLORS.correct_500};\n }\n &:hover:not(:disabled) {\n div {\n background-color: ${COLORS.correct_200};\n }\n div svg path,\n div svg {\n fill: ${COLORS.correct_700};\n }\n }\n &:active:not(:disabled) {\n div {\n background: ${COLORS.correct_300};\n }\n div svg path,\n div svg {\n fill: ${COLORS.correct_800};\n }\n }\n `;\n default:\n return css`\n div {\n background-color: transparent;\n }\n div svg path,\n div svg {\n fill: ${COLORS.primary_500};\n }\n &:hover:not(:disabled) {\n div {\n background-color: ${COLORS.primary_200};\n }\n div svg path,\n div svg {\n fill: ${COLORS.primary_700};\n }\n }\n &:active:not(:disabled) {\n div {\n background: ${COLORS.primary_300};\n }\n div svg path,\n div svg {\n fill: ${COLORS.primary_800};\n }\n }\n `;\n }\n};\n"],"file":"styles.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/Button/Iconbutton.tsx"],"names":["tabbedHereStyle","variant","css","COLORS","primary_500","neutral_600","primary_700","white","StyledIconButton","styled","button","props","borderRadius","StyledPrimaryIconButton","primary_800","neutral_200","StyledSecondaryIconButton","primary_20","primary_100","neutral_300","shape","action","hideOnLowWidth","isInMobileMenu","disabled","useTransparentBackground","iconColor","unsetIconSize","tabIndex","IconButton","supressFocusRef","React","isPressingEnter","e","event","setTabbedHere","tabbedHere"],"mappings":";;;;;;;;;;;;;;;;;;;;;MAAA,K;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgBA,QAAMA,eAAe,GAAIC,OAAD,IAAqB;AAC3C,YAAA,OAAA;AACE,WAAA,WAAA;AACE,eAAOC,qBAAI;AACjB;AACA,oCAAoCC,eAAOC,WAAY;AACvD;AACA;AACA;AACA,kBAAkBD,eAAOE,WAAY;AACrC;AAPM,OAAA;;AASF,WAAA,SAAA;AACA;AACE,eAAOH,qBAAI;AACjB;AACA,8BAA8BC,eAAOG,WAAY;AACjD;AACA;AACA;AACA;AACA,kBAAkBH,eAAOI,KAAM;AAC/B;AARM,OAAA;AAbJ;AADF,GAAA;;AA2BA,QAAMC,gBAAgB,GAAGC,2BAAOC,MAAwB;AACxD;AACA;AACA;AACA;AACA;AACA,aAAcC,KAAD,IAAYA,KAAK,CAALA,cAAAA,GAAAA,MAAAA,GAAgC,OAAS;AAClE,mBAAoBA,KAAD,IAAYA,KAAK,CAALA,YAAAA,GAAsB,GAAEA,KAAK,CAACC,YAA9BD,IAAAA,GAAiD,KAAO;AACvF;AACA;AACA;AACA,qBAAsBA,KAAD,IAAYA,KAAK,CAALA,YAAAA,GAAsB,GAAEA,KAAK,CAACC,YAA9BD,IAAAA,GAAiD,KAAO;AACzF;AACA;AACA;AACA;AACA,gBAAiBA,KAAD,IAAYA,KAAK,CAALA,aAAAA,GAAAA,OAAAA,GAAgC,MAAQ;AACpE,eAAgBA,KAAD,IAAYA,KAAK,CAALA,aAAAA,GAAAA,OAAAA,GAAgC,MAAQ;AACnE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AArCA,CAAA;AAwCA,QAAME,uBAAuB,GAAGJ,gCAAM,gBAANA,CAAyB;AACzD;AACA,wBAAyBE,KAAD,IAAYA,KAAK,CAALA,wBAAAA,GAAAA,aAAAA,GAAiDR,eAAOC,WAAa;AACzG;AACA;AACA,cAAeO,KAAD,IAAWA,KAAK,CAALA,SAAAA,IAAmBR,eAAOI,KAAM;AACzD;AACA,gBAAiBI,KAAD,IAAWA,KAAK,CAALA,SAAAA,IAAmBR,eAAOI,KAAM;AAC3D;AACA;AACA;AACA;AACA;AACA,0BAA0BJ,eAAOG,WAAY;AAC7C;AACA;AACA;AACA,cAAcH,eAAOI,KAAM;AAC3B;AACA;AACA;AACA;AACA,oBAAoBJ,eAAOW,WAAY;AACvC;AACA;AACA;AACA,cAAcX,eAAOI,KAAM;AAC3B;AACA;AACA;AACA;AACA,0BAA0BJ,eAAOY,WAAY;AAC7C;AACA;AACA;AACA,gBAAgBZ,eAAOI,KAAM;AAC7B;AACA,cAAcJ,eAAOI,KAAM;AAC3B;AACA;AACA,IAAKI,KAAD,IAAYA,KAAK,CAALA,UAAAA,GAAmBX,eAAe,CAAlCW,SAAkC,CAAlCA,GAAgD,EAAI;AAxCpE,CAAA;AA2CA,QAAMK,yBAAyB,GAAGP,gCAAM,gBAANA,CAAyB;AAC3D;AACA,wBAAyBE,KAAD,IAAYA,KAAK,CAALA,wBAAAA,GAAAA,aAAAA,GAAiDR,eAAOI,KAAO;AACnG;AACA;AACA,cAAeI,KAAD,IAAWA,KAAK,CAALA,SAAAA,IAAmBR,eAAOE,WAAY;AAC/D;AACA,gBAAiBM,KAAD,IAAWA,KAAK,CAALA,SAAAA,IAAmBR,eAAOE,WAAY;AACjE;AACA;AACA;AACA;AACA;AACA,0BAA0BF,eAAOc,UAAW;AAC5C;AACA;AACA;AACA,cAAcd,eAAOG,WAAY;AACjC;AACA;AACA;AACA;AACA,oBAAoBH,eAAOe,WAAY;AACvC;AACA;AACA;AACA,cAAcf,eAAOW,WAAY;AACjC;AACA;AACA;AACA;AACA;AACA,0BAA0BX,eAAOI,KAAM;AACvC;AACA;AACA;AACA,gBAAgBJ,eAAOgB,WAAY;AACnC;AACA,cAAchB,eAAOgB,WAAY;AACjC;AACA;AACA;AACA,IAAKR,KAAD,IAAYA,KAAK,CAALA,UAAAA,GAAmBX,eAAe,CAAlCW,WAAkC,CAAlCA,GAAkD,EAAI;AA1CtE,CAAA;;AA2DA,QAAMkB,UAA0C,GAAG,CAAC;AAAA,IAAA,OAAA;AAAA,IAAA,KAAA;AAAA,IAAA,MAAA;AAAA,IAAA,cAAA;AAAA,IAAA,cAAA;AAAA,IAAA,QAAA;AAAA,IAAA,wBAAA;AAAA,IAAA,QAAA;AAAA,IAAA,SAAA;AAAA,IAAA,aAAA;AAAA,IAAA,QAAA;AAYlDjB,IAAAA;AAZkD,GAAD,KAalB;AAC/B,UAAMkB,eAAe,GAAGC,KAAK,CAALA,MAAAA,CAAxB,IAAwBA,CAAxB;AACA,UAAM,CAAA,UAAA,EAAA,aAAA,IAA8BA,KAAK,CAALA,QAAAA,CAApC,KAAoCA,CAApC;;AAEA,UAAMC,eAAe,GAAIC,CAAD,IAAY;AAClC,UAAIA,CAAC,CAADA,GAAAA,KAAJ,OAAA,EAAuB;AACrBA,QAAAA,CAAC,CAADA,cAAAA;AACAA,QAAAA,CAAC,CAADA,eAAAA;AACA,eAAA,IAAA;AACD;;AACD,aAAA,KAAA;AAV6B,KAI/B,CAJ+B,CAa/B;;;AACA,YAAA,OAAA;AACE,WAAA,WAAA;AACE,eAAA,aACE,KAAA,CAAA,aAAA,CAAA,yBAAA,EAAA;AACE,UAAA,OAAO,EAAGC,KAAD,IAAgDb,MAAM,CADjE,KACiE,CADjE;AAEE,UAAA,SAAS,EAAGY,CAAD,IAAaD,eAAe,CAAfA,CAAe,CAAfA,GAAqBX,MAArBW,EAAAA,GAF1B,IAAA;AAGE,UAAA,QAAQ,EAHV,QAAA;AAIE,UAAA,cAAc,EAAEV,cAAc,IAJhC,KAAA;AAKE,UAAA,YAAY,EALd,cAAA;AAME,UAAA,wBAAwB,EAN1B,wBAAA;AAOE,UAAA,SAAS,EAPX,SAAA;AAQE,UAAA,aAAa,EARf,aAAA;AASE,UAAA,QAAQ,EAAEM,QAAQ,IATpB,CAAA;AAUE,UAAA,YAAY,EAAEhB,YAAY,IAAIQ,KAAK,KAArBR,UAAAA,GAAAA,EAAAA,GAVhB,CAAA;AAWE,UAAA,WAAW,EAAGqB,CAAD,IAAY;AACvB,gBAAI,CAAA,QAAA,IAAa,CAAjB,UAAA,EAA8BH,eAAe,CAAfA,OAAAA,GAAAA,IAAAA;AAZlC,WAAA;AAcE,UAAA,OAAO,EAAGG,CAAD,IAAY;AACnB,gBAAI,CAAJ,QAAA,EAAe;AACb,kBAAI,CAACH,eAAe,CAApB,OAAA,EAA8BK,aAAa,CAA3C,IAA2C,CAAbA,CAA9B,KACKL,eAAe,CAAfA,OAAAA,GAAAA,KAAAA;AACN;AAlBL,WAAA;AAoBE,UAAA,MAAM,EAAE,MAAMK,aAAa,CApB7B,KAoB6B,CApB7B;AAqBE,UAAA,UAAU,EAAEC;AArBd,SAAA,EAAA,aAsBE,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,IAAA,EAvBJ,QAuBI,CAtBF,CADF;;AA0BF,WAAA,SAAA;AACA;AACE,eAAA,aACE,KAAA,CAAA,aAAA,CAAA,uBAAA,EAAA;AACE,UAAA,OAAO,EAAGF,KAAD,IAAgDb,MAAM,CADjE,KACiE,CADjE;AAEE,UAAA,SAAS,EAAGY,CAAD,IAAaD,eAAe,CAAfA,CAAe,CAAfA,GAAqBX,MAArBW,EAAAA,GAF1B,IAAA;AAGE,UAAA,QAAQ,EAHV,QAAA;AAIE,UAAA,cAAc,EAAEV,cAAc,IAJhC,KAAA;AAKE,UAAA,YAAY,EALd,cAAA;AAME,UAAA,wBAAwB,EAN1B,wBAAA;AAOE,UAAA,SAAS,EAPX,SAAA;AAQE,UAAA,aAAa,EARf,aAAA;AASE,UAAA,QAAQ,EAAEM,QAAQ,IATpB,CAAA;AAUE,UAAA,YAAY,EAAEhB,YAAY,IAAIQ,KAAK,KAArBR,UAAAA,GAAAA,EAAAA,GAVhB,CAAA;AAWE,UAAA,WAAW,EAAGqB,CAAD,IAAY;AACvB,gBAAI,CAAA,QAAA,IAAa,CAAjB,UAAA,EAA8BH,eAAe,CAAfA,OAAAA,GAAAA,IAAAA;AAZlC,WAAA;AAcE,UAAA,OAAO,EAAGG,CAAD,IAAY;AACnB,gBAAI,CAAJ,QAAA,EAAe;AACb,kBAAI,CAACH,eAAe,CAApB,OAAA,EAA8BK,aAAa,CAA3C,IAA2C,CAAbA,CAA9B,KACKL,eAAe,CAAfA,OAAAA,GAAAA,KAAAA;AACN;AAlBL,WAAA;AAoBE,UAAA,MAAM,EAAE,MAAMK,aAAa,CApB7B,KAoB6B,CApB7B;AAqBE,UAAA,UAAU,EAAEC;AArBd,SAAA,EAAA,aAsBE,KAAA,CAAA,aAAA,CAAA,KAAA,EAAA,IAAA,EAvBJ,QAuBI,CAtBF,CADF;AA9BJ;AA3BF,GAAA;;;AAbEnC,IAAAA,O,6BAAU,S,EAAY,W;AACtBmB,IAAAA,K,6BAAQ,Q,EAAW,U;AACnBC,IAAAA,M;AACAC,IAAAA,c;AACAC,IAAAA,c;AACAC,IAAAA,Q;AACAC,IAAAA,wB;AACAC,IAAAA,S;AACAC,IAAAA,a;AACAC,IAAAA,Q;AACAhB,IAAAA,Y;;oBAyFF,U","sourcesContent":["import * as React from 'react';\nimport styled, { css } from 'styled-components';\n\nimport { COLORS } from '../styles';\n\ninterface HeaderItemProps {\n hideOnLowWidth: boolean;\n inMobileMenu?: boolean;\n useTransparentBackground?: boolean;\n iconColor?: string;\n unsetIconSize?: boolean;\n borderRadius?: number;\n shape?: string;\n tabbedHere?: boolean;\n}\n\nconst tabbedHereStyle = (variant: string) => {\n switch (variant) {\n case 'secondary':\n return css`\n div {\n box-shadow: 0px 0px 8px ${COLORS.primary_500}, 0px 4px 12px rgba(46, 127, 161, 0.25);\n }\n div svg path,\n div svg {\n fill: ${COLORS.neutral_600};\n }\n `;\n case 'primary':\n default:\n return css`\n div {\n background-color: ${COLORS.primary_700};\n box-shadow: 0px 4px 12px rgba(46, 127, 161, 0.25), 0px 0px 8px #2e7fa1;\n }\n div svg path,\n div svg {\n fill: ${COLORS.white};\n }\n `;\n }\n};\n\nconst StyledIconButton = styled.button<HeaderItemProps>`\n border-width: 0;\n cursor: pointer;\n height: 48px;\n width: 48px;\n background: transparent;\n display: ${(props) => (props.hideOnLowWidth ? 'none' : 'block')};\n border-radius: ${(props) => (props.borderRadius ? `${props.borderRadius}px` : '4px')};\n div {\n height: 36px;\n width: 36px;\n border-radius: ${(props) => (props.borderRadius ? `${props.borderRadius}px` : '4px')};\n display: flex;\n justify-content: center;\n align-items: center;\n svg {\n height: ${(props) => (props.unsetIconSize ? 'unset' : '24px')};\n width: ${(props) => (props.unsetIconSize ? 'unset' : '24px')};\n padding: 0;\n }\n }\n &:only-child {\n margin: 0;\n }\n &:disabled {\n cursor: not-allowed;\n }\n &:focus:not(:disabled) {\n outline: none;\n div {\n outline: none;\n }\n }\n &:active:not(:disabled) {\n div {\n box-shadow: none;\n }\n }\n`;\n\nconst StyledPrimaryIconButton = styled(StyledIconButton)`\n div {\n background-color: ${(props) => (props.useTransparentBackground ? 'transparent' : COLORS.primary_500)};\n\n svg {\n fill: ${(props) => props.iconColor || COLORS.white};\n path {\n fill: ${(props) => props.iconColor || COLORS.white};\n }\n }\n }\n &:hover:not(:disabled) {\n div {\n background-color: ${COLORS.primary_700};\n }\n div svg path,\n div svg {\n fill: ${COLORS.white};\n }\n }\n &:active:not(:disabled) {\n div {\n background: ${COLORS.primary_800};\n }\n div svg path,\n div svg {\n fill: ${COLORS.white};\n }\n }\n &:disabled {\n div {\n background-color: ${COLORS.neutral_200};\n }\n svg {\n path {\n fill: ${COLORS.white};\n }\n fill: ${COLORS.white};\n }\n }\n ${(props) => (props.tabbedHere ? tabbedHereStyle('primary') : '')};\n`;\n\nconst StyledSecondaryIconButton = styled(StyledIconButton)`\n div {\n background-color: ${(props) => (props.useTransparentBackground ? 'transparent' : COLORS.white)};\n\n svg {\n fill: ${(props) => props.iconColor || COLORS.neutral_600};\n path {\n fill: ${(props) => props.iconColor || COLORS.neutral_600};\n }\n }\n }\n &:hover:not(:disabled) {\n div {\n background-color: ${COLORS.primary_20};\n }\n div svg path,\n div svg {\n fill: ${COLORS.primary_700};\n }\n }\n &:active:not(:disabled) {\n div {\n background: ${COLORS.primary_100};\n }\n div svg path,\n div svg {\n fill: ${COLORS.primary_800};\n }\n }\n\n &:disabled {\n div {\n background-color: ${COLORS.white};\n }\n svg {\n path {\n fill: ${COLORS.neutral_300};\n }\n fill: ${COLORS.neutral_300};\n }\n }\n\n ${(props) => (props.tabbedHere ? tabbedHereStyle('secondary') : '')};\n`;\n\ntype Props = {\n variant?: 'primary' | 'secondary';\n shape?: 'square' | 'circular';\n action: (event?: React.MouseEvent<HTMLButtonElement>) => void;\n hideOnLowWidth?: boolean;\n isInMobileMenu?: boolean;\n disabled?: boolean;\n useTransparentBackground?: boolean;\n iconColor?: string;\n unsetIconSize?: boolean;\n tabIndex?: number;\n borderRadius?: number;\n};\n\nconst IconButton: React.FunctionComponent<Props> = ({\n variant,\n shape,\n action,\n hideOnLowWidth,\n isInMobileMenu,\n children,\n useTransparentBackground,\n disabled,\n iconColor,\n unsetIconSize,\n tabIndex,\n borderRadius,\n}): React.ReactElement<Props> => {\n const supressFocusRef = React.useRef<any>(null);\n const [tabbedHere, setTabbedHere] = React.useState<boolean>(false);\n\n const isPressingEnter = (e: any) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n e.stopPropagation();\n return true;\n }\n return false;\n };\n\n // Let's render button\n switch (variant) {\n case 'secondary':\n return (\n <StyledSecondaryIconButton\n onClick={(event: React.MouseEvent<HTMLButtonElement>) => action(event)}\n onKeyDown={(e: any) => (isPressingEnter(e) ? action() : null)}\n disabled={disabled}\n hideOnLowWidth={hideOnLowWidth || false}\n inMobileMenu={isInMobileMenu}\n useTransparentBackground={useTransparentBackground}\n iconColor={iconColor}\n unsetIconSize={unsetIconSize}\n tabIndex={tabIndex || 0}\n borderRadius={borderRadius || shape === 'circular' ? 18 : 0}\n onMouseDown={(e: any) => {\n if (!disabled && !tabbedHere) supressFocusRef.current = true;\n }}\n onFocus={(e: any) => {\n if (!disabled) {\n if (!supressFocusRef.current) setTabbedHere(true);\n else supressFocusRef.current = false;\n }\n }}\n onBlur={() => setTabbedHere(false)}\n tabbedHere={tabbedHere}>\n <div>{children}</div>\n </StyledSecondaryIconButton>\n );\n case 'primary':\n default:\n return (\n <StyledPrimaryIconButton\n onClick={(event: React.MouseEvent<HTMLButtonElement>) => action(event)}\n onKeyDown={(e: any) => (isPressingEnter(e) ? action() : null)}\n disabled={disabled}\n hideOnLowWidth={hideOnLowWidth || false}\n inMobileMenu={isInMobileMenu}\n useTransparentBackground={useTransparentBackground}\n iconColor={iconColor}\n unsetIconSize={unsetIconSize}\n tabIndex={tabIndex || 0}\n borderRadius={borderRadius || shape === 'circular' ? 18 : 0}\n onMouseDown={(e: any) => {\n if (!disabled && !tabbedHere) supressFocusRef.current = true;\n }}\n onFocus={(e: any) => {\n if (!disabled) {\n if (!supressFocusRef.current) setTabbedHere(true);\n else supressFocusRef.current = false;\n }\n }}\n onBlur={() => setTabbedHere(false)}\n tabbedHere={tabbedHere}>\n <div>{children}</div>\n </StyledPrimaryIconButton>\n );\n }\n};\n\nexport default IconButton;\n"],"file":"Iconbutton.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/Button/Iconbutton.tsx"],"names":["tabbedHereStyle","variant","css","COLORS","primary_500","neutral_600","primary_700","white","StyledIconButton","styled","button","props","borderRadius","StyledPrimaryIconButton","primary_800","neutral_200","StyledSecondaryIconButton","primary_20","primary_100","neutral_300","shape","action","hideOnLowWidth","isInMobileMenu","disabled","useTransparentBackground","iconColor","unsetIconSize","tabIndex","IconButton","supressFocusRef","React","isPressingEnter","e","event","setTabbedHere","tabbedHere"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport styled, { css } from 'styled-components';\n\nimport { COLORS } from '../styles';\n\ninterface HeaderItemProps {\n hideOnLowWidth: boolean;\n inMobileMenu?: boolean;\n useTransparentBackground?: boolean;\n iconColor?: string;\n unsetIconSize?: boolean;\n borderRadius?: number;\n shape?: string;\n tabbedHere?: boolean;\n}\n\nconst tabbedHereStyle = (variant: string) => {\n switch (variant) {\n case 'secondary':\n return css`\n div {\n box-shadow: 0px 0px 8px ${COLORS.primary_500}, 0px 4px 12px rgba(46, 127, 161, 0.25);\n }\n div svg path,\n div svg {\n fill: ${COLORS.neutral_600};\n }\n `;\n case 'primary':\n default:\n return css`\n div {\n background-color: ${COLORS.primary_700};\n box-shadow: 0px 4px 12px rgba(46, 127, 161, 0.25), 0px 0px 8px #2e7fa1;\n }\n div svg path,\n div svg {\n fill: ${COLORS.white};\n }\n `;\n }\n};\n\nconst StyledIconButton = styled.button<HeaderItemProps>`\n border-width: 0;\n cursor: pointer;\n height: 48px;\n width: 48px;\n background: transparent;\n display: ${(props) => (props.hideOnLowWidth ? 'none' : 'block')};\n border-radius: ${(props) => (props.borderRadius ? `${props.borderRadius}px` : '4px')};\n div {\n height: 36px;\n width: 36px;\n border-radius: ${(props) => (props.borderRadius ? `${props.borderRadius}px` : '4px')};\n display: flex;\n justify-content: center;\n align-items: center;\n svg {\n height: ${(props) => (props.unsetIconSize ? 'unset' : '24px')};\n width: ${(props) => (props.unsetIconSize ? 'unset' : '24px')};\n padding: 0;\n }\n }\n &:only-child {\n margin: 0;\n }\n &:disabled {\n cursor: not-allowed;\n }\n &:focus:not(:disabled) {\n outline: none;\n div {\n outline: none;\n }\n }\n &:active:not(:disabled) {\n div {\n box-shadow: none;\n }\n }\n`;\n\nconst StyledPrimaryIconButton = styled(StyledIconButton)`\n div {\n background-color: ${(props) => (props.useTransparentBackground ? 'transparent' : COLORS.primary_500)};\n\n svg {\n fill: ${(props) => props.iconColor || COLORS.white};\n path {\n fill: ${(props) => props.iconColor || COLORS.white};\n }\n }\n }\n &:hover:not(:disabled) {\n div {\n background-color: ${COLORS.primary_700};\n }\n div svg path,\n div svg {\n fill: ${COLORS.white};\n }\n }\n &:active:not(:disabled) {\n div {\n background: ${COLORS.primary_800};\n }\n div svg path,\n div svg {\n fill: ${COLORS.white};\n }\n }\n &:disabled {\n div {\n background-color: ${COLORS.neutral_200};\n }\n svg {\n path {\n fill: ${COLORS.white};\n }\n fill: ${COLORS.white};\n }\n }\n ${(props) => (props.tabbedHere ? tabbedHereStyle('primary') : '')};\n`;\n\nconst StyledSecondaryIconButton = styled(StyledIconButton)`\n div {\n background-color: ${(props) => (props.useTransparentBackground ? 'transparent' : COLORS.white)};\n\n svg {\n fill: ${(props) => props.iconColor || COLORS.neutral_600};\n path {\n fill: ${(props) => props.iconColor || COLORS.neutral_600};\n }\n }\n }\n &:hover:not(:disabled) {\n div {\n background-color: ${COLORS.primary_20};\n }\n div svg path,\n div svg {\n fill: ${COLORS.primary_700};\n }\n }\n &:active:not(:disabled) {\n div {\n background: ${COLORS.primary_100};\n }\n div svg path,\n div svg {\n fill: ${COLORS.primary_800};\n }\n }\n\n &:disabled {\n div {\n background-color: ${(props) => (props.useTransparentBackground ? 'transparent' : COLORS.white)};\n }\n svg {\n path {\n fill: ${COLORS.neutral_300};\n }\n fill: ${COLORS.neutral_300};\n }\n }\n\n ${(props) => (props.tabbedHere ? tabbedHereStyle('secondary') : '')};\n`;\n\ntype Props = {\n variant?: 'primary' | 'secondary';\n shape?: 'square' | 'circular';\n action: (event?: React.MouseEvent<HTMLButtonElement>) => void;\n hideOnLowWidth?: boolean;\n isInMobileMenu?: boolean;\n disabled?: boolean;\n useTransparentBackground?: boolean;\n iconColor?: string;\n unsetIconSize?: boolean;\n tabIndex?: number;\n borderRadius?: number;\n};\n\nconst IconButton: React.FunctionComponent<Props> = ({\n variant,\n shape,\n action,\n hideOnLowWidth,\n isInMobileMenu,\n children,\n useTransparentBackground,\n disabled,\n iconColor,\n unsetIconSize,\n tabIndex,\n borderRadius,\n}): React.ReactElement<Props> => {\n const supressFocusRef = React.useRef<any>(null);\n const [tabbedHere, setTabbedHere] = React.useState<boolean>(false);\n\n const isPressingEnter = (e: any) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n e.stopPropagation();\n return true;\n }\n return false;\n };\n\n // Let's render button\n switch (variant) {\n case 'secondary':\n return (\n <StyledSecondaryIconButton\n onClick={(event: React.MouseEvent<HTMLButtonElement>) => action(event)}\n onKeyDown={(e: any) => (isPressingEnter(e) ? action() : null)}\n disabled={disabled}\n hideOnLowWidth={hideOnLowWidth || false}\n inMobileMenu={isInMobileMenu}\n useTransparentBackground={useTransparentBackground}\n iconColor={iconColor}\n unsetIconSize={unsetIconSize}\n tabIndex={tabIndex || 0}\n borderRadius={borderRadius || shape === 'circular' ? 18 : 0}\n onMouseDown={(e: any) => {\n if (!disabled && !tabbedHere) supressFocusRef.current = true;\n }}\n onFocus={(e: any) => {\n if (!disabled) {\n if (!supressFocusRef.current) setTabbedHere(true);\n else supressFocusRef.current = false;\n }\n }}\n onBlur={() => setTabbedHere(false)}\n tabbedHere={tabbedHere}>\n <div>{children}</div>\n </StyledSecondaryIconButton>\n );\n case 'primary':\n default:\n return (\n <StyledPrimaryIconButton\n onClick={(event: React.MouseEvent<HTMLButtonElement>) => action(event)}\n onKeyDown={(e: any) => (isPressingEnter(e) ? action() : null)}\n disabled={disabled}\n hideOnLowWidth={hideOnLowWidth || false}\n inMobileMenu={isInMobileMenu}\n useTransparentBackground={useTransparentBackground}\n iconColor={iconColor}\n unsetIconSize={unsetIconSize}\n tabIndex={tabIndex || 0}\n borderRadius={borderRadius || shape === 'circular' ? 18 : 0}\n onMouseDown={(e: any) => {\n if (!disabled && !tabbedHere) supressFocusRef.current = true;\n }}\n onFocus={(e: any) => {\n if (!disabled) {\n if (!supressFocusRef.current) setTabbedHere(true);\n else supressFocusRef.current = false;\n }\n }}\n onBlur={() => setTabbedHere(false)}\n tabbedHere={tabbedHere}>\n <div>{children}</div>\n </StyledPrimaryIconButton>\n );\n }\n};\n\nexport default IconButton;\n"],"file":"Iconbutton.js"}
|
|
@@ -135,6 +135,9 @@
|
|
|
135
135
|
size: getIconSize(),
|
|
136
136
|
className: 'icon'
|
|
137
137
|
}), text, /*#__PURE__*/React.createElement(_index2.IconButton, {
|
|
138
|
+
variant: "secondary",
|
|
139
|
+
shape: "circular",
|
|
140
|
+
useTransparentBackground: true,
|
|
138
141
|
action: event => onRemoveClick(event),
|
|
139
142
|
disabled: disabled
|
|
140
143
|
}, _index.SystemIcons.Close({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/Chips/InputChip.tsx"],"names":["InputChip","onRemove","getIconSize","size","iconSize","onRemoveClick","event","disabled","variant","icon","onClick","className"],"mappings":";;;;;;;;;;;;;;;;;;;MAGA,K;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAHA;AACA;AACA;;AAGA;AACA;AACA;;AAIA;AACA;AACA;;AAGA;AACA;AACA;AAGA,QAAMA,SAAkD,GAAG,CAAC;AAAA,IAAA,IAAA;AAAA,IAAA,IAAA;AAAA,IAAA,OAAA;AAAA,IAAA,IAAA;AAAA,IAAA,QAAA;AAAA,IAAA,OAAA;AAAgDC,IAAAA;AAAhD,GAAD,KAAgF;AACzI;AACF;AACA;AACA;AACE,UAAMC,WAAW,GAAG,MAAc;AAChC,UADgC,QAChC,CADgC,CAGhC;;AACA,UAAIC,IAAI,KAAR,OAAA,EAAsB;AACpBC,QAAAA,QAAQ,GAARA,MAAAA;AADF,OAAA,MAEO,IAAID,IAAI,KAAR,QAAA,EAAuB;AAC5BC,QAAAA,QAAQ,GAARA,MAAAA;AADK,OAAA,MAEA;AACLA,QAAAA,QAAQ,GAARA,MAAAA;AACD;;AAED,aAAA,QAAA;AAZF,KAAA;AAeA;AACF;AACA;AACA;;;AACE,UAAMC,aAAa,GAAIC,KAAD,IAA4D;AAChF,UAAA,KAAA,EAAW;AACTA,QAAAA,KAAK,CAALA,eAAAA;AACD;;AAEDL,MAAAA,QAAQ;AALV,KAAA;AAQA;AACF;AACA;;;AACE,WAAA,aACE,KAAA,CAAA,aAAA,CAAA,KAAA,CAAA,QAAA,EAAA,IAAA,EAAA,aACE,KAAA,CAAA,aAAA,CAAA,yBAAA,EAAA;AAAe,MAAA,SAAS,EAAG,GAAEE,IAAK,gBAAeI,QAAQ,GAAA,UAAA,GAAgBC,OAAQ,IAAGC,IAAI,IAAI,WAA5F,EAAA;AAA2G,MAAA,OAAO,EAAE,MAAMC,OAAO;AAAjI,KAAA,EAEGF,OAAO,KAAPA,OAAAA,IAAAA,IAAAA,IAA+B,mBAAA,IAAA,EAAY;AAAEL,MAAAA,IAAI,EAAED,WAAR,EAAA;AAAuBS,MAAAA,SAAS,EAAE;AAAlC,KAAZ,CAFlC,EAAA,IAAA,EAAA,aAQE,KAAA,CAAA,aAAA,CAAA,kBAAA,EAAA;
|
|
1
|
+
{"version":3,"sources":["../../../src/Chips/InputChip.tsx"],"names":["InputChip","onRemove","getIconSize","size","iconSize","onRemoveClick","event","disabled","variant","icon","onClick","className"],"mappings":";;;;;;;;;;;;;;;;;;;MAGA,K;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAHA;AACA;AACA;;AAGA;AACA;AACA;;AAIA;AACA;AACA;;AAGA;AACA;AACA;AAGA,QAAMA,SAAkD,GAAG,CAAC;AAAA,IAAA,IAAA;AAAA,IAAA,IAAA;AAAA,IAAA,OAAA;AAAA,IAAA,IAAA;AAAA,IAAA,QAAA;AAAA,IAAA,OAAA;AAAgDC,IAAAA;AAAhD,GAAD,KAAgF;AACzI;AACF;AACA;AACA;AACE,UAAMC,WAAW,GAAG,MAAc;AAChC,UADgC,QAChC,CADgC,CAGhC;;AACA,UAAIC,IAAI,KAAR,OAAA,EAAsB;AACpBC,QAAAA,QAAQ,GAARA,MAAAA;AADF,OAAA,MAEO,IAAID,IAAI,KAAR,QAAA,EAAuB;AAC5BC,QAAAA,QAAQ,GAARA,MAAAA;AADK,OAAA,MAEA;AACLA,QAAAA,QAAQ,GAARA,MAAAA;AACD;;AAED,aAAA,QAAA;AAZF,KAAA;AAeA;AACF;AACA;AACA;;;AACE,UAAMC,aAAa,GAAIC,KAAD,IAA4D;AAChF,UAAA,KAAA,EAAW;AACTA,QAAAA,KAAK,CAALA,eAAAA;AACD;;AAEDL,MAAAA,QAAQ;AALV,KAAA;AAQA;AACF;AACA;;;AACE,WAAA,aACE,KAAA,CAAA,aAAA,CAAA,KAAA,CAAA,QAAA,EAAA,IAAA,EAAA,aACE,KAAA,CAAA,aAAA,CAAA,yBAAA,EAAA;AAAe,MAAA,SAAS,EAAG,GAAEE,IAAK,gBAAeI,QAAQ,GAAA,UAAA,GAAgBC,OAAQ,IAAGC,IAAI,IAAI,WAA5F,EAAA;AAA2G,MAAA,OAAO,EAAE,MAAMC,OAAO;AAAjI,KAAA,EAEGF,OAAO,KAAPA,OAAAA,IAAAA,IAAAA,IAA+B,mBAAA,IAAA,EAAY;AAAEL,MAAAA,IAAI,EAAED,WAAR,EAAA;AAAuBS,MAAAA,SAAS,EAAE;AAAlC,KAAZ,CAFlC,EAAA,IAAA,EAAA,aAQE,KAAA,CAAA,aAAA,CAAA,kBAAA,EAAA;AACE,MAAA,OAAO,EADT,WAAA;AAEE,MAAA,KAAK,EAFP,UAAA;AAGE,MAAA,wBAAwB,EAH1B,IAAA;AAIE,MAAA,MAAM,EAAGL,KAAD,IAA4DD,aAAa,CAJnF,KAImF,CAJnF;AAKE,MAAA,QAAQ,EAAEE;AALZ,KAAA,EAMG,mBAAA,KAAA,CAAY;AAAEJ,MAAAA,IAAI,EAAED,WAAR,EAAA;AAAuBS,MAAAA,SAAS,EAAE;AAAlC,KAAZ,CANH,CARF,CADF,CADF;AAnCF,GAAA;;oBA0DA,S","sourcesContent":["/**\n * Import React libraries.\n */\nimport * as React from 'react';\n\n/**\n * Import custom components.\n */\nimport { SystemIcons as icons } from '../icons/index';\nimport { IconButton } from '../Button/index';\n\n/**\n * Import custom styles.\n */\nimport { ChipContainer } from './ChipStyles';\n\n/**\n * Import custom types.\n */\nimport { InputChipProps } from './ChipTypes';\n\nconst InputChip: React.FunctionComponent<InputChipProps> = ({ icon, text, variant, size, disabled, onClick, onRemove }: InputChipProps) => {\n /**\n * Retrieves icon size based on the chip size.\n * @returns A string indicating the icon size.\n */\n const getIconSize = (): string => {\n let iconSize: string;\n\n // Calculate correct icon size\n if (size === 'small') {\n iconSize = '16px';\n } else if (size === 'medium') {\n iconSize = '20px';\n } else {\n iconSize = '24px';\n }\n\n return iconSize;\n };\n\n /**\n * Calls onRemove action when remove button is clicked.\n * @param event - Event handler from the button click.\n */\n const onRemoveClick = (event: React.MouseEvent<HTMLButtonElement> | undefined) => {\n if (event) {\n event.stopPropagation();\n }\n\n onRemove();\n };\n\n /**\n * Return Input Chip component.\n */\n return (\n <>\n <ChipContainer className={`${size} button-chip ${disabled ? 'disabled' : variant} ${icon && 'icon-chip'}`} onClick={() => onClick()}>\n {/* Let's render icon if it is passed */}\n {variant !== 'error' && icon && icons[icon]({ size: getIconSize(), className: 'icon' })}\n\n {/* Let's render text */}\n {text}\n\n {/* Let's render clear icon */}\n <IconButton\n variant=\"secondary\"\n shape=\"circular\"\n useTransparentBackground\n action={(event: React.MouseEvent<HTMLButtonElement> | undefined) => onRemoveClick(event)}\n disabled={disabled}>\n {icons.Close({ size: getIconSize(), className: 'remove' })}\n </IconButton>\n </ChipContainer>\n </>\n );\n};\n\nexport default InputChip;\n"],"file":"InputChip.js"}
|
|
@@ -171,6 +171,8 @@
|
|
|
171
171
|
|
|
172
172
|
const renderIconButton = () => {
|
|
173
173
|
return /*#__PURE__*/React.createElement(_Button.IconButton, {
|
|
174
|
+
variant: "secondary",
|
|
175
|
+
shape: "circular",
|
|
174
176
|
action: () => setDropdownOpen(!dropdownOpen),
|
|
175
177
|
disabled: disabled
|
|
176
178
|
}, icon && _index.SystemIcons[icon]({
|