@cleartrip/ct-design-button 4.0.0-TEST.1 → 4.1.0-SNAPSHOT-native-main.1

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.
@@ -3,28 +3,18 @@
3
3
  var tslib = require('tslib');
4
4
  var jsxRuntime = require('react/jsx-runtime');
5
5
  var react = require('react');
6
- var styled = require('@emotion/styled');
7
6
  var ctDesignTypography = require('@cleartrip/ct-design-typography');
8
7
  var ctDesignContainer = require('@cleartrip/ct-design-container');
9
8
  var ctDesignTheme = require('@cleartrip/ct-design-theme');
10
9
  var ctDesignStyleManager = require('@cleartrip/ct-design-style-manager');
11
10
  var ctDesignDottedLoader = require('@cleartrip/ct-design-dotted-loader');
12
11
 
13
- function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
14
-
15
- var styled__default = /*#__PURE__*/_interopDefault(styled);
16
-
17
12
  exports.ButtonSize = void 0;
18
13
  (function (ButtonSize) {
19
14
  ButtonSize["SMALL"] = "small";
20
15
  ButtonSize["MEDIUM"] = "medium";
21
16
  ButtonSize["LARGE"] = "large";
22
17
  })(exports.ButtonSize || (exports.ButtonSize = {}));
23
- exports.IconPosition = void 0;
24
- (function (IconPosition) {
25
- IconPosition["LEFT"] = "left";
26
- IconPosition["RIGHT"] = "right";
27
- })(exports.IconPosition || (exports.IconPosition = {}));
28
18
  exports.ButtonVariant = void 0;
29
19
  (function (ButtonVariant) {
30
20
  ButtonVariant["OUTLINE"] = "outline";
@@ -39,7 +29,7 @@ exports.ButtonColor = void 0;
39
29
  ButtonColor["NEUTRAL"] = "neutral";
40
30
  })(exports.ButtonColor || (exports.ButtonColor = {}));
41
31
 
