@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.
package/README.md ADDED
@@ -0,0 +1,156 @@
1
+ # Button
2
+
3
+ A button component is a reusable user interface element used in web development to create interactive elements that users can click or tap to perform actions.
4
+
5
+ ---
6
+
7
+ ## Installation
8
+
9
+ ```bash
10
+ npm install @cleartrip/ct-design-button
11
+ # or
12
+ pnpm add @cleartrip/ct-design-button
13
+ ```
14
+
15
+ ### Peer dependencies
16
+
17
+ ```bash
18
+ # Required for all targets
19
+ npm install react
20
+
21
+ # Web only
22
+ npm install react-dom
23
+
24
+ # React Native only
25
+ npm install react-native
26
+ ```
27
+
28
+ ---
29
+
30
+ ## Usage
31
+
32
+ ### Basic
33
+
34
+ ```tsx
35
+ import { Button, ButtonVariant, ButtonColor, ButtonSize } from '@cleartrip/ct-design-button';
36
+
37
+ function Example() {
38
+ return (
39
+ <Button onClick={() => console.log('clicked')}>
40
+ Click me
41
+ </Button>
42
+ );
43
+ }
44
+ ```
45
+
46
+ ### With variants
47
+
48
+ ```tsx
49
+ <Button variant={ButtonVariant.CONTAINED} color={ButtonColor.PRIMARY}>
50
+ Contained Button
51
+ </Button>
52
+
53
+ <Button variant={ButtonVariant.OUTLINE} color={ButtonColor.SECONDARY}>
54
+ Outline Button
55
+ </Button>
56
+
57
+ <Button variant={ButtonVariant.BARE}>
58
+ Bare Button
59
+ </Button>
60
+ ```
61
+
62
+ ### With sizes
63
+
64
+ ```tsx
65
+ <Button size={ButtonSize.SMALL}>Small Button</Button>
66
+ <Button size={ButtonSize.MEDIUM}>Medium Button</Button>
67
+ <Button size={ButtonSize.LARGE}>Large Button</Button>
68
+ ```
69
+
70
+ ### With icons
71
+
72
+ ```tsx
73
+ <Button
74
+ showLeftIcon={true}
75
+ LeftIcon={<MyIcon />}
76
+ >
77
+ Button with left icon
78
+ </Button>
79
+
80
+ <Button
81
+ showRightIcon={true}
82
+ RightIcon={<MyIcon />}
83
+ >
84
+ Button with right icon
85
+ </Button>
86
+ ```
87
+
88
+ ### Loading state
89
+
90
+ ```tsx
91
+ <Button loading={isLoading}>
92
+ {isLoading ? 'Loading...' : 'Submit'}
93
+ </Button>
94
+ ```
95
+
96
+ ---
97
+
98
+ ## Props
99
+
100
+ | Prop | Type | Default | Required | Description |
101
+ |------|------|---------|----------|-------------|
102
+ | `children` | `ReactNode` | — | Yes | Button content |
103
+ | `onClick` | `() => void` | — | No | Click handler function |
104
+ | `variant` | `ButtonVariant` | `CONTAINED` | No | Visual style of the button |
105
+ | `size` | `ButtonSize` | `MEDIUM` | No | Size of the button |
106
+ | `color` | `ButtonColor` | `PRIMARY` | No | Color scheme of the button |
107
+ | `disabled` | `boolean` | `false` | No | Whether the button is disabled |
108
+ | `loading` | `boolean` | `false` | No | Whether to show loading state |
109
+ | `isFullWidth` | `boolean` | `false` | No | Whether button takes full width |
110
+ | `minWidth` | `string` | `50px` | No | Minimum width of the button |
111
+ | `showLeftIcon` | `boolean` | `false` | No | Whether to show left icon |
112
+ | `LeftIcon` | `ReactElement` | — | No | Left icon element |
113
+ | `showRightIcon` | `boolean` | `false` | No | Whether to show right icon |
114
+ | `RightIcon` | `ReactElement` | — | No | Right icon element |
115
+
116
+ ---
117
+
118
+ ## Variants
119
+
120
+ - `CONTAINED` — Filled button with background color
121
+ - `OUTLINE` — Button with border, no background
122
+ - `BARE` — Text-only button, no background or border
123
+
124
+ ## Sizes
125
+
126
+ - `SMALL` — Compact button for tight spaces
127
+ - `MEDIUM` — Standard button size (default)
128
+ - `LARGE` — Larger button for emphasis
129
+
130
+ ## Colors
131
+
132
+ - `PRIMARY` — Main brand color
133
+ - `SECONDARY` — Secondary color scheme
134
+ - `TERTIARY` — Tertiary color scheme
135
+ - `NEUTRAL` — Neutral/gray color scheme
136
+
137
+ ---
138
+
139
+ ## Accessibility
140
+
141
+ - Buttons include proper ARIA attributes
142
+ - Disabled buttons are not focusable
143
+ - Loading buttons announce state to screen readers
144
+ - Ensure sufficient color contrast for all variants
145
+ - Icons should have appropriate alt text or ARIA labels
146
+
147
+ ---
148
+
149
+ ## Migration
150
+
151
+ If migrating from previous versions:
152
+
153
+ ```diff
154
+ - import { Button } from 'yagami/core/components';
155
+ + import { Button, ButtonVariant, ButtonColor, ButtonSize } from '@cleartrip/ct-design-button';
156
+ ```
package/dist/Button.d.ts CHANGED
@@ -1,6 +1,22 @@
1
- import { ForwardRefComponentWithStyle } from '@cleartrip/ct-design-types';
2
- import { ButtonProps } from './type';
3
- type PolymorphicButton = ForwardRefComponentWithStyle<'button', ButtonProps>;
4
- declare const Button: PolymorphicButton;
1
+ declare const Button: import("react").ForwardRefExoticComponent<Partial<{
2
+ children: React.ReactNode;
3
+ size: "small" | "medium" | "large";
4
+ variant: "bare" | "contained" | "outline";
5
+ color: "primary" | "secondary" | "tertiary";
6
+ isFullWidth: boolean;
7
+ loading: boolean;
8
+ disabled: boolean;
9
+ prefixIcon: React.ReactNode;
10
+ suffixIcon: React.ReactNode;
11
+ onClick: (event: import("./type").IClickEvent) => void;
12
+ styleConfig?: {
13
+ root?: import("packages/core/types/dist").Styles[];
14
+ container?: import("packages/core/types/dist").Styles[];
15
+ typography?: import("@cleartrip/ct-design-typography").TypographyStyleConfigProps;
16
+ prefixIconContainer?: import("packages/core/types/dist").Styles[];
17
+ suffixIconContainer?: import("packages/core/types/dist").Styles[];
18
+ };
19
+ noHover?: boolean;
20
+ }> & import("react").RefAttributes<HTMLButtonElement>>;
5
21
  export default Button;
6
22
  //# sourceMappingURL=Button.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../packages/components/Button/src/Button.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,4BAA4B,EAAY,MAAM,4BAA4B,CAAC;AAGpF,OAAO,EAAe,WAAW,EAA6B,MAAM,QAAQ,CAAC;AAG7E,KAAK,iBAAiB,GAAG,4BAA4B,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;AA8B7E,QAAA,MAAM,MAAM,mBAqIU,CAAC;AAEvB,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../packages/components/Button/src/Button.tsx"],"names":[],"mappings":"AAqCA,QAAA,MAAM,MAAM;;;;;;;;;;;;YAYN,CAAC;iBAKD,CAAD;kBAKyB,CAAC;2BAMnB,CAAD;2BAKU,CAAC;;;sDAwErB,CAAC;AAGF,eAAe,MAAM,CAAC"}
