@herca/rn-kit 0.1.59 → 0.1.61

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 (46) hide show
  1. package/README.md +1 -0
  2. package/lib/module/BottomSheet/BottomSheet.js +6 -4
  3. package/lib/module/BottomSheet/BottomSheet.js.map +1 -1
  4. package/lib/module/Input/InputSelect.js +125 -4
  5. package/lib/module/Input/InputSelect.js.map +1 -1
  6. package/lib/module/Input/README_INPUT_SELECT.md +392 -0
  7. package/lib/module/Modal/Modal.js +5 -5
  8. package/lib/module/Modal/Modal.js.map +1 -1
  9. package/lib/module/index.js +1 -0
  10. package/lib/module/index.js.map +1 -1
  11. package/lib/module/styles/border.js +42 -0
  12. package/lib/module/styles/border.js.map +1 -0
  13. package/lib/module/styles/layouting.js +71 -0
  14. package/lib/module/styles/layouting.js.map +1 -0
  15. package/lib/module/styles/sizing.js +22 -0
  16. package/lib/module/styles/sizing.js.map +1 -0
  17. package/lib/module/styles/spacing.js +166 -0
  18. package/lib/module/styles/spacing.js.map +1 -0
  19. package/lib/module/styles/theme.js +47 -0
  20. package/lib/module/styles/theme.js.map +1 -0
  21. package/lib/typescript/src/BottomSheet/BottomSheet.d.ts.map +1 -1
  22. package/lib/typescript/src/Input/InputSelect.d.ts +27 -1
  23. package/lib/typescript/src/Input/InputSelect.d.ts.map +1 -1
  24. package/lib/typescript/src/index.d.ts +2 -0
  25. package/lib/typescript/src/index.d.ts.map +1 -1
  26. package/lib/typescript/src/styles/border.d.ts +38 -0
  27. package/lib/typescript/src/styles/border.d.ts.map +1 -0
  28. package/lib/typescript/src/styles/layouting.d.ts +68 -0
  29. package/lib/typescript/src/styles/layouting.d.ts.map +1 -0
  30. package/lib/typescript/src/styles/sizing.d.ts +19 -0
  31. package/lib/typescript/src/styles/sizing.d.ts.map +1 -0
  32. package/lib/typescript/src/styles/spacing.d.ts +160 -0
  33. package/lib/typescript/src/styles/spacing.d.ts.map +1 -0
  34. package/lib/typescript/src/styles/theme.d.ts +43 -0
  35. package/lib/typescript/src/styles/theme.d.ts.map +1 -0
  36. package/package.json +1 -1
  37. package/src/BottomSheet/BottomSheet.tsx +6 -4
  38. package/src/Input/InputSelect.tsx +183 -3
  39. package/src/Input/README_INPUT_SELECT.md +392 -0
  40. package/src/Modal/Modal.tsx +5 -5
  41. package/src/index.tsx +2 -0
  42. package/src/styles/border.ts +29 -0
  43. package/src/styles/layouting.ts +37 -0
  44. package/src/styles/sizing.ts +12 -0
  45. package/src/styles/spacing.ts +76 -0
  46. package/src/styles/theme.ts +46 -0
package/README.md CHANGED
@@ -112,6 +112,7 @@ Komponen untuk mengumpulkan input dari pengguna.
112
112
  - [DatePicker](./src/DatePicker/README_DATEPICKER.md)
113
113
  - [DropDown](./src/DropDown/README.md)
114
114
  - [Input](./src/Input/README_INPUT.md)
115
+ - [Input Select](./src/Input/README_INPUT_SELECT.md)
115
116
  - [InputOtp](./src/Input/README_INPUT_OTP.md)
116
117
  - [Input Month](./src/Datepicker/README_MONTHPICKER.md)
117
118
  - [Input Password](./src/InputPassword/README.md)
@@ -50,8 +50,10 @@ export default function BottomSheet({
50
50
  duration: 300,
51
51
  useNativeDriver: false
52
52
  }).start(() => {
53
- setIsVisible(false);
54
- onClose && onClose(false);
53
+ requestAnimationFrame(() => {
54
+ setIsVisible(false);
55
+ onClose?.(false);
56
+ });
55
57
  });
56
58
  }
57
59
  }, [closable, translateY, onClose]);
