@cleartrip/ct-design-segment 4.0.0 → 5.0.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.
Files changed (39) hide show
  1. package/README.md +85 -0
  2. package/dist/Segment.d.ts +3 -26
  3. package/dist/Segment.d.ts.map +1 -1
  4. package/dist/Segment.native.d.ts +5 -0
  5. package/dist/Segment.native.d.ts.map +1 -0
  6. package/dist/SegmentButton.d.ts +5 -0
  7. package/dist/SegmentButton.d.ts.map +1 -0
  8. package/dist/SegmentButton.native.d.ts +5 -0
  9. package/dist/SegmentButton.native.d.ts.map +1 -0
  10. package/dist/constants.d.ts +5 -0
  11. package/dist/constants.d.ts.map +1 -0
  12. package/dist/ct-design-segment.browser.cjs.js +1 -1
  13. package/dist/ct-design-segment.browser.cjs.js.map +1 -1
  14. package/dist/ct-design-segment.browser.esm.js +1 -1
  15. package/dist/ct-design-segment.browser.esm.js.map +1 -1
  16. package/dist/ct-design-segment.cjs.js +339 -95
  17. package/dist/ct-design-segment.cjs.js.map +1 -1
  18. package/dist/ct-design-segment.esm.js +342 -97
  19. package/dist/ct-design-segment.esm.js.map +1 -1
  20. package/dist/ct-design-segment.umd.js +1986 -128
  21. package/dist/ct-design-segment.umd.js.map +1 -1
  22. package/dist/index.d.ts +2 -1
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.native.d.ts +4 -0
  25. package/dist/index.native.d.ts.map +1 -0
  26. package/dist/style.d.ts +111 -18
  27. package/dist/style.d.ts.map +1 -1
  28. package/dist/type.d.ts +46 -0
  29. package/dist/type.d.ts.map +1 -0
  30. package/package.json +26 -10
  31. package/src/Segment.native.tsx +284 -0
  32. package/src/Segment.tsx +277 -0
  33. package/src/SegmentButton.native.tsx +110 -0
  34. package/src/SegmentButton.tsx +115 -0
  35. package/src/constants.ts +4 -0
  36. package/src/index.native.ts +3 -0
  37. package/src/index.ts +3 -0
  38. package/src/style.ts +132 -0
  39. package/src/type.ts +85 -0
package/README.md ADDED
@@ -0,0 +1,85 @@
1
+ # Segment
2
+
3
+ A segmented control component for selecting between options.
4
+
5
+ ---
6
+
7
+ ## Installation
8
+
9
+ ```bash
10
+ npm install @cleartrip/ct-design-segment
11
+ # or
12
+ pnpm add @cleartrip/ct-design-segment
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 { Segment } from '@cleartrip/ct-design-segment';
36
+
37
+ function Example() {
38
+ return (
39
+ <Segment>
40
+ {/* Basic usage */}
41
+ </Segment>
42
+ );
43
+ }
44
+ ```
45
+
46
+ ---
47
+
48
+ ## Props
49
+
50
+ | Prop | Type | Default | Required | Description |
51
+ |------|------|---------|----------|-------------|
52
+ | `block` | `boolean` | — | No | If true, the segment takes the full width of its parent. |
53
+ | `disabled` | `boolean` | — | No | Disables all segment options. |
54
+ | `variant` | `SegmentVariantType` | — | No | Visual variant for the segment. |
55
+ | `enableTabClick` | `boolean` | — | No | Allow `onChange` to fire even when an option is disabled. |
56
+ | `onChange` | `(value: string | number) => void` | — | ✅ Yes | Fired when the active tab changes. |
57
+ | `options` | `IOption[]` | — | ✅ Yes | Options rendered inside the segment. |
58
+ | `activeTabId` | `string` | — | No | Controlled active tab id. |
59
+ | `animationDuration` | `number` | — | No | Duration (ms) of the indicator slide animation. |
60
+ | `styleConfig` | `SegmentStyleConfigProps` | — | No | Per-slot style overrides. |
61
+
62
+ ---
63
+
64
+ ## SegmentVariant
65
+
66
+ - `DEFAULT` — default
67
+ - `DARK` — dark
68
+ ---
69
+
70
+ ## Accessibility
71
+
72
+ - The component follows accessibility best practices
73
+ - Ensure proper ARIA attributes are provided where needed
74
+ - Test with screen readers to ensure usability
75
+
76
+ ---
77
+
78
+ ## Migration
79
+
80
+ If migrating from a previous version:
81
+
82
+ ```diff
83
+ - import { Segment } from 'yagami/core/components';
84
+ + import { Segment } from '@cleartrip/ct-design-segment';
85
+ ```
package/dist/Segment.d.ts CHANGED
@@ -1,28 +1,5 @@
1
- import { FC, ReactNode } from 'react';
2
- import { BaseStyleConfigProps } from '@cleartrip/ct-design-types';
3
- export interface IOption {
4
- tabId: string;
5
- text: string;
6
- icon?: ReactNode;
7
- disabled?: boolean;
8
- className?: string;
9
- }
10
- export interface ISegmentProps {
11
- block?: boolean;
12
- disabled?: boolean;
13
- onChange: (value: string | number) => void;
14
- options?: IOption[];
15
- size?: 'large' | 'middle' | 'small';
16
- activeTabId?: string;
17
- animationDuration?: string;
18
- styleConfig?: {
19
- root?: BaseStyleConfigProps;
20
- optionButtonWrapper?: BaseStyleConfigProps;
21
- segmentButton?: BaseStyleConfigProps;
22
- animatedContainer?: BaseStyleConfigProps;
23
- animatedBlock?: BaseStyleConfigProps;
24
- };
25
- }
26
- declare const Segment: FC<ISegmentProps>;
1
+ import React from 'react';
2
+ import { ISegmentProps } from './type';
3
+ declare const Segment: React.FC<ISegmentProps>;
27
4
  export default Segment;
