@cleartrip/ct-design-chip-dropdown 4.0.0-TEST.3 → 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 +80 -0
- package/dist/ChipDropdown.d.ts +3 -3
- package/dist/ChipDropdown.d.ts.map +1 -1
- package/dist/ChipDropdown.native.d.ts +5 -0
- package/dist/ChipDropdown.native.d.ts.map +1 -0
- package/dist/ct-design-chip-dropdown.browser.cjs.js +1 -1
- package/dist/ct-design-chip-dropdown.browser.cjs.js.map +1 -1
- package/dist/ct-design-chip-dropdown.browser.esm.js +1 -1
- package/dist/ct-design-chip-dropdown.browser.esm.js.map +1 -1
- package/dist/ct-design-chip-dropdown.cjs.js +52 -38
- package/dist/ct-design-chip-dropdown.cjs.js.map +1 -1
- package/dist/ct-design-chip-dropdown.esm.js +54 -36
- package/dist/ct-design-chip-dropdown.esm.js.map +1 -1
- package/dist/ct-design-chip-dropdown.umd.js +63 -76
- package/dist/ct-design-chip-dropdown.umd.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.native.d.ts +3 -0
- package/dist/index.native.d.ts.map +1 -0
- package/dist/style.d.ts +27 -0
- package/dist/style.d.ts.map +1 -0
- package/dist/type.d.ts +18 -14
- package/dist/type.d.ts.map +1 -1
- package/package.json +29 -12
- package/src/ChipDropdown.native.tsx +119 -0
- package/src/ChipDropdown.tsx +119 -0
- package/src/index.native.ts +2 -0
- package/src/index.ts +2 -0
- package/src/style.ts +49 -0
- package/src/type.ts +59 -0
- package/dist/StyledChipArrow/StyledChipArrow.d.ts +0 -9
- package/dist/StyledChipArrow/StyledChipArrow.d.ts.map +0 -1
- package/dist/StyledChipArrow/index.d.ts +0 -2
- package/dist/StyledChipArrow/index.d.ts.map +0 -1
- package/dist/StyledChipArrow/type.d.ts +0 -4
- package/dist/StyledChipArrow/type.d.ts.map +0 -1
package/README.md
ADDED
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
# ChipDropdown
|
|
2
|
+
|
|
3
|
+
A dropdown component styled as a chip for space-efficient selection.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Installation
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
npm install @cleartrip/ct-design-chip-dropdown
|
|
11
|
+
# or
|
|
12
|
+
pnpm add @cleartrip/ct-design-chip-dropdown
|
|
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 { ChipDropdown } from '@cleartrip/ct-design-chip-dropdown';
|
|
36
|
+
|
|
37
|
+
function Example() {
|
|
38
|
+
return (
|
|
39
|
+
<ChipDropdown>
|
|
40
|
+
{/* Basic usage */}
|
|
41
|
+
</ChipDropdown>
|
|
42
|
+
);
|
|
43
|
+
}
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
## Props
|
|
49
|
+
|
|
50
|
+
| Prop | Type | Default | Required | Description |
|
|
51
|
+
|------|------|---------|----------|-------------|
|
|
52
|
+
| `width` | `number` | — | Yes | width property |
|
|
53
|
+
| `isDefaultOptionSelected` | `boolean` | — | No | isDefaultOptionSelected property |
|
|
54
|
+
| `defaultChipLabel` | `string` | — | No | defaultChipLabel property |
|
|
55
|
+
| `optionList` | `DropdownProps['itemList']` | — | Yes | optionList property |
|
|
56
|
+
| `selectedOption` | `string` | — | No | selectedOption property |
|
|
57
|
+
| `showDropdown` | `boolean` | — | No | showDropdown property |
|
|
58
|
+
| `onClick` | `(key: string) => void` | — | No | onClick property |
|
|
59
|
+
| `dropdownHeight` | `number` | — | No | dropdownHeight property |
|
|
60
|
+
| `chipArrowDownIconProps` | `SVGProps<SVGSVGElement>` | — | No | chipArrowDownIconProps property |
|
|
61
|
+
| `styleConfig` | `IChipDropdownStyleConfig` | — | No | styleConfig property |
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## Accessibility
|
|
66
|
+
|
|
67
|
+
- The component follows accessibility best practices
|
|
68
|
+
- Ensure proper ARIA attributes are provided where needed
|
|
69
|
+
- Test with screen readers to ensure usability
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
## Migration
|
|
74
|
+
|
|
75
|
+
If migrating from a previous version:
|
|
76
|
+
|
|
77
|
+
```diff
|
|
78
|
+
- import { ChipDropdown } from 'yagami/core/components';
|
|
79
|
+
+ import { ChipDropdown } from '@cleartrip/ct-design-chip-dropdown';
|
|
80
|
+
```
|
package/dist/ChipDropdown.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
3
|
-
declare const ChipDropdown:
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
import { IChipDropdownProps } from './type';
|
|
3
|
+
declare const ChipDropdown: FC<IChipDropdownProps>;
|
|
4
4
|
export default ChipDropdown;
|
|
5
5
|
//# sourceMappingURL=ChipDropdown.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChipDropdown.d.ts","sourceRoot":"","sources":["../packages/components/ChipDropdown/src/ChipDropdown.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"ChipDropdown.d.ts","sourceRoot":"","sources":["../packages/components/ChipDropdown/src/ChipDropdown.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAA+B,MAAM,OAAO,CAAC;AAWxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAG5C,QAAA,MAAM,YAAY,EAAE,EAAE,CAAC,kBAAkB,CAqGxC,CAAC;AAGF,eAAe,YAAY,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChipDropdown.native.d.ts","sourceRoot":"","sources":["../packages/components/ChipDropdown/src/ChipDropdown.native.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAA+B,MAAM,OAAO,CAAC;AAUxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAS5C,QAAA,MAAM,YAAY,EAAE,EAAE,CAAC,kBAAkB,CAgGxC,CAAC;AAGF,eAAe,YAAY,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("
|
|
1
|
+
"use strict";var e=require("react/jsx-runtime"),r=require("react"),o=require("@cleartrip/ct-design-container"),t=require("@cleartrip/ct-design-chip"),i=require("@cleartrip/ct-design-dropdown"),n=require("@cleartrip/ct-design-outside-click-handler"),s=require("@cleartrip/ct-design-style-manager"),c=require("@cleartrip/ct-design-theme"),l=require("@cleartrip/ct-design-icons"),a=require("@cleartrip/ct-design-types");const p=s.makeStyles(()=>({root:{position:"relative",alignSelf:"flex-start"},dropdownContainer:{position:"absolute",left:0,top:40,zIndex:1},chipArrowWrapper:{display:"flex",alignItems:"center",justifyContent:"center"}}));const d=({optionList:d,isDefaultOptionSelected:u=!0,defaultChipLabel:h="",selectedOption:g="",showDropdown:w=!1,onClick:C,dropdownHeight:f=500,chipArrowDownIconProps:y,styleConfig:x})=>{const k=r.useRef(!1),[m,j]=r.useState(!0),[q,D]=r.useState(w),S=c.useTheme(),{root:b=[],chip:I,dropdownContainer:A=[],dropdown:O,chipArrowWrapper:W=[]}=x||{},v=s.useStyles(()=>{return{chipArrowWrapper:(e=q,{transform:e?"rotate(180deg)":"rotate(0deg)"})};var e},[q]),H=(()=>{for(const e of d){const{key:r,label:o}=e;if(r===g)return o}return""})(),L=u||q||""!==H;return r.useEffect(()=>{k.current?j(L):(j(u),k.current=!0)},[u,q,H]),e.jsx(o.Container,{styleConfig:{root:[p.root,...b]},children:e.jsxs(n.OutsideClickHandler,{onOutsideClick:()=>{D(!1)},children:[e.jsx(t.Chip,{showIcon:!0,Icon:e.jsx(o.Container,{styleConfig:{root:[p.chipArrowWrapper,v.chipArrowWrapper,...W]},children:e.jsx(l.ChipArrowDownSmall,Object.assign({color:m?S.color.background.link2:S.color.background.defaultDarkest},y||{}))}),iconPosition:a.IconPosition.RIGHT,label:H||h,isSelected:m,onClick:()=>{D(e=>!e)},styleConfig:I}),q&&e.jsx(o.Container,{styleConfig:{root:[p.dropdownContainer,...A]},children:e.jsx(i.Dropdown,{itemList:d,dropDownValue:g,onItemSelect:e=>{null==C||C(e.label),D(e=>!e)},height:f,styleConfig:O})})]})})};d.displayName="ChipDropdown",exports.ChipDropdown=d;
|
|
2
2
|
//# sourceMappingURL=ct-design-chip-dropdown.browser.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ct-design-chip-dropdown.browser.cjs.js","sources":["../packages/components/ChipDropdown/src/
|
|
1
|
+
{"version":3,"file":"ct-design-chip-dropdown.browser.cjs.js","sources":["../packages/components/ChipDropdown/src/style.ts","../packages/components/ChipDropdown/src/ChipDropdown.tsx"],"sourcesContent":[null,null],"names":["staticStyles","makeStyles","root","position","alignSelf","dropdownContainer","left","top","zIndex","chipArrowWrapper","display","alignItems","justifyContent","ChipDropdown","optionList","isDefaultOptionSelected","defaultChipLabel","selectedOption","showDropdown","onClick","dropdownHeight","chipArrowDownIconProps","styleConfig","chipRef","useRef","isActiveChip","setIsActiveChip","useState","isDropdownOpen","setIsDropdownOpen","theme","useTheme","rootStyles","chip","chipStyleConfig","dropdownContainerStyles","dropdown","dropdownStyleConfig","chipArrowWrapperStyles","dynamicStyles","useStyles","isOpen","transform","chipLabel","optionItem","key","label","getChipLabel","isChipActive","useEffect","current","_jsx","jsx","Container","children","_jsxs","OutsideClickHandler","onOutsideClick","Chip","showIcon","Icon","ChipArrowDownSmall","Object","assign","color","background","link2","defaultDarkest","iconPosition","IconPosition","RIGHT","isSelected","open","Dropdown","itemList","dropDownValue","onItemSelect","item","height","displayName"],"mappings":"iaAQA,MAAMA,EAAeC,EAAUA,WAAC,KAAO,CACrCC,KAAM,CACJC,SAAU,WAGVC,UAAW,cAEbC,kBAAmB,CACjBF,SAAU,WACVG,KAAM,EACNC,IAAK,GACLC,OAAQ,GAEVC,iBAAkB,CAChBC,QAAS,OACTC,WAAY,SACZC,eAAgB,aCVpB,MAAMC,EAAuC,EAC3CC,aACAC,2BAA0B,EAC1BC,mBAAmB,GACnBC,iBAAiB,GACjBC,gBAAe,EACfC,UACAC,iBAAiB,IACjBC,yBACAC,kBAEA,MAAMC,EAAUC,UAAO,IAChBC,EAAcC,GAAmBC,EAAQA,UAAC,IAC1CC,EAAgBC,GAAqBF,EAAQA,SAACT,GAC/CY,EAAQC,EAAAA,YAGZ7B,KAAM8B,EAAa,GACnBC,KAAMC,EACN7B,kBAAmB8B,EAA0B,GAC7CC,SAAUC,EACV5B,iBAAkB6B,EAAyB,IACzChB,GAAe,GAEbiB,EAAgBC,EAAAA,UACpB,KAAO,OACL/B,kBDRkCgC,ECQQb,EDPvC,CACLc,UAAWD,EAAS,iBAAmB,kBAFrC,IAAkCA,GCUpC,CAACb,IAkBGe,EARe,MACnB,IAAK,MAAMC,KAAc9B,EAAY,CACnC,MAAM+B,IAAEA,EAAGC,MAAEA,GAAUF,EACvB,GAAIC,IAAQ5B,EAAgB,OAAO6B,CACpC,CACD,MAAO,IAGSC,GACZC,EAAejC,GAA2Ba,GAAgC,KAAde,EAiBlE,OAVAM,EAAAA,UAAU,KACJ1B,EAAQ2B,QACVxB,EAAgBsB,IAEhBtB,EAAgBX,GAChBQ,EAAQ2B,SAAU,IAGnB,CAACnC,EAAyBa,EAAgBe,IAG3CQ,EAACC,IAAAC,EAASA,UAAC,CAAA/B,YAAa,CAAEpB,KAAM,CAACF,EAAaE,QAAS8B,IACrDsB,SAAAC,EAAAA,KAACC,EAAAA,oBAAoB,CAAAC,eAhCJ,KACnB5B,GAAkB,cAgCdsB,EAAAA,IAACO,EAAAA,KACC,CAAAC,YACAC,KACET,EAAAA,IAACE,EAASA,UAAA,CACR/B,YAAa,CACXpB,KAAM,CAACF,EAAaS,iBAAkB8B,EAAc9B,oBAAqB6B,IAG3EgB,SAAAH,EAAAA,IAACU,EAAAA,mBAAkBC,OAAAC,OAAA,CACjBC,MAAOvC,EAAeK,EAAMkC,MAAMC,WAAWC,MAAQpC,EAAMkC,MAAMC,WAAWE,gBACvE9C,GAA0B,CAAA,MAIrC+C,aAAcC,EAAAA,aAAaC,MAC3BxB,MAAOH,GAAa3B,EACpBuD,WAAY9C,EACZN,QArDgB,KACtBU,EAAmB2C,IAAUA,IAqDvBlD,YAAaY,IAEdN,GACCuB,EAAAA,IAACE,EAAAA,UAAS,CAAC/B,YAAa,CAAEpB,KAAM,CAACF,EAAaK,qBAAsB8B,IAClEmB,SAAAH,EAAAA,IAACsB,EAAAA,SACC,CAAAC,SAAU5D,EACV6D,cAAe1D,EACf2D,aA3CeC,IACzB1D,SAAAA,EAAU0D,EAAK/B,OACfjB,EAAmB2C,IAAUA,IA0CnBM,OAAQ1D,EACRE,YAAae,YAS3BxB,EAAakE,YAAc"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{jsx as r,jsxs as o}from"react/jsx-runtime";import{useRef as t,useState as e,useEffect as i}from"react";import{Container as n}from"@cleartrip/ct-design-container";import{Chip as c}from"@cleartrip/ct-design-chip";import{Dropdown as p}from"@cleartrip/ct-design-dropdown";import{OutsideClickHandler as l}from"@cleartrip/ct-design-outside-click-handler";import{makeStyles as a,useStyles as s}from"@cleartrip/ct-design-style-manager";import{useTheme as d}from"@cleartrip/ct-design-theme";import{ChipArrowDownSmall as f}from"@cleartrip/ct-design-icons";import{IconPosition as m}from"@cleartrip/ct-design-types";const g=a(()=>({root:{position:"relative",alignSelf:"flex-start"},dropdownContainer:{position:"absolute",left:0,top:40,zIndex:1},chipArrowWrapper:{display:"flex",alignItems:"center",justifyContent:"center"}}));const h=({optionList:a,isDefaultOptionSelected:h=!0,defaultChipLabel:u="",selectedOption:w="",showDropdown:C=!1,onClick:y,dropdownHeight:k=500,chipArrowDownIconProps:b,styleConfig:I})=>{const A=t(!1),[D,x]=e(!0),[W,O]=e(C),S=d(),{root:j=[],chip:L,dropdownContainer:v=[],dropdown:H,chipArrowWrapper:P=[]}=I||{},z=s(()=>{return{chipArrowWrapper:(r=W,{transform:r?"rotate(180deg)":"rotate(0deg)"})};var r},[W]),G=(()=>{for(const r of a){const{key:o,label:t}=r;if(o===w)return t}return""})(),N=h||W||""!==G;return i(()=>{A.current?x(N):(x(h),A.current=!0)},[h,W,G]),r(n,{styleConfig:{root:[g.root,...j]},children:o(l,{onOutsideClick:()=>{O(!1)},children:[r(c,{showIcon:!0,Icon:r(n,{styleConfig:{root:[g.chipArrowWrapper,z.chipArrowWrapper,...P]},children:r(f,Object.assign({color:D?S.color.background.link2:S.color.background.defaultDarkest},b||{}))}),iconPosition:m.RIGHT,label:G||u,isSelected:D,onClick:()=>{O(r=>!r)},styleConfig:L}),W&&r(n,{styleConfig:{root:[g.dropdownContainer,...v]},children:r(p,{itemList:a,dropDownValue:w,onItemSelect:r=>{null==y||y(r.label),O(r=>!r)},height:k,styleConfig:H})})]})})};h.displayName="ChipDropdown";export{h as ChipDropdown};
|
|
2
2
|
//# sourceMappingURL=ct-design-chip-dropdown.browser.esm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ct-design-chip-dropdown.browser.esm.js","sources":["../packages/components/ChipDropdown/src/
|
|
1
|
+
{"version":3,"file":"ct-design-chip-dropdown.browser.esm.js","sources":["../packages/components/ChipDropdown/src/style.ts","../packages/components/ChipDropdown/src/ChipDropdown.tsx"],"sourcesContent":[null,null],"names":["staticStyles","makeStyles","root","position","alignSelf","dropdownContainer","left","top","zIndex","chipArrowWrapper","display","alignItems","justifyContent","ChipDropdown","optionList","isDefaultOptionSelected","defaultChipLabel","selectedOption","showDropdown","onClick","dropdownHeight","chipArrowDownIconProps","styleConfig","chipRef","useRef","isActiveChip","setIsActiveChip","useState","isDropdownOpen","setIsDropdownOpen","theme","useTheme","rootStyles","chip","chipStyleConfig","dropdownContainerStyles","dropdown","dropdownStyleConfig","chipArrowWrapperStyles","dynamicStyles","useStyles","isOpen","transform","chipLabel","optionItem","key","label","getChipLabel","isChipActive","useEffect","current","_jsx","Container","children","_jsxs","OutsideClickHandler","onOutsideClick","Chip","showIcon","Icon","ChipArrowDownSmall","Object","assign","color","background","link2","defaultDarkest","iconPosition","IconPosition","RIGHT","isSelected","open","Dropdown","itemList","dropDownValue","onItemSelect","item","height","displayName"],"mappings":"mmBAQA,MAAMA,EAAeC,EAAW,KAAO,CACrCC,KAAM,CACJC,SAAU,WAGVC,UAAW,cAEbC,kBAAmB,CACjBF,SAAU,WACVG,KAAM,EACNC,IAAK,GACLC,OAAQ,GAEVC,iBAAkB,CAChBC,QAAS,OACTC,WAAY,SACZC,eAAgB,aCVpB,MAAMC,EAAuC,EAC3CC,aACAC,2BAA0B,EAC1BC,mBAAmB,GACnBC,iBAAiB,GACjBC,gBAAe,EACfC,UACAC,iBAAiB,IACjBC,yBACAC,kBAEA,MAAMC,EAAUC,GAAO,IAChBC,EAAcC,GAAmBC,GAAS,IAC1CC,EAAgBC,GAAqBF,EAAST,GAC/CY,EAAQC,KAGZ7B,KAAM8B,EAAa,GACnBC,KAAMC,EACN7B,kBAAmB8B,EAA0B,GAC7CC,SAAUC,EACV5B,iBAAkB6B,EAAyB,IACzChB,GAAe,GAEbiB,EAAgBC,EACpB,KAAO,OACL/B,kBDRkCgC,ECQQb,EDPvC,CACLc,UAAWD,EAAS,iBAAmB,kBAFrC,IAAkCA,GCUpC,CAACb,IAkBGe,EARe,MACnB,IAAK,MAAMC,KAAc9B,EAAY,CACnC,MAAM+B,IAAEA,EAAGC,MAAEA,GAAUF,EACvB,GAAIC,IAAQ5B,EAAgB,OAAO6B,CACpC,CACD,MAAO,IAGSC,GACZC,EAAejC,GAA2Ba,GAAgC,KAAde,EAiBlE,OAVAM,EAAU,KACJ1B,EAAQ2B,QACVxB,EAAgBsB,IAEhBtB,EAAgBX,GAChBQ,EAAQ2B,SAAU,IAGnB,CAACnC,EAAyBa,EAAgBe,IAG3CQ,EAACC,EAAU,CAAA9B,YAAa,CAAEpB,KAAM,CAACF,EAAaE,QAAS8B,IACrDqB,SAAAC,EAACC,EAAoB,CAAAC,eAhCJ,KACnB3B,GAAkB,cAgCdsB,EAACM,EACC,CAAAC,YACAC,KACER,EAACC,EAAS,CACR9B,YAAa,CACXpB,KAAM,CAACF,EAAaS,iBAAkB8B,EAAc9B,oBAAqB6B,IAG3Ee,SAAAF,EAACS,EAAkBC,OAAAC,OAAA,CACjBC,MAAOtC,EAAeK,EAAMiC,MAAMC,WAAWC,MAAQnC,EAAMiC,MAAMC,WAAWE,gBACvE7C,GAA0B,CAAA,MAIrC8C,aAAcC,EAAaC,MAC3BvB,MAAOH,GAAa3B,EACpBsD,WAAY7C,EACZN,QArDgB,KACtBU,EAAmB0C,IAAUA,IAqDvBjD,YAAaY,IAEdN,GACCuB,EAACC,EAAS,CAAC9B,YAAa,CAAEpB,KAAM,CAACF,EAAaK,qBAAsB8B,IAClEkB,SAAAF,EAACqB,EACC,CAAAC,SAAU3D,EACV4D,cAAezD,EACf0D,aA3CeC,IACzBzD,SAAAA,EAAUyD,EAAK9B,OACfjB,EAAmB0C,IAAUA,IA0CnBM,OAAQzD,EACRE,YAAae,YAS3BxB,EAAaiE,YAAc"}
|
|
@@ -1,68 +1,82 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var tslib = require('tslib');
|
|
4
3
|
var jsxRuntime = require('react/jsx-runtime');
|
|
5
4
|
var react = require('react');
|
|
6
5
|
var ctDesignContainer = require('@cleartrip/ct-design-container');
|
|
7
6
|
var ctDesignChip = require('@cleartrip/ct-design-chip');
|
|
8
|
-
var ctDesignTheme = require('@cleartrip/ct-design-theme');
|
|
9
7
|
var ctDesignDropdown = require('@cleartrip/ct-design-dropdown');
|
|
10
8
|
var ctDesignOutsideClickHandler = require('@cleartrip/ct-design-outside-click-handler');
|
|
11
|
-
var
|
|
9
|
+
var ctDesignStyleManager = require('@cleartrip/ct-design-style-manager');
|
|
10
|
+
var ctDesignTheme = require('@cleartrip/ct-design-theme');
|
|
12
11
|
var ctDesignIcons = require('@cleartrip/ct-design-icons');
|
|
12
|
+
var ctDesignTypes = require('@cleartrip/ct-design-types');
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
14
|
+
const staticStyles = ctDesignStyleManager.makeStyles(() => ({
|
|
15
|
+
root: {
|
|
16
|
+
position: 'relative',
|
|
17
|
+
alignSelf: 'flex-start',
|
|
18
|
+
},
|
|
19
|
+
dropdownContainer: {
|
|
20
|
+
position: 'absolute',
|
|
21
|
+
left: 0,
|
|
22
|
+
top: 40,
|
|
23
|
+
zIndex: 1,
|
|
24
|
+
},
|
|
25
|
+
chipArrowWrapper: {
|
|
26
|
+
display: 'flex',
|
|
27
|
+
alignItems: 'center',
|
|
28
|
+
justifyContent: 'center',
|
|
29
|
+
},
|
|
30
|
+
}));
|
|
31
|
+
function getChipArrowRotationWeb(isOpen) {
|
|
32
|
+
return {
|
|
33
|
+
transform: isOpen ? 'rotate(180deg)' : 'rotate(0deg)',
|
|
34
|
+
};
|
|
35
|
+
}
|
|
26
36
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
37
|
+
const ChipDropdown = ({ optionList, isDefaultOptionSelected = true, defaultChipLabel = '', selectedOption = '', showDropdown = false, onClick, dropdownHeight = 500, chipArrowDownIconProps, styleConfig, }) => {
|
|
38
|
+
const chipRef = react.useRef(false);
|
|
39
|
+
const [isActiveChip, setIsActiveChip] = react.useState(true);
|
|
40
|
+
const [isDropdownOpen, setIsDropdownOpen] = react.useState(showDropdown);
|
|
41
|
+
const theme = ctDesignTheme.useTheme();
|
|
42
|
+
const { root: rootStyles = [], chip: chipStyleConfig, dropdownContainer: dropdownContainerStyles = [], dropdown: dropdownStyleConfig, chipArrowWrapper: chipArrowWrapperStyles = [], } = styleConfig || {};
|
|
43
|
+
const dynamicStyles = ctDesignStyleManager.useStyles(() => ({
|
|
44
|
+
chipArrowWrapper: getChipArrowRotationWeb(isDropdownOpen),
|
|
45
|
+
}), [isDropdownOpen]);
|
|
46
|
+
const dropdownHandler = () => {
|
|
47
|
+
setIsDropdownOpen((open) => !open);
|
|
36
48
|
};
|
|
37
|
-
|
|
49
|
+
const closeHandler = () => {
|
|
38
50
|
setIsDropdownOpen(false);
|
|
39
51
|
};
|
|
40
|
-
|
|
41
|
-
for (
|
|
42
|
-
|
|
43
|
-
var key = optionItem.key, label = optionItem.label;
|
|
52
|
+
const getChipLabel = () => {
|
|
53
|
+
for (const optionItem of optionList) {
|
|
54
|
+
const { key, label } = optionItem;
|
|
44
55
|
if (key === selectedOption)
|
|
45
56
|
return label;
|
|
46
57
|
}
|
|
47
58
|
return '';
|
|
48
59
|
};
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
60
|
+
const chipLabel = getChipLabel();
|
|
61
|
+
const isChipActive = isDefaultOptionSelected || isDropdownOpen || chipLabel !== '';
|
|
62
|
+
const onClickOfDropdown = (item) => {
|
|
63
|
+
onClick === null || onClick === void 0 ? void 0 : onClick(item.label);
|
|
64
|
+
setIsDropdownOpen((open) => !open);
|
|
53
65
|
};
|
|
54
|
-
react.useEffect(
|
|
66
|
+
react.useEffect(() => {
|
|
55
67
|
if (chipRef.current) {
|
|
56
|
-
|
|
57
|
-
setIsActiveChip(isChipActive_1);
|
|
68
|
+
setIsActiveChip(isChipActive);
|
|
58
69
|
}
|
|
59
70
|
else {
|
|
60
71
|
setIsActiveChip(isDefaultOptionSelected);
|
|
61
72
|
chipRef.current = true;
|
|
62
73
|
}
|
|
63
|
-
}, [isDefaultOptionSelected, isDropdownOpen]);
|
|
64
|
-
return (jsxRuntime.jsx(ctDesignContainer.Container,
|
|
74
|
+
}, [isDefaultOptionSelected, isDropdownOpen, chipLabel]);
|
|
75
|
+
return (jsxRuntime.jsx(ctDesignContainer.Container, { styleConfig: { root: [staticStyles.root, ...rootStyles] }, children: jsxRuntime.jsxs(ctDesignOutsideClickHandler.OutsideClickHandler, { onOutsideClick: closeHandler, children: [jsxRuntime.jsx(ctDesignChip.Chip, { showIcon: true, Icon: jsxRuntime.jsx(ctDesignContainer.Container, { styleConfig: {
|
|
76
|
+
root: [staticStyles.chipArrowWrapper, dynamicStyles.chipArrowWrapper, ...chipArrowWrapperStyles],
|
|
77
|
+
}, children: jsxRuntime.jsx(ctDesignIcons.ChipArrowDownSmall, Object.assign({ color: isActiveChip ? theme.color.background.link2 : theme.color.background.defaultDarkest }, (chipArrowDownIconProps || {}))) }), iconPosition: ctDesignTypes.IconPosition.RIGHT, label: chipLabel || defaultChipLabel, isSelected: isActiveChip, onClick: dropdownHandler, styleConfig: chipStyleConfig }), isDropdownOpen && (jsxRuntime.jsx(ctDesignContainer.Container, { styleConfig: { root: [staticStyles.dropdownContainer, ...dropdownContainerStyles] }, children: jsxRuntime.jsx(ctDesignDropdown.Dropdown, { itemList: optionList, dropDownValue: selectedOption, onItemSelect: onClickOfDropdown, height: dropdownHeight, styleConfig: dropdownStyleConfig }) }))] }) }));
|
|
65
78
|
};
|
|
79
|
+
ChipDropdown.displayName = 'ChipDropdown';
|
|
66
80
|
|
|
67
81
|
exports.ChipDropdown = ChipDropdown;
|
|
68
82
|
//# sourceMappingURL=ct-design-chip-dropdown.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ct-design-chip-dropdown.cjs.js","sources":["../packages/components/ChipDropdown/src/
|
|
1
|
+
{"version":3,"file":"ct-design-chip-dropdown.cjs.js","sources":["../packages/components/ChipDropdown/src/style.ts","../packages/components/ChipDropdown/src/ChipDropdown.tsx"],"sourcesContent":[null,null],"names":["makeStyles","useRef","useState","useTheme","useStyles","useEffect","_jsx","Container","_jsxs","OutsideClickHandler","Chip","ChipArrowDownSmall","IconPosition","Dropdown"],"mappings":"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"}
|
|
@@ -1,62 +1,80 @@
|
|
|
1
|
-
import { __assign, __rest } from 'tslib';
|
|
2
1
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
3
2
|
import { useRef, useState, useEffect } from 'react';
|
|
4
3
|
import { Container } from '@cleartrip/ct-design-container';
|
|
5
4
|
import { Chip } from '@cleartrip/ct-design-chip';
|
|
6
|
-
import {
|
|
7
|
-
import { Dropdown, DropdownVarient } from '@cleartrip/ct-design-dropdown';
|
|
5
|
+
import { Dropdown } from '@cleartrip/ct-design-dropdown';
|
|
8
6
|
import { OutsideClickHandler } from '@cleartrip/ct-design-outside-click-handler';
|
|
9
|
-
import
|
|
10
|
-
import {
|
|
7
|
+
import { makeStyles, useStyles } from '@cleartrip/ct-design-style-manager';
|
|
8
|
+
import { useTheme } from '@cleartrip/ct-design-theme';
|
|
9
|
+
import { ChipArrowDownSmall } from '@cleartrip/ct-design-icons';
|
|
10
|
+
import { IconPosition } from '@cleartrip/ct-design-types';
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
12
|
+
const staticStyles = makeStyles(() => ({
|
|
13
|
+
root: {
|
|
14
|
+
position: 'relative',
|
|
15
|
+
alignSelf: 'flex-start',
|
|
16
|
+
},
|
|
17
|
+
dropdownContainer: {
|
|
18
|
+
position: 'absolute',
|
|
19
|
+
left: 0,
|
|
20
|
+
top: 40,
|
|
21
|
+
zIndex: 1,
|
|
22
|
+
},
|
|
23
|
+
chipArrowWrapper: {
|
|
24
|
+
display: 'flex',
|
|
25
|
+
alignItems: 'center',
|
|
26
|
+
justifyContent: 'center',
|
|
27
|
+
},
|
|
28
|
+
}));
|
|
29
|
+
function getChipArrowRotationWeb(isOpen) {
|
|
30
|
+
return {
|
|
31
|
+
transform: isOpen ? 'rotate(180deg)' : 'rotate(0deg)',
|
|
32
|
+
};
|
|
33
|
+
}
|
|
20
34
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
35
|
+
const ChipDropdown = ({ optionList, isDefaultOptionSelected = true, defaultChipLabel = '', selectedOption = '', showDropdown = false, onClick, dropdownHeight = 500, chipArrowDownIconProps, styleConfig, }) => {
|
|
36
|
+
const chipRef = useRef(false);
|
|
37
|
+
const [isActiveChip, setIsActiveChip] = useState(true);
|
|
38
|
+
const [isDropdownOpen, setIsDropdownOpen] = useState(showDropdown);
|
|
39
|
+
const theme = useTheme();
|
|
40
|
+
const { root: rootStyles = [], chip: chipStyleConfig, dropdownContainer: dropdownContainerStyles = [], dropdown: dropdownStyleConfig, chipArrowWrapper: chipArrowWrapperStyles = [], } = styleConfig || {};
|
|
41
|
+
const dynamicStyles = useStyles(() => ({
|
|
42
|
+
chipArrowWrapper: getChipArrowRotationWeb(isDropdownOpen),
|
|
43
|
+
}), [isDropdownOpen]);
|
|
44
|
+
const dropdownHandler = () => {
|
|
45
|
+
setIsDropdownOpen((open) => !open);
|
|
30
46
|
};
|
|
31
|
-
|
|
47
|
+
const closeHandler = () => {
|
|
32
48
|
setIsDropdownOpen(false);
|
|
33
49
|
};
|
|
34
|
-
|
|
35
|
-
for (
|
|
36
|
-
|
|
37
|
-
var key = optionItem.key, label = optionItem.label;
|
|
50
|
+
const getChipLabel = () => {
|
|
51
|
+
for (const optionItem of optionList) {
|
|
52
|
+
const { key, label } = optionItem;
|
|
38
53
|
if (key === selectedOption)
|
|
39
54
|
return label;
|
|
40
55
|
}
|
|
41
56
|
return '';
|
|
42
57
|
};
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
58
|
+
const chipLabel = getChipLabel();
|
|
59
|
+
const isChipActive = isDefaultOptionSelected || isDropdownOpen || chipLabel !== '';
|
|
60
|
+
const onClickOfDropdown = (item) => {
|
|
61
|
+
onClick === null || onClick === void 0 ? void 0 : onClick(item.label);
|
|
62
|
+
setIsDropdownOpen((open) => !open);
|
|
47
63
|
};
|
|
48
|
-
useEffect(
|
|
64
|
+
useEffect(() => {
|
|
49
65
|
if (chipRef.current) {
|
|
50
|
-
|
|
51
|
-
setIsActiveChip(isChipActive_1);
|
|
66
|
+
setIsActiveChip(isChipActive);
|
|
52
67
|
}
|
|
53
68
|
else {
|
|
54
69
|
setIsActiveChip(isDefaultOptionSelected);
|
|
55
70
|
chipRef.current = true;
|
|
56
71
|
}
|
|
57
|
-
}, [isDefaultOptionSelected, isDropdownOpen]);
|
|
58
|
-
return (jsx(Container,
|
|
72
|
+
}, [isDefaultOptionSelected, isDropdownOpen, chipLabel]);
|
|
73
|
+
return (jsx(Container, { styleConfig: { root: [staticStyles.root, ...rootStyles] }, children: jsxs(OutsideClickHandler, { onOutsideClick: closeHandler, children: [jsx(Chip, { showIcon: true, Icon: jsx(Container, { styleConfig: {
|
|
74
|
+
root: [staticStyles.chipArrowWrapper, dynamicStyles.chipArrowWrapper, ...chipArrowWrapperStyles],
|
|
75
|
+
}, children: jsx(ChipArrowDownSmall, Object.assign({ color: isActiveChip ? theme.color.background.link2 : theme.color.background.defaultDarkest }, (chipArrowDownIconProps || {}))) }), iconPosition: IconPosition.RIGHT, label: chipLabel || defaultChipLabel, isSelected: isActiveChip, onClick: dropdownHandler, styleConfig: chipStyleConfig }), isDropdownOpen && (jsx(Container, { styleConfig: { root: [staticStyles.dropdownContainer, ...dropdownContainerStyles] }, children: jsx(Dropdown, { itemList: optionList, dropDownValue: selectedOption, onItemSelect: onClickOfDropdown, height: dropdownHeight, styleConfig: dropdownStyleConfig }) }))] }) }));
|
|
59
76
|
};
|
|
77
|
+
ChipDropdown.displayName = 'ChipDropdown';
|
|
60
78
|
|
|
61
79
|
export { ChipDropdown };
|
|
62
80
|
//# sourceMappingURL=ct-design-chip-dropdown.esm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ct-design-chip-dropdown.esm.js","sources":["../packages/components/ChipDropdown/src/
|
|
1
|
+
{"version":3,"file":"ct-design-chip-dropdown.esm.js","sources":["../packages/components/ChipDropdown/src/style.ts","../packages/components/ChipDropdown/src/ChipDropdown.tsx"],"sourcesContent":[null,null],"names":["_jsx","_jsxs"],"mappings":"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"}
|