react-native-srschat 0.1.13 → 0.1.15
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/lib/commonjs/components/email.js +243 -0
- package/lib/commonjs/components/email.js.map +1 -0
- package/lib/commonjs/components/feedback.js +115 -0
- package/lib/commonjs/components/feedback.js.map +1 -0
- package/lib/commonjs/components/header.js +35 -17
- package/lib/commonjs/components/header.js.map +1 -1
- package/lib/commonjs/components/input.js +106 -0
- package/lib/commonjs/components/input.js.map +1 -0
- package/lib/commonjs/components/productCard.js +234 -0
- package/lib/commonjs/components/productCard.js.map +1 -0
- package/lib/commonjs/components/testing.js +19 -6
- package/lib/commonjs/components/testing.js.map +1 -1
- package/lib/commonjs/{layout/chatIcon.js → components/welcomeButton.js} +40 -37
- package/lib/commonjs/components/welcomeButton.js.map +1 -0
- package/lib/commonjs/components/welcomeInput.js +87 -0
- package/lib/commonjs/components/welcomeInput.js.map +1 -0
- package/lib/commonjs/contexts/AppContext.js +272 -56
- package/lib/commonjs/contexts/AppContext.js.map +1 -1
- package/lib/commonjs/hooks/{Stream.js → stream.js} +107 -39
- package/lib/commonjs/hooks/stream.js.map +1 -0
- package/lib/commonjs/hooks/useAsyncStorage.js +36 -0
- package/lib/commonjs/hooks/useAsyncStorage.js.map +1 -0
- package/lib/commonjs/index.js +13 -6
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/layout/disclaimer.js +200 -0
- package/lib/commonjs/layout/disclaimer.js.map +1 -0
- package/lib/commonjs/layout/ex.js +272 -0
- package/lib/commonjs/layout/ex.js.map +1 -0
- package/lib/commonjs/layout/icon.js +114 -0
- package/lib/commonjs/layout/icon.js.map +1 -0
- package/lib/commonjs/layout/layout.js +148 -14
- package/lib/commonjs/layout/layout.js.map +1 -1
- package/lib/commonjs/layout/welcome.js +135 -0
- package/lib/commonjs/layout/welcome.js.map +1 -0
- package/lib/commonjs/layout/window.js +205 -0
- package/lib/commonjs/layout/window.js.map +1 -0
- package/lib/module/components/email.js +233 -0
- package/lib/module/components/email.js.map +1 -0
- package/lib/module/components/feedback.js +105 -0
- package/lib/module/components/feedback.js.map +1 -0
- package/lib/module/components/header.js +35 -17
- package/lib/module/components/header.js.map +1 -1
- package/lib/module/components/input.js +96 -0
- package/lib/module/components/input.js.map +1 -0
- package/lib/module/components/productCard.js +225 -0
- package/lib/module/components/productCard.js.map +1 -0
- package/lib/module/components/testing.js +20 -7
- package/lib/module/components/testing.js.map +1 -1
- package/lib/module/components/welcomeButton.js +48 -0
- package/lib/module/components/welcomeButton.js.map +1 -0
- package/lib/module/components/welcomeInput.js +77 -0
- package/lib/module/components/welcomeInput.js.map +1 -0
- package/lib/module/contexts/AppContext.js +272 -57
- package/lib/module/contexts/AppContext.js.map +1 -1
- package/lib/module/hooks/{Stream.js → stream.js} +107 -39
- package/lib/module/hooks/stream.js.map +1 -0
- package/lib/module/hooks/useAsyncStorage.js +29 -0
- package/lib/module/hooks/useAsyncStorage.js.map +1 -0
- package/lib/module/index.js +13 -6
- package/lib/module/index.js.map +1 -1
- package/lib/module/layout/disclaimer.js +190 -0
- package/lib/module/layout/disclaimer.js.map +1 -0
- package/lib/module/layout/ex.js +262 -0
- package/lib/module/layout/ex.js.map +1 -0
- package/lib/module/layout/icon.js +104 -0
- package/lib/module/layout/icon.js.map +1 -0
- package/lib/module/layout/layout.js +150 -16
- package/lib/module/layout/layout.js.map +1 -1
- package/lib/module/layout/welcome.js +126 -0
- package/lib/module/layout/welcome.js.map +1 -0
- package/lib/module/layout/window.js +195 -0
- package/lib/module/layout/window.js.map +1 -0
- package/lib/typescript/components/email.d.ts +5 -0
- package/lib/typescript/components/email.d.ts.map +1 -0
- package/lib/typescript/components/feedback.d.ts +6 -0
- package/lib/typescript/components/feedback.d.ts.map +1 -0
- package/lib/typescript/components/header.d.ts.map +1 -1
- package/lib/typescript/components/input.d.ts +6 -0
- package/lib/typescript/components/input.d.ts.map +1 -0
- package/lib/typescript/components/productCard.d.ts +5 -0
- package/lib/typescript/components/productCard.d.ts.map +1 -0
- package/lib/typescript/components/testing.d.ts.map +1 -1
- package/lib/typescript/components/welcomeButton.d.ts +4 -0
- package/lib/typescript/components/welcomeButton.d.ts.map +1 -0
- package/lib/typescript/components/welcomeInput.d.ts +6 -0
- package/lib/typescript/components/welcomeInput.d.ts.map +1 -0
- package/lib/typescript/contexts/AppContext.d.ts +5 -1
- package/lib/typescript/contexts/AppContext.d.ts.map +1 -1
- package/lib/typescript/hooks/{Stream.d.ts → stream.d.ts} +1 -1
- package/lib/typescript/hooks/stream.d.ts.map +1 -0
- package/lib/typescript/hooks/useAsyncStorage.d.ts +2 -0
- package/lib/typescript/hooks/useAsyncStorage.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +2 -1
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/layout/disclaimer.d.ts +5 -0
- package/lib/typescript/layout/disclaimer.d.ts.map +1 -0
- package/lib/typescript/layout/ex.d.ts +3 -0
- package/lib/typescript/layout/ex.d.ts.map +1 -0
- package/lib/typescript/layout/{chatIcon.d.ts → icon.d.ts} +1 -1
- package/lib/typescript/layout/icon.d.ts.map +1 -0
- package/lib/typescript/layout/layout.d.ts +1 -4
- package/lib/typescript/layout/layout.d.ts.map +1 -1
- package/lib/typescript/layout/welcome.d.ts +5 -0
- package/lib/typescript/layout/welcome.d.ts.map +1 -0
- package/lib/typescript/layout/window.d.ts +5 -0
- package/lib/typescript/layout/window.d.ts.map +1 -0
- package/package.json +7 -1
- package/src/components/email.js +210 -0
- package/src/components/feedback.js +114 -0
- package/src/components/header.js +32 -17
- package/src/components/input.js +95 -0
- package/src/components/productCard.js +240 -0
- package/src/components/testing.js +17 -4
- package/src/components/welcomeButton.js +51 -0
- package/src/components/welcomeInput.js +81 -0
- package/src/contexts/AppContext.js +237 -52
- package/src/hooks/{Stream.js → stream.js} +123 -41
- package/src/hooks/useAsyncStorage.js +33 -0
- package/src/index.js +7 -3
- package/src/layout/disclaimer.js +187 -0
- package/src/layout/ex.js +251 -0
- package/src/layout/icon.js +96 -0
- package/src/layout/layout.js +137 -10
- package/src/layout/welcome.js +124 -0
- package/src/layout/window.js +194 -0
- package/lib/commonjs/hooks/Stream.js.map +0 -1
- package/lib/commonjs/layout/chatIcon.js.map +0 -1
- package/lib/commonjs/layout/chatWindow.js +0 -214
- package/lib/commonjs/layout/chatWindow.js.map +0 -1
- package/lib/module/hooks/Stream.js.map +0 -1
- package/lib/module/layout/chatIcon.js +0 -44
- package/lib/module/layout/chatIcon.js.map +0 -1
- package/lib/module/layout/chatWindow.js +0 -204
- package/lib/module/layout/chatWindow.js.map +0 -1
- package/lib/typescript/hooks/Stream.d.ts.map +0 -1
- package/lib/typescript/layout/chatIcon.d.ts.map +0 -1
- package/lib/typescript/layout/chatWindow.d.ts +0 -6
- package/lib/typescript/layout/chatWindow.d.ts.map +0 -1
- package/src/layout/chatIcon.js +0 -38
- package/src/layout/chatWindow.js +0 -207
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.ChatWindow = void 0;
|
|
7
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _header = require("../components/header");
|
|
10
|
+
var _AppContext = require("../contexts/AppContext");
|
|
11
|
+
var _Ionicons = _interopRequireDefault(require("react-native-vector-icons/Ionicons"));
|
|
12
|
+
var _reactNativeKeyboardAwareScrollView = require("react-native-keyboard-aware-scroll-view");
|
|
13
|
+
var _testing = require("../components/testing");
|
|
14
|
+
var _input = require("../components/input");
|
|
15
|
+
var _stream = require("../hooks/stream");
|
|
16
|
+
var _productCard = require("../components/productCard");
|
|
17
|
+
var _reactNativeMarkdownDisplay = _interopRequireDefault(require("react-native-markdown-display"));
|
|
18
|
+
var _feedback = require("../components/feedback");
|
|
19
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
20
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
21
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
22
|
+
const ChatWindow = ({
|
|
23
|
+
panHandlers
|
|
24
|
+
}) => {
|
|
25
|
+
const {
|
|
26
|
+
handleSend,
|
|
27
|
+
messages,
|
|
28
|
+
input,
|
|
29
|
+
setInput,
|
|
30
|
+
ghostMessage,
|
|
31
|
+
handleButtonClick,
|
|
32
|
+
onProductCardClick,
|
|
33
|
+
onAddToCartClick,
|
|
34
|
+
uiConfig
|
|
35
|
+
} = (0, _react.useContext)(_AppContext.AppContext);
|
|
36
|
+
const scrollViewRef = (0, _react.useRef)(null);
|
|
37
|
+
const fadeAnim = (0, _react.useRef)(new _reactNative.Animated.Value(0.6)).current;
|
|
38
|
+
(0, _react.useEffect)(() => {
|
|
39
|
+
if (scrollViewRef.current) {
|
|
40
|
+
setTimeout(() => {
|
|
41
|
+
scrollViewRef.current.scrollToEnd({
|
|
42
|
+
animated: false
|
|
43
|
+
});
|
|
44
|
+
}, 100);
|
|
45
|
+
}
|
|
46
|
+
}, []);
|
|
47
|
+
(0, _react.useEffect)(() => {
|
|
48
|
+
if (ghostMessage) {
|
|
49
|
+
_reactNative.Animated.loop(_reactNative.Animated.sequence([_reactNative.Animated.timing(fadeAnim, {
|
|
50
|
+
toValue: 1,
|
|
51
|
+
duration: 500,
|
|
52
|
+
useNativeDriver: false
|
|
53
|
+
}), _reactNative.Animated.timing(fadeAnim, {
|
|
54
|
+
toValue: 0.6,
|
|
55
|
+
duration: 500,
|
|
56
|
+
useNativeDriver: false
|
|
57
|
+
})])).start();
|
|
58
|
+
}
|
|
59
|
+
}, [ghostMessage]);
|
|
60
|
+
(0, _stream.useWebSocketMessage)();
|
|
61
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
62
|
+
style: styles.container
|
|
63
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.View, panHandlers, /*#__PURE__*/_react.default.createElement(_header.Header, null)), /*#__PURE__*/_react.default.createElement(_reactNativeKeyboardAwareScrollView.KeyboardAwareScrollView, {
|
|
64
|
+
ref: scrollViewRef,
|
|
65
|
+
contentContainerStyle: styles.messagesContent,
|
|
66
|
+
enableOnAndroid: true,
|
|
67
|
+
contentInsetAdjustmentBehavior: "never",
|
|
68
|
+
automaticallyAdjustContentInsets: false,
|
|
69
|
+
contentInset: {
|
|
70
|
+
bottom: 0
|
|
71
|
+
},
|
|
72
|
+
keyboardShouldPersistTaps: "always",
|
|
73
|
+
showsVerticalScrollIndicator: false,
|
|
74
|
+
extraScrollHeight: 0,
|
|
75
|
+
onContentSizeChange: () => {
|
|
76
|
+
var _scrollViewRef$curren;
|
|
77
|
+
(_scrollViewRef$curren = scrollViewRef.current) === null || _scrollViewRef$curren === void 0 || _scrollViewRef$curren.scrollToEnd({
|
|
78
|
+
animated: true
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
}, messages.map((msg, i) => /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
82
|
+
key: i,
|
|
83
|
+
style: styles.messageWrapper
|
|
84
|
+
}, msg.type !== "middle" && /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
85
|
+
style: [styles.messageBubble, msg.type === "user" ? styles.userMessage : styles.aiMessage]
|
|
86
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNativeMarkdownDisplay.default, {
|
|
87
|
+
style: {
|
|
88
|
+
body: {
|
|
89
|
+
color: msg.type === "user" ? "#ffffff" : "#161616",
|
|
90
|
+
fontSize: 16,
|
|
91
|
+
lineHeight: 22
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
}, msg.text), msg.type == 'ai' && i != 0 && msg.message_id && /*#__PURE__*/_react.default.createElement(_feedback.Feedback, {
|
|
95
|
+
message: msg,
|
|
96
|
+
messageId: msg.message_id
|
|
97
|
+
})), msg.products && msg.products.length > 0 && msg.products.map((prod, index) => /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
98
|
+
key: index,
|
|
99
|
+
style: styles.productCardWrapper
|
|
100
|
+
}, /*#__PURE__*/_react.default.createElement(_productCard.ProductCard, {
|
|
101
|
+
prod: prod
|
|
102
|
+
}))), msg.suggested_questions && Array.isArray(msg.questions) && msg.questions.map((question, index) => /*#__PURE__*/_react.default.createElement(_reactNative.TouchableOpacity, {
|
|
103
|
+
key: index,
|
|
104
|
+
style: styles.suggestedQuestionButton,
|
|
105
|
+
onPress: () => handleButtonClick(question)
|
|
106
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
107
|
+
style: styles.suggestedQuestionText
|
|
108
|
+
}, question))), ghostMessage && i === messages.length - 1 && /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
109
|
+
style: styles.ghostMessageContainer
|
|
110
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.Animated.View, {
|
|
111
|
+
style: [styles.ghostBar, styles.ghostBarShort, {
|
|
112
|
+
opacity: fadeAnim
|
|
113
|
+
}]
|
|
114
|
+
}), /*#__PURE__*/_react.default.createElement(_reactNative.Animated.View, {
|
|
115
|
+
style: [styles.ghostBar, styles.ghostBarLong, {
|
|
116
|
+
opacity: fadeAnim
|
|
117
|
+
}]
|
|
118
|
+
}), /*#__PURE__*/_react.default.createElement(_reactNative.Animated.View, {
|
|
119
|
+
style: [styles.ghostBar, styles.ghostBarMedium, {
|
|
120
|
+
opacity: fadeAnim
|
|
121
|
+
}]
|
|
122
|
+
}))))), /*#__PURE__*/_react.default.createElement(_reactNative.KeyboardAvoidingView, {
|
|
123
|
+
behavior: _reactNative.Platform.OS === 'ios' ? 'padding' : undefined,
|
|
124
|
+
keyboardVerticalOffset: _reactNative.Platform.OS === 'ios' ? 120 : 60
|
|
125
|
+
}, uiConfig.testButtons && /*#__PURE__*/_react.default.createElement(_testing.Testing, {
|
|
126
|
+
onProductCardClick: onProductCardClick,
|
|
127
|
+
onAddToCartClick: onAddToCartClick
|
|
128
|
+
}), /*#__PURE__*/_react.default.createElement(_input.ChatInput, null)));
|
|
129
|
+
};
|
|
130
|
+
exports.ChatWindow = ChatWindow;
|
|
131
|
+
const styles = _reactNative.StyleSheet.create({
|
|
132
|
+
container: {
|
|
133
|
+
flex: 1
|
|
134
|
+
},
|
|
135
|
+
messagesContent: {
|
|
136
|
+
padding: 16,
|
|
137
|
+
justifyContent: 'flex-end'
|
|
138
|
+
},
|
|
139
|
+
messageWrapper: {
|
|
140
|
+
marginBottom: 0
|
|
141
|
+
},
|
|
142
|
+
messageBubble: {
|
|
143
|
+
padding: 6,
|
|
144
|
+
paddingHorizontal: 16,
|
|
145
|
+
borderRadius: 12,
|
|
146
|
+
marginBottom: 5
|
|
147
|
+
},
|
|
148
|
+
userMessage: {
|
|
149
|
+
alignSelf: 'flex-end',
|
|
150
|
+
backgroundColor: "#003764",
|
|
151
|
+
color: "#ffffff"
|
|
152
|
+
},
|
|
153
|
+
aiMessage: {
|
|
154
|
+
alignSelf: 'flex-start',
|
|
155
|
+
backgroundColor: '#FFFFFF',
|
|
156
|
+
width: '100%'
|
|
157
|
+
},
|
|
158
|
+
productCardWrapper: {
|
|
159
|
+
marginTop: 5
|
|
160
|
+
},
|
|
161
|
+
suggestedQuestionButton: {
|
|
162
|
+
backgroundColor: "white",
|
|
163
|
+
borderWidth: 1,
|
|
164
|
+
borderColor: "#004687",
|
|
165
|
+
borderRadius: 18,
|
|
166
|
+
paddingVertical: 10,
|
|
167
|
+
paddingHorizontal: 16,
|
|
168
|
+
marginBottom: 7,
|
|
169
|
+
alignSelf: "flex-start"
|
|
170
|
+
},
|
|
171
|
+
suggestedQuestionText: {
|
|
172
|
+
color: "#004687",
|
|
173
|
+
fontSize: 13,
|
|
174
|
+
textAlign: "left"
|
|
175
|
+
},
|
|
176
|
+
ghostMessageContainer: {
|
|
177
|
+
alignSelf: 'flex-start',
|
|
178
|
+
width: '100%',
|
|
179
|
+
backgroundColor: "#FFFFFF",
|
|
180
|
+
borderRadius: 10,
|
|
181
|
+
borderTopLeftRadius: 0,
|
|
182
|
+
padding: 14,
|
|
183
|
+
marginVertical: 5
|
|
184
|
+
},
|
|
185
|
+
ghostBar: {
|
|
186
|
+
height: 20,
|
|
187
|
+
borderRadius: 10,
|
|
188
|
+
backgroundColor: "#ebebeb",
|
|
189
|
+
marginVertical: 3
|
|
190
|
+
},
|
|
191
|
+
ghostBarShort: {
|
|
192
|
+
width: "50%"
|
|
193
|
+
},
|
|
194
|
+
ghostBarMedium: {
|
|
195
|
+
width: "75%"
|
|
196
|
+
},
|
|
197
|
+
ghostBarLong: {
|
|
198
|
+
width: "100%"
|
|
199
|
+
}
|
|
200
|
+
});
|
|
201
|
+
{/* <Testing
|
|
202
|
+
onProductCardClick={onProductCardClick}
|
|
203
|
+
onAddToCartClick={onAddToCartClick}
|
|
204
|
+
/> */}
|
|
205
|
+
//# sourceMappingURL=window.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_header","_AppContext","_Ionicons","_interopRequireDefault","_reactNativeKeyboardAwareScrollView","_testing","_input","_stream","_productCard","_reactNativeMarkdownDisplay","_feedback","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ChatWindow","panHandlers","handleSend","messages","input","setInput","ghostMessage","handleButtonClick","onProductCardClick","onAddToCartClick","uiConfig","useContext","AppContext","scrollViewRef","useRef","fadeAnim","Animated","Value","current","useEffect","setTimeout","scrollToEnd","animated","loop","sequence","timing","toValue","duration","useNativeDriver","start","useWebSocketMessage","createElement","View","style","styles","container","Header","KeyboardAwareScrollView","ref","contentContainerStyle","messagesContent","enableOnAndroid","contentInsetAdjustmentBehavior","automaticallyAdjustContentInsets","contentInset","bottom","keyboardShouldPersistTaps","showsVerticalScrollIndicator","extraScrollHeight","onContentSizeChange","_scrollViewRef$curren","map","msg","key","messageWrapper","type","messageBubble","userMessage","aiMessage","body","color","fontSize","lineHeight","text","message_id","Feedback","message","messageId","products","length","prod","index","productCardWrapper","ProductCard","suggested_questions","Array","isArray","questions","question","TouchableOpacity","suggestedQuestionButton","onPress","Text","suggestedQuestionText","ghostMessageContainer","ghostBar","ghostBarShort","opacity","ghostBarLong","ghostBarMedium","KeyboardAvoidingView","behavior","Platform","OS","undefined","keyboardVerticalOffset","testButtons","Testing","ChatInput","exports","StyleSheet","create","flex","padding","justifyContent","marginBottom","paddingHorizontal","borderRadius","alignSelf","backgroundColor","width","marginTop","borderWidth","borderColor","paddingVertical","textAlign","borderTopLeftRadius","marginVertical","height"],"sourceRoot":"../../../src","sources":["layout/window.js"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
import React, { useState, useContext } from "react";
|
|
2
|
+
import { View, Text, TextInput, TouchableOpacity, ActivityIndicator, Alert, StyleSheet, ScrollView } from "react-native";
|
|
3
|
+
import Ionicons from "react-native-vector-icons/Ionicons";
|
|
4
|
+
import axios from "axios";
|
|
5
|
+
import { AppContext } from "../contexts/AppContext";
|
|
6
|
+
import { Header } from "./header";
|
|
7
|
+
export const EmailForm = ({
|
|
8
|
+
panHandlers
|
|
9
|
+
}) => {
|
|
10
|
+
const {
|
|
11
|
+
BASE_URL,
|
|
12
|
+
setShowModal,
|
|
13
|
+
messages,
|
|
14
|
+
formatChatHistory,
|
|
15
|
+
conversationStartTime
|
|
16
|
+
} = useContext(AppContext);
|
|
17
|
+
const [subject, setSubject] = useState("");
|
|
18
|
+
const [message, setMessage] = useState("");
|
|
19
|
+
const [userEmail, setUserEmail] = useState("");
|
|
20
|
+
const [branchEmail, setBranchEmail] = useState("");
|
|
21
|
+
const [isLoading, setIsLoading] = useState(false);
|
|
22
|
+
const [error, setError] = useState("");
|
|
23
|
+
const [success, setSuccess] = useState(false);
|
|
24
|
+
const [isComposing, setIsComposing] = useState(false);
|
|
25
|
+
const handleComposeEmail = async () => {
|
|
26
|
+
setIsComposing(true);
|
|
27
|
+
setError("");
|
|
28
|
+
try {
|
|
29
|
+
const chatHistory = formatChatHistory();
|
|
30
|
+
const payload = {
|
|
31
|
+
chat_history: chatHistory,
|
|
32
|
+
conversation_start_time: conversationStartTime,
|
|
33
|
+
customer_name: '',
|
|
34
|
+
branch_email: ""
|
|
35
|
+
};
|
|
36
|
+
const response = await axios.post(`https://${BASE_URL}/compose-email`, payload);
|
|
37
|
+
setMessage(response.data.message);
|
|
38
|
+
setSubject(response.data.subject || "");
|
|
39
|
+
} catch (error) {
|
|
40
|
+
var _error$response;
|
|
41
|
+
setError(((_error$response = error.response) === null || _error$response === void 0 || (_error$response = _error$response.data) === null || _error$response === void 0 ? void 0 : _error$response.message) || "Failed to compose email");
|
|
42
|
+
} finally {
|
|
43
|
+
setIsComposing(false);
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
const handleSubmit = async () => {
|
|
47
|
+
if (!userEmail || !subject || !message) {
|
|
48
|
+
setError("Please fill in all fields");
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
if (!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(userEmail)) {
|
|
52
|
+
setError("Please enter a valid email address");
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
setIsLoading(true);
|
|
56
|
+
try {
|
|
57
|
+
const chatHistory = formatChatHistory();
|
|
58
|
+
await axios.post(`https://${BASE_URL}/send-email`, {
|
|
59
|
+
user_email: 'cristin@instalily.ai',
|
|
60
|
+
subject,
|
|
61
|
+
message,
|
|
62
|
+
chat_history: chatHistory,
|
|
63
|
+
conversation_start_time: conversationStartTime,
|
|
64
|
+
customer_name: '',
|
|
65
|
+
branch_email: ""
|
|
66
|
+
});
|
|
67
|
+
setSuccess(true);
|
|
68
|
+
setTimeout(() => {
|
|
69
|
+
setSuccess(false);
|
|
70
|
+
setShowModal("ChatWindow");
|
|
71
|
+
}, 2000);
|
|
72
|
+
} catch (error) {
|
|
73
|
+
var _error$response2;
|
|
74
|
+
setError(((_error$response2 = error.response) === null || _error$response2 === void 0 || (_error$response2 = _error$response2.data) === null || _error$response2 === void 0 ? void 0 : _error$response2.message) || "Failed to send email");
|
|
75
|
+
} finally {
|
|
76
|
+
setIsLoading(false);
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
return /*#__PURE__*/React.createElement(View, {
|
|
80
|
+
style: styles.container
|
|
81
|
+
}, /*#__PURE__*/React.createElement(View, panHandlers, /*#__PURE__*/React.createElement(Header, null)), /*#__PURE__*/React.createElement(View, {
|
|
82
|
+
style: styles.topBar
|
|
83
|
+
}, /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
84
|
+
onPress: () => setShowModal("ChatWindow"),
|
|
85
|
+
style: styles.backButton
|
|
86
|
+
}, /*#__PURE__*/React.createElement(Ionicons, {
|
|
87
|
+
name: "arrow-back",
|
|
88
|
+
size: 20,
|
|
89
|
+
color: "#000"
|
|
90
|
+
})), /*#__PURE__*/React.createElement(Text, {
|
|
91
|
+
style: styles.topBarTitle
|
|
92
|
+
}, "Contact Us")), /*#__PURE__*/React.createElement(ScrollView, {
|
|
93
|
+
style: styles.content,
|
|
94
|
+
contentContainerStyle: {
|
|
95
|
+
paddingBottom: 100
|
|
96
|
+
} // Add padding to bottom
|
|
97
|
+
,
|
|
98
|
+
keyboardShouldPersistTaps: "handled",
|
|
99
|
+
showsVerticalScrollIndicator: true
|
|
100
|
+
}, /*#__PURE__*/React.createElement(Text, {
|
|
101
|
+
style: styles.infoText
|
|
102
|
+
}, "Our AI assistant can help draft a professional email based on your chat conversation. The email will capture your main points and maintain a conversational tone. You can review and modify before sending."), /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
103
|
+
style: styles.composeButton,
|
|
104
|
+
onPress: handleComposeEmail,
|
|
105
|
+
disabled: isComposing
|
|
106
|
+
}, isComposing ? /*#__PURE__*/React.createElement(ActivityIndicator, {
|
|
107
|
+
size: "small",
|
|
108
|
+
color: "#FFFFFF"
|
|
109
|
+
}) : /*#__PURE__*/React.createElement(Text, {
|
|
110
|
+
style: styles.buttonText
|
|
111
|
+
}, "Draft My Email")), /*#__PURE__*/React.createElement(TextInput, {
|
|
112
|
+
style: styles.input,
|
|
113
|
+
value: branchEmail,
|
|
114
|
+
editable: false,
|
|
115
|
+
placeholder: "Branch Email"
|
|
116
|
+
}), /*#__PURE__*/React.createElement(TextInput, {
|
|
117
|
+
style: styles.input,
|
|
118
|
+
value: userEmail,
|
|
119
|
+
onChangeText: setUserEmail,
|
|
120
|
+
placeholder: "Your Email"
|
|
121
|
+
}), /*#__PURE__*/React.createElement(TextInput, {
|
|
122
|
+
style: styles.input,
|
|
123
|
+
value: subject,
|
|
124
|
+
onChangeText: setSubject,
|
|
125
|
+
placeholder: "Subject"
|
|
126
|
+
}), /*#__PURE__*/React.createElement(TextInput, {
|
|
127
|
+
style: styles.textArea,
|
|
128
|
+
value: message,
|
|
129
|
+
onChangeText: setMessage,
|
|
130
|
+
placeholder: "Message",
|
|
131
|
+
multiline: true
|
|
132
|
+
}), error ? /*#__PURE__*/React.createElement(Text, {
|
|
133
|
+
style: styles.errorText
|
|
134
|
+
}, error) : null, success ? /*#__PURE__*/React.createElement(Text, {
|
|
135
|
+
style: styles.successText
|
|
136
|
+
}, "Email sent successfully!") : null, /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
137
|
+
style: styles.sendButton,
|
|
138
|
+
onPress: handleSubmit,
|
|
139
|
+
disabled: isLoading
|
|
140
|
+
}, isLoading ? /*#__PURE__*/React.createElement(ActivityIndicator, {
|
|
141
|
+
size: "small",
|
|
142
|
+
color: "#FFFFFF"
|
|
143
|
+
}) : /*#__PURE__*/React.createElement(Text, {
|
|
144
|
+
style: styles.buttonText
|
|
145
|
+
}, "Send Email"))));
|
|
146
|
+
};
|
|
147
|
+
const styles = StyleSheet.create({
|
|
148
|
+
container: {
|
|
149
|
+
flex: 1
|
|
150
|
+
},
|
|
151
|
+
content: {
|
|
152
|
+
padding: 20,
|
|
153
|
+
paddingTop: 5,
|
|
154
|
+
paddingBottom: 40,
|
|
155
|
+
marginBottom: 40
|
|
156
|
+
},
|
|
157
|
+
topBar: {
|
|
158
|
+
flexDirection: 'row',
|
|
159
|
+
alignItems: 'center',
|
|
160
|
+
paddingVertical: 10,
|
|
161
|
+
paddingHorizontal: 16,
|
|
162
|
+
marginTop: 10
|
|
163
|
+
},
|
|
164
|
+
backButton: {
|
|
165
|
+
padding: 8,
|
|
166
|
+
borderRadius: 20,
|
|
167
|
+
backgroundColor: '#FFF'
|
|
168
|
+
},
|
|
169
|
+
topBarTitle: {
|
|
170
|
+
fontSize: 18,
|
|
171
|
+
fontWeight: 'medium',
|
|
172
|
+
marginLeft: 12
|
|
173
|
+
},
|
|
174
|
+
infoText: {
|
|
175
|
+
textAlign: "left",
|
|
176
|
+
color: "#666",
|
|
177
|
+
fontSize: 15,
|
|
178
|
+
lineHeight: 22,
|
|
179
|
+
marginBottom: 20
|
|
180
|
+
},
|
|
181
|
+
input: {
|
|
182
|
+
backgroundColor: "#f5f5f5",
|
|
183
|
+
borderRadius: 8,
|
|
184
|
+
padding: 12,
|
|
185
|
+
fontSize: 16,
|
|
186
|
+
borderWidth: 1,
|
|
187
|
+
borderColor: "#e0e0e0",
|
|
188
|
+
marginBottom: 10
|
|
189
|
+
},
|
|
190
|
+
textArea: {
|
|
191
|
+
backgroundColor: "#f5f5f5",
|
|
192
|
+
borderRadius: 8,
|
|
193
|
+
padding: 12,
|
|
194
|
+
fontSize: 16,
|
|
195
|
+
borderWidth: 1,
|
|
196
|
+
borderColor: "#e0e0e0",
|
|
197
|
+
marginBottom: 10,
|
|
198
|
+
height: 180,
|
|
199
|
+
textAlignVertical: "top"
|
|
200
|
+
},
|
|
201
|
+
composeButton: {
|
|
202
|
+
backgroundColor: "#367CB6",
|
|
203
|
+
borderRadius: 5,
|
|
204
|
+
padding: 12,
|
|
205
|
+
alignItems: "center",
|
|
206
|
+
marginBottom: 20
|
|
207
|
+
},
|
|
208
|
+
sendButton: {
|
|
209
|
+
backgroundColor: "#367CB6",
|
|
210
|
+
borderRadius: 5,
|
|
211
|
+
padding: 12,
|
|
212
|
+
alignItems: "center",
|
|
213
|
+
marginTop: 20
|
|
214
|
+
},
|
|
215
|
+
buttonText: {
|
|
216
|
+
color: "#FFF",
|
|
217
|
+
fontSize: 16,
|
|
218
|
+
fontWeight: "500"
|
|
219
|
+
},
|
|
220
|
+
errorText: {
|
|
221
|
+
color: "red",
|
|
222
|
+
fontSize: 14,
|
|
223
|
+
textAlign: "center",
|
|
224
|
+
marginTop: 10
|
|
225
|
+
},
|
|
226
|
+
successText: {
|
|
227
|
+
color: "green",
|
|
228
|
+
fontSize: 14,
|
|
229
|
+
textAlign: "center",
|
|
230
|
+
marginTop: 10
|
|
231
|
+
}
|
|
232
|
+
});
|
|
233
|
+
//# sourceMappingURL=email.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useState","useContext","View","Text","TextInput","TouchableOpacity","ActivityIndicator","Alert","StyleSheet","ScrollView","Ionicons","axios","AppContext","Header","EmailForm","panHandlers","BASE_URL","setShowModal","messages","formatChatHistory","conversationStartTime","subject","setSubject","message","setMessage","userEmail","setUserEmail","branchEmail","setBranchEmail","isLoading","setIsLoading","error","setError","success","setSuccess","isComposing","setIsComposing","handleComposeEmail","chatHistory","payload","chat_history","conversation_start_time","customer_name","branch_email","response","post","data","_error$response","handleSubmit","test","user_email","setTimeout","_error$response2","createElement","style","styles","container","topBar","onPress","backButton","name","size","color","topBarTitle","content","contentContainerStyle","paddingBottom","keyboardShouldPersistTaps","showsVerticalScrollIndicator","infoText","composeButton","disabled","buttonText","input","value","editable","placeholder","onChangeText","textArea","multiline","errorText","successText","sendButton","create","flex","padding","paddingTop","marginBottom","flexDirection","alignItems","paddingVertical","paddingHorizontal","marginTop","borderRadius","backgroundColor","fontSize","fontWeight","marginLeft","textAlign","lineHeight","borderWidth","borderColor","height","textAlignVertical"],"sourceRoot":"../../../src","sources":["components/email.js"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import React, { useContext } from "react";
|
|
2
|
+
import { View, Text, TouchableOpacity, TextInput, StyleSheet } from "react-native";
|
|
3
|
+
import Ionicons from "react-native-vector-icons/Ionicons";
|
|
4
|
+
import { AppContext } from "../contexts/AppContext";
|
|
5
|
+
import Feather from "react-native-vector-icons/Feather";
|
|
6
|
+
export const Feedback = ({
|
|
7
|
+
message,
|
|
8
|
+
messageId
|
|
9
|
+
}) => {
|
|
10
|
+
const {
|
|
11
|
+
handleFeedback,
|
|
12
|
+
feedback,
|
|
13
|
+
handleWrittenFeedback,
|
|
14
|
+
feedbackOpen,
|
|
15
|
+
setFeedbackOpen,
|
|
16
|
+
writeFeedback,
|
|
17
|
+
setWriteFeedback,
|
|
18
|
+
switchFeedbackOpen
|
|
19
|
+
} = useContext(AppContext);
|
|
20
|
+
return /*#__PURE__*/React.createElement(View, {
|
|
21
|
+
style: styles.container
|
|
22
|
+
}, /*#__PURE__*/React.createElement(View, {
|
|
23
|
+
style: styles.iconContainer
|
|
24
|
+
}, /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
25
|
+
onPress: () => handleFeedback(1, messageId)
|
|
26
|
+
}, /*#__PURE__*/React.createElement(Feather, {
|
|
27
|
+
name: "thumbs-up",
|
|
28
|
+
size: 18,
|
|
29
|
+
color: feedback[messageId] === 1 ? "#367CB6" : "#808080",
|
|
30
|
+
style: styles.icon
|
|
31
|
+
})), /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
32
|
+
onPress: () => handleFeedback(-1, messageId)
|
|
33
|
+
}, /*#__PURE__*/React.createElement(Feather, {
|
|
34
|
+
name: "thumbs-down",
|
|
35
|
+
size: 18,
|
|
36
|
+
color: feedback[messageId] === -1 ? "#367CB6" : "#808080",
|
|
37
|
+
style: styles.icon
|
|
38
|
+
}))), feedbackOpen[messageId] == true && /*#__PURE__*/React.createElement(View, {
|
|
39
|
+
style: styles.feedbackSection
|
|
40
|
+
}, /*#__PURE__*/React.createElement(TextInput, {
|
|
41
|
+
multiline: true,
|
|
42
|
+
numberOfLines: 3,
|
|
43
|
+
placeholder: "Enter your feedback...",
|
|
44
|
+
style: styles.textInput,
|
|
45
|
+
value: writeFeedback,
|
|
46
|
+
onChangeText: setWriteFeedback
|
|
47
|
+
}), /*#__PURE__*/React.createElement(View, {
|
|
48
|
+
style: styles.buttonContainer
|
|
49
|
+
}, /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
50
|
+
style: styles.button,
|
|
51
|
+
onPress: () => switchFeedbackOpen(false, messageId, true)
|
|
52
|
+
}, /*#__PURE__*/React.createElement(Text, {
|
|
53
|
+
style: styles.buttonText
|
|
54
|
+
}, "Close")), /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
55
|
+
style: styles.button,
|
|
56
|
+
onPress: () => handleWrittenFeedback(messageId)
|
|
57
|
+
}, /*#__PURE__*/React.createElement(Text, {
|
|
58
|
+
style: styles.buttonText
|
|
59
|
+
}, "Send")))));
|
|
60
|
+
};
|
|
61
|
+
const styles = StyleSheet.create({
|
|
62
|
+
container: {
|
|
63
|
+
marginTop: 0,
|
|
64
|
+
marginBottom: 5
|
|
65
|
+
},
|
|
66
|
+
iconContainer: {
|
|
67
|
+
flexDirection: "row",
|
|
68
|
+
alignItems: "center",
|
|
69
|
+
justifyContent: 'flex-end'
|
|
70
|
+
},
|
|
71
|
+
icon: {
|
|
72
|
+
marginRight: 10
|
|
73
|
+
},
|
|
74
|
+
feedbackSection: {
|
|
75
|
+
marginTop: 10
|
|
76
|
+
},
|
|
77
|
+
textInput: {
|
|
78
|
+
width: "100%",
|
|
79
|
+
borderWidth: 1,
|
|
80
|
+
borderColor: "#808080",
|
|
81
|
+
borderRadius: 5,
|
|
82
|
+
padding: 10,
|
|
83
|
+
fontSize: 14,
|
|
84
|
+
color: "#161616",
|
|
85
|
+
backgroundColor: "#fff"
|
|
86
|
+
},
|
|
87
|
+
buttonContainer: {
|
|
88
|
+
flexDirection: "row",
|
|
89
|
+
justifyContent: "flex-end",
|
|
90
|
+
marginTop: 5
|
|
91
|
+
},
|
|
92
|
+
button: {
|
|
93
|
+
backgroundColor: "#367CB6",
|
|
94
|
+
paddingVertical: 8,
|
|
95
|
+
paddingHorizontal: 15,
|
|
96
|
+
borderRadius: 5,
|
|
97
|
+
marginLeft: 10
|
|
98
|
+
},
|
|
99
|
+
buttonText: {
|
|
100
|
+
color: "white",
|
|
101
|
+
fontSize: 14,
|
|
102
|
+
textTransform: "none"
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
//# sourceMappingURL=feedback.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useContext","View","Text","TouchableOpacity","TextInput","StyleSheet","Ionicons","AppContext","Feather","Feedback","message","messageId","handleFeedback","feedback","handleWrittenFeedback","feedbackOpen","setFeedbackOpen","writeFeedback","setWriteFeedback","switchFeedbackOpen","createElement","style","styles","container","iconContainer","onPress","name","size","color","icon","feedbackSection","multiline","numberOfLines","placeholder","textInput","value","onChangeText","buttonContainer","button","buttonText","create","marginTop","marginBottom","flexDirection","alignItems","justifyContent","marginRight","width","borderWidth","borderColor","borderRadius","padding","fontSize","backgroundColor","paddingVertical","paddingHorizontal","marginLeft","textTransform"],"sourceRoot":"../../../src","sources":["components/feedback.js"],"mappings":"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","ignoreList":[]}
|