28
5
  //# sourceMappingURL=Segment.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Segment.d.ts","sourceRoot":"","sources":["../packages/components/Segment/src/Segment.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,SAAS,EAAY,MAAM,OAAO,CAAC;AAYhD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAOlE,MAAM,WAAW,OAAO;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAE5B,KAAK,CAAC,EAAE,OAAO,CAAC;IAShB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAGnB,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IAG3C,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC;IAKpB,IAAI,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE;QACZ,IAAI,CAAC,EAAE,oBAAoB,CAAC;QAC5B,mBAAmB,CAAC,EAAE,oBAAoB,CAAC;QAC3C,aAAa,CAAC,EAAE,oBAAoB,CAAC;QACrC,iBAAiB,CAAC,EAAE,oBAAoB,CAAC;QACzC,aAAa,CAAC,EAAE,oBAAoB,CAAC;KACtC,CAAC;CACH;AA6BD,QAAA,MAAM,OAAO,EAAE,EAAE,CAAC,aAAa,CAuD9B,CAAC;AAEF,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"Segment.d.ts","sourceRoot":"","sources":["../packages/components/Segment/src/Segment.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4D,MAAM,OAAO,CAAC;AAOjF,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAevC,QAAA,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CA4PpC,CAAC;AAEF,eAAe,OAAO,CAAC"}
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import { ISegmentProps } from './type';
3
+ declare const Segment: React.FC<ISegmentProps>;
4
+ export default Segment;
5
+ //# sourceMappingURL=Segment.native.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Segment.native.d.ts","sourceRoot":"","sources":["../packages/components/Segment/src/Segment.native.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoD,MAAM,OAAO,CAAC;AAazE,OAAO,EAAE,aAAa,EAAgC,MAAM,QAAQ,CAAC;AAarE,QAAA,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CA+PpC,CAAC;AAEF,eAAe,OAAO,CAAC"}
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import { ISegmentButtonProps } from './type';
3
+ export declare const SegmentButton: React.FC<ISegmentButtonProps>;
4
+ export default SegmentButton;
5
+ //# sourceMappingURL=SegmentButton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SegmentButton.d.ts","sourceRoot":"","sources":["../packages/components/Segment/src/SegmentButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAI7C,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAsGvD,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import { ISegmentButtonProps } from './type';
3
+ export declare const SegmentButton: React.FC<ISegmentButtonProps>;
4
+ export default SegmentButton;
5
+ //# sourceMappingURL=SegmentButton.native.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SegmentButton.native.d.ts","sourceRoot":"","sources":["../packages/components/Segment/src/SegmentButton.native.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAI7C,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAiGvD,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -0,0 +1,5 @@
1
+ export declare enum SegmentVariant {
2
+ DEFAULT = "default",
3
+ DARK = "dark"
4
+ }
5
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../packages/components/Segment/src/constants.ts"],"names":[],"mappings":"AAAA,oBAAY,cAAc;IACxB,OAAO,YAAY;IACnB,IAAI,SAAS;CACd"}
@@ -1,2 +1,2 @@
1
- "use strict";var t=require("tslib"),e=require("react/jsx-runtime"),i=require("react"),n=require("@cleartrip/ct-design-theme"),r=require("styled-components"),o=require("@cleartrip/ct-design-use-isomorphic-effect");function a(t){return t&&t.__esModule?t:{default:t}}var s=a(r),c=a(o),d=s.default.div((function(e){var i=e.theme,n=e.isBlock,r=e.css,o=void 0===r?{}:r;return t.__assign(t.__assign({},function(t){var e=t.isBlock;return{display:"flex",border:"1px solid transparent",borderRadius:"60px",overflow:"hidden",background:t.theme.color.background.disabled,width:e?"100%":"fit-content",position:"relative",height:"40px"}}({isBlock:n,theme:i})),o)})),u=s.default.div((function(e){var i=e.theme,n=e.isActive,r=e.css,o=void 0===r?{}:r;return t.__assign(t.__assign({},function(t){var e=t.theme;return{color:t.isActive?e.color.text.primary:e.color.text.subHeading,zIndex:2,padding:"6px 8px 6px 8px",height:"40px",width:"50%"}}({theme:i,isActive:n})),o)})),l=s.default.button((function(e){var i=e.theme,n=e.isActive,r=e.css,o=void 0===r?{}:r;return t.__assign(t.__assign({},function(t){var e=t.theme;return{background:"transparent",color:t.isActive?e.color.text.primary:e.color.text.subHeading,fontSize:"14px",fontWeight:"500",lineHeight:"20px",borderColor:"transparent",borderRadius:"60px",cursor:"pointer",width:"100%"}}({theme:i,isActive:n})),o)})),v=s.default.div((function(e){var i=e.css,n=void 0===i?{}:i;return t.__assign(t.__assign({},{position:"absolute",height:"40px",width:"100%",zIndex:1}),n)})),p=s.default.div((function(e){var i=e.activeIndex,n=e.css,r=void 0===n?{}:n;return t.__assign(t.__assign({},function(t){var e=t.activeIndex,i=t.animationLength,n=void 0===i?"1s":i,r=0===e?4:-4;return{position:"absolute",width:"calc(100% - 50%)",height:"32px",borderRadius:"60px",backgroundColor:"#fff",top:"2.5px",left:"calc(".concat(e?50:0,"% + ").concat(r,"px)"),transition:"left ".concat(n),animationDuration:n,animationFillMode:"forwards"}}({activeIndex:i})),r)}));exports.Segment=function(r){var o=r.block,a=void 0!==o&&o,s=r.onChange;r.disabled;var h=r.options,f=void 0===h?[]:h,g=r.activeTabId,x=r.animationDuration,_=void 0===x?"0.5s":x,m=r.styleConfig,b=void 0===m?{}:m,I=n.useTheme(),k=b.animatedBlock,A=b.animatedContainer,w=b.optionButtonWrapper,B=b.root,j=b.segmentButton,q=i.useState(g||f[0].tabId),C=q[0],y=q[1],S=i.useState(!1),z=S[0],H=S[1];c.default((function(){g&&y(g)}),[g]);var R;return e.jsxs(d,t.__assign({isBlock:a,theme:I},B,{children:[f.map((function(i,n){return e.jsx(u,t.__assign({isActive:i.tabId===C,theme:I},w,{children:e.jsx(l,t.__assign({theme:I,onClick:function(){return t=i.tabId,y(t||""),H(!0),void s(t);var t},isActive:i.tabId===C},j,{children:i.text}),"option-".concat(n))}))})),e.jsx(v,t.__assign({},A,{children:e.jsx(p,t.__assign({toAnimate:z,activeIndex:(R=C,f.findIndex((function(t){return t.tabId===R}))),animationLength:_},k))}))]}))};
1
+ "use strict";var t=require("react/jsx-runtime"),e=require("react"),o=require("@cleartrip/ct-design-theme"),n=require("@cleartrip/ct-design-style-manager"),r=require("@cleartrip/ct-design-container"),i=require("@cleartrip/ct-design-button"),a=require("@emotion/css");function l(t){return t&&t.__esModule?t:{default:t}}var s,d=l(require("@cleartrip/ct-design-use-isomorphic-effect"));exports.SegmentVariant=void 0,(s=exports.SegmentVariant||(exports.SegmentVariant={})).DEFAULT="default",s.DARK="dark";const u=n.makeStyles(t=>{const e=t.size[10],o=t.border.width.sm,n=Math.max(e-2*o,0),r=Math.max(t.spacing[.25],0),i=Math.max(0,e/2),a=Math.max(0,n/2),l=Math.max(0,a-r);return{root:{display:"flex",flexDirection:"row",borderWidth:o,borderColor:"transparent",borderRadius:i,overflow:"hidden",backgroundColor:t.color.background.disabled,position:"relative",height:e,alignItems:"stretch",padding:t.spacing[1]},button:{backgroundColor:"transparent",fontSize:t.typography.size[14],fontWeight:t.typography.weight.medium,lineHeight:t.size[5],borderColor:t.color.border.default,borderRadius:l,textAlign:"center",justifyContent:"center",alignItems:"center"},animatedBlock:{position:"absolute",top:0,height:"100%",borderRadius:l,backgroundColor:t.color.background.neutral},animatedContainer:{flexDirection:"row",alignItems:"stretch",justifyContent:"flex-start",position:"relative",height:"100%",width:"100%"},tabMeasureCell:{flexGrow:1,flexShrink:1,flexBasis:0,minWidth:0},animatedBlockWidth:{width:t.size["100P"]}}}),c=n.makeStyles(t=>{const e=t.size[10],o=t.border.width.sm,n=Math.max(e-2*o,0),r=Math.max(t.spacing[.25],0),i=Math.max(n-2*r,0),a=Math.max(0,n/2);return{root:{position:"absolute",height:i,borderRadius:Math.max(0,a-r),backgroundColor:t.color.background.neutral,top:r,boxShadow:"0px 0px 4px rgba(0, 0, 0, 0.12)"}}}),g=({theme:t,isActive:e})=>({color:e?t.color.tab.selectedPrimaryLabel:t.color.tab.nonSelectedPrimaryLabel,fontSize:t.typography.size[14],fontWeight:t.typography.weight.medium,lineHeight:t.size[5]}),m=({option:e,index:r,activeIndex:a,disabled:l,onOptionClick:s,styleConfig:d,variant:c,optionLength:m})=>{var h,p;const v=o.useTheme(),b=r===a,{segmentButton:f={},segmentText:x={}}=d||{},y=n.useStyles(t=>({rowCell:{flexGrow:1,flexBasis:0,flexShrink:1,minWidth:0,minHeight:0,width:void 0,alignSelf:"stretch",height:t.size[10],maxHeight:t.size[10],paddingHorizontal:0,paddingTop:0,paddingBottom:0,paddingVertical:0,justifyContent:"center",alignItems:"center"}}),[]),C=n.useStyles(t=>c===exports.SegmentVariant.DARK?{typography:{fontSize:t.typography.size[14],fontWeight:t.typography.weight.medium,lineHeight:t.size[5],textAlign:"center",display:"flex",justifyContent:"center",alignItems:"center",paddingTop:0,paddingBottom:0,marginTop:0,marginBottom:0,color:b?v.color.text.neutral:t.color.text.primary}}:{typography:Object.assign(Object.assign({},g({theme:t,isActive:b})),{textAlign:"center",display:"flex",justifyContent:"center",alignItems:"center",paddingTop:0,paddingBottom:0,marginTop:0,marginBottom:0})},[b,c,v]),B=void 0===x.root?[]:Array.isArray(x.root)?x.root:[x.root];return t.jsx(i.Button,{variant:i.ButtonVariant.BARE,color:i.ButtonColor.TERTIARY,size:i.ButtonSize.SMALL,isFullWidth:!1,prefixIcon:null==e?void 0:e.icon,onClick:()=>{l||s(e.tabId,r)},disabled:l,styleConfig:Object.assign(Object.assign({},f),{root:[u.button,...null!==(h=f.root)&&void 0!==h?h:[],y.rowCell],typography:Object.assign(Object.assign({},x),{root:[C.typography,...B]})}),children:null!==(p=null==e?void 0:e.text)&&void 0!==p?p:""})};function h(t){return null==t?[]:Array.isArray(t)?t:[t]}exports.Segment=({block:i=!1,disabled:l=!1,enableTabClick:s=!1,variant:g=exports.SegmentVariant.DEFAULT,onChange:p,options:v=[],activeTabId:b,animationDuration:f=500,styleConfig:x={}})=>{var y,C,B,k,M,S;const{root:w=[],optionButtonWrapper:A=[],segmentButton:j,animatedContainer:z=[],animatedBlock:I=[],optionButtonWrapperActive:T=[],segmentButtonActive:R=[]}=x||{},O=o.useTheme(),W=e.useMemo(()=>((t,e)=>{switch(t){case exports.SegmentVariant.DARK:return{animatedBlock:{style:{backgroundColor:e.color.background.defaultDarkest}},segmentButton:{style:{color:e.color.text.primary}},segmentButtonActive:{style:{color:e.color.text.neutral}},root:{style:{backgroundColor:e.color.background.neutral,borderColor:e.color.border.disabledDark}}};case exports.SegmentVariant.DEFAULT:default:return{animatedBlock:{},segmentButton:{},segmentButtonActive:{}}}})(g,O),[g,O]),D=e.useRef(null),$=e.useRef([]),E=e.useMemo(()=>v.filter(t=>{var e;return String(null!==(e=t.tabId)&&void 0!==e?e:"").trim().length>0}),[v]),[L,V]=e.useState(()=>{const t="string"==typeof b?b.trim():"";return t.length>0?t:""}),[q,H]=e.useState(0),[F,P]=e.useState([]),K=e.useMemo(()=>{var t;return null!==(t=null==j?void 0:j.segmentButton)&&void 0!==t?t:{}},[j]),N=e.useMemo(()=>{var t;return null!==(t=null==j?void 0:j.segmentText)&&void 0!==t?t:{}},[j]),U=e.useMemo(()=>h(K.root),[K.root]),G=e.useMemo(()=>h(N.root),[N.root]),_=e.useCallback(()=>{const t=D.current;if(!t)return;const e=t.getBoundingClientRect();H(e.width);const o=E.map((t,o)=>{const n=$.current[o];if(!n)return{x:0,width:0};const r=n.getBoundingClientRect();return{x:r.left-e.left,width:r.width}});P(o)},[E]);e.useEffect(()=>{$.current=$.current.slice(0,E.length)},[E.length]),e.useEffect(()=>{_()},[_]),e.useEffect(()=>{if("undefined"==typeof ResizeObserver||!D.current)return;const t=new ResizeObserver(()=>{_()});return t.observe(D.current),$.current.forEach(e=>{e&&t.observe(e)}),()=>t.disconnect()},[_,E.length]);const Y=e.useCallback(t=>{const e=E.findIndex(e=>e.tabId===t.trim());return-1===e?0:e},[E]),J=e.useCallback((t,e)=>{var o;const n=E[e],r=null!==(o=null==n?void 0:n.disabled)&&void 0!==o&&o;r&&!s||(p(t),r||V(t||""))},[s,p,E]),Q=E.length,X=Y(L),Z=n.useStyles(()=>({root:{width:i?null==O?void 0:O.size["100P"]:"auto"}}),[i,O]),tt=e.useCallback(t=>{var e,o;const n=t===X;return{segmentButton:Object.assign(Object.assign({},K),{root:[...A,...n?T:[],...U]}),segmentText:Object.assign(Object.assign({},N),{root:[...(null===(e=W.segmentButton)||void 0===e?void 0:e.style)?[W.segmentButton.style]:[],...n&&(null===(o=W.segmentButtonActive)||void 0===o?void 0:o.style)?[W.segmentButtonActive.style]:[],...n?R:[],...G]})}},[X,K,U,N,G,A,T,R,null===(y=W.segmentButton)||void 0===y?void 0:y.style,null===(C=W.segmentButtonActive)||void 0===C?void 0:C.style]);d.default(()=>{if(null==b)return;const t=`${b}`.trim();t.length&&E.some(e=>e.tabId===t)&&V(t)},[b,E]),d.default(()=>{V(t=>{var e,o;const n=t.trim();return n.length>0&&E.some(t=>t.tabId===n)?t:null!==(o=null===(e=E[0])||void 0===e?void 0:e.tabId)&&void 0!==o?o:""})},[E]);const et=n.useWebMergeStyles([u.root,Z.root,...(null===(B=W.root)||void 0===B?void 0:B.style)?[W.root.style]:[],...w],[u.root,Z.root,null===(k=W.root)||void 0===k?void 0:k.style,w]),ot=n.useWebMergeStyles([u.tabMeasureCell],[u.tabMeasureCell]),nt=n.useWebMergeStyles([c.root,...(null===(M=W.animatedBlock)||void 0===M?void 0:M.style)?[W.animatedBlock.style]:[],...I],[c.root,null===(S=W.animatedBlock)||void 0===S?void 0:S.style,I]),rt=F.length>=Q&&F.slice(0,Q).every(t=>!!t&&t.width>0),it=Q>0?100/Q:100,at=e.useMemo(()=>{var t,e;const o=`left ${f}ms ease, width ${f}ms ease`;if(rt&&Q>0){const n=Math.max(0,Math.min(X,Q-1)),r=F[n],i=Math.max(null!==(t=null==r?void 0:r.width)&&void 0!==t?t:q/Math.max(Q,1),0),l=Math.max(q-i,0),s=Math.min(Math.max(null!==(e=null==r?void 0:r.x)&&void 0!==e?e:0,0),l);return a.css({left:`${s}px`,width:`${i}px`,transition:o})}return a.css({left:`calc(${X*it}%)`,width:`${it}%`,transition:o,animationDuration:`${f}ms`,animationFillMode:"forwards"})},[X,f,rt,Q,it,F,q]);return(null==E?void 0:E.length)?t.jsxs("div",{className:et,ref:D,children:[t.jsx(r.Container,{styleConfig:{root:[u.animatedContainer,...z]},children:(lt=E,!(!lt||0===lt.length)&&E.map((e,o)=>t.jsx("div",{ref:t=>{$.current[o]=t},className:ot,children:t.jsx(m,{option:e,index:o,activeIndex:X,disabled:l,onOptionClick:J,optionLength:Q,variant:g,styleConfig:tt(o)})},e.tabId)))}),t.jsx("div",{className:`${nt} ${at}`})]}):null;var lt};
2
2
  //# sourceMappingURL=ct-design-segment.browser.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ct-design-segment.browser.cjs.js","sources":["../packages/components/Segment/src/Segment.tsx","../packages/components/Segment/src/style.ts"],"sourcesContent":[null,null],"names":["StyledSegment","styled","default","div","_a","theme","isBlock","_b","css","__assign","display","border","borderRadius","overflow","background","color","disabled","width","position","height","getSegmentStyle","SegmentOption","isActive","text","primary","subHeading","zIndex","padding","getSegmentOptionStyle","StyledSegmentBtn","button","fontSize","fontWeight","lineHeight","borderColor","cursor","getStyledSegmentButtonStyles","StyledAnimatedContainerBlock","StyledAnimatedBlock","activeIndex","animationLength","offsetLeft","backgroundColor","top","left","concat","transition","animationDuration","animationFillMode","getStyledAnimatedBlock","block","onChange","_c","options","activeTabId","_d","_e","styleConfig","useTheme","animatedBlock","animatedContainer","optionButtonWrapper","root","segmentButton","_f","useState","tabId","activeTabEleId","setActiveTabEleId","_g","animateSegment","setAnimateSegment","useIsomorphicEffect","id","_jsxs","jsxs","map","option","index","_jsx","children","jsx","onClick","toAnimate","findIndex","item"],"mappings":"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"}