@@ -141,9 +143,9 @@ export default function BottomSheet({
141
143
  }), footer && /*#__PURE__*/_jsx(SafeAreaView, {
142
144
  onLayout: event => {
143
145
  const {
144
- height
146
+ height: layoutHeight
145
147
  } = event.nativeEvent.layout;
146
- setHeightFooter(height);
148
+ setHeightFooter(layoutHeight);
147
149
  },
148
150
  style: styles.footer,
149
151
  children: /*#__PURE__*/_jsx(Container, {
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useRef","useState","useCallback","View","StyleSheet","PanResponder","TouchableOpacity","Animated","Modal","KeyboardAvoidingView","Keyboard","Dimensions","SafeAreaView","Platform","StatusBar","Container","Typography","Color","jsx","_jsx","jsxs","_jsxs","statusBarHeight","OS","Version","currentHeight","screenHeight","get","height","actualScreenHeight","DEFAULT_PADDING_BOTTOM","BottomSheet","isOpen","onClose","children","backdrop","closable","onRequestClose","buttonClose","pullBar","footer","isVisible","setIsVisible","heightFooter","setHeightFooter","heighContent","setHeighContent","maxHeight","setMaxHeight","translateY","Value","current","panResponder","create","onStartShouldSetPanResponder","onMoveShouldSetPanResponder","onPanResponderMove","_","gestureState","dy","setValue","onPanResponderRelease","handleRequestClose","resetModalPosition","hideModal","timing","toValue","duration","useNativeDriver","start","showModal","spring","e","keyboardDidShowListener","addListener","keyboardHeight","endCoordinates","keyboardDidHideListener","remove","transparent","visible","animationType","style","styles","modalContainer","onPress","activeOpacity","backdropTouchable","behavior","undefined","enabled","keyboardAvoiding","bottomSheet","transform","paddingBottom","closeButton","panHandlers","dragIndicatorContainer","dragIndicator","contentContainer","contentWithFooter","onLayout","event","nativeEvent","layout","flex","justifyContent","backgroundColor","borderTopLeftRadius","borderTopRightRadius","position","paddingVertical","paddingHorizontal","borderRadius","top","right","zIndex","alignItems","width","marginTop","flexGrow","borderTopWidth","borderTopColor","gray","base","white100","paddingTop","bottom","left"],"sourceRoot":"../../../src","sources":["BottomSheet/BottomSheet.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useEffect","useRef","useState","useCallback","View","StyleSheet","PanResponder","TouchableOpacity","Animated","Modal","KeyboardAvoidingView","Keyboard","Dimensions","SafeAreaView","Platform","StatusBar","Container","Typography","Color","jsx","_jsx","jsxs","_jsxs","statusBarHeight","OS","Version","currentHeight","screenHeight","get","height","actualScreenHeight","DEFAULT_PADDING_BOTTOM","BottomSheet","isOpen","onClose","children","backdrop","closable","onRequestClose","buttonClose","pullBar","footer","isVisible","setIsVisible","heightFooter","setHeightFooter","heighContent","setHeighContent","maxHeight","setMaxHeight","translateY","Value","current","panResponder","create","onStartShouldSetPanResponder","onMoveShouldSetPanResponder","onPanResponderMove","_","gestureState","dy","setValue","onPanResponderRelease","handleRequestClose","resetModalPosition","hideModal","timing","toValue","duration","useNativeDriver","start","requestAnimationFrame","showModal","spring","e","keyboardDidShowListener","addListener","keyboardHeight","endCoordinates","keyboardDidHideListener","remove","transparent","visible","animationType","style","styles","modalContainer","onPress","activeOpacity","backdropTouchable","behavior","undefined","enabled","keyboardAvoiding","bottomSheet","transform","paddingBottom","closeButton","panHandlers","dragIndicatorContainer","dragIndicator","contentContainer","contentWithFooter","onLayout","event","layoutHeight","nativeEvent","layout","flex","justifyContent","backgroundColor","borderTopLeftRadius","borderTopRightRadius","position","paddingVertical","paddingHorizontal","borderRadius","top","right","zIndex","alignItems","width","marginTop","flexGrow","borderTopWidth","borderTopColor","gray","base","white100","paddingTop","bottom","left"],"sourceRoot":"../../../src","sources":["BottomSheet/BottomSheet.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,8 +1,129 @@
1
1
  "use strict";
2
2
 
3
- import { View } from 'react-native';
4
- import { jsx as _jsx } from "react/jsx-runtime";
5
- export default function InputSelect() {
6
- return /*#__PURE__*/_jsx(View, {});
3
+ import { Badge, Color, Icon, Select, Typography } from '@herca/rn-kit';
4
+ import { useState, useEffect } from 'react';
5
+ import { Pressable, StyleSheet, TouchableOpacity, View } from 'react-native';
6
+ import { spacing } from "../styles/spacing.js";
7
+ import { border } from "../styles/border.js";
8
+ import { layouting } from "../styles/layouting.js";
9
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
+ export default function InputSelect({
11
+ label,
12
+ placeholder = 'Select here...',
13
+ selectProps,
14
+ options,
15
+ value,
16
+ onSelectClick,
17
+ onSelectClose,
18
+ icon,
19
+ iconColor,
20
+ hint,
21
+ hasError,
22
+ onClear,
23
+ subtitle,
24
+ badge,
25
+ useModal = true,
26
+ ...props
27
+ }) {
28
+ const [isSelectOpen, setSelectOpen] = useState(false);
29
+ const [internalValue, setInternalValue] = useState(value);
30
+ function handleOpenSelect() {
31
+ useModal && setSelectOpen(true);
32
+ onSelectClick?.();
33
+ }
34
+ function handleCloseSelect() {
35
+ setSelectOpen(false);
36
+ onSelectClose?.();
37
+ }
38
+ function handleClear() {
39
+ setInternalValue('');
40
+ onClear?.();
41
+ }
42
+ useEffect(() => {
43
+ setInternalValue(value);
44
+ }, [value]);
45
+ return /*#__PURE__*/_jsxs(View, {
46
+ style: spacing.gap[4],
47
+ children: [/*#__PURE__*/_jsx(Typography, {
48
+ variant: "t2",
49
+ weight: "semibold",
50
+ color: Color.gray[900],
51
+ children: label
52
+ }), /*#__PURE__*/_jsxs(View, {
53
+ style: [spacing.gap[4], layouting.flex.grow],
54
+ children: [/*#__PURE__*/_jsxs(Pressable, {
55
+ style: [styles.select, hasError && border.color.danger[300], internalValue !== '' && !hasError && border.color.primary[300]],
56
+ onPress: handleOpenSelect,
57
+ ...props,
58
+ children: [/*#__PURE__*/_jsxs(View, {
59
+ style: [layouting.flex.rowCenter, spacing.gap[12], layouting.flex.shrink, layouting.flex[1]],
60
+ children: [icon && /*#__PURE__*/_jsx(Icon, {
61
+ name: icon,
62
+ size: 20,
63
+ color: iconColor
64
+ }), /*#__PURE__*/_jsxs(View, {
65
+ children: [/*#__PURE__*/_jsxs(View, {
66
+ style: [layouting.flex.rowCenter, spacing.gap[4]],
67
+ children: [/*#__PURE__*/_jsx(Typography, {
68
+ variant: "t2",
69
+ color: Color.gray[900],
70
+ weight: "medium",
71
+ numberOfLines: 1,
72
+ children: !internalValue ? placeholder : internalValue
73
+ }), badge ? /*#__PURE__*/_jsx(Badge, {
74
+ value: badge.value,
75
+ size: "small",
76
+ color: badge.color
77
+ }) : null]
78
+ }), subtitle && /*#__PURE__*/_jsx(Typography, {
79
+ variant: "t3",
80
+ color: Color.gray[700],
81
+ weight: "medium",
82
+ numberOfLines: 1,
83
+ children: subtitle
84
+ })]
85
+ })]
86
+ }), /*#__PURE__*/_jsxs(View, {
87
+ style: [layouting.flex.rowCenter, spacing.gap[8]],
88
+ children: [onClear && internalValue && /*#__PURE__*/_jsx(TouchableOpacity, {
89
+ activeOpacity: 0.7,
90
+ onPress: handleClear,
91
+ children: /*#__PURE__*/_jsx(Icon, {
92
+ name: "x-circle",
93
+ size: 20,
94
+ color: "#aaa"
95
+ })
96
+ }), /*#__PURE__*/_jsx(Icon, {
97
+ name: useModal ? 'ArrowDown' : 'ArrowRight',
98
+ size: useModal ? 14 : 12,
99
+ color: Color.gray[700]
100
+ })]
101
+ })]
102
+ }), hint && /*#__PURE__*/_jsx(Typography, {
103
+ variant: "t3",
104
+ color: hasError ? Color.danger[500] : Color.gray[700],
105
+ weight: "medium",
106
+ numberOfLines: 1,
107
+ children: hint
108
+ })]
109
+ }), useModal && /*#__PURE__*/_jsx(Select, {
110
+ isOpen: isSelectOpen,
111
+ ...selectProps,
112
+ data: options ?? [],
113
+ onClose: handleCloseSelect
114
+ })]
115
+ });
7
116
  }
117
+ const styles = StyleSheet.create({
118
+ select: {
119
+ paddingVertical: 10,
120
+ paddingHorizontal: 12,
121
+ borderRadius: 8,
122
+ flexDirection: 'row',
123
+ alignItems: 'center',
124
+ borderWidth: 1,
125
+ borderColor: Color.gray[200],
126
+ gap: 8
127
+ }
128
+ });
8
129
  //# sourceMappingURL=InputSelect.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["View","jsx","_jsx","InputSelect"],"sourceRoot":"../../../src","sources":["Input/InputSelect.tsx"],"mappings":";;AAAA,SAASA,IAAI,QAAQ,cAAc;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAEpC,eAAe,SAASC,WAAWA,CAAA,EAAG;EACpC,oBAAOD,IAAA,CAACF,IAAI,IAAO,CAAC;AACtB","ignoreList":[]}
1
+ {"version":3,"names":["Badge","Color","Icon","Select","Typography","useState","useEffect","Pressable","StyleSheet","TouchableOpacity","View","spacing","border","layouting","jsx","_jsx","jsxs","_jsxs","InputSelect","label","placeholder","selectProps","options","value","onSelectClick","onSelectClose","icon","iconColor","hint","hasError","onClear","subtitle","badge","useModal","props","isSelectOpen","setSelectOpen","internalValue","setInternalValue","handleOpenSelect","handleCloseSelect","handleClear","style","gap","children","variant","weight","color","gray","flex","grow","styles","select","danger","primary","onPress","rowCenter","shrink","name","size","numberOfLines","activeOpacity","isOpen","data","onClose","create","paddingVertical","paddingHorizontal","borderRadius","flexDirection","alignItems","borderWidth","borderColor"],"sourceRoot":"../../../src","sources":["Input/InputSelect.tsx"],"mappings":";;AAAA,SACEA,KAAK,EACLC,KAAK,EACLC,IAAI,EACJC,MAAM,EACNC,UAAU,QAGL,eAAe;AACtB,SAASC,QAAQ,EAAEC,SAAS,QAAQ,OAAO;AAC3C,SAASC,SAAS,EAAEC,UAAU,EAAEC,gBAAgB,EAAEC,IAAI,QAAQ,cAAc;AAC5E,SAASC,OAAO,QAAQ,sBAAmB;AAC3C,SAASC,MAAM,QAAQ,qBAAkB;AACzC,SAASC,SAAS,QAAQ,wBAAqB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AA2BhD,eAAe,SAASC,WAAWA,CAAC;EAClCC,KAAK;EACLC,WAAW,GAAG,gBAAgB;EAC9BC,WAAW;EACXC,OAAO;EACPC,KAAK;EACLC,aAAa;EACbC,aAAa;EACbC,IAAI;EACJC,SAAS;EACTC,IAAI;EACJC,QAAQ;EACRC,OAAO;EACPC,QAAQ;EACRC,KAAK;EACLC,QAAQ,GAAG,IAAI;EACf,GAAGC;AACE,CAAC,EAAE;EACR,MAAM,CAACC,YAAY,EAAEC,aAAa,CAAC,GAAG/B,QAAQ,CAAU,KAAK,CAAC;EAC9D,MAAM,CAACgC,aAAa,EAAEC,gBAAgB,CAAC,GAAGjC,QAAQ,CAACkB,KAAK,CAAC;EAEzD,SAASgB,gBAAgBA,CAAA,EAAG;IAC1BN,QAAQ,IAAIG,aAAa,CAAC,IAAI,CAAC;IAC/BZ,aAAa,GAAG,CAAC;EACnB;EAEA,SAASgB,iBAAiBA,CAAA,EAAG;IAC3BJ,aAAa,CAAC,KAAK,CAAC;IACpBX,aAAa,GAAG,CAAC;EACnB;EAEA,SAASgB,WAAWA,CAAA,EAAG;IACrBH,gBAAgB,CAAC,EAAE,CAAC;IACpBR,OAAO,GAAG,CAAC;EACb;EAEAxB,SAAS,CAAC,MAAM;IACdgC,gBAAgB,CAACf,KAAK,CAAC;EACzB,CAAC,EAAE,CAACA,KAAK,CAAC,CAAC;EAEX,oBACEN,KAAA,CAACP,IAAI;IAACgC,KAAK,EAAE/B,OAAO,CAACgC,GAAG,CAAC,CAAC,CAAE;IAAAC,QAAA,gBAC1B7B,IAAA,CAACX,UAAU;MAACyC,OAAO,EAAC,IAAI;MAACC,MAAM,EAAC,UAAU;MAACC,KAAK,EAAE9C,KAAK,CAAC+C,IAAI,CAAC,GAAG,CAAE;MAAAJ,QAAA,EAC/DzB;IAAK,CACI,CAAC,eAEbF,KAAA,CAACP,IAAI;MAACgC,KAAK,EAAE,CAAC/B,OAAO,CAACgC,GAAG,CAAC,CAAC,CAAC,EAAE9B,SAAS,CAACoC,IAAI,CAACC,IAAI,CAAE;MAAAN,QAAA,gBACjD3B,KAAA,CAACV,SAAS;QACRmC,KAAK,EAAE,CACLS,MAAM,CAACC,MAAM,EACbvB,QAAQ,IAAIjB,MAAM,CAACmC,KAAK,CAACM,MAAM,CAAC,GAAG,CAAC,EACpChB,aAAa,KAAK,EAAE,IAAI,CAACR,QAAQ,IAAIjB,MAAM,CAACmC,KAAK,CAACO,OAAO,CAAC,GAAG,CAAC,CAC9D;QACFC,OAAO,EAAEhB,gBAAiB;QAAA,GACtBL,KAAK;QAAAU,QAAA,gBAGT3B,KAAA,CAACP,IAAI;UACHgC,KAAK,EAAE,CACL7B,SAAS,CAACoC,IAAI,CAACO,SAAS,EACxB7C,OAAO,CAACgC,GAAG,CAAC,EAAE,CAAC,EACf9B,SAAS,CAACoC,IAAI,CAACQ,MAAM,EACrB5C,SAAS,CAACoC,IAAI,CAAC,CAAC,CAAC,CACjB;UAAAL,QAAA,GAEDlB,IAAI,iBAAIX,IAAA,CAACb,IAAI;YAACwD,IAAI,EAAEhC,IAAK;YAACiC,IAAI,EAAE,EAAG;YAACZ,KAAK,EAAEpB;UAAU,CAAE,CAAC,eACzDV,KAAA,CAACP,IAAI;YAAAkC,QAAA,gBACH3B,KAAA,CAACP,IAAI;cAACgC,KAAK,EAAE,CAAC7B,SAAS,CAACoC,IAAI,CAACO,SAAS,EAAE7C,OAAO,CAACgC,GAAG,CAAC,CAAC,CAAC,CAAE;cAAAC,QAAA,gBACtD7B,IAAA,CAACX,UAAU;gBACTyC,OAAO,EAAC,IAAI;gBACZE,KAAK,EAAE9C,KAAK,CAAC+C,IAAI,CAAC,GAAG,CAAE;gBACvBF,MAAM,EAAC,QAAQ;gBACfc,aAAa,EAAE,CAAE;gBAAAhB,QAAA,EAEhB,CAACP,aAAa,GAAGjB,WAAW,GAAGiB;cAAa,CACnC,CAAC,EACZL,KAAK,gBACJjB,IAAA,CAACf,KAAK;gBAACuB,KAAK,EAAES,KAAK,CAACT,KAAM;gBAACoC,IAAI,EAAC,OAAO;gBAACZ,KAAK,EAAEf,KAAK,CAACe;cAAM,CAAE,CAAC,GAC5D,IAAI;YAAA,CACJ,CAAC,EAENhB,QAAQ,iBACPhB,IAAA,CAACX,UAAU;cACTyC,OAAO,EAAC,IAAI;cACZE,KAAK,EAAE9C,KAAK,CAAC+C,IAAI,CAAC,GAAG,CAAE;cACvBF,MAAM,EAAC,QAAQ;cACfc,aAAa,EAAE,CAAE;cAAAhB,QAAA,EAEhBb;YAAQ,CACC,CACb;UAAA,CACG,CAAC;QAAA,CACH,CAAC,eAGPd,KAAA,CAACP,IAAI;UAACgC,KAAK,EAAE,CAAC7B,SAAS,CAACoC,IAAI,CAACO,SAAS,EAAE7C,OAAO,CAACgC,GAAG,CAAC,CAAC,CAAC,CAAE;UAAAC,QAAA,GACrDd,OAAO,IAAIO,aAAa,iBACvBtB,IAAA,CAACN,gBAAgB;YAACoD,aAAa,EAAE,GAAI;YAACN,OAAO,EAAEd,WAAY;YAAAG,QAAA,eACzD7B,IAAA,CAACb,IAAI;cAACwD,IAAI,EAAC,UAAU;cAACC,IAAI,EAAE,EAAG;cAACZ,KAAK,EAAC;YAAM,CAAE;UAAC,CAC/B,CACnB,eACDhC,IAAA,CAACb,IAAI;YACHwD,IAAI,EAAEzB,QAAQ,GAAG,WAAW,GAAG,YAAa;YAC5C0B,IAAI,EAAE1B,QAAQ,GAAG,EAAE,GAAG,EAAG;YACzBc,KAAK,EAAE9C,KAAK,CAAC+C,IAAI,CAAC,GAAG;UAAE,CACxB,CAAC;QAAA,CACE,CAAC;MAAA,CACE,CAAC,EAEXpB,IAAI,iBACHb,IAAA,CAACX,UAAU;QACTyC,OAAO,EAAC,IAAI;QACZE,KAAK,EAAElB,QAAQ,GAAG5B,KAAK,CAACoD,MAAM,CAAC,GAAG,CAAC,GAAGpD,KAAK,CAAC+C,IAAI,CAAC,GAAG,CAAE;QACtDF,MAAM,EAAC,QAAQ;QACfc,aAAa,EAAE,CAAE;QAAAhB,QAAA,EAEhBhB;MAAI,CACK,CACb;IAAA,CACG,CAAC,EAENK,QAAQ,iBACPlB,IAAA,CAACZ,MAAM;MACL2D,MAAM,EAAE3B,YAAa;MAAA,GACjBd,WAAW;MACf0C,IAAI,EAAEzC,OAAO,IAAI,EAAG;MACpB0C,OAAO,EAAExB;IAAkB,CAC5B,CACF;EAAA,CACG,CAAC;AAEX;AAEA,MAAMW,MAAM,GAAG3C,UAAU,CAACyD,MAAM,CAAC;EAC/Bb,MAAM,EAAE;IACNc,eAAe,EAAE,EAAE;IACnBC,iBAAiB,EAAE,EAAE;IACrBC,YAAY,EAAE,CAAC;IACfC,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBC,WAAW,EAAE,CAAC;IACdC,WAAW,EAAEvE,KAAK,CAAC+C,IAAI,CAAC,GAAG,CAAC;IAC5BL,GAAG,EAAE;EACP;AACF,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,392 @@
1
+ # InputSelect Component
2
+
3
+ Komponen dropdown/select yang fleksibel dengan dukungan modal, badge, subtitle, dan clear button. Dapat digunakan untuk single atau multiple selection dengan berbagai customization.
4
+
5
+ ## Instalasi
6
+
7
+ ```bash
8
+ npm install @herca/rn-kit
9
+ ```
10
+
11
+ ## Import
12
+
13
+ ```tsx
14
+ import InputSelect from '@/components/InputSelect';
15
+ ```
16
+
17
+ ## Penggunaan Dasar
18
+
19
+ ```tsx
20
+ import { useState } from 'react';
21
+ import InputSelect from '@/components/InputSelect';
22
+
23
+ export default function Example() {
24
+ const [selected, setSelected] = useState('');
25
+
26
+ const options = [
27
+ { label: 'Option 1', value: '1' },
28
+ { label: 'Option 2', value: '2' },
29
+ { label: 'Option 3', value: '3' },
30
+ ];
31
+
32
+ return (
33
+ <InputSelect
34
+ label="Pilih Opsi"
35
+ placeholder="Silakan pilih..."
36
+ value={selected}
37
+ options={options}
38
+ selectProps={{
39
+ onSubmit: (val) => setSelected(val[0]?.value),
40
+ }}
41
+ />
42
+ );
43
+ }
44
+ ```
45
+
46
+ ## Props
47
+
48
+ ### Required Props
49
+
50
+ | Prop | Type | Deskripsi |
51
+ | ------- | -------- | ------------------------ |
52
+ | `label` | `string` | Label untuk input select |
53
+
54
+ ### Optional Props
55
+
56
+ | Prop | Type | Default | Deskripsi |
57
+ | --------------- | ----------------------------------- | ------------------ | ---------------------------------------------------- |
58
+ | `placeholder` | `string` | `'Select here...'` | Teks placeholder ketika tidak ada nilai yang dipilih |
59
+ | `options` | `ChipOptionProps[]` | `undefined` | Daftar opsi yang dapat dipilih |
60
+ | `value` | `string` | `undefined` | Nilai yang dipilih saat ini |
61
+ | `selectProps` | `SelectPropsWithoutData` | `undefined` | Props tambahan untuk komponen Select |
62
+ | `icon` | `IconNameProps` | `undefined` | Nama icon yang ditampilkan di sebelah kiri |
63
+ | `iconColor` | `string` | `undefined` | Warna icon sebelah kiri |
64
+ | `hasError` | `boolean` | `false` | Menampilkan state error dengan border merah |
65
+ | `hint` | `string` | `undefined` | Teks hint/bantuan di bawah input |
66
+ | `onClear` | `() => void` | `undefined` | Callback ketika tombol clear ditekan |
67
+ | `onSelectClick` | `() => void` | `undefined` | Callback ketika input ditekan |
68
+ | `onSelectClose` | `() => void` | `undefined` | Callback ketika modal ditutup |
69
+ | `subtitle` | `string` | `undefined` | Subtitle tambahan di bawah value |
70
+ | `badge` | `{ value: string; color: Variant }` | `undefined` | Badge yang ditampilkan di samping value |
71
+ | `useModal` | `boolean` | `true` | Gunakan modal untuk menampilkan opsi |
72
+
73
+ ### Pressable Props
74
+
75
+ Komponen ini extends dari `Pressable`, sehingga menerima semua props dari `React.ComponentProps<typeof Pressable>`:
76
+
77
+ ```tsx
78
+ <InputSelect
79
+ label="Select"
80
+ disabled={false}
81
+ onLongPress={() => console.log('long press')}
82
+ // ... props lainnya
83
+ />
84
+ ```
85
+
86
+ ## Contoh Penggunaan
87
+
88
+ ### Dengan Badge
89
+
90
+ ```tsx
91
+ <InputSelect
92
+ label="Status Pembayaran"
93
+ value="paid"
94
+ badge={{
95
+ value: 'Lunas',
96
+ color: 'success',
97
+ }}
98
+ options={[
99
+ { label: 'Dibayar', value: 'paid' },
100
+ { label: 'Tertunda', value: 'pending' },
101
+ { label: 'Ditolak', value: 'rejected' },
102
+ ]}
103
+ selectProps={{
104
+ onSubmit: (val) => console.log(val),
105
+ }}
106
+ />
107
+ ```
108
+
109
+ ### Dengan Error State
110
+
111
+ ```tsx
112
+ <InputSelect
113
+ label="Email Provider"
114
+ hasError={true}
115
+ hint="Pilih email provider yang valid"
116
+ placeholder="Contoh: Gmail, Outlook"
117
+ options={[
118
+ { label: 'Gmail', value: 'gmail' },
119
+ { label: 'Outlook', value: 'outlook' },
120
+ ]}
121
+ />
122
+ ```
123
+
124
+ ### Dengan Icon dan Subtitle
125
+
126
+ ```tsx
127
+ <InputSelect
128
+ label="Lokasi Kerja"
129
+ icon="MapPin"
130
+ iconColor="#0066CC"
131
+ value="jakarta"
132
+ subtitle="Kantor Pusat"
133
+ options={[
134
+ { label: 'Jakarta', value: 'jakarta', icon: 'MapPin' },
135
+ { label: 'Surabaya', value: 'surabaya', icon: 'MapPin' },
136
+ ]}
137
+ />
138
+ ```
139
+
140
+ ### Dengan Clear Button
141
+
142
+ ```tsx
143
+ <InputSelect
144
+ label="Kategori"
145
+ value={category}
146
+ onClear={() => setCategory('')}
147
+ options={categoryOptions}
148
+ selectProps={{
149
+ onSubmit: (val) => setCategory(val[0]?.value),
150
+ }}
151
+ />
152
+ ```
153
+
154
+ ### Menggunakan Select Props untuk Advanced Config
155
+
156
+ ```tsx
157
+ <InputSelect
158
+ label="Multiple Selection"
159
+ options={options}
160
+ selectProps={{
161
+ multiple: true,
162
+ required: true,
163
+ loading: false,
164
+ delaySearch: 300,
165
+ onSearch: (query) => console.log('Search:', query),
166
+ onRefresh: () => fetchOptions(),
167
+ }}
168
+ />
169
+ ```
170
+
171
+ ### Tanpa Modal (Arrow Right)
172
+
173
+ ```tsx
174
+ <InputSelect
175
+ label="Navigasi ke Detail"
176
+ useModal={false}
177
+ value="selected-item"
178
+ onSelectClick={() => navigation.navigate('DetailScreen')}
179
+ />
180
+ ```
181
+
182
+ ## State Management
183
+
184
+ Komponen ini menggunakan internal state untuk mengelola nilai. Untuk kontrol penuh dari parent component:
185
+
186
+ ```tsx
187
+ import { useState } from 'react';
188
+
189
+ export default function Form() {
190
+ const [selectedValue, setSelectedValue] = useState('');
191
+
192
+ const handleSelectChange = (val) => {
193
+ setSelectedValue(val[0]?.value || '');
194
+ };
195
+
196
+ return (
197
+ <InputSelect
198
+ label="Pilih Item"
199
+ value={selectedValue}
200
+ options={options}
201
+ selectProps={{
202
+ onSubmit: handleSelectChange,
203
+ }}
204
+ />
205
+ );
206
+ }
207
+ ```
208
+
209
+ ## Styling & Customization
210
+
211
+ ### Custom Border Color
212
+
213
+ ```tsx
214
+ <InputSelect
215
+ label="Custom Style"
216
+ hasError={true} // Border merah
217
+ value="selected"
218
+ // atau
219
+ value="selected" // Border biru
220
+ />
221
+ ```
222
+
223
+ ### Custom Spacing
224
+
225
+ Komponen menggunakan spacing dari style config:
226
+
227
+ - Gap antar elements: `spacing.gap[4]`
228
+ - Padding: `paddingVertical: 10, paddingHorizontal: 12`
229
+ - Border radius: `borderRadius: 8`
230
+
231
+ Untuk override, gunakan prop `style` dari Pressable:
232
+
233
+ ```tsx
234
+ <InputSelect label="Custom" style={{ paddingHorizontal: 16 }} />
235
+ ```
236
+
237
+ ## TypeScript
238
+
239
+ ```tsx
240
+ import InputSelect from '@/components/InputSelect';
241
+ import type { ChipOptionProps } from '@herca/rn-kit';
242
+
243
+ const options: ChipOptionProps[] = [
244
+ { label: 'Opsi 1', value: '1' },
245
+ { label: 'Opsi 2', value: '2' },
246
+ ];
247
+
248
+ <InputSelect
249
+ label="Type Safe"
250
+ options={options}
251
+ value="1"
252
+ selectProps={{
253
+ multiple: false,
254
+ }}
255
+ />;
256
+ ```
257
+
258
+ ## Event Callbacks
259
+
260
+ ### onSelectClick
261
+
262
+ Dipanggil ketika user menekan input (hanya jika `useModal = true`):
263
+
264
+ ```tsx
265
+ <InputSelect
266
+ label="Select"
267
+ onSelectClick={() => {
268
+ console.log('Modal akan dibuka');
269
+ }}
270
+ />
271
+ ```
272
+
273
+ ### onSelectClose
274
+
275
+ Dipanggil ketika modal ditutup:
276
+
277
+ ```tsx
278
+ <InputSelect
279
+ label="Select"
280
+ onSelectClose={() => {
281
+ console.log('Modal ditutup');
282
+ }}
283
+ />
284
+ ```
285
+
286
+ ### onClear
287
+
288
+ Dipanggil ketika user menekan tombol clear:
289
+
290
+ ```tsx
291
+ <InputSelect
292
+ label="Select"
293
+ onClear={() => {
294
+ console.log('Nilai di-clear');
295
+ }}
296
+ />
297
+ ```
298
+
299
+ ## Best Practices
300
+
301
+ 1. **Selalu berikan label yang deskriptif**
302
+
303
+ ```tsx
304
+ <InputSelect label="Pilih Departemen" /> ✅
305
+ <InputSelect label="Item" /> ❌
306
+ ```
307
+
308
+ 2. **Gunakan hint untuk memberikan konteks tambahan**
309
+
310
+ ```tsx
311
+ <InputSelect
312
+ label="Role"
313
+ hint="Pilih role yang sesuai dengan fungsi pengguna"
314
+ />
315
+ ```
316
+
317
+ 3. **Validasi dan tampilkan error state**
318
+
319
+ ```tsx
320
+ <InputSelect
321
+ label="Email"
322
+ hasError={!isValid}
323
+ hint={!isValid ? 'Email harus dipilih' : undefined}
324
+ />
325
+ ```
326
+
327
+ 4. **Untuk multiple selection, gunakan selectProps.multiple**
328
+
329
+ ```tsx
330
+ <InputSelect label="Tags" selectProps={{ multiple: true }} />
331
+ ```
332
+
333
+ 5. **Manfaatkan subtitle untuk informasi sekunder**
334
+ ```tsx
335
+ <InputSelect label="Cabang" value="jakarta-pusat" subtitle="Kantor Pusat" />
336
+ ```
337
+
338
+ ## Accessibility
339
+
340
+ - Label selalu ditampilkan untuk clarity
341
+ - Error state ditunjukkan dengan visual feedback (border merah) dan text hint
342
+ - Icon dan button memiliki ukuran yang cukup untuk touch targets
343
+ - Color contrast mengikuti WCAG guidelines
344
+
345
+ ## Troubleshooting
346
+
347
+ ### Modal tidak membuka
348
+
349
+ ```tsx
350
+ // Pastikan useModal = true (default)
351
+ <InputSelect useModal={true} />
352
+
353
+ // Atau jika ingin custom behavior
354
+ <InputSelect
355
+ useModal={false}
356
+ onSelectClick={() => {
357
+ // Handle custom behavior
358
+ }}
359
+ />
360
+ ```
361
+
362
+ ### Value tidak update
363
+
364
+ ```tsx
365
+ // Pastikan meng-update melalui selectProps.onSubmit
366
+ selectProps={{
367
+ onSubmit: (val) => {
368
+ // Update state parent
369
+ setSelectedValue(val[0]?.value);
370
+ }
371
+ }}
372
+ ```
373
+
374
+ ### Clear button tidak muncul
375
+
376
+ ```tsx
377
+ // Clear button hanya muncul jika:
378
+ // 1. onClear prop ada
379
+ // 2. value tidak kosong
380
+ <InputSelect value="selected" onClear={() => setSelected('')} />
381
+ ```
382
+
383
+ ## Related Components
384
+
385
+ - [`Select`](./Select.md) - Base select component dengan modal
386
+ - [`Chip`](./Chip.md) - Komponen untuk menampilkan options
387
+ - [`Badge`](./Badge.md) - Komponen untuk menampilkan badge
388
+ - [`Input`](./Input.md) - Text input component
389
+
390
+ ## License
391
+
392
+ MIT
@@ -17,7 +17,7 @@ const ModalPopUp = ({
17
17
  containerStyle,
18
18
  modalStyle
19
19
  }) => {
20
- const [isVisible, setIsVisible] = useState(false);
20
+ const [isVisible, setIsVisible] = useState(isOpen);
21
21
  const scaleAnim = useState(() => new Animated.Value(0))[0];
22
22
  const showModal = useCallback(() => {
23
23
  setIsVisible(true);
@@ -37,14 +37,14 @@ const ModalPopUp = ({
37
37
  if (closable) {
38
38
  hideModal?.();
39
39
  }
40
- }, [closable, onRequestClose, hideModal]);
40
+ }, [closable, hideModal]);
41
41
  useEffect(() => {
42
42
  if (isOpen) {
43
43
  showModal();
44
- } else {
45
- hideModal();
46
44
  }
47
- }, [isOpen, showModal, hideModal]);
45
+
46
+ // eslint-disable-next-line react-hooks/exhaustive-deps
47
+ }, [isOpen]);
48
48
  const modalContentStyle = StyleSheet.flatten([{
49
49
  transform: [{
50
50
  scale: scaleAnim
@@ -1 +1 @@
1
- {"version":3,"names":["React","useState","useEffect","useCallback","View","StyleSheet","Modal","TouchableOpacity","Animated","SafeAreaView","Platform","Icon","Color","jsx","_jsx","jsxs","_jsxs","ModalPopUp","isOpen","onClose","children","backdrop","closable","onRequestClose","bgColor","width","containerStyle","modalStyle","isVisible","setIsVisible","scaleAnim","Value","showModal","spring","toValue","useNativeDriver","damping","stiffness","start","hideModal","handleBackdropPress","modalContentStyle","flatten","transform","scale","backgroundColor","maxHeight","transparent","visible","statusBarTranslucent","style","styles","modalContainer","backdropTouch","activeOpacity","onPress","modalContent","closeButtonContainer","closeButton","iconButtonClose","name","size","color","gray","contentContainer","create","flex","justifyContent","alignItems","position","top","left","right","bottom","height","borderRadius","overflow","select","ios","shadowColor","shadowOffset","shadowOpacity","shadowRadius","android","elevation","zIndex","alignContent","padding"],"sourceRoot":"../../../src","sources":["Modal/Modal.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useState","useEffect","useCallback","View","StyleSheet","Modal","TouchableOpacity","Animated","SafeAreaView","Platform","Icon","Color","jsx","_jsx","jsxs","_jsxs","ModalPopUp","isOpen","onClose","children","backdrop","closable","onRequestClose","bgColor","width","containerStyle","modalStyle","isVisible","setIsVisible","scaleAnim","Value","showModal","spring","toValue","useNativeDriver","damping","stiffness","start","hideModal","handleBackdropPress","modalContentStyle","flatten","transform","scale","backgroundColor","maxHeight","transparent","visible","statusBarTranslucent","style","styles","modalContainer","backdropTouch","activeOpacity","onPress","modalContent","closeButtonContainer","closeButton","iconButtonClose","name","size","color","gray","contentContainer","create","flex","justifyContent","alignItems","position","top","left","right","bottom","height","borderRadius","overflow","select","ios","shadowColor","shadowOffset","shadowOpacity","shadowRadius","android","elevation","zIndex","alignContent","padding"],"sourceRoot":"../../../src","sources":["Modal/Modal.tsx"],"mappings":"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","ignoreList":[]}