react-native-srschat 0.1.45 → 0.1.47

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 (40) hide show
  1. package/README.md +6 -2
  2. package/lib/commonjs/components/input.js +1 -2
  3. package/lib/commonjs/components/input.js.map +1 -1
  4. package/lib/commonjs/components/productCard.js +5 -3
  5. package/lib/commonjs/components/productCard.js.map +1 -1
  6. package/lib/commonjs/contexts/AppContext.js +8 -2
  7. package/lib/commonjs/contexts/AppContext.js.map +1 -1
  8. package/lib/commonjs/layout/ex.js +252 -270
  9. package/lib/commonjs/layout/ex.js.map +1 -1
  10. package/lib/commonjs/layout/window.js +48 -14
  11. package/lib/commonjs/layout/window.js.map +1 -1
  12. package/lib/commonjs/utils/storage.js +2 -1
  13. package/lib/commonjs/utils/storage.js.map +1 -1
  14. package/lib/module/components/input.js +1 -2
  15. package/lib/module/components/input.js.map +1 -1
  16. package/lib/module/components/productCard.js +5 -3
  17. package/lib/module/components/productCard.js.map +1 -1
  18. package/lib/module/contexts/AppContext.js +8 -2
  19. package/lib/module/contexts/AppContext.js.map +1 -1
  20. package/lib/module/layout/ex.js +252 -261
  21. package/lib/module/layout/ex.js.map +1 -1
  22. package/lib/module/layout/window.js +48 -14
  23. package/lib/module/layout/window.js.map +1 -1
  24. package/lib/module/utils/storage.js +2 -1
  25. package/lib/module/utils/storage.js.map +1 -1
  26. package/lib/typescript/components/productCard.d.ts +2 -1
  27. package/lib/typescript/components/productCard.d.ts.map +1 -1
  28. package/lib/typescript/contexts/AppContext.d.ts.map +1 -1
  29. package/lib/typescript/layout/ex.d.ts +0 -2
  30. package/lib/typescript/layout/ex.d.ts.map +1 -1
  31. package/lib/typescript/layout/window.d.ts.map +1 -1
  32. package/lib/typescript/utils/storage.d.ts +1 -0
  33. package/lib/typescript/utils/storage.d.ts.map +1 -1
  34. package/package.json +1 -1
  35. package/src/components/input.js +0 -1
  36. package/src/components/productCard.js +4 -3
  37. package/src/contexts/AppContext.js +10 -2
  38. package/src/layout/ex.js +250 -249
  39. package/src/layout/window.js +41 -8
  40. package/src/utils/storage.ts +3 -1
