@shaquillehinds/react-native-dropdown-selector 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +20 -0
- package/README.md +526 -0
- package/lib/commonjs/DropDownSelector/DropDownSelector.controller.js +129 -0
- package/lib/commonjs/DropDownSelector/DropDownSelector.controller.js.map +1 -0
- package/lib/commonjs/DropDownSelector/DropDownSelector.js +136 -0
- package/lib/commonjs/DropDownSelector/DropDownSelector.js.map +1 -0
- package/lib/commonjs/DropDownSelector/DropDownSelector.types.js +6 -0
- package/lib/commonjs/DropDownSelector/DropDownSelector.types.js.map +1 -0
- package/lib/commonjs/DropDownSelector/index.js +28 -0
- package/lib/commonjs/DropDownSelector/index.js.map +1 -0
- package/lib/commonjs/DropDownSelector/svgs/ChevronUp.js +26 -0
- package/lib/commonjs/DropDownSelector/svgs/ChevronUp.js.map +1 -0
- package/lib/commonjs/index.js +21 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/package.json +1 -0
- package/lib/module/DropDownSelector/DropDownSelector.controller.js +125 -0
- package/lib/module/DropDownSelector/DropDownSelector.controller.js.map +1 -0
- package/lib/module/DropDownSelector/DropDownSelector.js +132 -0
- package/lib/module/DropDownSelector/DropDownSelector.js.map +1 -0
- package/lib/module/DropDownSelector/DropDownSelector.types.js +4 -0
- package/lib/module/DropDownSelector/DropDownSelector.types.js.map +1 -0
- package/lib/module/DropDownSelector/index.js +5 -0
- package/lib/module/DropDownSelector/index.js.map +1 -0
- package/lib/module/DropDownSelector/svgs/ChevronUp.js +21 -0
- package/lib/module/DropDownSelector/svgs/ChevronUp.js.map +1 -0
- package/lib/module/index.js +6 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/package.json +1 -0
- package/lib/typescript/commonjs/package.json +1 -0
- package/lib/typescript/commonjs/src/DropDownSelector/DropDownSelector.controller.d.ts +28 -0
- package/lib/typescript/commonjs/src/DropDownSelector/DropDownSelector.controller.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/DropDownSelector/DropDownSelector.d.ts +3 -0
- package/lib/typescript/commonjs/src/DropDownSelector/DropDownSelector.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/DropDownSelector/DropDownSelector.types.d.ts +45 -0
- package/lib/typescript/commonjs/src/DropDownSelector/DropDownSelector.types.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/DropDownSelector/index.d.ts +3 -0
- package/lib/typescript/commonjs/src/DropDownSelector/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/DropDownSelector/svgs/ChevronUp.d.ts +5 -0
- package/lib/typescript/commonjs/src/DropDownSelector/svgs/ChevronUp.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/index.d.ts +4 -0
- package/lib/typescript/commonjs/src/index.d.ts.map +1 -0
- package/lib/typescript/module/package.json +1 -0
- package/lib/typescript/module/src/DropDownSelector/DropDownSelector.controller.d.ts +28 -0
- package/lib/typescript/module/src/DropDownSelector/DropDownSelector.controller.d.ts.map +1 -0
- package/lib/typescript/module/src/DropDownSelector/DropDownSelector.d.ts +3 -0
- package/lib/typescript/module/src/DropDownSelector/DropDownSelector.d.ts.map +1 -0
- package/lib/typescript/module/src/DropDownSelector/DropDownSelector.types.d.ts +45 -0
- package/lib/typescript/module/src/DropDownSelector/DropDownSelector.types.d.ts.map +1 -0
- package/lib/typescript/module/src/DropDownSelector/index.d.ts +3 -0
- package/lib/typescript/module/src/DropDownSelector/index.d.ts.map +1 -0
- package/lib/typescript/module/src/DropDownSelector/svgs/ChevronUp.d.ts +5 -0
- package/lib/typescript/module/src/DropDownSelector/svgs/ChevronUp.d.ts.map +1 -0
- package/lib/typescript/module/src/index.d.ts +4 -0
- package/lib/typescript/module/src/index.d.ts.map +1 -0
- package/package.json +203 -0
- package/src/DropDownSelector/DropDownSelector.controller.tsx +174 -0
- package/src/DropDownSelector/DropDownSelector.tsx +183 -0
- package/src/DropDownSelector/DropDownSelector.types.ts +44 -0
- package/src/DropDownSelector/index.ts +2 -0
- package/src/DropDownSelector/svgs/ChevronUp.tsx +18 -0
- package/src/index.tsx +4 -0
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.DropDownSelector = DropDownSelector;
|
|
7
|
+
var _reactNativeEssentials = require("@shaquillehinds/react-native-essentials");
|
|
8
|
+
var _ChevronUp = require("./svgs/ChevronUp.js");
|
|
9
|
+
var _reactNative = require("react-native");
|
|
10
|
+
var _reactNativeGestureHandler = require("react-native-gesture-handler");
|
|
11
|
+
var _DropDownSelectorController = require("./DropDownSelector.controller.js");
|
|
12
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
13
|
+
function DropDownSelector(props) {
|
|
14
|
+
const controller = (0, _DropDownSelectorController.DropDownSelectorController)(props);
|
|
15
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNativeEssentials.Layout, {
|
|
16
|
+
...props.containerProps,
|
|
17
|
+
style: [{
|
|
18
|
+
zIndex: _reactNativeEssentials.maxZIndex
|
|
19
|
+
}, props.containerProps?.style],
|
|
20
|
+
onLayout: controller.handleLayout,
|
|
21
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeEssentials.ComponentMounter, {
|
|
22
|
+
showComponent: controller.showItems,
|
|
23
|
+
setShowComponent: controller.setShowItems,
|
|
24
|
+
unMountDelayInMilliSeconds: controller.unMountDelayInMilliSeconds,
|
|
25
|
+
onComponentShow: props.onOpen,
|
|
26
|
+
onComponentClose: props.onClose,
|
|
27
|
+
component: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeEssentials.ModalWrapper, {
|
|
28
|
+
enableBackgroundContentPress: true,
|
|
29
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeEssentials.ModalForegroundWrapper, {
|
|
30
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
31
|
+
style: !props.disableShadow ? {
|
|
32
|
+
...(0, _reactNativeEssentials.shadowStyles)({
|
|
33
|
+
shadowOpacity: 0.15
|
|
34
|
+
})
|
|
35
|
+
} : undefined,
|
|
36
|
+
children: [!props.disableShadow && _reactNativeEssentials.isAndroid && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeEssentials.AnimateComponent, {
|
|
37
|
+
ref: controller.animateAndroidShadowRef,
|
|
38
|
+
initialPosition: 0,
|
|
39
|
+
style: controller.androidShadowAnimatedStyle,
|
|
40
|
+
autoStart: true,
|
|
41
|
+
toPosition: controller.androidShadowAnimationConfig
|
|
42
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeGestureHandler.ScrollView, {
|
|
43
|
+
ref: controller.scrollViewRef,
|
|
44
|
+
nestedScrollEnabled: true,
|
|
45
|
+
showsVerticalScrollIndicator: false,
|
|
46
|
+
overScrollMode: "never",
|
|
47
|
+
...props.dropdownScrollViewProps,
|
|
48
|
+
style: [controller.scrollViewStyle, props.dropdownScrollViewProps?.style],
|
|
49
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeEssentials.AnimateComponent, {
|
|
50
|
+
ref: controller.animateComponentRef,
|
|
51
|
+
style: controller.selectionItemsListAnimatedStyle,
|
|
52
|
+
initialPosition: controller.canRenderDown ? -controller.relativeY(110) : controller.relativeY(110),
|
|
53
|
+
autoStart: true,
|
|
54
|
+
toPosition: props.expandAnimationConfig ? {
|
|
55
|
+
...props.expandAnimationConfig,
|
|
56
|
+
toValue: 0
|
|
57
|
+
} : controller.selectionItemsListAnimationConfig,
|
|
58
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeEssentials.Layout, {
|
|
59
|
+
borderRadius: "soft",
|
|
60
|
+
backgroundColor: '#FAFAFA',
|
|
61
|
+
padding: controller.canRenderDown ? [5, 0, 0, 0] : [0, 0, 5, 0],
|
|
62
|
+
...props.dropdownContentContainerProps,
|
|
63
|
+
children: props.items.map(item => props.DropdownItemComponent ? /*#__PURE__*/(0, _jsxRuntime.jsx)(props.DropdownItemComponent, {
|
|
64
|
+
item: item,
|
|
65
|
+
isSelected: item.value === props.selectedItem
|
|
66
|
+
}, item.label) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNativeEssentials.TouchableLayout, {
|
|
67
|
+
flexDirection: "row",
|
|
68
|
+
center: true,
|
|
69
|
+
spaceBetween: true,
|
|
70
|
+
padding: [1, 5],
|
|
71
|
+
...props.dropdownItemProps,
|
|
72
|
+
onPress: () => {
|
|
73
|
+
props.onSelect(item.value);
|
|
74
|
+
controller.setShowItems(false);
|
|
75
|
+
props.onDropdownItemPress?.(item);
|
|
76
|
+
},
|
|
77
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeEssentials.Layout, {
|
|
78
|
+
width: '85%',
|
|
79
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeEssentials.BaseText, {
|
|
80
|
+
numberOfLines: 1,
|
|
81
|
+
...props.dropdownItemTextProps,
|
|
82
|
+
children: item.label
|
|
83
|
+
})
|
|
84
|
+
}), item.value === props.selectedItem ? props.DropdownItemSelectedIcon ? /*#__PURE__*/(0, _jsxRuntime.jsx)(props.DropdownItemSelectedIcon, {
|
|
85
|
+
item: item
|
|
86
|
+
}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeEssentials.RadioIcon, {
|
|
87
|
+
isSelected: true
|
|
88
|
+
}) : null]
|
|
89
|
+
}, item.label))
|
|
90
|
+
})
|
|
91
|
+
})
|
|
92
|
+
})]
|
|
93
|
+
})
|
|
94
|
+
})
|
|
95
|
+
})
|
|
96
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNativeEssentials.RNPressableLayout, {
|
|
97
|
+
disabled: props.isDisabled,
|
|
98
|
+
activeOpacity: 1,
|
|
99
|
+
flexDirection: "row",
|
|
100
|
+
backgroundColor: 'white',
|
|
101
|
+
borderRadius: "medium",
|
|
102
|
+
padding: [1, 5],
|
|
103
|
+
spaceBetween: true,
|
|
104
|
+
center: true,
|
|
105
|
+
...props.dropdownButtonProps,
|
|
106
|
+
style: [{
|
|
107
|
+
zIndex: _reactNativeEssentials.maxZIndex + 3,
|
|
108
|
+
...(0, _reactNativeEssentials.shadowStyles)({
|
|
109
|
+
shadowOpacity: 0.1
|
|
110
|
+
})
|
|
111
|
+
}, props.dropdownButtonProps?.style],
|
|
112
|
+
onPress: e => {
|
|
113
|
+
controller.pageYRef.current = e.nativeEvent.pageY;
|
|
114
|
+
controller.setShowItems(prev => !prev);
|
|
115
|
+
props.dropdownButtonProps?.onPress?.(e);
|
|
116
|
+
},
|
|
117
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeEssentials.BaseText, {
|
|
118
|
+
numberOfLines: 1,
|
|
119
|
+
...props.dropdownButtonTextProps,
|
|
120
|
+
children: controller.label || props.placeholder || 'Select an item'
|
|
121
|
+
}), props.DropdownButtonIcon ? /*#__PURE__*/(0, _jsxRuntime.jsx)(props.DropdownButtonIcon, {
|
|
122
|
+
isOpen: controller.showItems,
|
|
123
|
+
expandDirection: props.expandDirection || controller.canRenderDown ? 'down' : 'up'
|
|
124
|
+
}) : controller.canRenderDown === null ? undefined : /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeEssentials.AnimateComponent, {
|
|
125
|
+
ref: controller.animateChevronRef,
|
|
126
|
+
style: controller.chevronAnimatedStyle,
|
|
127
|
+
initialPosition: controller.canRenderDown ? -1 : 1,
|
|
128
|
+
toPosition: controller.chevronAnimationConfig,
|
|
129
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_ChevronUp.ChevronUp, {
|
|
130
|
+
color: 'black'
|
|
131
|
+
})
|
|
132
|
+
})]
|
|
133
|
+
})]
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
//# sourceMappingURL=DropDownSelector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNativeEssentials","require","_ChevronUp","_reactNative","_reactNativeGestureHandler","_DropDownSelectorController","_jsxRuntime","DropDownSelector","props","controller","DropDownSelectorController","jsxs","Layout","containerProps","style","zIndex","maxZIndex","onLayout","handleLayout","children","jsx","ComponentMounter","showComponent","showItems","setShowComponent","setShowItems","unMountDelayInMilliSeconds","onComponentShow","onOpen","onComponentClose","onClose","component","ModalWrapper","enableBackgroundContentPress","ModalForegroundWrapper","View","disableShadow","shadowStyles","shadowOpacity","undefined","isAndroid","AnimateComponent","ref","animateAndroidShadowRef","initialPosition","androidShadowAnimatedStyle","autoStart","toPosition","androidShadowAnimationConfig","ScrollView","scrollViewRef","nestedScrollEnabled","showsVerticalScrollIndicator","overScrollMode","dropdownScrollViewProps","scrollViewStyle","animateComponentRef","selectionItemsListAnimatedStyle","canRenderDown","relativeY","expandAnimationConfig","toValue","selectionItemsListAnimationConfig","borderRadius","backgroundColor","padding","dropdownContentContainerProps","items","map","item","DropdownItemComponent","isSelected","value","selectedItem","label","TouchableLayout","flexDirection","center","spaceBetween","dropdownItemProps","onPress","onSelect","onDropdownItemPress","width","BaseText","numberOfLines","dropdownItemTextProps","DropdownItemSelectedIcon","RadioIcon","RNPressableLayout","disabled","isDisabled","activeOpacity","dropdownButtonProps","e","pageYRef","current","nativeEvent","pageY","prev","dropdownButtonTextProps","placeholder","DropdownButtonIcon","isOpen","expandDirection","animateChevronRef","chevronAnimatedStyle","chevronAnimationConfig","ChevronUp","color"],"sourceRoot":"../../../src","sources":["DropDownSelector/DropDownSelector.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["DropDownSelector/DropDownSelector.types.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
var _DropDownSelector = require("./DropDownSelector.js");
|
|
7
|
+
Object.keys(_DropDownSelector).forEach(function (key) {
|
|
8
|
+
if (key === "default" || key === "__esModule") return;
|
|
9
|
+
if (key in exports && exports[key] === _DropDownSelector[key]) return;
|
|
10
|
+
Object.defineProperty(exports, key, {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: function () {
|
|
13
|
+
return _DropDownSelector[key];
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
});
|
|
17
|
+
var _DropDownSelectorTypes = require("./DropDownSelector.types.js");
|
|
18
|
+
Object.keys(_DropDownSelectorTypes).forEach(function (key) {
|
|
19
|
+
if (key === "default" || key === "__esModule") return;
|
|
20
|
+
if (key in exports && exports[key] === _DropDownSelectorTypes[key]) return;
|
|
21
|
+
Object.defineProperty(exports, key, {
|
|
22
|
+
enumerable: true,
|
|
23
|
+
get: function () {
|
|
24
|
+
return _DropDownSelectorTypes[key];
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
});
|
|
28
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_DropDownSelector","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_DropDownSelectorTypes"],"sourceRoot":"../../../src","sources":["DropDownSelector/index.ts"],"mappings":";;;;;AAAA,IAAAA,iBAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,iBAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,iBAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,iBAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,sBAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,sBAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,sBAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,sBAAA,CAAAL,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.ChevronUp = ChevronUp;
|
|
7
|
+
var _reactNativeEssentials = require("@shaquillehinds/react-native-essentials");
|
|
8
|
+
var _reactNativeSvg = _interopRequireWildcard(require("react-native-svg"));
|
|
9
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
10
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
11
|
+
function ChevronUp({
|
|
12
|
+
size,
|
|
13
|
+
color
|
|
14
|
+
}) {
|
|
15
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeSvg.default, {
|
|
16
|
+
width: (0, _reactNativeEssentials.normalize)(size || 24),
|
|
17
|
+
height: (0, _reactNativeEssentials.normalize)(size || 24),
|
|
18
|
+
viewBox: "0 0 24 24",
|
|
19
|
+
fill: "none",
|
|
20
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeSvg.Path, {
|
|
21
|
+
d: "M19.9195 15.8001C19.7295 15.8001 19.5395 15.7301 19.3895 15.5801L12.8695 9.06008C12.3895 8.58008 11.6095 8.58008 11.1295 9.06008L4.60953 15.5801C4.31953 15.8701 3.83953 15.8701 3.54953 15.5801C3.25953 15.2901 3.25953 14.8101 3.54953 14.5201L10.0695 8.00008C11.1295 6.94008 12.8595 6.94008 13.9295 8.00008L20.4495 14.5201C20.7395 14.8101 20.7395 15.2901 20.4495 15.5801C20.2995 15.7201 20.1095 15.8001 19.9195 15.8001Z",
|
|
22
|
+
fill: color || '#292D32'
|
|
23
|
+
})
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=ChevronUp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNativeEssentials","require","_reactNativeSvg","_interopRequireWildcard","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ChevronUp","size","color","jsx","width","normalize","height","viewBox","fill","children","Path","d"],"sourceRoot":"../../../../src","sources":["DropDownSelector/svgs/ChevronUp.tsx"],"mappings":";;;;;;AAAA,IAAAA,sBAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAC,uBAAA,CAAAF,OAAA;AAA6C,IAAAG,WAAA,GAAAH,OAAA;AAAA,SAAAE,wBAAAE,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAJ,uBAAA,YAAAA,CAAAE,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAEtC,SAASkB,SAASA,CAAC;EAAEC,IAAI;EAAEC;AAAyC,CAAC,EAAE;EAC5E,oBACE,IAAAtB,WAAA,CAAAuB,GAAA,EAACzB,eAAA,CAAAa,OAAG;IACFa,KAAK,EAAE,IAAAC,gCAAS,EAACJ,IAAI,IAAI,EAAE,CAAE;IAC7BK,MAAM,EAAE,IAAAD,gCAAS,EAACJ,IAAI,IAAI,EAAE,CAAE;IAC9BM,OAAO,EAAC,WAAW;IACnBC,IAAI,EAAC,MAAM;IAAAC,QAAA,eAEX,IAAA7B,WAAA,CAAAuB,GAAA,EAACzB,eAAA,CAAAgC,IAAI;MACHC,CAAC,EAAC,maAAma;MACraH,IAAI,EAAEN,KAAK,IAAI;IAAU,CAC1B;EAAC,CACC,CAAC;AAEV","ignoreList":[]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
var _exportNames = {};
|
|
7
|
+
exports.default = void 0;
|
|
8
|
+
var _index = require("./DropDownSelector/index.js");
|
|
9
|
+
Object.keys(_index).forEach(function (key) {
|
|
10
|
+
if (key === "default" || key === "__esModule") return;
|
|
11
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
12
|
+
if (key in exports && exports[key] === _index[key]) return;
|
|
13
|
+
Object.defineProperty(exports, key, {
|
|
14
|
+
enumerable: true,
|
|
15
|
+
get: function () {
|
|
16
|
+
return _index[key];
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
});
|
|
20
|
+
var _default = exports.default = _index.DropDownSelector;
|
|
21
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_index","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_default","default","DropDownSelector"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACAC,MAAA,CAAAC,IAAA,CAAAH,MAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAL,MAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAb,MAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AAAmC,IAAAS,QAAA,GAAAJ,OAAA,CAAAK,OAAA,GAEpBC,uBAAgB","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"type":"commonjs"}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { isAndroid, radiusSizes, useDeviceOrientation } from '@shaquillehinds/react-native-essentials';
|
|
4
|
+
import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
|
|
5
|
+
export function DropDownSelectorController(props) {
|
|
6
|
+
const [showItems, setShowItems] = useState(false);
|
|
7
|
+
const [hasPageY, setHasPageY] = useState(false);
|
|
8
|
+
const {
|
|
9
|
+
screenHeight,
|
|
10
|
+
relativeY
|
|
11
|
+
} = useDeviceOrientation();
|
|
12
|
+
const pageYRef = useRef(null);
|
|
13
|
+
const scrollViewRef = useRef(null);
|
|
14
|
+
const canRenderDownRef = useRef(null);
|
|
15
|
+
const animateChevronRef = useRef(null);
|
|
16
|
+
const animateComponentRef = useRef(null);
|
|
17
|
+
const animateAndroidShadowRef = useRef(null);
|
|
18
|
+
const unMountDelayInMilliSeconds = useMemo(() => {
|
|
19
|
+
if (props.expandAnimationConfig?.type === 'timing') return props.expandAnimationConfig?.duration || 300;
|
|
20
|
+
return props.unMountDelayInMilliSeconds || 300;
|
|
21
|
+
}, [props.expandAnimationConfig]);
|
|
22
|
+
const maxHeight = useMemo(() => props.expandDistance || relativeY(30), [relativeY, props.expandDistance]);
|
|
23
|
+
const label = useMemo(() => props.items.find(item => item.value === props.selectedItem)?.label, [props.items, props.selectedItem]);
|
|
24
|
+
const canRenderDown = useMemo(() => {
|
|
25
|
+
if (props.expandDirection === 'up') return false;
|
|
26
|
+
if (props.expandDirection === 'down') return true;
|
|
27
|
+
if (!pageYRef.current) return null;
|
|
28
|
+
if (!showItems && canRenderDownRef.current !== null) return canRenderDownRef.current;
|
|
29
|
+
const distanceToBottom = screenHeight - pageYRef.current;
|
|
30
|
+
if (distanceToBottom < maxHeight) canRenderDownRef.current = false;else canRenderDownRef.current = true;
|
|
31
|
+
return canRenderDownRef.current;
|
|
32
|
+
}, [showItems, screenHeight, maxHeight, hasPageY]);
|
|
33
|
+
const androidShadowAnimationConfig = useMemo(() => ({
|
|
34
|
+
toValue: 1,
|
|
35
|
+
type: 'timing',
|
|
36
|
+
useNativeDriver: true,
|
|
37
|
+
duration: canRenderDown ? showItems ? 400 : 200 : showItems ? 800 : 100
|
|
38
|
+
}), [canRenderDown, showItems]);
|
|
39
|
+
const scrollViewStyle = useMemo(() => ({
|
|
40
|
+
overflow: 'hidden',
|
|
41
|
+
maxHeight: maxHeight,
|
|
42
|
+
minHeight: relativeY(5),
|
|
43
|
+
borderRadius: radiusSizes.soft,
|
|
44
|
+
transform: [{
|
|
45
|
+
translateY: canRenderDown ? 0 : -maxHeight + relativeY(4)
|
|
46
|
+
}]
|
|
47
|
+
}), [canRenderDown, maxHeight, relativeY]);
|
|
48
|
+
const chevronAnimationConfig = useMemo(() => ({
|
|
49
|
+
toValue: canRenderDown ? 1 : -1,
|
|
50
|
+
type: 'spring',
|
|
51
|
+
speed: 1,
|
|
52
|
+
bounciness: 1,
|
|
53
|
+
useNativeDriver: true
|
|
54
|
+
}), [canRenderDown]);
|
|
55
|
+
const selectionItemsListAnimationConfig = useMemo(() => ({
|
|
56
|
+
toValue: 0,
|
|
57
|
+
type: 'spring',
|
|
58
|
+
speed: 1,
|
|
59
|
+
bounciness: 1,
|
|
60
|
+
useNativeDriver: true
|
|
61
|
+
}), []);
|
|
62
|
+
const chevronAnimatedStyle = useCallback(scaleY => ({
|
|
63
|
+
transform: [{
|
|
64
|
+
scaleY
|
|
65
|
+
}]
|
|
66
|
+
}), []);
|
|
67
|
+
const handleLayout = useCallback(e => {
|
|
68
|
+
e.currentTarget.measure((_x, _y, _width, _height, _pageX, pageY) => {
|
|
69
|
+
pageYRef.current = pageY || screenHeight / 2;
|
|
70
|
+
setHasPageY(true);
|
|
71
|
+
});
|
|
72
|
+
props.containerProps?.onLayout?.(e);
|
|
73
|
+
}, [props.containerProps?.onLayout]);
|
|
74
|
+
const androidShadowAnimatedStyle = useCallback(opacity => ({
|
|
75
|
+
opacity,
|
|
76
|
+
right: 0,
|
|
77
|
+
left: 0,
|
|
78
|
+
top: 0,
|
|
79
|
+
bottom: 0,
|
|
80
|
+
position: 'absolute',
|
|
81
|
+
boxShadow: canRenderDown ? '5px 18px 25px 0px rgba(0,0,0,0.15)' : '5px -18px 25px 0px rgba(0,0,0,0.15)',
|
|
82
|
+
borderRadius: radiusSizes.soft,
|
|
83
|
+
transform: [{
|
|
84
|
+
translateY: canRenderDown ? 0 : -maxHeight + relativeY(4)
|
|
85
|
+
}]
|
|
86
|
+
}), [canRenderDown, maxHeight, relativeY]);
|
|
87
|
+
const selectionItemsListAnimatedStyle = useCallback(translateY => ({
|
|
88
|
+
transform: [{
|
|
89
|
+
translateY
|
|
90
|
+
}]
|
|
91
|
+
}), []);
|
|
92
|
+
useEffect(() => {
|
|
93
|
+
if (animateComponentRef.current && !showItems) animateComponentRef.current.reverse();
|
|
94
|
+
if (animateChevronRef.current) {
|
|
95
|
+
if (showItems) animateChevronRef.current.start();else {
|
|
96
|
+
animateChevronRef.current.reverse();
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
if (isAndroid && !showItems) animateAndroidShadowRef.current?.reverse();
|
|
100
|
+
}, [showItems]);
|
|
101
|
+
return {
|
|
102
|
+
showItems,
|
|
103
|
+
setShowItems,
|
|
104
|
+
label,
|
|
105
|
+
canRenderDown,
|
|
106
|
+
relativeY,
|
|
107
|
+
scrollViewRef,
|
|
108
|
+
animateComponentRef,
|
|
109
|
+
animateChevronRef,
|
|
110
|
+
animateAndroidShadowRef,
|
|
111
|
+
pageYRef,
|
|
112
|
+
canRenderDownRef,
|
|
113
|
+
maxHeight,
|
|
114
|
+
handleLayout,
|
|
115
|
+
androidShadowAnimatedStyle,
|
|
116
|
+
androidShadowAnimationConfig,
|
|
117
|
+
scrollViewStyle,
|
|
118
|
+
selectionItemsListAnimatedStyle,
|
|
119
|
+
selectionItemsListAnimationConfig,
|
|
120
|
+
chevronAnimationConfig,
|
|
121
|
+
chevronAnimatedStyle,
|
|
122
|
+
unMountDelayInMilliSeconds
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
//# sourceMappingURL=DropDownSelector.controller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["isAndroid","radiusSizes","useDeviceOrientation","useCallback","useEffect","useMemo","useRef","useState","DropDownSelectorController","props","showItems","setShowItems","hasPageY","setHasPageY","screenHeight","relativeY","pageYRef","scrollViewRef","canRenderDownRef","animateChevronRef","animateComponentRef","animateAndroidShadowRef","unMountDelayInMilliSeconds","expandAnimationConfig","type","duration","maxHeight","expandDistance","label","items","find","item","value","selectedItem","canRenderDown","expandDirection","current","distanceToBottom","androidShadowAnimationConfig","toValue","useNativeDriver","scrollViewStyle","overflow","minHeight","borderRadius","soft","transform","translateY","chevronAnimationConfig","speed","bounciness","selectionItemsListAnimationConfig","chevronAnimatedStyle","scaleY","handleLayout","e","currentTarget","measure","_x","_y","_width","_height","_pageX","pageY","containerProps","onLayout","androidShadowAnimatedStyle","opacity","right","left","top","bottom","position","boxShadow","selectionItemsListAnimatedStyle","reverse","start"],"sourceRoot":"../../../src","sources":["DropDownSelector/DropDownSelector.controller.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { AnimateComponent, BaseText, isAndroid, Layout, RNPressableLayout, shadowStyles, maxZIndex, TouchableLayout, ComponentMounter, ModalForegroundWrapper, ModalWrapper, RadioIcon } from '@shaquillehinds/react-native-essentials';
|
|
4
|
+
import { ChevronUp } from "./svgs/ChevronUp.js";
|
|
5
|
+
import { View } from 'react-native';
|
|
6
|
+
import { ScrollView } from 'react-native-gesture-handler';
|
|
7
|
+
import { DropDownSelectorController } from "./DropDownSelector.controller.js";
|
|
8
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
9
|
+
export function DropDownSelector(props) {
|
|
10
|
+
const controller = DropDownSelectorController(props);
|
|
11
|
+
return /*#__PURE__*/_jsxs(Layout, {
|
|
12
|
+
...props.containerProps,
|
|
13
|
+
style: [{
|
|
14
|
+
zIndex: maxZIndex
|
|
15
|
+
}, props.containerProps?.style],
|
|
16
|
+
onLayout: controller.handleLayout,
|
|
17
|
+
children: [/*#__PURE__*/_jsx(ComponentMounter, {
|
|
18
|
+
showComponent: controller.showItems,
|
|
19
|
+
setShowComponent: controller.setShowItems,
|
|
20
|
+
unMountDelayInMilliSeconds: controller.unMountDelayInMilliSeconds,
|
|
21
|
+
onComponentShow: props.onOpen,
|
|
22
|
+
onComponentClose: props.onClose,
|
|
23
|
+
component: /*#__PURE__*/_jsx(ModalWrapper, {
|
|
24
|
+
enableBackgroundContentPress: true,
|
|
25
|
+
children: /*#__PURE__*/_jsx(ModalForegroundWrapper, {
|
|
26
|
+
children: /*#__PURE__*/_jsxs(View, {
|
|
27
|
+
style: !props.disableShadow ? {
|
|
28
|
+
...shadowStyles({
|
|
29
|
+
shadowOpacity: 0.15
|
|
30
|
+
})
|
|
31
|
+
} : undefined,
|
|
32
|
+
children: [!props.disableShadow && isAndroid && /*#__PURE__*/_jsx(AnimateComponent, {
|
|
33
|
+
ref: controller.animateAndroidShadowRef,
|
|
34
|
+
initialPosition: 0,
|
|
35
|
+
style: controller.androidShadowAnimatedStyle,
|
|
36
|
+
autoStart: true,
|
|
37
|
+
toPosition: controller.androidShadowAnimationConfig
|
|
38
|
+
}), /*#__PURE__*/_jsx(ScrollView, {
|
|
39
|
+
ref: controller.scrollViewRef,
|
|
40
|
+
nestedScrollEnabled: true,
|
|
41
|
+
showsVerticalScrollIndicator: false,
|
|
42
|
+
overScrollMode: "never",
|
|
43
|
+
...props.dropdownScrollViewProps,
|
|
44
|
+
style: [controller.scrollViewStyle, props.dropdownScrollViewProps?.style],
|
|
45
|
+
children: /*#__PURE__*/_jsx(AnimateComponent, {
|
|
46
|
+
ref: controller.animateComponentRef,
|
|
47
|
+
style: controller.selectionItemsListAnimatedStyle,
|
|
48
|
+
initialPosition: controller.canRenderDown ? -controller.relativeY(110) : controller.relativeY(110),
|
|
49
|
+
autoStart: true,
|
|
50
|
+
toPosition: props.expandAnimationConfig ? {
|
|
51
|
+
...props.expandAnimationConfig,
|
|
52
|
+
toValue: 0
|
|
53
|
+
} : controller.selectionItemsListAnimationConfig,
|
|
54
|
+
children: /*#__PURE__*/_jsx(Layout, {
|
|
55
|
+
borderRadius: "soft",
|
|
56
|
+
backgroundColor: '#FAFAFA',
|
|
57
|
+
padding: controller.canRenderDown ? [5, 0, 0, 0] : [0, 0, 5, 0],
|
|
58
|
+
...props.dropdownContentContainerProps,
|
|
59
|
+
children: props.items.map(item => props.DropdownItemComponent ? /*#__PURE__*/_jsx(props.DropdownItemComponent, {
|
|
60
|
+
item: item,
|
|
61
|
+
isSelected: item.value === props.selectedItem
|
|
62
|
+
}, item.label) : /*#__PURE__*/_jsxs(TouchableLayout, {
|
|
63
|
+
flexDirection: "row",
|
|
64
|
+
center: true,
|
|
65
|
+
spaceBetween: true,
|
|
66
|
+
padding: [1, 5],
|
|
67
|
+
...props.dropdownItemProps,
|
|
68
|
+
onPress: () => {
|
|
69
|
+
props.onSelect(item.value);
|
|
70
|
+
controller.setShowItems(false);
|
|
71
|
+
props.onDropdownItemPress?.(item);
|
|
72
|
+
},
|
|
73
|
+
children: [/*#__PURE__*/_jsx(Layout, {
|
|
74
|
+
width: '85%',
|
|
75
|
+
children: /*#__PURE__*/_jsx(BaseText, {
|
|
76
|
+
numberOfLines: 1,
|
|
77
|
+
...props.dropdownItemTextProps,
|
|
78
|
+
children: item.label
|
|
79
|
+
})
|
|
80
|
+
}), item.value === props.selectedItem ? props.DropdownItemSelectedIcon ? /*#__PURE__*/_jsx(props.DropdownItemSelectedIcon, {
|
|
81
|
+
item: item
|
|
82
|
+
}) : /*#__PURE__*/_jsx(RadioIcon, {
|
|
83
|
+
isSelected: true
|
|
84
|
+
}) : null]
|
|
85
|
+
}, item.label))
|
|
86
|
+
})
|
|
87
|
+
})
|
|
88
|
+
})]
|
|
89
|
+
})
|
|
90
|
+
})
|
|
91
|
+
})
|
|
92
|
+
}), /*#__PURE__*/_jsxs(RNPressableLayout, {
|
|
93
|
+
disabled: props.isDisabled,
|
|
94
|
+
activeOpacity: 1,
|
|
95
|
+
flexDirection: "row",
|
|
96
|
+
backgroundColor: 'white',
|
|
97
|
+
borderRadius: "medium",
|
|
98
|
+
padding: [1, 5],
|
|
99
|
+
spaceBetween: true,
|
|
100
|
+
center: true,
|
|
101
|
+
...props.dropdownButtonProps,
|
|
102
|
+
style: [{
|
|
103
|
+
zIndex: maxZIndex + 3,
|
|
104
|
+
...shadowStyles({
|
|
105
|
+
shadowOpacity: 0.1
|
|
106
|
+
})
|
|
107
|
+
}, props.dropdownButtonProps?.style],
|
|
108
|
+
onPress: e => {
|
|
109
|
+
controller.pageYRef.current = e.nativeEvent.pageY;
|
|
110
|
+
controller.setShowItems(prev => !prev);
|
|
111
|
+
props.dropdownButtonProps?.onPress?.(e);
|
|
112
|
+
},
|
|
113
|
+
children: [/*#__PURE__*/_jsx(BaseText, {
|
|
114
|
+
numberOfLines: 1,
|
|
115
|
+
...props.dropdownButtonTextProps,
|
|
116
|
+
children: controller.label || props.placeholder || 'Select an item'
|
|
117
|
+
}), props.DropdownButtonIcon ? /*#__PURE__*/_jsx(props.DropdownButtonIcon, {
|
|
118
|
+
isOpen: controller.showItems,
|
|
119
|
+
expandDirection: props.expandDirection || controller.canRenderDown ? 'down' : 'up'
|
|
120
|
+
}) : controller.canRenderDown === null ? undefined : /*#__PURE__*/_jsx(AnimateComponent, {
|
|
121
|
+
ref: controller.animateChevronRef,
|
|
122
|
+
style: controller.chevronAnimatedStyle,
|
|
123
|
+
initialPosition: controller.canRenderDown ? -1 : 1,
|
|
124
|
+
toPosition: controller.chevronAnimationConfig,
|
|
125
|
+
children: /*#__PURE__*/_jsx(ChevronUp, {
|
|
126
|
+
color: 'black'
|
|
127
|
+
})
|
|
128
|
+
})]
|
|
129
|
+
})]
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
//# sourceMappingURL=DropDownSelector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["AnimateComponent","BaseText","isAndroid","Layout","RNPressableLayout","shadowStyles","maxZIndex","TouchableLayout","ComponentMounter","ModalForegroundWrapper","ModalWrapper","RadioIcon","ChevronUp","View","ScrollView","DropDownSelectorController","jsx","_jsx","jsxs","_jsxs","DropDownSelector","props","controller","containerProps","style","zIndex","onLayout","handleLayout","children","showComponent","showItems","setShowComponent","setShowItems","unMountDelayInMilliSeconds","onComponentShow","onOpen","onComponentClose","onClose","component","enableBackgroundContentPress","disableShadow","shadowOpacity","undefined","ref","animateAndroidShadowRef","initialPosition","androidShadowAnimatedStyle","autoStart","toPosition","androidShadowAnimationConfig","scrollViewRef","nestedScrollEnabled","showsVerticalScrollIndicator","overScrollMode","dropdownScrollViewProps","scrollViewStyle","animateComponentRef","selectionItemsListAnimatedStyle","canRenderDown","relativeY","expandAnimationConfig","toValue","selectionItemsListAnimationConfig","borderRadius","backgroundColor","padding","dropdownContentContainerProps","items","map","item","DropdownItemComponent","isSelected","value","selectedItem","label","flexDirection","center","spaceBetween","dropdownItemProps","onPress","onSelect","onDropdownItemPress","width","numberOfLines","dropdownItemTextProps","DropdownItemSelectedIcon","disabled","isDisabled","activeOpacity","dropdownButtonProps","e","pageYRef","current","nativeEvent","pageY","prev","dropdownButtonTextProps","placeholder","DropdownButtonIcon","isOpen","expandDirection","animateChevronRef","chevronAnimatedStyle","chevronAnimationConfig","color"],"sourceRoot":"../../../src","sources":["DropDownSelector/DropDownSelector.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["DropDownSelector/DropDownSelector.types.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["DropDownSelector/index.ts"],"mappings":";;AAAA,cAAc,uBAAoB;AAClC,cAAc,6BAA0B","ignoreList":[]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { normalize } from '@shaquillehinds/react-native-essentials';
|
|
4
|
+
import Svg, { Path } from 'react-native-svg';
|
|
5
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
6
|
+
export function ChevronUp({
|
|
7
|
+
size,
|
|
8
|
+
color
|
|
9
|
+
}) {
|
|
10
|
+
return /*#__PURE__*/_jsx(Svg, {
|
|
11
|
+
width: normalize(size || 24),
|
|
12
|
+
height: normalize(size || 24),
|
|
13
|
+
viewBox: "0 0 24 24",
|
|
14
|
+
fill: "none",
|
|
15
|
+
children: /*#__PURE__*/_jsx(Path, {
|
|
16
|
+
d: "M19.9195 15.8001C19.7295 15.8001 19.5395 15.7301 19.3895 15.5801L12.8695 9.06008C12.3895 8.58008 11.6095 8.58008 11.1295 9.06008L4.60953 15.5801C4.31953 15.8701 3.83953 15.8701 3.54953 15.5801C3.25953 15.2901 3.25953 14.8101 3.54953 14.5201L10.0695 8.00008C11.1295 6.94008 12.8595 6.94008 13.9295 8.00008L20.4495 14.5201C20.7395 14.8101 20.7395 15.2901 20.4495 15.5801C20.2995 15.7201 20.1095 15.8001 19.9195 15.8001Z",
|
|
17
|
+
fill: color || '#292D32'
|
|
18
|
+
})
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=ChevronUp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["normalize","Svg","Path","jsx","_jsx","ChevronUp","size","color","width","height","viewBox","fill","children","d"],"sourceRoot":"../../../../src","sources":["DropDownSelector/svgs/ChevronUp.tsx"],"mappings":";;AAAA,SAASA,SAAS,QAAQ,yCAAyC;AACnE,OAAOC,GAAG,IAAIC,IAAI,QAAQ,kBAAkB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE7C,OAAO,SAASC,SAASA,CAAC;EAAEC,IAAI;EAAEC;AAAyC,CAAC,EAAE;EAC5E,oBACEH,IAAA,CAACH,GAAG;IACFO,KAAK,EAAER,SAAS,CAACM,IAAI,IAAI,EAAE,CAAE;IAC7BG,MAAM,EAAET,SAAS,CAACM,IAAI,IAAI,EAAE,CAAE;IAC9BI,OAAO,EAAC,WAAW;IACnBC,IAAI,EAAC,MAAM;IAAAC,QAAA,eAEXR,IAAA,CAACF,IAAI;MACHW,CAAC,EAAC,maAAma;MACraF,IAAI,EAAEJ,KAAK,IAAI;IAAU,CAC1B;EAAC,CACC,CAAC;AAEV","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["DropDownSelector"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,SAASA,gBAAgB,QAAQ,6BAAoB;AACrD,cAAc,6BAAoB;AAElC,eAAeA,gBAAgB","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"type":"module"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"type":"commonjs"}
|