@@ -0,0 +1,24 @@
1
+ import React from 'react';
2
+ import { View } from 'react-native';
3
+ declare const Button: React.ForwardRefExoticComponent<Partial<{
4
+ children: React.ReactNode;
5
+ size: "small" | "medium" | "large";
6
+ variant: "bare" | "contained" | "outline";
7
+ color: "primary" | "secondary" | "tertiary";
8
+ isFullWidth: boolean;
9
+ loading: boolean;
10
+ disabled: boolean;
11
+ prefixIcon: React.ReactNode;
12
+ suffixIcon: React.ReactNode;
13
+ onClick: (event: import("./type").IClickEvent) => void;
14
+ styleConfig?: {
15
+ root?: import("packages/core/types/dist").Styles[];
16
+ container?: import("packages/core/types/dist").Styles[];
17
+ typography?: import("@cleartrip/ct-design-typography").TypographyStyleConfigProps;
18
+ prefixIconContainer?: import("packages/core/types/dist").Styles[];
19
+ suffixIconContainer?: import("packages/core/types/dist").Styles[];
20
+ };
21
+ noHover?: boolean;
22
+ }> & React.RefAttributes<View>>;
23
+ export default Button;
24
+ //# sourceMappingURL=Button.native.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Button.native.d.ts","sourceRoot":"","sources":["../packages/components/Button/src/Button.native.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAEnD,OAAO,EAAa,IAAI,EAAE,MAAM,cAAc,CAAC;AAwC/C,QAAA,MAAM,MAAM;;;;;;;;;;;;YAAZ,CAAA;iBAKa,CAAC;kBAKP,CAAC;2BAKO,CAAC;2BAMV,CAAD;;;+BA0DJ,CAAC;AAIF,eAAe,MAAM,CAAC"}
@@ -0,0 +1,17 @@
1
+ export declare enum ButtonSize {
2
+ SMALL = "small",
3
+ MEDIUM = "medium",
4
+ LARGE = "large"
5
+ }
6
+ export declare enum ButtonVariant {
7
+ OUTLINE = "outline",
8
+ CONTAINED = "contained",
9
+ BARE = "bare"
10
+ }
11
+ export declare enum ButtonColor {
12
+ PRIMARY = "primary",
13
+ SECONDARY = "secondary",
14
+ TERTIARY = "tertiary",
15
+ NEUTRAL = "neutral"
16
+ }
17
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../packages/components/Button/src/constants.ts"],"names":[],"mappings":"AAAA,oBAAY,UAAU;IACpB,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,KAAK,UAAU;CAChB;AAED,oBAAY,aAAa;IACvB,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,IAAI,SAAS;CACd;AAED,oBAAY,WAAW;IACrB,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,QAAQ,aAAa;IACrB,OAAO,YAAY;CACpB"}
@@ -1,2 +1,2 @@
1
- "use strict";var o=require("tslib"),t=require("react/jsx-runtime"),r=require("react"),e=require("@emotion/styled"),n=require("@cleartrip/ct-design-typography"),i=require("@cleartrip/ct-design-container"),a=require("@cleartrip/ct-design-theme"),u=require("@cleartrip/ct-design-style-manager"),s=require("@cleartrip/ct-design-dotted-loader");function c(o){return o&&o.__esModule?o:{default:o}}var l,d,p,g,b=c(e);exports.ButtonSize=void 0,(l=exports.ButtonSize||(exports.ButtonSize={})).SMALL="small",l.MEDIUM="medium",l.LARGE="large",exports.IconPosition=void 0,(d=exports.IconPosition||(exports.IconPosition={})).LEFT="left",d.RIGHT="right",exports.ButtonVariant=void 0,(p=exports.ButtonVariant||(exports.ButtonVariant={})).OUTLINE="outline",p.CONTAINED="contained",p.BARE="bare",exports.ButtonColor=void 0,(g=exports.ButtonColor||(exports.ButtonColor={})).PRIMARY="primary",g.SECONDARY="secondary",g.TERTIARY="tertiary",g.NEUTRAL="neutral";var f=function(o,t,r,e){if(r)return{backgroundColor:o.color.button.containedDisabledBg};switch(t){case exports.ButtonColor.PRIMARY:return{backgroundColor:e?o.color.button.hover(o.color.button.containedPrimaryBg):o.color.button.containedPrimaryBg};case exports.ButtonColor.SECONDARY:return{backgroundColor:e?o.color.button.hover(o.color.button.containedSecondaryBg):o.color.button.containedSecondaryBg};case exports.ButtonColor.TERTIARY:return{backgroundColor:e?o.color.button.hover(o.color.button.containedTertiaryBg):o.color.button.containedTertiaryBg};default:return{backgroundColor:e?o.color.button.hover(o.color.button.containedPrimaryBg):o.color.button.containedPrimaryBg}}},x=function(o,t,r,e,n){switch(r){case exports.ButtonVariant.CONTAINED:return f(o,t,e,n);case exports.ButtonVariant.OUTLINE:case exports.ButtonVariant.BARE:return function(o,t,r){if(r)return{backgroundColor:o.color.button.outlinedDisabledBg};switch(t){case exports.ButtonColor.PRIMARY:return{backgroundColor:o.color.button.outlinedPrimaryBg,borderColor:o.color.button.outlinedPrimaryBorder};case exports.ButtonColor.SECONDARY:return{backgroundColor:o.color.button.outlinedSecondaryBg,borderColor:o.color.button.outlinedSecondaryBorder};case exports.ButtonColor.TERTIARY:return{backgroundColor:o.color.button.outlinedTertiaryBg,borderColor:o.color.button.outlinedTertiaryBorder};case exports.ButtonColor.NEUTRAL:return{backgroundColor:o.color.button.outlinedNeutralBg,borderColor:o.color.button.outlinedNeutralBorder};default:return{backgroundColor:o.color.button.outlinedPrimaryBg,borderColor:o.color.button.outlinedPrimaryBorder}}}(o,t,e);default:return f(o,t,e,n)}},B=function(o,t,r){if(t)return r.color.button.containedDisabledLabel;switch(o){case exports.ButtonColor.PRIMARY:return r.color.button.containedPrimaryLabel;case exports.ButtonColor.SECONDARY:return r.color.button.containedSecondaryLabel;case exports.ButtonColor.TERTIARY:return r.color.button.containedTertiaryLabel;default:return r.color.button.containedPrimaryLabel}},y=function(o,t,r){if(t)return r.color.button.outlinedDisabledLabel;switch(o){case exports.ButtonColor.PRIMARY:return r.color.button.outlinedPrimaryLabel;case exports.ButtonColor.SECONDARY:return r.color.button.outlinedSecondaryLabel;case exports.ButtonColor.TERTIARY:return r.color.button.outlinedTertiaryLabel;case exports.ButtonColor.NEUTRAL:return r.color.button.outlinedNeutralLabel;default:return r.color.button.outlinedPrimaryLabel}},h=function(o){switch(o){case exports.ButtonSize.SMALL:case exports.ButtonSize.MEDIUM:return n.TypographyVariant.HM4;case exports.ButtonSize.LARGE:return n.TypographyVariant.HM3;default:return n.TypographyVariant.HM4}},C=function(t){var r=t.theme,e=t.size,n=t.variant,i=t.color,a=t.disabled,u=t.minWidth,s=t.isFullWidth,c=t.loading,l=t.isHover;return o.__assign(o.__assign(o.__assign(o.__assign(o.__assign({},function(o,t){switch(t){case exports.ButtonSize.SMALL:return{height:o.size[8],paddingTop:o.spacing[1],paddingBottom:o.spacing[1]};case exports.ButtonSize.MEDIUM:return{height:o.size[10],paddingTop:o.spacing[2],paddingBottom:o.spacing[2]};case exports.ButtonSize.LARGE:return{height:o.size[12],paddingTop:o.spacing[3],paddingBottom:o.spacing[3]};default:return{height:o.size[10],paddingTop:o.spacing[2],paddingBottom:o.spacing[2]}}}(r,e)),function(o,t,r){if(r)return{borderWidth:o.border.width.none};switch(t){case exports.ButtonVariant.OUTLINE:return{borderWidth:o.border.width.sm,borderStyle:o.border.style.solid};case exports.ButtonVariant.CONTAINED:case exports.ButtonVariant.BARE:default:return{borderWidth:o.border.width.none}}}(r,n,a||c)),x(r,i,n,a||c,l)),function(o){return o?{cursor:"not-allowed"}:{cursor:"pointer"}}(a||c)),{minWidth:s?"100%":u||"auto"})},I=b.default.button((function(){return{}})),m=u.makeStyles((function(o){return{root:{display:"flex",flexDirection:"row",justifyContent:"center",alignItems:"center",position:"relative",paddingHorizontal:o.spacing[3],borderRadius:o.border.radius[8]},prefixIcon:{display:"flex",alignItems:"center",justifyContent:"center",paddingRight:o.spacing[1]},suffixIcon:{display:"flex",alignItems:"center",justifyContent:"center",paddingLeft:o.spacing[1]}}})),v=r.forwardRef((function(e,c){var l=e.size,d=void 0===l?exports.ButtonSize.MEDIUM:l,p=e.variant,g=void 0===p?exports.ButtonVariant.CONTAINED:p,b=e.color,f=void 0===b?exports.ButtonColor.PRIMARY:b,x=e.isFullWidth,v=void 0!==x&&x,R=e.disabled,A=void 0!==R&&R,T=e.onClick,_=void 0===T?function(){}:T,L=e.minWidth,E=void 0===L?"":L,S=e.showLeftIcon,M=void 0!==S&&S,N=e.LeftIcon,D=void 0===N?null:N,P=e.showRightIcon,w=void 0!==P&&P,z=e.RightIcon,W=void 0===z?null:z,k=e.prefixIcon,V=e.suffixIcon,Y=e.children,O=e.loading,j=void 0!==O&&O,U=e.styleConfig,q=void 0===U?{}:U,H=e.noHover,F=void 0!==H&&H,G=o.__rest(e,["size","variant","color","isFullWidth","disabled","onClick","minWidth","showLeftIcon","LeftIcon","showRightIcon","RightIcon","prefixIcon","suffixIcon","children","loading","styleConfig","noHover"]),J=a.useTheme(),K=r.useState(!1),Q=K[0],X=K[1],Z=u.useStyles((function(o){return{root:C({theme:o,size:d,variant:g,color:f,disabled:A,minWidth:E,isFullWidth:v,loading:j,isHover:!F&&Q})}}),[d,g,f,A,E,v,j,Q,F,J]),$=q||{},oo=$.root,to=void 0===oo?[]:oo,ro=$.container,eo=void 0===ro?[]:ro,no=$.typography,io=void 0===no?[]:no,ao=$.iconContainer,uo=void 0===ao?[]:ao,so=$.prefixIconContainer,co=void 0===so?[]:so,lo=$.suffixIconContainer,po=void 0===lo?[]:lo,go=r.useMemo((function(){return function(o,t,r,e,n){switch(o){case exports.ButtonVariant.CONTAINED:return B(t,r||n,e);case exports.ButtonVariant.OUTLINE:return y(t,r||n,e);case exports.ButtonVariant.BARE:return y(t,r,e);default:return B(t,r||n,e)}}(g,f,A,J,j)}),[g,f,A,J,j]),bo=u.useWebMergeStyles(o.__spreadArray([m.root,Z.root],to,!0),[m.root,Z.root,to]),fo=u.useWebMergeStyles(o.__spreadArray([],eo,!0),[eo]),xo=u.useWebMergeStyles(o.__spreadArray([],io,!0),[io]),Bo=u.useWebMergeStyles(o.__spreadArray([],uo,!0),[uo]),yo=u.useWebMergeStyles(o.__spreadArray([m.prefixIcon],co,!0),[m.prefixIcon,co]),ho=u.useWebMergeStyles(o.__spreadArray([m.suffixIcon],po,!0),[m.suffixIcon,po]),Co=r.useCallback((function(r,e){return r?t.jsx(i.Container,o.__assign({paddingLeft:J.spacing[1],display:"flex",alignItems:"center",justifyContent:"center",className:Bo},{children:e})):null}),[Bo]),Io=r.useCallback((function(o){A||!_||j||_(o),(A||j)&&o.preventDefault()}),[A,_,j]);return t.jsx(I,o.__assign({ref:c,onClick:Io,className:bo,theme:J},G,{onMouseEnter:function(){return X(!0)},onMouseLeave:function(){return X(!1)}},{children:j?t.jsx(s.DottedLoader,{}):t.jsxs(t.Fragment,{children:[Co(M,D),k&&t.jsx(i.Container,o.__assign({className:yo},{children:k})),t.jsx(i.Container,o.__assign({className:fo},{children:t.jsx(n.Typography,o.__assign({variant:h(d),colorCode:go,styleConfig:{root:[xo]}},{children:Y}))})),V&&t.jsx(i.Container,o.__assign({className:ho},{children:V})),Co(w,W)]})}))}));exports.Button=v;
1
+ "use strict";var t,o,r,e=require("tslib"),n=require("react/jsx-runtime"),i=require("react"),a=require("@cleartrip/ct-design-typography"),s=require("@cleartrip/ct-design-container"),u=require("@cleartrip/ct-design-theme"),l=require("@cleartrip/ct-design-style-manager"),c=require("@cleartrip/ct-design-dotted-loader");exports.ButtonSize=void 0,(t=exports.ButtonSize||(exports.ButtonSize={})).SMALL="small",t.MEDIUM="medium",t.LARGE="large",exports.ButtonVariant=void 0,(o=exports.ButtonVariant||(exports.ButtonVariant={})).OUTLINE="outline",o.CONTAINED="contained",o.BARE="bare",exports.ButtonColor=void 0,(r=exports.ButtonColor||(exports.ButtonColor={})).PRIMARY="primary",r.SECONDARY="secondary",r.TERTIARY="tertiary",r.NEUTRAL="neutral";const d=(t,o,r)=>{if(r)return{backgroundColor:t.color.button.containedDisabledBg};switch(o){case exports.ButtonColor.PRIMARY:return{backgroundColor:t.color.button.containedPrimaryBg};case exports.ButtonColor.SECONDARY:return{backgroundColor:t.color.button.containedSecondaryBg};case exports.ButtonColor.TERTIARY:return{backgroundColor:t.color.button.containedTertiaryBg};default:return{backgroundColor:t.color.button.containedPrimaryBg}}},p=(t,o,r,e,n)=>{switch(r){case exports.ButtonVariant.CONTAINED:return d(t,o,e);case exports.ButtonVariant.OUTLINE:case exports.ButtonVariant.BARE:return((t,o,r)=>{if(r)return{backgroundColor:t.color.button.outlinedDisabledBg};switch(o){case exports.ButtonColor.PRIMARY:return{backgroundColor:t.color.button.outlinedPrimaryBg,borderColor:t.color.button.outlinedPrimaryBorder};case exports.ButtonColor.SECONDARY:return{backgroundColor:t.color.button.outlinedSecondaryBg,borderColor:t.color.button.outlinedSecondaryBorder};case exports.ButtonColor.TERTIARY:return{backgroundColor:t.color.button.outlinedTertiaryBg,borderColor:t.color.button.outlinedTertiaryBorder};case exports.ButtonColor.NEUTRAL:return{backgroundColor:t.color.button.outlinedNeutralBg,borderColor:t.color.button.outlinedNeutralBorder};default:return{backgroundColor:t.color.button.outlinedPrimaryBg,borderColor:t.color.button.outlinedPrimaryBorder}}})(t,o,e);default:return d(t,o,e)}},g=(t,o,r)=>{if(o)return r.color.button.containedDisabledLabel;switch(t){case exports.ButtonColor.PRIMARY:return r.color.button.containedPrimaryLabel;case exports.ButtonColor.SECONDARY:return r.color.button.containedSecondaryLabel;case exports.ButtonColor.TERTIARY:return r.color.button.containedTertiaryLabel;default:return r.color.button.containedPrimaryLabel}},b=(t,o,r)=>{if(o)return r.color.button.outlinedDisabledLabel;switch(t){case exports.ButtonColor.PRIMARY:return r.color.button.outlinedPrimaryLabel;case exports.ButtonColor.SECONDARY:return r.color.button.outlinedSecondaryLabel;case exports.ButtonColor.TERTIARY:return r.color.button.outlinedTertiaryLabel;case exports.ButtonColor.NEUTRAL:return r.color.button.outlinedNeutralLabel;default:return r.color.button.outlinedPrimaryLabel}},B=t=>{switch(t){case exports.ButtonSize.SMALL:case exports.ButtonSize.MEDIUM:return a.TypographyVariant.HM4;case exports.ButtonSize.LARGE:return a.TypographyVariant.HM3;default:return a.TypographyVariant.HM4}},x=({theme:t,size:o,variant:r,color:e,disabled:n,isFullWidth:i,loading:a,isHover:s})=>Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},((t,o)=>{switch(o){case exports.ButtonSize.SMALL:return{height:t.size[8],paddingTop:t.spacing[1],paddingBottom:t.spacing[1]};case exports.ButtonSize.MEDIUM:return{height:t.size[10],paddingTop:t.spacing[2],paddingBottom:t.spacing[2]};case exports.ButtonSize.LARGE:return{height:t.size[12],paddingTop:t.spacing[3],paddingBottom:t.spacing[3]};default:return{height:t.size[10],paddingTop:t.spacing[2],paddingBottom:t.spacing[2]}}})(t,o)),((t,o,r)=>{if(r)return{borderWidth:t.border.width.none};switch(o){case exports.ButtonVariant.OUTLINE:return{borderWidth:t.border.width.sm,borderStyle:t.border.style.solid};case exports.ButtonVariant.CONTAINED:case exports.ButtonVariant.BARE:default:return{borderWidth:t.border.width.none}}})(t,r,n||a)),p(t,e,r,n||a)),{}),{minWidth:i?"100%":"auto"}),C=l.makeStyles(t=>({root:{display:"flex",flexDirection:"row",justifyContent:"center",alignItems:"center",position:"relative",paddingHorizontal:t.spacing[3]},prefixIcon:{display:"flex",alignItems:"center",justifyContent:"center",paddingRight:t.spacing[1]},suffixIcon:{display:"flex",alignItems:"center",justifyContent:"center",paddingLeft:t.spacing[1]}})),y=i.forwardRef((t,o)=>{var{size:r=exports.ButtonSize.MEDIUM,variant:d=exports.ButtonVariant.CONTAINED,color:p=exports.ButtonColor.PRIMARY,isFullWidth:y=!1,disabled:f=!1,onClick:h=()=>{},prefixIcon:R,suffixIcon:I,children:T,loading:m=!1,styleConfig:A={},noHover:E=!1}=t,L=e.__rest(t,["size","variant","color","isFullWidth","disabled","onClick","prefixIcon","suffixIcon","children","loading","styleConfig","noHover"]);const S=u.useTheme(),[N,M]=i.useState(!1),D=l.useStyles(t=>({root:x({theme:t,size:r,variant:d,color:p,disabled:f,isFullWidth:y,loading:m,isHover:!E&&N})}),[r,d,p,f,y,m,N,E,S]),{root:O=[],container:v=[],typography:z={},prefixIconContainer:P=[],suffixIconContainer:j=[]}=A||{},k=i.useMemo(()=>((t,o,r,e,n)=>{switch(t){case exports.ButtonVariant.CONTAINED:return g(o,r||n,e);case exports.ButtonVariant.OUTLINE:return b(o,r||n,e);case exports.ButtonVariant.BARE:return b(o,r,e);default:return g(o,r||n,e)}})(d,p,f,S,m),[d,p,f,S,m]),V=l.useWebMergeStyles([C.root,D.root,...O],[C.root,D.root,O]),Y=i.useCallback(t=>{f||!h||m||h({stopPropagation:()=>t.stopPropagation(),preventDefault:()=>t.preventDefault()}),(f||m)&&t.preventDefault()},[f,h,m]);return n.jsx("button",Object.assign({ref:o,onClick:Y,className:V},L,{onMouseEnter:()=>M(!0),onMouseLeave:()=>M(!1),children:m?n.jsx(c.DottedLoader,{}):n.jsxs(n.Fragment,{children:[R&&n.jsx(s.Container,{styleConfig:{root:[C.prefixIcon,...P]},children:R}),n.jsx(s.Container,{styleConfig:{root:v},children:n.jsx(a.Typography,{variant:B(r),colorCode:k,styleConfig:z,children:T})}),I&&n.jsx(s.Container,{styleConfig:{root:[C.suffixIcon,...j]},children:I})]})}))});y.displayName="Button",exports.Button=y;
2
2
  //# sourceMappingURL=ct-design-button.browser.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ct-design-button.browser.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","getContainedButtonColorStyles","theme","color","disabled","isHover","backgroundColor","button","containedDisabledBg","PRIMARY","hover","containedPrimaryBg","SECONDARY","containedSecondaryBg","TERTIARY","containedTertiaryBg","getButtonVariantColorStyles","variant","CONTAINED","OUTLINE","BARE","outlinedDisabledBg","outlinedPrimaryBg","borderColor","outlinedPrimaryBorder","outlinedSecondaryBg","outlinedSecondaryBorder","outlinedTertiaryBg","outlinedTertiaryBorder","NEUTRAL","outlinedNeutralBg","outlinedNeutralBorder","getOutlinedButtonColorStyles","getContainedButtonLabelColor","containedDisabledLabel","containedPrimaryLabel","containedSecondaryLabel","containedTertiaryLabel","getOutlinedButtonLabelColor","outlinedDisabledLabel","outlinedPrimaryLabel","outlinedSecondaryLabel","outlinedTertiaryLabel","outlinedNeutralLabel","getTypographyVariant","size","SMALL","MEDIUM","TypographyVariant","HM4","LARGE","HM3","getButtonStyles","_a","minWidth","isFullWidth","loading","__assign","height","paddingTop","spacing","paddingBottom","getButtonSizeStyles","borderWidth","border","width","none","sm","borderStyle","style","solid","getButtonVariantStyles","cursor","getDefaultButtonStyles","StyledButton","styled","default","staticButtonStyles","makeStyles","root","display","flexDirection","justifyContent","alignItems","position","paddingHorizontal","borderRadius","radius","prefixIcon","paddingRight","suffixIcon","paddingLeft","Button","forwardRef","forwardedRef","_b","_c","_d","_e","_f","_g","onClick","_h","_j","showLeftIcon","_k","LeftIcon","_l","showRightIcon","_m","RightIcon","children","_o","_p","styleConfig","_q","noHover","rest","__rest","useTheme","_r","useState","setHover","buttonStyles","useStyles","_s","_t","customRootStyles","_u","container","customContainerStyles","_v","typography","customTypographyStyles","_w","customIconContainerStyles","_x","prefixIconContainer","customPrefixIconContainerStyles","_y","suffixIconContainer","customSuffixIconContainerStyles","buttonLabelColor","useMemo","getButtonVariantLabelColor","mergedRootStyles","useWebMergeStyles","__spreadArray","mergedContainerStyles","mergedTypographyStyles","mergedIconContainerStyles","mergedPrefixIconStyles","mergedSuffixIconStyles","Icon","useCallback","show","IconComponent","_jsx","Container","className","handleClick","event","preventDefault","ref","onMouseEnter","onMouseLeave","DottedLoader","_jsxs","_Fragment","Typography","colorCode","jsx"],"mappings":"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"}
