@adiraku/react-native-ui 1.2.10-canary-2 → 1.2.10-canary-4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/lib/commonjs/components/BottomSheet/BottomSheet.component.js +3 -1
  2. package/lib/commonjs/components/BottomSheet/BottomSheet.component.js.map +1 -1
  3. package/lib/commonjs/components/selection-modal/selection-modal.component.js +43 -17
  4. package/lib/commonjs/components/selection-modal/selection-modal.component.js.map +1 -1
  5. package/lib/commonjs/components/selection-modal/selection-modal.style.js +5 -0
  6. package/lib/commonjs/components/selection-modal/selection-modal.style.js.map +1 -1
  7. package/lib/commonjs/hooks/index.js +28 -0
  8. package/lib/commonjs/hooks/index.js.map +1 -0
  9. package/lib/commonjs/hooks/useDebounce.js +19 -0
  10. package/lib/commonjs/hooks/useDebounce.js.map +1 -0
  11. package/lib/commonjs/hooks/useKeyboardHeight.js +29 -0
  12. package/lib/commonjs/hooks/useKeyboardHeight.js.map +1 -0
  13. package/lib/commonjs/index.js +11 -0
  14. package/lib/commonjs/index.js.map +1 -1
  15. package/lib/module/components/BottomSheet/BottomSheet.component.js +3 -1
  16. package/lib/module/components/BottomSheet/BottomSheet.component.js.map +1 -1
  17. package/lib/module/components/selection-modal/selection-modal.component.js +44 -18
  18. package/lib/module/components/selection-modal/selection-modal.component.js.map +1 -1
  19. package/lib/module/components/selection-modal/selection-modal.style.js +6 -1
  20. package/lib/module/components/selection-modal/selection-modal.style.js.map +1 -1
  21. package/lib/module/hooks/index.js +3 -0
  22. package/lib/module/hooks/index.js.map +1 -0
  23. package/lib/module/hooks/useDebounce.js +12 -0
  24. package/lib/module/hooks/useDebounce.js.map +1 -0
  25. package/lib/module/hooks/useKeyboardHeight.js +22 -0
  26. package/lib/module/hooks/useKeyboardHeight.js.map +1 -0
  27. package/lib/module/index.js +1 -0
  28. package/lib/module/index.js.map +1 -1
  29. package/lib/typescript/components/BottomSheet/BottomSheet.component.d.ts.map +1 -1
  30. package/lib/typescript/components/search-input/search-input.type.d.ts +1 -1
  31. package/lib/typescript/components/search-input/search-input.type.d.ts.map +1 -1
  32. package/lib/typescript/components/selection-modal/selection-modal.component.d.ts.map +1 -1
  33. package/lib/typescript/components/selection-modal/selection-modal.style.d.ts +1 -0
  34. package/lib/typescript/components/selection-modal/selection-modal.style.d.ts.map +1 -1
  35. package/lib/typescript/components/selection-modal/selection-modal.type.d.ts +6 -2
  36. package/lib/typescript/components/selection-modal/selection-modal.type.d.ts.map +1 -1
  37. package/lib/typescript/hooks/index.d.ts +3 -0
  38. package/lib/typescript/hooks/index.d.ts.map +1 -0
  39. package/lib/typescript/hooks/useDebounce.d.ts +2 -0
  40. package/lib/typescript/hooks/useDebounce.d.ts.map +1 -0
  41. package/lib/typescript/hooks/useKeyboardHeight.d.ts +2 -0
  42. package/lib/typescript/hooks/useKeyboardHeight.d.ts.map +1 -0
  43. package/lib/typescript/index.d.ts +1 -0
  44. package/lib/typescript/index.d.ts.map +1 -1
  45. package/package.json +1 -1
  46. package/src/components/BottomSheet/BottomSheet.component.tsx +4 -1
  47. package/src/components/search-input/search-input.type.ts +1 -1
  48. package/src/components/selection-modal/selection-modal.component.tsx +50 -19
  49. package/src/components/selection-modal/selection-modal.style.tsx +8 -1
  50. package/src/components/selection-modal/selection-modal.type.ts +11 -3
  51. package/src/hooks/index.ts +2 -0
  52. package/src/hooks/useDebounce.ts +15 -0
  53. package/src/hooks/useKeyboardHeight.ts +32 -0
  54. package/src/index.tsx +1 -0
@@ -9,6 +9,7 @@ var _reactNative = require("react-native");
9
9
  var _reactNativeModal = _interopRequireDefault(require("react-native-modal"));
10
10
  var _BottomSheet = require("./BottomSheet.style");
11
11
  var _typography = require("../typography/typography.component");