1
+ {"version":3,"file":"ct-design-segment.browser.cjs.js","sources":["../packages/components/Segment/src/constants.ts","../packages/components/Segment/src/style.ts","../packages/components/Segment/src/SegmentButton.tsx","../packages/components/Segment/src/Segment.tsx"],"sourcesContent":[null,null,null,null],"names":["SegmentVariant","segmentStaticStyles","makeStyles","theme","trackHeight","size","borderWidth","border","width","sm","trackInnerHeight","Math","max","thumbInset","spacing","trackRadius","trackInnerRadius","thumbRadius","root","display","flexDirection","borderColor","borderRadius","overflow","backgroundColor","color","background","disabled","position","height","alignItems","padding","button","fontSize","typography","fontWeight","weight","medium","lineHeight","default","textAlign","justifyContent","animatedBlock","top","neutral","animatedContainer","tabMeasureCell","flexGrow","flexShrink","flexBasis","minWidth","animatedBlockWidth","segmentWebThumbStyles","thumbHeight","boxShadow","getStyledSegmentButtonStyles","isActive","tab","selectedPrimaryLabel","nonSelectedPrimaryLabel","SegmentButton","option","index","activeIndex","onOptionClick","styleConfig","variant","optionLength","_optionLength","useTheme","segmentButton","segmentText","shell","useStyles","t","rowCell","minHeight","undefined","alignSelf","maxHeight","paddingHorizontal","paddingTop","paddingBottom","paddingVertical","dynamicStyles","innerTheme","DARK","marginTop","marginBottom","text","primary","segmentTextRoot","Array","isArray","_jsx","Button","ButtonVariant","BARE","ButtonColor","TERTIARY","ButtonSize","SMALL","isFullWidth","prefixIcon","icon","onClick","tabId","Object","assign","_a","children","_b","toStyleArray","value","block","enableTabClick","DEFAULT","onChange","options","activeTabId","animationDuration","optionButtonWrapper","segmentButtonConfig","optionButtonWrapperActive","segmentButtonActive","variantStyles","useMemo","style","defaultDarkest","disabledDark","getSegmentVariantStyles","rootRef","useRef","tabRefs","sanitizedOptions","filter","String","trim","length","activeTabEleId","setActiveTabEleId","useState","trackWidth","setTrackWidth","tabLayouts","setTabLayouts","baseSegmentButtonConfig","baseSegmentTextConfig","baseSegmentButtonRoot","baseSegmentTextRoot","measureTabs","useCallback","rootNode","current","rootRect","getBoundingClientRect","layouts","map","_","tabNode","x","rect","left","useEffect","slice","ResizeObserver","observer","observe","forEach","disconnect","findActiveIndex","id","idx","findIndex","item","handleOptionClick","clickedOption","isDisabled","getSegmentButtonStyleConfig","useIsomorphicEffect","some","prev","trimmed","rootClassName","useWebMergeStyles","_c","_d","tabMeasureCellClassName","webThumbBaseClassName","_e","_f","hasStableMeasurements","every","layout","segmentPercent","dynamicWebStyles","transition","safeIndex","min","activeLayout","maxLeft","css","animationFillMode","_jsxs","className","ref","Container","opts","jsx","element"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{__assign as t}from"tslib";import{jsxs as i,jsx as e}from"react/jsx-runtime";import{useState as o}from"react";import{useTheme as n}from"@cleartrip/ct-design-theme";import r from"styled-components";import a from"@cleartrip/ct-design-use-isomorphic-effect";var c=r.div((function(i){var e=i.theme,o=i.isBlock,n=i.css,r=void 0===n?{}:n;return t(t({},function(t){var i=t.isBlock;return{display:"flex",border:"1px solid transparent",borderRadius:"60px",overflow:"hidden",background:t.theme.color.background.disabled,width:i?"100%":"fit-content",position:"relative",height:"40px"}}({isBlock:o,theme:e})),r)})),d=r.div((function(i){var e=i.theme,o=i.isActive,n=i.css,r=void 0===n?{}:n;return t(t({},function(t){var i=t.theme;return{color:t.isActive?i.color.text.primary:i.color.text.subHeading,zIndex:2,padding:"6px 8px 6px 8px",height:"40px",width:"50%"}}({theme:e,isActive:o})),r)})),s=r.button((function(i){var e=i.theme,o=i.isActive,n=i.css,r=void 0===n?{}:n;return t(t({},function(t){var i=t.theme;return{background:"transparent",color:t.isActive?i.color.text.primary:i.color.text.subHeading,fontSize:"14px",fontWeight:"500",lineHeight:"20px",borderColor:"transparent",borderRadius:"60px",cursor:"pointer",width:"100%"}}({theme:e,isActive:o})),r)})),u=r.div((function(i){var e=i.css,o=void 0===e?{}:e;return t(t({},{position:"absolute",height:"40px",width:"100%",zIndex:1}),o)})),p=r.div((function(i){var e=i.activeIndex,o=i.css,n=void 0===o?{}:o;return t(t({},function(t){var i=t.activeIndex,e=t.animationLength,o=void 0===e?"1s":e,n=0===i?4:-4;return{position:"absolute",width:"calc(100% - 50%)",height:"32px",borderRadius:"60px",backgroundColor:"#fff",top:"2.5px",left:"calc(".concat(i?50:0,"% + ").concat(n,"px)"),transition:"left ".concat(o),animationDuration:o,animationFillMode:"forwards"}}({activeIndex:e})),n)})),v=function(r){var v=r.block,l=void 0!==v&&v,m=r.onChange;r.disabled;var h=r.options,f=void 0===h?[]:h,x=r.activeTabId,b=r.animationDuration,g=void 0===b?"0.5s":b,I=r.styleConfig,k=void 0===I?{}:I,A=n(),w=k.animatedBlock,B=k.animatedContainer,C=k.optionButtonWrapper,y=k.root,z=k.segmentButton,H=o(x||f[0].tabId),R=H[0],D=H[1],L=o(!1),W=L[0],j=L[1];a((function(){x&&D(x)}),[x]);var F;return i(c,t({isBlock:l,theme:A},y,{children:[f.map((function(i,o){return e(d,t({isActive:i.tabId===R,theme:A},C,{children:e(s,t({theme:A,onClick:function(){return t=i.tabId,D(t||""),j(!0),void m(t);var t},isActive:i.tabId===R},z,{children:i.text}),"option-".concat(o))}))})),e(u,t({},B,{children:e(p,t({toAnimate:W,activeIndex:(F=R,f.findIndex((function(t){return t.tabId===F}))),animationLength:g},w))}))]}))};export{v as Segment};
1
+ import{jsx as t,jsxs as e}from"react/jsx-runtime";import{useMemo as o,useRef as n,useState as r,useCallback as i,useEffect as a}from"react";import{useTheme as l}from"@cleartrip/ct-design-theme";import{makeStyles as s,useStyles as d,useWebMergeStyles as c}from"@cleartrip/ct-design-style-manager";import{Container as u}from"@cleartrip/ct-design-container";import{Button as g,ButtonVariant as m,ButtonColor as h,ButtonSize as p}from"@cleartrip/ct-design-button";import{css as v}from"@emotion/css";import b from"@cleartrip/ct-design-use-isomorphic-effect";var f;!function(t){t.DEFAULT="default",t.DARK="dark"}(f||(f={}));const y=s(t=>{const e=t.size[10],o=t.border.width.sm,n=Math.max(e-2*o,0),r=Math.max(t.spacing[.25],0),i=Math.max(0,e/2),a=Math.max(0,n/2),l=Math.max(0,a-r);return{root:{display:"flex",flexDirection:"row",borderWidth:o,borderColor:"transparent",borderRadius:i,overflow:"hidden",backgroundColor:t.color.background.disabled,position:"relative",height:e,alignItems:"stretch",padding:t.spacing[1]},button:{backgroundColor:"transparent",fontSize:t.typography.size[14],fontWeight:t.typography.weight.medium,lineHeight:t.size[5],borderColor:t.color.border.default,borderRadius:l,textAlign:"center",justifyContent:"center",alignItems:"center"},animatedBlock:{position:"absolute",top:0,height:"100%",borderRadius:l,backgroundColor:t.color.background.neutral},animatedContainer:{flexDirection:"row",alignItems:"stretch",justifyContent:"flex-start",position:"relative",height:"100%",width:"100%"},tabMeasureCell:{flexGrow:1,flexShrink:1,flexBasis:0,minWidth:0},animatedBlockWidth:{width:t.size["100P"]}}}),x=s(t=>{const e=t.size[10],o=t.border.width.sm,n=Math.max(e-2*o,0),r=Math.max(t.spacing[.25],0),i=Math.max(n-2*r,0),a=Math.max(0,n/2);return{root:{position:"absolute",height:i,borderRadius:Math.max(0,a-r),backgroundColor:t.color.background.neutral,top:r,boxShadow:"0px 0px 4px rgba(0, 0, 0, 0.12)"}}}),B=({theme:t,isActive:e})=>({color:e?t.color.tab.selectedPrimaryLabel:t.color.tab.nonSelectedPrimaryLabel,fontSize:t.typography.size[14],fontWeight:t.typography.weight.medium,lineHeight:t.size[5]}),C=({option:e,index:o,activeIndex:n,disabled:r,onOptionClick:i,styleConfig:a,variant:s,optionLength:c})=>{var u,v;const b=l(),x=o===n,{segmentButton:C={},segmentText:k={}}=a||{},w=d(t=>({rowCell:{flexGrow:1,flexBasis:0,flexShrink:1,minWidth:0,minHeight:0,width:void 0,alignSelf:"stretch",height:t.size[10],maxHeight:t.size[10],paddingHorizontal:0,paddingTop:0,paddingBottom:0,paddingVertical:0,justifyContent:"center",alignItems:"center"}}),[]),A=d(t=>s===f.DARK?{typography:{fontSize:t.typography.size[14],fontWeight:t.typography.weight.medium,lineHeight:t.size[5],textAlign:"center",display:"flex",justifyContent:"center",alignItems:"center",paddingTop:0,paddingBottom:0,marginTop:0,marginBottom:0,color:x?b.color.text.neutral:t.color.text.primary}}:{typography:Object.assign(Object.assign({},B({theme:t,isActive:x})),{textAlign:"center",display:"flex",justifyContent:"center",alignItems:"center",paddingTop:0,paddingBottom:0,marginTop:0,marginBottom:0})},[x,s,b]),M=void 0===k.root?[]:Array.isArray(k.root)?k.root:[k.root];return t(g,{variant:m.BARE,color:h.TERTIARY,size:p.SMALL,isFullWidth:!1,prefixIcon:null==e?void 0:e.icon,onClick:()=>{r||i(e.tabId,o)},disabled:r,styleConfig:Object.assign(Object.assign({},C),{root:[y.button,...null!==(u=C.root)&&void 0!==u?u:[],w.rowCell],typography:Object.assign(Object.assign({},k),{root:[A.typography,...M]})}),children:null!==(v=null==e?void 0:e.text)&&void 0!==v?v:""})};function k(t){return null==t?[]:Array.isArray(t)?t:[t]}const w=({block:s=!1,disabled:g=!1,enableTabClick:m=!1,variant:h=f.DEFAULT,onChange:p,options:B=[],activeTabId:w,animationDuration:A=500,styleConfig:M={}})=>{var z,I,j,T,O,R;const{root:D=[],optionButtonWrapper:S=[],segmentButton:W,animatedContainer:$=[],animatedBlock:L=[],optionButtonWrapperActive:E=[],segmentButtonActive:H=[]}=M||{},F=l(),P=o(()=>((t,e)=>{switch(t){case f.DARK:return{animatedBlock:{style:{backgroundColor:e.color.background.defaultDarkest}},segmentButton:{style:{color:e.color.text.primary}},segmentButtonActive:{style:{color:e.color.text.neutral}},root:{style:{backgroundColor:e.color.background.neutral,borderColor:e.color.border.disabledDark}}};case f.DEFAULT:default:return{animatedBlock:{},segmentButton:{},segmentButtonActive:{}}}})(h,F),[h,F]),K=n(null),N=n([]),U=o(()=>B.filter(t=>{var e;return String(null!==(e=t.tabId)&&void 0!==e?e:"").trim().length>0}),[B]),[G,V]=r(()=>{const t="string"==typeof w?w.trim():"";return t.length>0?t:""}),[Y,q]=r(0),[J,Q]=r([]),X=o(()=>{var t;return null!==(t=null==W?void 0:W.segmentButton)&&void 0!==t?t:{}},[W]),Z=o(()=>{var t;return null!==(t=null==W?void 0:W.segmentText)&&void 0!==t?t:{}},[W]),_=o(()=>k(X.root),[X.root]),tt=o(()=>k(Z.root),[Z.root]),et=i(()=>{const t=K.current;if(!t)return;const e=t.getBoundingClientRect();q(e.width);const o=U.map((t,o)=>{const n=N.current[o];if(!n)return{x:0,width:0};const r=n.getBoundingClientRect();return{x:r.left-e.left,width:r.width}});Q(o)},[U]);a(()=>{N.current=N.current.slice(0,U.length)},[U.length]),a(()=>{et()},[et]),a(()=>{if("undefined"==typeof ResizeObserver||!K.current)return;const t=new ResizeObserver(()=>{et()});return t.observe(K.current),N.current.forEach(e=>{e&&t.observe(e)}),()=>t.disconnect()},[et,U.length]);const ot=i(t=>{const e=U.findIndex(e=>e.tabId===t.trim());return-1===e?0:e},[U]),nt=i((t,e)=>{var o;const n=U[e],r=null!==(o=null==n?void 0:n.disabled)&&void 0!==o&&o;r&&!m||(p(t),r||V(t||""))},[m,p,U]),rt=U.length,it=ot(G),at=d(()=>({root:{width:s?null==F?void 0:F.size["100P"]:"auto"}}),[s,F]),lt=i(t=>{var e,o;const n=t===it;return{segmentButton:Object.assign(Object.assign({},X),{root:[...S,...n?E:[],..._]}),segmentText:Object.assign(Object.assign({},Z),{root:[...(null===(e=P.segmentButton)||void 0===e?void 0:e.style)?[P.segmentButton.style]:[],...n&&(null===(o=P.segmentButtonActive)||void 0===o?void 0:o.style)?[P.segmentButtonActive.style]:[],...n?H:[],...tt]})}},[it,X,_,Z,tt,S,E,H,null===(z=P.segmentButton)||void 0===z?void 0:z.style,null===(I=P.segmentButtonActive)||void 0===I?void 0:I.style]);b(()=>{if(null==w)return;const t=`${w}`.trim();t.length&&U.some(e=>e.tabId===t)&&V(t)},[w,U]),b(()=>{V(t=>{var e,o;const n=t.trim();return n.length>0&&U.some(t=>t.tabId===n)?t:null!==(o=null===(e=U[0])||void 0===e?void 0:e.tabId)&&void 0!==o?o:""})},[U]);const st=c([y.root,at.root,...(null===(j=P.root)||void 0===j?void 0:j.style)?[P.root.style]:[],...D],[y.root,at.root,null===(T=P.root)||void 0===T?void 0:T.style,D]),dt=c([y.tabMeasureCell],[y.tabMeasureCell]),ct=c([x.root,...(null===(O=P.animatedBlock)||void 0===O?void 0:O.style)?[P.animatedBlock.style]:[],...L],[x.root,null===(R=P.animatedBlock)||void 0===R?void 0:R.style,L]),ut=J.length>=rt&&J.slice(0,rt).every(t=>!!t&&t.width>0),gt=rt>0?100/rt:100,mt=o(()=>{var t,e;const o=`left ${A}ms ease, width ${A}ms ease`;if(ut&&rt>0){const n=Math.max(0,Math.min(it,rt-1)),r=J[n],i=Math.max(null!==(t=null==r?void 0:r.width)&&void 0!==t?t:Y/Math.max(rt,1),0),a=Math.max(Y-i,0),l=Math.min(Math.max(null!==(e=null==r?void 0:r.x)&&void 0!==e?e:0,0),a);return v({left:`${l}px`,width:`${i}px`,transition:o})}return v({left:`calc(${it*gt}%)`,width:`${gt}%`,transition:o,animationDuration:`${A}ms`,animationFillMode:"forwards"})},[it,A,ut,rt,gt,J,Y]);return(null==U?void 0:U.length)?e("div",{className:st,ref:K,children:[t(u,{styleConfig:{root:[y.animatedContainer,...$]},children:(ht=U,!(!ht||0===ht.length)&&U.map((e,o)=>t("div",{ref:t=>{N.current[o]=t},className:dt,children:t(C,{option:e,index:o,activeIndex:it,disabled:g,onOptionClick:nt,optionLength:rt,variant:h,styleConfig:lt(o)})},e.tabId)))}),t("div",{className:`${ct} ${mt}`})]}):null;var ht};export{w as Segment,f as SegmentVariant};
2
2
  //# sourceMappingURL=ct-design-segment.browser.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ct-design-segment.browser.esm.js","sources":["../packages/components/Segment/src/style.ts","../packages/components/Segment/src/Segment.tsx"],"sourcesContent":[null,null],"names":["StyledSegment","styled","div","_a","theme","isBlock","_b","css","__assign","display","border","borderRadius","overflow","background","color","disabled","width","position","height","getSegmentStyle","SegmentOption","isActive","text","primary","subHeading","zIndex","padding","getSegmentOptionStyle","StyledSegmentBtn","button","fontSize","fontWeight","lineHeight","borderColor","cursor","getStyledSegmentButtonStyles","StyledAnimatedContainerBlock","StyledAnimatedBlock","activeIndex","animationLength","offsetLeft","backgroundColor","top","left","concat","transition","animationDuration","animationFillMode","getStyledAnimatedBlock","Segment","block","onChange","_c","options","activeTabId","_d","_e","styleConfig","useTheme","animatedBlock","animatedContainer","optionButtonWrapper","root","segmentButton","_f","useState","tabId","activeTabEleId","setActiveTabEleId","_g","animateSegment","setAnimateSegment","useIsomorphicEffect","id","_jsxs","map","option","index","_jsx","children","onClick","toAnimate","findIndex","item"],"mappings":"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"}
1
+ {"version":3,"file":"ct-design-segment.browser.esm.js","sources":["../packages/components/Segment/src/constants.ts","../packages/components/Segment/src/style.ts","../packages/components/Segment/src/SegmentButton.tsx","../packages/components/Segment/src/Segment.tsx"],"sourcesContent":[null,null,null,null],"names":["SegmentVariant","segmentStaticStyles","makeStyles","theme","trackHeight","size","borderWidth","border","width","sm","trackInnerHeight","Math","max","thumbInset","spacing","trackRadius","trackInnerRadius","thumbRadius","root","display","flexDirection","borderColor","borderRadius","overflow","backgroundColor","color","background","disabled","position","height","alignItems","padding","button","fontSize","typography","fontWeight","weight","medium","lineHeight","default","textAlign","justifyContent","animatedBlock","top","neutral","animatedContainer","tabMeasureCell","flexGrow","flexShrink","flexBasis","minWidth","animatedBlockWidth","segmentWebThumbStyles","thumbHeight","boxShadow","getStyledSegmentButtonStyles","isActive","tab","selectedPrimaryLabel","nonSelectedPrimaryLabel","SegmentButton","option","index","activeIndex","onOptionClick","styleConfig","variant","optionLength","_optionLength","useTheme","segmentButton","segmentText","shell","useStyles","t","rowCell","minHeight","undefined","alignSelf","maxHeight","paddingHorizontal","paddingTop","paddingBottom","paddingVertical","dynamicStyles","innerTheme","DARK","marginTop","marginBottom","text","primary","segmentTextRoot","Array","isArray","_jsx","Button","ButtonVariant","BARE","ButtonColor","TERTIARY","ButtonSize","SMALL","isFullWidth","prefixIcon","icon","onClick","tabId","Object","assign","_a","children","_b","toStyleArray","value","Segment","block","enableTabClick","DEFAULT","onChange","options","activeTabId","animationDuration","optionButtonWrapper","segmentButtonConfig","optionButtonWrapperActive","segmentButtonActive","variantStyles","useMemo","style","defaultDarkest","disabledDark","getSegmentVariantStyles","rootRef","useRef","tabRefs","sanitizedOptions","filter","String","trim","length","activeTabEleId","setActiveTabEleId","useState","trackWidth","setTrackWidth","tabLayouts","setTabLayouts","baseSegmentButtonConfig","baseSegmentTextConfig","baseSegmentButtonRoot","baseSegmentTextRoot","measureTabs","useCallback","rootNode","current","rootRect","getBoundingClientRect","layouts","map","_","tabNode","x","rect","left","useEffect","slice","ResizeObserver","observer","observe","forEach","disconnect","findActiveIndex","id","idx","findIndex","item","handleOptionClick","clickedOption","isDisabled","getSegmentButtonStyleConfig","useIsomorphicEffect","some","prev","trimmed","rootClassName","useWebMergeStyles","_c","_d","tabMeasureCellClassName","webThumbBaseClassName","_e","_f","hasStableMeasurements","every","layout","segmentPercent","dynamicWebStyles","transition","safeIndex","min","activeLayout","maxLeft","css","animationFillMode","_jsxs","className","ref","Container","opts","element"],"mappings":"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"}