@space-uy/pulsar-ui 0.9.1 → 0.11.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.
- package/lib/module/components/ButtonContainer.js +7 -1
- package/lib/module/components/ButtonContainer.js.map +1 -1
- package/lib/module/components/Chip.js +20 -7
- package/lib/module/components/Chip.js.map +1 -1
- package/lib/module/components/Header.js +30 -4
- package/lib/module/components/Header.js.map +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/src/components/ButtonContainer.d.ts +1 -0
- package/lib/typescript/src/components/ButtonContainer.d.ts.map +1 -1
- package/lib/typescript/src/components/Chip.d.ts +5 -1
- package/lib/typescript/src/components/Chip.d.ts.map +1 -1
- package/lib/typescript/src/components/Header.d.ts +5 -1
- package/lib/typescript/src/components/Header.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +1 -1
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/ButtonContainer.tsx +7 -1
- package/src/components/Chip.tsx +21 -2
- package/src/components/Header.tsx +40 -9
- package/src/index.tsx +1 -1
|
@@ -10,6 +10,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
10
10
|
export let ButtonVariant = /*#__PURE__*/function (ButtonVariant) {
|
|
11
11
|
ButtonVariant["flat"] = "flat";
|
|
12
12
|
ButtonVariant["outline"] = "outline";
|
|
13
|
+
ButtonVariant["secondary"] = "secondary";
|
|
13
14
|
ButtonVariant["transparent"] = "transparent";
|
|
14
15
|
ButtonVariant["destructive"] = "destructive";
|
|
15
16
|
return ButtonVariant;
|
|
@@ -64,7 +65,12 @@ export default function ButtonContainer({
|
|
|
64
65
|
flat: {
|
|
65
66
|
backgroundColor: colors.primary,
|
|
66
67
|
textColor: colors.altForeground,
|
|
67
|
-
pressedBackgroundColor: convertHexToRgba(colors.
|
|
68
|
+
pressedBackgroundColor: convertHexToRgba(colors.primary, 0.8)
|
|
69
|
+
},
|
|
70
|
+
secondary: {
|
|
71
|
+
backgroundColor: convertHexToRgba(colors.foreground, 0.1),
|
|
72
|
+
textColor: colors.foreground,
|
|
73
|
+
pressedBackgroundColor: convertHexToRgba(colors.foreground, 0.2)
|
|
68
74
|
}
|
|
69
75
|
}[variant];
|
|
70
76
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useEffect","useMemo","Platform","Pressable","StyleSheet","Animated","interpolate","interpolateColor","useAnimatedStyle","useSharedValue","withTiming","useTheme","convertHexToRgba","meassures","jsx","_jsx","ButtonVariant","ButtonSize","ButtonContainer","disabled","variant","size","loading","renderContent","onPressIn","onPressOut","contentContainerStyle","backgroundColor","textColor","borderColor","rounded","rest","theme","colors","pressed","enabled","height","button","buttonColors","variantColors","outline","border","foreground","pressedBackgroundColor","transparent","destructive","foregroundOnDestructive","flat","primary","altForeground","animatedStyle","value","opacity","borderWidth","updatePressAnimation","duration","handlePressIn","e","OS","handlePressOut","onHoverIn","onHoverOut","children","View","style","styles","contentContainer","borderRadius","roundness","create","justifyContent"],"sourceRoot":"../../../src","sources":["components/ButtonContainer.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,SAAS,EAAEC,OAAO,QAAQ,OAAO;AACjD,SACEC,QAAQ,EACRC,SAAS,EACTC,UAAU,QAKL,cAAc;AACrB,OAAOC,QAAQ,IACbC,WAAW,EACXC,gBAAgB,EAChBC,gBAAgB,EAChBC,cAAc,EACdC,UAAU,QAEL,yBAAyB;AAEhC,OAAOC,QAAQ,MAAM,sBAAmB;AAExC,SAASC,gBAAgB,QAAQ,qBAAkB;AACnD,OAAOC,SAAS,MAAM,uBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE3C,WAAYC,aAAa,0BAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA;
|
|
1
|
+
{"version":3,"names":["React","useEffect","useMemo","Platform","Pressable","StyleSheet","Animated","interpolate","interpolateColor","useAnimatedStyle","useSharedValue","withTiming","useTheme","convertHexToRgba","meassures","jsx","_jsx","ButtonVariant","ButtonSize","ButtonContainer","disabled","variant","size","loading","renderContent","onPressIn","onPressOut","contentContainerStyle","backgroundColor","textColor","borderColor","rounded","rest","theme","colors","pressed","enabled","height","button","buttonColors","variantColors","outline","border","foreground","pressedBackgroundColor","transparent","destructive","foregroundOnDestructive","flat","primary","altForeground","secondary","animatedStyle","value","opacity","borderWidth","updatePressAnimation","duration","handlePressIn","e","OS","handlePressOut","onHoverIn","onHoverOut","children","View","style","styles","contentContainer","borderRadius","roundness","create","justifyContent"],"sourceRoot":"../../../src","sources":["components/ButtonContainer.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -4,11 +4,15 @@ import { Pressable, StyleSheet, View } from 'react-native';
|
|
|
4
4
|
import Text from "./Text.js";
|
|
5
5
|
import useTheme from "../hooks/useTheme.js";
|
|
6
6
|
import { convertHexToRgba } from "../utils/uiUtils.js";
|
|
7
|
-
import
|
|
7
|
+
import Icon from "./Icon.js";
|
|
8
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
8
9
|
export default function Chip({
|
|
9
10
|
text,
|
|
10
11
|
size = 'normal',
|
|
11
12
|
disabled = false,
|
|
13
|
+
backgroundColor,
|
|
14
|
+
textColor,
|
|
15
|
+
iconName,
|
|
12
16
|
...rest
|
|
13
17
|
}) {
|
|
14
18
|
const {
|
|
@@ -20,20 +24,25 @@ export default function Chip({
|
|
|
20
24
|
return /*#__PURE__*/_jsx(Pressable, {
|
|
21
25
|
disabled: disabled,
|
|
22
26
|
...rest,
|
|
23
|
-
children: /*#__PURE__*/
|
|
27
|
+
children: /*#__PURE__*/_jsxs(View, {
|
|
24
28
|
style: [styles.container, {
|
|
25
|
-
backgroundColor: convertHexToRgba(colors.foreground, 0.08),
|
|
29
|
+
backgroundColor: backgroundColor || convertHexToRgba(colors.foreground, 0.08),
|
|
26
30
|
borderRadius: theme.roundness,
|
|
27
31
|
height
|
|
28
32
|
}, disabled && styles.disabled],
|
|
29
|
-
children: /*#__PURE__*/_jsx(
|
|
33
|
+
children: [iconName && /*#__PURE__*/_jsx(Icon, {
|
|
34
|
+
style: styles.icon,
|
|
35
|
+
name: iconName,
|
|
36
|
+
size: size === 'small' ? 12 : 14,
|
|
37
|
+
color: textColor || colors.foreground
|
|
38
|
+
}), /*#__PURE__*/_jsx(Text, {
|
|
30
39
|
variant: textVariant,
|
|
31
40
|
style: {
|
|
32
|
-
color: colors.foreground
|
|
41
|
+
color: textColor || colors.foreground
|
|
33
42
|
},
|
|
34
43
|
numberOfLines: 1,
|
|
35
44
|
children: text
|
|
36
|
-
})
|
|
45
|
+
})]
|
|
37
46
|
})
|
|
38
47
|
});
|
|
39
48
|
}
|
|
@@ -41,7 +50,11 @@ const styles = StyleSheet.create({
|
|
|
41
50
|
container: {
|
|
42
51
|
justifyContent: 'center',
|
|
43
52
|
alignItems: 'center',
|
|
44
|
-
paddingHorizontal: 12
|
|
53
|
+
paddingHorizontal: 12,
|
|
54
|
+
flexDirection: 'row'
|
|
55
|
+
},
|
|
56
|
+
icon: {
|
|
57
|
+
marginEnd: 8
|
|
45
58
|
},
|
|
46
59
|
disabled: {
|
|
47
60
|
opacity: 0.3
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Pressable","StyleSheet","View","Text","useTheme","convertHexToRgba","jsx","_jsx","Chip","text","size","disabled","rest","theme","colors","height","textVariant","children","style","styles","container","
|
|
1
|
+
{"version":3,"names":["Pressable","StyleSheet","View","Text","useTheme","convertHexToRgba","Icon","jsx","_jsx","jsxs","_jsxs","Chip","text","size","disabled","backgroundColor","textColor","iconName","rest","theme","colors","height","textVariant","children","style","styles","container","foreground","borderRadius","roundness","icon","name","color","variant","numberOfLines","create","justifyContent","alignItems","paddingHorizontal","flexDirection","marginEnd","opacity"],"sourceRoot":"../../../src","sources":["components/Chip.tsx"],"mappings":";;AAAA,SAASA,SAAS,EAAEC,UAAU,EAAEC,IAAI,QAA6B,cAAc;AAE/E,OAAOC,IAAI,MAAM,WAAQ;AAEzB,OAAOC,QAAQ,MAAM,sBAAmB;AAExC,SAASC,gBAAgB,QAAQ,qBAAkB;AAEnD,OAAOC,IAAI,MAAM,WAAQ;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAW1B,eAAe,SAASC,IAAIA,CAAC;EAC3BC,IAAI;EACJC,IAAI,GAAG,QAAQ;EACfC,QAAQ,GAAG,KAAK;EAChBC,eAAe;EACfC,SAAS;EACTC,QAAQ;EACR,GAAGC;AACE,CAAC,EAAE;EACR,MAAM;IAAEC,KAAK;IAAEC;EAAO,CAAC,GAAGhB,QAAQ,CAAC,CAAC;EAEpC,MAAMiB,MAAM,GAAGR,IAAI,KAAK,OAAO,GAAG,EAAE,GAAG,EAAE;EACzC,MAAMS,WAAW,GAAGT,IAAI,KAAK,OAAO,GAAG,IAAI,GAAG,IAAI;EAElD,oBACEL,IAAA,CAACR,SAAS;IAACc,QAAQ,EAAEA,QAAS;IAAA,GAAKI,IAAI;IAAAK,QAAA,eACrCb,KAAA,CAACR,IAAI;MACHsB,KAAK,EAAE,CACLC,MAAM,CAACC,SAAS,EAChB;QACEX,eAAe,EACbA,eAAe,IAAIV,gBAAgB,CAACe,MAAM,CAACO,UAAU,EAAE,IAAI,CAAC;QAC9DC,YAAY,EAAET,KAAK,CAACU,SAAS;QAC7BR;MACF,CAAC,EACDP,QAAQ,IAAIW,MAAM,CAACX,QAAQ,CAC3B;MAAAS,QAAA,GAEDN,QAAQ,iBACPT,IAAA,CAACF,IAAI;QACHkB,KAAK,EAAEC,MAAM,CAACK,IAAK;QACnBC,IAAI,EAAEd,QAAS;QACfJ,IAAI,EAAEA,IAAI,KAAK,OAAO,GAAG,EAAE,GAAG,EAAG;QACjCmB,KAAK,EAAEhB,SAAS,IAAII,MAAM,CAACO;MAAW,CACvC,CACF,eACDnB,IAAA,CAACL,IAAI;QACH8B,OAAO,EAAEX,WAAY;QACrBE,KAAK,EAAE;UAAEQ,KAAK,EAAEhB,SAAS,IAAII,MAAM,CAACO;QAAW,CAAE;QACjDO,aAAa,EAAE,CAAE;QAAAX,QAAA,EAEhBX;MAAI,CACD,CAAC;IAAA,CACH;EAAC,CACE,CAAC;AAEhB;AAEA,MAAMa,MAAM,GAAGxB,UAAU,CAACkC,MAAM,CAAC;EAC/BT,SAAS,EAAE;IACTU,cAAc,EAAE,QAAQ;IACxBC,UAAU,EAAE,QAAQ;IACpBC,iBAAiB,EAAE,EAAE;IACrBC,aAAa,EAAE;EACjB,CAAC;EACDT,IAAI,EAAE;IAAEU,SAAS,EAAE;EAAE,CAAC;EACtB1B,QAAQ,EAAE;IAAE2B,OAAO,EAAE;EAAI;AAC3B,CAAC,CAAC","ignoreList":[]}
|
|
@@ -9,6 +9,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
9
9
|
const HEADER_BASE_HEIGHT = 52;
|
|
10
10
|
export default function Header({
|
|
11
11
|
title,
|
|
12
|
+
variant = 'default',
|
|
12
13
|
leftButton,
|
|
13
14
|
rightButton,
|
|
14
15
|
style,
|
|
@@ -20,10 +21,11 @@ export default function Header({
|
|
|
20
21
|
theme
|
|
21
22
|
} = useTheme();
|
|
22
23
|
const topInset = useInsets ? theme.insets?.top || 0 : 0;
|
|
24
|
+
const isSecondary = variant === 'secondary';
|
|
23
25
|
const renderButton = button => {
|
|
24
26
|
return /*#__PURE__*/_jsx(IconButton, {
|
|
25
27
|
iconName: button.iconName,
|
|
26
|
-
variant:
|
|
28
|
+
variant: button.variant ?? 'transparent',
|
|
27
29
|
size: "medium",
|
|
28
30
|
onPress: button.onPress,
|
|
29
31
|
disabled: button.disabled
|
|
@@ -34,13 +36,13 @@ export default function Header({
|
|
|
34
36
|
backgroundColor: colors.background,
|
|
35
37
|
borderBottomColor: colors.border,
|
|
36
38
|
paddingTop: topInset
|
|
37
|
-
}, !!children && styles.paddingBottom, style],
|
|
39
|
+
}, isSecondary && styles.headerSecondary, !!children && styles.paddingBottom, style],
|
|
38
40
|
children: [/*#__PURE__*/_jsxs(View, {
|
|
39
|
-
style: styles.headerContent,
|
|
41
|
+
style: [styles.headerContent, isSecondary && styles.headerContentSecondary],
|
|
40
42
|
children: [/*#__PURE__*/_jsx(View, {
|
|
41
43
|
style: [styles.slot, styles.leftSlot],
|
|
42
44
|
children: leftButton && renderButton(leftButton)
|
|
43
|
-
}), /*#__PURE__*/_jsx(View, {
|
|
45
|
+
}), !isSecondary && /*#__PURE__*/_jsx(View, {
|
|
44
46
|
style: styles.titleContainer,
|
|
45
47
|
children: /*#__PURE__*/_jsx(Text, {
|
|
46
48
|
variant: "h3",
|
|
@@ -55,6 +57,17 @@ export default function Header({
|
|
|
55
57
|
style: [styles.slot, styles.rightSlot],
|
|
56
58
|
children: rightButton && renderButton(rightButton)
|
|
57
59
|
})]
|
|
60
|
+
}), isSecondary && /*#__PURE__*/_jsx(View, {
|
|
61
|
+
style: styles.titleRow,
|
|
62
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
63
|
+
variant: "h2",
|
|
64
|
+
style: [styles.titleSecondary, {
|
|
65
|
+
color: colors.foreground
|
|
66
|
+
}],
|
|
67
|
+
numberOfLines: 1,
|
|
68
|
+
ellipsizeMode: "tail",
|
|
69
|
+
children: title
|
|
70
|
+
})
|
|
58
71
|
}), children]
|
|
59
72
|
});
|
|
60
73
|
}
|
|
@@ -63,11 +76,17 @@ const styles = StyleSheet.create({
|
|
|
63
76
|
borderBottomWidth: 1,
|
|
64
77
|
paddingHorizontal: 16
|
|
65
78
|
},
|
|
79
|
+
headerSecondary: {
|
|
80
|
+
paddingBottom: 12
|
|
81
|
+
},
|
|
66
82
|
headerContent: {
|
|
67
83
|
height: HEADER_BASE_HEIGHT,
|
|
68
84
|
flexDirection: 'row',
|
|
69
85
|
alignItems: 'center'
|
|
70
86
|
},
|
|
87
|
+
headerContentSecondary: {
|
|
88
|
+
justifyContent: 'space-between'
|
|
89
|
+
},
|
|
71
90
|
slot: {
|
|
72
91
|
width: meassures.button.medium,
|
|
73
92
|
justifyContent: 'center'
|
|
@@ -84,6 +103,13 @@ const styles = StyleSheet.create({
|
|
|
84
103
|
textAlign: 'center',
|
|
85
104
|
marginHorizontal: 8
|
|
86
105
|
},
|
|
106
|
+
titleRow: {
|
|
107
|
+
paddingHorizontal: 0,
|
|
108
|
+
paddingTop: 4
|
|
109
|
+
},
|
|
110
|
+
titleSecondary: {
|
|
111
|
+
textAlign: 'left'
|
|
112
|
+
},
|
|
87
113
|
rightSlot: {
|
|
88
114
|
alignItems: 'flex-end'
|
|
89
115
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["StyleSheet","View","Text","IconButton","useTheme","meassures","jsx","_jsx","jsxs","_jsxs","HEADER_BASE_HEIGHT","Header","title","leftButton","rightButton","style","useInsets","children","colors","theme","topInset","insets","top","renderButton","button","iconName","
|
|
1
|
+
{"version":3,"names":["StyleSheet","View","Text","IconButton","useTheme","meassures","jsx","_jsx","jsxs","_jsxs","HEADER_BASE_HEIGHT","Header","title","variant","leftButton","rightButton","style","useInsets","children","colors","theme","topInset","insets","top","isSecondary","renderButton","button","iconName","size","onPress","disabled","styles","header","backgroundColor","background","borderBottomColor","border","paddingTop","headerSecondary","paddingBottom","headerContent","headerContentSecondary","slot","leftSlot","titleContainer","color","foreground","numberOfLines","ellipsizeMode","rightSlot","titleRow","titleSecondary","create","borderBottomWidth","paddingHorizontal","height","flexDirection","alignItems","justifyContent","width","medium","flex","textAlign","marginHorizontal"],"sourceRoot":"../../../src","sources":["components/Header.tsx"],"mappings":"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","ignoreList":[]}
|
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","OtpInputContainer","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,
|
|
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","OtpInputContainer","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,iBAAiB,QAAQ,mCAAgC;AAClE,SAASC,QAAQ,QAAQ,0BAAuB;AAEhD,SAAStB,OAAO,IAAIuB,cAAc,QAAQ,gCAA6B;AACvE,SAASvB,OAAO,IAAIwB,SAAS,EAAEC,aAAa,QAAQ,2BAAwB;AAC5E,SAASC,eAAe,QAAQ,iCAA8B;AAC9D,SACE1B,OAAO,IAAI2B,MAAM,EACjBC,YAAY,EACZC,WAAW,EACXC,iBAAiB,EACjBC,YAAY,EACZC,YAAY,EACZC,YAAY,QACP,wBAAqB","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ButtonContainer.d.ts","sourceRoot":"","sources":["../../../../src/components/ButtonContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA6B,MAAM,OAAO,CAAC;AAClD,OAAO,EAKL,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AACtB,OAAiB,EAMf,KAAK,aAAa,EACnB,MAAM,yBAAyB,CAAC;AAOjC,oBAAY,aAAa;IACvB,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;CAC5B;AAED,oBAAY,UAAU;IACpB,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,KAAK,UAAU;IACf,MAAM,WAAW;CAClB;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,sBAAsB,EAAE,MAAM,CAAC;CAChC,CAAC;AAEF,KAAK,KAAK,GAAG,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,GAAG;IAC9C,OAAO,CAAC,EAAE,MAAM,OAAO,aAAa,CAAC;IACrC,IAAI,CAAC,EAAE,MAAM,OAAO,UAAU,CAAC;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,KAAK,CAAC,SAAS,CAAC;IACzD,qBAAqB,CAAC,EAAE,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IACvE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,EACtC,QAAQ,EACR,OAAgB,EAChB,IAAc,EACd,OAAe,EACf,aAAa,EACb,SAAS,EACT,UAAU,EACV,qBAAqB,EACrB,eAAe,EACf,SAAS,EACT,WAAW,EACX,OAAe,EACf,GAAG,IAAI,EACR,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"ButtonContainer.d.ts","sourceRoot":"","sources":["../../../../src/components/ButtonContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA6B,MAAM,OAAO,CAAC;AAClD,OAAO,EAKL,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AACtB,OAAiB,EAMf,KAAK,aAAa,EACnB,MAAM,yBAAyB,CAAC;AAOjC,oBAAY,aAAa;IACvB,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;CAC5B;AAED,oBAAY,UAAU;IACpB,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,KAAK,UAAU;IACf,MAAM,WAAW;CAClB;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,sBAAsB,EAAE,MAAM,CAAC;CAChC,CAAC;AAEF,KAAK,KAAK,GAAG,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,GAAG;IAC9C,OAAO,CAAC,EAAE,MAAM,OAAO,aAAa,CAAC;IACrC,IAAI,CAAC,EAAE,MAAM,OAAO,UAAU,CAAC;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,KAAK,CAAC,SAAS,CAAC;IACzD,qBAAqB,CAAC,EAAE,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IACvE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,EACtC,QAAQ,EACR,OAAgB,EAChB,IAAc,EACd,OAAe,EACf,aAAa,EACb,SAAS,EACT,UAAU,EACV,qBAAqB,EACrB,eAAe,EACf,SAAS,EACT,WAAW,EACX,OAAe,EACf,GAAG,IAAI,EACR,EAAE,KAAK,2CA6GP"}
|
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
import { type PressableProps } from 'react-native';
|
|
2
|
+
import type { IconName } from './Icon';
|
|
2
3
|
type Props = PressableProps & {
|
|
3
4
|
text: string;
|
|
4
5
|
size?: 'normal' | 'small';
|
|
5
6
|
disabled?: boolean;
|
|
7
|
+
iconName?: IconName;
|
|
8
|
+
textColor?: string;
|
|
9
|
+
backgroundColor?: string;
|
|
6
10
|
};
|
|
7
|
-
export default function Chip({ text, size, disabled, ...rest }: Props): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export default function Chip({ text, size, disabled, backgroundColor, textColor, iconName, ...rest }: Props): import("react/jsx-runtime").JSX.Element;
|
|
8
12
|
export {};
|
|
9
13
|
//# sourceMappingURL=Chip.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Chip.d.ts","sourceRoot":"","sources":["../../../../src/components/Chip.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA+B,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"Chip.d.ts","sourceRoot":"","sources":["../../../../src/components/Chip.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA+B,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AAOhF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAGvC,KAAK,KAAK,GAAG,cAAc,GAAG;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,IAAI,CAAC,EAC3B,IAAI,EACJ,IAAe,EACf,QAAgB,EAChB,eAAe,EACf,SAAS,EACT,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,KAAK,2CAsCP"}
|
|
@@ -1,18 +1,22 @@
|
|
|
1
1
|
import { type PropsWithChildren } from 'react';
|
|
2
2
|
import { type ViewStyle, type StyleProp } from 'react-native';
|
|
3
3
|
import { type IconName } from './Icon';
|
|
4
|
+
import type { ButtonVariant } from './ButtonContainer';
|
|
5
|
+
export type HeaderVariant = 'default' | 'secondary';
|
|
4
6
|
type HeaderButtonProps = {
|
|
5
7
|
iconName: IconName;
|
|
6
8
|
onPress?: () => void;
|
|
7
9
|
disabled?: boolean;
|
|
10
|
+
variant?: keyof typeof ButtonVariant;
|
|
8
11
|
};
|
|
9
12
|
type Props = PropsWithChildren & {
|
|
10
13
|
title: string;
|
|
14
|
+
variant?: HeaderVariant;
|
|
11
15
|
leftButton?: HeaderButtonProps;
|
|
12
16
|
rightButton?: HeaderButtonProps;
|
|
13
17
|
style?: StyleProp<ViewStyle>;
|
|
14
18
|
useInsets?: boolean;
|
|
15
19
|
};
|
|
16
|
-
export default function Header({ title, leftButton, rightButton, style, useInsets, children, }: Props): import("react/jsx-runtime").JSX.Element;
|
|
20
|
+
export default function Header({ title, variant, leftButton, rightButton, style, useInsets, children, }: Props): import("react/jsx-runtime").JSX.Element;
|
|
17
21
|
export {};
|
|
18
22
|
//# sourceMappingURL=Header.d.ts.map
|
|
@@ -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;AAIhF,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,QAAQ,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;AAIhF,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAKvC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,WAAW,CAAC;AAEpD,KAAK,iBAAiB,GAAG;IACvB,QAAQ,EAAE,QAAQ,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,OAAO,aAAa,CAAC;CACtC,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;CACrB,CAAC;AAIF,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAC7B,KAAK,EACL,OAAmB,EACnB,UAAU,EACV,WAAW,EACX,KAAK,EACL,SAAgB,EAChB,QAAQ,GACT,EAAE,KAAK,2CAuEP"}
|
|
@@ -11,7 +11,7 @@ export { default as Checkbox } from './components/Checkbox';
|
|
|
11
11
|
export { default as Chip } from './components/Chip';
|
|
12
12
|
export { default as Icon, type IconName } from './components/Icon';
|
|
13
13
|
export { default as IconButton } from './components/IconButton';
|
|
14
|
-
export { default as Header } from './components/Header';
|
|
14
|
+
export { default as Header, type HeaderVariant } from './components/Header';
|
|
15
15
|
export { default as Switch } from './components/Switch';
|
|
16
16
|
export { default as ButtonContainer, ButtonVariant, ButtonSize, } from './components/ButtonContainer';
|
|
17
17
|
export { convertHexToRgba } from './utils/uiUtils';
|
|
@@ -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,MAAM,qBAAqB,CAAC;
|
|
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,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,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
|
@@ -25,6 +25,7 @@ import meassures from '../theme/meassures';
|
|
|
25
25
|
export enum ButtonVariant {
|
|
26
26
|
flat = 'flat',
|
|
27
27
|
outline = 'outline',
|
|
28
|
+
secondary = 'secondary',
|
|
28
29
|
transparent = 'transparent',
|
|
29
30
|
destructive = 'destructive',
|
|
30
31
|
}
|
|
@@ -97,7 +98,12 @@ export default function ButtonContainer({
|
|
|
97
98
|
flat: {
|
|
98
99
|
backgroundColor: colors.primary,
|
|
99
100
|
textColor: colors.altForeground,
|
|
100
|
-
pressedBackgroundColor: convertHexToRgba(colors.
|
|
101
|
+
pressedBackgroundColor: convertHexToRgba(colors.primary, 0.8),
|
|
102
|
+
},
|
|
103
|
+
secondary: {
|
|
104
|
+
backgroundColor: convertHexToRgba(colors.foreground, 0.1),
|
|
105
|
+
textColor: colors.foreground,
|
|
106
|
+
pressedBackgroundColor: convertHexToRgba(colors.foreground, 0.2),
|
|
101
107
|
},
|
|
102
108
|
}[variant];
|
|
103
109
|
|
package/src/components/Chip.tsx
CHANGED
|
@@ -5,17 +5,25 @@ import Text from './Text';
|
|
|
5
5
|
import useTheme from '../hooks/useTheme';
|
|
6
6
|
|
|
7
7
|
import { convertHexToRgba } from '../utils/uiUtils';
|
|
8
|
+
import type { IconName } from './Icon';
|
|
9
|
+
import Icon from './Icon';
|
|
8
10
|
|
|
9
11
|
type Props = PressableProps & {
|
|
10
12
|
text: string;
|
|
11
13
|
size?: 'normal' | 'small';
|
|
12
14
|
disabled?: boolean;
|
|
15
|
+
iconName?: IconName;
|
|
16
|
+
textColor?: string;
|
|
17
|
+
backgroundColor?: string;
|
|
13
18
|
};
|
|
14
19
|
|
|
15
20
|
export default function Chip({
|
|
16
21
|
text,
|
|
17
22
|
size = 'normal',
|
|
18
23
|
disabled = false,
|
|
24
|
+
backgroundColor,
|
|
25
|
+
textColor,
|
|
26
|
+
iconName,
|
|
19
27
|
...rest
|
|
20
28
|
}: Props) {
|
|
21
29
|
const { theme, colors } = useTheme();
|
|
@@ -29,16 +37,25 @@ export default function Chip({
|
|
|
29
37
|
style={[
|
|
30
38
|
styles.container,
|
|
31
39
|
{
|
|
32
|
-
backgroundColor:
|
|
40
|
+
backgroundColor:
|
|
41
|
+
backgroundColor || convertHexToRgba(colors.foreground, 0.08),
|
|
33
42
|
borderRadius: theme.roundness,
|
|
34
43
|
height,
|
|
35
44
|
},
|
|
36
45
|
disabled && styles.disabled,
|
|
37
46
|
]}
|
|
38
47
|
>
|
|
48
|
+
{iconName && (
|
|
49
|
+
<Icon
|
|
50
|
+
style={styles.icon}
|
|
51
|
+
name={iconName}
|
|
52
|
+
size={size === 'small' ? 12 : 14}
|
|
53
|
+
color={textColor || colors.foreground}
|
|
54
|
+
/>
|
|
55
|
+
)}
|
|
39
56
|
<Text
|
|
40
57
|
variant={textVariant}
|
|
41
|
-
style={{ color: colors.foreground }}
|
|
58
|
+
style={{ color: textColor || colors.foreground }}
|
|
42
59
|
numberOfLines={1}
|
|
43
60
|
>
|
|
44
61
|
{text}
|
|
@@ -53,6 +70,8 @@ const styles = StyleSheet.create({
|
|
|
53
70
|
justifyContent: 'center',
|
|
54
71
|
alignItems: 'center',
|
|
55
72
|
paddingHorizontal: 12,
|
|
73
|
+
flexDirection: 'row',
|
|
56
74
|
},
|
|
75
|
+
icon: { marginEnd: 8 },
|
|
57
76
|
disabled: { opacity: 0.3 },
|
|
58
77
|
});
|
|
@@ -8,15 +8,20 @@ import { type IconName } from './Icon';
|
|
|
8
8
|
import useTheme from '../hooks/useTheme';
|
|
9
9
|
|
|
10
10
|
import meassures from '../theme/meassures';
|
|
11
|
+
import type { ButtonVariant } from './ButtonContainer';
|
|
12
|
+
|
|
13
|
+
export type HeaderVariant = 'default' | 'secondary';
|
|
11
14
|
|
|
12
15
|
type HeaderButtonProps = {
|
|
13
16
|
iconName: IconName;
|
|
14
17
|
onPress?: () => void;
|
|
15
18
|
disabled?: boolean;
|
|
19
|
+
variant?: keyof typeof ButtonVariant;
|
|
16
20
|
};
|
|
17
21
|
|
|
18
22
|
type Props = PropsWithChildren & {
|
|
19
23
|
title: string;
|
|
24
|
+
variant?: HeaderVariant;
|
|
20
25
|
leftButton?: HeaderButtonProps;
|
|
21
26
|
rightButton?: HeaderButtonProps;
|
|
22
27
|
style?: StyleProp<ViewStyle>;
|
|
@@ -27,6 +32,7 @@ const HEADER_BASE_HEIGHT = 52;
|
|
|
27
32
|
|
|
28
33
|
export default function Header({
|
|
29
34
|
title,
|
|
35
|
+
variant = 'default',
|
|
30
36
|
leftButton,
|
|
31
37
|
rightButton,
|
|
32
38
|
style,
|
|
@@ -35,12 +41,13 @@ export default function Header({
|
|
|
35
41
|
}: Props) {
|
|
36
42
|
const { colors, theme } = useTheme();
|
|
37
43
|
const topInset = useInsets ? theme.insets?.top || 0 : 0;
|
|
44
|
+
const isSecondary = variant === 'secondary';
|
|
38
45
|
|
|
39
46
|
const renderButton = (button: HeaderButtonProps) => {
|
|
40
47
|
return (
|
|
41
48
|
<IconButton
|
|
42
49
|
iconName={button.iconName}
|
|
43
|
-
variant=
|
|
50
|
+
variant={button.variant ?? 'transparent'}
|
|
44
51
|
size="medium"
|
|
45
52
|
onPress={button.onPress}
|
|
46
53
|
disabled={button.disabled}
|
|
@@ -57,28 +64,48 @@ export default function Header({
|
|
|
57
64
|
borderBottomColor: colors.border,
|
|
58
65
|
paddingTop: topInset,
|
|
59
66
|
},
|
|
67
|
+
isSecondary && styles.headerSecondary,
|
|
60
68
|
!!children && styles.paddingBottom,
|
|
61
69
|
style,
|
|
62
70
|
]}
|
|
63
71
|
>
|
|
64
|
-
<View
|
|
72
|
+
<View
|
|
73
|
+
style={[
|
|
74
|
+
styles.headerContent,
|
|
75
|
+
isSecondary && styles.headerContentSecondary,
|
|
76
|
+
]}
|
|
77
|
+
>
|
|
65
78
|
<View style={[styles.slot, styles.leftSlot]}>
|
|
66
79
|
{leftButton && renderButton(leftButton)}
|
|
67
80
|
</View>
|
|
68
|
-
|
|
81
|
+
{!isSecondary && (
|
|
82
|
+
<View style={styles.titleContainer}>
|
|
83
|
+
<Text
|
|
84
|
+
variant="h3"
|
|
85
|
+
style={[styles.title, { color: colors.foreground }]}
|
|
86
|
+
numberOfLines={1}
|
|
87
|
+
ellipsizeMode="tail"
|
|
88
|
+
>
|
|
89
|
+
{title}
|
|
90
|
+
</Text>
|
|
91
|
+
</View>
|
|
92
|
+
)}
|
|
93
|
+
<View style={[styles.slot, styles.rightSlot]}>
|
|
94
|
+
{rightButton && renderButton(rightButton)}
|
|
95
|
+
</View>
|
|
96
|
+
</View>
|
|
97
|
+
{isSecondary && (
|
|
98
|
+
<View style={styles.titleRow}>
|
|
69
99
|
<Text
|
|
70
|
-
variant="
|
|
71
|
-
style={[styles.
|
|
100
|
+
variant="h2"
|
|
101
|
+
style={[styles.titleSecondary, { color: colors.foreground }]}
|
|
72
102
|
numberOfLines={1}
|
|
73
103
|
ellipsizeMode="tail"
|
|
74
104
|
>
|
|
75
105
|
{title}
|
|
76
106
|
</Text>
|
|
77
107
|
</View>
|
|
78
|
-
|
|
79
|
-
{rightButton && renderButton(rightButton)}
|
|
80
|
-
</View>
|
|
81
|
-
</View>
|
|
108
|
+
)}
|
|
82
109
|
{children}
|
|
83
110
|
</View>
|
|
84
111
|
);
|
|
@@ -86,15 +113,19 @@ export default function Header({
|
|
|
86
113
|
|
|
87
114
|
const styles = StyleSheet.create({
|
|
88
115
|
header: { borderBottomWidth: 1, paddingHorizontal: 16 },
|
|
116
|
+
headerSecondary: { paddingBottom: 12 },
|
|
89
117
|
headerContent: {
|
|
90
118
|
height: HEADER_BASE_HEIGHT,
|
|
91
119
|
flexDirection: 'row',
|
|
92
120
|
alignItems: 'center',
|
|
93
121
|
},
|
|
122
|
+
headerContentSecondary: { justifyContent: 'space-between' },
|
|
94
123
|
slot: { width: meassures.button.medium, justifyContent: 'center' },
|
|
95
124
|
leftSlot: { alignItems: 'flex-start' },
|
|
96
125
|
titleContainer: { flex: 1, alignItems: 'center', justifyContent: 'center' },
|
|
97
126
|
title: { textAlign: 'center', marginHorizontal: 8 },
|
|
127
|
+
titleRow: { paddingHorizontal: 0, paddingTop: 4 },
|
|
128
|
+
titleSecondary: { textAlign: 'left' },
|
|
98
129
|
rightSlot: { alignItems: 'flex-end' },
|
|
99
130
|
paddingBottom: { paddingBottom: 16 },
|
|
100
131
|
});
|
package/src/index.tsx
CHANGED
|
@@ -11,7 +11,7 @@ export { default as Checkbox } from './components/Checkbox';
|
|
|
11
11
|
export { default as Chip } from './components/Chip';
|
|
12
12
|
export { default as Icon, type IconName } from './components/Icon';
|
|
13
13
|
export { default as IconButton } from './components/IconButton';
|
|
14
|
-
export { default as Header } from './components/Header';
|
|
14
|
+
export { default as Header, type HeaderVariant } from './components/Header';
|
|
15
15
|
export { default as Switch } from './components/Switch';
|
|
16
16
|
export {
|
|
17
17
|
default as ButtonContainer,
|