@@ -1,262 +1,253 @@
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, { useState, useEffect, useContext, useRef } from 'react';
3
- import { Text, StyleSheet, View, TextInput, TouchableOpacity, Platform, KeyboardAvoidingView, Keyboard, Animated, PanResponder, Pressable } from 'react-native';
4
- import { Header } from '../components/header';
5
- import { AppContext } from '../contexts/AppContext';
6
- import Ionicons from 'react-native-vector-icons/Ionicons';
7
- import { KeyboardAwareScrollView } from 'react-native-keyboard-aware-scroll-view';
8
- import { Testing } from '../components/testing';
9
- import { ChatInput } from '../components/input';
10
- import { useWebSocketMessage } from '../hooks/Stream';
11
- import { ProductCard } from '../components/productCard';
12
- import Markdown from 'react-native-markdown-display';
13
- export const ChatWindow = () => {
14
- const {
15
- handleSend,
16
- messages,
17
- input,
18
- setInput,
19
- ghostMessage,
20
- handleButtonClick,
21
- setShowModal
22
- } = useContext(AppContext);
23
- const scrollViewRef = useRef(null);
24
- const fadeAnim = useRef(new Animated.Value(0.6)).current;
25
- const panY = useRef(new Animated.Value(0)).current;
26
- const isDragging = useRef(false);
27
- useEffect(() => {
28
- if (scrollViewRef.current) {
29
- setTimeout(() => {
30
- scrollViewRef.current.scrollToEnd({
31
- animated: false
32
- });
33
- }, 100);
34
- }
35
- }, []);
36
- useEffect(() => {
37
- if (ghostMessage) {
38
- Animated.loop(Animated.sequence([Animated.timing(fadeAnim, {
39
- toValue: 1,
40
- duration: 500,
41
- useNativeDriver: false
42
- }), Animated.timing(fadeAnim, {
43
- toValue: 0.6,
44
- duration: 500,
45
- useNativeDriver: false
46
- })])).start();
47
- }
48
- }, [ghostMessage]);
49
- useWebSocketMessage();
50
- const headerPanResponder = PanResponder.create({
51
- onStartShouldSetPanResponder: () => true,
52
- onMoveShouldSetPanResponder: () => true,
53
- onPanResponderGrant: () => {
54
- isDragging.current = true;
55
- },
56
- onPanResponderMove: (evt, gestureState) => {
57
- if (isDragging.current && gestureState.dy > 0) {
58
- // Downward swipe
59
- panY.setValue(gestureState.dy);
60
- }
61
- },
62
- onPanResponderRelease: (evt, gestureState) => {
63
- if (gestureState.dy > 100) {
64
- // Swiped down enough
65
- handleClick();
66
- } else {
67
- Animated.spring(panY, {
68
- toValue: 0,
69
- useNativeDriver: false
70
- }).start();
71
- }
72
- isDragging.current = false;
73
- }
74
- });
75
- const handleClick = () => {
76
- if ((uiConfig.showIcon ?? true) !== true) {
77
- setShowModal("Off");
78
- } else {
79
- setShowModal("Icon");
80
- }
81
- };
82
- return /*#__PURE__*/React.createElement(View, {
83
- style: styles.overlay
84
- }, /*#__PURE__*/React.createElement(Pressable, {
85
- style: styles.outsideTouchable,
86
- onPress: () => handleClick()
87
- }), /*#__PURE__*/React.createElement(Animated.View, {
88
- style: [styles.container, {
89
- transform: [{
90
- translateY: panY
91
- }]
92
- }]
93
- }, /*#__PURE__*/React.createElement(View, _extends({
94
- style: styles.headerContainer
95
- }, headerPanResponder.panHandlers), /*#__PURE__*/React.createElement(Header, null)), /*#__PURE__*/React.createElement(KeyboardAwareScrollView, {
96
- ref: scrollViewRef,
97
- contentContainerStyle: styles.messagesContent,
98
- enableOnAndroid: true,
99
- contentInsetAdjustmentBehavior: "never",
100
- automaticallyAdjustContentInsets: false,
101
- contentInset: {
102
- bottom: 0
103
- },
104
- keyboardShouldPersistTaps: "always",
105
- showsVerticalScrollIndicator: false,
106
- extraScrollHeight: 0,
107
- onContentSizeChange: () => {
108
- var _scrollViewRef$curren;
109
- (_scrollViewRef$curren = scrollViewRef.current) === null || _scrollViewRef$curren === void 0 || _scrollViewRef$curren.scrollToEnd({
110
- animated: true
111
- });
112
- }
113
- }, messages.map((msg, i) => /*#__PURE__*/React.createElement(View, {
114
- key: i,
115
- style: styles.messageWrapper
116
- }, msg.type !== "middle" && /*#__PURE__*/React.createElement(View, {
117
- style: [styles.messageBubble, msg.type === "user" ? styles.userMessage : styles.aiMessage]
118
- }, /*#__PURE__*/React.createElement(Markdown, {
119
- style: {
120
- body: {
121
- color: msg.type === "user" ? "#ffffff" : "#161616",
122
- fontSize: 16,
123
- lineHeight: 22
124
- }
125
- }
126
- }, msg.text)), msg.products && msg.products.length > 0 && msg.products.map((prod, index) => /*#__PURE__*/React.createElement(View, {
127
- key: index,
128
- style: styles.productCardWrapper
129
- }, /*#__PURE__*/React.createElement(ProductCard, {
130
- prod: prod
131
- }))), msg.suggested_questions && Array.isArray(msg.questions) && msg.questions.map((question, index) => /*#__PURE__*/React.createElement(TouchableOpacity, {
132
- key: index,
133
- style: styles.suggestedQuestionButton,
134
- onPress: () => handleButtonClick(question)
135
- }, /*#__PURE__*/React.createElement(Text, {
136
- style: styles.suggestedQuestionText
137
- }, question))), ghostMessage && i === messages.length - 1 && /*#__PURE__*/React.createElement(View, {
138
- style: styles.ghostMessageContainer
139
- }, /*#__PURE__*/React.createElement(Animated.View, {
140
- style: [styles.ghostBar, styles.ghostBarShort, {
141
- opacity: fadeAnim
142
- }]
143
- }), /*#__PURE__*/React.createElement(Animated.View, {
144
- style: [styles.ghostBar, styles.ghostBarLong, {
145
- opacity: fadeAnim
146
- }]
147
- }), /*#__PURE__*/React.createElement(Animated.View, {
148
- style: [styles.ghostBar, styles.ghostBarMedium, {
149
- opacity: fadeAnim
150
- }]
151
- }))))), /*#__PURE__*/React.createElement(KeyboardAvoidingView, {
152
- behavior: Platform.OS === 'ios' ? 'padding' : undefined,
153
- keyboardVerticalOffset: Platform.OS === 'ios' ? 120 : 60
154
- }, /*#__PURE__*/React.createElement(ChatInput, null))));
155
- };
156
- const styles = StyleSheet.create({
157
- overlay: {
158
- flex: 1,
159
- position: 'absolute',
160
- left: 0,
161
- right: 0,
162
- top: 0,
163
- bottom: 0,
164
- backgroundColor: 'rgba(0, 0, 0, 0.3)',
165
- justifyContent: 'flex-end'
166
- },
167
- outsideTouchable: {
168
- flex: 1 // Takes up the space above the chat, allows clicking to close
169
- },
170
- container: {
171
- flex: 1,
172
- backgroundColor: '#f6f6f6',
173
- position: 'absolute',
174
- zIndex: 1000,
175
- left: 0,
176
- right: 0,
177
- bottom: 0,
178
- top: 140,
179
- pointerEvents: 'box-none',
180
- borderTopWidth: 1,
181
- borderTopColor: '#DDD',
182
- borderTopLeftRadius: 16,
183
- borderTopRightRadius: 16,
184
- overflow: 'hidden'
185
- },
186
- headerContainer: {
187
- alignItems: "center",
188
- backgroundColor: "#f6f6f6",
189
- borderTopLeftRadius: 16,
190
- borderTopRightRadius: 16
191
- },
192
- messagesContent: {
193
- padding: 16,
194
- justifyContent: 'flex-end'
195
- },
196
- messageWrapper: {
197
- marginBottom: 0
198
- },
199
- messageBubble: {
200
- padding: 6,
201
- paddingHorizontal: 16,
202
- borderRadius: 12,
203
- marginBottom: 5
204
- },
205
- userMessage: {
206
- alignSelf: 'flex-end',
207
- backgroundColor: "#003764",
208
- color: "#ffffff"
209
- },
210
- aiMessage: {
211
- alignSelf: 'flex-start',
212
- backgroundColor: '#FFFFFF',
213
- width: '100%'
214
- },
215
- productCardWrapper: {
216
- marginTop: 5
217
- },
218
- suggestedQuestionButton: {
219
- backgroundColor: "white",
220
- borderWidth: 1,
221
- borderColor: "#004687",
222
- borderRadius: 18,
223
- paddingVertical: 10,
224
- paddingHorizontal: 16,
225
- marginBottom: 7,
226
- alignSelf: "flex-start"
227
- },
228
- suggestedQuestionText: {
229
- color: "#004687",
230
- fontSize: 13,
231
- textAlign: "left"
232
- },
233
- ghostMessageContainer: {
234
- alignSelf: 'flex-start',
235
- width: '100%',
236
- backgroundColor: "#FFFFFF",
237
- borderRadius: 10,
238
- borderTopLeftRadius: 0,
239
- padding: 14,
240
- marginVertical: 5
241
- },
242
- ghostBar: {
243
- height: 20,
244
- borderRadius: 10,
245
- backgroundColor: "#ebebeb",
246
- marginVertical: 3
247
- },
248
- ghostBarShort: {
249
- width: "50%"
250
- },
251
- ghostBarMedium: {
252
- width: "75%"
253
- },
254
- ghostBarLong: {
255
- width: "100%"
256
- }
257
- });
258
- {/* <Testing
259
- onProductCardClick={onProductCardClick}
260
- onAddToCartClick={onAddToCartClick}
261
- /> */}
1
+ // import React, { useState, useEffect, useContext, useRef } from 'react';
2
+ // import { Text, StyleSheet, View, TextInput, TouchableOpacity, Platform, KeyboardAvoidingView,
3
+ // Keyboard, Animated, PanResponder, Pressable } from 'react-native';
4
+ // import { Header } from '../components/header';
5
+ // import { AppContext } from '../contexts/AppContext';
6
+ // import Ionicons from 'react-native-vector-icons/Ionicons';
7
+ // import { KeyboardAwareScrollView } from 'react-native-keyboard-aware-scroll-view';
8
+ // import { Testing } from '../components/testing';
9
+ // import { ChatInput } from '../components/input';
10
+ // import { useWebSocketMessage } from '../hooks/Stream';
11
+ // import { ProductCard } from '../components/productCard'
12
+ // import Markdown from 'react-native-markdown-display';
13
+
14
+ // export const ChatWindow = () => {
15
+ // const { handleSend, messages, input, setInput, ghostMessage, handleButtonClick, setShowModal } = useContext(AppContext);
16
+
17
+ // const scrollViewRef = useRef(null);
18
+ // const fadeAnim = useRef(new Animated.Value(0.6)).current;
19
+ // const panY = useRef(new Animated.Value(0)).current;
20
+ // const isDragging = useRef(false);
21
+
22
+ // useEffect(() => {
23
+ // if (scrollViewRef.current) {
24
+ // setTimeout(() => {
25
+ // scrollViewRef.current.scrollToEnd({ animated: false });
26
+ // }, 100);
27
+ // }
28
+ // }, []);
29
+
30
+ // useEffect(() => {
31
+ // if (ghostMessage) {
32
+ // Animated.loop(
33
+ // Animated.sequence([
34
+ // Animated.timing(fadeAnim, { toValue: 1, duration: 500, useNativeDriver: false }),
35
+ // Animated.timing(fadeAnim, { toValue: 0.6, duration: 500, useNativeDriver: false }),
36
+ // ])
37
+ // ).start();
38
+ // }
39
+ // }, [ghostMessage]);
40
+
41
+ // useWebSocketMessage()
42
+
43
+ // const headerPanResponder = PanResponder.create({
44
+ // onStartShouldSetPanResponder: () => true,
45
+ // onMoveShouldSetPanResponder: () => true,
46
+ // onPanResponderGrant: () => {
47
+ // isDragging.current = true;
48
+ // },
49
+ // onPanResponderMove: (evt, gestureState) => {
50
+ // if (isDragging.current && gestureState.dy > 0) { // Downward swipe
51
+ // panY.setValue(gestureState.dy);
52
+ // }
53
+ // },
54
+ // onPanResponderRelease: (evt, gestureState) => {
55
+ // if (gestureState.dy > 100) { // Swiped down enough
56
+ // handleClick()
57
+ // } else {
58
+ // Animated.spring(panY, { toValue: 0, useNativeDriver: false }).start();
59
+ // }
60
+ // isDragging.current = false;
61
+ // },
62
+ // });
63
+
64
+ // const handleClick = () => {
65
+ // if ((uiConfig.showIcon ?? true) !== true) {
66
+ // setShowModal("Off");
67
+ // } else {
68
+ // setShowModal("Icon");
69
+ // }
70
+ // };
71
+
72
+ // return (
73
+ // <View style={styles.overlay}>
74
+ // {/* Click outside chat to close */}
75
+ // <Pressable style={styles.outsideTouchable} onPress={() => handleClick()} />
76
+
77
+ // <Animated.View style={[styles.container, { transform: [{ translateY: panY }] }]}>
78
+ // {/* Header - Only this section triggers drag-to-close */}
79
+ // <View style={styles.headerContainer} {...headerPanResponder.panHandlers}>
80
+ // <Header />
81
+ // </View>
82
+
83
+ // {/* Messages area */}
84
+ // <KeyboardAwareScrollView
85
+ // ref={scrollViewRef}
86
+ // contentContainerStyle={styles.messagesContent}
87
+ // enableOnAndroid
88
+ // contentInsetAdjustmentBehavior="never"
89
+ // automaticallyAdjustContentInsets={false}
90
+ // contentInset={{ bottom: 0 }}
91
+ // keyboardShouldPersistTaps="always"
92
+ // showsVerticalScrollIndicator={false}
93
+ // extraScrollHeight={0}
94
+ // onContentSizeChange={() => {
95
+ // scrollViewRef.current?.scrollToEnd({ animated: true });
96
+ // }}
97
+ // >
98
+ // {messages.map((msg, i) => (
99
+
100
+ // <View key={i} style={styles.messageWrapper}>
101
+ // {msg.type !== "middle" && (
102
+ // <View style={[ styles.messageBubble, msg.type === "user" ? styles.userMessage : styles.aiMessage,]}>
103
+ // <Markdown style={{ body: { color: msg.type === "user" ? "#ffffff" : "#161616",fontSize: 16, lineHeight: 22 }}}>
104
+ // {msg.text}
105
+ // </Markdown>
106
+ // </View>
107
+ // )}
108
+
109
+ // {msg.products && msg.products.length > 0 &&
110
+ // msg.products.map((prod, index) => (
111
+ // <View key={index} style={styles.productCardWrapper}>
112
+ // <ProductCard prod={prod} />
113
+ // </View>
114
+ // ))}
115
+
116
+ // {msg.suggested_questions && Array.isArray(msg.questions) && msg.questions.map((question, index) => (
117
+ // <TouchableOpacity key={index} style={styles.suggestedQuestionButton}
118
+ // onPress={() => handleButtonClick(question)}>
119
+ // <Text style={styles.suggestedQuestionText}>{question}</Text>
120
+ // </TouchableOpacity>
121
+ // ))}
122
+
123
+ // {ghostMessage && i === messages.length - 1 && (
124
+ // <View style={styles.ghostMessageContainer}>
125
+ // <Animated.View style={[styles.ghostBar, styles.ghostBarShort, { opacity: fadeAnim }]} />
126
+ // <Animated.View style={[styles.ghostBar, styles.ghostBarLong, { opacity: fadeAnim }]} />
127
+ // <Animated.View style={[styles.ghostBar, styles.ghostBarMedium, { opacity: fadeAnim }]} />
128
+ // </View>
129
+ // )}
130
+ // </View>
131
+ // ))}
132
+
133
+ // <KeyboardAvoidingView
134
+ // behavior={Platform.OS === 'ios' ? 'padding' : undefined}
135
+ // keyboardVerticalOffset={Platform.OS === 'ios' ? 120 : 60}
136
+ // >
137
+ // <ChatInput/>
138
+ // </KeyboardAvoidingView>
139
+ // </KeyboardAwareScrollView>
140
+
141
+ // </Animated.View>
142
+ // </View>
143
+ // );
144
+ // };
145
+
146
+ // const styles = StyleSheet.create({
147
+ // overlay: {
148
+ // flex: 1,
149
+ // position: 'absolute',
150
+ // left: 0,
151
+ // right: 0,
152
+ // top: 0,
153
+ // bottom: 0,
154
+ // backgroundColor: 'rgba(0, 0, 0, 0.3)',
155
+ // justifyContent: 'flex-end',
156
+ // },
157
+ // outsideTouchable: {
158
+ // flex: 1, // Takes up the space above the chat, allows clicking to close
159
+ // },
160
+ // container: {
161
+ // flex: 1,
162
+ // backgroundColor: '#f6f6f6',
163
+ // position: 'absolute',
164
+ // zIndex: 1000,
165
+ // left: 0,
166
+ // right: 0,
167
+ // bottom: 0,
168
+ // top: 140,
169
+ // pointerEvents: 'box-none',
170
+ // borderTopWidth: 1,
171
+ // borderTopColor: '#DDD',
172
+ // borderTopLeftRadius: 16,
173
+ // borderTopRightRadius: 16,
174
+ // overflow: 'hidden',
175
+ // },
176
+ // headerContainer: {
177
+ // alignItems: "center",
178
+ // backgroundColor: "#f6f6f6",
179
+ // borderTopLeftRadius: 16,
180
+ // borderTopRightRadius: 16,
181
+ // },
182
+ // messagesContent: {
183
+ // padding: 16,
184
+ // justifyContent: 'flex-end',
185
+ // },
186
+ // messageWrapper: {
187
+ // marginBottom: 0,
188
+ // },
189
+ // messageBubble: {
190
+ // padding: 6,
191
+ // paddingHorizontal: 16,
192
+ // borderRadius: 12,
193
+ // marginBottom: 5
194
+ // },
195
+ // userMessage: {
196
+ // alignSelf: 'flex-end',
197
+ // backgroundColor: "#003764",
198
+ // color: "#ffffff"
199
+ // },
200
+ // aiMessage: {
201
+ // alignSelf: 'flex-start',
202
+ // backgroundColor: '#FFFFFF',
203
+ // width: '100%',
204
+ // },
205
+ // productCardWrapper: {
206
+ // marginTop: 5,
207
+ // },
208
+ // suggestedQuestionButton: {
209
+ // backgroundColor: "white",
210
+ // borderWidth: 1,
211
+ // borderColor: "#004687",
212
+ // borderRadius: 18,
213
+ // paddingVertical: 10,
214
+ // paddingHorizontal: 16,
215
+ // marginBottom: 7,
216
+ // alignSelf: "flex-start",
217
+ // },
218
+ // suggestedQuestionText: {
219
+ // color: "#004687",
220
+ // fontSize: 13,
221
+ // textAlign: "left",
222
+ // },
223
+ // ghostMessageContainer: {
224
+ // alignSelf: 'flex-start',
225
+ // width: '100%',
226
+ // backgroundColor: "#FFFFFF",
227
+ // borderRadius: 10,
228
+ // borderTopLeftRadius: 0,
229
+ // padding: 14,
230
+ // marginVertical: 5,
231
+ // },
232
+ // ghostBar: {
233
+ // height: 20,
234
+ // borderRadius: 10,
235
+ // backgroundColor: "#ebebeb",
236
+ // marginVertical: 3,
237
+ // },
238
+ // ghostBarShort: {
239
+ // width: "50%",
240
+ // },
241
+ // ghostBarMedium: {
242
+ // width: "75%",
243
+ // },
244
+ // ghostBarLong: {
245
+ // width: "100%",
246
+ // },
247
+ // });
248
+
249
+ // {/* <Testing
250
+ // onProductCardClick={onProductCardClick}
251
+ // onAddToCartClick={onAddToCartClick}
252
+ // /> */}
262
253
  //# sourceMappingURL=ex.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","useState","useEffect","useContext","useRef","Text","StyleSheet","View","TextInput","TouchableOpacity","Platform","KeyboardAvoidingView","Keyboard","Animated","PanResponder","Pressable","Header","AppContext","Ionicons","KeyboardAwareScrollView","Testing","ChatInput","useWebSocketMessage","ProductCard","Markdown","ChatWindow","handleSend","messages","input","setInput","ghostMessage","handleButtonClick","setShowModal","scrollViewRef","fadeAnim","Value","current","panY","isDragging","setTimeout","scrollToEnd","animated","loop","sequence","timing","toValue","duration","useNativeDriver","start","headerPanResponder","create","onStartShouldSetPanResponder","onMoveShouldSetPanResponder","onPanResponderGrant","onPanResponderMove","evt","gestureState","dy","setValue","onPanResponderRelease","handleClick","spring","uiConfig","showIcon","createElement","style","styles","overlay","outsideTouchable","onPress","container","transform","translateY","_extends","headerContainer","panHandlers","ref","contentContainerStyle","messagesContent","enableOnAndroid","contentInsetAdjustmentBehavior","automaticallyAdjustContentInsets","contentInset","bottom","keyboardShouldPersistTaps","showsVerticalScrollIndicator","extraScrollHeight","onContentSizeChange","_scrollViewRef$curren","map","msg","i","key","messageWrapper","type","messageBubble","userMessage","aiMessage","body","color","fontSize","lineHeight","text","products","length","prod","index","productCardWrapper","suggested_questions","Array","isArray","questions","question","suggestedQuestionButton","suggestedQuestionText","ghostMessageContainer","ghostBar","ghostBarShort","opacity","ghostBarLong","ghostBarMedium","behavior","OS","undefined","keyboardVerticalOffset","flex","position","left","right","top","backgroundColor","justifyContent","zIndex","pointerEvents","borderTopWidth","borderTopColor","borderTopLeftRadius","borderTopRightRadius","overflow","alignItems","padding","marginBottom","paddingHorizontal","borderRadius","alignSelf","width","marginTop","borderWidth","borderColor","paddingVertical","textAlign","marginVertical","height"],"sourceRoot":"../../../src","sources":["layout/ex.js"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":[],"sourceRoot":"../../../src","sources":["layout/ex.js"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA","ignoreList":[]}