@wecareu/select 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +165 -0
- package/lib/commonjs/Select.js +272 -0
- package/lib/commonjs/Select.js.map +1 -0
- package/lib/commonjs/Select.types.js +6 -0
- package/lib/commonjs/Select.types.js.map +1 -0
- package/lib/commonjs/SelectChip.js +74 -0
- package/lib/commonjs/SelectChip.js.map +1 -0
- package/lib/commonjs/SelectDropdown.js +156 -0
- package/lib/commonjs/SelectDropdown.js.map +1 -0
- package/lib/commonjs/SelectErrorMessage.js +32 -0
- package/lib/commonjs/SelectErrorMessage.js.map +1 -0
- package/lib/commonjs/SelectIcon.js +64 -0
- package/lib/commonjs/SelectIcon.js.map +1 -0
- package/lib/commonjs/SelectOption.js +140 -0
- package/lib/commonjs/SelectOption.js.map +1 -0
- package/lib/commonjs/SelectSearch.js +79 -0
- package/lib/commonjs/SelectSearch.js.map +1 -0
- package/lib/commonjs/animations/shake.js +45 -0
- package/lib/commonjs/animations/shake.js.map +1 -0
- package/lib/commonjs/index.js +13 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/index.stories.js +383 -0
- package/lib/commonjs/index.stories.js.map +1 -0
- package/lib/module/Select.js +265 -0
- package/lib/module/Select.js.map +1 -0
- package/lib/module/Select.types.js +2 -0
- package/lib/module/Select.types.js.map +1 -0
- package/lib/module/SelectChip.js +67 -0
- package/lib/module/SelectChip.js.map +1 -0
- package/lib/module/SelectDropdown.js +149 -0
- package/lib/module/SelectDropdown.js.map +1 -0
- package/lib/module/SelectErrorMessage.js +25 -0
- package/lib/module/SelectErrorMessage.js.map +1 -0
- package/lib/module/SelectIcon.js +57 -0
- package/lib/module/SelectIcon.js.map +1 -0
- package/lib/module/SelectOption.js +133 -0
- package/lib/module/SelectOption.js.map +1 -0
- package/lib/module/SelectSearch.js +72 -0
- package/lib/module/SelectSearch.js.map +1 -0
- package/lib/module/animations/shake.js +39 -0
- package/lib/module/animations/shake.js.map +1 -0
- package/lib/module/index.js +2 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/index.stories.js +376 -0
- package/lib/module/index.stories.js.map +1 -0
- package/lib/typescript/src/Select.d.ts +3 -0
- package/lib/typescript/src/Select.d.ts.map +1 -0
- package/lib/typescript/src/Select.types.d.ts +245 -0
- package/lib/typescript/src/Select.types.d.ts.map +1 -0
- package/lib/typescript/src/SelectChip.d.ts +3 -0
- package/lib/typescript/src/SelectChip.d.ts.map +1 -0
- package/lib/typescript/src/SelectDropdown.d.ts +3 -0
- package/lib/typescript/src/SelectDropdown.d.ts.map +1 -0
- package/lib/typescript/src/SelectErrorMessage.d.ts +3 -0
- package/lib/typescript/src/SelectErrorMessage.d.ts.map +1 -0
- package/lib/typescript/src/SelectIcon.d.ts +3 -0
- package/lib/typescript/src/SelectIcon.d.ts.map +1 -0
- package/lib/typescript/src/SelectOption.d.ts +3 -0
- package/lib/typescript/src/SelectOption.d.ts.map +1 -0
- package/lib/typescript/src/SelectSearch.d.ts +3 -0
- package/lib/typescript/src/SelectSearch.d.ts.map +1 -0
- package/lib/typescript/src/animations/shake.d.ts +32 -0
- package/lib/typescript/src/animations/shake.d.ts.map +1 -0
- package/lib/typescript/src/index.d.ts +3 -0
- package/lib/typescript/src/index.d.ts.map +1 -0
- package/package.json +66 -0
- package/src/Select.tsx +338 -0
- package/src/Select.types.ts +256 -0
- package/src/SelectChip.tsx +75 -0
- package/src/SelectDropdown.tsx +184 -0
- package/src/SelectErrorMessage.tsx +31 -0
- package/src/SelectIcon.tsx +63 -0
- package/src/SelectOption.tsx +168 -0
- package/src/SelectSearch.tsx +81 -0
- package/src/animations/shake.ts +76 -0
- package/src/index.stories.tsx +336 -0
- package/src/index.tsx +2 -0
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.SelectDropdown = SelectDropdown;
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _theme = require("@wecareu/theme");
|
|
10
|
+
var _SelectOption = require("./SelectOption");
|
|
11
|
+
var _SelectSearch = require("./SelectSearch");
|
|
12
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
13
|
+
const ANIMATION_DURATION = 250;
|
|
14
|
+
const INITIAL_RENDER_COUNT = 20;
|
|
15
|
+
const MAX_RENDER_BATCH = 20;
|
|
16
|
+
const WINDOW_SIZE = 5;
|
|
17
|
+
function SelectDropdown({
|
|
18
|
+
isMulti,
|
|
19
|
+
isOpen,
|
|
20
|
+
onClose,
|
|
21
|
+
onToggleOption,
|
|
22
|
+
options,
|
|
23
|
+
searchable,
|
|
24
|
+
selectedValues
|
|
25
|
+
}) {
|
|
26
|
+
const theme = (0, _theme.useTheme)();
|
|
27
|
+
const styles = _react.default.useMemo(() => createStyles(theme), [theme]);
|
|
28
|
+
const translateY = _react.default.useRef(new _reactNative.Animated.Value(500)).current;
|
|
29
|
+
const overlayOpacity = _react.default.useRef(new _reactNative.Animated.Value(0)).current;
|
|
30
|
+
const [searchQuery, setSearchQuery] = _react.default.useState('');
|
|
31
|
+
_react.default.useEffect(() => {
|
|
32
|
+
if (isOpen) {
|
|
33
|
+
setSearchQuery('');
|
|
34
|
+
_reactNative.Animated.parallel([_reactNative.Animated.timing(translateY, {
|
|
35
|
+
duration: ANIMATION_DURATION,
|
|
36
|
+
toValue: 0,
|
|
37
|
+
useNativeDriver: true
|
|
38
|
+
}), _reactNative.Animated.timing(overlayOpacity, {
|
|
39
|
+
duration: ANIMATION_DURATION,
|
|
40
|
+
toValue: 1,
|
|
41
|
+
useNativeDriver: true
|
|
42
|
+
})]).start();
|
|
43
|
+
} else {
|
|
44
|
+
_reactNative.Animated.parallel([_reactNative.Animated.timing(translateY, {
|
|
45
|
+
duration: ANIMATION_DURATION,
|
|
46
|
+
toValue: 500,
|
|
47
|
+
useNativeDriver: true
|
|
48
|
+
}), _reactNative.Animated.timing(overlayOpacity, {
|
|
49
|
+
duration: ANIMATION_DURATION,
|
|
50
|
+
toValue: 0,
|
|
51
|
+
useNativeDriver: true
|
|
52
|
+
})]).start();
|
|
53
|
+
}
|
|
54
|
+
}, [isOpen, overlayOpacity, translateY]);
|
|
55
|
+
const filteredOptions = _react.default.useMemo(() => {
|
|
56
|
+
if (!searchQuery.trim()) {
|
|
57
|
+
return options;
|
|
58
|
+
}
|
|
59
|
+
const query = searchQuery.toLowerCase().trim();
|
|
60
|
+
return options.filter(opt => opt.label.toLowerCase().includes(query));
|
|
61
|
+
}, [options, searchQuery]);
|
|
62
|
+
const renderItem = _react.default.useCallback(({
|
|
63
|
+
item
|
|
64
|
+
}) => /*#__PURE__*/_react.default.createElement(_SelectOption.SelectOptionItem, {
|
|
65
|
+
disabled: item.disabled,
|
|
66
|
+
isMulti: isMulti,
|
|
67
|
+
isSelected: selectedValues.includes(item.value),
|
|
68
|
+
onPress: onToggleOption,
|
|
69
|
+
option: item
|
|
70
|
+
}), [isMulti, onToggleOption, selectedValues]);
|
|
71
|
+
const keyExtractor = _react.default.useCallback(item => String(item.value), []);
|
|
72
|
+
const itemSeparator = _react.default.useCallback(() => /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
73
|
+
style: styles.separator
|
|
74
|
+
}), [styles.separator]);
|
|
75
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.Modal, {
|
|
76
|
+
accessibilityViewIsModal: true,
|
|
77
|
+
animationType: "none",
|
|
78
|
+
onRequestClose: onClose,
|
|
79
|
+
statusBarTranslucent: true,
|
|
80
|
+
transparent: true,
|
|
81
|
+
visible: isOpen
|
|
82
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.KeyboardAvoidingView, {
|
|
83
|
+
behavior: _reactNative.Platform.OS === 'ios' ? 'padding' : undefined,
|
|
84
|
+
style: styles.keyboardView
|
|
85
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.Animated.View, {
|
|
86
|
+
style: [styles.overlay, {
|
|
87
|
+
opacity: overlayOpacity
|
|
88
|
+
}]
|
|
89
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.Pressable, {
|
|
90
|
+
accessibilityLabel: "Close dropdown",
|
|
91
|
+
style: styles.overlayPressable,
|
|
92
|
+
onPress: onClose
|
|
93
|
+
})), /*#__PURE__*/_react.default.createElement(_reactNative.Animated.View, {
|
|
94
|
+
style: [styles.sheet, {
|
|
95
|
+
transform: [{
|
|
96
|
+
translateY
|
|
97
|
+
}]
|
|
98
|
+
}]
|
|
99
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
100
|
+
style: styles.dragHandle
|
|
101
|
+
}), searchable ? /*#__PURE__*/_react.default.createElement(_SelectSearch.SelectSearch, {
|
|
102
|
+
onChangeText: setSearchQuery,
|
|
103
|
+
value: searchQuery
|
|
104
|
+
}) : null, /*#__PURE__*/_react.default.createElement(_reactNative.FlatList, {
|
|
105
|
+
ItemSeparatorComponent: itemSeparator,
|
|
106
|
+
contentContainerStyle: styles.listContent,
|
|
107
|
+
data: filteredOptions,
|
|
108
|
+
extraData: selectedValues,
|
|
109
|
+
initialNumToRender: INITIAL_RENDER_COUNT,
|
|
110
|
+
keyExtractor: keyExtractor,
|
|
111
|
+
keyboardShouldPersistTaps: "handled",
|
|
112
|
+
maxToRenderPerBatch: MAX_RENDER_BATCH,
|
|
113
|
+
renderItem: renderItem,
|
|
114
|
+
windowSize: WINDOW_SIZE
|
|
115
|
+
}))));
|
|
116
|
+
}
|
|
117
|
+
function createStyles(theme) {
|
|
118
|
+
return _reactNative.StyleSheet.create({
|
|
119
|
+
dragHandle: {
|
|
120
|
+
alignSelf: 'center',
|
|
121
|
+
backgroundColor: theme.colors.border.secondary,
|
|
122
|
+
borderRadius: 2,
|
|
123
|
+
height: 4,
|
|
124
|
+
marginBottom: theme.spacing.xs,
|
|
125
|
+
marginTop: theme.spacing.sm,
|
|
126
|
+
width: 40
|
|
127
|
+
},
|
|
128
|
+
keyboardView: {
|
|
129
|
+
flex: 1,
|
|
130
|
+
justifyContent: 'flex-end'
|
|
131
|
+
},
|
|
132
|
+
listContent: {
|
|
133
|
+
paddingBottom: theme.spacing.xl
|
|
134
|
+
},
|
|
135
|
+
overlay: {
|
|
136
|
+
..._reactNative.StyleSheet.absoluteFillObject,
|
|
137
|
+
backgroundColor: theme.colors.alpha?.overlay ?? 'rgba(0,0,0,0.5)'
|
|
138
|
+
},
|
|
139
|
+
overlayPressable: {
|
|
140
|
+
flex: 1
|
|
141
|
+
},
|
|
142
|
+
separator: {
|
|
143
|
+
backgroundColor: theme.colors.border.secondary,
|
|
144
|
+
height: _reactNative.StyleSheet.hairlineWidth,
|
|
145
|
+
marginLeft: theme.spacing.md
|
|
146
|
+
},
|
|
147
|
+
sheet: {
|
|
148
|
+
backgroundColor: theme.colors.background.primary,
|
|
149
|
+
borderTopLeftRadius: theme.radius.xl,
|
|
150
|
+
borderTopRightRadius: theme.radius.xl,
|
|
151
|
+
maxHeight: '70%',
|
|
152
|
+
...theme.colors.shadowStyles.card
|
|
153
|
+
}
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
//# sourceMappingURL=SelectDropdown.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_theme","_SelectOption","_SelectSearch","e","__esModule","default","ANIMATION_DURATION","INITIAL_RENDER_COUNT","MAX_RENDER_BATCH","WINDOW_SIZE","SelectDropdown","isMulti","isOpen","onClose","onToggleOption","options","searchable","selectedValues","theme","useTheme","styles","React","useMemo","createStyles","translateY","useRef","Animated","Value","current","overlayOpacity","searchQuery","setSearchQuery","useState","useEffect","parallel","timing","duration","toValue","useNativeDriver","start","filteredOptions","trim","query","toLowerCase","filter","opt","label","includes","renderItem","useCallback","item","createElement","SelectOptionItem","disabled","isSelected","value","onPress","option","keyExtractor","String","itemSeparator","View","style","separator","Modal","accessibilityViewIsModal","animationType","onRequestClose","statusBarTranslucent","transparent","visible","KeyboardAvoidingView","behavior","Platform","OS","undefined","keyboardView","overlay","opacity","Pressable","accessibilityLabel","overlayPressable","sheet","transform","dragHandle","SelectSearch","onChangeText","FlatList","ItemSeparatorComponent","contentContainerStyle","listContent","data","extraData","initialNumToRender","keyboardShouldPersistTaps","maxToRenderPerBatch","windowSize","StyleSheet","create","alignSelf","backgroundColor","colors","border","secondary","borderRadius","height","marginBottom","spacing","xs","marginTop","sm","width","flex","justifyContent","paddingBottom","xl","absoluteFillObject","alpha","hairlineWidth","marginLeft","md","background","primary","borderTopLeftRadius","radius","borderTopRightRadius","maxHeight","shadowStyles","card"],"sourceRoot":"..\\..\\src","sources":["SelectDropdown.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.SelectErrorMessage = SelectErrorMessage;
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _theme = require("@wecareu/theme");
|
|
10
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
|
+
function SelectErrorMessage({
|
|
12
|
+
message,
|
|
13
|
+
testID
|
|
14
|
+
}) {
|
|
15
|
+
const theme = (0, _theme.useTheme)();
|
|
16
|
+
const errorTextStyle = _react.default.useMemo(() => ({
|
|
17
|
+
color: theme.colors.status.error,
|
|
18
|
+
fontFamily: theme.typography.fontFamily.caption,
|
|
19
|
+
fontSize: theme.typography.fontSize.sm,
|
|
20
|
+
lineHeight: theme.typography.lineHeight.labelMedium,
|
|
21
|
+
marginTop: theme.spacing.xs
|
|
22
|
+
}), [theme]);
|
|
23
|
+
if (!message) {
|
|
24
|
+
return null;
|
|
25
|
+
}
|
|
26
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
27
|
+
accessibilityLiveRegion: "polite",
|
|
28
|
+
style: errorTextStyle,
|
|
29
|
+
testID: testID
|
|
30
|
+
}, message);
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=SelectErrorMessage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_theme","e","__esModule","default","SelectErrorMessage","message","testID","theme","useTheme","errorTextStyle","React","useMemo","color","colors","status","error","fontFamily","typography","caption","fontSize","sm","lineHeight","labelMedium","marginTop","spacing","xs","createElement","Text","accessibilityLiveRegion","style"],"sourceRoot":"..\\..\\src","sources":["SelectErrorMessage.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,MAAA,GAAAF,OAAA;AAAyC,SAAAD,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAIlC,SAASG,kBAAkBA,CAAC;EAAEC,OAAO;EAAEC;AAAgC,CAAC,EAAsB;EACnG,MAAMC,KAAK,GAAG,IAAAC,eAAQ,EAAC,CAAC;EACxB,MAAMC,cAAc,GAAGC,cAAK,CAACC,OAAO,CAClC,OAAO;IACLC,KAAK,EAAEL,KAAK,CAACM,MAAM,CAACC,MAAM,CAACC,KAAK;IAChCC,UAAU,EAAET,KAAK,CAACU,UAAU,CAACD,UAAU,CAACE,OAAO;IAC/CC,QAAQ,EAAEZ,KAAK,CAACU,UAAU,CAACE,QAAQ,CAACC,EAAE;IACtCC,UAAU,EAAEd,KAAK,CAACU,UAAU,CAACI,UAAU,CAACC,WAAW;IACnDC,SAAS,EAAEhB,KAAK,CAACiB,OAAO,CAACC;EAC3B,CAAC,CAAC,EACF,CAAClB,KAAK,CACR,CAAC;EAED,IAAI,CAACF,OAAO,EAAE;IACZ,OAAO,IAAI;EACb;EAEA,oBACET,MAAA,CAAAO,OAAA,CAAAuB,aAAA,CAAC3B,YAAA,CAAA4B,IAAI;IAACC,uBAAuB,EAAC,QAAQ;IAACC,KAAK,EAAEpB,cAAe;IAACH,MAAM,EAAEA;EAAO,GAC1ED,OACG,CAAC;AAEX","ignoreList":[]}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.SelectIcon = SelectIcon;
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _icons = require("@wecareu/icons");
|
|
10
|
+
var _theme = require("@wecareu/theme");
|
|
11
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
|
+
function SelectIcon({
|
|
13
|
+
accessibilityLabel,
|
|
14
|
+
color,
|
|
15
|
+
name,
|
|
16
|
+
onPress,
|
|
17
|
+
size,
|
|
18
|
+
testID
|
|
19
|
+
}) {
|
|
20
|
+
const theme = (0, _theme.useTheme)();
|
|
21
|
+
const iconColor = color ?? theme.colors.text.tertiary;
|
|
22
|
+
const iconSize = size ?? theme.spacing.lg;
|
|
23
|
+
const hitSlop = _react.default.useMemo(() => ({
|
|
24
|
+
bottom: theme.spacing.xs,
|
|
25
|
+
left: theme.spacing.xs,
|
|
26
|
+
right: theme.spacing.xs,
|
|
27
|
+
top: theme.spacing.xs
|
|
28
|
+
}), [theme.spacing.xs]);
|
|
29
|
+
if (onPress) {
|
|
30
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.Pressable, {
|
|
31
|
+
accessibilityLabel: accessibilityLabel ?? name,
|
|
32
|
+
accessibilityRole: "button",
|
|
33
|
+
hitSlop: hitSlop,
|
|
34
|
+
onPress: onPress,
|
|
35
|
+
style: styles.pressable,
|
|
36
|
+
testID: testID
|
|
37
|
+
}, /*#__PURE__*/_react.default.createElement(_icons.Icon, {
|
|
38
|
+
color: iconColor,
|
|
39
|
+
name: name,
|
|
40
|
+
size: iconSize
|
|
41
|
+
}));
|
|
42
|
+
}
|
|
43
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
44
|
+
accessible: false,
|
|
45
|
+
style: styles.wrapper,
|
|
46
|
+
testID: testID
|
|
47
|
+
}, /*#__PURE__*/_react.default.createElement(_icons.Icon, {
|
|
48
|
+
accessibilityLabel: accessibilityLabel,
|
|
49
|
+
color: iconColor,
|
|
50
|
+
name: name,
|
|
51
|
+
size: iconSize
|
|
52
|
+
}));
|
|
53
|
+
}
|
|
54
|
+
const styles = _reactNative.StyleSheet.create({
|
|
55
|
+
pressable: {
|
|
56
|
+
alignItems: 'center',
|
|
57
|
+
justifyContent: 'center'
|
|
58
|
+
},
|
|
59
|
+
wrapper: {
|
|
60
|
+
alignItems: 'center',
|
|
61
|
+
justifyContent: 'center'
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
//# sourceMappingURL=SelectIcon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_icons","_theme","e","__esModule","default","SelectIcon","accessibilityLabel","color","name","onPress","size","testID","theme","useTheme","iconColor","colors","text","tertiary","iconSize","spacing","lg","hitSlop","React","useMemo","bottom","xs","left","right","top","createElement","Pressable","accessibilityRole","style","styles","pressable","Icon","View","accessible","wrapper","StyleSheet","create","alignItems","justifyContent"],"sourceRoot":"..\\..\\src","sources":["SelectIcon.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AAAyC,SAAAD,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAIlC,SAASG,UAAUA,CAAC;EACzBC,kBAAkB;EAClBC,KAAK;EACLC,IAAI;EACJC,OAAO;EACPC,IAAI;EACJC;AACe,CAAC,EAAe;EAC/B,MAAMC,KAAK,GAAG,IAAAC,eAAQ,EAAC,CAAC;EAExB,MAAMC,SAAS,GAAGP,KAAK,IAAIK,KAAK,CAACG,MAAM,CAACC,IAAI,CAACC,QAAQ;EACrD,MAAMC,QAAQ,GAAGR,IAAI,IAAIE,KAAK,CAACO,OAAO,CAACC,EAAE;EACzC,MAAMC,OAAO,GAAGC,cAAK,CAACC,OAAO,CAC3B,OAAO;IACLC,MAAM,EAAEZ,KAAK,CAACO,OAAO,CAACM,EAAE;IACxBC,IAAI,EAAEd,KAAK,CAACO,OAAO,CAACM,EAAE;IACtBE,KAAK,EAAEf,KAAK,CAACO,OAAO,CAACM,EAAE;IACvBG,GAAG,EAAEhB,KAAK,CAACO,OAAO,CAACM;EACrB,CAAC,CAAC,EACF,CAACb,KAAK,CAACO,OAAO,CAACM,EAAE,CACnB,CAAC;EAED,IAAIhB,OAAO,EAAE;IACX,oBACEb,MAAA,CAAAQ,OAAA,CAAAyB,aAAA,CAAC9B,YAAA,CAAA+B,SAAS;MACRxB,kBAAkB,EAAEA,kBAAkB,IAAIE,IAAK;MAC/CuB,iBAAiB,EAAC,QAAQ;MAC1BV,OAAO,EAAEA,OAAQ;MACjBZ,OAAO,EAAEA,OAAQ;MACjBuB,KAAK,EAAEC,MAAM,CAACC,SAAU;MACxBvB,MAAM,EAAEA;IAAO,gBAEff,MAAA,CAAAQ,OAAA,CAAAyB,aAAA,CAAC7B,MAAA,CAAAmC,IAAI;MAAC5B,KAAK,EAAEO,SAAU;MAACN,IAAI,EAAEA,IAAK;MAACE,IAAI,EAAEQ;IAAS,CAAE,CAC5C,CAAC;EAEhB;EAEA,oBACEtB,MAAA,CAAAQ,OAAA,CAAAyB,aAAA,CAAC9B,YAAA,CAAAqC,IAAI;IAACC,UAAU,EAAE,KAAM;IAACL,KAAK,EAAEC,MAAM,CAACK,OAAQ;IAAC3B,MAAM,EAAEA;EAAO,gBAC7Df,MAAA,CAAAQ,OAAA,CAAAyB,aAAA,CAAC7B,MAAA,CAAAmC,IAAI;IAAC7B,kBAAkB,EAAEA,kBAAmB;IAACC,KAAK,EAAEO,SAAU;IAACN,IAAI,EAAEA,IAAK;IAACE,IAAI,EAAEQ;EAAS,CAAE,CACzF,CAAC;AAEX;AAEA,MAAMe,MAAM,GAAGM,uBAAU,CAACC,MAAM,CAAC;EAC/BN,SAAS,EAAE;IACTO,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE;EAClB,CAAC;EACDJ,OAAO,EAAE;IACPG,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE;EAClB;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.SelectOptionItem = SelectOptionItem;
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _icons = require("@wecareu/icons");
|
|
10
|
+
var _theme = require("@wecareu/theme");
|
|
11
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
|
+
function SelectOptionItem({
|
|
13
|
+
disabled,
|
|
14
|
+
isMulti,
|
|
15
|
+
isSelected,
|
|
16
|
+
onPress,
|
|
17
|
+
option
|
|
18
|
+
}) {
|
|
19
|
+
const theme = (0, _theme.useTheme)();
|
|
20
|
+
const styles = _react.default.useMemo(() => createStyles(theme), [theme]);
|
|
21
|
+
const handlePress = _react.default.useCallback(() => {
|
|
22
|
+
if (!disabled) {
|
|
23
|
+
onPress(option);
|
|
24
|
+
}
|
|
25
|
+
}, [disabled, onPress, option]);
|
|
26
|
+
const resolvedLabelColor = option.labelColor ? option.labelColor : isSelected ? theme.colors.brand.primary : theme.colors.text.primary;
|
|
27
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.Pressable, {
|
|
28
|
+
accessibilityRole: "menuitem",
|
|
29
|
+
accessibilityState: {
|
|
30
|
+
disabled,
|
|
31
|
+
selected: isSelected
|
|
32
|
+
},
|
|
33
|
+
disabled: disabled,
|
|
34
|
+
onPress: handlePress,
|
|
35
|
+
style: ({
|
|
36
|
+
pressed
|
|
37
|
+
}) => [styles.container, option.color ? {
|
|
38
|
+
backgroundColor: option.color
|
|
39
|
+
} : isSelected && styles.containerSelected, disabled && styles.containerDisabled, pressed && !disabled && !option.color && styles.containerPressed]
|
|
40
|
+
}, option.flagCode ? /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
41
|
+
style: styles.iconWrapper
|
|
42
|
+
}, /*#__PURE__*/_react.default.createElement(_icons.FlagIcon, {
|
|
43
|
+
countryCode: option.flagCode,
|
|
44
|
+
size: theme.spacing.md + 2
|
|
45
|
+
})) : option.icon ? /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
46
|
+
style: styles.iconWrapper
|
|
47
|
+
}, /*#__PURE__*/_react.default.createElement(_icons.Icon, {
|
|
48
|
+
color: disabled ? theme.colors.text.disabled : resolvedLabelColor,
|
|
49
|
+
name: option.icon,
|
|
50
|
+
size: theme.spacing.lg
|
|
51
|
+
})) : null, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
52
|
+
style: styles.textWrapper
|
|
53
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
54
|
+
numberOfLines: 1,
|
|
55
|
+
style: [styles.label, {
|
|
56
|
+
color: disabled ? theme.colors.text.disabled : resolvedLabelColor
|
|
57
|
+
}, isSelected && !option.labelColor && styles.labelSelected, disabled && styles.labelDisabled]
|
|
58
|
+
}, option.label), option.description ? /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
59
|
+
numberOfLines: 2,
|
|
60
|
+
style: [styles.description, disabled && styles.descriptionDisabled]
|
|
61
|
+
}, option.description) : null), isMulti ? /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
62
|
+
style: [styles.checkbox, isSelected && styles.checkboxSelected, disabled && styles.checkboxDisabled]
|
|
63
|
+
}, isSelected ? /*#__PURE__*/_react.default.createElement(_icons.Icon, {
|
|
64
|
+
color: theme.colors.text.white,
|
|
65
|
+
name: "correct",
|
|
66
|
+
size: 12
|
|
67
|
+
}) : null) : isSelected ? /*#__PURE__*/_react.default.createElement(_icons.Icon, {
|
|
68
|
+
color: option.labelColor ?? theme.colors.brand.primary,
|
|
69
|
+
name: "correct",
|
|
70
|
+
size: theme.spacing.md
|
|
71
|
+
}) : null);
|
|
72
|
+
}
|
|
73
|
+
function createStyles(theme) {
|
|
74
|
+
return _reactNative.StyleSheet.create({
|
|
75
|
+
checkbox: {
|
|
76
|
+
alignItems: 'center',
|
|
77
|
+
borderColor: theme.colors.border.primary,
|
|
78
|
+
borderRadius: theme.radius.xs,
|
|
79
|
+
borderWidth: 1.5,
|
|
80
|
+
height: 20,
|
|
81
|
+
justifyContent: 'center',
|
|
82
|
+
width: 20
|
|
83
|
+
},
|
|
84
|
+
checkboxDisabled: {
|
|
85
|
+
borderColor: theme.colors.border.disabled
|
|
86
|
+
},
|
|
87
|
+
checkboxSelected: {
|
|
88
|
+
backgroundColor: theme.colors.brand.primary,
|
|
89
|
+
borderColor: theme.colors.brand.primary
|
|
90
|
+
},
|
|
91
|
+
container: {
|
|
92
|
+
alignItems: 'center',
|
|
93
|
+
flexDirection: 'row',
|
|
94
|
+
gap: theme.spacing.sm,
|
|
95
|
+
paddingHorizontal: theme.spacing.md,
|
|
96
|
+
paddingVertical: theme.spacing.sm
|
|
97
|
+
},
|
|
98
|
+
containerDisabled: {
|
|
99
|
+
opacity: 0.4
|
|
100
|
+
},
|
|
101
|
+
containerPressed: {
|
|
102
|
+
backgroundColor: theme.colors.surface.secondary
|
|
103
|
+
},
|
|
104
|
+
containerSelected: {
|
|
105
|
+
backgroundColor: theme.colors.surface.secondary
|
|
106
|
+
},
|
|
107
|
+
description: {
|
|
108
|
+
color: theme.colors.text.secondary,
|
|
109
|
+
fontFamily: theme.typography.fontFamily.caption,
|
|
110
|
+
fontSize: theme.typography.fontSize.xs,
|
|
111
|
+
lineHeight: theme.typography.lineHeight.labelSmall,
|
|
112
|
+
marginTop: 2
|
|
113
|
+
},
|
|
114
|
+
descriptionDisabled: {
|
|
115
|
+
color: theme.colors.text.disabled
|
|
116
|
+
},
|
|
117
|
+
iconWrapper: {
|
|
118
|
+
alignItems: 'center',
|
|
119
|
+
height: theme.spacing.lg,
|
|
120
|
+
justifyContent: 'center',
|
|
121
|
+
marginRight: theme.spacing.md,
|
|
122
|
+
width: theme.spacing.lg
|
|
123
|
+
},
|
|
124
|
+
label: {
|
|
125
|
+
fontFamily: theme.typography.fontFamily.body,
|
|
126
|
+
fontSize: theme.typography.fontSize.md,
|
|
127
|
+
lineHeight: theme.typography.lineHeight.bodySmall
|
|
128
|
+
},
|
|
129
|
+
labelDisabled: {
|
|
130
|
+
color: theme.colors.text.disabled
|
|
131
|
+
},
|
|
132
|
+
labelSelected: {
|
|
133
|
+
fontFamily: theme.typography.fontFamily.semibold
|
|
134
|
+
},
|
|
135
|
+
textWrapper: {
|
|
136
|
+
flex: 1
|
|
137
|
+
}
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
//# sourceMappingURL=SelectOption.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_icons","_theme","e","__esModule","default","SelectOptionItem","disabled","isMulti","isSelected","onPress","option","theme","useTheme","styles","React","useMemo","createStyles","handlePress","useCallback","resolvedLabelColor","labelColor","colors","brand","primary","text","createElement","Pressable","accessibilityRole","accessibilityState","selected","style","pressed","container","color","backgroundColor","containerSelected","containerDisabled","containerPressed","flagCode","View","iconWrapper","FlagIcon","countryCode","size","spacing","md","icon","Icon","name","lg","textWrapper","Text","numberOfLines","label","labelSelected","labelDisabled","description","descriptionDisabled","checkbox","checkboxSelected","checkboxDisabled","white","StyleSheet","create","alignItems","borderColor","border","borderRadius","radius","xs","borderWidth","height","justifyContent","width","flexDirection","gap","sm","paddingHorizontal","paddingVertical","opacity","surface","secondary","fontFamily","typography","caption","fontSize","lineHeight","labelSmall","marginTop","marginRight","body","bodySmall","semibold","flex"],"sourceRoot":"..\\..\\src","sources":["SelectOption.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.SelectSearch = SelectSearch;
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _icons = require("@wecareu/icons");
|
|
10
|
+
var _theme = require("@wecareu/theme");
|
|
11
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
|
+
const DEBOUNCE_MS = 200;
|
|
13
|
+
function SelectSearch({
|
|
14
|
+
onChangeText,
|
|
15
|
+
value
|
|
16
|
+
}) {
|
|
17
|
+
const theme = (0, _theme.useTheme)();
|
|
18
|
+
const styles = _react.default.useMemo(() => createStyles(theme), [theme]);
|
|
19
|
+
const debounceRef = _react.default.useRef(null);
|
|
20
|
+
const handleChangeText = _react.default.useCallback(text => {
|
|
21
|
+
if (debounceRef.current) {
|
|
22
|
+
clearTimeout(debounceRef.current);
|
|
23
|
+
}
|
|
24
|
+
debounceRef.current = setTimeout(() => {
|
|
25
|
+
onChangeText(text);
|
|
26
|
+
}, DEBOUNCE_MS);
|
|
27
|
+
}, [onChangeText]);
|
|
28
|
+
_react.default.useEffect(() => {
|
|
29
|
+
return () => {
|
|
30
|
+
if (debounceRef.current) {
|
|
31
|
+
clearTimeout(debounceRef.current);
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
}, []);
|
|
35
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
36
|
+
style: styles.container
|
|
37
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
38
|
+
style: styles.iconWrapper
|
|
39
|
+
}, /*#__PURE__*/_react.default.createElement(_icons.Icon, {
|
|
40
|
+
color: theme.colors.text.tertiary,
|
|
41
|
+
name: "search",
|
|
42
|
+
size: theme.spacing.md
|
|
43
|
+
})), /*#__PURE__*/_react.default.createElement(_reactNative.TextInput, {
|
|
44
|
+
accessibilityLabel: "Search options",
|
|
45
|
+
autoCapitalize: "none",
|
|
46
|
+
autoCorrect: false,
|
|
47
|
+
clearButtonMode: "while-editing",
|
|
48
|
+
defaultValue: value,
|
|
49
|
+
onChangeText: handleChangeText,
|
|
50
|
+
placeholderTextColor: theme.colors.text.tertiary,
|
|
51
|
+
returnKeyType: "search",
|
|
52
|
+
style: styles.input
|
|
53
|
+
}));
|
|
54
|
+
}
|
|
55
|
+
function createStyles(theme) {
|
|
56
|
+
return _reactNative.StyleSheet.create({
|
|
57
|
+
container: {
|
|
58
|
+
alignItems: 'center',
|
|
59
|
+
borderBottomColor: theme.colors.border.secondary,
|
|
60
|
+
borderBottomWidth: 1,
|
|
61
|
+
flexDirection: 'row',
|
|
62
|
+
marginBottom: theme.spacing.xs,
|
|
63
|
+
paddingHorizontal: theme.spacing.md,
|
|
64
|
+
paddingVertical: theme.spacing.sm
|
|
65
|
+
},
|
|
66
|
+
iconWrapper: {
|
|
67
|
+
marginRight: theme.spacing.xs
|
|
68
|
+
},
|
|
69
|
+
input: {
|
|
70
|
+
color: theme.colors.text.primary,
|
|
71
|
+
flex: 1,
|
|
72
|
+
fontFamily: theme.typography.fontFamily.body,
|
|
73
|
+
fontSize: theme.typography.fontSize.md,
|
|
74
|
+
lineHeight: theme.typography.lineHeight.bodySmall,
|
|
75
|
+
paddingVertical: theme.spacing.xs
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=SelectSearch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_icons","_theme","e","__esModule","default","DEBOUNCE_MS","SelectSearch","onChangeText","value","theme","useTheme","styles","React","useMemo","createStyles","debounceRef","useRef","handleChangeText","useCallback","text","current","clearTimeout","setTimeout","useEffect","createElement","View","style","container","iconWrapper","Icon","color","colors","tertiary","name","size","spacing","md","TextInput","accessibilityLabel","autoCapitalize","autoCorrect","clearButtonMode","defaultValue","placeholderTextColor","returnKeyType","input","StyleSheet","create","alignItems","borderBottomColor","border","secondary","borderBottomWidth","flexDirection","marginBottom","xs","paddingHorizontal","paddingVertical","sm","marginRight","primary","flex","fontFamily","typography","body","fontSize","lineHeight","bodySmall"],"sourceRoot":"..\\..\\src","sources":["SelectSearch.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.useShakeAnimation = useShakeAnimation;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
function useShakeAnimation({
|
|
10
|
+
distance = 6,
|
|
11
|
+
duration = 60,
|
|
12
|
+
iterations = 2
|
|
13
|
+
} = {}) {
|
|
14
|
+
const translation = (0, _react.useRef)(new _reactNative.Animated.Value(0)).current;
|
|
15
|
+
const animatedStyle = (0, _react.useMemo)(() => ({
|
|
16
|
+
transform: [{
|
|
17
|
+
translateX: translation.interpolate({
|
|
18
|
+
inputRange: [-1, -0.5, 0, 0.5, 1],
|
|
19
|
+
outputRange: [-distance, -distance / 2, 0, distance / 2, distance]
|
|
20
|
+
})
|
|
21
|
+
}]
|
|
22
|
+
}), [distance, translation]);
|
|
23
|
+
const triggerShake = (0, _react.useCallback)(() => {
|
|
24
|
+
translation.setValue(0);
|
|
25
|
+
const animation = _reactNative.Animated.sequence([_reactNative.Animated.timing(translation, {
|
|
26
|
+
duration,
|
|
27
|
+
toValue: 1,
|
|
28
|
+
useNativeDriver: true
|
|
29
|
+
}), _reactNative.Animated.timing(translation, {
|
|
30
|
+
duration,
|
|
31
|
+
toValue: -1,
|
|
32
|
+
useNativeDriver: true
|
|
33
|
+
})]);
|
|
34
|
+
_reactNative.Animated.loop(animation, {
|
|
35
|
+
iterations
|
|
36
|
+
}).start(() => {
|
|
37
|
+
translation.setValue(0);
|
|
38
|
+
});
|
|
39
|
+
}, [duration, iterations, translation]);
|
|
40
|
+
return {
|
|
41
|
+
animatedStyle,
|
|
42
|
+
triggerShake
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=shake.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","useShakeAnimation","distance","duration","iterations","translation","useRef","Animated","Value","current","animatedStyle","useMemo","transform","translateX","interpolate","inputRange","outputRange","triggerShake","useCallback","setValue","animation","sequence","timing","toValue","useNativeDriver","loop","start"],"sourceRoot":"..\\..\\..\\src","sources":["animations/shake.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,YAAA,GAAAD,OAAA;AA8BO,SAASE,iBAAiBA,CAAC;EAChCC,QAAQ,GAAG,CAAC;EACZC,QAAQ,GAAG,EAAE;EACbC,UAAU,GAAG;AACU,CAAC,GAAG,CAAC,CAAC,EAA2B;EACxD,MAAMC,WAAW,GAAG,IAAAC,aAAM,EAAC,IAAIC,qBAAQ,CAACC,KAAK,CAAC,CAAC,CAAC,CAAC,CAACC,OAAO;EAEzD,MAAMC,aAAa,GAAG,IAAAC,cAAO,EAC3B,OAAO;IACLC,SAAS,EAAE,CACT;MACEC,UAAU,EAAER,WAAW,CAACS,WAAW,CAAC;QAClCC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;QACjCC,WAAW,EAAE,CAAC,CAACd,QAAQ,EAAE,CAACA,QAAQ,GAAG,CAAC,EAAE,CAAC,EAAEA,QAAQ,GAAG,CAAC,EAAEA,QAAQ;MACnE,CAAC;IACH,CAAC;EAEL,CAAC,CAAC,EACF,CAACA,QAAQ,EAAEG,WAAW,CACxB,CAAC;EAED,MAAMY,YAAY,GAAG,IAAAC,kBAAW,EAAC,MAAM;IACrCb,WAAW,CAACc,QAAQ,CAAC,CAAC,CAAC;IAEvB,MAAMC,SAAS,GAAGb,qBAAQ,CAACc,QAAQ,CAAC,CAClCd,qBAAQ,CAACe,MAAM,CAACjB,WAAW,EAAE;MAC3BF,QAAQ;MACRoB,OAAO,EAAE,CAAC;MACVC,eAAe,EAAE;IACnB,CAAC,CAAC,EACFjB,qBAAQ,CAACe,MAAM,CAACjB,WAAW,EAAE;MAC3BF,QAAQ;MACRoB,OAAO,EAAE,CAAC,CAAC;MACXC,eAAe,EAAE;IACnB,CAAC,CAAC,CACH,CAAC;IAEFjB,qBAAQ,CAACkB,IAAI,CAACL,SAAS,EAAE;MAAEhB;IAAW,CAAC,CAAC,CAACsB,KAAK,CAAC,MAAM;MACnDrB,WAAW,CAACc,QAAQ,CAAC,CAAC,CAAC;IACzB,CAAC,CAAC;EACJ,CAAC,EAAE,CAAChB,QAAQ,EAAEC,UAAU,EAAEC,WAAW,CAAC,CAAC;EAEvC,OAAO;IAAEK,aAAa;IAAEO;EAAa,CAAC;AACxC","ignoreList":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "Select", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _Select.Select;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _Select = require("./Select");
|
|
13
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_Select","require"],"sourceRoot":"..\\..\\src","sources":["index.tsx"],"mappings":";;;;;;;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA","ignoreList":[]}
|