12
+ var _hooks = require("../../hooks");
12
13
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
14
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
14
15
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
@@ -35,6 +36,7 @@ const BottomSheet = exports.BottomSheet = /*#__PURE__*/React.forwardRef((props,
35
36
  ...rest
36
37
  } = props;
37
38
  const computedStyle = (0, _BottomSheet.getStyle)();
39
+ const keyboardHeight = (0, _hooks.useKeyboardHeight)();
38
40
  const [visibility, setVisibility] = React.useState(false);
39
41
  const panY = React.useRef(new _reactNative.Animated.Value(deviceWindow.height)).current;
40
42
  React.useImperativeHandle(ref, () => {
@@ -138,7 +140,7 @@ const BottomSheet = exports.BottomSheet = /*#__PURE__*/React.forwardRef((props,
138
140
  }
139
141
  }, rest), /*#__PURE__*/React.createElement(_reactNative.Animated.View, {
140
142
  style: [computedStyle.container, {
141
- maxHeight: deviceWindow.height * maxSheetHeight,
143
+ maxHeight: deviceWindow.height * maxSheetHeight - keyboardHeight,
142
144
  transform: [{
143
145
  translateY: translateY
144
146
  }]
@@ -1 +1 @@
1
- {"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_reactNativeModal","_interopRequireDefault","_BottomSheet","_typography","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","deviceWindow","Dimensions","BottomSheet","exports","forwardRef","props","ref","onDismiss","title","titleProps","subtitle","subtitleProps","dismissIcon","dismissIconProps","action","largeIcon","largeIconContainerHeight","maxSheetHeight","sheetHeader","backdropTransitionOutTiming","onBackdropPress","onBackButtonPress","children","rest","computedStyle","getStyle","visibility","setVisibility","useState","panY","useRef","Animated","Value","height","current","useImperativeHandle","open","close","handleDismiss","closeAnim","start","resetPositionAnim","timing","toValue","duration","useNativeDriver","translateY","interpolate","inputRange","outputRange","useEffect","panResponders","PanResponder","create","onStartShouldSetPanResponder","onMoveShouldSetPanResponder","onPanResponderMove","event","dy","onPanResponderRelease","_","gs","vy","renderSheetHeader","createElement","View","style","sheetHeaderWrapper","TouchableHighlight","onPress","sheetDismissIconWrapper","underlayColor","Typography","variant","textCenter","numberOfLines","sheetActionWrapper","subtitleText","renderLargeIconComponent","largeIconContainer","largeIconAbsoluteWrapper","isVisible","onSwipeComplete","flex","margin","container","maxHeight","transform","sheetIndicatorWrapper","panHandlers","sliderIndicator"],"sourceRoot":"../../../../src","sources":["components/BottomSheet/BottomSheet.component.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_reactNativeModal","_interopRequireDefault","_BottomSheet","_typography","_hooks","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","deviceWindow","Dimensions","BottomSheet","exports","forwardRef","props","ref","onDismiss","title","titleProps","subtitle","subtitleProps","dismissIcon","dismissIconProps","action","largeIcon","largeIconContainerHeight","maxSheetHeight","sheetHeader","backdropTransitionOutTiming","onBackdropPress","onBackButtonPress","children","rest","computedStyle","getStyle","keyboardHeight","useKeyboardHeight","visibility","setVisibility","useState","panY","useRef","Animated","Value","height","current","useImperativeHandle","open","close","handleDismiss","closeAnim","start","resetPositionAnim","timing","toValue","duration","useNativeDriver","translateY","interpolate","inputRange","outputRange","useEffect","panResponders","PanResponder","create","onStartShouldSetPanResponder","onMoveShouldSetPanResponder","onPanResponderMove","event","dy","onPanResponderRelease","_","gs","vy","renderSheetHeader","createElement","View","style","sheetHeaderWrapper","TouchableHighlight","onPress","sheetDismissIconWrapper","underlayColor","Typography","variant","textCenter","numberOfLines","sheetActionWrapper","subtitleText","renderLargeIconComponent","largeIconContainer","largeIconAbsoluteWrapper","isVisible","onSwipeComplete","flex","margin","container","maxHeight","transform","sheetIndicatorWrapper","panHandlers","sliderIndicator"],"sourceRoot":"../../../../src","sources":["components/BottomSheet/BottomSheet.component.tsx"],"mappings":"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","ignoreList":[]}
@@ -12,39 +12,43 @@ var _BottomSheet = require("../BottomSheet/BottomSheet.component");
12
12
  var _button = require("../button/button.component");
13
13
  var _Checkbox = require("../Checkbox/Checkbox.component");
14
14
  var _RadioButton = require("../RadioButton/RadioButton.component");
15
+ var _searchInput = require("../search-input/search-input.component");
15
16
  var _icons = require("../../icons");
17
+ var _hooks = require("../../hooks");
16
18
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
17
19
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
18
20
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
19
21
  function SelectionModal(props) {
20
22
  const {
21
23
  type = 'radio',
22
- renderDisplayComponent,
24
+ value = [],
23
25
  listOptions,
24
26
  maxSelectedItem = -1,
25
27
  bottomSheetOpt,
26
28
  saveButtonProps,
27
29
  bottomActionContainerStyle,
30
+ withSearch = false,
31
+ searchComponentProps,
28
32
  onSaveButtonPress = () => {},
33
+ renderDisplayComponent,
29
34
  renderCutomBottomAction,
30
- value = []
35
+ customRenderItem
31
36
  } = props;
32
- const {
33
- renderItem,
34
- ...listOptionsRest
35
- } = listOptions;
36
37
  const ref = (0, _react.useRef)(null);
37
38
  const computedStyles = (0, _selectionModal.getStyle)();
38
39
  const [selectedTemp, setSelectedTemp] = (0, _react.useState)(value);
39
- if (!renderDisplayComponent) {
40
- console.warn('Please provide renderDisplayComponent props (SelectionModal - adiraku)');
41
- return null;
42
- }
43
- const renderActionList = ({
44
- item,
45
- index
46
- }) => {
40
+ const [searchValue, setSearchValue] = (0, _react.useState)('');
41
+ const searchValueDebounce = (0, _hooks.useDebouncedValue)(searchValue);
42
+ const {
43
+ data,
44
+ ...listOptionsRest
45
+ } = listOptions;
46
+ const renderActionList = info => {
47
47
  var _listOptions$data;
48
+ const {
49
+ item,
50
+ index
51
+ } = info;
48
52
  const {
49
53
  value: valueItem,
50
54
  title,
@@ -52,6 +56,7 @@ function SelectionModal(props) {
52
56
  ...itemRest
53
57
  } = item;
54
58
  const isSelected = !!(selectedTemp !== null && selectedTemp !== void 0 && selectedTemp.find(i => i.value === valueItem));
59
+ if (customRenderItem) return customRenderItem(info, isSelected, handleOnItemPress);
55
60
  return /*#__PURE__*/_react.default.createElement(_ActionList.ActionList, _extends({
56
61
  title: title,
57
62
  onPress: () => handleOnItemPress(item),
@@ -66,6 +71,16 @@ function SelectionModal(props) {
66
71
  isLast: index === (((_listOptions$data = listOptions.data) === null || _listOptions$data === void 0 ? void 0 : _listOptions$data.length) ?? 0) - 1
67
72
  }, itemRest));
68
73
  };
74
+ const filterDataDebounced = (0, _react.useMemo)(() => {
75
+ if (searchValueDebounce === '') {
76
+ return data;
77
+ } else {
78
+ return data === null || data === void 0 ? void 0 : data.filter(item => {
79
+ var _item$title;
80
+ return (_item$title = item.title) === null || _item$title === void 0 ? void 0 : _item$title.includes(searchValueDebounce);
81
+ });
82
+ }
83
+ }, [data, searchValueDebounce]);
69
84
  const handleOnItemPress = item => {
70
85
  if (type === 'radio') {
71
86
  setSelectedTemp([item]);
@@ -99,11 +114,22 @@ function SelectionModal(props) {
99
114
  onSaveButtonPress(selectedTemp);
100
115
  (_ref$current3 = ref.current) === null || _ref$current3 === void 0 || _ref$current3.close();
101
116
  };
117
+ if (!renderDisplayComponent) {
118
+ console.warn('Please provide renderDisplayComponent props (SelectionModal - adiraku)');
119
+ return null;
120
+ }
102
121
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, renderDisplayComponent === null || renderDisplayComponent === void 0 ? void 0 : renderDisplayComponent(handleShowSheet), /*#__PURE__*/_react.default.createElement(_BottomSheet.BottomSheet, _extends({
103
122
  ref: ref,
104
- dismissIcon: (bottomSheetOpt === null || bottomSheetOpt === void 0 ? void 0 : bottomSheetOpt.dismissIcon) ?? /*#__PURE__*/_react.default.createElement(_icons.IconArrowLeft, null)
105
- }, bottomSheetOpt), /*#__PURE__*/_react.default.createElement(_reactNative.FlatList, _extends({
106
- renderItem: renderItem || renderActionList,
123
+ dismissIcon: /*#__PURE__*/_react.default.createElement(_icons.IconArrowLeft, null)
124
+ }, bottomSheetOpt), withSearch && /*#__PURE__*/_react.default.createElement(_reactNative.View, {
125
+ style: computedStyles.searchContainer
126
+ }, /*#__PURE__*/_react.default.createElement(_searchInput.SearchInput, _extends({
127
+ value: searchValue,
128
+ onChangeText: setSearchValue,
129
+ onTraillingIconPress: () => setSearchValue('')
130
+ }, searchComponentProps))), /*#__PURE__*/_react.default.createElement(_reactNative.FlatList, _extends({
131
+ data: filterDataDebounced,
132
+ renderItem: renderActionList,
107
133
  style: [computedStyles.flatListContentContainer, listOptions.contentContainerStyle]
108
134
  }, listOptionsRest)), renderCutomBottomAction ? renderCutomBottomAction(handleOnSaveButtonPress, handleCloseSheet) : /*#__PURE__*/_react.default.createElement(_reactNative.View, {
109
135
  style: [computedStyles.bottomActionContainer, bottomActionContainerStyle]
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_selectionModal","_ActionList","_BottomSheet","_button","_Checkbox","_RadioButton","_icons","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","SelectionModal","props","type","renderDisplayComponent","listOptions","maxSelectedItem","bottomSheetOpt","saveButtonProps","bottomActionContainerStyle","onSaveButtonPress","renderCutomBottomAction","value","renderItem","listOptionsRest","ref","useRef","computedStyles","getStyle","selectedTemp","setSelectedTemp","useState","console","warn","renderActionList","item","index","_listOptions$data","valueItem","title","disabled","itemRest","isSelected","find","createElement","ActionList","onPress","handleOnItemPress","trailingComponent","RadioButton","selected","Checkbox","isLast","data","isItemExist","filterData","filter","handleShowSheet","_ref$current","current","open","handleCloseSheet","_ref$current2","close","handleOnSaveButtonPress","_ref$current3","Fragment","BottomSheet","dismissIcon","IconArrowLeft","FlatList","style","flatListContentContainer","contentContainerStyle","View","bottomActionContainer","Button","label"],"sourceRoot":"../../../../src","sources":["components/selection-modal/selection-modal.component.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_selectionModal","_ActionList","_BottomSheet","_button","_Checkbox","_RadioButton","_searchInput","_icons","_hooks","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","SelectionModal","props","type","value","listOptions","maxSelectedItem","bottomSheetOpt","saveButtonProps","bottomActionContainerStyle","withSearch","searchComponentProps","onSaveButtonPress","renderDisplayComponent","renderCutomBottomAction","customRenderItem","ref","useRef","computedStyles","getStyle","selectedTemp","setSelectedTemp","useState","searchValue","setSearchValue","searchValueDebounce","useDebouncedValue","data","listOptionsRest","renderActionList","info","_listOptions$data","item","index","valueItem","title","disabled","itemRest","isSelected","find","handleOnItemPress","createElement","ActionList","onPress","trailingComponent","RadioButton","selected","Checkbox","isLast","filterDataDebounced","useMemo","filter","_item$title","includes","isItemExist","filterData","handleShowSheet","_ref$current","current","open","handleCloseSheet","_ref$current2","close","handleOnSaveButtonPress","_ref$current3","console","warn","Fragment","BottomSheet","dismissIcon","IconArrowLeft","View","style","searchContainer","SearchInput","onChangeText","onTraillingIconPress","FlatList","renderItem","flatListContentContainer","contentContainerStyle","bottomActionContainer","Button","label"],"sourceRoot":"../../../../src","sources":["components/selection-modal/selection-modal.component.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAYA,IAAAE,eAAA,GAAAF,OAAA;AAEA,IAAAG,WAAA,GAAAH,OAAA;AACA,IAAAI,YAAA,GAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAL,OAAA;AACA,IAAAM,SAAA,GAAAN,OAAA;AACA,IAAAO,YAAA,GAAAP,OAAA;AACA,IAAAQ,YAAA,GAAAR,OAAA;AACA,IAAAS,MAAA,GAAAT,OAAA;AACA,IAAAU,MAAA,GAAAV,OAAA;AAAgD,SAAAW,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAb,wBAAAa,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAW,SAAA,WAAAA,QAAA,GAAAR,MAAA,CAAAS,MAAA,GAAAT,MAAA,CAAAS,MAAA,CAAAC,IAAA,eAAAb,CAAA,aAAAR,CAAA,MAAAA,CAAA,GAAAsB,SAAA,CAAAC,MAAA,EAAAvB,CAAA,UAAAG,CAAA,GAAAmB,SAAA,CAAAtB,CAAA,YAAAE,CAAA,IAAAC,CAAA,OAAAY,cAAA,CAAAC,IAAA,CAAAb,CAAA,EAAAD,CAAA,MAAAM,CAAA,CAAAN,CAAA,IAAAC,CAAA,CAAAD,CAAA,aAAAM,CAAA,KAAAW,QAAA,CAAAK,KAAA,OAAAF,SAAA;AAGzC,SAASG,cAAcA,CAACC,KAA0B,EAAE;EACzD,MAAM;IACJC,IAAI,GAAG,OAAO;IACdC,KAAK,GAAG,EAAE;IACVC,WAAW;IACXC,eAAe,GAAG,CAAC,CAAC;IACpBC,cAAc;IACdC,eAAe;IACfC,0BAA0B;IAC1BC,UAAU,GAAG,KAAK;IAClBC,oBAAoB;IACpBC,iBAAiB,GAAGA,CAAA,KAAM,CAAC,CAAC;IAC5BC,sBAAsB;IACtBC,uBAAuB;IACvBC;EACF,CAAC,GAAGb,KAAK;EAET,MAAMc,GAAG,GAAG,IAAAC,aAAM,EAAqB,IAAI,CAAC;EAE5C,MAAMC,cAAc,GAAG,IAAAC,wBAAQ,EAAC,CAAC;EAEjC,MAAM,CAACC,YAAY,EAAEC,eAAe,CAAC,GAAG,IAAAC,eAAQ,EAAsBlB,KAAK,CAAC;EAC5E,MAAM,CAACmB,WAAW,EAAEC,cAAc,CAAC,GAAG,IAAAF,eAAQ,EAAC,EAAE,CAAC;EAClD,MAAMG,mBAAmB,GAAG,IAAAC,wBAAiB,EAACH,WAAW,CAAC;EAE1D,MAAM;IAAEI,IAAI;IAAE,GAAGC;EAAgB,CAAC,GAAGvB,WAAW;EAChD,MAAMwB,gBAAgB,GAAIC,IAA2C,IAAK;IAAA,IAAAC,iBAAA;IACxE,MAAM;MAAEC,IAAI;MAAEC;IAAM,CAAC,GAAGH,IAAI;IAC5B,MAAM;MAAE1B,KAAK,EAAE8B,SAAS;MAAEC,KAAK;MAAEC,QAAQ;MAAE,GAAGC;IAAS,CAAC,GAAGL,IAAI;IAE/D,MAAMM,UAAU,GAAG,CAAC,EAAClB,YAAY,aAAZA,YAAY,eAAZA,YAAY,CAAEmB,IAAI,CAAE9C,CAAC,IAAKA,CAAC,CAACW,KAAK,KAAK8B,SAAS,CAAC;IAErE,IAAInB,gBAAgB,EAClB,OAAOA,gBAAgB,CAACe,IAAI,EAAEQ,UAAU,EAAEE,iBAAiB,CAAC;IAE9D,oBACE9E,MAAA,CAAAmB,OAAA,CAAA4D,aAAA,CAAC1E,WAAA,CAAA2E,UAAU,EAAA/C,QAAA;MACTwC,KAAK,EAAEA,KAAM;MACbQ,OAAO,EAAEA,CAAA,KAAMH,iBAAiB,CAACR,IAAI,CAAE;MACvCY,iBAAiB,EACfzC,IAAI,KAAK,OAAO,gBACdzC,MAAA,CAAAmB,OAAA,CAAA4D,aAAA,CAACtE,YAAA,CAAA0E,WAAW;QAACC,QAAQ,EAAER,UAAW;QAACF,QAAQ,EAAEA;MAAS,CAAE,CAAC,gBAEzD1E,MAAA,CAAAmB,OAAA,CAAA4D,aAAA,CAACvE,SAAA,CAAA6E,QAAQ;QAACD,QAAQ,EAAER,UAAW;QAACF,QAAQ,EAAEA;MAAS,CAAE,CAExD;MACDA,QAAQ,EAAEA,QAAS;MACnBY,MAAM,EAAEf,KAAK,KAAK,CAAC,EAAAF,iBAAA,GAAA1B,WAAW,CAACsB,IAAI,cAAAI,iBAAA,uBAAhBA,iBAAA,CAAkBhC,MAAM,KAAI,CAAC,IAAI;IAAE,GAClDsC,QAAQ,CACb,CAAC;EAEN,CAAC;EAED,MAAMY,mBAAmB,GAAG,IAAAC,cAAO,EAAC,MAAM;IACxC,IAAIzB,mBAAmB,KAAK,EAAE,EAAE;MAC9B,OAAOE,IAAI;IACb,CAAC,MAAM;MACL,OAAOA,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEwB,MAAM,CAAEnB,IAAI;QAAA,IAAAoB,WAAA;QAAA,QAAAA,WAAA,GAAKpB,IAAI,CAACG,KAAK,cAAAiB,WAAA,uBAAVA,WAAA,CAAYC,QAAQ,CAAC5B,mBAAmB,CAAC;MAAA,EAAC;IAC1E;EACF,CAAC,EAAE,CAACE,IAAI,EAAEF,mBAAmB,CAAC,CAAC;EAE/B,MAAMe,iBAAiB,GAAIR,IAAuB,IAAK;IACrD,IAAI7B,IAAI,KAAK,OAAO,EAAE;MACpBkB,eAAe,CAAC,CAACW,IAAI,CAAC,CAAC;IACzB,CAAC,MAAM,IAAI7B,IAAI,KAAK,UAAU,EAAE;MAC9B,MAAMmD,WAAW,GAAGlC,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAEmB,IAAI,CAAE9C,CAAC,IAAKA,CAAC,CAACW,KAAK,KAAK4B,IAAI,CAAC5B,KAAK,CAAC;;MAErE;MACA,IAAIkD,WAAW,EAAE;QACf,MAAMC,UAAU,GAAGnC,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAE+B,MAAM,CAAE1D,CAAC,IAAKA,CAAC,CAACW,KAAK,KAAK4B,IAAI,CAAC5B,KAAK,CAAC;QAEtEiB,eAAe,CAACkC,UAAU,CAAC;MAC7B,CAAC,MAAM;QACL,IAAIjD,eAAe,GAAG,CAAC,EAAE;UACvBe,eAAe,CAAC,CAAC,IAAID,YAAY,IAAI,EAAE,CAAC,EAAEY,IAAI,CAAC,CAAC;QAClD,CAAC,MAAM;UACLX,eAAe,CAAC,CAAC,IAAID,YAAY,IAAI,EAAE,CAAC,EAAEY,IAAI,CAAC,CAAC;QAClD;MACF;IACF;EACF,CAAC;EAED,MAAMwB,eAAe,GAAGA,CAAA,KAAM;IAAA,IAAAC,YAAA;IAC5BpC,eAAe,CAACjB,KAAK,CAAC;IACtB,CAAAqD,YAAA,GAAAzC,GAAG,CAAC0C,OAAO,cAAAD,YAAA,eAAXA,YAAA,CAAaE,IAAI,CAAC,CAAC;EACrB,CAAC;EAED,MAAMC,gBAAgB,GAAGA,CAAA,KAAM;IAAA,IAAAC,aAAA;IAC7B,CAAAA,aAAA,GAAA7C,GAAG,CAAC0C,OAAO,cAAAG,aAAA,eAAXA,aAAA,CAAaC,KAAK,CAAC,CAAC;EACtB,CAAC;EAED,MAAMC,uBAAuB,GAAGA,CAAA,KAAM;IAAA,IAAAC,aAAA;IACpCpD,iBAAiB,CAACQ,YAAY,CAAC;IAC/B,CAAA4C,aAAA,GAAAhD,GAAG,CAAC0C,OAAO,cAAAM,aAAA,eAAXA,aAAA,CAAaF,KAAK,CAAC,CAAC;EACtB,CAAC;EAED,IAAI,CAACjD,sBAAsB,EAAE;IAC3BoD,OAAO,CAACC,IAAI,CACV,wEACF,CAAC;IACD,OAAO,IAAI;EACb;EAEA,oBACExG,MAAA,CAAAmB,OAAA,CAAA4D,aAAA,CAAA/E,MAAA,CAAAmB,OAAA,CAAAsF,QAAA,QACGtD,sBAAsB,aAAtBA,sBAAsB,uBAAtBA,sBAAsB,CAAG2C,eAAe,CAAC,eAE1C9F,MAAA,CAAAmB,OAAA,CAAA4D,aAAA,CAACzE,YAAA,CAAAoG,WAAW,EAAAzE,QAAA;IACVqB,GAAG,EAAEA,GAAI;IACTqD,WAAW,eAAE3G,MAAA,CAAAmB,OAAA,CAAA4D,aAAA,CAACpE,MAAA,CAAAiG,aAAa,MAAE;EAAE,GAC3B/D,cAAc,GAEjBG,UAAU,iBACThD,MAAA,CAAAmB,OAAA,CAAA4D,aAAA,CAAC5E,YAAA,CAAA0G,IAAI;IAACC,KAAK,EAAEtD,cAAc,CAACuD;EAAgB,gBAC1C/G,MAAA,CAAAmB,OAAA,CAAA4D,aAAA,CAACrE,YAAA,CAAAsG,WAAW,EAAA/E,QAAA;IACVS,KAAK,EAAEmB,WAAY;IACnBoD,YAAY,EAAEnD,cAAe;IAC7BoD,oBAAoB,EAAEA,CAAA,KAAMpD,cAAc,CAAC,EAAE;EAAE,GAC3Cb,oBAAoB,CACzB,CACG,CACP,eACDjD,MAAA,CAAAmB,OAAA,CAAA4D,aAAA,CAAC5E,YAAA,CAAAgH,QAAQ,EAAAlF,QAAA;IACPgC,IAAI,EAAEsB,mBAAoB;IAC1B6B,UAAU,EAAEjD,gBAAsD;IAClE2C,KAAK,EAAE,CACLtD,cAAc,CAAC6D,wBAAwB,EACvC1E,WAAW,CAAC2E,qBAAqB;EACjC,GACEpD,eAAe,CACpB,CAAC,EAEDd,uBAAuB,GACtBA,uBAAuB,CAACiD,uBAAuB,EAAEH,gBAAgB,CAAC,gBAElElG,MAAA,CAAAmB,OAAA,CAAA4D,aAAA,CAAC5E,YAAA,CAAA0G,IAAI;IACHC,KAAK,EAAE,CACLtD,cAAc,CAAC+D,qBAAqB,EACpCxE,0BAA0B;EAC1B,gBAEF/C,MAAA,CAAAmB,OAAA,CAAA4D,aAAA,CAACxE,OAAA,CAAAiH,MAAM,EAAAvF,QAAA;IACLwF,KAAK,EAAE,CAAA3E,eAAe,aAAfA,eAAe,uBAAfA,eAAe,CAAE2E,KAAK,KAAI,QAAS;IAC1CxC,OAAO,EAAEoB,uBAAwB;IACjC3B,QAAQ,EAAE,CAAC,CAAAhB,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAErB,MAAM,KAAI,CAAC,KAAK;EAAE,GACvCS,eAAe,CACpB,CACG,CAEG,CACb,CAAC;AAEP","ignoreList":[]}
@@ -14,6 +14,11 @@ const getStyle = () => {
14
14
  paddingBottom: _themes.Spacing[24],
15
15
  backgroundColor: 'transparent'
16
16
  };
17
+ computedStyle.searchContainer = {
18
+ padding: _themes.Spacing[16],
19
+ paddingTop: _themes.Spacing[8],
20
+ backgroundColor: _themes.Palettes.white[50]
21
+ };
17
22
  return _reactNative.StyleSheet.create(computedStyle);
18
23
  };
19
24
  exports.getStyle = getStyle;
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_themes","getStyle","computedStyle","flatListContentContainer","bottomActionContainer","padding","Spacing","paddingBottom","backgroundColor","StyleSheet","create","exports"],"sourceRoot":"../../../../src","sources":["components/selection-modal/selection-modal.style.tsx"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AAOO,MAAME,QAAQ,GAAGA,CAAA,KAAM;EAC5B,MAAMC,aAAiC,GAAG,CAAC,CAAC;EAE5CA,aAAa,CAACC,wBAAwB,GAAG,CAAC,CAAC;EAE3CD,aAAa,CAACE,qBAAqB,GAAG;IACpCC,OAAO,EAAEC,eAAO,CAAC,EAAE,CAAC;IACpBC,aAAa,EAAED,eAAO,CAAC,EAAE,CAAC;IAC1BE,eAAe,EAAE;EACnB,CAAC;EAED,OAAOC,uBAAU,CAACC,MAAM,CAACR,aAAa,CAAC;AACzC,CAAC;AAACS,OAAA,CAAAV,QAAA,GAAAA,QAAA","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_themes","getStyle","computedStyle","flatListContentContainer","bottomActionContainer","padding","Spacing","paddingBottom","backgroundColor","searchContainer","paddingTop","Palettes","white","StyleSheet","create","exports"],"sourceRoot":"../../../../src","sources":["components/selection-modal/selection-modal.style.tsx"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AAQO,MAAME,QAAQ,GAAGA,CAAA,KAAM;EAC5B,MAAMC,aAAiC,GAAG,CAAC,CAAC;EAE5CA,aAAa,CAACC,wBAAwB,GAAG,CAAC,CAAC;EAE3CD,aAAa,CAACE,qBAAqB,GAAG;IACpCC,OAAO,EAAEC,eAAO,CAAC,EAAE,CAAC;IACpBC,aAAa,EAAED,eAAO,CAAC,EAAE,CAAC;IAC1BE,eAAe,EAAE;EACnB,CAAC;EAEDN,aAAa,CAACO,eAAe,GAAG;IAC9BJ,OAAO,EAAEC,eAAO,CAAC,EAAE,CAAC;IACpBI,UAAU,EAAEJ,eAAO,CAAC,CAAC,CAAC;IACtBE,eAAe,EAAEG,gBAAQ,CAACC,KAAK,CAAC,EAAE;EACpC,CAAC;EAED,OAAOC,uBAAU,CAACC,MAAM,CAACZ,aAAa,CAAC;AACzC,CAAC;AAACa,OAAA,CAAAd,QAAA,GAAAA,QAAA","ignoreList":[]}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _useDebounce = require("./useDebounce");
7
+ Object.keys(_useDebounce).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _useDebounce[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function () {
13
+ return _useDebounce[key];
14
+ }
15
+ });
16
+ });
17
+ var _useKeyboardHeight = require("./useKeyboardHeight");
18
+ Object.keys(_useKeyboardHeight).forEach(function (key) {
19
+ if (key === "default" || key === "__esModule") return;
20
+ if (key in exports && exports[key] === _useKeyboardHeight[key]) return;
21
+ Object.defineProperty(exports, key, {
22
+ enumerable: true,
23
+ get: function () {
24
+ return _useKeyboardHeight[key];
25
+ }
26
+ });
27
+ });
28
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_useDebounce","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_useKeyboardHeight"],"sourceRoot":"../../../src","sources":["hooks/index.ts"],"mappings":";;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,YAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,YAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,YAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,kBAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,kBAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,kBAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,kBAAA,CAAAL,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useDebouncedValue = void 0;
7
+ var _react = require("react");
8
+ const useDebouncedValue = (value = '', delay = 300) => {
9
+ const [debouncedValue, setDebouncedValue] = (0, _react.useState)(value);
10
+ (0, _react.useEffect)(() => {
11
+ const timer = setTimeout(() => {
12
+ setDebouncedValue(value);
13
+ }, delay);
14
+ return () => clearTimeout(timer);
15
+ }, [value, delay]);
16
+ return debouncedValue;
17
+ };
18
+ exports.useDebouncedValue = useDebouncedValue;
19
+ //# sourceMappingURL=useDebounce.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","useDebouncedValue","value","delay","debouncedValue","setDebouncedValue","useState","useEffect","timer","setTimeout","clearTimeout","exports"],"sourceRoot":"../../../src","sources":["hooks/useDebounce.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEO,MAAMC,iBAAiB,GAAGA,CAACC,KAAK,GAAG,EAAE,EAAEC,KAAK,GAAG,GAAG,KAAa;EACpE,MAAM,CAACC,cAAc,EAAEC,iBAAiB,CAAC,GAAG,IAAAC,eAAQ,EAACJ,KAAK,CAAC;EAE3D,IAAAK,gBAAS,EAAC,MAAM;IACd,MAAMC,KAAK,GAAGC,UAAU,CAAC,MAAM;MAC7BJ,iBAAiB,CAACH,KAAK,CAAC;IAC1B,CAAC,EAAEC,KAAK,CAAC;IAET,OAAO,MAAMO,YAAY,CAACF,KAAK,CAAC;EAClC,CAAC,EAAE,CAACN,KAAK,EAAEC,KAAK,CAAC,CAAC;EAElB,OAAOC,cAAc;AACvB,CAAC;AAACO,OAAA,CAAAV,iBAAA,GAAAA,iBAAA","ignoreList":[]}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useKeyboardHeight = void 0;
7
+ var _react = require("react");
8
+ var _reactNative = require("react-native");
9
+ const useKeyboardHeight = () => {
10
+ const [keyboardHeight, setKeyboardHeight] = (0, _react.useState)(0);
11
+ (0, _react.useEffect)(() => {
12
+ function onKeyboardDidShow(e) {
13
+ // Remove type here if not using TypeScript
14
+ setKeyboardHeight(e.endCoordinates.height);
15
+ }
16
+ function onKeyboardDidHide() {
17
+ setKeyboardHeight(0);
18
+ }
19
+ const showSubscription = _reactNative.Keyboard.addListener('keyboardDidShow', onKeyboardDidShow);
20
+ const hideSubscription = _reactNative.Keyboard.addListener('keyboardDidHide', onKeyboardDidHide);
21
+ return () => {
22
+ showSubscription.remove();
23
+ hideSubscription.remove();
24
+ };
25
+ }, []);
26
+ return keyboardHeight;
27
+ };
28
+ exports.useKeyboardHeight = useKeyboardHeight;
29
+ //# sourceMappingURL=useKeyboardHeight.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_reactNative","useKeyboardHeight","keyboardHeight","setKeyboardHeight","useState","useEffect","onKeyboardDidShow","e","endCoordinates","height","onKeyboardDidHide","showSubscription","Keyboard","addListener","hideSubscription","remove","exports"],"sourceRoot":"../../../src","sources":["hooks/useKeyboardHeight.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEO,MAAME,iBAAiB,GAAGA,CAAA,KAAM;EACrC,MAAM,CAACC,cAAc,EAAEC,iBAAiB,CAAC,GAAG,IAAAC,eAAQ,EAAC,CAAC,CAAC;EAEvD,IAAAC,gBAAS,EAAC,MAAM;IACd,SAASC,iBAAiBA,CAACC,CAAgB,EAAE;MAC3C;MACAJ,iBAAiB,CAACI,CAAC,CAACC,cAAc,CAACC,MAAM,CAAC;IAC5C;IAEA,SAASC,iBAAiBA,CAAA,EAAG;MAC3BP,iBAAiB,CAAC,CAAC,CAAC;IACtB;IAEA,MAAMQ,gBAAgB,GAAGC,qBAAQ,CAACC,WAAW,CAC3C,iBAAiB,EACjBP,iBACF,CAAC;IACD,MAAMQ,gBAAgB,GAAGF,qBAAQ,CAACC,WAAW,CAC3C,iBAAiB,EACjBH,iBACF,CAAC;IACD,OAAO,MAAM;MACXC,gBAAgB,CAACI,MAAM,CAAC,CAAC;MACzBD,gBAAgB,CAACC,MAAM,CAAC,CAAC;IAC3B,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,OAAOb,cAAc;AACvB,CAAC;AAACc,OAAA,CAAAf,iBAAA,GAAAA,iBAAA","ignoreList":[]}
@@ -25,4 +25,15 @@ Object.keys(_themes).forEach(function (key) {
25
25
  }
26
26
  });
27
27
  });
28
+ var _hooks = require("./hooks");
29
+ Object.keys(_hooks).forEach(function (key) {
30
+ if (key === "default" || key === "__esModule") return;
31
+ if (key in exports && exports[key] === _hooks[key]) return;
32
+ Object.defineProperty(exports, key, {
33
+ enumerable: true,
34
+ get: function () {
35
+ return _hooks[key];
36
+ }
37
+ });
38
+ });
28
39
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_components","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_themes"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,WAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,WAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,WAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,OAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,OAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,OAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,OAAA,CAAAL,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["_components","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_themes","_hooks"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,WAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,WAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,WAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,OAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,OAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,OAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,OAAA,CAAAL,GAAA;IAAA;EAAA;AAAA;AACA,IAAAM,MAAA,GAAAV,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAQ,MAAA,EAAAP,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAM,MAAA,CAAAN,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAE,MAAA,CAAAN,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
@@ -4,6 +4,7 @@ import { Animated, Dimensions, PanResponder, TouchableHighlight, View } from 're
4
4
  import Modal from 'react-native-modal';
5
5
  import { getStyle } from './BottomSheet.style';
6
6
  import { Typography } from '../typography/typography.component';
7
+ import { useKeyboardHeight } from '../../hooks';
7
8
  const deviceWindow = Dimensions.get('window');
8
9
  const BottomSheet = /*#__PURE__*/React.forwardRef((props, ref) => {
9
10
  const {
@@ -26,6 +27,7 @@ const BottomSheet = /*#__PURE__*/React.forwardRef((props, ref) => {
26
27
  ...rest
27
28
  } = props;
28
29
  const computedStyle = getStyle();
30
+ const keyboardHeight = useKeyboardHeight();
29
31
  const [visibility, setVisibility] = React.useState(false);
30
32
  const panY = React.useRef(new Animated.Value(deviceWindow.height)).current;
31
33
  React.useImperativeHandle(ref, () => {
@@ -129,7 +131,7 @@ const BottomSheet = /*#__PURE__*/React.forwardRef((props, ref) => {
129
131
  }
130
132
  }, rest), /*#__PURE__*/React.createElement(Animated.View, {
131
133
  style: [computedStyle.container, {
132
- maxHeight: deviceWindow.height * maxSheetHeight,
134
+ maxHeight: deviceWindow.height * maxSheetHeight - keyboardHeight,
133
135
  transform: [{
134
136
  translateY: translateY
135
137
  }]
@@ -1 +1 @@
1
- {"version":3,"names":["React","Animated","Dimensions","PanResponder","TouchableHighlight","View","Modal","getStyle","Typography","deviceWindow","get","BottomSheet","forwardRef","props","ref","onDismiss","title","titleProps","subtitle","subtitleProps","dismissIcon","dismissIconProps","action","largeIcon","largeIconContainerHeight","maxSheetHeight","sheetHeader","backdropTransitionOutTiming","onBackdropPress","onBackButtonPress","children","rest","computedStyle","visibility","setVisibility","useState","panY","useRef","Value","height","current","useImperativeHandle","open","close","handleDismiss","closeAnim","start","resetPositionAnim","timing","toValue","duration","useNativeDriver","translateY","interpolate","inputRange","outputRange","useEffect","panResponders","create","onStartShouldSetPanResponder","onMoveShouldSetPanResponder","onPanResponderMove","event","dy","onPanResponderRelease","_","gs","vy","renderSheetHeader","createElement","style","sheetHeaderWrapper","_extends","onPress","sheetDismissIconWrapper","underlayColor","variant","textCenter","numberOfLines","sheetActionWrapper","subtitleText","renderLargeIconComponent","largeIconContainer","largeIconAbsoluteWrapper","isVisible","onSwipeComplete","flex","margin","container","maxHeight","transform","sheetIndicatorWrapper","panHandlers","sliderIndicator"],"sourceRoot":"../../../../src","sources":["components/BottomSheet/BottomSheet.component.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Animated","Dimensions","PanResponder","TouchableHighlight","View","Modal","getStyle","Typography","useKeyboardHeight","deviceWindow","get","BottomSheet","forwardRef","props","ref","onDismiss","title","titleProps","subtitle","subtitleProps","dismissIcon","dismissIconProps","action","largeIcon","largeIconContainerHeight","maxSheetHeight","sheetHeader","backdropTransitionOutTiming","onBackdropPress","onBackButtonPress","children","rest","computedStyle","keyboardHeight","visibility","setVisibility","useState","panY","useRef","Value","height","current","useImperativeHandle","open","close","handleDismiss","closeAnim","start","resetPositionAnim","timing","toValue","duration","useNativeDriver","translateY","interpolate","inputRange","outputRange","useEffect","panResponders","create","onStartShouldSetPanResponder","onMoveShouldSetPanResponder","onPanResponderMove","event","dy","onPanResponderRelease","_","gs","vy","renderSheetHeader","createElement","style","sheetHeaderWrapper","_extends","onPress","sheetDismissIconWrapper","underlayColor","variant","textCenter","numberOfLines","sheetActionWrapper","subtitleText","renderLargeIconComponent","largeIconContainer","largeIconAbsoluteWrapper","isVisible","onSwipeComplete","flex","margin","container","maxHeight","transform","sheetIndicatorWrapper","panHandlers","sliderIndicator"],"sourceRoot":"../../../../src","sources":["components/BottomSheet/BottomSheet.component.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,5 @@
1
1
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
2
- import React, { useRef, useState } from 'react';
2
+ import React, { useMemo, useRef, useState } from 'react';
3
3
  import { FlatList, View } from 'react-native';
4
4
  import { getStyle } from './selection-modal.style';
5
5
  import { ActionList } from '../ActionList/ActionList.component';
@@ -7,36 +7,40 @@ import { BottomSheet } from '../BottomSheet/BottomSheet.component';
7
7
  import { Button } from '../button/button.component';
8
8
  import { Checkbox } from '../Checkbox/Checkbox.component';
9
9
  import { RadioButton } from '../RadioButton/RadioButton.component';
10
+ import { SearchInput } from '../search-input/search-input.component';
10
11
  import { IconArrowLeft } from '../../icons';
12
+ import { useDebouncedValue } from '../../hooks';
11
13
  export function SelectionModal(props) {
12
14
  const {
13
15
  type = 'radio',
14
- renderDisplayComponent,
16
+ value = [],
15
17
  listOptions,
16
18
  maxSelectedItem = -1,
17
19
  bottomSheetOpt,
18
20
  saveButtonProps,
19
21
  bottomActionContainerStyle,
22
+ withSearch = false,
23
+ searchComponentProps,
20
24
  onSaveButtonPress = () => {},
25
+ renderDisplayComponent,
21
26
  renderCutomBottomAction,
22
- value = []
27
+ customRenderItem
23
28
  } = props;
24
- const {
25
- renderItem,
26
- ...listOptionsRest
27
- } = listOptions;
28
29
  const ref = useRef(null);
29
30
  const computedStyles = getStyle();
30
31
  const [selectedTemp, setSelectedTemp] = useState(value);
31
- if (!renderDisplayComponent) {
32
- console.warn('Please provide renderDisplayComponent props (SelectionModal - adiraku)');
33
- return null;
34
- }
35
- const renderActionList = ({
36
- item,
37
- index
38
- }) => {
32
+ const [searchValue, setSearchValue] = useState('');
33
+ const searchValueDebounce = useDebouncedValue(searchValue);
34
+ const {
35
+ data,
36
+ ...listOptionsRest
37
+ } = listOptions;
38
+ const renderActionList = info => {
39
39
  var _listOptions$data;
40
+ const {
41
+ item,
42
+ index
43
+ } = info;
40
44
  const {
41
45
  value: valueItem,
42
46
  title,
@@ -44,6 +48,7 @@ export function SelectionModal(props) {
44
48
  ...itemRest
45
49
  } = item;
46
50
  const isSelected = !!(selectedTemp !== null && selectedTemp !== void 0 && selectedTemp.find(i => i.value === valueItem));
51
+ if (customRenderItem) return customRenderItem(info, isSelected, handleOnItemPress);
47
52
  return /*#__PURE__*/React.createElement(ActionList, _extends({
48
53
  title: title,
49
54
  onPress: () => handleOnItemPress(item),
@@ -58,6 +63,16 @@ export function SelectionModal(props) {
58
63
  isLast: index === (((_listOptions$data = listOptions.data) === null || _listOptions$data === void 0 ? void 0 : _listOptions$data.length) ?? 0) - 1
59
64
  }, itemRest));
60
65
  };
66
+ const filterDataDebounced = useMemo(() => {
67
+ if (searchValueDebounce === '') {
68
+ return data;
69
+ } else {
70
+ return data === null || data === void 0 ? void 0 : data.filter(item => {
71
+ var _item$title;
72
+ return (_item$title = item.title) === null || _item$title === void 0 ? void 0 : _item$title.includes(searchValueDebounce);
73
+ });
74
+ }
75
+ }, [data, searchValueDebounce]);
61
76
  const handleOnItemPress = item => {
62
77
  if (type === 'radio') {
63
78
  setSelectedTemp([item]);
@@ -91,11 +106,22 @@ export function SelectionModal(props) {
91
106
  onSaveButtonPress(selectedTemp);
92
107
  (_ref$current3 = ref.current) === null || _ref$current3 === void 0 || _ref$current3.close();
93
108
  };
109
+ if (!renderDisplayComponent) {
110
+ console.warn('Please provide renderDisplayComponent props (SelectionModal - adiraku)');
111
+ return null;
112
+ }
94
113
  return /*#__PURE__*/React.createElement(React.Fragment, null, renderDisplayComponent === null || renderDisplayComponent === void 0 ? void 0 : renderDisplayComponent(handleShowSheet), /*#__PURE__*/React.createElement(BottomSheet, _extends({
95
114
  ref: ref,
96
- dismissIcon: (bottomSheetOpt === null || bottomSheetOpt === void 0 ? void 0 : bottomSheetOpt.dismissIcon) ?? /*#__PURE__*/React.createElement(IconArrowLeft, null)
97
- }, bottomSheetOpt), /*#__PURE__*/React.createElement(FlatList, _extends({
98
- renderItem: renderItem || renderActionList,
115
+ dismissIcon: /*#__PURE__*/React.createElement(IconArrowLeft, null)
116
+ }, bottomSheetOpt), withSearch && /*#__PURE__*/React.createElement(View, {
117
+ style: computedStyles.searchContainer
118
+ }, /*#__PURE__*/React.createElement(SearchInput, _extends({
119
+ value: searchValue,
120
+ onChangeText: setSearchValue,
121
+ onTraillingIconPress: () => setSearchValue('')
122
+ }, searchComponentProps))), /*#__PURE__*/React.createElement(FlatList, _extends({
123
+ data: filterDataDebounced,
124
+ renderItem: renderActionList,
99
125
  style: [computedStyles.flatListContentContainer, listOptions.contentContainerStyle]
100
126
  }, listOptionsRest)), renderCutomBottomAction ? renderCutomBottomAction(handleOnSaveButtonPress, handleCloseSheet) : /*#__PURE__*/React.createElement(View, {
101
127
  style: [computedStyles.bottomActionContainer, bottomActionContainerStyle]
@@ -1 +1 @@
1
- {"version":3,"names":["React","useRef","useState","FlatList","View","getStyle","ActionList","BottomSheet","Button","Checkbox","RadioButton","IconArrowLeft","SelectionModal","props","type","renderDisplayComponent","listOptions","maxSelectedItem","bottomSheetOpt","saveButtonProps","bottomActionContainerStyle","onSaveButtonPress","renderCutomBottomAction","value","renderItem","listOptionsRest","ref","computedStyles","selectedTemp","setSelectedTemp","console","warn","renderActionList","item","index","_listOptions$data","valueItem","title","disabled","itemRest","isSelected","find","i","createElement","_extends","onPress","handleOnItemPress","trailingComponent","selected","isLast","data","length","isItemExist","filterData","filter","handleShowSheet","_ref$current","current","open","handleCloseSheet","_ref$current2","close","handleOnSaveButtonPress","_ref$current3","Fragment","dismissIcon","style","flatListContentContainer","contentContainerStyle","bottomActionContainer","label"],"sourceRoot":"../../../../src","sources":["components/selection-modal/selection-modal.component.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useMemo","useRef","useState","FlatList","View","getStyle","ActionList","BottomSheet","Button","Checkbox","RadioButton","SearchInput","IconArrowLeft","useDebouncedValue","SelectionModal","props","type","value","listOptions","maxSelectedItem","bottomSheetOpt","saveButtonProps","bottomActionContainerStyle","withSearch","searchComponentProps","onSaveButtonPress","renderDisplayComponent","renderCutomBottomAction","customRenderItem","ref","computedStyles","selectedTemp","setSelectedTemp","searchValue","setSearchValue","searchValueDebounce","data","listOptionsRest","renderActionList","info","_listOptions$data","item","index","valueItem","title","disabled","itemRest","isSelected","find","i","handleOnItemPress","createElement","_extends","onPress","trailingComponent","selected","isLast","length","filterDataDebounced","filter","_item$title","includes","isItemExist","filterData","handleShowSheet","_ref$current","current","open","handleCloseSheet","_ref$current2","close","handleOnSaveButtonPress","_ref$current3","console","warn","Fragment","dismissIcon","style","searchContainer","onChangeText","onTraillingIconPress","renderItem","flatListContentContainer","contentContainerStyle","bottomActionContainer","label"],"sourceRoot":"../../../../src","sources":["components/selection-modal/selection-modal.component.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,5 @@
1
1
  import { StyleSheet } from 'react-native';
2
- import { Spacing } from '../../themes';
2
+ import { Palettes, Spacing } from '../../themes';
3
3
  export const getStyle = () => {
4
4
  const computedStyle = {};
5
5
  computedStyle.flatListContentContainer = {};
@@ -8,6 +8,11 @@ export const getStyle = () => {
8
8
  paddingBottom: Spacing[24],
9
9
  backgroundColor: 'transparent'
10
10
  };
11
+ computedStyle.searchContainer = {
12
+ padding: Spacing[16],
13
+ paddingTop: Spacing[8],
14
+ backgroundColor: Palettes.white[50]
15
+ };
11
16
  return StyleSheet.create(computedStyle);
12
17
  };
13
18
  //# sourceMappingURL=selection-modal.style.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["StyleSheet","Spacing","getStyle","computedStyle","flatListContentContainer","bottomActionContainer","padding","paddingBottom","backgroundColor","create"],"sourceRoot":"../../../../src","sources":["components/selection-modal/selection-modal.style.tsx"],"mappings":"AAAA,SAASA,UAAU,QAAmB,cAAc;AAEpD,SAASC,OAAO,QAAQ,cAAc;AAOtC,OAAO,MAAMC,QAAQ,GAAGA,CAAA,KAAM;EAC5B,MAAMC,aAAiC,GAAG,CAAC,CAAC;EAE5CA,aAAa,CAACC,wBAAwB,GAAG,CAAC,CAAC;EAE3CD,aAAa,CAACE,qBAAqB,GAAG;IACpCC,OAAO,EAAEL,OAAO,CAAC,EAAE,CAAC;IACpBM,aAAa,EAAEN,OAAO,CAAC,EAAE,CAAC;IAC1BO,eAAe,EAAE;EACnB,CAAC;EAED,OAAOR,UAAU,CAACS,MAAM,CAACN,aAAa,CAAC;AACzC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["StyleSheet","Palettes","Spacing","getStyle","computedStyle","flatListContentContainer","bottomActionContainer","padding","paddingBottom","backgroundColor","searchContainer","paddingTop","white","create"],"sourceRoot":"../../../../src","sources":["components/selection-modal/selection-modal.style.tsx"],"mappings":"AAAA,SAASA,UAAU,QAAmB,cAAc;AAEpD,SAASC,QAAQ,EAAEC,OAAO,QAAQ,cAAc;AAQhD,OAAO,MAAMC,QAAQ,GAAGA,CAAA,KAAM;EAC5B,MAAMC,aAAiC,GAAG,CAAC,CAAC;EAE5CA,aAAa,CAACC,wBAAwB,GAAG,CAAC,CAAC;EAE3CD,aAAa,CAACE,qBAAqB,GAAG;IACpCC,OAAO,EAAEL,OAAO,CAAC,EAAE,CAAC;IACpBM,aAAa,EAAEN,OAAO,CAAC,EAAE,CAAC;IAC1BO,eAAe,EAAE;EACnB,CAAC;EAEDL,aAAa,CAACM,eAAe,GAAG;IAC9BH,OAAO,EAAEL,OAAO,CAAC,EAAE,CAAC;IACpBS,UAAU,EAAET,OAAO,CAAC,CAAC,CAAC;IACtBO,eAAe,EAAER,QAAQ,CAACW,KAAK,CAAC,EAAE;EACpC,CAAC;EAED,OAAOZ,UAAU,CAACa,MAAM,CAACT,aAAa,CAAC;AACzC,CAAC","ignoreList":[]}
@@ -0,0 +1,3 @@
1
+ export * from './useDebounce';
2
+ export * from './useKeyboardHeight';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../src","sources":["hooks/index.ts"],"mappings":"AAAA,cAAc,eAAe;AAC7B,cAAc,qBAAqB","ignoreList":[]}
@@ -0,0 +1,12 @@
1
+ import { useEffect, useState } from 'react';
2
+ export const useDebouncedValue = (value = '', delay = 300) => {
3
+ const [debouncedValue, setDebouncedValue] = useState(value);
4
+ useEffect(() => {
5
+ const timer = setTimeout(() => {
6
+ setDebouncedValue(value);
7
+ }, delay);
8
+ return () => clearTimeout(timer);
9
+ }, [value, delay]);
10
+ return debouncedValue;
11
+ };
12
+ //# sourceMappingURL=useDebounce.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useEffect","useState","useDebouncedValue","value","delay","debouncedValue","setDebouncedValue","timer","setTimeout","clearTimeout"],"sourceRoot":"../../../src","sources":["hooks/useDebounce.ts"],"mappings":"AAAA,SAASA,SAAS,EAAEC,QAAQ,QAAQ,OAAO;AAE3C,OAAO,MAAMC,iBAAiB,GAAGA,CAACC,KAAK,GAAG,EAAE,EAAEC,KAAK,GAAG,GAAG,KAAa;EACpE,MAAM,CAACC,cAAc,EAAEC,iBAAiB,CAAC,GAAGL,QAAQ,CAACE,KAAK,CAAC;EAE3DH,SAAS,CAAC,MAAM;IACd,MAAMO,KAAK,GAAGC,UAAU,CAAC,MAAM;MAC7BF,iBAAiB,CAACH,KAAK,CAAC;IAC1B,CAAC,EAAEC,KAAK,CAAC;IAET,OAAO,MAAMK,YAAY,CAACF,KAAK,CAAC;EAClC,CAAC,EAAE,CAACJ,KAAK,EAAEC,KAAK,CAAC,CAAC;EAElB,OAAOC,cAAc;AACvB,CAAC","ignoreList":[]}
@@ -0,0 +1,22 @@
1
+ import { useEffect, useState } from 'react';
2
+ import { Keyboard } from 'react-native';
3
+ export const useKeyboardHeight = () => {
4
+ const [keyboardHeight, setKeyboardHeight] = useState(0);
5
+ useEffect(() => {
6
+ function onKeyboardDidShow(e) {
7
+ // Remove type here if not using TypeScript
8
+ setKeyboardHeight(e.endCoordinates.height);
9
+ }
10
+ function onKeyboardDidHide() {
11
+ setKeyboardHeight(0);
12
+ }
13
+ const showSubscription = Keyboard.addListener('keyboardDidShow', onKeyboardDidShow);
14
+ const hideSubscription = Keyboard.addListener('keyboardDidHide', onKeyboardDidHide);
15
+ return () => {
16
+ showSubscription.remove();
17
+ hideSubscription.remove();
18
+ };
19
+ }, []);
20
+ return keyboardHeight;
21
+ };
22
+ //# sourceMappingURL=useKeyboardHeight.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useEffect","useState","Keyboard","useKeyboardHeight","keyboardHeight","setKeyboardHeight","onKeyboardDidShow","e","endCoordinates","height","onKeyboardDidHide","showSubscription","addListener","hideSubscription","remove"],"sourceRoot":"../../../src","sources":["hooks/useKeyboardHeight.ts"],"mappings":"AAAA,SAASA,SAAS,EAAEC,QAAQ,QAAQ,OAAO;AAC3C,SAASC,QAAQ,QAAuB,cAAc;AAEtD,OAAO,MAAMC,iBAAiB,GAAGA,CAAA,KAAM;EACrC,MAAM,CAACC,cAAc,EAAEC,iBAAiB,CAAC,GAAGJ,QAAQ,CAAC,CAAC,CAAC;EAEvDD,SAAS,CAAC,MAAM;IACd,SAASM,iBAAiBA,CAACC,CAAgB,EAAE;MAC3C;MACAF,iBAAiB,CAACE,CAAC,CAACC,cAAc,CAACC,MAAM,CAAC;IAC5C;IAEA,SAASC,iBAAiBA,CAAA,EAAG;MAC3BL,iBAAiB,CAAC,CAAC,CAAC;IACtB;IAEA,MAAMM,gBAAgB,GAAGT,QAAQ,CAACU,WAAW,CAC3C,iBAAiB,EACjBN,iBACF,CAAC;IACD,MAAMO,gBAAgB,GAAGX,QAAQ,CAACU,WAAW,CAC3C,iBAAiB,EACjBF,iBACF,CAAC;IACD,OAAO,MAAM;MACXC,gBAAgB,CAACG,MAAM,CAAC,CAAC;MACzBD,gBAAgB,CAACC,MAAM,CAAC,CAAC;IAC3B,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,OAAOV,cAAc;AACvB,CAAC","ignoreList":[]}
@@ -1,3 +1,4 @@
1
1
  export * from './components';
2
2
  export * from './themes';
3
+ export * from './hooks';
3
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA,cAAc,cAAc;AAC5B,cAAc,UAAU","ignoreList":[]}
1
+ {"version":3,"names":[],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA,cAAc,cAAc;AAC5B,cAAc,UAAU;AACxB,cAAc,SAAS","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"BottomSheet.component.d.ts","sourceRoot":"","sources":["../../../../src/components/BottomSheet/BottomSheet.component.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAa/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,aAAK,oBAAoB,GAAG;IAC1B,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB,CAAC;AAEF,oBAAY,kBAAkB,GAAG,KAAK,CAAC,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC;AAItE,QAAA,MAAM,WAAW,+FA8LhB,CAAC;AAEF,OAAO,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"BottomSheet.component.d.ts","sourceRoot":"","sources":["../../../../src/components/BottomSheet/BottomSheet.component.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAc/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,aAAK,oBAAoB,GAAG;IAC1B,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB,CAAC;AAEF,oBAAY,kBAAkB,GAAG,KAAK,CAAC,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC;AAItE,QAAA,MAAM,WAAW,+FAgMhB,CAAC;AAEF,OAAO,EAAE,WAAW,EAAE,CAAC"}
@@ -21,6 +21,6 @@ export interface SearchInputProps extends TextInputProps {
21
21
  /**
22
22
  * Callback function that is triggered when the trailing icon is pressed.
23
23
  */
24
- onTraillingIconPress: () => void;
24
+ onTraillingIconPress?: () => void;
25
25
  }
26
26
  //# sourceMappingURL=search-input.type.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"search-input.type.d.ts","sourceRoot":"","sources":["../../../../src/components/search-input/search-input.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,cAAc,EACf,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,gBAAiB,SAAQ,cAAc;IACtD;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,oBAAoB,CAAC,uBAAuB,CAAC,KAAK,IAAI,CAAC;IACrE;;OAEG;IACH,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,oBAAoB,CAAC,uBAAuB,CAAC,KAAK,IAAI,CAAC;IACpE;;OAEG;IACH,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB;;OAEG;IACH,oBAAoB,EAAE,MAAM,IAAI,CAAC;CAClC"}
1
+ {"version":3,"file":"search-input.type.d.ts","sourceRoot":"","sources":["../../../../src/components/search-input/search-input.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,cAAc,EACf,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,gBAAiB,SAAQ,cAAc;IACtD;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,oBAAoB,CAAC,uBAAuB,CAAC,KAAK,IAAI,CAAC;IACrE;;OAEG;IACH,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,oBAAoB,CAAC,uBAAuB,CAAC,KAAK,IAAI,CAAC;IACpE;;OAEG;IACH,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB;;OAEG;IACH,oBAAoB,CAAC,EAAE,MAAM,IAAI,CAAC;CACnC"}
@@ -1 +1 @@
1
- {"version":3,"file":"selection-modal.component.d.ts","sourceRoot":"","sources":["../../../../src/components/selection-modal/selection-modal.component.tsx"],"names":[],"mappings":";AAGA,OAAO,EAEL,mBAAmB,EAEpB,MAAM,wBAAwB,CAAC;AAWhC,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,sBAgIxD"}
1
+ {"version":3,"file":"selection-modal.component.d.ts","sourceRoot":"","sources":["../../../../src/components/selection-modal/selection-modal.component.tsx"],"names":[],"mappings":";AAQA,OAAO,EAEL,mBAAmB,EAEpB,MAAM,wBAAwB,CAAC;AAahC,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,sBAwJxD"}
@@ -2,6 +2,7 @@ import { ViewStyle } from 'react-native';
2
2
  interface ComputedStyleProps {
3
3
  flatListContentContainer?: ViewStyle;
4
4
  bottomActionContainer?: ViewStyle;
5
+ searchContainer?: ViewStyle;
5
6
  }
6
7
  export declare const getStyle: () => ComputedStyleProps;
7
8
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"selection-modal.style.d.ts","sourceRoot":"","sources":["../../../../src/components/selection-modal/selection-modal.style.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,SAAS,EAAE,MAAM,cAAc,CAAC;AAIrD,UAAU,kBAAkB;IAC1B,wBAAwB,CAAC,EAAE,SAAS,CAAC;IACrC,qBAAqB,CAAC,EAAE,SAAS,CAAC;CACnC;AAED,eAAO,MAAM,QAAQ,0BAYpB,CAAC"}
1
+ {"version":3,"file":"selection-modal.style.d.ts","sourceRoot":"","sources":["../../../../src/components/selection-modal/selection-modal.style.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,SAAS,EAAE,MAAM,cAAc,CAAC;AAIrD,UAAU,kBAAkB;IAC1B,wBAAwB,CAAC,EAAE,SAAS,CAAC;IACrC,qBAAqB,CAAC,EAAE,SAAS,CAAC;IAClC,eAAe,CAAC,EAAE,SAAS,CAAC;CAC7B;AAED,eAAO,MAAM,QAAQ,0BAkBpB,CAAC"}
@@ -1,20 +1,24 @@
1
1
  import { ReactNode } from 'react';
2
- import { FlatListProps, ViewStyle } from 'react-native';
2
+ import { FlatListProps, ListRenderItemInfo, ViewStyle } from 'react-native';
3
3
  import { ActionListProps } from '../ActionList/ActionList.type';
4
4
  import { BottomSheetProps } from '../BottomSheet/BottomSheet.type';
5
5
  import { ButtonProps } from '../button/button.type';
6
+ import { SearchInputProps } from '../search-input/search-input.type';
6
7
  export declare type SelectionModalValue = FlatListProps<SelectionItemData>['data'];
7
8
  export declare type SelectionModalProps = {
8
9
  type: 'checkbox' | 'radio';
9
10
  value: SelectionModalValue;
10
11
  renderDisplayComponent: (openModal: () => void) => ReactNode;
11
- listOptions: Omit<FlatListProps<SelectionItemData>, 'renderItem'> & Partial<Pick<FlatListProps<SelectionItemData>, 'renderItem'>>;
12
+ listOptions: Omit<FlatListProps<SelectionItemData>, 'renderItem'>;
13
+ customRenderItem?: (info: ListRenderItemInfo<SelectionItemData>, selected: boolean, onPress: (data: SelectionItemData) => void) => ReactNode;
12
14
  maxSelectedItem?: number;
13
15
  bottomSheetOpt: Omit<BottomSheetProps, 'visibility' | 'onDismiss'>;
14
16
  saveButtonProps?: ButtonProps;
15
17
  bottomActionContainerStyle?: ViewStyle;
16
18
  onSaveButtonPress: (data: SelectionModalValue) => void;
17
19
  renderCutomBottomAction?: (handleOnSaveButtonPress: (data: SelectionModalValue) => void, closeModal?: () => void) => ReactNode;
20
+ withSearch?: boolean;
21
+ searchComponentProps?: SearchInputProps;
18
22
  };
19
23
  export declare type SelectionItemData = {
20
24
  value: string;
@@ -1 +1 @@
1
- {"version":3,"file":"selection-modal.type.d.ts","sourceRoot":"","sources":["../../../../src/components/selection-modal/selection-modal.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAExD,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,oBAAY,mBAAmB,GAAG,aAAa,CAAC,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAC3E,oBAAY,mBAAmB,GAAG;IAChC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC;IAE3B,KAAK,EAAE,mBAAmB,CAAC;IAC3B,sBAAsB,EAAE,CAAC,SAAS,EAAE,MAAM,IAAI,KAAK,SAAS,CAAC;IAE7D,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,EAAE,YAAY,CAAC,GAC/D,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC;IAEhE,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,cAAc,EAAE,IAAI,CAAC,gBAAgB,EAAE,YAAY,GAAG,WAAW,CAAC,CAAC;IAEnE,eAAe,CAAC,EAAE,WAAW,CAAC;IAE9B,0BAA0B,CAAC,EAAE,SAAS,CAAC;IAEvC,iBAAiB,EAAE,CAAC,IAAI,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAEvD,uBAAuB,CAAC,EAAE,CACxB,uBAAuB,EAAE,CAAC,IAAI,EAAE,mBAAmB,KAAK,IAAI,EAC5D,UAAU,CAAC,EAAE,MAAM,IAAI,KACpB,SAAS,CAAC;CAChB,CAAC;AAEF,oBAAY,iBAAiB,GAAG;IAC9B,KAAK,EAAE,MAAM,CAAC;CACf,GAAG,eAAe,CAAC"}
1
+ {"version":3,"file":"selection-modal.type.d.ts","sourceRoot":"","sources":["../../../../src/components/selection-modal/selection-modal.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE5E,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAErE,oBAAY,mBAAmB,GAAG,aAAa,CAAC,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAC3E,oBAAY,mBAAmB,GAAG;IAChC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC;IAE3B,KAAK,EAAE,mBAAmB,CAAC;IAC3B,sBAAsB,EAAE,CAAC,SAAS,EAAE,MAAM,IAAI,KAAK,SAAS,CAAC;IAE7D,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,EAAE,YAAY,CAAC,CAAC;IAClE,gBAAgB,CAAC,EAAE,CACjB,IAAI,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,EAC3C,QAAQ,EAAE,OAAO,EACjB,OAAO,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,KACvC,SAAS,CAAC;IAEf,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,cAAc,EAAE,IAAI,CAAC,gBAAgB,EAAE,YAAY,GAAG,WAAW,CAAC,CAAC;IAEnE,eAAe,CAAC,EAAE,WAAW,CAAC;IAE9B,0BAA0B,CAAC,EAAE,SAAS,CAAC;IAEvC,iBAAiB,EAAE,CAAC,IAAI,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAEvD,uBAAuB,CAAC,EAAE,CACxB,uBAAuB,EAAE,CAAC,IAAI,EAAE,mBAAmB,KAAK,IAAI,EAC5D,UAAU,CAAC,EAAE,MAAM,IAAI,KACpB,SAAS,CAAC;IAEf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,oBAAoB,CAAC,EAAE,gBAAgB,CAAC;CACzC,CAAC;AAEF,oBAAY,iBAAiB,GAAG;IAC9B,KAAK,EAAE,MAAM,CAAC;CACf,GAAG,eAAe,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './useDebounce';
2
+ export * from './useKeyboardHeight';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const useDebouncedValue: (value?: string, delay?: number) => string;
2
+ //# sourceMappingURL=useDebounce.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDebounce.d.ts","sourceRoot":"","sources":["../../../src/hooks/useDebounce.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,iBAAiB,sCAA8B,MAY3D,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const useKeyboardHeight: () => number;
2
+ //# sourceMappingURL=useKeyboardHeight.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useKeyboardHeight.d.ts","sourceRoot":"","sources":["../../../src/hooks/useKeyboardHeight.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,iBAAiB,cA4B7B,CAAC"}
@@ -1,3 +1,4 @@
1
1
  export * from './components';
2
2
  export * from './themes';
3
+ export * from './hooks';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adiraku/react-native-ui",
3
- "version": "1.2.10-canary-2",
3
+ "version": "1.2.10-canary-4",
4
4
  "description": "UI library for Adiraku apps",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -10,6 +10,7 @@ import Modal from 'react-native-modal';
10
10
 
11
11
  import { getStyle } from './BottomSheet.style';
12
12
  import { Typography } from '../typography/typography.component';
13
+ import { useKeyboardHeight } from '../../hooks';
13
14
 
14
15
  import type { BottomSheetProps } from './BottomSheet.type';
15
16
 
@@ -46,6 +47,8 @@ const BottomSheet = React.forwardRef<BottomSheetRefHandle, BottomSheetProps>(
46
47
 
47
48
  const computedStyle = getStyle();
48
49
 
50
+ const keyboardHeight = useKeyboardHeight();
51
+
49
52
  const [visibility, setVisibility] = React.useState(false);
50
53
  const panY = React.useRef(new Animated.Value(deviceWindow.height)).current;
51
54
 
@@ -195,7 +198,7 @@ const BottomSheet = React.forwardRef<BottomSheetRefHandle, BottomSheetProps>(
195
198
  style={[
196
199
  computedStyle.container,
197
200
  {
198
- maxHeight: deviceWindow.height * maxSheetHeight,
201
+ maxHeight: deviceWindow.height * maxSheetHeight - keyboardHeight,
199
202
  transform: [{ translateY: translateY }],
200
203
  },
201
204
  ]}
@@ -26,5 +26,5 @@ export interface SearchInputProps extends TextInputProps {
26
26
  /**
27
27
  * Callback function that is triggered when the trailing icon is pressed.
28
28
  */
29
- onTraillingIconPress: () => void;
29
+ onTraillingIconPress?: () => void;
30
30
  }
@@ -1,5 +1,10 @@
1
- import React, { ElementRef, useRef, useState } from 'react';
2
- import { FlatList, FlatListProps, View } from 'react-native';
1
+ import React, { ElementRef, useMemo, useRef, useState } from 'react';
2
+ import {
3
+ FlatList,
4
+ ListRenderItem,
5
+ ListRenderItemInfo,
6
+ View,
7
+ } from 'react-native';
3
8
 
4
9
  import {
5
10
  SelectionItemData,
@@ -13,46 +18,46 @@ import { BottomSheet } from '../BottomSheet/BottomSheet.component';
13
18
  import { Button } from '../button/button.component';
14
19
  import { Checkbox } from '../Checkbox/Checkbox.component';
15
20
  import { RadioButton } from '../RadioButton/RadioButton.component';
21
+ import { SearchInput } from '../search-input/search-input.component';
16
22
  import { IconArrowLeft } from '../../icons';
23
+ import { useDebouncedValue } from '../../hooks';
17
24
 
18
25
  type BottomSheetHandler = ElementRef<typeof BottomSheet>;
19
26
  export function SelectionModal(props: SelectionModalProps) {
20
27
  const {
21
28
  type = 'radio',
22
- renderDisplayComponent,
29
+ value = [],
23
30
  listOptions,
24
31
  maxSelectedItem = -1,
25
32
  bottomSheetOpt,
26
33
  saveButtonProps,
27
34
  bottomActionContainerStyle,
35
+ withSearch = false,
36
+ searchComponentProps,
28
37
  onSaveButtonPress = () => {},
38
+ renderDisplayComponent,
29
39
  renderCutomBottomAction,
30
- value = [],
40
+ customRenderItem,
31
41
  } = props;
32
42
 
33
- const { renderItem, ...listOptionsRest } = listOptions;
34
-
35
43
  const ref = useRef<BottomSheetHandler>(null);
36
44
 
37
45
  const computedStyles = getStyle();
38
46
 
39
47
  const [selectedTemp, setSelectedTemp] = useState<SelectionModalValue>(value);
48
+ const [searchValue, setSearchValue] = useState('');
49
+ const searchValueDebounce = useDebouncedValue(searchValue);
40
50
 
41
- if (!renderDisplayComponent) {
42
- console.warn(
43
- 'Please provide renderDisplayComponent props (SelectionModal - adiraku)'
44
- );
45
- return null;
46
- }
47
-
48
- const renderActionList: FlatListProps<SelectionItemData>['renderItem'] = ({
49
- item,
50
- index,
51
- }) => {
51
+ const { data, ...listOptionsRest } = listOptions;
52
+ const renderActionList = (info: ListRenderItemInfo<SelectionItemData>) => {
53
+ const { item, index } = info;
52
54
  const { value: valueItem, title, disabled, ...itemRest } = item;
53
55
 
54
56
  const isSelected = !!selectedTemp?.find((i) => i.value === valueItem);
55
57
 
58
+ if (customRenderItem)
59
+ return customRenderItem(info, isSelected, handleOnItemPress);
60
+
56
61
  return (
57
62
  <ActionList
58
63
  title={title}
@@ -71,6 +76,14 @@ export function SelectionModal(props: SelectionModalProps) {
71
76
  );
72
77
  };
73
78
 
79
+ const filterDataDebounced = useMemo(() => {
80
+ if (searchValueDebounce === '') {
81
+ return data;
82
+ } else {
83
+ return data?.filter((item) => item.title?.includes(searchValueDebounce));
84
+ }
85
+ }, [data, searchValueDebounce]);
86
+
74
87
  const handleOnItemPress = (item: SelectionItemData) => {
75
88
  if (type === 'radio') {
76
89
  setSelectedTemp([item]);
@@ -106,17 +119,35 @@ export function SelectionModal(props: SelectionModalProps) {
106
119
  ref.current?.close();
107
120
  };
108
121
 
122
+ if (!renderDisplayComponent) {
123
+ console.warn(
124
+ 'Please provide renderDisplayComponent props (SelectionModal - adiraku)'
125
+ );
126
+ return null;
127
+ }
128
+
109
129
  return (
110
130
  <>
111
131
  {renderDisplayComponent?.(handleShowSheet)}
112
132
 
113
133
  <BottomSheet
114
134
  ref={ref}
115
- dismissIcon={bottomSheetOpt?.dismissIcon ?? <IconArrowLeft />}
135
+ dismissIcon={<IconArrowLeft />}
116
136
  {...bottomSheetOpt}
117
137
  >
138
+ {withSearch && (
139
+ <View style={computedStyles.searchContainer}>
140
+ <SearchInput
141
+ value={searchValue}
142
+ onChangeText={setSearchValue}
143
+ onTraillingIconPress={() => setSearchValue('')}
144
+ {...searchComponentProps}
145
+ />
146
+ </View>
147
+ )}
118
148
  <FlatList
119
- renderItem={renderItem || renderActionList}
149
+ data={filterDataDebounced}
150
+ renderItem={renderActionList as ListRenderItem<SelectionItemData>}
120
151
  style={[
121
152
  computedStyles.flatListContentContainer,
122
153
  listOptions.contentContainerStyle,
@@ -1,10 +1,11 @@
1
1
  import { StyleSheet, ViewStyle } from 'react-native';
2
2
 
3
- import { Spacing } from '../../themes';
3
+ import { Palettes, Spacing } from '../../themes';
4
4
 
5
5
  interface ComputedStyleProps {
6
6
  flatListContentContainer?: ViewStyle;
7
7
  bottomActionContainer?: ViewStyle;
8
+ searchContainer?: ViewStyle;
8
9
  }
9
10
 
10
11
  export const getStyle = () => {
@@ -18,5 +19,11 @@ export const getStyle = () => {
18
19
  backgroundColor: 'transparent',
19
20
  };
20
21
 
22
+ computedStyle.searchContainer = {
23
+ padding: Spacing[16],
24
+ paddingTop: Spacing[8],
25
+ backgroundColor: Palettes.white[50],
26
+ };
27
+
21
28
  return StyleSheet.create(computedStyle);
22
29
  };
@@ -1,9 +1,10 @@
1
1
  import { ReactNode } from 'react';
2
- import { FlatListProps, ViewStyle } from 'react-native';
2
+ import { FlatListProps, ListRenderItemInfo, ViewStyle } from 'react-native';
3
3
 
4
4
  import { ActionListProps } from '../ActionList/ActionList.type';
5
5
  import { BottomSheetProps } from '../BottomSheet/BottomSheet.type';
6
6
  import { ButtonProps } from '../button/button.type';
7
+ import { SearchInputProps } from '../search-input/search-input.type';
7
8
 
8
9
  export type SelectionModalValue = FlatListProps<SelectionItemData>['data'];
9
10
  export type SelectionModalProps = {
@@ -12,8 +13,12 @@ export type SelectionModalProps = {
12
13
  value: SelectionModalValue;
13
14
  renderDisplayComponent: (openModal: () => void) => ReactNode;
14
15
 
15
- listOptions: Omit<FlatListProps<SelectionItemData>, 'renderItem'> &
16
- Partial<Pick<FlatListProps<SelectionItemData>, 'renderItem'>>;
16
+ listOptions: Omit<FlatListProps<SelectionItemData>, 'renderItem'>;
17
+ customRenderItem?: (
18
+ info: ListRenderItemInfo<SelectionItemData>,
19
+ selected: boolean,
20
+ onPress: (data: SelectionItemData) => void
21
+ ) => ReactNode;
17
22
 
18
23
  maxSelectedItem?: number;
19
24
 
@@ -29,6 +34,9 @@ export type SelectionModalProps = {
29
34
  handleOnSaveButtonPress: (data: SelectionModalValue) => void,
30
35
  closeModal?: () => void
31
36
  ) => ReactNode;
37
+
38
+ withSearch?: boolean;
39
+ searchComponentProps?: SearchInputProps;
32
40
  };
33
41
 
34
42
  export type SelectionItemData = {
@@ -0,0 +1,2 @@
1
+ export * from './useDebounce';
2
+ export * from './useKeyboardHeight';
@@ -0,0 +1,15 @@
1
+ import { useEffect, useState } from 'react';
2
+
3
+ export const useDebouncedValue = (value = '', delay = 300): string => {
4
+ const [debouncedValue, setDebouncedValue] = useState(value);
5
+
6
+ useEffect(() => {
7
+ const timer = setTimeout(() => {
8
+ setDebouncedValue(value);
9
+ }, delay);
10
+
11
+ return () => clearTimeout(timer);
12
+ }, [value, delay]);
13
+
14
+ return debouncedValue;
15
+ };
@@ -0,0 +1,32 @@
1
+ import { useEffect, useState } from 'react';
2
+ import { Keyboard, KeyboardEvent } from 'react-native';
3
+
4
+ export const useKeyboardHeight = () => {
5
+ const [keyboardHeight, setKeyboardHeight] = useState(0);
6
+
7
+ useEffect(() => {
8
+ function onKeyboardDidShow(e: KeyboardEvent) {
9
+ // Remove type here if not using TypeScript
10
+ setKeyboardHeight(e.endCoordinates.height);
11
+ }
12
+
13
+ function onKeyboardDidHide() {
14
+ setKeyboardHeight(0);
15
+ }
16
+
17
+ const showSubscription = Keyboard.addListener(
18
+ 'keyboardDidShow',
19
+ onKeyboardDidShow
20
+ );
21
+ const hideSubscription = Keyboard.addListener(
22
+ 'keyboardDidHide',
23
+ onKeyboardDidHide
24
+ );
25
+ return () => {
26
+ showSubscription.remove();
27
+ hideSubscription.remove();
28
+ };
29
+ }, []);
30
+
31
+ return keyboardHeight;
32
+ };
package/src/index.tsx CHANGED
@@ -1,2 +1,3 @@
1
1
  export * from './components';
2
2
  export * from './themes';
3
+ export * from './hooks';