@herca/rn-kit 0.1.30 → 0.1.31

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.
@@ -205,7 +205,7 @@ const styles = StyleSheet.create({
205
205
  backgroundColor: Color.base.white100,
206
206
  position: 'absolute',
207
207
  paddingTop: 10,
208
- marginBottom: 32,
208
+ paddingBottom: 32,
209
209
  bottom: 0,
210
210
  left: 0,
211
211
  right: 0,
@@ -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","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","marginBottom","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","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":";;AAAA,SAASA,SAAS,EAAEC,MAAM,EAAEC,QAAQ,EAAEC,WAAW,QAAQ,OAAO;AAChE,SACEC,IAAI,EACJC,UAAU,EACVC,YAAY,EACZC,gBAAgB,EAChBC,QAAQ,EACRC,KAAK,EACLC,oBAAoB,EACpBC,QAAQ,EACRC,UAAU,EACVC,YAAY,EACZC,QAAQ,EACRC,SAAS,QAEJ,cAAc;AACrB,OAAOC,SAAS,MAAM,oBAAiB;AACvC,OAAOC,UAAU,MAAM,6BAA0B;AACjD,OAAOC,KAAK,MAAM,mBAAgB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAGnC,MAAMC,eAAe,GACnBT,QAAQ,CAACU,EAAE,KAAK,SAAS,GAAIT,SAAS,CAACU,aAAa,IAAI,EAAE,GAAI,EAAE;AAClE,MAAMC,YAAY,GAAGd,UAAU,CAACe,GAAG,CAAC,QAAQ,CAAC,CAACC,MAAM;AACpD,MAAMC,kBAAkB,GAAGH,YAAY,GAAGH,eAAe;AACzD,MAAMO,sBAAsB,GAAG,EAAE;AACjC,eAAe,SAASC,WAAWA,CAAC;EAClCC,MAAM;EACNC,OAAO;EACPC,QAAQ;EACRC,QAAQ,GAAG,IAAI;EACfC,QAAQ,GAAG,IAAI;EACfC,cAAc;EACdC,WAAW,GAAG,KAAK;EACnBV,MAAM;EACNW,OAAO;EACPC;AACiB,CAAC,EAAE;EACpB,MAAM,CAACC,SAAS,EAAEC,YAAY,CAAC,GAAGxC,QAAQ,CAAC,KAAK,CAAC;EACjD,MAAM,CAACyC,YAAY,EAAEC,eAAe,CAAC,GAAG1C,QAAQ,CAAC,CAAC,CAAC;EACnD,MAAM,CAAC2C,YAAY,EAAEC,eAAe,CAAC,GACnC5C,QAAQ,CAAwB,MAAM,CAAC;EACzC,MAAM,CAAC6C,SAAS,EAAEC,YAAY,CAAC,GAC7B9C,QAAQ,CAAwB2B,kBAAkB,CAAC;EACrD,MAAMoB,UAAU,GAAGhD,MAAM,CAAC,IAAIO,QAAQ,CAAC0C,KAAK,CAAC,GAAG,CAAC,CAAC,CAACC,OAAO;EAE1D,MAAMC,YAAY,GAAGnD,MAAM,CACzBK,YAAY,CAAC+C,MAAM,CAAC;IAClBC,4BAA4B,EAAEA,CAAA,KAAM,IAAI;IACxCC,2BAA2B,EAAEA,CAAA,KAAM,KAAK;IACxCC,kBAAkB,EAAEA,CAACC,CAAC,EAAEC,YAAY,KAAK;MACvC,IAAIA,YAAY,CAACC,EAAE,GAAG,CAAC,EAAE;QACvBV,UAAU,CAACW,QAAQ,CAACF,YAAY,CAACC,EAAE,CAAC;MACtC;IACF,CAAC;IACDE,qBAAqB,EAAEA,CAACJ,CAAC,EAAEC,YAAY,KAAK;MAC1C,IAAItB,QAAQ,IAAIsB,YAAY,CAACC,EAAE,GAAG,EAAE,EAAE;QACpCG,kBAAkB,CAAC,CAAC;MACtB,CAAC,MAAM;QACLC,kBAAkB,CAAC,CAAC;MACtB;IACF;EACF,CAAC,CACH,CAAC,CAACZ,OAAO;EAET,MAAMa,SAAS,GAAG7D,WAAW,CAAC,MAAM;IAClC,IAAIiC,QAAQ,EAAE;MACZ5B,QAAQ,CAACyD,MAAM,CAAChB,UAAU,EAAE;QAC1BiB,OAAO,EAAE,GAAG;QACZC,QAAQ,EAAE,GAAG;QACbC,eAAe,EAAE;MACnB,CAAC,CAAC,CAACC,KAAK,CAAC,MAAM;QACb3B,YAAY,CAAC,KAAK,CAAC;QACnBT,OAAO,IAAIA,OAAO,CAAC,KAAK,CAAC;MAC3B,CAAC,CAAC;IACJ;EACF,CAAC,EAAE,CAACG,QAAQ,EAAEa,UAAU,EAAEhB,OAAO,CAAC,CAAC;EAEnC,MAAMqC,SAAS,GAAGnE,WAAW,CAAC,MAAM;IAClCuC,YAAY,CAAC,IAAI,CAAC;IAClBlC,QAAQ,CAAC+D,MAAM,CAACtB,UAAU,EAAE;MAC1BiB,OAAO,EAAE,CAAC;MACVE,eAAe,EAAE;IACnB,CAAC,CAAC,CAACC,KAAK,CAAC,CAAC;EACZ,CAAC,EAAE,CAACpB,UAAU,CAAC,CAAC;EAEhB,MAAMa,kBAAkB,GAAIU,CAAO,IAAK;IACtCR,SAAS,CAAC,CAAC;IACX3B,cAAc,IAAIA,cAAc,CAACmC,CAAC,CAAC;EACrC,CAAC;EAED,MAAMT,kBAAkB,GAAGA,CAAA,KAAM;IAC/BvD,QAAQ,CAAC+D,MAAM,CAACtB,UAAU,EAAE;MAC1BiB,OAAO,EAAE,CAAC;MACVE,eAAe,EAAE;IACnB,CAAC,CAAC,CAACC,KAAK,CAAC,CAAC;EACZ,CAAC;EAEDrE,SAAS,CAAC,MAAM;IACd,IAAIgC,MAAM,EAAE;MACVsC,SAAS,CAAC,CAAC;IACb,CAAC,MAAM;MACLN,SAAS,CAAC,CAAC;IACb;EACF,CAAC,EAAE,CAAChC,MAAM,EAAEsC,SAAS,EAAEN,SAAS,CAAC,CAAC;EAElChE,SAAS,CAAC,MAAM;IACd,IAAI4B,MAAM,EAAE;MACVkB,eAAe,CAAClB,MAAM,CAAC;IACzB;EACF,CAAC,EAAE,CAACA,MAAM,CAAC,CAAC;EAEZ5B,SAAS,CAAC,MAAM;IACd,MAAMyE,uBAAuB,GAAG9D,QAAQ,CAAC+D,WAAW,CAClD,iBAAiB,EAChBF,CAAgB,IAAK;MACpB,MAAMG,cAAc,GAAGH,CAAC,CAACI,cAAc,EAAEhD,MAAM,IAAI,GAAG;MACtDoB,YAAY,CAACtB,YAAY,GAAGH,eAAe,GAAGoD,cAAc,CAAC;IAC/D,CACF,CAAC;IAED,MAAME,uBAAuB,GAAGlE,QAAQ,CAAC+D,WAAW,CAClD,iBAAiB,EACjB,MAAM;MACJ1B,YAAY,CAACtB,YAAY,GAAGH,eAAe,CAAC;IAC9C,CACF,CAAC;IAED,OAAO,MAAM;MACXkD,uBAAuB,CAACK,MAAM,CAAC,CAAC;MAChCD,uBAAuB,CAACC,MAAM,CAAC,CAAC;IAClC,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,oBACE1D,IAAA,CAACX,KAAK;IACJsE,WAAW;IACXC,OAAO,EAAEvC,SAAU;IACnBJ,cAAc,EAAEyB,kBAAmB;IACnCmB,aAAa,EAAC,MAAM;IAAA/C,QAAA,eAEpBZ,KAAA,CAAClB,IAAI;MAAC8E,KAAK,EAAE,CAACC,MAAM,CAACC,cAAc,EAAEjD,QAAQ,IAAIgD,MAAM,CAAChD,QAAQ,CAAE;MAAAD,QAAA,gBAChEd,IAAA,CAACb,gBAAgB;QACf8E,OAAO,EAAEvB,kBAAmB;QAC5BwB,aAAa,EAAE,CAAE;QACjBJ,KAAK,EAAEC,MAAM,CAACI;MAAkB,CACjC,CAAC,eAEFnE,IAAA,CAACV,oBAAoB;QACnB8E,QAAQ,EAAE1E,QAAQ,CAACU,EAAE,KAAK,KAAK,GAAG,SAAS,GAAGiE,SAAU;QACxDC,OAAO;QACPR,KAAK,EAAEC,MAAM,CAACQ,gBAAiB;QAAAzD,QAAA,eAE/BZ,KAAA,CAACd,QAAQ,CAACJ,IAAI;UACZ8E,KAAK,EAAE,CACLC,MAAM,CAACS,WAAW,EAClB;YACEC,SAAS,EAAE,CAAC;cAAE5C;YAAW,CAAC,CAAC;YAC3BrB,MAAM,EAAEiB,YAAY;YACpBE,SAAS,EAAEA,SAAS;YACpB+C,aAAa,EAAEhE,sBAAsB,GAAGa;UAC1C,CAAC,CACD;UAAAT,QAAA,GAEDI,WAAW,iBACVlB,IAAA,CAACb,gBAAgB;YACf8E,OAAO,EAAEvB,kBAAmB;YAC5BoB,KAAK,EAAEC,MAAM,CAACY,WAAY;YAAA7D,QAAA,eAE1Bd,IAAA,CAACH,UAAU;cAAAiB,QAAA,EAAC;YAAC,CAAY;UAAC,CACV,CACnB,EACAE,QAAQ,iBACPhB,IAAA,CAAChB,IAAI;YAAA,GACCgD,YAAY,CAAC4C,WAAW;YAC5Bd,KAAK,EAAEC,MAAM,CAACc,sBAAuB;YAAA/D,QAAA,EAEpCK,OAAO,GAAGA,OAAO,gBAAGnB,IAAA,CAAChB,IAAI;cAAC8E,KAAK,EAAEC,MAAM,CAACe;YAAc,CAAE;UAAC,CACtD,CACP,eACD9E,IAAA,CAACP,YAAY;YACXqE,KAAK,EAAE,CACLC,MAAM,CAACgB,gBAAgB,EACvB,IAAI3D,MAAM,GAAG,CAAC2C,MAAM,CAACiB,iBAAiB,CAAC,GAAG,EAAE,CAAC,CAC7C;YAAAlE,QAAA,eAEFd,IAAA,CAACJ,SAAS;cAAAkB,QAAA,EAAEA;YAAQ,CAAY;UAAC,CACrB,CAAC,EACdM,MAAM,iBACLpB,IAAA,CAACP,YAAY;YACXwF,QAAQ,EAAGC,KAAK,IAAK;cACnB,MAAM;gBAAE1E;cAAO,CAAC,GAAG0E,KAAK,CAACC,WAAW,CAACC,MAAM;cAC3C5D,eAAe,CAAChB,MAAM,CAAC;YACzB,CAAE;YACFsD,KAAK,EAAEC,MAAM,CAAC3C,MAAO;YAAAN,QAAA,eAErBd,IAAA,CAACJ,SAAS;cAAAkB,QAAA,EAAEM;YAAM,CAAY;UAAC,CACnB,CACf;QAAA,CACY;MAAC,CACI,CAAC;IAAA,CACnB;EAAC,CACF,CAAC;AAEZ;AAEA,MAAM2C,MAAM,GAAG9E,UAAU,CAACgD,MAAM,CAAC;EAC/B+B,cAAc,EAAE;IACdqB,IAAI,EAAE,CAAC;IACPC,cAAc,EAAE;EAClB,CAAC;EACDvE,QAAQ,EAAE;IACRwE,eAAe,EAAE;EACnB,CAAC;EACDpB,iBAAiB,EAAE;IACjBkB,IAAI,EAAE;EACR,CAAC;EACDd,gBAAgB,EAAE;IAChBe,cAAc,EAAE;EAClB,CAAC;EACDd,WAAW,EAAE;IACXe,eAAe,EAAE,OAAO;IACxBC,mBAAmB,EAAE,EAAE;IACvBC,oBAAoB,EAAE;EACxB,CAAC;EACDd,WAAW,EAAE;IACXe,QAAQ,EAAE,UAAU;IACpBH,eAAe,EAAE,OAAO;IACxBI,eAAe,EAAE,EAAE;IACnBC,iBAAiB,EAAE,EAAE;IACrBC,YAAY,EAAE,EAAE;IAChBC,GAAG,EAAE,CAAC,EAAE;IACRC,KAAK,EAAE,EAAE;IACTC,MAAM,EAAE;EACV,CAAC;EACDnB,sBAAsB,EAAE;IACtBoB,UAAU,EAAE,QAAQ;IACpBvB,aAAa,EAAE;EACjB,CAAC;EACDI,aAAa,EAAE;IACboB,KAAK,EAAE,EAAE;IACT1F,MAAM,EAAE,CAAC;IACT2F,SAAS,EAAE,EAAE;IACbN,YAAY,EAAE,CAAC;IACfN,eAAe,EAAE;EACnB,CAAC;EACDR,gBAAgB,EAAE;IAChBqB,QAAQ,EAAE;EACZ,CAAC;EACDpB,iBAAiB,EAAE,CAAC,CAAC;EACrB5D,MAAM,EAAE;IACNiF,cAAc,EAAE,CAAC;IACjBC,cAAc,EAAExG,KAAK,CAACyG,IAAI,CAAC,GAAG,CAAC;IAC/BhB,eAAe,EAAEzF,KAAK,CAAC0G,IAAI,CAACC,QAAQ;IACpCf,QAAQ,EAAE,UAAU;IACpBgB,UAAU,EAAE,EAAE;IACdhC,aAAa,EAAE,EAAE;IACjBiC,MAAM,EAAE,CAAC;IACTC,IAAI,EAAE,CAAC;IACPb,KAAK,EAAE,CAAC;IACRC,MAAM,EAAE;EACV;AACF,CAAC,CAAC","ignoreList":[]}
@@ -52,6 +52,8 @@ const Chip = ({
52
52
  !isDisabled && handleSelect(item.value);
53
53
  onPress?.(item.value);
54
54
  };
55
+ const flexDirectionStyle = isHorizontal ? 'row' : 'column';
56
+ const alignItemsStyle = block ? 'stretch' : 'flex-start';
55
57
  return /*#__PURE__*/_jsx(FlatList, {
56
58
  data: options,
57
59
  renderItem: ({
@@ -74,8 +76,8 @@ const Chip = ({
74
76
  keyboardShouldPersistTaps: "always",
75
77
  numColumns: numColumns,
76
78
  contentContainerStyle: [styles.container, {
77
- flexDirection: isHorizontal ? 'row' : 'column',
78
- alignItems: block ? 'stretch' : 'flex-start'
79
+ flexDirection: flexDirectionStyle,
80
+ alignItems: alignItemsStyle
79
81
  }],
80
82
  columnWrapperStyle: numColumns > 1 ? styles.wrapperStyle : undefined,
81
83
  ListFooterComponent: footer,
@@ -84,7 +86,8 @@ const Chip = ({
84
86
  };
85
87
  const styles = StyleSheet.create({
86
88
  container: {
87
- gap: 8
89
+ gap: 8,
90
+ paddingBottom: 14
88
91
  },
89
92
  wrapperStyle: {
90
93
  gap: 8,
@@ -1 +1 @@
1
- {"version":3,"names":["React","useState","useEffect","useMemo","FlatList","StyleSheet","ChipItem","jsx","_jsx","Chip","options","selected","onSelect","onPress","direction","color","renderItem","multiple","scrollable","block","size","onRefresh","refreshing","onEndReached","footer","header","isHorizontal","normalizeSelected","val","Array","isArray","internalSelected","setInternalSelected","newSelected","JSON","stringify","isSelected","value","includes","handleSelect","length","filter","v","numColumns","handleOnPresChipItem","isDisabled","item","data","keyExtractor","String","horizontal","scrollEnabled","keyboardShouldPersistTaps","contentContainerStyle","styles","container","flexDirection","alignItems","columnWrapperStyle","wrapperStyle","undefined","ListFooterComponent","ListHeaderComponent","create","gap","flexWrap","chip","borderRadius","borderWidth","alignSelf","chipSmall","paddingVertical","paddingHorizontal","chipMedium","chipLarge","blockChip","width"],"sourceRoot":"../../../src","sources":["Chip/Chip.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,QAAQ,EAAEC,SAAS,EAAEC,OAAO,QAAQ,OAAO;AAC3D,SAASC,QAAQ,EAAEC,UAAU,QAAQ,cAAc;AAOnD,OAAOC,QAAQ,MAAM,eAAY;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAElC,MAAMC,IAAyB,GAAGA,CAAC;EACjCC,OAAO;EACPC,QAAQ,GAAG,EAAE;EACbC,QAAQ;EACRC,OAAO;EACPC,SAAS,GAAG,YAAY;EACxBC,KAAK,GAAG,SAAS;EACjBC,UAAU;EACVC,QAAQ,GAAG,KAAK;EAChBC,UAAU,GAAG,IAAI;EACjBC,KAAK,GAAG,KAAK;EACbC,IAAI,GAAG,QAAQ;EACfC,SAAS;EACTC,UAAU,GAAG,KAAK;EAClBC,YAAY;EACZC,MAAM;EACNC;AACF,CAAC,KAAK;EACJ,MAAMC,YAAY,GAAGZ,SAAS,KAAK,YAAY;EAE/C,MAAMa,iBAAiB,GAAIC,GAAsB,IAC/CC,KAAK,CAACC,OAAO,CAACF,GAAG,CAAC,GAAGA,GAAG,GAAGA,GAAG,GAAG,CAACA,GAAG,CAAC,GAAG,EAAE;EAE7C,MAAM,CAACG,gBAAgB,EAAEC,mBAAmB,CAAC,GAAG/B,QAAQ,CACtD0B,iBAAiB,CAAChB,QAAQ,CAC5B,CAAC;EAEDT,SAAS,CAAC,MAAM;IACd,MAAM+B,WAAW,GAAGN,iBAAiB,CAAChB,QAAQ,CAAC;IAC/C,IAAIuB,IAAI,CAACC,SAAS,CAACF,WAAW,CAAC,KAAKC,IAAI,CAACC,SAAS,CAACJ,gBAAgB,CAAC,EAAE;MACpEC,mBAAmB,CAACC,WAAW,CAAC;IAClC;EACF,CAAC,EAAE,CAACtB,QAAQ,EAAEoB,gBAAgB,CAAC,CAAC;EAEhC,MAAMK,UAAU,GAAIC,KAAgB,IAAKN,gBAAgB,CAACO,QAAQ,CAACD,KAAK,CAAC;EAEzE,MAAME,YAAY,GAAIF,KAAsB,IAAK;IAC/C,IAAIJ,WAA8B;IAElC,IAAIhB,QAAQ,IAAK,CAACA,QAAQ,IAAIc,gBAAgB,CAACS,MAAM,KAAK,CAAE,EAAE;MAC5DP,WAAW,GAAGG,UAAU,CAACC,KAAK,CAAC,GAC3BN,gBAAgB,CAACU,MAAM,CAAEC,CAAC,IAAKA,CAAC,KAAKL,KAAK,CAAC,GAC3C,CAAC,GAAGN,gBAAgB,EAAEM,KAAK,CAAC;IAClC,CAAC,MAAM;MACLJ,WAAW,GAAG,CAACI,KAAK,CAAC;IACvB;IAEAL,mBAAmB,CAACC,WAAW,CAAC;IAEhC,IAAIrB,QAAQ,EAAE;MACZA,QAAQ,CAACqB,WAAW,CAAC;IACvB;EACF,CAAC;EAED,MAAMU,UAAU,GAAGxC,OAAO,CAAC,MAAM;IAC/B,IAAIuB,YAAY,IAAIP,KAAK,EAAE,OAAO,CAAC;IACnC,OAAO,CAAC;EACV,CAAC,EAAE,CAACA,KAAK,EAAEO,YAAY,CAAC,CAAC;EAEzB,MAAMkB,oBAAoB,GAAGA,CAACC,UAAmB,EAAEC,IAAqB,KAAK;IAC3E,CAACD,UAAU,IAAIN,YAAY,CAACO,IAAI,CAACT,KAAK,CAAC;IACvCxB,OAAO,GAAGiC,IAAI,CAACT,KAAK,CAAC;EACvB,CAAC;EAED,oBACE7B,IAAA,CAACJ,QAAQ;IACP2C,IAAI,EAAErC,OAAQ;IACdM,UAAU,EAAEA,CAAC;MAAE8B;IAAK,CAAC,kBACnBtC,IAAA,CAACF,QAAQ;MACPwC,IAAI,EAAEA,IAAK;MACXV,UAAU,EAAEA,CAAA,KAAMA,UAAU,CAACU,IAAI,CAACT,KAAK,CAAE;MACzCtB,KAAK,EAAEA,KAAM;MACbI,KAAK,EAAEA,KAAM;MACbN,OAAO,EAAE+B,oBAAqB;MAC9BxB,IAAI,EAAEA,IAAK;MACXJ,UAAU,EAAEA;IAAW,CACxB,CACD;IACFgC,YAAY,EAAGF,IAAI,IAAKG,MAAM,CAACH,IAAI,CAACT,KAAK,CAAE;IAC3Ca,UAAU,EAAExB,YAAa;IACzBH,YAAY,EAAEA,YAAa;IAC3BF,SAAS,EAAEA,SAAU;IACrBC,UAAU,EAAEA,UAAW;IACvB6B,aAAa,EAAEjC,UAAW;IAC1BkC,yBAAyB,EAAC,QAAQ;IAClCT,UAAU,EAAEA,UAAW;IACvBU,qBAAqB,EAAE,CACrBC,MAAM,CAACC,SAAS,EAChB;MACEC,aAAa,EAAE9B,YAAY,GAAG,KAAK,GAAG,QAAQ;MAC9C+B,UAAU,EAAEtC,KAAK,GAAG,SAAS,GAAG;IAClC,CAAC,CACD;IACFuC,kBAAkB,EAAEf,UAAU,GAAG,CAAC,GAAGW,MAAM,CAACK,YAAY,GAAGC,SAAU;IACrEC,mBAAmB,EAAErC,MAAO;IAC5BsC,mBAAmB,EAAErC;EAAO,CAC7B,CAAC;AAEN,CAAC;AAED,MAAM6B,MAAM,GAAGjD,UAAU,CAAC0D,MAAM,CAAC;EAC/BR,SAAS,EAAE;IACTS,GAAG,EAAE;EACP,CAAC;EACDL,YAAY,EAAE;IACZK,GAAG,EAAE,CAAC;IACNC,QAAQ,EAAE;EACZ,CAAC;EACDC,IAAI,EAAE;IACJC,YAAY,EAAE,CAAC;IACfC,WAAW,EAAE,CAAC;IACdC,SAAS,EAAE;EACb,CAAC;EACDC,SAAS,EAAE;IACTC,eAAe,EAAE,CAAC;IAClBC,iBAAiB,EAAE;EACrB,CAAC;EACDC,UAAU,EAAE;IACVF,eAAe,EAAE,CAAC;IAClBC,iBAAiB,EAAE;EACrB,CAAC;EACDE,SAAS,EAAE;IACTH,eAAe,EAAE,EAAE;IACnBC,iBAAiB,EAAE;EACrB,CAAC;EACDG,SAAS,EAAE;IACTC,KAAK,EAAE,MAAM;IACbP,SAAS,EAAE;EACb;AACF,CAAC,CAAC;AAEF,eAAe5D,IAAI","ignoreList":[]}
1
+ {"version":3,"names":["React","useState","useEffect","useMemo","FlatList","StyleSheet","ChipItem","jsx","_jsx","Chip","options","selected","onSelect","onPress","direction","color","renderItem","multiple","scrollable","block","size","onRefresh","refreshing","onEndReached","footer","header","isHorizontal","normalizeSelected","val","Array","isArray","internalSelected","setInternalSelected","newSelected","JSON","stringify","isSelected","value","includes","handleSelect","length","filter","v","numColumns","handleOnPresChipItem","isDisabled","item","flexDirectionStyle","alignItemsStyle","data","keyExtractor","String","horizontal","scrollEnabled","keyboardShouldPersistTaps","contentContainerStyle","styles","container","flexDirection","alignItems","columnWrapperStyle","wrapperStyle","undefined","ListFooterComponent","ListHeaderComponent","create","gap","paddingBottom","flexWrap","chip","borderRadius","borderWidth","alignSelf","chipSmall","paddingVertical","paddingHorizontal","chipMedium","chipLarge","blockChip","width"],"sourceRoot":"../../../src","sources":["Chip/Chip.tsx"],"mappings":"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","ignoreList":[]}
@@ -59,6 +59,7 @@ import WhatsAppFill from "./icons/WhatsappFill.js";
59
59
  import Bold from "./icons/Bold.js";
60
60
  import Italic from "./icons/Italic.js";
61
61
  import UnderLine from "./icons/UnderLine.js";
62
+ import SettingsSlider from "./icons/SettingsSlider.js";
62
63
  import { jsx as _jsx } from "react/jsx-runtime";
63
64
  const icons = {
64
65
  'Search': Search,
@@ -118,7 +119,8 @@ const icons = {
118
119
  'whatsapp-fill': WhatsAppFill,
119
120
  'Bold': Bold,
120
121
  'Italic': Italic,
121
- 'UnderLine': UnderLine
122
+ 'UnderLine': UnderLine,
123
+ 'settings-slider': SettingsSlider
122
124
  };
123
125
  const Icon = ({
124
126
  name,
@@ -1 +1 @@
1
- {"version":3,"names":["React","User","Eye","XCircle","ArrowRight","Document","Calendar","Download","StickyNote","Pdf","RadioButton","ArrowBackAlt","ArrowForwardAlt","Check","Filter","AirPlane","Camera","Image","Times","ArrowDown","ArrowUp","Search","ArrowLeft","EyeOpen","ExclamationMark","FileListCheck","FileText","FolderClock","HomeFill","HomeOutline","Plus","UserCircleFill","UserCircleOutline","ClipBoardListCheck","ClipBoardList","Megaphone","Bell","BookmarkUser","Scanner","ClockOutline","Clock","BoxOutline","ClipBoardListCheckOutline","Box","Minus","PlusSquare","AtSign","BriefCaseOutline","EditSquareOutline","GlobeEarth","LockFill","LogoHercaHris","QuestionCircleOutline","ShieldFill","Users","WhatsAppFill","Bold","Italic","UnderLine","jsx","_jsx","icons","Icon","name","size","color","style","SelectedIcon"],"sourceRoot":"../../../src","sources":["Icon/Icon.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","User","Eye","XCircle","ArrowRight","Document","Calendar","Download","StickyNote","Pdf","RadioButton","ArrowBackAlt","ArrowForwardAlt","Check","Filter","AirPlane","Camera","Image","Times","ArrowDown","ArrowUp","Search","ArrowLeft","EyeOpen","ExclamationMark","FileListCheck","FileText","FolderClock","HomeFill","HomeOutline","Plus","UserCircleFill","UserCircleOutline","ClipBoardListCheck","ClipBoardList","Megaphone","Bell","BookmarkUser","Scanner","ClockOutline","Clock","BoxOutline","ClipBoardListCheckOutline","Box","Minus","PlusSquare","AtSign","BriefCaseOutline","EditSquareOutline","GlobeEarth","LockFill","LogoHercaHris","QuestionCircleOutline","ShieldFill","Users","WhatsAppFill","Bold","Italic","UnderLine","SettingsSlider","jsx","_jsx","icons","Icon","name","size","color","style","SelectedIcon"],"sourceRoot":"../../../src","sources":["Icon/Icon.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+
3
+ import React from 'react';
4
+ import Svg, { Path } from 'react-native-svg';
5
+ import { jsx as _jsx } from "react/jsx-runtime";
6
+ const SettingsSlider = ({
7
+ size = 24,
8
+ color = '#000',
9
+ style
10
+ }) => /*#__PURE__*/_jsx(Svg, {
11
+ width: size,
12
+ height: size + 1,
13
+ viewBox: "0 0 24 25",
14
+ fill: "none",
15
+ style: style,
16
+ children: /*#__PURE__*/_jsx(Path, {
17
+ d: "M9.5 7.3075C9.5 9.23749 7.93 10.8075 6 10.8075C4.07 10.8075 2.5 9.23749 2.5 7.3075C2.5 5.3775 4.07 3.8075 6 3.8075C7.93 3.8075 9.5 5.3775 9.5 7.3075ZM18 13.8075C16.07 13.8075 14.5 15.3775 14.5 17.3075C14.5 19.2375 16.07 20.8075 18 20.8075C19.93 20.8075 21.5 19.2375 21.5 17.3075C21.5 15.3775 19.93 13.8075 18 13.8075ZM21.75 7.3075C21.75 6.8935 21.414 6.5575 21 6.5575H15C14.586 6.5575 14.25 6.8935 14.25 7.3075C14.25 7.7215 14.586 8.0575 15 8.0575H21C21.414 8.0575 21.75 7.7215 21.75 7.3075ZM9.75 17.3075C9.75 16.8935 9.414 16.5575 9 16.5575H3C2.586 16.5575 2.25 16.8935 2.25 17.3075C2.25 17.7215 2.586 18.0575 3 18.0575H9C9.414 18.0575 9.75 17.7215 9.75 17.3075Z",
18
+ fill: color
19
+ })
20
+ });
21
+ export default SettingsSlider;
22
+ //# sourceMappingURL=SettingsSlider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","Svg","Path","jsx","_jsx","SettingsSlider","size","color","style","width","height","viewBox","fill","children","d"],"sourceRoot":"../../../../src","sources":["Icon/icons/SettingsSlider.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,GAAG,IAAIC,IAAI,QAAQ,kBAAkB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAQ7C,MAAMC,cAA+B,GAAGA,CAAC;EACvCC,IAAI,GAAG,EAAE;EACTC,KAAK,GAAG,MAAM;EACdC;AACF,CAAC,kBACCJ,IAAA,CAACH,GAAG;EACFQ,KAAK,EAAEH,IAAK;EACZI,MAAM,EAAEJ,IAAI,GAAG,CAAE;EACjBK,OAAO,EAAC,WAAW;EACnBC,IAAI,EAAC,MAAM;EACXJ,KAAK,EAAEA,KAAM;EAAAK,QAAA,eAEbT,IAAA,CAACF,IAAI;IACHY,CAAC,EAAC,ypBAAypB;IAC3pBF,IAAI,EAAEL;EAAM,CACb;AAAC,CACC,CACN;AAED,eAAeF,cAAc","ignoreList":[]}
@@ -14,22 +14,25 @@ Komponen `Select` adalah komponen pemilihan data berbasis bottom sheet dengan du
14
14
 
15
15
  ## 📦 Props
16
16
 
17
- | Prop | Tipe | Default | Keterangan |
18
- |--------------|--------------------------------------------------|---------------|------------|
19
- | `isOpen` | `boolean` | `false` | Menentukan apakah bottom sheet terbuka |
20
- | `data` | `ChipOptionProps[]` | - | Data pilihan untuk ditampilkan |
21
- | `multiple` | `boolean` | `false` | Mengizinkan multiple selection |
22
- | `renderItem` | `(item, selected, disabled) => React.ReactNode` | - | Kustom tampilan item |
23
- | `onSubmit` | `(selected: ChipSelectedProps) => void` | - | Callback saat tombol submit ditekan |
24
- | `onClose` | `(val: boolean) => void` | - | Callback saat bottom sheet ditutup |
25
- | `onSearch` | `(val: string) => void` | - | Callback saat input pencarian berubah |
26
- | `required` | `boolean` | `false` | Jika `true`, validasi input saat submit |
27
- | `loading` | `boolean` | `false` | Menampilkan loading saat data di-fetch |
28
- | `delaySearch`| `number` | `300` | Delay pencarian dalam milidetik |
29
- | `height` | `BottomSheetHeighProps` | - | Ukuran tinggi BottomSheet |
30
- | `onRefresh` | `() => void` | - | Callback saat pull-to-refresh dilakukan |
31
- | `header` | ReactElement| – | Jika ingin chip mempunyai header. |
32
- | `footer` | ReactElement| – | Jika ingin chip mempunyai footer. |
17
+ | Prop | Tipe | Default | Keterangan |
18
+ | ---------------- | ----------------------------------------------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
19
+ | `isOpen` | `boolean` | `false` | Menentukan apakah bottom sheet terbuka |
20
+ | `data` | `ChipOptionProps[]` | - | Data pilihan untuk ditampilkan |
21
+ | `multiple` | `boolean` | `false` | Mengizinkan multiple selection |
22
+ | `renderItem` | `(item, selected, disabled) => React.ReactNode` | - | Kustom tampilan item |
23
+ | `onSubmit` | `(selected: ChipSelectedProps) => void` | - | Callback saat tombol submit ditekan |
24
+ | `onClose` | `(val: boolean) => void` | - | Callback saat bottom sheet ditutup |
25
+ | `onSearch` | `(val: string) => void` | - | Callback saat input pencarian berubah, dipanggil setelah debounce berdasarkan `delaySearch` |
26
+ | `required` | `boolean` | `false` | Jika `true`, user wajib memilih minimal 1 item sebelum bisa submit. Untuk single select, item pertama akan langsung disubmit saat dipilih. |
27
+ | `loading` | `boolean` | `false` | Menampilkan loading saat data di-fetch |
28
+ | `delaySearch` | `number` | `300` | Delay pencarian dalam milidetik |
29
+ | `height` | `BottomSheetHeighProps` | - | Ukuran tinggi BottomSheet |
30
+ | `onRefresh` | `() => void` | - | Callback saat pull-to-refresh dilakukan |
31
+ | `header` | ReactElement | – | Jika ingin chip mempunyai header. |
32
+ | `footer` | ReactElement | – | Jika ingin chip mempunyai footer. |
33
+ | `submitBtnLabel` | `string` | 'Lanjutkan' | Label tombol submit saat multiple select |
34
+ | `refreshing` | `boolean` | `false` | Status untuk pull-to-refresh |
35
+ | `onEndReached` | `() => void` | - | Dipanggil saat scroll mencapai akhir list |
33
36
 
34
37
  ## 📌 Contoh Penggunaan
35
38
 
@@ -69,7 +72,7 @@ const MyScreen = () => {
69
72
 
70
73
  ## 🔧 Catatan
71
74
 
72
- - Komponen ini membutuhkan komponen-komponen pendukung:
75
+ - Komponen ini membutuhkan komponen-komponen pendukung:
73
76
  - `BottomSheet`
74
77
  - `Input`
75
78
  - `Button`
@@ -77,4 +80,14 @@ const MyScreen = () => {
77
80
  - `Loading`
78
81
  - `Toast` (untuk validasi/error)
79
82
 
80
- - Jika ingin menambahkan animasi shimmer saat loading, bisa modifikasi komponen `Loading`.
83
+ - Jika ingin menambahkan animasi shimmer saat loading, bisa modifikasi komponen `Loading`.
84
+ - Props `onSearch` digunakan untuk melakukan pencarian dinamis (server-side atau filter lokal), dan hanya akan dipanggil setelah delay tertentu sesuai nilai `delaySearch`.
85
+ - Jika `required` dan `multiple` bernilai `false`, maka saat user memilih item, komponen langsung akan mengirimkan nilai ke `onSubmit` dan menutup bottom sheet secara otomatis.
86
+ - Jika `required` bernilai `false`, user bisa toggle pilihan item (aktif/nonaktif) dan submit tanpa memilih apapun.
87
+
88
+ ## ⚠️ Behavior Penting
89
+
90
+ - Jika `multiple={false}` dan `required={true}`, maka:
91
+ - Item yang dipilih akan langsung dikirim ke `onSubmit`.
92
+ - BottomSheet akan langsung tertutup tanpa menekan tombol submit.
93
+ - Jika `required={false}`, user bisa membatalkan pilihan (deselect), dan mengirim data kosong.
@@ -1,13 +1,14 @@
1
1
  "use strict";
2
2
 
3
- import { View, StyleSheet, TouchableWithoutFeedback, Keyboard } from 'react-native';
4
- import { useState, useCallback } from 'react';
3
+ import { useCallback, useState } from 'react';
4
+ import { Keyboard, StyleSheet, TouchableWithoutFeedback, View } from 'react-native';
5
5
  import BottomSheet from "../BottomSheet/BottomSheet.js";
6
6
  import Button from "../Button/Button.js";
7
- import Input from "../Input/Input.js";
8
7
  import Chip from "../Chip/Chip.js";
9
- import { useToast } from "../Toast/ToastContext.js";
8
+ import Input from "../Input/Input.js";
10
9
  import Loading from "../Loading/Loading.js";
10
+ import { useToast } from "../Toast/ToastContext.js";
11
+ import { useRef } from 'react';
11
12
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
12
13
  export default function Select({
13
14
  isOpen,
@@ -15,7 +16,7 @@ export default function Select({
15
16
  renderItem,
16
17
  onClose,
17
18
  onSubmit,
18
- multiple,
19
+ multiple = false,
19
20
  onSearch,
20
21
  required = false,
21
22
  loading = false,
@@ -25,10 +26,12 @@ export default function Select({
25
26
  refreshing,
26
27
  footer,
27
28
  header,
28
- onEndReached
29
+ onEndReached,
30
+ submitBtnLabel
29
31
  }) {
30
32
  // const [isOpenSelect, setIsOpenSelect] = useState<boolean | undefined>(false);
31
33
  const [selected, setSelected] = useState();
34
+ const [searchQuery, setSearchQuery] = useState();
32
35
  const {
33
36
  show
34
37
  } = useToast();
@@ -46,12 +49,20 @@ export default function Select({
46
49
  show('Please fill a item');
47
50
  return false;
48
51
  }
49
- // setIsOpenSelect(false);
50
52
  onSubmit?.(selected ? selected : []);
51
53
  return true;
52
54
  };
55
+ const searchTimeout = useRef(null);
53
56
  const handleOnSearch = val => {
54
- setTimeout(() => {
57
+ setSearchQuery(val);
58
+
59
+ // clear timeout sebelumnya
60
+ if (searchTimeout.current) {
61
+ clearTimeout(searchTimeout.current);
62
+ }
63
+
64
+ // set timeout baru
65
+ searchTimeout.current = setTimeout(() => {
55
66
  onSearch?.(val);
56
67
  }, delaySearch);
57
68
  };
@@ -59,11 +70,12 @@ export default function Select({
59
70
  onClose: val => handleOnCloseBottom(val),
60
71
  isOpen: isOpen,
61
72
  height: height,
62
- footer: /*#__PURE__*/_jsx(Button, {
63
- title: "lanjutkan",
73
+ footer: multiple ? /*#__PURE__*/_jsx(Button, {
74
+ title: submitBtnLabel ?? 'Lanjutkan',
64
75
  color: "primary",
76
+ disabled: (!selected || selected.length === 0) && required,
65
77
  onPress: handleOnPresSubmitSelect
66
- }),
78
+ }) : undefined,
67
79
  children: /*#__PURE__*/_jsxs(View, {
68
80
  style: styles.container,
69
81
  children: [/*#__PURE__*/_jsx(View, {
@@ -75,6 +87,7 @@ export default function Select({
75
87
  submitBehavior: "submit",
76
88
  icon: "Search",
77
89
  placeholder: "Search",
90
+ value: searchQuery,
78
91
  onChangeText: val => handleOnSearch(val)
79
92
  })
80
93
  })
@@ -84,7 +97,6 @@ export default function Select({
84
97
  scrollable: true,
85
98
  selected: selected,
86
99
  multiple: multiple,
87
- onSelect: setSelected,
88
100
  onEndReached: onEndReached,
89
101
  color: "primary",
90
102
  size: "large",
@@ -93,18 +105,31 @@ export default function Select({
93
105
  block: true,
94
106
  refreshing: refreshing,
95
107
  footer: footer,
96
- header: header
108
+ header: header,
109
+ onSelect: item => {
110
+ setSelected(item);
111
+ if (!multiple && required) {
112
+ onSubmit?.(item);
113
+ handleOnCloseBottom(false);
114
+ } else if (!multiple && !required) {
115
+ const isSame = Array.isArray(item) && Array.isArray(selected) ? item[0] === selected?.[0] : item === selected;
116
+ const nextValue = !multiple && !required && isSame ? [] : item;
117
+ setSelected(nextValue);
118
+ onSubmit?.(nextValue);
119
+ handleOnCloseBottom(false);
120
+ }
121
+ }
97
122
  })]
98
123
  })
99
124
  });
100
125
  }
101
126
  const styles = StyleSheet.create({
102
127
  container: {
103
- marginBottom: 190
128
+ marginBottom: 140
104
129
  },
105
130
  containerSearch: {
106
131
  gap: 14,
107
- padding: 12
132
+ paddingBottom: 12
108
133
  }
109
134
  });
110
135
  //# sourceMappingURL=Select.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["View","StyleSheet","TouchableWithoutFeedback","Keyboard","useState","useCallback","BottomSheet","Button","Input","Chip","useToast","Loading","jsx","_jsx","jsxs","_jsxs","Select","isOpen","data","renderItem","onClose","onSubmit","multiple","onSearch","required","loading","delaySearch","height","onRefresh","refreshing","footer","header","onEndReached","selected","setSelected","show","handleOnCloseBottom","val","handleOnPresSubmitSelect","length","handleOnSearch","setTimeout","title","color","onPress","children","style","styles","container","containerSearch","dismiss","accessible","submitBehavior","icon","placeholder","onChangeText","options","direction","scrollable","onSelect","size","block","create","marginBottom","gap","padding"],"sourceRoot":"../../../src","sources":["Select/Select.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useState","Keyboard","StyleSheet","TouchableWithoutFeedback","View","BottomSheet","Button","Chip","Input","Loading","useToast","useRef","jsx","_jsx","jsxs","_jsxs","Select","isOpen","data","renderItem","onClose","onSubmit","multiple","onSearch","required","loading","delaySearch","height","onRefresh","refreshing","footer","header","onEndReached","submitBtnLabel","selected","setSelected","searchQuery","setSearchQuery","show","handleOnCloseBottom","val","handleOnPresSubmitSelect","length","searchTimeout","handleOnSearch","current","clearTimeout","setTimeout","title","color","disabled","onPress","undefined","children","style","styles","container","containerSearch","dismiss","accessible","submitBehavior","icon","placeholder","value","onChangeText","options","direction","scrollable","size","block","onSelect","item","isSame","Array","isArray","nextValue","create","marginBottom","gap","paddingBottom"],"sourceRoot":"../../../src","sources":["Select/Select.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"Chip.d.ts","sourceRoot":"","sources":["../../../../src/Chip/Chip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAC;AAE5D,OAAO,EAEL,KAAK,SAAS,EAGf,MAAM,QAAQ,CAAC;AAGhB,QAAA,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CAkG7B,CAAC;AAiCF,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"Chip.d.ts","sourceRoot":"","sources":["../../../../src/Chip/Chip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAC;AAE5D,OAAO,EAEL,KAAK,SAAS,EAGf,MAAM,QAAQ,CAAC;AAGhB,QAAA,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CAqG7B,CAAC;AAkCF,eAAe,IAAI,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Icon.d.ts","sourceRoot":"","sources":["../../../../src/Icon/Icon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAmB1B,OAAO,KAAK,EAAiB,SAAS,EAAE,MAAM,QAAQ,CAAC;AA2GvD,QAAA,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CAa7B,CAAC;AAEF,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"Icon.d.ts","sourceRoot":"","sources":["../../../../src/Icon/Icon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAmB1B,OAAO,KAAK,EAAiB,SAAS,EAAE,MAAM,QAAQ,CAAC;AA6GvD,QAAA,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CAa7B,CAAC;AAEF,eAAe,IAAI,CAAC"}
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ interface Props {
3
+ size?: number;
4
+ color?: string;
5
+ style?: object;
6
+ }
7
+ declare const SettingsSlider: React.FC<Props>;
8
+ export default SettingsSlider;
9
+ //# sourceMappingURL=SettingsSlider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SettingsSlider.d.ts","sourceRoot":"","sources":["../../../../../src/Icon/icons/SettingsSlider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,UAAU,KAAK;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,QAAA,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAiBnC,CAAC;AAEF,eAAe,cAAc,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { type ViewStyle } from 'react-native';
2
- export type IconNameProps = 'Search' | 'User' | 'Eye' | 'EyeOpen' | 'ArrowRight' | 'ArrowLeft' | 'Document' | 'Calendar' | 'ExclamationMark' | 'Download' | 'x-circle' | 'StickyNote' | 'RadioButton' | 'Pdf' | 'ArrowBackAlt' | 'ArrowForwardAlt' | 'ArrowDown' | 'ArrowUp' | 'Check' | 'Filter' | 'AirPlane' | 'Camera' | 'Image' | 'Times' | 'Plus' | 'Minus' | 'Bell' | 'file-list-check' | 'file-text' | 'bookmark-user' | 'folder-clock' | 'home-fill' | 'home-outline' | 'user-circle-outline' | 'user-circle-fill' | 'clipboard-list-check' | 'clipboard-list' | 'Megaphone' | 'Scanner' | 'Clock' | 'clock-outline' | 'clipboard-list-check-outline' | 'box-outline' | 'Box' | 'plus-square' | 'at-sign' | 'briefcase-outline' | 'edit-square-outline' | 'globe-earth' | 'lock-fill' | 'logo-herca-hris' | 'question-circle-outline' | 'shield-fill' | 'Users' | 'Bold' | 'Italic' | 'UnderLine' | 'whatsapp-fill';
2
+ export type IconNameProps = 'Search' | 'User' | 'Eye' | 'EyeOpen' | 'ArrowRight' | 'ArrowLeft' | 'Document' | 'Calendar' | 'ExclamationMark' | 'Download' | 'x-circle' | 'StickyNote' | 'RadioButton' | 'Pdf' | 'ArrowBackAlt' | 'ArrowForwardAlt' | 'ArrowDown' | 'ArrowUp' | 'Check' | 'Filter' | 'AirPlane' | 'Camera' | 'Image' | 'Times' | 'Plus' | 'Minus' | 'Bell' | 'file-list-check' | 'file-text' | 'bookmark-user' | 'folder-clock' | 'home-fill' | 'home-outline' | 'user-circle-outline' | 'user-circle-fill' | 'clipboard-list-check' | 'clipboard-list' | 'Megaphone' | 'Scanner' | 'Clock' | 'clock-outline' | 'clipboard-list-check-outline' | 'box-outline' | 'Box' | 'plus-square' | 'at-sign' | 'briefcase-outline' | 'edit-square-outline' | 'globe-earth' | 'lock-fill' | 'logo-herca-hris' | 'question-circle-outline' | 'shield-fill' | 'Users' | 'Bold' | 'Italic' | 'UnderLine' | 'settings-slider' | 'whatsapp-fill';
3
3
  export interface IconProps {
4
4
  name: IconNameProps;
5
5
  size?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../../src/Icon/type.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,MAAM,MAAM,aAAa,GACrB,QAAQ,GACR,MAAM,GACN,KAAK,GACL,SAAS,GACT,YAAY,GACZ,WAAW,GACX,UAAU,GACV,UAAU,GACV,iBAAiB,GACjB,UAAU,GACV,UAAU,GACV,YAAY,GACZ,aAAa,GACb,KAAK,GACL,cAAc,GACd,iBAAiB,GACjB,WAAW,GACX,SAAS,GACT,OAAO,GACP,QAAQ,GACR,UAAU,GACV,QAAQ,GACR,OAAO,GACP,OAAO,GACP,MAAM,GACN,OAAO,GACP,MAAM,GACN,iBAAiB,GACjB,WAAW,GACX,eAAe,GACf,cAAc,GACd,WAAW,GACX,cAAc,GACd,qBAAqB,GACrB,kBAAkB,GAClB,sBAAsB,GACtB,gBAAgB,GAChB,WAAW,GACX,SAAS,GACT,OAAO,GACP,eAAe,GACf,8BAA8B,GAC9B,aAAa,GACb,KAAK,GACL,aAAa,GACb,SAAS,GACT,mBAAmB,GACnB,qBAAqB,GACrB,aAAa,GACb,WAAW,GACX,iBAAiB,GACjB,yBAAyB,GACzB,aAAa,GACb,OAAO,GACP,MAAM,GACN,QAAQ,GACR,WAAW,GACX,eAAe,CAAC;AAEpB,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB"}
1
+ {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../../src/Icon/type.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,MAAM,MAAM,aAAa,GACrB,QAAQ,GACR,MAAM,GACN,KAAK,GACL,SAAS,GACT,YAAY,GACZ,WAAW,GACX,UAAU,GACV,UAAU,GACV,iBAAiB,GACjB,UAAU,GACV,UAAU,GACV,YAAY,GACZ,aAAa,GACb,KAAK,GACL,cAAc,GACd,iBAAiB,GACjB,WAAW,GACX,SAAS,GACT,OAAO,GACP,QAAQ,GACR,UAAU,GACV,QAAQ,GACR,OAAO,GACP,OAAO,GACP,MAAM,GACN,OAAO,GACP,MAAM,GACN,iBAAiB,GACjB,WAAW,GACX,eAAe,GACf,cAAc,GACd,WAAW,GACX,cAAc,GACd,qBAAqB,GACrB,kBAAkB,GAClB,sBAAsB,GACtB,gBAAgB,GAChB,WAAW,GACX,SAAS,GACT,OAAO,GACP,eAAe,GACf,8BAA8B,GAC9B,aAAa,GACb,KAAK,GACL,aAAa,GACb,SAAS,GACT,mBAAmB,GACnB,qBAAqB,GACrB,aAAa,GACb,WAAW,GACX,iBAAiB,GACjB,yBAAyB,GACzB,aAAa,GACb,OAAO,GACP,MAAM,GACN,QAAQ,GACR,WAAW,GACX,iBAAiB,GACjB,eAAe,CAAC;AAEpB,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB"}
@@ -1,3 +1,3 @@
1
1
  import { type SelectProps } from './type';
2
- export default function Select({ isOpen, data, renderItem, onClose, onSubmit, multiple, onSearch, required, loading, delaySearch, height, onRefresh, refreshing, footer, header, onEndReached, }: SelectProps): import("react/jsx-runtime").JSX.Element;
2
+ export default function Select({ isOpen, data, renderItem, onClose, onSubmit, multiple, onSearch, required, loading, delaySearch, height, onRefresh, refreshing, footer, header, onEndReached, submitBtnLabel, }: SelectProps): import("react/jsx-runtime").JSX.Element;
3
3
  //# sourceMappingURL=Select.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../../src/Select/Select.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,QAAQ,CAAC;AAQ1C,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAC7B,MAAM,EACN,IAAI,EACJ,UAAU,EACV,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAgB,EAChB,OAAe,EACf,WAAiB,EACjB,MAAM,EACN,SAAS,EACT,UAAU,EACV,MAAM,EACN,MAAM,EACN,YAAY,GACb,EAAE,WAAW,2CAmFb"}
1
+ {"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../../src/Select/Select.tsx"],"names":[],"mappings":"AAcA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,QAAQ,CAAC;AAE1C,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAC7B,MAAM,EACN,IAAI,EACJ,UAAU,EACV,OAAO,EACP,QAAQ,EACR,QAAgB,EAChB,QAAQ,EACR,QAAgB,EAChB,OAAe,EACf,WAAiB,EACjB,MAAM,EACN,SAAS,EACT,UAAU,EACV,MAAM,EACN,MAAM,EACN,YAAY,EACZ,cAAc,GACf,EAAE,WAAW,2CAmHb"}
@@ -21,6 +21,7 @@ export interface SelectProps {
21
21
  onRefresh?: () => void;
22
22
  onEndReached?: () => void;
23
23
  refreshing?: boolean;
24
+ submitBtnLabel?: string;
24
25
  footer?: React.ComponentType<any> | React.ReactElement | null | undefined;
25
26
  header?: React.ComponentType<any> | React.ReactElement | null | undefined;
26
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../../src/Select/type.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACvE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAEjE,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;CACxB;AAED,MAAM,MAAM,qBAAqB,GAAG,CAClC,IAAI,EAAE,eAAe,EACrB,QAAQ,EAAE,OAAO,EACjB,QAAQ,EAAE,OAAO,KACd,KAAK,CAAC,SAAS,CAAC;AAErB,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,EAAE,eAAe,EAAE,CAAC;IACxB,UAAU,CAAC,EAAE,qBAAqB,CAAC;IACnC,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC;IACjC,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI,GAAG,SAAS,CAAC;IAC1E,MAAM,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI,GAAG,SAAS,CAAC;CAC3E"}
1
+ {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../../src/Select/type.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACvE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAEjE,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;CACxB;AAED,MAAM,MAAM,qBAAqB,GAAG,CAClC,IAAI,EAAE,eAAe,EACrB,QAAQ,EAAE,OAAO,EACjB,QAAQ,EAAE,OAAO,KACd,KAAK,CAAC,SAAS,CAAC;AAErB,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,EAAE,eAAe,EAAE,CAAC;IACxB,UAAU,CAAC,EAAE,qBAAqB,CAAC;IACnC,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC;IACjC,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI,GAAG,SAAS,CAAC;IAC1E,MAAM,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,YAAY,GAAG,IAAI,GAAG,SAAS,CAAC;CAC3E"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@herca/rn-kit",
3
- "version": "0.1.30",
3
+ "version": "0.1.31",
4
4
  "description": "React Native UI Kit",
5
5
  "main": "./lib/module/index.js",
6
6
  "types": "./lib/typescript/src/index.d.ts",
@@ -254,7 +254,7 @@ const styles = StyleSheet.create({
254
254
  backgroundColor: Color.base.white100,
255
255
  position: 'absolute',
256
256
  paddingTop: 10,
257
- marginBottom: 32,
257
+ paddingBottom: 32,
258
258
  bottom: 0,
259
259
  left: 0,
260
260
  right: 0,
package/src/Chip/Chip.tsx CHANGED
@@ -72,6 +72,9 @@ const Chip: React.FC<ChipProps> = ({
72
72
  onPress?.(item.value);
73
73
  };
74
74
 
75
+ const flexDirectionStyle = isHorizontal ? 'row' : 'column';
76
+ const alignItemsStyle = block ? 'stretch' : 'flex-start';
77
+
75
78
  return (
76
79
  <FlatList
77
80
  data={options}
@@ -97,8 +100,8 @@ const Chip: React.FC<ChipProps> = ({
97
100
  contentContainerStyle={[
98
101
  styles.container,
99
102
  {
100
- flexDirection: isHorizontal ? 'row' : 'column',
101
- alignItems: block ? 'stretch' : 'flex-start',
103
+ flexDirection: flexDirectionStyle,
104
+ alignItems: alignItemsStyle,
102
105
  },
103
106
  ]}
104
107
  columnWrapperStyle={numColumns > 1 ? styles.wrapperStyle : undefined}
@@ -111,6 +114,7 @@ const Chip: React.FC<ChipProps> = ({
111
114
  const styles = StyleSheet.create({
112
115
  container: {
113
116
  gap: 8,
117
+ paddingBottom: 14,
114
118
  },
115
119
  wrapperStyle: {
116
120
  gap: 8,
package/src/Icon/Icon.tsx CHANGED
@@ -59,6 +59,7 @@ import WhatsAppFill from './icons/WhatsappFill';
59
59
  import Bold from './icons/Bold';
60
60
  import Italic from './icons/Italic';
61
61
  import UnderLine from './icons/UnderLine';
62
+ import SettingsSlider from './icons/SettingsSlider';
62
63
 
63
64
  const icons: Record<
64
65
  IconNameProps,
@@ -122,6 +123,7 @@ const icons: Record<
122
123
  'Bold': Bold,
123
124
  'Italic': Italic,
124
125
  'UnderLine': UnderLine,
126
+ 'settings-slider': SettingsSlider,
125
127
  };
126
128
 
127
129
  const Icon: React.FC<IconProps> = ({
@@ -0,0 +1,29 @@
1
+ import React from 'react';
2
+ import Svg, { Path } from 'react-native-svg';
3
+
4
+ interface Props {
5
+ size?: number;
6
+ color?: string;
7
+ style?: object;
8
+ }
9
+
10
+ const SettingsSlider: React.FC<Props> = ({
11
+ size = 24,
12
+ color = '#000',
13
+ style,
14
+ }) => (
15
+ <Svg
16
+ width={size}
17
+ height={size + 1}
18
+ viewBox="0 0 24 25"
19
+ fill="none"
20
+ style={style}
21
+ >
22
+ <Path
23
+ d="M9.5 7.3075C9.5 9.23749 7.93 10.8075 6 10.8075C4.07 10.8075 2.5 9.23749 2.5 7.3075C2.5 5.3775 4.07 3.8075 6 3.8075C7.93 3.8075 9.5 5.3775 9.5 7.3075ZM18 13.8075C16.07 13.8075 14.5 15.3775 14.5 17.3075C14.5 19.2375 16.07 20.8075 18 20.8075C19.93 20.8075 21.5 19.2375 21.5 17.3075C21.5 15.3775 19.93 13.8075 18 13.8075ZM21.75 7.3075C21.75 6.8935 21.414 6.5575 21 6.5575H15C14.586 6.5575 14.25 6.8935 14.25 7.3075C14.25 7.7215 14.586 8.0575 15 8.0575H21C21.414 8.0575 21.75 7.7215 21.75 7.3075ZM9.75 17.3075C9.75 16.8935 9.414 16.5575 9 16.5575H3C2.586 16.5575 2.25 16.8935 2.25 17.3075C2.25 17.7215 2.586 18.0575 3 18.0575H9C9.414 18.0575 9.75 17.7215 9.75 17.3075Z"
24
+ fill={color}
25
+ />
26
+ </Svg>
27
+ );
28
+
29
+ export default SettingsSlider;
package/src/Icon/type.tsx CHANGED
@@ -60,6 +60,7 @@ export type IconNameProps =
60
60
  | 'Bold'
61
61
  | 'Italic'
62
62
  | 'UnderLine'
63
+ | 'settings-slider'
63
64
  | 'whatsapp-fill';
64
65
 
65
66
  export interface IconProps {
@@ -14,22 +14,25 @@ Komponen `Select` adalah komponen pemilihan data berbasis bottom sheet dengan du
14
14
 
15
15
  ## 📦 Props
16
16
 
17
- | Prop | Tipe | Default | Keterangan |
18
- |--------------|--------------------------------------------------|---------------|------------|
19
- | `isOpen` | `boolean` | `false` | Menentukan apakah bottom sheet terbuka |
20
- | `data` | `ChipOptionProps[]` | - | Data pilihan untuk ditampilkan |
21
- | `multiple` | `boolean` | `false` | Mengizinkan multiple selection |
22
- | `renderItem` | `(item, selected, disabled) => React.ReactNode` | - | Kustom tampilan item |
23
- | `onSubmit` | `(selected: ChipSelectedProps) => void` | - | Callback saat tombol submit ditekan |
24
- | `onClose` | `(val: boolean) => void` | - | Callback saat bottom sheet ditutup |
25
- | `onSearch` | `(val: string) => void` | - | Callback saat input pencarian berubah |
26
- | `required` | `boolean` | `false` | Jika `true`, validasi input saat submit |
27
- | `loading` | `boolean` | `false` | Menampilkan loading saat data di-fetch |
28
- | `delaySearch`| `number` | `300` | Delay pencarian dalam milidetik |
29
- | `height` | `BottomSheetHeighProps` | - | Ukuran tinggi BottomSheet |
30
- | `onRefresh` | `() => void` | - | Callback saat pull-to-refresh dilakukan |
31
- | `header` | ReactElement| – | Jika ingin chip mempunyai header. |
32
- | `footer` | ReactElement| – | Jika ingin chip mempunyai footer. |
17
+ | Prop | Tipe | Default | Keterangan |
18
+ | ---------------- | ----------------------------------------------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
19
+ | `isOpen` | `boolean` | `false` | Menentukan apakah bottom sheet terbuka |
20
+ | `data` | `ChipOptionProps[]` | - | Data pilihan untuk ditampilkan |
21
+ | `multiple` | `boolean` | `false` | Mengizinkan multiple selection |
22
+ | `renderItem` | `(item, selected, disabled) => React.ReactNode` | - | Kustom tampilan item |
23
+ | `onSubmit` | `(selected: ChipSelectedProps) => void` | - | Callback saat tombol submit ditekan |
24
+ | `onClose` | `(val: boolean) => void` | - | Callback saat bottom sheet ditutup |
25
+ | `onSearch` | `(val: string) => void` | - | Callback saat input pencarian berubah, dipanggil setelah debounce berdasarkan `delaySearch` |
26
+ | `required` | `boolean` | `false` | Jika `true`, user wajib memilih minimal 1 item sebelum bisa submit. Untuk single select, item pertama akan langsung disubmit saat dipilih. |
27
+ | `loading` | `boolean` | `false` | Menampilkan loading saat data di-fetch |
28
+ | `delaySearch` | `number` | `300` | Delay pencarian dalam milidetik |
29
+ | `height` | `BottomSheetHeighProps` | - | Ukuran tinggi BottomSheet |
30
+ | `onRefresh` | `() => void` | - | Callback saat pull-to-refresh dilakukan |
31
+ | `header` | ReactElement | – | Jika ingin chip mempunyai header. |
32
+ | `footer` | ReactElement | – | Jika ingin chip mempunyai footer. |
33
+ | `submitBtnLabel` | `string` | 'Lanjutkan' | Label tombol submit saat multiple select |
34
+ | `refreshing` | `boolean` | `false` | Status untuk pull-to-refresh |
35
+ | `onEndReached` | `() => void` | - | Dipanggil saat scroll mencapai akhir list |
33
36
 
34
37
  ## 📌 Contoh Penggunaan
35
38
 
@@ -69,7 +72,7 @@ const MyScreen = () => {
69
72
 
70
73
  ## 🔧 Catatan
71
74
 
72
- - Komponen ini membutuhkan komponen-komponen pendukung:
75
+ - Komponen ini membutuhkan komponen-komponen pendukung:
73
76
  - `BottomSheet`
74
77
  - `Input`
75
78
  - `Button`
@@ -77,4 +80,14 @@ const MyScreen = () => {
77
80
  - `Loading`
78
81
  - `Toast` (untuk validasi/error)
79
82
 
80
- - Jika ingin menambahkan animasi shimmer saat loading, bisa modifikasi komponen `Loading`.
83
+ - Jika ingin menambahkan animasi shimmer saat loading, bisa modifikasi komponen `Loading`.
84
+ - Props `onSearch` digunakan untuk melakukan pencarian dinamis (server-side atau filter lokal), dan hanya akan dipanggil setelah delay tertentu sesuai nilai `delaySearch`.
85
+ - Jika `required` dan `multiple` bernilai `false`, maka saat user memilih item, komponen langsung akan mengirimkan nilai ke `onSubmit` dan menutup bottom sheet secara otomatis.
86
+ - Jika `required` bernilai `false`, user bisa toggle pilihan item (aktif/nonaktif) dan submit tanpa memilih apapun.
87
+
88
+ ## ⚠️ Behavior Penting
89
+
90
+ - Jika `multiple={false}` dan `required={true}`, maka:
91
+ - Item yang dipilih akan langsung dikirim ke `onSubmit`.
92
+ - BottomSheet akan langsung tertutup tanpa menekan tombol submit.
93
+ - Jika `required={false}`, user bisa membatalkan pilihan (deselect), dan mengirim data kosong.
@@ -1,25 +1,26 @@
1
+ import { useCallback, useState } from 'react';
1
2
  import {
2
- View,
3
+ Keyboard,
3
4
  StyleSheet,
4
5
  TouchableWithoutFeedback,
5
- Keyboard,
6
+ View,
6
7
  } from 'react-native';
7
- import { useState, useCallback } from 'react';
8
- import { type SelectProps } from './type';
9
8
  import BottomSheet from '../BottomSheet/BottomSheet';
10
9
  import Button from '../Button/Button';
11
- import Input from '../Input/Input';
12
10
  import Chip from '../Chip/Chip';
13
11
  import { type ChipSelectedProps } from '../Chip/type';
14
- import { useToast } from '../Toast/ToastContext';
12
+ import Input from '../Input/Input';
15
13
  import Loading from '../Loading/Loading';
14
+ import { useToast } from '../Toast/ToastContext';
15
+ import { type SelectProps } from './type';
16
+ import { useRef } from 'react';
16
17
  export default function Select({
17
18
  isOpen,
18
19
  data,
19
20
  renderItem,
20
21
  onClose,
21
22
  onSubmit,
22
- multiple,
23
+ multiple = false,
23
24
  onSearch,
24
25
  required = false,
25
26
  loading = false,
@@ -30,9 +31,11 @@ export default function Select({
30
31
  footer,
31
32
  header,
32
33
  onEndReached,
34
+ submitBtnLabel,
33
35
  }: SelectProps) {
34
36
  // const [isOpenSelect, setIsOpenSelect] = useState<boolean | undefined>(false);
35
37
  const [selected, setSelected] = useState<ChipSelectedProps>();
38
+ const [searchQuery, setSearchQuery] = useState<string>();
36
39
  const { show } = useToast();
37
40
  // useEffect(() => {
38
41
  // setIsOpenSelect(isOpen);
@@ -52,27 +55,40 @@ export default function Select({
52
55
  show('Please fill a item');
53
56
  return false;
54
57
  }
55
- // setIsOpenSelect(false);
56
58
  onSubmit?.(selected ? selected : []);
57
59
  return true;
58
60
  };
59
61
 
62
+ const searchTimeout = useRef<NodeJS.Timeout | null>(null);
63
+
60
64
  const handleOnSearch = (val: string) => {
61
- setTimeout(() => {
65
+ setSearchQuery(val);
66
+
67
+ // clear timeout sebelumnya
68
+ if (searchTimeout.current) {
69
+ clearTimeout(searchTimeout.current);
70
+ }
71
+
72
+ // set timeout baru
73
+ searchTimeout.current = setTimeout(() => {
62
74
  onSearch?.(val);
63
75
  }, delaySearch);
64
76
  };
77
+
65
78
  return (
66
79
  <BottomSheet
67
80
  onClose={(val: boolean) => handleOnCloseBottom(val)}
68
81
  isOpen={isOpen}
69
82
  height={height}
70
83
  footer={
71
- <Button
72
- title="lanjutkan"
73
- color="primary"
74
- onPress={handleOnPresSubmitSelect}
75
- />
84
+ multiple ? (
85
+ <Button
86
+ title={submitBtnLabel ?? 'Lanjutkan'}
87
+ color="primary"
88
+ disabled={(!selected || selected.length === 0) && required}
89
+ onPress={handleOnPresSubmitSelect}
90
+ />
91
+ ) : undefined
76
92
  }
77
93
  >
78
94
  <View style={styles.container}>
@@ -85,6 +101,7 @@ export default function Select({
85
101
  submitBehavior="submit"
86
102
  icon="Search"
87
103
  placeholder="Search"
104
+ value={searchQuery}
88
105
  onChangeText={(val) => handleOnSearch(val)}
89
106
  />
90
107
  </TouchableWithoutFeedback>
@@ -98,7 +115,6 @@ export default function Select({
98
115
  scrollable={true}
99
116
  selected={selected}
100
117
  multiple={multiple}
101
- onSelect={setSelected}
102
118
  onEndReached={onEndReached}
103
119
  color="primary"
104
120
  size="large"
@@ -108,6 +124,24 @@ export default function Select({
108
124
  refreshing={refreshing}
109
125
  footer={footer}
110
126
  header={header}
127
+ onSelect={(item) => {
128
+ setSelected(item);
129
+ if (!multiple && required) {
130
+ onSubmit?.(item);
131
+ handleOnCloseBottom(false);
132
+ } else if (!multiple && !required) {
133
+ const isSame =
134
+ Array.isArray(item) && Array.isArray(selected)
135
+ ? item[0] === selected?.[0]
136
+ : item === selected;
137
+
138
+ const nextValue = !multiple && !required && isSame ? [] : item;
139
+
140
+ setSelected(nextValue);
141
+ onSubmit?.(nextValue);
142
+ handleOnCloseBottom(false);
143
+ }
144
+ }}
111
145
  />
112
146
  )}
113
147
  </View>
@@ -117,10 +151,10 @@ export default function Select({
117
151
 
118
152
  const styles = StyleSheet.create({
119
153
  container: {
120
- marginBottom: 190,
154
+ marginBottom: 140,
121
155
  },
122
156
  containerSearch: {
123
157
  gap: 14,
124
- padding: 12,
158
+ paddingBottom: 12,
125
159
  },
126
160
  });
@@ -28,6 +28,7 @@ export interface SelectProps {
28
28
  onRefresh?: () => void;
29
29
  onEndReached?: () => void;
30
30
  refreshing?: boolean;
31
+ submitBtnLabel?: string;
31
32
  footer?: React.ComponentType<any> | React.ReactElement | null | undefined;
32
33
  header?: React.ComponentType<any> | React.ReactElement | null | undefined;
33
34
  }