42
- var getButtonSizeStyles = function (theme, size) {
32
+ const getButtonSizeStyles = (theme, size) => {
43
33
  switch (size) {
44
34
  case exports.ButtonSize.SMALL: {
45
35
  return {
@@ -71,7 +61,7 @@ var getButtonSizeStyles = function (theme, size) {
71
61
  }
72
62
  }
73
63
  };
74
- var getButtonVariantStyles = function (theme, variant, disabled) {
64
+ const getButtonVariantStyles = (theme, variant, disabled) => {
75
65
  if (disabled) {
76
66
  return {
77
67
  borderWidth: theme.border.width.none,
@@ -97,7 +87,7 @@ var getButtonVariantStyles = function (theme, variant, disabled) {
97
87
  }
98
88
  }
99
89
  };
100
- var getContainedButtonColorStyles = function (theme, color, disabled, isHover) {
90
+ const getContainedButtonColorStyles = (theme, color, disabled) => {
101
91
  if (disabled) {
102
92
  return {
103
93
  backgroundColor: theme.color.button.containedDisabledBg,
@@ -106,35 +96,27 @@ var getContainedButtonColorStyles = function (theme, color, disabled, isHover) {
106
96
  switch (color) {
107
97
  case exports.ButtonColor.PRIMARY: {
108
98
  return {
109
- backgroundColor: isHover
110
- ? theme.color.button.hover(theme.color.button.containedPrimaryBg)
111
- : theme.color.button.containedPrimaryBg,
99
+ backgroundColor: theme.color.button.containedPrimaryBg,
112
100
  };
113
101
  }
114
102
  case exports.ButtonColor.SECONDARY: {
115
103
  return {
116
- backgroundColor: isHover
117
- ? theme.color.button.hover(theme.color.button.containedSecondaryBg)
118
- : theme.color.button.containedSecondaryBg,
104
+ backgroundColor: theme.color.button.containedSecondaryBg,
119
105
  };
120
106
  }
121
107
  case exports.ButtonColor.TERTIARY: {
122
108
  return {
123
- backgroundColor: isHover
124
- ? theme.color.button.hover(theme.color.button.containedTertiaryBg)
125
- : theme.color.button.containedTertiaryBg,
109
+ backgroundColor: theme.color.button.containedTertiaryBg,
126
110
  };
127
111
  }
128
112
  default: {
129
113
  return {
130
- backgroundColor: isHover
131
- ? theme.color.button.hover(theme.color.button.containedPrimaryBg)
132
- : theme.color.button.containedPrimaryBg,
114
+ backgroundColor: theme.color.button.containedPrimaryBg,
133
115
  };
134
116
  }
135
117
  }
136
118
  };
137
- var getOutlinedButtonColorStyles = function (theme, color, disabled) {
119
+ const getOutlinedButtonColorStyles = (theme, color, disabled) => {
138
120
  if (disabled) {
139
121
  return {
140
122
  backgroundColor: theme.color.button.outlinedDisabledBg,
@@ -173,21 +155,21 @@ var getOutlinedButtonColorStyles = function (theme, color, disabled) {
173
155
  }
174
156
  }
175
157
  };
176
- var getButtonVariantColorStyles = function (theme, color, variant, disabled, isHover) {
158
+ const getButtonVariantColorStyles = (theme, color, variant, disabled, _isHover) => {
177
159
  switch (variant) {
178
160
  case exports.ButtonVariant.CONTAINED: {
179
- return getContainedButtonColorStyles(theme, color, disabled, isHover);
161
+ return getContainedButtonColorStyles(theme, color, disabled);
180
162
  }
181
163
  case exports.ButtonVariant.OUTLINE:
182
164
  case exports.ButtonVariant.BARE: {
183
165
  return getOutlinedButtonColorStyles(theme, color, disabled);
184
166
  }
185
167
  default: {
186
- return getContainedButtonColorStyles(theme, color, disabled, isHover);
168
+ return getContainedButtonColorStyles(theme, color, disabled);
187
169
  }
188
170
  }
189
171
  };
190
- var getContainedButtonLabelColor = function (color, disabled, theme) {
172
+ const getContainedButtonLabelColor = (color, disabled, theme) => {
191
173
  if (disabled) {
192
174
  return theme.color.button.containedDisabledLabel;
193
175
  }
@@ -206,7 +188,7 @@ var getContainedButtonLabelColor = function (color, disabled, theme) {
206
188
  }
207
189
  }
208
190
  };
209
- var getOutlinedButtonLabelColor = function (color, disabled, theme) {
191
+ const getOutlinedButtonLabelColor = (color, disabled, theme) => {
210
192
  if (disabled) {
211
193
  return theme.color.button.outlinedDisabledLabel;
212
194
  }
@@ -228,7 +210,7 @@ var getOutlinedButtonLabelColor = function (color, disabled, theme) {
228
210
  }
229
211
  }
230
212
  };
231
- var getButtonVariantLabelColor = function (variant, color, disabled, theme, loading) {
213
+ const getButtonVariantLabelColor = (variant, color, disabled, theme, loading) => {
232
214
  switch (variant) {
233
215
  case exports.ButtonVariant.CONTAINED: {
234
216
  return getContainedButtonLabelColor(color, disabled || loading, theme);
@@ -244,7 +226,7 @@ var getButtonVariantLabelColor = function (variant, color, disabled, theme, load
244
226
  }
245
227
  }
246
228
  };
247
- var getTypographyVariant = function (size) {
229
+ const getTypographyVariant = (size) => {
248
230
  switch (size) {
249
231
  case exports.ButtonSize.SMALL: {
250
232
  return ctDesignTypography.TypographyVariant.HM4;
@@ -260,25 +242,19 @@ var getTypographyVariant = function (size) {
260
242
  }
261
243
  }
262
244
  };
263
- var getDefaultButtonStyles = function (disabled) {
245
+ const getDefaultButtonStyles = (disabled) => {
264
246
  if (disabled) {
265
- return {
266
- cursor: 'not-allowed',
267
- };
247
+ return {};
268
248
  }
269
249
  else {
270
- return {
271
- cursor: 'pointer',
272
- };
250
+ return {};
273
251
  }
274
252
  };
275
- var getButtonStyles = function (_a) {
276
- var theme = _a.theme, size = _a.size, variant = _a.variant, color = _a.color, disabled = _a.disabled, minWidth = _a.minWidth, isFullWidth = _a.isFullWidth, loading = _a.loading, isHover = _a.isHover;
277
- return tslib.__assign(tslib.__assign(tslib.__assign(tslib.__assign(tslib.__assign({}, getButtonSizeStyles(theme, size)), getButtonVariantStyles(theme, variant, disabled || loading)), getButtonVariantColorStyles(theme, color, variant, disabled || loading, isHover)), getDefaultButtonStyles(disabled || loading)), { minWidth: isFullWidth ? '100%' : minWidth || 'auto' });
253
+ const getButtonStyles = ({ theme, size, variant, color, disabled, isFullWidth, loading, isHover, }) => {
254
+ return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, getButtonSizeStyles(theme, size)), getButtonVariantStyles(theme, variant, disabled || loading)), getButtonVariantColorStyles(theme, color, variant, disabled || loading)), getDefaultButtonStyles(disabled || loading)), { minWidth: (isFullWidth ? '100%' : 'auto') });
278
255
  };
279
256
 
280
- var StyledButton = styled__default.default.button(function () { return ({}); });
281
- var staticButtonStyles = ctDesignStyleManager.makeStyles(function (theme) {
257
+ const staticButtonStyles = ctDesignStyleManager.makeStyles((theme) => {
282
258
  return {
283
259
  root: {
284
260
  display: 'flex',
@@ -287,7 +263,6 @@ var staticButtonStyles = ctDesignStyleManager.makeStyles(function (theme) {
287
263
  alignItems: 'center',
288
264
  position: 'relative',
289
265
  paddingHorizontal: theme.spacing[3],
290
- borderRadius: theme.border.radius[8],
291
266
  },
292
267
  prefixIcon: {
293
268
  display: 'flex',
@@ -303,48 +278,39 @@ var staticButtonStyles = ctDesignStyleManager.makeStyles(function (theme) {
303
278
  },
304
279
  };
305
280
  });
306
- var Button = react.forwardRef(function (_a, forwardedRef) {
307
- var _b = _a.size, size = _b === void 0 ? exports.ButtonSize.MEDIUM : _b, _c = _a.variant, variant = _c === void 0 ? exports.ButtonVariant.CONTAINED : _c, _d = _a.color, color = _d === void 0 ? exports.ButtonColor.PRIMARY : _d, _e = _a.isFullWidth, isFullWidth = _e === void 0 ? false : _e, _f = _a.disabled, disabled = _f === void 0 ? false : _f, _g = _a.onClick, onClick = _g === void 0 ? function () { } : _g, _h = _a.minWidth, minWidth = _h === void 0 ? '' : _h, _j = _a.showLeftIcon, showLeftIcon = _j === void 0 ? false : _j, _k = _a.LeftIcon, LeftIcon = _k === void 0 ? null : _k, _l = _a.showRightIcon, showRightIcon = _l === void 0 ? false : _l, _m = _a.RightIcon, RightIcon = _m === void 0 ? null : _m, prefixIcon = _a.prefixIcon, suffixIcon = _a.suffixIcon, children = _a.children, _o = _a.loading, loading = _o === void 0 ? false : _o, _p = _a.styleConfig, styleConfig = _p === void 0 ? {} : _p, _q = _a.noHover, noHover = _q === void 0 ? false : _q, rest = tslib.__rest(_a, ["size", "variant", "color", "isFullWidth", "disabled", "onClick", "minWidth", "showLeftIcon", "LeftIcon", "showRightIcon", "RightIcon", "prefixIcon", "suffixIcon", "children", "loading", "styleConfig", "noHover"]);
308
- var theme = ctDesignTheme.useTheme();
309
- var _r = react.useState(false), isHover = _r[0], setHover = _r[1];
310
- var buttonStyles = ctDesignStyleManager.useStyles(function (theme) {
281
+ const Button = react.forwardRef((_a, forwardedRef) => {
282
+ var { size = exports.ButtonSize.MEDIUM, variant = exports.ButtonVariant.CONTAINED, color = exports.ButtonColor.PRIMARY, isFullWidth = false, disabled = false, onClick = () => {
283
+ }, prefixIcon, suffixIcon, children, loading = false, styleConfig = {}, noHover = false } = _a, rest = tslib.__rest(_a, ["size", "variant", "color", "isFullWidth", "disabled", "onClick", "prefixIcon", "suffixIcon", "children", "loading", "styleConfig", "noHover"]);
284
+ const theme = ctDesignTheme.useTheme();
285
+ const [isHover, setHover] = react.useState(false);
286
+ const buttonStyles = ctDesignStyleManager.useStyles((theme) => {
311
287
  return {
312
288
  root: getButtonStyles({
313
289
  theme: theme,
314
- size: size,
315
- variant: variant,
316
- color: color,
317
- disabled: disabled,
318
- minWidth: minWidth,
319
- isFullWidth: isFullWidth,
320
- loading: loading,
290
+ size,
291
+ variant,
292
+ color,
293
+ disabled,
294
+ isFullWidth,
295
+ loading,
321
296
  isHover: noHover ? false : isHover,
322
297
  }),
323
298
  };
324
- }, [size, variant, color, disabled, minWidth, isFullWidth, loading, isHover, noHover, theme]);
325
- var _s = styleConfig || {}, _t = _s.root, customRootStyles = _t === void 0 ? [] : _t, _u = _s.container, customContainerStyles = _u === void 0 ? [] : _u, _v = _s.typography, customTypographyStyles = _v === void 0 ? [] : _v, _w = _s.iconContainer, customIconContainerStyles = _w === void 0 ? [] : _w, _x = _s.prefixIconContainer, customPrefixIconContainerStyles = _x === void 0 ? [] : _x, _y = _s.suffixIconContainer, customSuffixIconContainerStyles = _y === void 0 ? [] : _y;
326
- var buttonLabelColor = react.useMemo(function () {
299
+ }, [size, variant, color, disabled, isFullWidth, loading, isHover, noHover, theme]);
300
+ const { root: customRootStyles = [], container: customContainerStyles = [], typography: customTypographyStyles = {}, prefixIconContainer: customPrefixIconContainerStyles = [], suffixIconContainer: customSuffixIconContainerStyles = [], } = styleConfig || {};
301
+ const buttonLabelColor = react.useMemo(() => {
327
302
  return getButtonVariantLabelColor(variant, color, disabled, theme, loading);
328
303
  }, [variant, color, disabled, theme, loading]);
329
- var mergedRootStyles = ctDesignStyleManager.useWebMergeStyles(tslib.__spreadArray([staticButtonStyles.root, buttonStyles.root], customRootStyles, true), [staticButtonStyles.root, buttonStyles.root, customRootStyles]);
330
- var mergedContainerStyles = ctDesignStyleManager.useWebMergeStyles(tslib.__spreadArray([], customContainerStyles, true), [customContainerStyles]);
331
- var mergedTypographyStyles = ctDesignStyleManager.useWebMergeStyles(tslib.__spreadArray([], customTypographyStyles, true), [customTypographyStyles]);
332
- var mergedIconContainerStyles = ctDesignStyleManager.useWebMergeStyles(tslib.__spreadArray([], customIconContainerStyles, true), [customIconContainerStyles]);
333
- var mergedPrefixIconStyles = ctDesignStyleManager.useWebMergeStyles(tslib.__spreadArray([staticButtonStyles.prefixIcon], customPrefixIconContainerStyles, true), [staticButtonStyles.prefixIcon, customPrefixIconContainerStyles]);
334
- var mergedSuffixIconStyles = ctDesignStyleManager.useWebMergeStyles(tslib.__spreadArray([staticButtonStyles.suffixIcon], customSuffixIconContainerStyles, true), [staticButtonStyles.suffixIcon, customSuffixIconContainerStyles]);
335
- var Icon = react.useCallback(function (show, IconComponent) {
336
- return show ? (jsxRuntime.jsx(ctDesignContainer.Container, tslib.__assign({ paddingLeft: theme.spacing[1], display: 'flex', alignItems: 'center', justifyContent: 'center', className: mergedIconContainerStyles }, { children: IconComponent }))) : null;
337
- }, [mergedIconContainerStyles]);
338
- var handleClick = react.useCallback(function (event) {
304
+ const mergedRootStyles = ctDesignStyleManager.useWebMergeStyles([staticButtonStyles.root, buttonStyles.root, ...customRootStyles], [staticButtonStyles.root, buttonStyles.root, customRootStyles]);
305
+ const handleClick = react.useCallback((event) => {
339
306
  if (!disabled && onClick && !loading)
340
- onClick(event);
307
+ onClick({ stopPropagation: () => event.stopPropagation(), preventDefault: () => event.preventDefault() });
341
308
  if (disabled || loading)
342
309
  event.preventDefault();
343
310
  }, [disabled, onClick, loading]);
344
- return (jsxRuntime.jsx(StyledButton, tslib.__assign({ ref: forwardedRef, onClick: handleClick, className: mergedRootStyles, theme: theme }, rest, { onMouseEnter: function () { return setHover(true); }, onMouseLeave: function () { return setHover(false); } }, { children: loading ? (jsxRuntime.jsx(ctDesignDottedLoader.DottedLoader, {})) : (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [Icon(showLeftIcon, LeftIcon), prefixIcon && jsxRuntime.jsx(ctDesignContainer.Container, tslib.__assign({ className: mergedPrefixIconStyles }, { children: prefixIcon })), jsxRuntime.jsx(ctDesignContainer.Container, tslib.__assign({ className: mergedContainerStyles }, { children: jsxRuntime.jsx(ctDesignTypography.Typography, tslib.__assign({ variant: getTypographyVariant(size), colorCode: buttonLabelColor, styleConfig: {
345
- root: [mergedTypographyStyles],
346
- } }, { children: children })) })), suffixIcon && jsxRuntime.jsx(ctDesignContainer.Container, tslib.__assign({ className: mergedSuffixIconStyles }, { children: suffixIcon })), Icon(showRightIcon, RightIcon)] })) })));
311
+ return (jsxRuntime.jsx("button", Object.assign({ ref: forwardedRef, onClick: handleClick, className: mergedRootStyles }, rest, { onMouseEnter: () => setHover(true), onMouseLeave: () => setHover(false), children: loading ? (jsxRuntime.jsx(ctDesignDottedLoader.DottedLoader, {})) : (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [prefixIcon && (jsxRuntime.jsx(ctDesignContainer.Container, { styleConfig: { root: [staticButtonStyles.prefixIcon, ...customPrefixIconContainerStyles] }, children: prefixIcon })), jsxRuntime.jsx(ctDesignContainer.Container, { styleConfig: { root: customContainerStyles }, children: jsxRuntime.jsx(ctDesignTypography.Typography, { variant: getTypographyVariant(size), colorCode: buttonLabelColor, styleConfig: customTypographyStyles, children: children }) }), suffixIcon && (jsxRuntime.jsx(ctDesignContainer.Container, { styleConfig: { root: [staticButtonStyles.suffixIcon, ...customSuffixIconContainerStyles] }, children: suffixIcon }))] })) })));
347
312
  });
313
+ Button.displayName = 'Button';
348
314
 
349
315
  exports.Button = Button;
350
316
  //# sourceMappingURL=ct-design-button.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ct-design-button.cjs.js","sources":["../packages/components/Button/src/type.ts","../packages/components/Button/src/style.ts","../packages/components/Button/src/Button.tsx"],"sourcesContent":[null,null,null],"names":["ButtonSize","IconPosition","ButtonVariant","ButtonColor","TypographyVariant","__assign","styled","makeStyles","forwardRef","__rest","useTheme","useState","useStyles","useMemo","useWebMergeStyles","__spreadArray","useCallback","_jsx","Container","DottedLoader","_jsxs","_Fragment","Typography"],"mappings":"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"}
1
+ {"version":3,"file":"ct-design-button.cjs.js","sources":["../packages/components/Button/src/constants.ts","../packages/components/Button/src/style.ts","../packages/components/Button/src/Button.tsx"],"sourcesContent":[null,null,null],"names":["ButtonSize","ButtonVariant","ButtonColor","TypographyVariant","makeStyles","forwardRef","__rest","useTheme","useState","useStyles","useMemo","useWebMergeStyles","useCallback","_jsx","DottedLoader","_jsxs","_Fragment","Container","Typography"],"mappings":"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"}
@@ -1,7 +1,6 @@
1
- import { __assign, __rest, __spreadArray } from 'tslib';
1
+ import { __rest } from 'tslib';
2
2
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
3
3
  import { forwardRef, useState, useMemo, useCallback } from 'react';
4
- import styled from '@emotion/styled';
5
4
  import { TypographyVariant, Typography } from '@cleartrip/ct-design-typography';
6
5
  import { Container } from '@cleartrip/ct-design-container';
7
6
  import { useTheme } from '@cleartrip/ct-design-theme';
@@ -14,11 +13,6 @@ var ButtonSize;
14
13
  ButtonSize["MEDIUM"] = "medium";
15
14
  ButtonSize["LARGE"] = "large";
16
15
  })(ButtonSize || (ButtonSize = {}));
17
- var IconPosition;
18
- (function (IconPosition) {
19
- IconPosition["LEFT"] = "left";
20
- IconPosition["RIGHT"] = "right";
21
- })(IconPosition || (IconPosition = {}));
22
16
  var ButtonVariant;
23
17
  (function (ButtonVariant) {
24
18
  ButtonVariant["OUTLINE"] = "outline";
@@ -33,7 +27,7 @@ var ButtonColor;
33
27
  ButtonColor["NEUTRAL"] = "neutral";
34
28
  })(ButtonColor || (ButtonColor = {}));
35
29
 
36
- var getButtonSizeStyles = function (theme, size) {
30
+ const getButtonSizeStyles = (theme, size) => {
37
31
  switch (size) {
38
32
  case ButtonSize.SMALL: {
39
33
  return {
@@ -65,7 +59,7 @@ var getButtonSizeStyles = function (theme, size) {
65
59
  }
66
60
  }
67
61
  };
68
- var getButtonVariantStyles = function (theme, variant, disabled) {
62
+ const getButtonVariantStyles = (theme, variant, disabled) => {
69
63
  if (disabled) {
70
64
  return {
71
65
  borderWidth: theme.border.width.none,
@@ -91,7 +85,7 @@ var getButtonVariantStyles = function (theme, variant, disabled) {
91
85
  }
92
86
  }
93
87
  };
94
- var getContainedButtonColorStyles = function (theme, color, disabled, isHover) {
88
+ const getContainedButtonColorStyles = (theme, color, disabled) => {
95
89
  if (disabled) {
96
90
  return {
97
91
  backgroundColor: theme.color.button.containedDisabledBg,
@@ -100,35 +94,27 @@ var getContainedButtonColorStyles = function (theme, color, disabled, isHover) {
100
94
  switch (color) {
101
95
  case ButtonColor.PRIMARY: {
102
96
  return {
103
- backgroundColor: isHover
104
- ? theme.color.button.hover(theme.color.button.containedPrimaryBg)
105
- : theme.color.button.containedPrimaryBg,
97
+ backgroundColor: theme.color.button.containedPrimaryBg,
106
98
  };
107
99
  }
108
100
  case ButtonColor.SECONDARY: {
109
101
  return {
110
- backgroundColor: isHover
111
- ? theme.color.button.hover(theme.color.button.containedSecondaryBg)
112
- : theme.color.button.containedSecondaryBg,
102
+ backgroundColor: theme.color.button.containedSecondaryBg,
113
103
  };
114
104
  }
115
105
  case ButtonColor.TERTIARY: {
116
106
  return {
117
- backgroundColor: isHover
118
- ? theme.color.button.hover(theme.color.button.containedTertiaryBg)
119
- : theme.color.button.containedTertiaryBg,
107
+ backgroundColor: theme.color.button.containedTertiaryBg,
120
108
  };
121
109
  }
122
110
  default: {
123
111
  return {
124
- backgroundColor: isHover
125
- ? theme.color.button.hover(theme.color.button.containedPrimaryBg)
126
- : theme.color.button.containedPrimaryBg,
112
+ backgroundColor: theme.color.button.containedPrimaryBg,
127
113
  };
128
114
  }
129
115
  }
130
116
  };
131
- var getOutlinedButtonColorStyles = function (theme, color, disabled) {
117
+ const getOutlinedButtonColorStyles = (theme, color, disabled) => {
132
118
  if (disabled) {
133
119
  return {
134
120
  backgroundColor: theme.color.button.outlinedDisabledBg,
@@ -167,21 +153,21 @@ var getOutlinedButtonColorStyles = function (theme, color, disabled) {
167
153
  }
168
154
  }
169
155
  };
170
- var getButtonVariantColorStyles = function (theme, color, variant, disabled, isHover) {
156
+ const getButtonVariantColorStyles = (theme, color, variant, disabled, _isHover) => {
171
157
  switch (variant) {
172
158
  case ButtonVariant.CONTAINED: {
173
- return getContainedButtonColorStyles(theme, color, disabled, isHover);
159
+ return getContainedButtonColorStyles(theme, color, disabled);
174
160
  }
175
161
  case ButtonVariant.OUTLINE:
176
162
  case ButtonVariant.BARE: {
177
163
  return getOutlinedButtonColorStyles(theme, color, disabled);
178
164
  }
179
165
  default: {
180
- return getContainedButtonColorStyles(theme, color, disabled, isHover);
166
+ return getContainedButtonColorStyles(theme, color, disabled);
181
167
  }
182
168
  }
183
169
  };
184
- var getContainedButtonLabelColor = function (color, disabled, theme) {
170
+ const getContainedButtonLabelColor = (color, disabled, theme) => {
185
171
  if (disabled) {
186
172
  return theme.color.button.containedDisabledLabel;
187
173
  }
@@ -200,7 +186,7 @@ var getContainedButtonLabelColor = function (color, disabled, theme) {
200
186
  }
201
187
  }
202
188
  };
203
- var getOutlinedButtonLabelColor = function (color, disabled, theme) {
189
+ const getOutlinedButtonLabelColor = (color, disabled, theme) => {
204
190
  if (disabled) {
205
191
  return theme.color.button.outlinedDisabledLabel;
206
192
  }
@@ -222,7 +208,7 @@ var getOutlinedButtonLabelColor = function (color, disabled, theme) {
222
208
  }
223
209
  }
224
210
  };
225
- var getButtonVariantLabelColor = function (variant, color, disabled, theme, loading) {
211
+ const getButtonVariantLabelColor = (variant, color, disabled, theme, loading) => {
226
212
  switch (variant) {
227
213
  case ButtonVariant.CONTAINED: {
228
214
  return getContainedButtonLabelColor(color, disabled || loading, theme);
@@ -238,7 +224,7 @@ var getButtonVariantLabelColor = function (variant, color, disabled, theme, load
238
224
  }
239
225
  }
240
226
  };
241
- var getTypographyVariant = function (size) {
227
+ const getTypographyVariant = (size) => {
242
228
  switch (size) {
243
229
  case ButtonSize.SMALL: {
244
230
  return TypographyVariant.HM4;
@@ -254,25 +240,19 @@ var getTypographyVariant = function (size) {
254
240
  }
255
241
  }
256
242
  };
257
- var getDefaultButtonStyles = function (disabled) {
243
+ const getDefaultButtonStyles = (disabled) => {
258
244
  if (disabled) {
259
- return {
260
- cursor: 'not-allowed',
261
- };
245
+ return {};
262
246
  }
263
247
  else {
264
- return {
265
- cursor: 'pointer',
266
- };
248
+ return {};
267
249
  }
268
250
  };
269
- var getButtonStyles = function (_a) {
270
- var theme = _a.theme, size = _a.size, variant = _a.variant, color = _a.color, disabled = _a.disabled, minWidth = _a.minWidth, isFullWidth = _a.isFullWidth, loading = _a.loading, isHover = _a.isHover;
271
- return __assign(__assign(__assign(__assign(__assign({}, getButtonSizeStyles(theme, size)), getButtonVariantStyles(theme, variant, disabled || loading)), getButtonVariantColorStyles(theme, color, variant, disabled || loading, isHover)), getDefaultButtonStyles(disabled || loading)), { minWidth: isFullWidth ? '100%' : minWidth || 'auto' });
251
+ const getButtonStyles = ({ theme, size, variant, color, disabled, isFullWidth, loading, isHover, }) => {
252
+ return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, getButtonSizeStyles(theme, size)), getButtonVariantStyles(theme, variant, disabled || loading)), getButtonVariantColorStyles(theme, color, variant, disabled || loading)), getDefaultButtonStyles(disabled || loading)), { minWidth: (isFullWidth ? '100%' : 'auto') });
272
253
  };
273
254
 
274
- var StyledButton = styled.button(function () { return ({}); });
275
- var staticButtonStyles = makeStyles(function (theme) {
255
+ const staticButtonStyles = makeStyles((theme) => {
276
256
  return {
277
257
  root: {
278
258
  display: 'flex',
@@ -281,7 +261,6 @@ var staticButtonStyles = makeStyles(function (theme) {
281
261
  alignItems: 'center',
282
262
  position: 'relative',
283
263
  paddingHorizontal: theme.spacing[3],
284
- borderRadius: theme.border.radius[8],
285
264
  },
286
265
  prefixIcon: {
287
266
  display: 'flex',
@@ -297,48 +276,39 @@ var staticButtonStyles = makeStyles(function (theme) {
297
276
  },
298
277
  };
299
278
  });
300
- var Button = forwardRef(function (_a, forwardedRef) {
301
- var _b = _a.size, size = _b === void 0 ? ButtonSize.MEDIUM : _b, _c = _a.variant, variant = _c === void 0 ? ButtonVariant.CONTAINED : _c, _d = _a.color, color = _d === void 0 ? ButtonColor.PRIMARY : _d, _e = _a.isFullWidth, isFullWidth = _e === void 0 ? false : _e, _f = _a.disabled, disabled = _f === void 0 ? false : _f, _g = _a.onClick, onClick = _g === void 0 ? function () { } : _g, _h = _a.minWidth, minWidth = _h === void 0 ? '' : _h, _j = _a.showLeftIcon, showLeftIcon = _j === void 0 ? false : _j, _k = _a.LeftIcon, LeftIcon = _k === void 0 ? null : _k, _l = _a.showRightIcon, showRightIcon = _l === void 0 ? false : _l, _m = _a.RightIcon, RightIcon = _m === void 0 ? null : _m, prefixIcon = _a.prefixIcon, suffixIcon = _a.suffixIcon, children = _a.children, _o = _a.loading, loading = _o === void 0 ? false : _o, _p = _a.styleConfig, styleConfig = _p === void 0 ? {} : _p, _q = _a.noHover, noHover = _q === void 0 ? false : _q, rest = __rest(_a, ["size", "variant", "color", "isFullWidth", "disabled", "onClick", "minWidth", "showLeftIcon", "LeftIcon", "showRightIcon", "RightIcon", "prefixIcon", "suffixIcon", "children", "loading", "styleConfig", "noHover"]);
302
- var theme = useTheme();
303
- var _r = useState(false), isHover = _r[0], setHover = _r[1];
304
- var buttonStyles = useStyles(function (theme) {
279
+ const Button = forwardRef((_a, forwardedRef) => {
280
+ var { size = ButtonSize.MEDIUM, variant = ButtonVariant.CONTAINED, color = ButtonColor.PRIMARY, isFullWidth = false, disabled = false, onClick = () => {
281
+ }, prefixIcon, suffixIcon, children, loading = false, styleConfig = {}, noHover = false } = _a, rest = __rest(_a, ["size", "variant", "color", "isFullWidth", "disabled", "onClick", "prefixIcon", "suffixIcon", "children", "loading", "styleConfig", "noHover"]);
282
+ const theme = useTheme();
283
+ const [isHover, setHover] = useState(false);
284
+ const buttonStyles = useStyles((theme) => {
305
285
  return {
306
286
  root: getButtonStyles({
307
287
  theme: theme,
308
- size: size,
309
- variant: variant,
310
- color: color,
311
- disabled: disabled,
312
- minWidth: minWidth,
313
- isFullWidth: isFullWidth,
314
- loading: loading,
288
+ size,
289
+ variant,
290
+ color,
291
+ disabled,
292
+ isFullWidth,
293
+ loading,
315
294
  isHover: noHover ? false : isHover,
316
295
  }),
317
296
  };
318
- }, [size, variant, color, disabled, minWidth, isFullWidth, loading, isHover, noHover, theme]);
319
- var _s = styleConfig || {}, _t = _s.root, customRootStyles = _t === void 0 ? [] : _t, _u = _s.container, customContainerStyles = _u === void 0 ? [] : _u, _v = _s.typography, customTypographyStyles = _v === void 0 ? [] : _v, _w = _s.iconContainer, customIconContainerStyles = _w === void 0 ? [] : _w, _x = _s.prefixIconContainer, customPrefixIconContainerStyles = _x === void 0 ? [] : _x, _y = _s.suffixIconContainer, customSuffixIconContainerStyles = _y === void 0 ? [] : _y;
320
- var buttonLabelColor = useMemo(function () {
297
+ }, [size, variant, color, disabled, isFullWidth, loading, isHover, noHover, theme]);
298
+ const { root: customRootStyles = [], container: customContainerStyles = [], typography: customTypographyStyles = {}, prefixIconContainer: customPrefixIconContainerStyles = [], suffixIconContainer: customSuffixIconContainerStyles = [], } = styleConfig || {};
299
+ const buttonLabelColor = useMemo(() => {
321
300
  return getButtonVariantLabelColor(variant, color, disabled, theme, loading);
322
301
  }, [variant, color, disabled, theme, loading]);
323
- var mergedRootStyles = useWebMergeStyles(__spreadArray([staticButtonStyles.root, buttonStyles.root], customRootStyles, true), [staticButtonStyles.root, buttonStyles.root, customRootStyles]);
324
- var mergedContainerStyles = useWebMergeStyles(__spreadArray([], customContainerStyles, true), [customContainerStyles]);
325
- var mergedTypographyStyles = useWebMergeStyles(__spreadArray([], customTypographyStyles, true), [customTypographyStyles]);
326
- var mergedIconContainerStyles = useWebMergeStyles(__spreadArray([], customIconContainerStyles, true), [customIconContainerStyles]);
327
- var mergedPrefixIconStyles = useWebMergeStyles(__spreadArray([staticButtonStyles.prefixIcon], customPrefixIconContainerStyles, true), [staticButtonStyles.prefixIcon, customPrefixIconContainerStyles]);
328
- var mergedSuffixIconStyles = useWebMergeStyles(__spreadArray([staticButtonStyles.suffixIcon], customSuffixIconContainerStyles, true), [staticButtonStyles.suffixIcon, customSuffixIconContainerStyles]);
329
- var Icon = useCallback(function (show, IconComponent) {
330
- return show ? (jsx(Container, __assign({ paddingLeft: theme.spacing[1], display: 'flex', alignItems: 'center', justifyContent: 'center', className: mergedIconContainerStyles }, { children: IconComponent }))) : null;
331
- }, [mergedIconContainerStyles]);
332
- var handleClick = useCallback(function (event) {
302
+ const mergedRootStyles = useWebMergeStyles([staticButtonStyles.root, buttonStyles.root, ...customRootStyles], [staticButtonStyles.root, buttonStyles.root, customRootStyles]);
303
+ const handleClick = useCallback((event) => {
333
304
  if (!disabled && onClick && !loading)
334
- onClick(event);
305
+ onClick({ stopPropagation: () => event.stopPropagation(), preventDefault: () => event.preventDefault() });
335
306
  if (disabled || loading)
336
307
  event.preventDefault();
337
308
  }, [disabled, onClick, loading]);
338
- return (jsx(StyledButton, __assign({ ref: forwardedRef, onClick: handleClick, className: mergedRootStyles, theme: theme }, rest, { onMouseEnter: function () { return setHover(true); }, onMouseLeave: function () { return setHover(false); } }, { children: loading ? (jsx(DottedLoader, {})) : (jsxs(Fragment, { children: [Icon(showLeftIcon, LeftIcon), prefixIcon && jsx(Container, __assign({ className: mergedPrefixIconStyles }, { children: prefixIcon })), jsx(Container, __assign({ className: mergedContainerStyles }, { children: jsx(Typography, __assign({ variant: getTypographyVariant(size), colorCode: buttonLabelColor, styleConfig: {
339
- root: [mergedTypographyStyles],
340
- } }, { children: children })) })), suffixIcon && jsx(Container, __assign({ className: mergedSuffixIconStyles }, { children: suffixIcon })), Icon(showRightIcon, RightIcon)] })) })));
309
+ return (jsx("button", Object.assign({ ref: forwardedRef, onClick: handleClick, className: mergedRootStyles }, rest, { onMouseEnter: () => setHover(true), onMouseLeave: () => setHover(false), children: loading ? (jsx(DottedLoader, {})) : (jsxs(Fragment, { children: [prefixIcon && (jsx(Container, { styleConfig: { root: [staticButtonStyles.prefixIcon, ...customPrefixIconContainerStyles] }, children: prefixIcon })), jsx(Container, { styleConfig: { root: customContainerStyles }, children: jsx(Typography, { variant: getTypographyVariant(size), colorCode: buttonLabelColor, styleConfig: customTypographyStyles, children: children }) }), suffixIcon && (jsx(Container, { styleConfig: { root: [staticButtonStyles.suffixIcon, ...customSuffixIconContainerStyles] }, children: suffixIcon }))] })) })));
341
310
  });
311
+ Button.displayName = 'Button';
342
312
 
343
- export { Button, ButtonColor, ButtonSize, ButtonVariant, IconPosition };
313
+ export { Button, ButtonColor, ButtonSize, ButtonVariant };
344
314
  //# sourceMappingURL=ct-design-button.esm.js.map