1
+ {"version":3,"file":"ct-design-button.browser.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","getContainedButtonColorStyles","theme","color","disabled","backgroundColor","button","containedDisabledBg","PRIMARY","containedPrimaryBg","SECONDARY","containedSecondaryBg","TERTIARY","containedTertiaryBg","getButtonVariantColorStyles","variant","_isHover","CONTAINED","OUTLINE","BARE","outlinedDisabledBg","outlinedPrimaryBg","borderColor","outlinedPrimaryBorder","outlinedSecondaryBg","outlinedSecondaryBorder","outlinedTertiaryBg","outlinedTertiaryBorder","NEUTRAL","outlinedNeutralBg","outlinedNeutralBorder","getOutlinedButtonColorStyles","getContainedButtonLabelColor","containedDisabledLabel","containedPrimaryLabel","containedSecondaryLabel","containedTertiaryLabel","getOutlinedButtonLabelColor","outlinedDisabledLabel","outlinedPrimaryLabel","outlinedSecondaryLabel","outlinedTertiaryLabel","outlinedNeutralLabel","getTypographyVariant","size","SMALL","MEDIUM","TypographyVariant","HM4","LARGE","HM3","getButtonStyles","isFullWidth","loading","isHover","Object","assign","height","paddingTop","spacing","paddingBottom","getButtonSizeStyles","borderWidth","border","width","none","sm","borderStyle","style","solid","getButtonVariantStyles","minWidth","staticButtonStyles","makeStyles","root","display","flexDirection","justifyContent","alignItems","position","paddingHorizontal","prefixIcon","paddingRight","suffixIcon","paddingLeft","Button","forwardRef","_a","forwardedRef","onClick","children","styleConfig","noHover","rest","__rest","useTheme","setHover","useState","buttonStyles","useStyles","customRootStyles","container","customContainerStyles","typography","customTypographyStyles","prefixIconContainer","customPrefixIconContainerStyles","suffixIconContainer","customSuffixIconContainerStyles","buttonLabelColor","useMemo","getButtonVariantLabelColor","mergedRootStyles","useWebMergeStyles","handleClick","useCallback","event","stopPropagation","preventDefault","_jsx","jsx","ref","className","onMouseEnter","onMouseLeave","DottedLoader","_jsxs","_Fragment","Container","Typography","colorCode","displayName"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{__assign as o,__rest as r,__spreadArray as t}from"tslib";import{jsx as n,jsxs as e,Fragment as i}from"react/jsx-runtime";import{forwardRef as c,useState as a,useMemo as d,useCallback as u}from"react";import l from"@emotion/styled";import{TypographyVariant as s,Typography as f}from"@cleartrip/ct-design-typography";import{Container as b}from"@cleartrip/ct-design-container";import{useTheme as g}from"@cleartrip/ct-design-theme";import{makeStyles as h,useStyles as p,useWebMergeStyles as m}from"@cleartrip/ct-design-style-manager";import{DottedLoader as I}from"@cleartrip/ct-design-dotted-loader";var y,R,v,C;!function(o){o.SMALL="small",o.MEDIUM="medium",o.LARGE="large"}(y||(y={})),function(o){o.LEFT="left",o.RIGHT="right"}(R||(R={})),function(o){o.OUTLINE="outline",o.CONTAINED="contained",o.BARE="bare"}(v||(v={})),function(o){o.PRIMARY="primary",o.SECONDARY="secondary",o.TERTIARY="tertiary",o.NEUTRAL="neutral"}(C||(C={}));var E=function(o,r,t,n){if(t)return{backgroundColor:o.color.button.containedDisabledBg};switch(r){case C.PRIMARY:return{backgroundColor:n?o.color.button.hover(o.color.button.containedPrimaryBg):o.color.button.containedPrimaryBg};case C.SECONDARY:return{backgroundColor:n?o.color.button.hover(o.color.button.containedSecondaryBg):o.color.button.containedSecondaryBg};case C.TERTIARY:return{backgroundColor:n?o.color.button.hover(o.color.button.containedTertiaryBg):o.color.button.containedTertiaryBg};default:return{backgroundColor:n?o.color.button.hover(o.color.button.containedPrimaryBg):o.color.button.containedPrimaryBg}}},L=function(o,r,t,n,e){switch(t){case v.CONTAINED:return E(o,r,n,e);case v.OUTLINE:case v.BARE:return function(o,r,t){if(t)return{backgroundColor:o.color.button.outlinedDisabledBg};switch(r){case C.PRIMARY:return{backgroundColor:o.color.button.outlinedPrimaryBg,borderColor:o.color.button.outlinedPrimaryBorder};case C.SECONDARY:return{backgroundColor:o.color.button.outlinedSecondaryBg,borderColor:o.color.button.outlinedSecondaryBorder};case C.TERTIARY:return{backgroundColor:o.color.button.outlinedTertiaryBg,borderColor:o.color.button.outlinedTertiaryBorder};case C.NEUTRAL:return{backgroundColor:o.color.button.outlinedNeutralBg,borderColor:o.color.button.outlinedNeutralBorder};default:return{backgroundColor:o.color.button.outlinedPrimaryBg,borderColor:o.color.button.outlinedPrimaryBorder}}}(o,r,n);default:return E(o,r,n,e)}},A=function(o,r,t){if(r)return t.color.button.containedDisabledLabel;switch(o){case C.PRIMARY:return t.color.button.containedPrimaryLabel;case C.SECONDARY:return t.color.button.containedSecondaryLabel;case C.TERTIARY:return t.color.button.containedTertiaryLabel;default:return t.color.button.containedPrimaryLabel}},T=function(o,r,t){if(r)return t.color.button.outlinedDisabledLabel;switch(o){case C.PRIMARY:return t.color.button.outlinedPrimaryLabel;case C.SECONDARY:return t.color.button.outlinedSecondaryLabel;case C.TERTIARY:return t.color.button.outlinedTertiaryLabel;case C.NEUTRAL:return t.color.button.outlinedNeutralLabel;default:return t.color.button.outlinedPrimaryLabel}},N=function(o){switch(o){case y.SMALL:case y.MEDIUM:return s.HM4;case y.LARGE:return s.HM3;default:return s.HM4}},B=function(r){var t=r.theme,n=r.size,e=r.variant,i=r.color,c=r.disabled,a=r.minWidth,d=r.isFullWidth,u=r.loading,l=r.isHover;return o(o(o(o(o({},function(o,r){switch(r){case y.SMALL:return{height:o.size[8],paddingTop:o.spacing[1],paddingBottom:o.spacing[1]};case y.MEDIUM:return{height:o.size[10],paddingTop:o.spacing[2],paddingBottom:o.spacing[2]};case y.LARGE:return{height:o.size[12],paddingTop:o.spacing[3],paddingBottom:o.spacing[3]};default:return{height:o.size[10],paddingTop:o.spacing[2],paddingBottom:o.spacing[2]}}}(t,n)),function(o,r,t){if(t)return{borderWidth:o.border.width.none};switch(r){case v.OUTLINE:return{borderWidth:o.border.width.sm,borderStyle:o.border.style.solid};case v.CONTAINED:case v.BARE:default:return{borderWidth:o.border.width.none}}}(t,e,c||u)),L(t,i,e,c||u,l)),function(o){return o?{cursor:"not-allowed"}:{cursor:"pointer"}}(c||u)),{minWidth:d?"100%":a||"auto"})},M=l.button((function(){return{}})),D=h((function(o){return{root:{display:"flex",flexDirection:"row",justifyContent:"center",alignItems:"center",position:"relative",paddingHorizontal:o.spacing[3],borderRadius:o.border.radius[8]},prefixIcon:{display:"flex",alignItems:"center",justifyContent:"center",paddingRight:o.spacing[1]},suffixIcon:{display:"flex",alignItems:"center",justifyContent:"center",paddingLeft:o.spacing[1]}}})),x=c((function(c,l){var s=c.size,h=void 0===s?y.MEDIUM:s,R=c.variant,E=void 0===R?v.CONTAINED:R,L=c.color,x=void 0===L?C.PRIMARY:L,w=c.isFullWidth,P=void 0!==w&&w,Y=c.disabled,S=void 0!==Y&&Y,k=c.onClick,O=void 0===k?function(){}:k,W=c.minWidth,U=void 0===W?"":W,z=c.showLeftIcon,H=void 0!==z&&z,j=c.LeftIcon,F=void 0===j?null:j,G=c.showRightIcon,q=void 0!==G&&G,J=c.RightIcon,K=void 0===J?null:J,Q=c.prefixIcon,V=c.suffixIcon,X=c.children,Z=c.loading,$=void 0!==Z&&Z,_=c.styleConfig,oo=void 0===_?{}:_,ro=c.noHover,to=void 0!==ro&&ro,no=r(c,["size","variant","color","isFullWidth","disabled","onClick","minWidth","showLeftIcon","LeftIcon","showRightIcon","RightIcon","prefixIcon","suffixIcon","children","loading","styleConfig","noHover"]),eo=g(),io=a(!1),co=io[0],ao=io[1],uo=p((function(o){return{root:B({theme:o,size:h,variant:E,color:x,disabled:S,minWidth:U,isFullWidth:P,loading:$,isHover:!to&&co})}}),[h,E,x,S,U,P,$,co,to,eo]),lo=oo||{},so=lo.root,fo=void 0===so?[]:so,bo=lo.container,go=void 0===bo?[]:bo,ho=lo.typography,po=void 0===ho?[]:ho,mo=lo.iconContainer,Io=void 0===mo?[]:mo,yo=lo.prefixIconContainer,Ro=void 0===yo?[]:yo,vo=lo.suffixIconContainer,Co=void 0===vo?[]:vo,Eo=d((function(){return function(o,r,t,n,e){switch(o){case v.CONTAINED:return A(r,t||e,n);case v.OUTLINE:return T(r,t||e,n);case v.BARE:return T(r,t,n);default:return A(r,t||e,n)}}(E,x,S,eo,$)}),[E,x,S,eo,$]),Lo=m(t([D.root,uo.root],fo,!0),[D.root,uo.root,fo]),Ao=m(t([],go,!0),[go]),To=m(t([],po,!0),[po]),No=m(t([],Io,!0),[Io]),Bo=m(t([D.prefixIcon],Ro,!0),[D.prefixIcon,Ro]),Mo=m(t([D.suffixIcon],Co,!0),[D.suffixIcon,Co]),Do=u((function(r,t){return r?n(b,o({paddingLeft:eo.spacing[1],display:"flex",alignItems:"center",justifyContent:"center",className:No},{children:t})):null}),[No]),xo=u((function(o){S||!O||$||O(o),(S||$)&&o.preventDefault()}),[S,O,$]);return n(M,o({ref:l,onClick:xo,className:Lo,theme:eo},no,{onMouseEnter:function(){return ao(!0)},onMouseLeave:function(){return ao(!1)}},{children:$?n(I,{}):e(i,{children:[Do(H,F),Q&&n(b,o({className:Bo},{children:Q})),n(b,o({className:Ao},{children:n(f,o({variant:N(h),colorCode:Eo,styleConfig:{root:[To]}},{children:X}))})),V&&n(b,o({className:Mo},{children:V})),Do(q,K)]})}))}));export{x as Button,C as ButtonColor,y as ButtonSize,v as ButtonVariant,R as IconPosition};
1
+ import{__rest as r}from"tslib";import{jsx as o,jsxs as t,Fragment as e}from"react/jsx-runtime";import{forwardRef as n,useState as i,useMemo as a,useCallback as c}from"react";import{TypographyVariant as l,Typography as d}from"@cleartrip/ct-design-typography";import{Container as u}from"@cleartrip/ct-design-container";import{useTheme as s}from"@cleartrip/ct-design-theme";import{makeStyles as b,useStyles as g,useWebMergeStyles as p}from"@cleartrip/ct-design-style-manager";import{DottedLoader as f}from"@cleartrip/ct-design-dotted-loader";var m,y,h;!function(r){r.SMALL="small",r.MEDIUM="medium",r.LARGE="large"}(m||(m={})),function(r){r.OUTLINE="outline",r.CONTAINED="contained",r.BARE="bare"}(y||(y={})),function(r){r.PRIMARY="primary",r.SECONDARY="secondary",r.TERTIARY="tertiary",r.NEUTRAL="neutral"}(h||(h={}));const C=(r,o,t)=>{if(t)return{backgroundColor:r.color.button.containedDisabledBg};switch(o){case h.PRIMARY:return{backgroundColor:r.color.button.containedPrimaryBg};case h.SECONDARY:return{backgroundColor:r.color.button.containedSecondaryBg};case h.TERTIARY:return{backgroundColor:r.color.button.containedTertiaryBg};default:return{backgroundColor:r.color.button.containedPrimaryBg}}},R=(r,o,t,e,n)=>{switch(t){case y.CONTAINED:return C(r,o,e);case y.OUTLINE:case y.BARE:return((r,o,t)=>{if(t)return{backgroundColor:r.color.button.outlinedDisabledBg};switch(o){case h.PRIMARY:return{backgroundColor:r.color.button.outlinedPrimaryBg,borderColor:r.color.button.outlinedPrimaryBorder};case h.SECONDARY:return{backgroundColor:r.color.button.outlinedSecondaryBg,borderColor:r.color.button.outlinedSecondaryBorder};case h.TERTIARY:return{backgroundColor:r.color.button.outlinedTertiaryBg,borderColor:r.color.button.outlinedTertiaryBorder};case h.NEUTRAL:return{backgroundColor:r.color.button.outlinedNeutralBg,borderColor:r.color.button.outlinedNeutralBorder};default:return{backgroundColor:r.color.button.outlinedPrimaryBg,borderColor:r.color.button.outlinedPrimaryBorder}}})(r,o,e);default:return C(r,o,e)}},I=(r,o,t)=>{if(o)return t.color.button.containedDisabledLabel;switch(r){case h.PRIMARY:return t.color.button.containedPrimaryLabel;case h.SECONDARY:return t.color.button.containedSecondaryLabel;case h.TERTIARY:return t.color.button.containedTertiaryLabel;default:return t.color.button.containedPrimaryLabel}},A=(r,o,t)=>{if(o)return t.color.button.outlinedDisabledLabel;switch(r){case h.PRIMARY:return t.color.button.outlinedPrimaryLabel;case h.SECONDARY:return t.color.button.outlinedSecondaryLabel;case h.TERTIARY:return t.color.button.outlinedTertiaryLabel;case h.NEUTRAL:return t.color.button.outlinedNeutralLabel;default:return t.color.button.outlinedPrimaryLabel}},E=r=>{switch(r){case m.SMALL:case m.MEDIUM:return l.HM4;case m.LARGE:return l.HM3;default:return l.HM4}},T=({theme:r,size:o,variant:t,color:e,disabled:n,isFullWidth:i,loading:a,isHover:c})=>Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},((r,o)=>{switch(o){case m.SMALL:return{height:r.size[8],paddingTop:r.spacing[1],paddingBottom:r.spacing[1]};case m.MEDIUM:return{height:r.size[10],paddingTop:r.spacing[2],paddingBottom:r.spacing[2]};case m.LARGE:return{height:r.size[12],paddingTop:r.spacing[3],paddingBottom:r.spacing[3]};default:return{height:r.size[10],paddingTop:r.spacing[2],paddingBottom:r.spacing[2]}}})(r,o)),((r,o,t)=>{if(t)return{borderWidth:r.border.width.none};switch(o){case y.OUTLINE:return{borderWidth:r.border.width.sm,borderStyle:r.border.style.solid};case y.CONTAINED:case y.BARE:default:return{borderWidth:r.border.width.none}}})(r,t,n||a)),R(r,e,t,n||a)),{}),{minWidth:i?"100%":"auto"}),L=b(r=>({root:{display:"flex",flexDirection:"row",justifyContent:"center",alignItems:"center",position:"relative",paddingHorizontal:r.spacing[3]},prefixIcon:{display:"flex",alignItems:"center",justifyContent:"center",paddingRight:r.spacing[1]},suffixIcon:{display:"flex",alignItems:"center",justifyContent:"center",paddingLeft:r.spacing[1]}})),N=n((n,l)=>{var{size:b=m.MEDIUM,variant:C=y.CONTAINED,color:R=h.PRIMARY,isFullWidth:N=!1,disabled:B=!1,onClick:D=()=>{},prefixIcon:M,suffixIcon:O,children:P,loading:v=!1,styleConfig:x={},noHover:Y=!1}=n,k=r(n,["size","variant","color","isFullWidth","disabled","onClick","prefixIcon","suffixIcon","children","loading","styleConfig","noHover"]);const S=s(),[w,U]=i(!1),j=g(r=>({root:T({theme:r,size:b,variant:C,color:R,disabled:B,isFullWidth:N,loading:v,isHover:!Y&&w})}),[b,C,R,B,N,v,w,Y,S]),{root:z=[],container:H=[],typography:W={},prefixIconContainer:F=[],suffixIconContainer:G=[]}=x||{},q=a(()=>((r,o,t,e,n)=>{switch(r){case y.CONTAINED:return I(o,t||n,e);case y.OUTLINE:return A(o,t||n,e);case y.BARE:return A(o,t,e);default:return I(o,t||n,e)}})(C,R,B,S,v),[C,R,B,S,v]),J=p([L.root,j.root,...z],[L.root,j.root,z]),K=c(r=>{B||!D||v||D({stopPropagation:()=>r.stopPropagation(),preventDefault:()=>r.preventDefault()}),(B||v)&&r.preventDefault()},[B,D,v]);return o("button",Object.assign({ref:l,onClick:K,className:J},k,{onMouseEnter:()=>U(!0),onMouseLeave:()=>U(!1),children:v?o(f,{}):t(e,{children:[M&&o(u,{styleConfig:{root:[L.prefixIcon,...F]},children:M}),o(u,{styleConfig:{root:H},children:o(d,{variant:E(b),colorCode:q,styleConfig:W,children:P})}),O&&o(u,{styleConfig:{root:[L.suffixIcon,...G]},children:O})]})}))});N.displayName="Button";export{N as Button,h as ButtonColor,m as ButtonSize,y as ButtonVariant};
2
2
  //# sourceMappingURL=ct-design-button.browser.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ct-design-button.browser.esm.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","getContainedButtonColorStyles","theme","color","disabled","isHover","backgroundColor","button","containedDisabledBg","PRIMARY","hover","containedPrimaryBg","SECONDARY","containedSecondaryBg","TERTIARY","containedTertiaryBg","getButtonVariantColorStyles","variant","CONTAINED","OUTLINE","BARE","outlinedDisabledBg","outlinedPrimaryBg","borderColor","outlinedPrimaryBorder","outlinedSecondaryBg","outlinedSecondaryBorder","outlinedTertiaryBg","outlinedTertiaryBorder","NEUTRAL","outlinedNeutralBg","outlinedNeutralBorder","getOutlinedButtonColorStyles","getContainedButtonLabelColor","containedDisabledLabel","containedPrimaryLabel","containedSecondaryLabel","containedTertiaryLabel","getOutlinedButtonLabelColor","outlinedDisabledLabel","outlinedPrimaryLabel","outlinedSecondaryLabel","outlinedTertiaryLabel","outlinedNeutralLabel","getTypographyVariant","size","SMALL","MEDIUM","TypographyVariant","HM4","LARGE","HM3","getButtonStyles","_a","minWidth","isFullWidth","loading","__assign","height","paddingTop","spacing","paddingBottom","getButtonSizeStyles","borderWidth","border","width","none","sm","borderStyle","style","solid","getButtonVariantStyles","cursor","getDefaultButtonStyles","StyledButton","styled","staticButtonStyles","makeStyles","root","display","flexDirection","justifyContent","alignItems","position","paddingHorizontal","borderRadius","radius","prefixIcon","paddingRight","suffixIcon","paddingLeft","Button","forwardRef","forwardedRef","_b","_c","_d","_e","_f","_g","onClick","_h","_j","showLeftIcon","_k","LeftIcon","_l","showRightIcon","_m","RightIcon","children","_o","_p","styleConfig","_q","noHover","rest","__rest","useTheme","_r","useState","setHover","buttonStyles","useStyles","_s","_t","customRootStyles","_u","container","customContainerStyles","_v","typography","customTypographyStyles","_w","customIconContainerStyles","_x","prefixIconContainer","customPrefixIconContainerStyles","_y","suffixIconContainer","customSuffixIconContainerStyles","buttonLabelColor","useMemo","getButtonVariantLabelColor","mergedRootStyles","useWebMergeStyles","__spreadArray","mergedContainerStyles","mergedTypographyStyles","mergedIconContainerStyles","mergedPrefixIconStyles","mergedSuffixIconStyles","Icon","useCallback","show","IconComponent","_jsx","Container","className","handleClick","event","preventDefault","ref","onMouseEnter","onMouseLeave","DottedLoader","_jsxs","_Fragment","Typography","colorCode"],"mappings":"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"}
