@entur/button 2.10.6 → 2.10.8
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/CHANGELOG.md +465 -0
- package/dist/BaseSquareButton.d.ts +4 -3
- package/dist/Button.d.ts +4 -3
- package/dist/IconButton.d.ts +4 -3
- package/dist/NegativeButton.d.ts +4 -4
- package/dist/PrimaryButton.d.ts +4 -3
- package/dist/SecondaryButton.d.ts +5 -4
- package/dist/SecondarySquareButton.d.ts +5 -4
- package/dist/SuccessButton.d.ts +6 -5
- package/dist/SuccessSquareButton.d.ts +4 -3
- package/dist/TertiaryButton.d.ts +15 -6
- package/dist/TertiarySquareButton.d.ts +5 -4
- package/dist/button.cjs.development.js +87 -58
- package/dist/button.cjs.development.js.map +1 -1
- package/dist/button.cjs.production.min.js +1 -1
- package/dist/button.cjs.production.min.js.map +1 -1
- package/dist/button.esm.js +87 -58
- package/dist/button.esm.js.map +1 -1
- package/dist/styles.css +8 -8
- package/package.json +9 -14
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { PolymorphicComponentPropsWithRef } from '@entur/utils';
|
|
3
3
|
declare type SuccessSquareButtonBaseProps = {
|
|
4
4
|
/** Tekst og ikon, ikon og tekst, eller bare ikon */
|
|
5
5
|
children: React.ReactNode;
|
|
@@ -14,7 +14,8 @@ declare type SuccessSquareButtonBaseProps = {
|
|
|
14
14
|
*/
|
|
15
15
|
loading?: boolean;
|
|
16
16
|
};
|
|
17
|
-
export declare type SuccessSquareButtonProps<
|
|
17
|
+
export declare type SuccessSquareButtonProps<T extends React.ElementType> = PolymorphicComponentPropsWithRef<T, SuccessSquareButtonBaseProps>;
|
|
18
|
+
export declare type SuccessSquareButtonComponent = <T extends React.ElementType = typeof defaultElement>(props: SuccessSquareButtonProps<T>) => React.ReactElement | null;
|
|
18
19
|
declare const defaultElement = "button";
|
|
19
|
-
export declare const SuccessSquareButton:
|
|
20
|
+
export declare const SuccessSquareButton: SuccessSquareButtonComponent;
|
|
20
21
|
export {};
|
package/dist/TertiaryButton.d.ts
CHANGED
|
@@ -1,20 +1,29 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { PolymorphicComponentPropsWithRef } from '@entur/utils';
|
|
3
3
|
export declare type TertiaryButtonBaseProps = {
|
|
4
|
+
/** Størrelsen på knappen
|
|
5
|
+
* @default 'medium'
|
|
6
|
+
*/
|
|
7
|
+
size?: 'medium' | 'large';
|
|
8
|
+
/** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe
|
|
9
|
+
* @default false
|
|
10
|
+
*/
|
|
11
|
+
loading?: boolean;
|
|
4
12
|
/** Ekstra klassenavn */
|
|
5
13
|
className?: string;
|
|
6
14
|
/** Deaktivering av knappen
|
|
7
15
|
* @default false
|
|
8
16
|
*/
|
|
9
17
|
disabled?: boolean;
|
|
10
|
-
/**
|
|
11
|
-
* @default
|
|
18
|
+
/** Bredden på knappen.
|
|
19
|
+
* @default 'auto'
|
|
12
20
|
*/
|
|
13
|
-
|
|
21
|
+
width?: 'fluid' | 'auto';
|
|
14
22
|
/** Innholdet i knappen */
|
|
15
23
|
children: React.ReactNode;
|
|
16
24
|
};
|
|
17
|
-
export declare type TertiaryButtonProps<
|
|
25
|
+
export declare type TertiaryButtonProps<T extends React.ElementType> = PolymorphicComponentPropsWithRef<T, TertiaryButtonBaseProps>;
|
|
26
|
+
export declare type TertiaryButtonComponent = <T extends React.ElementType = typeof defaultElement>(props: TertiaryButtonProps<T>) => React.ReactElement | null;
|
|
18
27
|
declare const defaultElement = "button";
|
|
19
|
-
export declare const TertiaryButton:
|
|
28
|
+
export declare const TertiaryButton: TertiaryButtonComponent;
|
|
20
29
|
export {};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import {
|
|
3
|
-
|
|
2
|
+
import { PolymorphicComponentPropsWithRef } from '@entur/utils';
|
|
3
|
+
declare type TertiarySquareButtonBaseProps = {
|
|
4
4
|
/** Tekst og ikon, ikon og tekst, eller bare ikon */
|
|
5
5
|
children: React.ReactNode;
|
|
6
6
|
/** Ekstra klassenavn */
|
|
@@ -14,7 +14,8 @@ export declare type TertiarySquareButtonBaseProps = {
|
|
|
14
14
|
*/
|
|
15
15
|
loading?: boolean;
|
|
16
16
|
};
|
|
17
|
-
export declare type TertiarySquareButtonProps<
|
|
17
|
+
export declare type TertiarySquareButtonProps<T extends React.ElementType> = PolymorphicComponentPropsWithRef<T, TertiarySquareButtonBaseProps>;
|
|
18
|
+
export declare type TertiarySquareButtonComponent = <T extends React.ElementType = typeof defaultElement>(props: TertiarySquareButtonProps<T>) => React.ReactElement | null;
|
|
18
19
|
declare const defaultElement = "button";
|
|
19
|
-
export declare const TertiarySquareButton:
|
|
20
|
+
export declare const TertiarySquareButton: TertiarySquareButtonComponent;
|
|
20
21
|
export {};
|
|
@@ -35,46 +35,54 @@ function _extends() {
|
|
|
35
35
|
_extends = Object.assign || function (target) {
|
|
36
36
|
for (var i = 1; i < arguments.length; i++) {
|
|
37
37
|
var source = arguments[i];
|
|
38
|
+
|
|
38
39
|
for (var key in source) {
|
|
39
40
|
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
40
41
|
target[key] = source[key];
|
|
41
42
|
}
|
|
42
43
|
}
|
|
43
44
|
}
|
|
45
|
+
|
|
44
46
|
return target;
|
|
45
47
|
};
|
|
48
|
+
|
|
46
49
|
return _extends.apply(this, arguments);
|
|
47
50
|
}
|
|
51
|
+
|
|
48
52
|
function _objectWithoutPropertiesLoose(source, excluded) {
|
|
49
53
|
if (source == null) return {};
|
|
50
54
|
var target = {};
|
|
51
55
|
var sourceKeys = Object.keys(source);
|
|
52
56
|
var key, i;
|
|
57
|
+
|
|
53
58
|
for (i = 0; i < sourceKeys.length; i++) {
|
|
54
59
|
key = sourceKeys[i];
|
|
55
60
|
if (excluded.indexOf(key) >= 0) continue;
|
|
56
61
|
target[key] = source[key];
|
|
57
62
|
}
|
|
63
|
+
|
|
58
64
|
return target;
|
|
59
65
|
}
|
|
60
66
|
|
|
61
|
-
var _excluded$4 = ["as", "variant", "size", "loading", "className", "
|
|
67
|
+
var _excluded$4 = ["as", "children", "variant", "size", "loading", "className", "disabled", "width", "aria-label"];
|
|
62
68
|
var defaultElement$a = 'button';
|
|
63
69
|
var Button = /*#__PURE__*/React__namespace.forwardRef(function (_ref, ref) {
|
|
64
70
|
var _cx;
|
|
71
|
+
|
|
65
72
|
var as = _ref.as,
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
73
|
+
children = _ref.children,
|
|
74
|
+
variant = _ref.variant,
|
|
75
|
+
_ref$size = _ref.size,
|
|
76
|
+
size = _ref$size === void 0 ? 'medium' : _ref$size,
|
|
77
|
+
loading = _ref.loading,
|
|
78
|
+
className = _ref.className,
|
|
79
|
+
_ref$disabled = _ref.disabled,
|
|
80
|
+
disabled = _ref$disabled === void 0 ? false : _ref$disabled,
|
|
81
|
+
_ref$width = _ref.width,
|
|
82
|
+
width = _ref$width === void 0 ? 'auto' : _ref$width,
|
|
83
|
+
ariaLabel = _ref['aria-label'],
|
|
84
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded$4);
|
|
85
|
+
|
|
78
86
|
var Element = as || defaultElement$a;
|
|
79
87
|
var childrenArray = React__namespace.Children.toArray(children);
|
|
80
88
|
var hasLeadingIcon = childrenArray.length > 1 && typeof childrenArray[0] !== 'string';
|
|
@@ -82,11 +90,13 @@ var Button = /*#__PURE__*/React__namespace.forwardRef(function (_ref, ref) {
|
|
|
82
90
|
var ariaLabelWhenLoading = childrenArray.filter(function (child) {
|
|
83
91
|
return typeof child === 'string';
|
|
84
92
|
}).join(' ');
|
|
93
|
+
|
|
85
94
|
var ariaLabelValue = function ariaLabelValue() {
|
|
86
95
|
if (ariaLabel) return ariaLabel;
|
|
87
96
|
if (loading) return ariaLabelWhenLoading;
|
|
88
97
|
return undefined;
|
|
89
98
|
};
|
|
99
|
+
|
|
90
100
|
return React__namespace.createElement(Element, _extends({
|
|
91
101
|
className: classNames__default["default"]('eds-button', (_cx = {}, _cx["eds-button--variant-" + variant] = variant, _cx["eds-button--size-" + size] = size, _cx['eds-button--width-fluid'] = width === 'fluid', _cx['eds-button--loading'] = loading, _cx['eds-button--leading-icon'] = hasLeadingIcon, _cx['eds-button--trailing-icon'] = hasTrailingIcon, _cx), className),
|
|
92
102
|
ref: ref,
|
|
@@ -101,7 +111,8 @@ var Button = /*#__PURE__*/React__namespace.forwardRef(function (_ref, ref) {
|
|
|
101
111
|
|
|
102
112
|
var defaultElement$9 = 'button';
|
|
103
113
|
var PrimaryButton = /*#__PURE__*/React__default["default"].forwardRef(function (props, ref) {
|
|
104
|
-
var Element = props.as || defaultElement$9;
|
|
114
|
+
var Element = props.as || defaultElement$9; // @ts-expect-error type error due to props not being BaseButtonProps
|
|
115
|
+
|
|
105
116
|
return React__default["default"].createElement(Button, _extends({
|
|
106
117
|
as: Element
|
|
107
118
|
}, props, {
|
|
@@ -112,7 +123,8 @@ var PrimaryButton = /*#__PURE__*/React__default["default"].forwardRef(function (
|
|
|
112
123
|
|
|
113
124
|
var defaultElement$8 = 'button';
|
|
114
125
|
var SecondaryButton = /*#__PURE__*/React__default["default"].forwardRef(function (props, ref) {
|
|
115
|
-
var Element = props.as || defaultElement$8;
|
|
126
|
+
var Element = props.as || defaultElement$8; // @ts-expect-error type error due to props not being BaseButtonProps
|
|
127
|
+
|
|
116
128
|
return React__default["default"].createElement(Button, _extends({
|
|
117
129
|
as: Element
|
|
118
130
|
}, props, {
|
|
@@ -123,7 +135,8 @@ var SecondaryButton = /*#__PURE__*/React__default["default"].forwardRef(function
|
|
|
123
135
|
|
|
124
136
|
var defaultElement$7 = 'button';
|
|
125
137
|
var SuccessButton = /*#__PURE__*/React__default["default"].forwardRef(function (props, ref) {
|
|
126
|
-
var Element = props.as || defaultElement$7;
|
|
138
|
+
var Element = props.as || defaultElement$7; // @ts-expect-error type error due to props not being BaseButtonProps
|
|
139
|
+
|
|
127
140
|
return React__default["default"].createElement(Button, _extends({
|
|
128
141
|
as: Element
|
|
129
142
|
}, props, {
|
|
@@ -134,7 +147,8 @@ var SuccessButton = /*#__PURE__*/React__default["default"].forwardRef(function (
|
|
|
134
147
|
|
|
135
148
|
var defaultElement$6 = 'button';
|
|
136
149
|
var NegativeButton = /*#__PURE__*/React__default["default"].forwardRef(function (props, ref) {
|
|
137
|
-
var Element = props.as || defaultElement$6;
|
|
150
|
+
var Element = props.as || defaultElement$6; // @ts-expect-error type error due to props not being BaseButtonProps
|
|
151
|
+
|
|
138
152
|
return React__default["default"].createElement(Button, _extends({
|
|
139
153
|
as: Element
|
|
140
154
|
}, props, {
|
|
@@ -145,7 +159,8 @@ var NegativeButton = /*#__PURE__*/React__default["default"].forwardRef(function
|
|
|
145
159
|
|
|
146
160
|
var defaultElement$5 = 'button';
|
|
147
161
|
var TertiaryButton = /*#__PURE__*/React__default["default"].forwardRef(function (props, ref) {
|
|
148
|
-
var Element = props.as || defaultElement$5;
|
|
162
|
+
var Element = props.as || defaultElement$5; // @ts-expect-error type error due to props not being BaseButtonProps
|
|
163
|
+
|
|
149
164
|
return React__default["default"].createElement(Button, _extends({
|
|
150
165
|
as: Element
|
|
151
166
|
}, props, {
|
|
@@ -157,9 +172,10 @@ var TertiaryButton = /*#__PURE__*/React__default["default"].forwardRef(function
|
|
|
157
172
|
var _excluded$3 = ["as", "className"];
|
|
158
173
|
var ButtonGroup = function ButtonGroup(_ref) {
|
|
159
174
|
var _ref$as = _ref.as,
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
175
|
+
Element = _ref$as === void 0 ? 'div' : _ref$as,
|
|
176
|
+
className = _ref.className,
|
|
177
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded$3);
|
|
178
|
+
|
|
163
179
|
return React__default["default"].createElement(Element, _extends({
|
|
164
180
|
className: classNames__default["default"]('eds-button-group', className)
|
|
165
181
|
}, rest));
|
|
@@ -168,10 +184,11 @@ var ButtonGroup = function ButtonGroup(_ref) {
|
|
|
168
184
|
var _excluded$2 = ["className", "children", "size"];
|
|
169
185
|
var FloatingButton = function FloatingButton(_ref) {
|
|
170
186
|
var className = _ref.className,
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
187
|
+
children = _ref.children,
|
|
188
|
+
_ref$size = _ref.size,
|
|
189
|
+
size = _ref$size === void 0 ? 'medium' : _ref$size,
|
|
190
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded$2);
|
|
191
|
+
|
|
175
192
|
return React__default["default"].createElement("button", _extends({
|
|
176
193
|
className: classNames__default["default"]('eds-floating-button', {
|
|
177
194
|
'eds-floating-button--extended': React__default["default"].Children.count(children) > 1
|
|
@@ -181,6 +198,7 @@ var FloatingButton = function FloatingButton(_ref) {
|
|
|
181
198
|
type: "button"
|
|
182
199
|
}, rest), wrapStringsInSpans(children));
|
|
183
200
|
};
|
|
201
|
+
|
|
184
202
|
var wrapStringsInSpans = function wrapStringsInSpans(children) {
|
|
185
203
|
return React__default["default"].Children.map(children, function (child) {
|
|
186
204
|
return typeof child === 'string' ? React__default["default"].createElement("span", null, child) : child;
|
|
@@ -191,14 +209,15 @@ var _excluded$1 = ["children", "className", "variant", "disabled", "loading", "a
|
|
|
191
209
|
var defaultElement$4 = 'button';
|
|
192
210
|
var BaseSquareButton = /*#__PURE__*/React__namespace.forwardRef(function (_ref, ref) {
|
|
193
211
|
var children = _ref.children,
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
212
|
+
className = _ref.className,
|
|
213
|
+
variant = _ref.variant,
|
|
214
|
+
_ref$disabled = _ref.disabled,
|
|
215
|
+
disabled = _ref$disabled === void 0 ? false : _ref$disabled,
|
|
216
|
+
_ref$loading = _ref.loading,
|
|
217
|
+
loading = _ref$loading === void 0 ? false : _ref$loading,
|
|
218
|
+
as = _ref.as,
|
|
219
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded$1);
|
|
220
|
+
|
|
202
221
|
var Element = as || defaultElement$4;
|
|
203
222
|
return React__namespace.createElement(Element, _extends({
|
|
204
223
|
className: classNames__default["default"]('eds-square-button', {
|
|
@@ -220,6 +239,7 @@ var BaseSquareButton = /*#__PURE__*/React__namespace.forwardRef(function (_ref,
|
|
|
220
239
|
className: "eds-square-button__label"
|
|
221
240
|
}, child);
|
|
222
241
|
}
|
|
242
|
+
|
|
223
243
|
return React__namespace.createElement("span", {
|
|
224
244
|
className: "eds-square-button__icon"
|
|
225
245
|
}, loading ? React__namespace.createElement(loader.LoadingDots, {
|
|
@@ -231,47 +251,54 @@ var BaseSquareButton = /*#__PURE__*/React__namespace.forwardRef(function (_ref,
|
|
|
231
251
|
var defaultElement$3 = 'button';
|
|
232
252
|
var SecondarySquareButton = /*#__PURE__*/React__default["default"].forwardRef(function (props, ref) {
|
|
233
253
|
var Element = props.as || defaultElement$3;
|
|
234
|
-
return
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
254
|
+
return (// @ts-expect-error type error due to props not being BaseButtonProps
|
|
255
|
+
React__default["default"].createElement(BaseSquareButton, _extends({
|
|
256
|
+
as: Element,
|
|
257
|
+
ref: ref
|
|
258
|
+
}, props, {
|
|
259
|
+
variant: "secondary"
|
|
260
|
+
}))
|
|
261
|
+
);
|
|
240
262
|
});
|
|
241
263
|
|
|
242
264
|
var defaultElement$2 = 'button';
|
|
243
265
|
var SuccessSquareButton = /*#__PURE__*/React__default["default"].forwardRef(function (props, ref) {
|
|
244
266
|
var Element = props.as || defaultElement$2;
|
|
245
|
-
return
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
267
|
+
return (// @ts-expect-error type error due to props not being BaseButtonProps
|
|
268
|
+
React__default["default"].createElement(BaseSquareButton, _extends({
|
|
269
|
+
as: Element,
|
|
270
|
+
ref: ref
|
|
271
|
+
}, props, {
|
|
272
|
+
variant: "success"
|
|
273
|
+
}))
|
|
274
|
+
);
|
|
251
275
|
});
|
|
252
276
|
|
|
253
277
|
var defaultElement$1 = 'button';
|
|
254
278
|
var TertiarySquareButton = /*#__PURE__*/React__default["default"].forwardRef(function (props, ref) {
|
|
255
279
|
var Element = props.as || defaultElement$1;
|
|
256
|
-
return
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
280
|
+
return (// @ts-expect-error type error due to props not being BaseButtonProps
|
|
281
|
+
React__default["default"].createElement(BaseSquareButton, _extends({
|
|
282
|
+
as: Element,
|
|
283
|
+
ref: ref
|
|
284
|
+
}, props, {
|
|
285
|
+
variant: "tertiary"
|
|
286
|
+
}))
|
|
287
|
+
);
|
|
262
288
|
});
|
|
263
289
|
|
|
264
290
|
var _excluded = ["children", "className", "disabled", "size", "as", "loading"];
|
|
265
291
|
var defaultElement = 'button';
|
|
266
292
|
var IconButton = /*#__PURE__*/React__default["default"].forwardRef(function (_ref, ref) {
|
|
267
293
|
var children = _ref.children,
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
294
|
+
className = _ref.className,
|
|
295
|
+
_ref$disabled = _ref.disabled,
|
|
296
|
+
disabled = _ref$disabled === void 0 ? false : _ref$disabled,
|
|
297
|
+
size = _ref.size,
|
|
298
|
+
as = _ref.as,
|
|
299
|
+
loading = _ref.loading,
|
|
300
|
+
rest = _objectWithoutPropertiesLoose(_ref, _excluded);
|
|
301
|
+
|
|
275
302
|
var Element = as || defaultElement;
|
|
276
303
|
var iconButtonElement = React__default["default"].createElement(Element, _extends({
|
|
277
304
|
className: classNames__default["default"]('eds-icon-button', className, {
|
|
@@ -282,11 +309,13 @@ var IconButton = /*#__PURE__*/React__default["default"].forwardRef(function (_re
|
|
|
282
309
|
"aria-busy": loading,
|
|
283
310
|
ref: ref
|
|
284
311
|
}, rest), loading ? React__default["default"].createElement(loader.LoadingDots, null) : children);
|
|
312
|
+
|
|
285
313
|
if (disabled) {
|
|
286
314
|
return React__default["default"].createElement("div", {
|
|
287
315
|
className: "eds-icon-button--disabled__wrapper"
|
|
288
316
|
}, iconButtonElement);
|
|
289
317
|
}
|
|
318
|
+
|
|
290
319
|
return React__default["default"].createElement(React__default["default"].Fragment, null, iconButtonElement);
|
|
291
320
|
});
|
|
292
321
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"button.cjs.development.js","sources":["../src/Button.tsx","../src/PrimaryButton.tsx","../src/SecondaryButton.tsx","../src/SuccessButton.tsx","../src/NegativeButton.tsx","../src/TertiaryButton.tsx","../src/ButtonGroup.tsx","../src/FloatingButton.tsx","../src/BaseSquareButton.tsx","../src/SecondarySquareButton.tsx","../src/SuccessSquareButton.tsx","../src/TertiarySquareButton.tsx","../src/IconButton.tsx","../src/index.tsx"],"sourcesContent":["import * as React from 'react';\nimport cx from 'classnames';\nimport {\n PolymorphicPropsWithoutRef,\n PolymorphicForwardRefExoticComponent,\n PolymorphicPropsWithRef,\n} from '@entur/utils';\nimport { LoadingDots } from '@entur/loader';\nimport './Button.scss';\n\ntype ButtonBaseProps = {\n /** Farge og uttrykk på knappen */\n variant: 'primary' | 'secondary' | 'success' | 'negative' | 'tertiary';\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n /**\n * Tekst som leses opp på skjermleser (nødvendig når knappetekst mangler)\n */\n 'aria-label'?: string;\n};\n\nconst defaultElement = 'button';\n\nexport type ButtonProps<T extends React.ElementType = typeof defaultElement> =\n PolymorphicPropsWithRef<ButtonBaseProps, T>;\n\nexport const Button: PolymorphicForwardRefExoticComponent<\n ButtonBaseProps,\n typeof defaultElement\n> = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n {\n as,\n variant,\n size = 'medium',\n loading,\n className,\n children,\n disabled = false,\n width = 'auto',\n 'aria-label': ariaLabel,\n ...rest\n }: PolymorphicPropsWithoutRef<ButtonBaseProps, T>,\n ref: React.ForwardedRef<React.ElementRef<T>>,\n ) => {\n const Element: React.ElementType = as || defaultElement;\n const childrenArray = React.Children.toArray(children);\n const hasLeadingIcon =\n childrenArray.length > 1 && typeof childrenArray[0] !== 'string';\n const hasTrailingIcon =\n childrenArray.length > 1 &&\n typeof childrenArray[childrenArray.length - 1] !== 'string';\n\n const ariaLabelWhenLoading = childrenArray\n .filter(child => typeof child === 'string')\n .join(' ');\n\n const ariaLabelValue = () => {\n if (ariaLabel) return ariaLabel;\n if (loading) return ariaLabelWhenLoading;\n return undefined;\n };\n\n return (\n <Element\n className={cx(\n 'eds-button',\n {\n [`eds-button--variant-${variant}`]: variant,\n [`eds-button--size-${size}`]: size,\n 'eds-button--width-fluid': width === 'fluid',\n 'eds-button--loading': loading,\n 'eds-button--leading-icon': hasLeadingIcon,\n 'eds-button--trailing-icon': hasTrailingIcon,\n },\n className,\n )}\n ref={ref}\n aria-busy={loading}\n disabled={disabled}\n aria-disabled={disabled}\n aria-label={ariaLabelValue()}\n {...rest}\n >\n {loading ? (\n <LoadingDots className=\"eds-button__loading-dots\" />\n ) : (\n children\n )}\n </Element>\n );\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport {\n PolymorphicPropsWithoutRef,\n PolymorphicForwardRefExoticComponent,\n PolymorphicPropsWithRef,\n} from '@entur/utils';\n\nexport type PrimaryButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type PrimaryButtonProps<\n T extends React.ElementType = typeof defaultElement,\n> = PolymorphicPropsWithRef<PrimaryButtonBaseProps, T>;\n\nconst defaultElement = 'button';\n\nexport const PrimaryButton: PolymorphicForwardRefExoticComponent<\n PrimaryButtonBaseProps,\n typeof defaultElement\n> = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: PolymorphicPropsWithoutRef<PrimaryButtonBaseProps, T>,\n ref: React.ForwardedRef<React.ElementRef<T>>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return <Button as={Element} {...props} ref={ref} variant=\"primary\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport {\n PolymorphicForwardRefExoticComponent,\n PolymorphicPropsWithRef,\n PolymorphicPropsWithoutRef,\n} from '@entur/utils';\n\nexport type SecondaryButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type SecondaryButtonProps<\n T extends React.ElementType = typeof defaultElement,\n> = PolymorphicPropsWithRef<SecondaryButtonBaseProps, T>;\n\nconst defaultElement = 'button';\n\nexport const SecondaryButton: PolymorphicForwardRefExoticComponent<\n SecondaryButtonBaseProps,\n typeof defaultElement\n> = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: PolymorphicPropsWithoutRef<SecondaryButtonBaseProps, T>,\n ref: React.ForwardedRef<React.ElementRef<T>>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return <Button as={Element} {...props} ref={ref} variant=\"secondary\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport {\n PolymorphicPropsWithoutRef,\n PolymorphicForwardRefExoticComponent,\n PolymorphicPropsWithRef,\n} from '@entur/utils';\n\ntype SuccessButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type SuccessButtonProps<\n E extends React.ElementType = typeof defaultElement,\n> = PolymorphicPropsWithRef<SuccessButtonBaseProps, E>;\n\nconst defaultElement = 'button';\n\nexport const SuccessButton: PolymorphicForwardRefExoticComponent<\n SuccessButtonBaseProps,\n typeof defaultElement\n> = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: PolymorphicPropsWithoutRef<SuccessButtonBaseProps, T>,\n ref: React.ForwardedRef<React.ElementRef<T>>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return <Button as={Element} {...props} ref={ref} variant=\"success\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport {\n PolymorphicPropsWithoutRef,\n PolymorphicPropsWithRef,\n PolymorphicForwardRefExoticComponent,\n} from '@entur/utils';\n\nexport type NegativeButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n as?: 'button' | React.ElementType;\n};\n\nexport type NegativeButtonProps<\n T extends React.ElementType = typeof defaultElement,\n> = PolymorphicPropsWithRef<NegativeButtonBaseProps, T>;\n\nconst defaultElement = 'button';\n\nexport const NegativeButton: PolymorphicForwardRefExoticComponent<\n NegativeButtonBaseProps,\n typeof defaultElement\n> = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: PolymorphicPropsWithoutRef<NegativeButtonBaseProps, T>,\n ref: React.ForwardedRef<React.ElementRef<T>>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return <Button as={Element} {...props} ref={ref} variant=\"negative\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport {\n PolymorphicPropsWithoutRef,\n PolymorphicPropsWithRef,\n PolymorphicForwardRefExoticComponent,\n} from '@entur/utils';\n\nexport type TertiaryButtonBaseProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type TertiaryButtonProps<\n E extends React.ElementType = typeof defaultElement,\n> = PolymorphicPropsWithRef<TertiaryButtonBaseProps, E>;\n\nconst defaultElement = 'button';\n\nexport const TertiaryButton: PolymorphicForwardRefExoticComponent<\n TertiaryButtonBaseProps,\n typeof defaultElement\n> = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: PolymorphicPropsWithoutRef<TertiaryButtonBaseProps, T>,\n ref: React.ForwardedRef<React.ElementRef<T>>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return <Button as={Element} {...props} ref={ref} variant=\"tertiary\" />;\n },\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport './ButtonGroup.scss';\n\nexport type ButtonGroupProps = {\n /** To eller flere Button-komponenter */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** HTML-elementet eller React-komponenten som lages\n * @default \"div\"\n */\n as?: string | React.ElementType;\n [key: string]: any;\n};\n\nexport const ButtonGroup: React.FC<ButtonGroupProps> = ({\n as: Element = 'div',\n className,\n ...rest\n}) => {\n return (\n <Element className={classNames('eds-button-group', className)} {...rest} />\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport './FloatingButton.scss';\n\nexport type FloatingButtonProps = {\n /** Beskrivende tekst for skjermlesere */\n 'aria-label': string;\n /** Ikon eller ikon-og-tekst */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Callback når knappen klikkes */\n onClick: (e: React.MouseEvent<HTMLButtonElement>) => void;\n /** Størrelse på knappen\n * @default \"medium\"\n */\n size?: 'medium' | 'small';\n [key: string]: any;\n} & React.ButtonHTMLAttributes<HTMLButtonElement>;\n\nexport const FloatingButton: React.FC<FloatingButtonProps> = ({\n className,\n children,\n size = 'medium',\n ...rest\n}) => {\n return (\n <button\n className={classNames(\n 'eds-floating-button',\n { 'eds-floating-button--extended': React.Children.count(children) > 1 },\n { 'eds-floating-button--small': size === 'small' },\n className,\n )}\n type=\"button\"\n {...rest}\n >\n {wrapStringsInSpans(children)}\n </button>\n );\n};\n\nconst wrapStringsInSpans = (children: React.ReactNode) =>\n React.Children.map(children, child =>\n typeof child === 'string' ? <span>{child}</span> : child,\n );\n","import * as React from 'react';\nimport classNames from 'classnames';\nimport {\n PolymorphicPropsWithoutRef,\n PolymorphicForwardRefExoticComponent,\n PolymorphicPropsWithRef,\n} from '@entur/utils';\nimport { LoadingDots } from '@entur/loader';\nimport './BaseSquareButton.scss';\n\nexport type BaseSquareButtonBaseProps = {\n /** Tekst og ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** En type knapp */\n variant: 'success' | 'secondary' | 'tertiary';\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type BaseSquareButtonProps<\n T extends React.ElementType = typeof defaultElement,\n> = PolymorphicPropsWithRef<BaseSquareButtonBaseProps, T>;\n\nconst defaultElement = 'button';\n\nexport const BaseSquareButton: PolymorphicForwardRefExoticComponent<\n BaseSquareButtonBaseProps,\n typeof defaultElement\n> = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n {\n children,\n className,\n variant,\n disabled = false,\n loading = false,\n as,\n ...rest\n }: PolymorphicPropsWithoutRef<BaseSquareButtonBaseProps, T>,\n ref: React.ForwardedRef<React.ElementRef<T>>,\n ) => {\n const Element: React.ElementType = as || defaultElement;\n return (\n <Element\n className={classNames(\n 'eds-square-button',\n { 'eds-square-button--success': variant === 'success' },\n { 'eds-square-button--secondary': variant === 'secondary' },\n { 'eds-square-button--tertiary': variant === 'tertiary' },\n { 'eds-square-button--loading': loading },\n className,\n )}\n aria-busy={loading}\n disabled={disabled}\n aria-disabled={disabled}\n ref={ref}\n {...rest}\n >\n {React.Children.map(children, child => {\n if (typeof child === 'string') {\n return <span className=\"eds-square-button__label\">{child}</span>;\n }\n return (\n <span className=\"eds-square-button__icon\">\n {loading ? (\n <LoadingDots className=\"eds-square-button__loading-dots\" />\n ) : (\n child\n )}\n </span>\n );\n })}\n </Element>\n );\n },\n);\n","import React from 'react';\nimport { BaseSquareButton } from './BaseSquareButton';\nimport {\n PolymorphicForwardRefExoticComponent,\n PolymorphicPropsWithoutRef,\n PolymorphicPropsWithRef,\n} from '@entur/utils';\n\nexport type SecondarySquareButtonBaseProps = {\n /** Tekst og ikon, ikon og tekst, eller bare ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type SecondarySquareButtonProps<\n E extends React.ElementType = typeof defaultElement,\n> = PolymorphicPropsWithRef<SecondarySquareButtonBaseProps, E>;\n\nconst defaultElement = 'button';\n\nexport const SecondarySquareButton: PolymorphicForwardRefExoticComponent<\n SecondarySquareButtonBaseProps,\n typeof defaultElement\n> = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: PolymorphicPropsWithoutRef<SecondarySquareButtonBaseProps, T>,\n ref: React.ForwardedRef<React.ElementRef<T>>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return (\n <BaseSquareButton as={Element} ref={ref} {...props} variant=\"secondary\" />\n );\n },\n);\n","import React from 'react';\nimport { BaseSquareButton } from './BaseSquareButton';\nimport {\n PolymorphicForwardRefExoticComponent,\n PolymorphicPropsWithRef,\n PolymorphicPropsWithoutRef,\n} from '@entur/utils';\n\ntype SuccessSquareButtonBaseProps = {\n /** Tekst og ikon, ikon og tekst, eller bare ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type SuccessSquareButtonProps<\n E extends React.ElementType = typeof defaultElement,\n> = PolymorphicPropsWithRef<SuccessSquareButtonBaseProps, E>;\n\nconst defaultElement = 'button';\n\nexport const SuccessSquareButton: PolymorphicForwardRefExoticComponent<\n SuccessSquareButtonBaseProps,\n typeof defaultElement\n> = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: PolymorphicPropsWithoutRef<SuccessSquareButtonBaseProps, T>,\n ref: React.ForwardedRef<React.ElementRef<T>>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return (\n <BaseSquareButton as={Element} ref={ref} {...props} variant=\"success\" />\n );\n },\n);\n","import React from 'react';\nimport { BaseSquareButton } from './BaseSquareButton';\nimport {\n PolymorphicForwardRefExoticComponent,\n PolymorphicPropsWithoutRef,\n PolymorphicPropsWithRef,\n} from '@entur/utils';\n\nexport type TertiarySquareButtonBaseProps = {\n /** Tekst og ikon, ikon og tekst, eller bare ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type TertiarySquareButtonProps<\n E extends React.ElementType = typeof defaultElement,\n> = PolymorphicPropsWithRef<TertiarySquareButtonBaseProps, E>;\n\nconst defaultElement = 'button';\n\nexport const TertiarySquareButton: PolymorphicForwardRefExoticComponent<\n TertiarySquareButtonBaseProps,\n typeof defaultElement\n> = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: PolymorphicPropsWithoutRef<TertiarySquareButtonBaseProps, T>,\n ref: React.ForwardedRef<React.ElementRef<T>>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return (\n <BaseSquareButton as={Element} ref={ref} {...props} variant=\"tertiary\" />\n );\n },\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport {\n PolymorphicPropsWithoutRef,\n PolymorphicForwardRefExoticComponent,\n PolymorphicPropsWithRef,\n} from '@entur/utils';\nimport { LoadingDots } from '@entur/loader';\nimport './IconButton.scss';\n\nexport type IconButtonBaseProps = {\n /** Ikonet som du vil ha inne i knappen */\n children: React.ReactNode;\n /** Tekst som forklarer knappens handling. MÅ være satt hvis du ikke har en forklarende tooltip på knappen */\n 'aria-label'?: string;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** HTML-elementet eller React-komponenten som lager knappen\n * @default 'button'\n */\n as?: React.ElementType;\n /**Størrelsen på knappen\n * @default \"medium\"\n */\n size?: 'small' | 'medium';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nconst defaultElement = 'button';\n\nexport type IconButtonProps<\n E extends React.ElementType = typeof defaultElement,\n> = PolymorphicPropsWithRef<IconButtonBaseProps, E>;\n\nexport const IconButton: PolymorphicForwardRefExoticComponent<\n IconButtonBaseProps,\n typeof defaultElement\n> = React.forwardRef(\n <E extends React.ElementType = typeof defaultElement>(\n {\n children,\n className,\n disabled = false,\n size,\n as,\n loading,\n ...rest\n }: PolymorphicPropsWithoutRef<IconButtonBaseProps, E>,\n ref: React.ForwardedRef<React.ElementRef<E>>,\n ) => {\n const Element: React.ElementType = as || defaultElement;\n\n const iconButtonElement = (\n <Element\n className={classNames(\n 'eds-icon-button',\n className,\n {\n 'eds-icon-button--disabled': disabled,\n },\n `eds-icon-button--size-${size}`,\n )}\n disabled={disabled}\n aria-disabled={disabled}\n aria-busy={loading}\n ref={ref}\n {...rest}\n >\n {loading ? <LoadingDots /> : children}\n </Element>\n );\n\n if (disabled) {\n return (\n <div className=\"eds-icon-button--disabled__wrapper\">\n {iconButtonElement}\n </div>\n );\n }\n return <>{iconButtonElement}</>;\n },\n);\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('button');\n\nexport * from './Button';\nexport * from './PrimaryButton';\nexport * from './SecondaryButton';\nexport * from './SuccessButton';\nexport * from './NegativeButton';\nexport * from './TertiaryButton';\nexport * from './ButtonGroup';\nexport * from './FloatingButton';\nexport * from './SecondarySquareButton';\nexport * from './SuccessSquareButton';\nexport * from './TertiarySquareButton';\nexport * from './IconButton';\n"],"names":["defaultElement","Button","React","forwardRef","ref","as","variant","size","loading","className","children","disabled","width","ariaLabel","rest","Element","childrenArray","Children","toArray","hasLeadingIcon","length","hasTrailingIcon","ariaLabelWhenLoading","filter","child","join","ariaLabelValue","undefined","cx","LoadingDots","PrimaryButton","props","SecondaryButton","SuccessButton","NegativeButton","TertiaryButton","ButtonGroup","classNames","FloatingButton","count","type","wrapStringsInSpans","map","BaseSquareButton","SecondarySquareButton","SuccessSquareButton","TertiarySquareButton","IconButton","iconButtonElement","warnAboutMissingStyles"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"button.cjs.development.js","sources":["../src/Button.tsx","../src/PrimaryButton.tsx","../src/SecondaryButton.tsx","../src/SuccessButton.tsx","../src/NegativeButton.tsx","../src/TertiaryButton.tsx","../src/ButtonGroup.tsx","../src/FloatingButton.tsx","../src/BaseSquareButton.tsx","../src/SecondarySquareButton.tsx","../src/SuccessSquareButton.tsx","../src/TertiarySquareButton.tsx","../src/IconButton.tsx","../src/index.tsx"],"sourcesContent":["import * as React from 'react';\nimport cx from 'classnames';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\nimport { LoadingDots } from '@entur/loader';\nimport './Button.scss';\n\ntype ButtonBaseProps = {\n /** Farge og uttrykk på knappen */\n variant: 'primary' | 'secondary' | 'success' | 'negative' | 'tertiary';\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n /**\n * Tekst som leses opp på skjermleser (nødvendig når knappetekst mangler)\n */\n 'aria-label'?: string;\n};\n\nconst defaultElement = 'button';\n\nexport type ButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, ButtonBaseProps>;\n\nexport type ButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: ButtonProps<T>,\n) => React.ReactElement | null;\n\nexport const Button: ButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n {\n as,\n children,\n variant,\n size = 'medium',\n loading,\n className,\n disabled = false,\n width = 'auto',\n 'aria-label': ariaLabel,\n ...rest\n }: ButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = as || defaultElement;\n const childrenArray = React.Children.toArray(children);\n const hasLeadingIcon =\n childrenArray.length > 1 && typeof childrenArray[0] !== 'string';\n const hasTrailingIcon =\n childrenArray.length > 1 &&\n typeof childrenArray[childrenArray.length - 1] !== 'string';\n\n const ariaLabelWhenLoading = childrenArray\n .filter(child => typeof child === 'string')\n .join(' ');\n\n const ariaLabelValue = () => {\n if (ariaLabel) return ariaLabel;\n if (loading) return ariaLabelWhenLoading;\n return undefined;\n };\n\n return (\n <Element\n className={cx(\n 'eds-button',\n {\n [`eds-button--variant-${variant}`]: variant,\n [`eds-button--size-${size}`]: size,\n 'eds-button--width-fluid': width === 'fluid',\n 'eds-button--loading': loading,\n 'eds-button--leading-icon': hasLeadingIcon,\n 'eds-button--trailing-icon': hasTrailingIcon,\n },\n className,\n )}\n ref={ref}\n aria-busy={loading}\n disabled={disabled}\n aria-disabled={disabled}\n aria-label={ariaLabelValue()}\n {...rest}\n >\n {loading ? (\n <LoadingDots className=\"eds-button__loading-dots\" />\n ) : (\n children\n )}\n </Element>\n );\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type PrimaryButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type PrimaryButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, PrimaryButtonBaseProps>;\n\nexport type PrimaryButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: PrimaryButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const PrimaryButton: PrimaryButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: PrimaryButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"primary\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type SecondaryButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type SecondaryButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SecondaryButtonBaseProps>;\n\nexport type SecondaryButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SecondaryButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SecondaryButton: SecondaryButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SecondaryButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"secondary\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type SuccessButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type SuccessButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SuccessButtonBaseProps>;\n\nexport type SuccessButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SuccessButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SuccessButton: SuccessButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SuccessButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"success\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type NegativeButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type NegativeButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, NegativeButtonBaseProps>;\n\nexport type NegativeButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: NegativeButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const NegativeButton: NegativeButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: NegativeButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"negative\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type TertiaryButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type TertiaryButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, TertiaryButtonBaseProps>;\n\nexport type TertiaryButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: TertiaryButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const TertiaryButton: TertiaryButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: TertiaryButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"tertiary\" />;\n },\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport './ButtonGroup.scss';\n\nexport type ButtonGroupProps = {\n /** To eller flere Button-komponenter */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** HTML-elementet eller React-komponenten som lages\n * @default \"div\"\n */\n as?: string | React.ElementType;\n [key: string]: any;\n};\n\nexport const ButtonGroup: React.FC<ButtonGroupProps> = ({\n as: Element = 'div',\n className,\n ...rest\n}) => {\n return (\n <Element className={classNames('eds-button-group', className)} {...rest} />\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport './FloatingButton.scss';\n\nexport type FloatingButtonProps = {\n /** Beskrivende tekst for skjermlesere */\n 'aria-label': string;\n /** Ikon eller ikon-og-tekst */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Callback når knappen klikkes */\n onClick: (e: React.MouseEvent<HTMLButtonElement>) => void;\n /** Størrelse på knappen\n * @default \"medium\"\n */\n size?: 'medium' | 'small';\n [key: string]: any;\n} & React.ButtonHTMLAttributes<HTMLButtonElement>;\n\nexport const FloatingButton: React.FC<FloatingButtonProps> = ({\n className,\n children,\n size = 'medium',\n ...rest\n}) => {\n return (\n <button\n className={classNames(\n 'eds-floating-button',\n { 'eds-floating-button--extended': React.Children.count(children) > 1 },\n { 'eds-floating-button--small': size === 'small' },\n className,\n )}\n type=\"button\"\n {...rest}\n >\n {wrapStringsInSpans(children)}\n </button>\n );\n};\n\nconst wrapStringsInSpans = (children: React.ReactNode) =>\n React.Children.map(children, child =>\n typeof child === 'string' ? <span>{child}</span> : child,\n );\n","import * as React from 'react';\nimport classNames from 'classnames';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\nimport { LoadingDots } from '@entur/loader';\nimport './BaseSquareButton.scss';\n\nexport type BaseSquareButtonBaseProps = {\n /** Tekst og ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** En type knapp */\n variant: 'success' | 'secondary' | 'tertiary';\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type BaseSquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, BaseSquareButtonBaseProps>;\n\nexport type BaseSquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: BaseSquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const BaseSquareButton: BaseSquareButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n {\n children,\n className,\n variant,\n disabled = false,\n loading = false,\n as,\n ...rest\n }: BaseSquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = as || defaultElement;\n return (\n <Element\n className={classNames(\n 'eds-square-button',\n { 'eds-square-button--success': variant === 'success' },\n { 'eds-square-button--secondary': variant === 'secondary' },\n { 'eds-square-button--tertiary': variant === 'tertiary' },\n { 'eds-square-button--loading': loading },\n className,\n )}\n aria-busy={loading}\n disabled={disabled}\n aria-disabled={disabled}\n ref={ref}\n {...rest}\n >\n {React.Children.map(children, child => {\n if (typeof child === 'string') {\n return <span className=\"eds-square-button__label\">{child}</span>;\n }\n return (\n <span className=\"eds-square-button__icon\">\n {loading ? (\n <LoadingDots className=\"eds-square-button__loading-dots\" />\n ) : (\n child\n )}\n </span>\n );\n })}\n </Element>\n );\n },\n);\n","import React from 'react';\nimport { BaseSquareButton } from './BaseSquareButton';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\ntype SecondarySquareButtonBaseProps = {\n /** Tekst og ikon, ikon og tekst, eller bare ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type SecondarySquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SecondarySquareButtonBaseProps>;\n\nexport type SecondarySquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SecondarySquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SecondarySquareButton: SecondarySquareButtonComponent =\n React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SecondarySquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return (\n // @ts-expect-error type error due to props not being BaseButtonProps\n <BaseSquareButton\n as={Element}\n ref={ref}\n {...props}\n variant=\"secondary\"\n />\n );\n },\n );\n","import React from 'react';\nimport { BaseSquareButton } from './BaseSquareButton';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\ntype SuccessSquareButtonBaseProps = {\n /** Tekst og ikon, ikon og tekst, eller bare ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type SuccessSquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SuccessSquareButtonBaseProps>;\n\nexport type SuccessSquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SuccessSquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SuccessSquareButton: SuccessSquareButtonComponent =\n React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SuccessSquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return (\n // @ts-expect-error type error due to props not being BaseButtonProps\n <BaseSquareButton as={Element} ref={ref} {...props} variant=\"success\" />\n );\n },\n );\n","import React from 'react';\nimport { BaseSquareButton } from './BaseSquareButton';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\ntype TertiarySquareButtonBaseProps = {\n /** Tekst og ikon, ikon og tekst, eller bare ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type TertiarySquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, TertiarySquareButtonBaseProps>;\n\nexport type TertiarySquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: TertiarySquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const TertiarySquareButton: TertiarySquareButtonComponent =\n React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: TertiarySquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return (\n // @ts-expect-error type error due to props not being BaseButtonProps\n <BaseSquareButton\n as={Element}\n ref={ref}\n {...props}\n variant=\"tertiary\"\n />\n );\n },\n );\n","import React from 'react';\nimport classNames from 'classnames';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\nimport { LoadingDots } from '@entur/loader';\nimport './IconButton.scss';\n\nexport type IconButtonBaseProps = {\n /** Ikonet som du vil ha inne i knappen */\n children: React.ReactNode;\n /** Tekst som forklarer knappens handling. MÅ være satt hvis du ikke har en forklarende tooltip på knappen */\n 'aria-label'?: string;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** HTML-elementet eller React-komponenten som lager knappen\n * @default 'button'\n */\n as?: React.ElementType;\n /**Størrelsen på knappen\n * @default \"medium\"\n */\n size?: 'small' | 'medium';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nconst defaultElement = 'button';\n\nexport type IconButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, IconButtonBaseProps>;\n\nexport type IconButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: IconButtonProps<T>,\n) => React.ReactElement | null;\n\nexport const IconButton: IconButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n {\n children,\n className,\n disabled = false,\n size,\n as,\n loading,\n ...rest\n }: IconButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = as || defaultElement;\n\n const iconButtonElement = (\n <Element\n className={classNames(\n 'eds-icon-button',\n className,\n {\n 'eds-icon-button--disabled': disabled,\n },\n `eds-icon-button--size-${size}`,\n )}\n disabled={disabled}\n aria-disabled={disabled}\n aria-busy={loading}\n ref={ref}\n {...rest}\n >\n {loading ? <LoadingDots /> : children}\n </Element>\n );\n\n if (disabled) {\n return (\n <div className=\"eds-icon-button--disabled__wrapper\">\n {iconButtonElement}\n </div>\n );\n }\n return <>{iconButtonElement}</>;\n },\n);\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('button');\n\nexport * from './Button';\nexport * from './PrimaryButton';\nexport * from './SecondaryButton';\nexport * from './SuccessButton';\nexport * from './NegativeButton';\nexport * from './TertiaryButton';\nexport * from './ButtonGroup';\nexport * from './FloatingButton';\nexport * from './SecondarySquareButton';\nexport * from './SuccessSquareButton';\nexport * from './TertiarySquareButton';\nexport * from './IconButton';\n"],"names":["defaultElement","Button","React","forwardRef","ref","as","children","variant","size","loading","className","disabled","width","ariaLabel","rest","Element","childrenArray","Children","toArray","hasLeadingIcon","length","hasTrailingIcon","ariaLabelWhenLoading","filter","child","join","ariaLabelValue","undefined","cx","LoadingDots","PrimaryButton","props","SecondaryButton","SuccessButton","NegativeButton","TertiaryButton","ButtonGroup","classNames","FloatingButton","count","type","wrapStringsInSpans","map","BaseSquareButton","SecondarySquareButton","SuccessSquareButton","TertiarySquareButton","IconButton","iconButtonElement","warnAboutMissingStyles"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmCA,IAAMA,gBAAc,GAAG,QAAvB;IAWaC,MAAM,gBAAoBC,gBAAK,CAACC,UAAN,CACrC,gBAaEC,GAbF;;;MAEIC,UAAAA;MACAC,gBAAAA;MACAC,eAAAA;uBACAC;MAAAA,8BAAO;MACPC,eAAAA;MACAC,iBAAAA;2BACAC;MAAAA,sCAAW;wBACXC;MAAAA,gCAAQ;MACMC,iBAAd;MACGC;;AAIL,MAAMC,OAAO,GAAsBV,EAAE,IAAIL,gBAAzC;AACA,MAAMgB,aAAa,GAAGd,gBAAK,CAACe,QAAN,CAAeC,OAAf,CAAuBZ,QAAvB,CAAtB;AACA,MAAMa,cAAc,GAClBH,aAAa,CAACI,MAAd,GAAuB,CAAvB,IAA4B,OAAOJ,aAAa,CAAC,CAAD,CAApB,KAA4B,QAD1D;AAEA,MAAMK,eAAe,GACnBL,aAAa,CAACI,MAAd,GAAuB,CAAvB,IACA,OAAOJ,aAAa,CAACA,aAAa,CAACI,MAAd,GAAuB,CAAxB,CAApB,KAAmD,QAFrD;AAIA,MAAME,oBAAoB,GAAGN,aAAa,CACvCO,MAD0B,CACnB,UAAAC,KAAK;AAAA,WAAI,OAAOA,KAAP,KAAiB,QAArB;AAAA,GADc,EAE1BC,IAF0B,CAErB,GAFqB,CAA7B;;AAIA,MAAMC,cAAc,GAAG,SAAjBA,cAAiB;AACrB,QAAIb,SAAJ,EAAe,OAAOA,SAAP;AACf,QAAIJ,OAAJ,EAAa,OAAOa,oBAAP;AACb,WAAOK,SAAP;AACD,GAJD;;AAMA,SACEzB,8BAAA,CAACa,OAAD;AACEL,IAAAA,SAAS,EAAEkB,8BAAE,CACX,YADW,0CAGerB,OAHf,IAG2BA,OAH3B,4BAIYC,IAJZ,IAIqBA,IAJrB,MAKT,yBALS,IAKkBI,KAAK,KAAK,OAL5B,MAMT,qBANS,IAMcH,OANd,MAOT,0BAPS,IAOmBU,cAPnB,MAQT,2BARS,IAQoBE,eARpB,QAUXX,SAVW,CADf;AAaEN,IAAAA,GAAG,EAAEA,GAbP;iBAcaK,OAdb;AAeEE,IAAAA,QAAQ,EAAEA,QAfZ;qBAgBiBA,QAhBjB;kBAiBce,cAAc;AAjB5B,KAkBMZ,IAlBN,GAoBGL,OAAO,GACNP,8BAAA,CAAC2B,kBAAD;AAAanB,IAAAA,SAAS,EAAC;GAAvB,CADM,GAGNJ,QAvBJ,CADF;AA4BD,CA9DoC;;ACVvC,IAAMN,gBAAc,GAAG,QAAvB;IAEa8B,aAAa,gBAA2B5B,yBAAK,CAACC,UAAN,CACnD,UACE4B,KADF,EAEE3B,GAFF;AAIE,MAAMW,OAAO,GAAsBgB,KAAK,CAAC1B,EAAN,IAAYL,gBAA/C;;AAEA,SAAOE,uCAAA,CAACD,MAAD;AAAQI,IAAAA,EAAE,EAAEU;AAAZ,KAAyBgB,KAAzB;AAAgC3B,IAAAA,GAAG,EAAEA,GAArC;AAA0CG,IAAAA,OAAO,EAAC;AAAlD,KAAP;AACD,CARkD;;ACFrD,IAAMP,gBAAc,GAAG,QAAvB;IAEagC,eAAe,gBAA6B9B,yBAAK,CAACC,UAAN,CACvD,UACE4B,KADF,EAEE3B,GAFF;AAIE,MAAMW,OAAO,GAAsBgB,KAAK,CAAC1B,EAAN,IAAYL,gBAA/C;;AAEA,SAAOE,uCAAA,CAACD,MAAD;AAAQI,IAAAA,EAAE,EAAEU;AAAZ,KAAyBgB,KAAzB;AAAgC3B,IAAAA,GAAG,EAAEA,GAArC;AAA0CG,IAAAA,OAAO,EAAC;AAAlD,KAAP;AACD,CARsD;;ACFzD,IAAMP,gBAAc,GAAG,QAAvB;IAEaiC,aAAa,gBAA2B/B,yBAAK,CAACC,UAAN,CACnD,UACE4B,KADF,EAEE3B,GAFF;AAIE,MAAMW,OAAO,GAAsBgB,KAAK,CAAC1B,EAAN,IAAYL,gBAA/C;;AAEA,SAAOE,uCAAA,CAACD,MAAD;AAAQI,IAAAA,EAAE,EAAEU;AAAZ,KAAyBgB,KAAzB;AAAgC3B,IAAAA,GAAG,EAAEA,GAArC;AAA0CG,IAAAA,OAAO,EAAC;AAAlD,KAAP;AACD,CARkD;;ACFrD,IAAMP,gBAAc,GAAG,QAAvB;IAEakC,cAAc,gBAA4BhC,yBAAK,CAACC,UAAN,CACrD,UACE4B,KADF,EAEE3B,GAFF;AAIE,MAAMW,OAAO,GAAsBgB,KAAK,CAAC1B,EAAN,IAAYL,gBAA/C;;AAEA,SAAOE,uCAAA,CAACD,MAAD;AAAQI,IAAAA,EAAE,EAAEU;AAAZ,KAAyBgB,KAAzB;AAAgC3B,IAAAA,GAAG,EAAEA,GAArC;AAA0CG,IAAAA,OAAO,EAAC;AAAlD,KAAP;AACD,CARoD;;ACFvD,IAAMP,gBAAc,GAAG,QAAvB;IAEamC,cAAc,gBAA4BjC,yBAAK,CAACC,UAAN,CACrD,UACE4B,KADF,EAEE3B,GAFF;AAIE,MAAMW,OAAO,GAAsBgB,KAAK,CAAC1B,EAAN,IAAYL,gBAA/C;;AAEA,SAAOE,uCAAA,CAACD,MAAD;AAAQI,IAAAA,EAAE,EAAEU;AAAZ,KAAyBgB,KAAzB;AAAgC3B,IAAAA,GAAG,EAAEA,GAArC;AAA0CG,IAAAA,OAAO,EAAC;AAAlD,KAAP;AACD,CARoD;;;ICtB1C6B,WAAW,GAA+B,SAA1CA,WAA0C;qBACrD/B;MAAIU,+BAAU;MACdL,iBAAAA;MACGI;;AAEH,SACEZ,uCAAA,CAACa,OAAD;AAASL,IAAAA,SAAS,EAAE2B,8BAAU,CAAC,kBAAD,EAAqB3B,SAArB;AAA9B,KAAmEI,IAAnE,EADF;AAGD;;;ICJYwB,cAAc,GAAkC,SAAhDA,cAAgD;MAC3D5B,iBAAAA;MACAJ,gBAAAA;uBACAE;MAAAA,8BAAO;MACJM;;AAEH,SACEZ,uCAAA,SAAA;AACEQ,IAAAA,SAAS,EAAE2B,8BAAU,CACnB,qBADmB,EAEnB;AAAE,uCAAiCnC,yBAAK,CAACe,QAAN,CAAesB,KAAf,CAAqBjC,QAArB,IAAiC;AAApE,KAFmB,EAGnB;AAAE,oCAA8BE,IAAI,KAAK;AAAzC,KAHmB,EAInBE,SAJmB,CADvB;AAOE8B,IAAAA,IAAI,EAAC;AAPP,KAQM1B,IARN,GAUG2B,kBAAkB,CAACnC,QAAD,CAVrB,CADF;AAcD;;AAED,IAAMmC,kBAAkB,GAAG,SAArBA,kBAAqB,CAACnC,QAAD;AAAA,SACzBJ,yBAAK,CAACe,QAAN,CAAeyB,GAAf,CAAmBpC,QAAnB,EAA6B,UAAAkB,KAAK;AAAA,WAChC,OAAOA,KAAP,KAAiB,QAAjB,GAA4BtB,uCAAA,OAAA,MAAA,EAAOsB,KAAP,CAA5B,GAAmDA,KADnB;AAAA,GAAlC,CADyB;AAAA,CAA3B;;;ACVA,IAAMxB,gBAAc,GAAG,QAAvB;AAEO,IAAM2C,gBAAgB,gBAA8BzC,gBAAK,CAACC,UAAN,CACzD,gBAUEC,GAVF;MAEIE,gBAAAA;MACAI,iBAAAA;MACAH,eAAAA;2BACAI;MAAAA,sCAAW;0BACXF;MAAAA,oCAAU;MACVJ,UAAAA;MACGS;;AAIL,MAAMC,OAAO,GAAsBV,EAAE,IAAIL,gBAAzC;AACA,SACEE,8BAAA,CAACa,OAAD;AACEL,IAAAA,SAAS,EAAE2B,8BAAU,CACnB,mBADmB,EAEnB;AAAE,oCAA8B9B,OAAO,KAAK;AAA5C,KAFmB,EAGnB;AAAE,sCAAgCA,OAAO,KAAK;AAA9C,KAHmB,EAInB;AAAE,qCAA+BA,OAAO,KAAK;AAA7C,KAJmB,EAKnB;AAAE,oCAA8BE;AAAhC,KALmB,EAMnBC,SANmB,CADvB;iBASaD,OATb;AAUEE,IAAAA,QAAQ,EAAEA,QAVZ;qBAWiBA,QAXjB;AAYEP,IAAAA,GAAG,EAAEA;AAZP,KAaMU,IAbN,GAeGZ,gBAAK,CAACe,QAAN,CAAeyB,GAAf,CAAmBpC,QAAnB,EAA6B,UAAAkB,KAAK;AACjC,QAAI,OAAOA,KAAP,KAAiB,QAArB,EAA+B;AAC7B,aAAOtB,8BAAA,OAAA;AAAMQ,QAAAA,SAAS,EAAC;OAAhB,EAA4Cc,KAA5C,CAAP;AACD;;AACD,WACEtB,8BAAA,OAAA;AAAMQ,MAAAA,SAAS,EAAC;KAAhB,EACGD,OAAO,GACNP,8BAAA,CAAC2B,kBAAD;AAAanB,MAAAA,SAAS,EAAC;KAAvB,CADM,GAGNc,KAJJ,CADF;AASD,GAbA,CAfH,CADF;AAgCD,CA9CwD,CAApD;;ACNP,IAAMxB,gBAAc,GAAG,QAAvB;IAEa4C,qBAAqB,gBAChC1C,yBAAK,CAACC,UAAN,CACE,UACE4B,KADF,EAEE3B,GAFF;AAIE,MAAMW,OAAO,GAAsBgB,KAAK,CAAC1B,EAAN,IAAYL,gBAA/C;AACA;AAEEE,IAAAA,uCAAA,CAACyC,gBAAD;AACEtC,MAAAA,EAAE,EAAEU,OADN;AAEEX,MAAAA,GAAG,EAAEA;AAFP,OAGM2B,KAHN;AAIExB,MAAAA,OAAO,EAAC;AAJV;AAFF;AASD,CAfH;;ACHF,IAAMP,gBAAc,GAAG,QAAvB;IAEa6C,mBAAmB,gBAC9B3C,yBAAK,CAACC,UAAN,CACE,UACE4B,KADF,EAEE3B,GAFF;AAIE,MAAMW,OAAO,GAAsBgB,KAAK,CAAC1B,EAAN,IAAYL,gBAA/C;AACA;AAEEE,IAAAA,uCAAA,CAACyC,gBAAD;AAAkBtC,MAAAA,EAAE,EAAEU,OAAtB;AAA+BX,MAAAA,GAAG,EAAEA;AAApC,OAA6C2B,KAA7C;AAAoDxB,MAAAA,OAAO,EAAC;AAA5D;AAFF;AAID,CAVH;;ACHF,IAAMP,gBAAc,GAAG,QAAvB;IAEa8C,oBAAoB,gBAC/B5C,yBAAK,CAACC,UAAN,CACE,UACE4B,KADF,EAEE3B,GAFF;AAIE,MAAMW,OAAO,GAAsBgB,KAAK,CAAC1B,EAAN,IAAYL,gBAA/C;AACA;AAEEE,IAAAA,uCAAA,CAACyC,gBAAD;AACEtC,MAAAA,EAAE,EAAEU,OADN;AAEEX,MAAAA,GAAG,EAAEA;AAFP,OAGM2B,KAHN;AAIExB,MAAAA,OAAO,EAAC;AAJV;AAFF;AASD,CAfH;;;ACAF,IAAMP,cAAc,GAAG,QAAvB;IAWa+C,UAAU,gBAAwB7C,yBAAK,CAACC,UAAN,CAC7C,gBAUEC,GAVF;MAEIE,gBAAAA;MACAI,iBAAAA;2BACAC;MAAAA,sCAAW;MACXH,YAAAA;MACAH,UAAAA;MACAI,eAAAA;MACGK;;AAIL,MAAMC,OAAO,GAAsBV,EAAE,IAAIL,cAAzC;AAEA,MAAMgD,iBAAiB,GACrB9C,uCAAA,CAACa,OAAD;AACEL,IAAAA,SAAS,EAAE2B,8BAAU,CACnB,iBADmB,EAEnB3B,SAFmB,EAGnB;AACE,mCAA6BC;AAD/B,KAHmB,6BAMMH,IANN,CADvB;AASEG,IAAAA,QAAQ,EAAEA,QATZ;qBAUiBA,QAVjB;iBAWaF,OAXb;AAYEL,IAAAA,GAAG,EAAEA;AAZP,KAaMU,IAbN,GAeGL,OAAO,GAAGP,uCAAA,CAAC2B,kBAAD,MAAA,CAAH,GAAqBvB,QAf/B,CADF;;AAoBA,MAAIK,QAAJ,EAAc;AACZ,WACET,uCAAA,MAAA;AAAKQ,MAAAA,SAAS,EAAC;KAAf,EACGsC,iBADH,CADF;AAKD;;AACD,SAAO9C,uCAAA,mCAAA,MAAA,EAAG8C,iBAAH,CAAP;AACD,CA3C4C;;ACvC/CC,4BAAsB,CAAC,QAAD,CAAtB;;;;;;;;;;;;;;;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@entur/utils"),t=require("react"),a=require("classnames"),r=require("@entur/loader");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function s(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(a){if("default"!==a){var r=Object.getOwnPropertyDescriptor(e,a);Object.defineProperty(t,a,r.get?r:{enumerable:!0,get:function(){return e[a]}})}})),t.default=e,t}var u=s(t),o=n(t),i=n(a);function l(){return l=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var r in a)Object.prototype.hasOwnProperty.call(a,r)&&(e[r]=a[r])}return e},l.apply(this,arguments)}function d(e,t){if(null==e)return{};var a,r,n={},s=Object.keys(e);for(r=0;r<s.length;r++)t.indexOf(a=s[r])>=0||(n[a]=e[a]);return n}var c=["as","variant","size","loading","className","
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@entur/utils"),t=require("react"),a=require("classnames"),r=require("@entur/loader");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function s(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(a){if("default"!==a){var r=Object.getOwnPropertyDescriptor(e,a);Object.defineProperty(t,a,r.get?r:{enumerable:!0,get:function(){return e[a]}})}})),t.default=e,t}var u=s(t),o=n(t),i=n(a);function l(){return l=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var r in a)Object.prototype.hasOwnProperty.call(a,r)&&(e[r]=a[r])}return e},l.apply(this,arguments)}function d(e,t){if(null==e)return{};var a,r,n={},s=Object.keys(e);for(r=0;r<s.length;r++)t.indexOf(a=s[r])>=0||(n[a]=e[a]);return n}var c=["as","children","variant","size","loading","className","disabled","width","aria-label"],f=u.forwardRef((function(e,t){var a,n=e.as,s=e.children,o=e.variant,f=e.size,b=void 0===f?"medium":f,m=e.loading,v=e.className,p=e.disabled,g=void 0!==p&&p,y=e.width,h=void 0===y?"auto":y,E=e["aria-label"],N=d(e,c),w=n||"button",q=u.Children.toArray(s),x=q.length>1&&"string"!=typeof q[0],_=q.length>1&&"string"!=typeof q[q.length-1],B=q.filter((function(e){return"string"==typeof e})).join(" ");return u.createElement(w,l({className:i.default("eds-button",(a={},a["eds-button--variant-"+o]=o,a["eds-button--size-"+b]=b,a["eds-button--width-fluid"]="fluid"===h,a["eds-button--loading"]=m,a["eds-button--leading-icon"]=x,a["eds-button--trailing-icon"]=_,a),v),ref:t,"aria-busy":m,disabled:g,"aria-disabled":g,"aria-label":E||(m?B:void 0)},N),m?u.createElement(r.LoadingDots,{className:"eds-button__loading-dots"}):s)})),b=o.default.forwardRef((function(e,t){return o.default.createElement(f,l({as:e.as||"button"},e,{ref:t,variant:"primary"}))})),m=o.default.forwardRef((function(e,t){return o.default.createElement(f,l({as:e.as||"button"},e,{ref:t,variant:"secondary"}))})),v=o.default.forwardRef((function(e,t){return o.default.createElement(f,l({as:e.as||"button"},e,{ref:t,variant:"success"}))})),p=o.default.forwardRef((function(e,t){return o.default.createElement(f,l({as:e.as||"button"},e,{ref:t,variant:"negative"}))})),g=o.default.forwardRef((function(e,t){return o.default.createElement(f,l({as:e.as||"button"},e,{ref:t,variant:"tertiary"}))})),y=["as","className"],h=["className","children","size"],E=["children","className","variant","disabled","loading","as"],N=u.forwardRef((function(e,t){var a=e.children,n=e.className,s=e.variant,o=e.disabled,c=void 0!==o&&o,f=e.loading,b=void 0!==f&&f,m=e.as,v=d(e,E);return u.createElement(m||"button",l({className:i.default("eds-square-button",{"eds-square-button--success":"success"===s},{"eds-square-button--secondary":"secondary"===s},{"eds-square-button--tertiary":"tertiary"===s},{"eds-square-button--loading":b},n),"aria-busy":b,disabled:c,"aria-disabled":c,ref:t},v),u.Children.map(a,(function(e){return"string"==typeof e?u.createElement("span",{className:"eds-square-button__label"},e):u.createElement("span",{className:"eds-square-button__icon"},b?u.createElement(r.LoadingDots,{className:"eds-square-button__loading-dots"}):e)})))})),w=o.default.forwardRef((function(e,t){return o.default.createElement(N,l({as:e.as||"button",ref:t},e,{variant:"secondary"}))})),q=o.default.forwardRef((function(e,t){return o.default.createElement(N,l({as:e.as||"button",ref:t},e,{variant:"success"}))})),x=o.default.forwardRef((function(e,t){return o.default.createElement(N,l({as:e.as||"button",ref:t},e,{variant:"tertiary"}))})),_=["children","className","disabled","size","as","loading"],B=o.default.forwardRef((function(e,t){var a=e.children,n=e.className,s=e.disabled,u=void 0!==s&&s,c=e.size,f=e.as,b=e.loading,m=d(e,_),v=o.default.createElement(f||"button",l({className:i.default("eds-icon-button",n,{"eds-icon-button--disabled":u},"eds-icon-button--size-"+c),disabled:u,"aria-disabled":u,"aria-busy":b,ref:t},m),b?o.default.createElement(r.LoadingDots,null):a);return u?o.default.createElement("div",{className:"eds-icon-button--disabled__wrapper"},v):o.default.createElement(o.default.Fragment,null,v)}));e.warnAboutMissingStyles("button"),exports.Button=f,exports.ButtonGroup=function(e){var t=e.as,a=void 0===t?"div":t,r=e.className,n=d(e,y);return o.default.createElement(a,l({className:i.default("eds-button-group",r)},n))},exports.FloatingButton=function(e){var t=e.className,a=e.children,r=e.size,n=void 0===r?"medium":r,s=d(e,h);return o.default.createElement("button",l({className:i.default("eds-floating-button",{"eds-floating-button--extended":o.default.Children.count(a)>1},{"eds-floating-button--small":"small"===n},t),type:"button"},s),function(e){return o.default.Children.map(e,(function(e){return"string"==typeof e?o.default.createElement("span",null,e):e}))}(a))},exports.IconButton=B,exports.NegativeButton=p,exports.PrimaryButton=b,exports.SecondaryButton=m,exports.SecondarySquareButton=w,exports.SuccessButton=v,exports.SuccessSquareButton=q,exports.TertiaryButton=g,exports.TertiarySquareButton=x;
|
|
2
2
|
//# sourceMappingURL=button.cjs.production.min.js.map
|