@space-uy/pulsar-ui 0.11.2 → 0.11.4
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/lib/module/components/CalendarPicker.js +13 -2
- package/lib/module/components/CalendarPicker.js.map +1 -1
- package/lib/module/components/Header.js +1 -1
- package/lib/module/components/Header.js.map +1 -1
- package/lib/module/components/Input.js +2 -0
- package/lib/module/components/Input.js.map +1 -1
- package/lib/module/components/InputContainer.js +3 -0
- package/lib/module/components/InputContainer.js.map +1 -1
- package/lib/module/components/OtpInput.js +173 -65
- package/lib/module/components/OtpInput.js.map +1 -1
- package/lib/module/components/TextArea.js +2 -0
- package/lib/module/components/TextArea.js.map +1 -1
- package/lib/module/index.js +0 -1
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/src/components/CalendarPicker.d.ts +18 -1
- package/lib/typescript/src/components/CalendarPicker.d.ts.map +1 -1
- package/lib/typescript/src/components/Header.d.ts +2 -1
- package/lib/typescript/src/components/Header.d.ts.map +1 -1
- package/lib/typescript/src/components/Input.d.ts +1 -0
- package/lib/typescript/src/components/Input.d.ts.map +1 -1
- package/lib/typescript/src/components/InputContainer.d.ts +2 -1
- package/lib/typescript/src/components/InputContainer.d.ts.map +1 -1
- package/lib/typescript/src/components/OtpInput.d.ts +9 -2
- package/lib/typescript/src/components/OtpInput.d.ts.map +1 -1
- package/lib/typescript/src/components/TextArea.d.ts +1 -0
- package/lib/typescript/src/components/TextArea.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +0 -2
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/CalendarPicker.tsx +63 -32
- package/src/components/Header.tsx +3 -2
- package/src/components/Input.tsx +3 -0
- package/src/components/InputContainer.tsx +8 -0
- package/src/components/OtpInput.tsx +222 -93
- package/src/components/TextArea.tsx +3 -0
- package/src/index.tsx +0 -2
- package/lib/module/components/OtpInputContainer.js +0 -148
- package/lib/module/components/OtpInputContainer.js.map +0 -1
- package/lib/typescript/src/components/OtpInputContainer.d.ts +0 -17
- package/lib/typescript/src/components/OtpInputContainer.d.ts.map +0 -1
- package/src/components/OtpInputContainer.tsx +0 -196
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["default","Button","Tabs","Input","Text","Card","Select","useUIKitTheme","LoadingIndicator","Checkbox","Chip","Icon","IconButton","Header","Switch","ButtonContainer","ButtonVariant","ButtonSize","convertHexToRgba","BottomSheet","TextArea","
|
|
1
|
+
{"version":3,"names":["default","Button","Tabs","Input","Text","Card","Select","useUIKitTheme","LoadingIndicator","Checkbox","Chip","Icon","IconButton","Header","Switch","ButtonContainer","ButtonVariant","ButtonSize","convertHexToRgba","BottomSheet","TextArea","OtpInput","CalendarPicker","Accordion","AccordionItem","CopyToClipboard","Dialog","DialogHeader","DialogTitle","DialogDescription","DialogFooter","DialogAction","DialogCancel"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,SAASA,OAAO,IAAIC,MAAM,QAAQ,wBAAqB;AACvD,SAASD,OAAO,IAAIE,IAAI,QAAkB,sBAAmB;AAC7D,SAASF,OAAO,IAAIG,KAAK,QAAQ,uBAAoB;AACrD,SAASH,OAAO,IAAII,IAAI,QAAQ,sBAAmB;AACnD,SAASJ,OAAO,IAAIK,IAAI,QAAQ,sBAAmB;AACnD,SAASL,OAAO,IAAIM,MAAM,QAA2B,wBAAqB;AAC1E,SAASN,OAAO,IAAIO,aAAa,QAAQ,qBAAkB;AAE3D,SAASP,OAAO,IAAIQ,gBAAgB,QAAQ,kCAA+B;AAC3E,SAASR,OAAO,IAAIS,QAAQ,QAAQ,0BAAuB;AAC3D,SAAST,OAAO,IAAIU,IAAI,QAAQ,sBAAmB;AACnD,SAASV,OAAO,IAAIW,IAAI,QAAuB,sBAAmB;AAClE,SAASX,OAAO,IAAIY,UAAU,QAAQ,4BAAyB;AAC/D,SAASZ,OAAO,IAAIa,MAAM,QAA4B,wBAAqB;AAC3E,SAASb,OAAO,IAAIc,MAAM,QAAQ,wBAAqB;AACvD,SACEd,OAAO,IAAIe,eAAe,EAC1BC,aAAa,EACbC,UAAU,QACL,iCAA8B;AACrC,SAASC,gBAAgB,QAAQ,oBAAiB;AAClD,SAASlB,OAAO,IAAImB,WAAW,QAAQ,6BAA0B;AACjE,SAASnB,OAAO,IAAIoB,QAAQ,QAAQ,0BAAuB;AAC3D,SAASC,QAAQ,QAAQ,0BAAuB;AAChD,SAASrB,OAAO,IAAIsB,cAAc,QAAQ,gCAA6B;AACvE,SAAStB,OAAO,IAAIuB,SAAS,EAAEC,aAAa,QAAQ,2BAAwB;AAC5E,SAASC,eAAe,QAAQ,iCAA8B;AAC9D,SACEzB,OAAO,IAAI0B,MAAM,EACjBC,YAAY,EACZC,WAAW,EACXC,iBAAiB,EACjBC,YAAY,EACZC,YAAY,EACZC,YAAY,QACP,wBAAqB","ignoreList":[]}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { type StyleProp, type ViewStyle } from 'react-native';
|
|
2
|
+
import { type IconName } from './Icon';
|
|
2
3
|
type DateRange = {
|
|
3
4
|
fromDate?: string;
|
|
4
5
|
toDate?: string;
|
|
@@ -13,7 +14,23 @@ type Props = {
|
|
|
13
14
|
error?: boolean;
|
|
14
15
|
hint?: string;
|
|
15
16
|
title?: string;
|
|
17
|
+
/**
|
|
18
|
+
* Trigger rendering style.
|
|
19
|
+
* - `'input'` (default): full bordered input with label, icon, chevron and optional hint/error.
|
|
20
|
+
* - `'chip'`: compact pill (icon + text), ideal for filter toolbars.
|
|
21
|
+
* In `'chip'` mode, `label`, `hint` and `error` are ignored.
|
|
22
|
+
*/
|
|
23
|
+
variant?: 'input' | 'chip';
|
|
24
|
+
/**
|
|
25
|
+
* Text shown inside the chip when `variant='chip'`.
|
|
26
|
+
* Falls back to the formatted selected range, then to `placeholder`.
|
|
27
|
+
*/
|
|
28
|
+
chipText?: string;
|
|
29
|
+
/** Icon shown inside the chip when `variant='chip'`. Defaults to `'Calendar'`. */
|
|
30
|
+
chipIconName?: IconName;
|
|
31
|
+
/** Size of the chip trigger when `variant='chip'`. Defaults to `'normal'`. */
|
|
32
|
+
chipSize?: 'normal' | 'small';
|
|
16
33
|
};
|
|
17
|
-
declare const CalendarPicker: ({ style, value, onChange, placeholder, label, disabled, error, hint, }: Props) => import("react/jsx-runtime").JSX.Element;
|
|
34
|
+
declare const CalendarPicker: ({ style, value, onChange, placeholder, label, disabled, error, hint, variant, chipText, chipIconName, chipSize, }: Props) => import("react/jsx-runtime").JSX.Element;
|
|
18
35
|
export default CalendarPicker;
|
|
19
36
|
//# sourceMappingURL=CalendarPicker.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CalendarPicker.d.ts","sourceRoot":"","sources":["../../../../src/components/CalendarPicker.tsx"],"names":[],"mappings":"AAEA,OAAO,EAIL,KAAK,SAAS,EACd,KAAK,SAAS,EAEf,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"CalendarPicker.d.ts","sourceRoot":"","sources":["../../../../src/components/CalendarPicker.tsx"],"names":[],"mappings":"AAEA,OAAO,EAIL,KAAK,SAAS,EACd,KAAK,SAAS,EAEf,MAAM,cAAc,CAAC;AAYtB,OAAa,EAAE,KAAK,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAU7C,KAAK,SAAS,GAAG;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAExD,KAAK,KAAK,GAAG;IACX,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,QAAQ,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,IAAI,CAAC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;OAKG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kFAAkF;IAClF,YAAY,CAAC,EAAE,QAAQ,CAAC;IACxB,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;CAC/B,CAAC;AAoBF,QAAA,MAAM,cAAc,GAAI,mHAarB,KAAK,4CA+UP,CAAC;AA+BF,eAAe,cAAc,CAAC"}
|
|
@@ -2,10 +2,11 @@ import { type PropsWithChildren } from 'react';
|
|
|
2
2
|
import { type ViewStyle, type StyleProp } from 'react-native';
|
|
3
3
|
import { type SharedValue } from 'react-native-reanimated';
|
|
4
4
|
import { type IconName } from './Icon';
|
|
5
|
-
import type { ButtonVariant } from './ButtonContainer';
|
|
5
|
+
import type { ButtonSize, ButtonVariant } from './ButtonContainer';
|
|
6
6
|
export type HeaderVariant = 'default' | 'secondary';
|
|
7
7
|
type HeaderButtonProps = {
|
|
8
8
|
iconName: IconName;
|
|
9
|
+
iconSize?: keyof typeof ButtonSize;
|
|
9
10
|
onPress?: () => void;
|
|
10
11
|
disabled?: boolean;
|
|
11
12
|
variant?: keyof typeof ButtonVariant;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Header.d.ts","sourceRoot":"","sources":["../../../../src/components/Header.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAC/C,OAAO,EAAoB,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAChF,OAAiB,EAGf,KAAK,WAAW,EACjB,MAAM,yBAAyB,CAAC;AAIjC,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAKvC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"Header.d.ts","sourceRoot":"","sources":["../../../../src/components/Header.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAC/C,OAAO,EAAoB,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAChF,OAAiB,EAGf,KAAK,WAAW,EACjB,MAAM,yBAAyB,CAAC;AAIjC,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAKvC,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEnE,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,WAAW,CAAC;AAIpD,KAAK,iBAAiB,GAAG;IACvB,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,OAAO,UAAU,CAAC;IACnC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,OAAO,aAAa,CAAC;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,KAAK,KAAK,GAAG,iBAAiB,GAAG;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,+LAA+L;IAC/L,OAAO,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC9B,kGAAkG;IAClG,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAIF,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAC7B,KAAK,EACL,OAAmB,EACnB,UAAU,EACV,WAAW,EACX,KAAK,EACL,SAAgB,EAChB,QAAQ,EACR,OAAO,EACP,iBAA8C,GAC/C,EAAE,KAAK,2CAoKP"}
|
|
@@ -11,6 +11,7 @@ export declare const Input: import("react").ForwardRefExoticComponent<TextInputP
|
|
|
11
11
|
hint?: string;
|
|
12
12
|
iconName?: IconName;
|
|
13
13
|
variant?: "text" | "password";
|
|
14
|
+
containerVariant?: "default" | "alternative";
|
|
14
15
|
clearable?: boolean;
|
|
15
16
|
} & import("react").RefAttributes<InputRef>>;
|
|
16
17
|
export default Input;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../../src/components/Input.tsx"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,cAAc,EAKpB,MAAM,cAAc,CAAC;AAItB,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../../src/components/Input.tsx"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,cAAc,EAKpB,MAAM,cAAc,CAAC;AAItB,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAiBvC,MAAM,MAAM,QAAQ,GAAG;IAAE,KAAK,EAAE,MAAM,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,IAAI,CAAA;CAAE,CAAC;AAE/D,eAAO,MAAM,KAAK;YAZR,SAAS,CAAC,SAAS,CAAC;YACpB,OAAO;YACP,MAAM;WACP,MAAM;eACF,QAAQ;cACT,MAAM,GAAG,UAAU;uBACV,SAAS,GAAG,aAAa;gBAChC,OAAO;4CA6GpB,CAAC;AAUF,eAAe,KAAK,CAAC"}
|
|
@@ -11,12 +11,13 @@ type Props = PropsWithChildren & {
|
|
|
11
11
|
focused?: boolean;
|
|
12
12
|
disabled?: boolean;
|
|
13
13
|
size?: 'small' | 'default';
|
|
14
|
+
variant?: 'default' | 'alternative';
|
|
14
15
|
height?: number;
|
|
15
16
|
iconName?: IconName;
|
|
16
17
|
};
|
|
17
18
|
export type InputRef = {
|
|
18
19
|
focus: () => void;
|
|
19
20
|
};
|
|
20
|
-
export default function InputContainer({ style, contentContainerStyle, error, hint, label, onPress, focused, children, size, disabled, height, iconName, }: Props): import("react/jsx-runtime").JSX.Element;
|
|
21
|
+
export default function InputContainer({ style, contentContainerStyle, error, hint, label, onPress, focused, children, size, disabled, variant, height, iconName, }: Props): import("react/jsx-runtime").JSX.Element;
|
|
21
22
|
export {};
|
|
22
23
|
//# sourceMappingURL=InputContainer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputContainer.d.ts","sourceRoot":"","sources":["../../../../src/components/InputContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAAsB,MAAM,OAAO,CAAC;AACnE,OAAO,EAIL,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAUtB,OAAa,EAAE,KAAK,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAI7C,KAAK,KAAK,GAAG,iBAAiB,GAAG;IAC/B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,qBAAqB,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7C,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IAAE,KAAK,EAAE,MAAM,IAAI,CAAA;CAAE,CAAC;AAM7C,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EACrC,KAAK,EACL,qBAAqB,EACrB,KAAK,EACL,IAAI,EACJ,KAAK,EACL,OAAO,EACP,OAAO,EACP,QAAQ,EACR,IAAgB,EAChB,QAAQ,EACR,MAAM,EACN,QAAQ,GACT,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"InputContainer.d.ts","sourceRoot":"","sources":["../../../../src/components/InputContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAAsB,MAAM,OAAO,CAAC;AACnE,OAAO,EAIL,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAUtB,OAAa,EAAE,KAAK,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAI7C,KAAK,KAAK,GAAG,iBAAiB,GAAG;IAC/B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,qBAAqB,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7C,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3B,OAAO,CAAC,EAAE,SAAS,GAAG,aAAa,CAAC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IAAE,KAAK,EAAE,MAAM,IAAI,CAAA;CAAE,CAAC;AAM7C,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EACrC,KAAK,EACL,qBAAqB,EACrB,KAAK,EACL,IAAI,EACJ,KAAK,EACL,OAAO,EACP,OAAO,EACP,QAAQ,EACR,IAAgB,EAChB,QAAQ,EACR,OAAmB,EACnB,MAAM,EACN,QAAQ,GACT,EAAE,KAAK,2CAwEP"}
|
|
@@ -1,3 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
type OtpInputProps = {
|
|
2
|
+
length?: number;
|
|
3
|
+
value?: string;
|
|
4
|
+
onChange?: (code: string) => void;
|
|
5
|
+
secure?: boolean;
|
|
6
|
+
variant?: 'default' | 'alternative';
|
|
7
|
+
};
|
|
8
|
+
export declare function OtpInput({ length, value, onChange, secure, variant, }: OtpInputProps): import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
export {};
|
|
3
10
|
//# sourceMappingURL=OtpInput.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OtpInput.d.ts","sourceRoot":"","sources":["../../../../src/components/OtpInput.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"OtpInput.d.ts","sourceRoot":"","sources":["../../../../src/components/OtpInput.tsx"],"names":[],"mappings":"AAaA,KAAK,aAAa,GAAG;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,SAAS,GAAG,aAAa,CAAC;CACrC,CAAC;AAEF,wBAAgB,QAAQ,CAAC,EACvB,MAAU,EACV,KAAK,EACL,QAAQ,EACR,MAAc,EACd,OAAmB,GACpB,EAAE,aAAa,2CAmLf"}
|
|
@@ -11,6 +11,7 @@ export declare const TextArea: import("react").ForwardRefExoticComponent<TextInp
|
|
|
11
11
|
numberOfLines?: number;
|
|
12
12
|
maxLength?: number;
|
|
13
13
|
onChangeText?: (text: string) => void;
|
|
14
|
+
containerVariant?: "default" | "alternative";
|
|
14
15
|
} & import("react").RefAttributes<InputRef>>;
|
|
15
16
|
export default TextArea;
|
|
16
17
|
//# sourceMappingURL=TextArea.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextArea.d.ts","sourceRoot":"","sources":["../../../../src/components/TextArea.tsx"],"names":[],"mappings":"AAOA,OAAO,EAGL,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,cAAc,EAKpB,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"TextArea.d.ts","sourceRoot":"","sources":["../../../../src/components/TextArea.tsx"],"names":[],"mappings":"AAOA,OAAO,EAGL,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,cAAc,EAKpB,MAAM,cAAc,CAAC;AAoBtB,MAAM,MAAM,QAAQ,GAAG;IAAE,KAAK,EAAE,MAAM,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,IAAI,CAAA;CAAE,CAAC;AAE/D,eAAO,MAAM,QAAQ;YAZX,SAAS,CAAC,SAAS,CAAC;YACpB,OAAO;YACP,MAAM;WACP,MAAM;oBACG,MAAM;gBACV,MAAM;mBACH,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI;uBAClB,SAAS,GAAG,aAAa;4CAsG7C,CAAC;AASF,eAAe,QAAQ,CAAC"}
|
|
@@ -17,9 +17,7 @@ export { default as ButtonContainer, ButtonVariant, ButtonSize, } from './compon
|
|
|
17
17
|
export { convertHexToRgba } from './utils/uiUtils';
|
|
18
18
|
export { default as BottomSheet } from './components/BottomSheet';
|
|
19
19
|
export { default as TextArea } from './components/TextArea';
|
|
20
|
-
export { OtpInputContainer } from './components/OtpInputContainer';
|
|
21
20
|
export { OtpInput } from './components/OtpInput';
|
|
22
|
-
export { type OtpInputContainerRef } from './components/OtpInputContainer';
|
|
23
21
|
export { default as CalendarPicker } from './components/CalendarPicker';
|
|
24
22
|
export { default as Accordion, AccordionItem } from './components/Accordion';
|
|
25
23
|
export { CopyToClipboard } from './components/CopyToClipboard';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,KAAK,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC5D,YAAY,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,KAAK,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EACL,OAAO,IAAI,eAAe,EAC1B,aAAa,EACb,UAAU,GACX,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,KAAK,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC5D,YAAY,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,KAAK,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EACL,OAAO,IAAI,eAAe,EAC1B,aAAa,EACb,UAAU,GACX,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EACL,OAAO,IAAI,MAAM,EACjB,YAAY,EACZ,WAAW,EACX,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,YAAY,GACb,MAAM,qBAAqB,CAAC"}
|
package/package.json
CHANGED
|
@@ -19,9 +19,10 @@ import Animated, {
|
|
|
19
19
|
import InputContainer from './InputContainer';
|
|
20
20
|
import BottomSheet, { type BottomSheetProps } from './BottomSheet';
|
|
21
21
|
import Text from './Text';
|
|
22
|
-
import Icon from './Icon';
|
|
22
|
+
import Icon, { type IconName } from './Icon';
|
|
23
23
|
import Button from './Button';
|
|
24
24
|
import IconButton from './IconButton';
|
|
25
|
+
import Chip from './Chip';
|
|
25
26
|
|
|
26
27
|
import useTheme from '../hooks/useTheme';
|
|
27
28
|
|
|
@@ -40,6 +41,22 @@ type Props = {
|
|
|
40
41
|
error?: boolean;
|
|
41
42
|
hint?: string;
|
|
42
43
|
title?: string;
|
|
44
|
+
/**
|
|
45
|
+
* Trigger rendering style.
|
|
46
|
+
* - `'input'` (default): full bordered input with label, icon, chevron and optional hint/error.
|
|
47
|
+
* - `'chip'`: compact pill (icon + text), ideal for filter toolbars.
|
|
48
|
+
* In `'chip'` mode, `label`, `hint` and `error` are ignored.
|
|
49
|
+
*/
|
|
50
|
+
variant?: 'input' | 'chip';
|
|
51
|
+
/**
|
|
52
|
+
* Text shown inside the chip when `variant='chip'`.
|
|
53
|
+
* Falls back to the formatted selected range, then to `placeholder`.
|
|
54
|
+
*/
|
|
55
|
+
chipText?: string;
|
|
56
|
+
/** Icon shown inside the chip when `variant='chip'`. Defaults to `'Calendar'`. */
|
|
57
|
+
chipIconName?: IconName;
|
|
58
|
+
/** Size of the chip trigger when `variant='chip'`. Defaults to `'normal'`. */
|
|
59
|
+
chipSize?: 'normal' | 'small';
|
|
43
60
|
};
|
|
44
61
|
|
|
45
62
|
// Helper function to safely parse ISO date string to Date object
|
|
@@ -69,6 +86,10 @@ const CalendarPicker = ({
|
|
|
69
86
|
disabled = false,
|
|
70
87
|
error,
|
|
71
88
|
hint,
|
|
89
|
+
variant = 'input',
|
|
90
|
+
chipText,
|
|
91
|
+
chipIconName,
|
|
92
|
+
chipSize = 'normal',
|
|
72
93
|
}: Props) => {
|
|
73
94
|
const [fromDate, setFromDate] = useState<string | undefined>(
|
|
74
95
|
value?.fromDate ? format(new Date(value.fromDate), 'yyyy-MM-dd') : undefined
|
|
@@ -255,39 +276,49 @@ const CalendarPicker = ({
|
|
|
255
276
|
return (
|
|
256
277
|
<>
|
|
257
278
|
<View style={style}>
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
>
|
|
266
|
-
<Icon
|
|
267
|
-
style={styles.icon}
|
|
268
|
-
name="Calendar"
|
|
269
|
-
size={18}
|
|
270
|
-
color={convertHexToRgba(colors.foreground, 0.5)}
|
|
279
|
+
{variant === 'chip' ? (
|
|
280
|
+
<Chip
|
|
281
|
+
text={chipText ?? displayValue ?? placeholder}
|
|
282
|
+
iconName={chipIconName ?? 'Calendar'}
|
|
283
|
+
size={chipSize}
|
|
284
|
+
disabled={disabled}
|
|
285
|
+
onPress={handlePress}
|
|
271
286
|
/>
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
fontFamily: theme.fonts.regular,
|
|
281
|
-
},
|
|
282
|
-
]}
|
|
283
|
-
numberOfLines={1}
|
|
287
|
+
) : (
|
|
288
|
+
<InputContainer
|
|
289
|
+
onPress={handlePress}
|
|
290
|
+
disabled={disabled}
|
|
291
|
+
focused={isOpen}
|
|
292
|
+
error={error}
|
|
293
|
+
hint={hint}
|
|
294
|
+
label={label}
|
|
284
295
|
>
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
296
|
+
<Icon
|
|
297
|
+
style={styles.icon}
|
|
298
|
+
name="Calendar"
|
|
299
|
+
size={18}
|
|
300
|
+
color={convertHexToRgba(colors.foreground, 0.5)}
|
|
301
|
+
/>
|
|
302
|
+
<Text
|
|
303
|
+
variant="pm"
|
|
304
|
+
style={[
|
|
305
|
+
styles.selectText,
|
|
306
|
+
{
|
|
307
|
+
color: displayValue
|
|
308
|
+
? getInputTextColor()
|
|
309
|
+
: convertHexToRgba(colors.foreground, 0.5),
|
|
310
|
+
fontFamily: theme.fonts.regular,
|
|
311
|
+
},
|
|
312
|
+
]}
|
|
313
|
+
numberOfLines={1}
|
|
314
|
+
>
|
|
315
|
+
{displayValue ?? placeholder}
|
|
316
|
+
</Text>
|
|
317
|
+
<Animated.View style={animatedStyle}>
|
|
318
|
+
<Icon name="ChevronDown" size={16} color={colors.foreground} />
|
|
319
|
+
</Animated.View>
|
|
320
|
+
</InputContainer>
|
|
321
|
+
)}
|
|
291
322
|
</View>
|
|
292
323
|
<BottomSheet ref={bottomSheetRef} onBackdropPress={handleClose}>
|
|
293
324
|
<View style={styles.calendarContainer}>
|
|
@@ -13,7 +13,7 @@ import { type IconName } from './Icon';
|
|
|
13
13
|
import useTheme from '../hooks/useTheme';
|
|
14
14
|
|
|
15
15
|
import meassures from '../theme/meassures';
|
|
16
|
-
import type { ButtonVariant } from './ButtonContainer';
|
|
16
|
+
import type { ButtonSize, ButtonVariant } from './ButtonContainer';
|
|
17
17
|
|
|
18
18
|
export type HeaderVariant = 'default' | 'secondary';
|
|
19
19
|
|
|
@@ -21,6 +21,7 @@ const DEFAULT_COLLAPSE_THRESHOLD = 80;
|
|
|
21
21
|
|
|
22
22
|
type HeaderButtonProps = {
|
|
23
23
|
iconName: IconName;
|
|
24
|
+
iconSize?: keyof typeof ButtonSize;
|
|
24
25
|
onPress?: () => void;
|
|
25
26
|
disabled?: boolean;
|
|
26
27
|
variant?: keyof typeof ButtonVariant;
|
|
@@ -107,7 +108,7 @@ export default function Header({
|
|
|
107
108
|
<IconButton
|
|
108
109
|
iconName={button.iconName}
|
|
109
110
|
variant={button.variant ?? 'transparent'}
|
|
110
|
-
size=
|
|
111
|
+
size={button.iconSize ?? 'medium'}
|
|
111
112
|
onPress={button.onPress}
|
|
112
113
|
disabled={button.disabled}
|
|
113
114
|
rounded={button.rounded}
|
package/src/components/Input.tsx
CHANGED
|
@@ -26,6 +26,7 @@ type Props = TextInputProps & {
|
|
|
26
26
|
hint?: string;
|
|
27
27
|
iconName?: IconName;
|
|
28
28
|
variant?: 'text' | 'password';
|
|
29
|
+
containerVariant?: 'default' | 'alternative';
|
|
29
30
|
clearable?: boolean;
|
|
30
31
|
};
|
|
31
32
|
|
|
@@ -42,6 +43,7 @@ export const Input = forwardRef<InputRef, Props>(
|
|
|
42
43
|
label,
|
|
43
44
|
hint,
|
|
44
45
|
variant = 'text',
|
|
46
|
+
containerVariant = 'default',
|
|
45
47
|
onBlur,
|
|
46
48
|
onFocus,
|
|
47
49
|
iconName,
|
|
@@ -93,6 +95,7 @@ export const Input = forwardRef<InputRef, Props>(
|
|
|
93
95
|
focused={focused}
|
|
94
96
|
disabled={!editable}
|
|
95
97
|
iconName={iconName}
|
|
98
|
+
variant={containerVariant}
|
|
96
99
|
>
|
|
97
100
|
<TextInput
|
|
98
101
|
{...rest}
|
|
@@ -29,6 +29,7 @@ type Props = PropsWithChildren & {
|
|
|
29
29
|
focused?: boolean;
|
|
30
30
|
disabled?: boolean;
|
|
31
31
|
size?: 'small' | 'default';
|
|
32
|
+
variant?: 'default' | 'alternative';
|
|
32
33
|
height?: number;
|
|
33
34
|
iconName?: IconName;
|
|
34
35
|
};
|
|
@@ -50,6 +51,7 @@ export default function InputContainer({
|
|
|
50
51
|
children,
|
|
51
52
|
size = 'default',
|
|
52
53
|
disabled,
|
|
54
|
+
variant = 'default',
|
|
53
55
|
height,
|
|
54
56
|
iconName,
|
|
55
57
|
}: Props) {
|
|
@@ -96,6 +98,12 @@ export default function InputContainer({
|
|
|
96
98
|
animStyle,
|
|
97
99
|
styles.container,
|
|
98
100
|
{ height: containerHeight, borderRadius: theme.roundness },
|
|
101
|
+
{
|
|
102
|
+
backgroundColor:
|
|
103
|
+
variant === 'alternative'
|
|
104
|
+
? colors.background
|
|
105
|
+
: colors.altBackground,
|
|
106
|
+
},
|
|
99
107
|
contentContainerStyle,
|
|
100
108
|
]}
|
|
101
109
|
>
|