@entur/button 2.7.1 → 2.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,27 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [2.8.0](https://bitbucket.org/enturas/design-system/compare/@entur/button@2.7.4...@entur/button@2.8.0) (2022-02-09)
7
+
8
+ ### Features
9
+
10
+ - **square button:** add tertiary square button style ([fe083e3](https://bitbucket.org/enturas/design-system/commits/fe083e3603cb3e037456f9485d5c71d4364d20ee))
11
+
12
+ ## [2.7.4](https://bitbucket.org/enturas/design-system/compare/@entur/button@2.7.3...@entur/button@2.7.4) (2021-11-17)
13
+
14
+ **Note:** Version bump only for package @entur/button
15
+
16
+ ## [2.7.3](https://bitbucket.org/enturas/design-system/compare/@entur/button@2.7.2...@entur/button@2.7.3) (2021-09-23)
17
+
18
+ **Note:** Version bump only for package @entur/button
19
+
20
+ ## [2.7.2](https://bitbucket.org/enturas/design-system/compare/@entur/button@2.7.1...@entur/button@2.7.2) (2021-09-13)
21
+
22
+ ### Bug Fixes
23
+
24
+ - **iconbutton:** fix loading dots in contrast ([f0e4a46](https://bitbucket.org/enturas/design-system/commits/f0e4a462ddb1bbd7f022b7528feea68627fc8da9))
25
+ - **tertiary button:** reduce min width of button ([a241d93](https://bitbucket.org/enturas/design-system/commits/a241d9308488eb8a9a1d95ff400c2afe09e11143))
26
+
6
27
  ## [2.7.1](https://bitbucket.org/enturas/design-system/compare/@entur/button@2.7.0...@entur/button@2.7.1) (2021-09-07)
7
28
 
8
29
  ### Bug Fixes
@@ -7,7 +7,7 @@ export declare type BaseSquareButtonBaseProps = {
7
7
  /** Ekstra klassenavn */
8
8
  className?: string;
9
9
  /** En type knapp */
10
- variant: 'success' | 'secondary';
10
+ variant: 'success' | 'secondary' | 'tertiary';
11
11
  /** Deaktivering av knappen
12
12
  * @default false
13
13
  */
@@ -0,0 +1,20 @@
1
+ import React from 'react';
2
+ import { PolymorphicForwardRefExoticComponent, PolymorphicPropsWithRef } from '@entur/utils';
3
+ export declare type TertiarySquareButtonBaseProps = {
4
+ /** Tekst og ikon, ikon og tekst, eller bare ikon */
5
+ children: React.ReactNode;
6
+ /** Ekstra klassenavn */
7
+ className?: string;
8
+ /** Deaktivering av knappen
9
+ * @default false
10
+ */
11
+ disabled?: boolean;
12
+ /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe
13
+ * @default false
14
+ */
15
+ loading?: boolean;
16
+ };
17
+ export declare type TertiarySquareButtonProps<E extends React.ElementType = typeof defaultElement> = PolymorphicPropsWithRef<TertiarySquareButtonBaseProps, E>;
18
+ declare const defaultElement = "button";
19
+ export declare const TertiarySquareButton: PolymorphicForwardRefExoticComponent<TertiarySquareButtonBaseProps, typeof defaultElement>;
20
+ export {};
@@ -2,14 +2,53 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
6
-
7
5
  var utils = require('@entur/utils');
8
6
  var React = require('react');
9
- var React__default = _interopDefault(React);
10
- var classNames = _interopDefault(require('classnames'));
7
+ var classNames = require('classnames');
11
8
  var loader = require('@entur/loader');
12
9
 
10
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
11
+
12
+ function _interopNamespace(e) {
13
+ if (e && e.__esModule) return e;
14
+ var n = Object.create(null);
15
+ if (e) {
16
+ Object.keys(e).forEach(function (k) {
17
+ if (k !== 'default') {
18
+ var d = Object.getOwnPropertyDescriptor(e, k);
19
+ Object.defineProperty(n, k, d.get ? d : {
20
+ enumerable: true,
21
+ get: function () { return e[k]; }
22
+ });
23
+ }
24
+ });
25
+ }
26
+ n["default"] = e;
27
+ return n;
28
+ }
29
+
30
+ var React__namespace = /*#__PURE__*/_interopNamespace(React);
31
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
32
+ var classNames__default = /*#__PURE__*/_interopDefaultLegacy(classNames);
33
+
34
+ function _extends() {
35
+ _extends = Object.assign || function (target) {
36
+ for (var i = 1; i < arguments.length; i++) {
37
+ var source = arguments[i];
38
+
39
+ for (var key in source) {
40
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
41
+ target[key] = source[key];
42
+ }
43
+ }
44
+ }
45
+
46
+ return target;
47
+ };
48
+
49
+ return _extends.apply(this, arguments);
50
+ }
51
+
13
52
  function _objectWithoutPropertiesLoose(source, excluded) {
14
53
  if (source == null) return {};
15
54
  var target = {};
@@ -25,8 +64,9 @@ function _objectWithoutPropertiesLoose(source, excluded) {
25
64
  return target;
26
65
  }
27
66
 
28
- var defaultElement = 'button';
29
- var Button = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
67
+ var _excluded$4 = ["as", "variant", "size", "loading", "className", "children", "disabled", "width"];
68
+ var defaultElement$a = 'button';
69
+ var Button = /*#__PURE__*/React__namespace.forwardRef(function (_ref, ref) {
30
70
  var _cx;
31
71
 
32
72
  var as = _ref.as,
@@ -40,27 +80,27 @@ var Button = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
40
80
  disabled = _ref$disabled === void 0 ? false : _ref$disabled,
41
81
  _ref$width = _ref.width,
42
82
  width = _ref$width === void 0 ? 'auto' : _ref$width,
43
- rest = _objectWithoutPropertiesLoose(_ref, ["as", "variant", "size", "loading", "className", "children", "disabled", "width"]);
83
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded$4);
44
84
 
45
- var Element = as || defaultElement;
46
- var childrenArray = React.Children.toArray(children);
85
+ var Element = as || defaultElement$a;
86
+ var childrenArray = React__namespace.Children.toArray(children);
47
87
  var hasLeadingIcon = childrenArray.length > 1 && typeof childrenArray[0] !== 'string';
48
88
  var hasTrailingIcon = childrenArray.length > 1 && typeof childrenArray[childrenArray.length - 1] !== 'string';
49
- return React.createElement(Element, Object.assign({
50
- className: classNames('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),
89
+ return React__namespace.createElement(Element, _extends({
90
+ 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),
51
91
  ref: ref,
52
92
  "aria-busy": loading,
53
93
  disabled: disabled,
54
94
  "aria-disabled": disabled
55
- }, rest), loading ? React.createElement(loader.LoadingDots, {
95
+ }, rest), loading ? React__namespace.createElement(loader.LoadingDots, {
56
96
  className: "eds-button__loading-dots"
57
97
  }) : children);
58
98
  });
59
99
 
60
- var defaultElement$1 = 'button';
61
- var PrimaryButton = /*#__PURE__*/React__default.forwardRef(function (props, ref) {
62
- var Element = props.as || defaultElement$1;
63
- return React__default.createElement(Button, Object.assign({
100
+ var defaultElement$9 = 'button';
101
+ var PrimaryButton = /*#__PURE__*/React__default["default"].forwardRef(function (props, ref) {
102
+ var Element = props.as || defaultElement$9;
103
+ return React__default["default"].createElement(Button, _extends({
64
104
  as: Element
65
105
  }, props, {
66
106
  ref: ref,
@@ -68,10 +108,10 @@ var PrimaryButton = /*#__PURE__*/React__default.forwardRef(function (props, ref)
68
108
  }));
69
109
  });
70
110
 
71
- var defaultElement$2 = 'button';
72
- var SecondaryButton = /*#__PURE__*/React__default.forwardRef(function (props, ref) {
73
- var Element = props.as || defaultElement$2;
74
- return React__default.createElement(Button, Object.assign({
111
+ var defaultElement$8 = 'button';
112
+ var SecondaryButton = /*#__PURE__*/React__default["default"].forwardRef(function (props, ref) {
113
+ var Element = props.as || defaultElement$8;
114
+ return React__default["default"].createElement(Button, _extends({
75
115
  as: Element
76
116
  }, props, {
77
117
  ref: ref,
@@ -79,10 +119,10 @@ var SecondaryButton = /*#__PURE__*/React__default.forwardRef(function (props, re
79
119
  }));
80
120
  });
81
121
 
82
- var defaultElement$3 = 'button';
83
- var SuccessButton = /*#__PURE__*/React__default.forwardRef(function (props, ref) {
84
- var Element = props.as || defaultElement$3;
85
- return React__default.createElement(Button, Object.assign({
122
+ var defaultElement$7 = 'button';
123
+ var SuccessButton = /*#__PURE__*/React__default["default"].forwardRef(function (props, ref) {
124
+ var Element = props.as || defaultElement$7;
125
+ return React__default["default"].createElement(Button, _extends({
86
126
  as: Element
87
127
  }, props, {
88
128
  ref: ref,
@@ -90,10 +130,10 @@ var SuccessButton = /*#__PURE__*/React__default.forwardRef(function (props, ref)
90
130
  }));
91
131
  });
92
132
 
93
- var defaultElement$4 = 'button';
94
- var NegativeButton = /*#__PURE__*/React__default.forwardRef(function (props, ref) {
95
- var Element = props.as || defaultElement$4;
96
- return React__default.createElement(Button, Object.assign({
133
+ var defaultElement$6 = 'button';
134
+ var NegativeButton = /*#__PURE__*/React__default["default"].forwardRef(function (props, ref) {
135
+ var Element = props.as || defaultElement$6;
136
+ return React__default["default"].createElement(Button, _extends({
97
137
  as: Element
98
138
  }, props, {
99
139
  ref: ref,
@@ -102,9 +142,9 @@ var NegativeButton = /*#__PURE__*/React__default.forwardRef(function (props, ref
102
142
  });
103
143
 
104
144
  var defaultElement$5 = 'button';
105
- var TertiaryButton = /*#__PURE__*/React__default.forwardRef(function (props, ref) {
145
+ var TertiaryButton = /*#__PURE__*/React__default["default"].forwardRef(function (props, ref) {
106
146
  var Element = props.as || defaultElement$5;
107
- return React__default.createElement(Button, Object.assign({
147
+ return React__default["default"].createElement(Button, _extends({
108
148
  as: Element
109
149
  }, props, {
110
150
  ref: ref,
@@ -112,27 +152,29 @@ var TertiaryButton = /*#__PURE__*/React__default.forwardRef(function (props, ref
112
152
  }));
113
153
  });
114
154
 
155
+ var _excluded$3 = ["as", "className"];
115
156
  var ButtonGroup = function ButtonGroup(_ref) {
116
157
  var _ref$as = _ref.as,
117
158
  Element = _ref$as === void 0 ? 'div' : _ref$as,
118
159
  className = _ref.className,
119
- rest = _objectWithoutPropertiesLoose(_ref, ["as", "className"]);
160
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded$3);
120
161
 
121
- return React__default.createElement(Element, Object.assign({
122
- className: classNames('eds-button-group', className)
162
+ return React__default["default"].createElement(Element, _extends({
163
+ className: classNames__default["default"]('eds-button-group', className)
123
164
  }, rest));
124
165
  };
125
166
 
167
+ var _excluded$2 = ["className", "children", "size"];
126
168
  var FloatingButton = function FloatingButton(_ref) {
127
169
  var className = _ref.className,
128
170
  children = _ref.children,
129
171
  _ref$size = _ref.size,
130
172
  size = _ref$size === void 0 ? 'medium' : _ref$size,
131
- rest = _objectWithoutPropertiesLoose(_ref, ["className", "children", "size"]);
173
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded$2);
132
174
 
133
- return React__default.createElement("button", Object.assign({
134
- className: classNames('eds-floating-button', {
135
- 'eds-floating-button--extended': React__default.Children.count(children) > 1
175
+ return React__default["default"].createElement("button", _extends({
176
+ className: classNames__default["default"]('eds-floating-button', {
177
+ 'eds-floating-button--extended': React__default["default"].Children.count(children) > 1
136
178
  }, {
137
179
  'eds-floating-button--small': size === 'small'
138
180
  }, className),
@@ -141,13 +183,14 @@ var FloatingButton = function FloatingButton(_ref) {
141
183
  };
142
184
 
143
185
  var wrapStringsInSpans = function wrapStringsInSpans(children) {
144
- return React__default.Children.map(children, function (child) {
145
- return typeof child === 'string' ? React__default.createElement("span", null, child) : child;
186
+ return React__default["default"].Children.map(children, function (child) {
187
+ return typeof child === 'string' ? React__default["default"].createElement("span", null, child) : child;
146
188
  });
147
189
  };
148
190
 
149
- var defaultElement$6 = 'button';
150
- var BaseSquareButton = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
191
+ var _excluded$1 = ["children", "className", "variant", "disabled", "loading", "as"];
192
+ var defaultElement$4 = 'button';
193
+ var BaseSquareButton = /*#__PURE__*/React__namespace.forwardRef(function (_ref, ref) {
151
194
  var children = _ref.children,
152
195
  className = _ref.className,
153
196
  variant = _ref.variant,
@@ -156,14 +199,16 @@ var BaseSquareButton = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
156
199
  _ref$loading = _ref.loading,
157
200
  loading = _ref$loading === void 0 ? false : _ref$loading,
158
201
  as = _ref.as,
159
- rest = _objectWithoutPropertiesLoose(_ref, ["children", "className", "variant", "disabled", "loading", "as"]);
202
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded$1);
160
203
 
161
- var Element = as || defaultElement$6;
162
- return React.createElement(Element, Object.assign({
163
- className: classNames('eds-square-button', {
204
+ var Element = as || defaultElement$4;
205
+ return React__namespace.createElement(Element, _extends({
206
+ className: classNames__default["default"]('eds-square-button', {
164
207
  'eds-square-button--success': variant === 'success'
165
208
  }, {
166
209
  'eds-square-button--secondary': variant === 'secondary'
210
+ }, {
211
+ 'eds-square-button--tertiary': variant === 'tertiary'
167
212
  }, {
168
213
  'eds-square-button--loading': loading
169
214
  }, className),
@@ -171,25 +216,25 @@ var BaseSquareButton = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
171
216
  disabled: disabled,
172
217
  "aria-disabled": disabled,
173
218
  ref: ref
174
- }, rest), React.Children.map(children, function (child) {
219
+ }, rest), React__namespace.Children.map(children, function (child) {
175
220
  if (typeof child === 'string') {
176
- return React.createElement("span", {
221
+ return React__namespace.createElement("span", {
177
222
  className: "eds-square-button__label"
178
223
  }, child);
179
224
  }
180
225
 
181
- return React.createElement("span", {
226
+ return React__namespace.createElement("span", {
182
227
  className: "eds-square-button__icon"
183
- }, loading ? React.createElement(loader.LoadingDots, {
228
+ }, loading ? React__namespace.createElement(loader.LoadingDots, {
184
229
  className: "eds-square-button__loading-dots"
185
230
  }) : child);
186
231
  }));
187
232
  });
188
233
 
189
- var defaultElement$7 = 'button';
190
- var SecondarySquareButton = /*#__PURE__*/React__default.forwardRef(function (props, ref) {
191
- var Element = props.as || defaultElement$7;
192
- return React__default.createElement(BaseSquareButton, Object.assign({
234
+ var defaultElement$3 = 'button';
235
+ var SecondarySquareButton = /*#__PURE__*/React__default["default"].forwardRef(function (props, ref) {
236
+ var Element = props.as || defaultElement$3;
237
+ return React__default["default"].createElement(BaseSquareButton, _extends({
193
238
  as: Element,
194
239
  ref: ref
195
240
  }, props, {
@@ -197,10 +242,10 @@ var SecondarySquareButton = /*#__PURE__*/React__default.forwardRef(function (pro
197
242
  }));
198
243
  });
199
244
 
200
- var defaultElement$8 = 'button';
201
- var SuccessSquareButton = /*#__PURE__*/React__default.forwardRef(function (props, ref) {
202
- var Element = props.as || defaultElement$8;
203
- return React__default.createElement(BaseSquareButton, Object.assign({
245
+ var defaultElement$2 = 'button';
246
+ var SuccessSquareButton = /*#__PURE__*/React__default["default"].forwardRef(function (props, ref) {
247
+ var Element = props.as || defaultElement$2;
248
+ return React__default["default"].createElement(BaseSquareButton, _extends({
204
249
  as: Element,
205
250
  ref: ref
206
251
  }, props, {
@@ -208,8 +253,20 @@ var SuccessSquareButton = /*#__PURE__*/React__default.forwardRef(function (props
208
253
  }));
209
254
  });
210
255
 
211
- var defaultElement$9 = 'button';
212
- var IconButton = /*#__PURE__*/React__default.forwardRef(function (_ref, ref) {
256
+ var defaultElement$1 = 'button';
257
+ var TertiarySquareButton = /*#__PURE__*/React__default["default"].forwardRef(function (props, ref) {
258
+ var Element = props.as || defaultElement$1;
259
+ return React__default["default"].createElement(BaseSquareButton, _extends({
260
+ as: Element,
261
+ ref: ref
262
+ }, props, {
263
+ variant: "tertiary"
264
+ }));
265
+ });
266
+
267
+ var _excluded = ["children", "className", "disabled", "size", "as", "loading"];
268
+ var defaultElement = 'button';
269
+ var IconButton = /*#__PURE__*/React__default["default"].forwardRef(function (_ref, ref) {
213
270
  var children = _ref.children,
214
271
  className = _ref.className,
215
272
  _ref$disabled = _ref.disabled,
@@ -217,17 +274,17 @@ var IconButton = /*#__PURE__*/React__default.forwardRef(function (_ref, ref) {
217
274
  size = _ref.size,
218
275
  as = _ref.as,
219
276
  loading = _ref.loading,
220
- rest = _objectWithoutPropertiesLoose(_ref, ["children", "className", "disabled", "size", "as", "loading"]);
277
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded);
221
278
 
222
- var Element = as || defaultElement$9;
223
- return React__default.createElement(Element, Object.assign({
224
- className: classNames('eds-icon-button', className, {
279
+ var Element = as || defaultElement;
280
+ return React__default["default"].createElement(Element, _extends({
281
+ className: classNames__default["default"]('eds-icon-button', className, {
225
282
  'eds-icon-button--disabled': disabled
226
283
  }, "eds-icon-button--size-" + size),
227
284
  disabled: disabled,
228
285
  "aria-disabled": disabled,
229
286
  ref: ref
230
- }, rest), loading ? React__default.createElement(loader.LoadingDots, null) : children);
287
+ }, rest), loading ? React__default["default"].createElement(loader.LoadingDots, null) : children);
231
288
  });
232
289
 
233
290
  utils.warnAboutMissingStyles('button');
@@ -243,4 +300,5 @@ exports.SecondarySquareButton = SecondarySquareButton;
243
300
  exports.SuccessButton = SuccessButton;
244
301
  exports.SuccessSquareButton = SuccessSquareButton;
245
302
  exports.TertiaryButton = TertiaryButton;
303
+ exports.TertiarySquareButton = TertiarySquareButton;
246
304
  //# sourceMappingURL=button.cjs.development.js.map
@@ -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/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\nconst defaultElement = 'button';\n\nexport type ButtonProps<\n 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 ...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 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 {...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';\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--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 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 /** 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 return (\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 ref={ref}\n {...rest}\n >\n {loading ? <LoadingDots /> : children}\n </Element>\n );\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 './IconButton';\n"],"names":["defaultElement","Button","React","ref","as","variant","size","loading","className","children","disabled","width","rest","Element","childrenArray","toArray","hasLeadingIcon","length","hasTrailingIcon","cx","LoadingDots","PrimaryButton","forwardRef","props","SecondaryButton","SuccessButton","NegativeButton","TertiaryButton","ButtonGroup","classNames","FloatingButton","Children","count","type","wrapStringsInSpans","map","child","BaseSquareButton","SecondarySquareButton","SuccessSquareButton","IconButton","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 {\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\nconst defaultElement = 'button';\n\nexport type ButtonProps<\n 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 ...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 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 {...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 /** 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 return (\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 ref={ref}\n {...rest}\n >\n {loading ? <LoadingDots /> : children}\n </Element>\n );\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","rest","Element","childrenArray","Children","toArray","hasLeadingIcon","length","hasTrailingIcon","cx","LoadingDots","PrimaryButton","props","SecondaryButton","SuccessButton","NegativeButton","TertiaryButton","ButtonGroup","classNames","FloatingButton","count","type","wrapStringsInSpans","map","child","BaseSquareButton","SecondarySquareButton","SuccessSquareButton","TertiarySquareButton","IconButton","warnAboutMissingStyles"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var t=require("@entur/utils"),a=require("react"),n=e(a),s=e(require("classnames")),r=require("@entur/loader");function o(e,t){if(null==e)return{};var a,n,s={},r=Object.keys(e);for(n=0;n<r.length;n++)t.indexOf(a=r[n])>=0||(s[a]=e[a]);return s}var i=a.forwardRef((function(e,t){var n,i=e.as,u=e.variant,d=e.size,c=void 0===d?"medium":d,l=e.loading,b=e.className,f=e.children,m=e.disabled,g=void 0!==m&&m,v=e.width,p=void 0===v?"auto":v,y=o(e,["as","variant","size","loading","className","children","disabled","width"]),N=i||"button",h=a.Children.toArray(f),E=h.length>1&&"string"!=typeof h[0],j=h.length>1&&"string"!=typeof h[h.length-1];return a.createElement(N,Object.assign({className:s("eds-button",(n={},n["eds-button--variant-"+u]=u,n["eds-button--size-"+c]=c,n["eds-button--width-fluid"]="fluid"===p,n["eds-button--loading"]=l,n["eds-button--leading-icon"]=E,n["eds-button--trailing-icon"]=j,n),b),ref:t,"aria-busy":l,disabled:g,"aria-disabled":g},y),l?a.createElement(r.LoadingDots,{className:"eds-button__loading-dots"}):f)})),u=n.forwardRef((function(e,t){return n.createElement(i,Object.assign({as:e.as||"button"},e,{ref:t,variant:"primary"}))})),d=n.forwardRef((function(e,t){return n.createElement(i,Object.assign({as:e.as||"button"},e,{ref:t,variant:"secondary"}))})),c=n.forwardRef((function(e,t){return n.createElement(i,Object.assign({as:e.as||"button"},e,{ref:t,variant:"success"}))})),l=n.forwardRef((function(e,t){return n.createElement(i,Object.assign({as:e.as||"button"},e,{ref:t,variant:"negative"}))})),b=n.forwardRef((function(e,t){return n.createElement(i,Object.assign({as:e.as||"button"},e,{ref:t,variant:"tertiary"}))})),f=a.forwardRef((function(e,t){var n=e.children,i=e.className,u=e.variant,d=e.disabled,c=void 0!==d&&d,l=e.loading,b=void 0!==l&&l,f=e.as,m=o(e,["children","className","variant","disabled","loading","as"]);return a.createElement(f||"button",Object.assign({className:s("eds-square-button",{"eds-square-button--success":"success"===u},{"eds-square-button--secondary":"secondary"===u},{"eds-square-button--loading":b},i),"aria-busy":b,disabled:c,"aria-disabled":c,ref:t},m),a.Children.map(n,(function(e){return"string"==typeof e?a.createElement("span",{className:"eds-square-button__label"},e):a.createElement("span",{className:"eds-square-button__icon"},b?a.createElement(r.LoadingDots,{className:"eds-square-button__loading-dots"}):e)})))})),m=n.forwardRef((function(e,t){return n.createElement(f,Object.assign({as:e.as||"button",ref:t},e,{variant:"secondary"}))})),g=n.forwardRef((function(e,t){return n.createElement(f,Object.assign({as:e.as||"button",ref:t},e,{variant:"success"}))})),v=n.forwardRef((function(e,t){var a=e.children,i=e.className,u=e.disabled,d=void 0!==u&&u,c=e.size,l=e.as,b=e.loading,f=o(e,["children","className","disabled","size","as","loading"]);return n.createElement(l||"button",Object.assign({className:s("eds-icon-button",i,{"eds-icon-button--disabled":d},"eds-icon-button--size-"+c),disabled:d,"aria-disabled":d,ref:t},f),b?n.createElement(r.LoadingDots,null):a)}));t.warnAboutMissingStyles("button"),exports.Button=i,exports.ButtonGroup=function(e){var t=e.as,a=void 0===t?"div":t,r=e.className,i=o(e,["as","className"]);return n.createElement(a,Object.assign({className:s("eds-button-group",r)},i))},exports.FloatingButton=function(e){var t=e.className,a=e.children,r=e.size,i=void 0===r?"medium":r,u=o(e,["className","children","size"]);return n.createElement("button",Object.assign({className:s("eds-floating-button",{"eds-floating-button--extended":n.Children.count(a)>1},{"eds-floating-button--small":"small"===i},t),type:"button"},u),function(e){return n.Children.map(e,(function(e){return"string"==typeof e?n.createElement("span",null,e):e}))}(a))},exports.IconButton=v,exports.NegativeButton=l,exports.PrimaryButton=u,exports.SecondaryButton=d,exports.SecondarySquareButton=m,exports.SuccessButton=c,exports.SuccessSquareButton=g,exports.TertiaryButton=b;
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),d=n(a);function i(){return i=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},i.apply(this,arguments)}function l(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","children","disabled","width"],f=u.forwardRef((function(e,t){var a,n=e.as,s=e.variant,o=e.size,f=void 0===o?"medium":o,b=e.loading,m=e.className,v=e.children,g=e.disabled,p=void 0!==g&&g,y=e.width,h=void 0===y?"auto":y,E=l(e,c),N=n||"button",w=u.Children.toArray(v),q=w.length>1&&"string"!=typeof w[0],x=w.length>1&&"string"!=typeof w[w.length-1];return u.createElement(N,i({className:d.default("eds-button",(a={},a["eds-button--variant-"+s]=s,a["eds-button--size-"+f]=f,a["eds-button--width-fluid"]="fluid"===h,a["eds-button--loading"]=b,a["eds-button--leading-icon"]=q,a["eds-button--trailing-icon"]=x,a),m),ref:t,"aria-busy":b,disabled:p,"aria-disabled":p},E),b?u.createElement(r.LoadingDots,{className:"eds-button__loading-dots"}):v)})),b=o.default.forwardRef((function(e,t){return o.default.createElement(f,i({as:e.as||"button"},e,{ref:t,variant:"primary"}))})),m=o.default.forwardRef((function(e,t){return o.default.createElement(f,i({as:e.as||"button"},e,{ref:t,variant:"secondary"}))})),v=o.default.forwardRef((function(e,t){return o.default.createElement(f,i({as:e.as||"button"},e,{ref:t,variant:"success"}))})),g=o.default.forwardRef((function(e,t){return o.default.createElement(f,i({as:e.as||"button"},e,{ref:t,variant:"negative"}))})),p=o.default.forwardRef((function(e,t){return o.default.createElement(f,i({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=l(e,E);return u.createElement(m||"button",i({className:d.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,i({as:e.as||"button",ref:t},e,{variant:"secondary"}))})),q=o.default.forwardRef((function(e,t){return o.default.createElement(N,i({as:e.as||"button",ref:t},e,{variant:"success"}))})),x=o.default.forwardRef((function(e,t){return o.default.createElement(N,i({as:e.as||"button",ref:t},e,{variant:"tertiary"}))})),B=["children","className","disabled","size","as","loading"],_=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=l(e,B);return o.default.createElement(f||"button",i({className:d.default("eds-icon-button",n,{"eds-icon-button--disabled":u},"eds-icon-button--size-"+c),disabled:u,"aria-disabled":u,ref:t},m),b?o.default.createElement(r.LoadingDots,null):a)}));e.warnAboutMissingStyles("button"),exports.Button=f,exports.ButtonGroup=function(e){var t=e.as,a=void 0===t?"div":t,r=e.className,n=l(e,y);return o.default.createElement(a,i({className:d.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=l(e,h);return o.default.createElement("button",i({className:d.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=_,exports.NegativeButton=g,exports.PrimaryButton=b,exports.SecondaryButton=m,exports.SecondarySquareButton=w,exports.SuccessButton=v,exports.SuccessSquareButton=q,exports.TertiaryButton=p,exports.TertiarySquareButton=x;
2
2
  //# sourceMappingURL=button.cjs.production.min.js.map