1
+ {"version":3,"file":"ct-design-button.browser.esm.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","getContainedButtonColorStyles","theme","color","disabled","backgroundColor","button","containedDisabledBg","PRIMARY","containedPrimaryBg","SECONDARY","containedSecondaryBg","TERTIARY","containedTertiaryBg","getButtonVariantColorStyles","variant","_isHover","CONTAINED","OUTLINE","BARE","outlinedDisabledBg","outlinedPrimaryBg","borderColor","outlinedPrimaryBorder","outlinedSecondaryBg","outlinedSecondaryBorder","outlinedTertiaryBg","outlinedTertiaryBorder","NEUTRAL","outlinedNeutralBg","outlinedNeutralBorder","getOutlinedButtonColorStyles","getContainedButtonLabelColor","containedDisabledLabel","containedPrimaryLabel","containedSecondaryLabel","containedTertiaryLabel","getOutlinedButtonLabelColor","outlinedDisabledLabel","outlinedPrimaryLabel","outlinedSecondaryLabel","outlinedTertiaryLabel","outlinedNeutralLabel","getTypographyVariant","size","SMALL","MEDIUM","TypographyVariant","HM4","LARGE","HM3","getButtonStyles","isFullWidth","loading","isHover","Object","assign","height","paddingTop","spacing","paddingBottom","getButtonSizeStyles","borderWidth","border","width","none","sm","borderStyle","style","solid","getButtonVariantStyles","minWidth","staticButtonStyles","makeStyles","root","display","flexDirection","justifyContent","alignItems","position","paddingHorizontal","prefixIcon","paddingRight","suffixIcon","paddingLeft","Button","forwardRef","_a","forwardedRef","onClick","children","styleConfig","noHover","rest","__rest","useTheme","setHover","useState","buttonStyles","useStyles","customRootStyles","container","customContainerStyles","typography","customTypographyStyles","prefixIconContainer","customPrefixIconContainerStyles","suffixIconContainer","customSuffixIconContainerStyles","buttonLabelColor","useMemo","getButtonVariantLabelColor","mergedRootStyles","useWebMergeStyles","handleClick","useCallback","event","stopPropagation","preventDefault","_jsx","ref","className","onMouseEnter","onMouseLeave","DottedLoader","_jsxs","_Fragment","Container","Typography","colorCode","displayName"],"mappings":"+hBAAYA,EAMAC,EAMAC,GAZZ,SAAYF,GACVA,EAAA,MAAA,QACAA,EAAA,OAAA,SACAA,EAAA,MAAA,OACD,CAJD,CAAYA,IAAAA,EAIX,CAAA,IAED,SAAYC,GACVA,EAAA,QAAA,UACAA,EAAA,UAAA,YACAA,EAAA,KAAA,MACD,CAJD,CAAYA,IAAAA,EAIX,CAAA,IAED,SAAYC,GACVA,EAAA,QAAA,UACAA,EAAA,UAAA,YACAA,EAAA,SAAA,WACAA,EAAA,QAAA,SACD,CALD,CAAYA,IAAAA,EAKX,CAAA,ICZM,MA4DMC,EAAgC,CAACC,EAAcC,EAAwBC,KAClF,GAAIA,EACF,MAAO,CACLC,gBAAiBH,EAAMC,MAAMG,OAAOC,qBAIxC,OAAQJ,GACN,KAAKH,EAAYQ,QACf,MAAO,CACLH,gBAAiBH,EAAMC,MAAMG,OAAOG,oBAGxC,KAAKT,EAAYU,UACf,MAAO,CACLL,gBAAiBH,EAAMC,MAAMG,OAAOK,sBAGxC,KAAKX,EAAYY,SACf,MAAO,CACLP,gBAAiBH,EAAMC,MAAMG,OAAOO,qBAGxC,QACE,MAAO,CACLR,gBAAiBH,EAAMC,MAAMG,OAAOG,sBA+C/BK,EAA8B,CACzCZ,EACAC,EACAY,EACAX,EACAY,KAEA,OAAQD,GACN,KAAKhB,EAAckB,UACjB,OAAOhB,EAA8BC,EAAOC,EAAOC,GAErD,KAAKL,EAAcmB,QACnB,KAAKnB,EAAcoB,KACjB,MAtDsC,EAACjB,EAAcC,EAAwBC,KACjF,GAAIA,EACF,MAAO,CACLC,gBAAiBH,EAAMC,MAAMG,OAAOc,oBAIxC,OAAQjB,GACN,KAAKH,EAAYQ,QACf,MAAO,CACLH,gBAAiBH,EAAMC,MAAMG,OAAOe,kBACpCC,YAAapB,EAAMC,MAAMG,OAAOiB,uBAGpC,KAAKvB,EAAYU,UACf,MAAO,CACLL,gBAAiBH,EAAMC,MAAMG,OAAOkB,oBACpCF,YAAapB,EAAMC,MAAMG,OAAOmB,yBAGpC,KAAKzB,EAAYY,SACf,MAAO,CACLP,gBAAiBH,EAAMC,MAAMG,OAAOoB,mBACpCJ,YAAapB,EAAMC,MAAMG,OAAOqB,wBAGpC,KAAK3B,EAAY4B,QACf,MAAO,CACLvB,gBAAiBH,EAAMC,MAAMG,OAAOuB,kBACpCP,YAAapB,EAAMC,MAAMG,OAAOwB,uBAGpC,QACE,MAAO,CACLzB,gBAAiBH,EAAMC,MAAMG,OAAOe,kBACpCC,YAAapB,EAAMC,MAAMG,OAAOiB,yBAmB3BQ,CAA6B7B,EAAOC,EAAOC,GAEpD,QACE,OAAOH,EAA8BC,EAAOC,EAAOC,KAK5C4B,EAA+B,CAAC7B,EAAwBC,EAAmBF,KACtF,GAAIE,EACF,OAAOF,EAAMC,MAAMG,OAAO2B,uBAG5B,OAAQ9B,GACN,KAAKH,EAAYQ,QACf,OAAON,EAAMC,MAAMG,OAAO4B,sBAE5B,KAAKlC,EAAYU,UACf,OAAOR,EAAMC,MAAMG,OAAO6B,wBAE5B,KAAKnC,EAAYY,SACf,OAAOV,EAAMC,MAAMG,OAAO8B,uBAE5B,QACE,OAAOlC,EAAMC,MAAMG,OAAO4B,wBAKnBG,EAA8B,CAAClC,EAAwBC,EAAmBF,KACrF,GAAIE,EACF,OAAOF,EAAMC,MAAMG,OAAOgC,sBAG5B,OAAQnC,GACN,KAAKH,EAAYQ,QACf,OAAON,EAAMC,MAAMG,OAAOiC,qBAE5B,KAAKvC,EAAYU,UACf,OAAOR,EAAMC,MAAMG,OAAOkC,uBAE5B,KAAKxC,EAAYY,SACf,OAAOV,EAAMC,MAAMG,OAAOmC,sBAE5B,KAAKzC,EAAY4B,QACf,OAAO1B,EAAMC,MAAMG,OAAOoC,qBAE5B,QACE,OAAOxC,EAAMC,MAAMG,OAAOiC,uBA4BnBI,EAAwBC,IACnC,OAAQA,GACN,KAAK9C,EAAW+C,MAGhB,KAAK/C,EAAWgD,OACd,OAAOC,EAAkBC,IAE3B,KAAKlD,EAAWmD,MACd,OAAOF,EAAkBG,IAE3B,QACE,OAAOH,EAAkBC,MAiBlBG,EAAkB,EAC7BjD,QACA0C,OACA7B,UACAZ,QACAC,WACAgD,cACAC,UACAC,aAYKC,OAAAC,OAAAD,OAAAC,OAAAD,OAAAC,OAAAD,OAAAC,OAAAD,OAAAC,OAAA,CAAA,EA9Q4B,EAACtD,EAAc0C,KAChD,OAAQA,GACN,KAAK9C,EAAW+C,MACd,MAAO,CACLY,OAAQvD,EAAM0C,KAAK,GACnBc,WAAYxD,EAAMyD,QAAQ,GAC1BC,cAAe1D,EAAMyD,QAAQ,IAGjC,KAAK7D,EAAWgD,OACd,MAAO,CACLW,OAAQvD,EAAM0C,KAAK,IACnBc,WAAYxD,EAAMyD,QAAQ,GAC1BC,cAAe1D,EAAMyD,QAAQ,IAGjC,KAAK7D,EAAWmD,MACd,MAAO,CACLQ,OAAQvD,EAAM0C,KAAK,IACnBc,WAAYxD,EAAMyD,QAAQ,GAC1BC,cAAe1D,EAAMyD,QAAQ,IAGjC,QACE,MAAO,CACLF,OAAQvD,EAAM0C,KAAK,IACnBc,WAAYxD,EAAMyD,QAAQ,GAC1BC,cAAe1D,EAAMyD,QAAQ,MAmP9BE,CAAoB3D,EAAO0C,IA7OI,EAAC1C,EAAca,EAA4BX,KAC/E,GAAIA,EACF,MAAO,CACL0D,YAAa5D,EAAM6D,OAAOC,MAAMC,MAGpC,OAAQlD,GACN,KAAKhB,EAAcmB,QACjB,MAAO,CACL4C,YAAa5D,EAAM6D,OAAOC,MAAME,GAChCC,YAAajE,EAAM6D,OAAOK,MAAMC,OAGpC,KAAKtE,EAAckB,UACnB,KAAKlB,EAAcoB,KAKnB,QACE,MAAO,CACL2C,YAAa5D,EAAM6D,OAAOC,MAAMC,QAyNjCK,CAAuBpE,EAAOa,EAASX,GAAYiD,IACnDvC,EAA4BZ,EAAOC,EAAOY,EAASX,GAAYiD,IAhC3D,IAiCuC,CAC9CkB,SAAWnB,EAAc,OAAS,SC5QhCoB,EAAqBC,EAAYvE,IAC9B,CACLwE,KAAM,CACJC,QAAS,OACTC,cAAe,MACfC,eAAgB,SAChBC,WAAY,SACZC,SAAU,WACVC,kBAAmB9E,EAAMyD,QAAQ,IAGnCsB,WAAY,CACVN,QAAS,OACTG,WAAY,SACZD,eAAgB,SAChBK,aAAchF,EAAMyD,QAAQ,IAE9BwB,WAAY,CACVR,QAAS,OACTG,WAAY,SACZD,eAAgB,SAChBO,YAAalF,EAAMyD,QAAQ,OAK3B0B,EAASC,EACb,CACEC,EAiBAC,KAjBA,IAAA5C,KACEA,EAAO9C,EAAWgD,OAAM/B,QACxBA,EAAUhB,EAAckB,UAASd,MACjCA,EAAQH,EAAYQ,QAAO4C,YAC3BA,GAAc,EAAKhD,SACnBA,GAAW,EAAKqF,QAChBA,EAAU,OAETR,WACDA,EAAUE,WACVA,EAAUO,SACVA,EAAQrC,QACRA,GAAU,EAAKsC,YACfA,EAAc,CAAE,EAAAC,QAChBA,GAAU,KACPC,EAfLC,EAAAP,EAAA,CAAA,OAAA,UAAA,QAAA,cAAA,WAAA,UAAA,aAAA,aAAA,WAAA,UAAA,cAAA,YAmBA,MAAMrF,EAAQ6F,KACPzC,EAAS0C,GAAYC,GAAS,GAE/BC,EAAeC,EAClBjG,IACQ,CACLwE,KAAMvB,EAAgB,CACpBjD,MAAOA,EACP0C,OACA7B,UACAZ,QACAC,WACAgD,cACAC,UACAC,SAASsC,GAAkBtC,MAIjC,CAACV,EAAM7B,EAASZ,EAAOC,EAAUgD,EAAaC,EAASC,EAASsC,EAAS1F,KAIzEwE,KAAM0B,EAAmB,GACzBC,UAAWC,EAAwB,GACnCC,WAAYC,EAAyB,CAAE,EACvCC,oBAAqBC,EAAkC,GACvDC,oBAAqBC,EAAkC,IACrDjB,GAAe,GAEbkB,EAAmBC,EAAQ,IDoHK,EACxC/F,EACAZ,EACAC,EACAF,EACAmD,KAEA,OAAQtC,GACN,KAAKhB,EAAckB,UACjB,OAAOe,EAA6B7B,EAAOC,GAAYiD,EAASnD,GAElE,KAAKH,EAAcmB,QACjB,OAAOmB,EAA4BlC,EAAOC,GAAYiD,EAASnD,GAEjE,KAAKH,EAAcoB,KACjB,OAAOkB,EAA4BlC,EAAOC,EAAUF,GAEtD,QACE,OAAO8B,EAA6B7B,EAAOC,GAAYiD,EAASnD,KCrIzD6G,CAA2BhG,EAASZ,EAAOC,EAAUF,EAAOmD,GAClE,CAACtC,EAASZ,EAAOC,EAAUF,EAAOmD,IAE/B2D,EAAmBC,EACvB,CAACzC,EAAmBE,KAAMwB,EAAaxB,QAAS0B,GAChD,CAAC5B,EAAmBE,KAAMwB,EAAaxB,KAAM0B,IAGzCc,EAAcC,EACjBC,IACMhH,IAAYqF,GAAYpC,GAC3BoC,EAAQ,CAAE4B,gBAAiB,IAAMD,EAAMC,kBAAmBC,eAAgB,IAAMF,EAAME,oBACpFlH,GAAYiD,IAAS+D,EAAME,kBAEjC,CAAClH,EAAUqF,EAASpC,IAGtB,OACEkE,EAAA,SAAAhE,OAAAC,OAAA,CACEgE,IAAKhC,EACLC,QAASyB,EACTO,UAAWT,GACPnB,EACJ,CAAA6B,aAAc,IAAM1B,GAAS,GAC7B2B,aAAc,IAAM3B,GAAS,GAE5BN,SAAArC,EACCkE,EAACK,EAAe,CAAA,GAEhBC,EAAAC,EAAA,CAAApC,SAAA,CACGT,GACCsC,EAACQ,EAAS,CAACpC,YAAa,CAAEjB,KAAM,CAACF,EAAmBS,cAAeyB,IAChEhB,SAAAT,IAGLsC,EAACQ,EAAS,CAACpC,YAAa,CAAEjB,KAAM4B,GAC9BZ,SAAA6B,EAACS,EAAU,CACTjH,QAAS4B,EAAqBC,GAC9BqF,UAAWpB,EACXlB,YAAaa,EAEZd,SAAAA,MAGJP,GACCoC,EAACQ,EAAU,CAAApC,YAAa,CAAEjB,KAAM,CAACF,EAAmBW,cAAeyB,IAAkClB,SAClGP,YAUjBE,EAAO6C,YAAc"}