react-native-srschat 0.1.0 → 0.1.2
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/dist/commonjs/index.js +163 -0
- package/dist/commonjs/index.js.map +1 -0
- package/dist/module/index.js +155 -0
- package/dist/module/index.js.map +1 -0
- package/dist/typescript/index.d.ts +13 -0
- package/dist/typescript/index.d.ts.map +1 -0
- package/package.json +61 -172
- package/src/index.tsx +189 -4
- package/README.md +0 -33
- package/android/generated/android/app/build/generated/source/codegen/jni/CMakeLists.txt +0 -36
- package/android/generated/android/app/build/generated/source/codegen/jni/RNSrschatSpec-generated.cpp +0 -22
- package/android/generated/android/app/build/generated/source/codegen/jni/RNSrschatSpec.h +0 -24
- package/android/generated/android/app/build/generated/source/codegen/jni/react/renderer/components/RNSrschatSpec/RNSrschatSpecJSI-generated.cpp +0 -17
- package/android/generated/android/app/build/generated/source/codegen/jni/react/renderer/components/RNSrschatSpec/RNSrschatSpecJSI.h +0 -19
- package/ios/generated/build/generated/ios/FBReactNativeSpec/FBReactNativeSpec-generated.mm +0 -2321
- package/ios/generated/build/generated/ios/FBReactNativeSpec/FBReactNativeSpec.h +0 -2761
- package/ios/generated/build/generated/ios/FBReactNativeSpecJSI-generated.cpp +0 -2923
- package/ios/generated/build/generated/ios/FBReactNativeSpecJSI.h +0 -7718
- package/ios/generated/build/generated/ios/RCTModulesConformingToProtocolsProvider.h +0 -18
- package/ios/generated/build/generated/ios/RCTModulesConformingToProtocolsProvider.mm +0 -33
- package/ios/generated/build/generated/ios/RNSrschatSpec/RNSrschatSpec-generated.mm +0 -16
- package/ios/generated/build/generated/ios/RNSrschatSpec/RNSrschatSpec.h +0 -35
- package/ios/generated/build/generated/ios/RNSrschatSpecJSI-generated.cpp +0 -17
- package/ios/generated/build/generated/ios/RNSrschatSpecJSI.h +0 -19
- package/lib/commonjs/components/Chat.js +0 -43
- package/lib/commonjs/components/Chat.js.map +0 -1
- package/lib/commonjs/components/ChatInput.js +0 -64
- package/lib/commonjs/components/ChatInput.js.map +0 -1
- package/lib/commonjs/components/ChatMessage.js +0 -58
- package/lib/commonjs/components/ChatMessage.js.map +0 -1
- package/lib/commonjs/index.js +0 -37
- package/lib/commonjs/index.js.map +0 -1
- package/lib/commonjs/types.js +0 -2
- package/lib/commonjs/types.js.map +0 -1
- package/lib/module/components/Chat.js +0 -39
- package/lib/module/components/Chat.js.map +0 -1
- package/lib/module/components/ChatInput.js +0 -60
- package/lib/module/components/ChatInput.js.map +0 -1
- package/lib/module/components/ChatMessage.js +0 -54
- package/lib/module/components/ChatMessage.js.map +0 -1
- package/lib/module/index.js +0 -8
- package/lib/module/index.js.map +0 -1
- package/lib/module/types.js +0 -2
- package/lib/module/types.js.map +0 -1
- package/lib/typescript/commonjs/package.json +0 -1
- package/lib/typescript/commonjs/src/components/Chat.d.ts +0 -3
- package/lib/typescript/commonjs/src/components/Chat.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ChatInput.d.ts +0 -6
- package/lib/typescript/commonjs/src/components/ChatInput.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/components/ChatMessage.d.ts +0 -8
- package/lib/typescript/commonjs/src/components/ChatMessage.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/index.d.ts +0 -4
- package/lib/typescript/commonjs/src/index.d.ts.map +0 -1
- package/lib/typescript/commonjs/src/types.d.ts +0 -12
- package/lib/typescript/commonjs/src/types.d.ts.map +0 -1
- package/lib/typescript/module/package.json +0 -1
- package/lib/typescript/module/src/components/Chat.d.ts +0 -3
- package/lib/typescript/module/src/components/Chat.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ChatInput.d.ts +0 -6
- package/lib/typescript/module/src/components/ChatInput.d.ts.map +0 -1
- package/lib/typescript/module/src/components/ChatMessage.d.ts +0 -8
- package/lib/typescript/module/src/components/ChatMessage.d.ts.map +0 -1
- package/lib/typescript/module/src/index.d.ts +0 -4
- package/lib/typescript/module/src/index.d.ts.map +0 -1
- package/lib/typescript/module/src/types.d.ts +0 -12
- package/lib/typescript/module/src/types.d.ts.map +0 -1
- package/src/components/Chat.tsx +0 -34
- package/src/components/ChatInput.tsx +0 -58
- package/src/components/ChatMessage.tsx +0 -51
- package/src/types.ts +0 -12
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.Chat = void 0;
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
|
+
const defaultTheme = {
|
|
11
|
+
primaryColor: '#007AFF',
|
|
12
|
+
backgroundColor: '#FFFFFF',
|
|
13
|
+
textColor: '#000000'
|
|
14
|
+
};
|
|
15
|
+
const Chat = ({
|
|
16
|
+
onSendMessage,
|
|
17
|
+
theme = defaultTheme
|
|
18
|
+
}) => {
|
|
19
|
+
const [message, setMessage] = _react.default.useState('');
|
|
20
|
+
const [messages, setMessages] = _react.default.useState([]);
|
|
21
|
+
const handleSend = async () => {
|
|
22
|
+
if (!message.trim()) {
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
setMessages(prev => [...prev, {
|
|
26
|
+
text: message,
|
|
27
|
+
fromUser: true
|
|
28
|
+
}]);
|
|
29
|
+
setMessage('');
|
|
30
|
+
const response = await onSendMessage(message);
|
|
31
|
+
setMessages(prev => [...prev, {
|
|
32
|
+
text: response,
|
|
33
|
+
fromUser: false
|
|
34
|
+
}]);
|
|
35
|
+
};
|
|
36
|
+
const containerStyle = [styles.container, {
|
|
37
|
+
backgroundColor: theme.backgroundColor
|
|
38
|
+
}];
|
|
39
|
+
const getMessageStyle = fromUser => [styles.messageBubble, fromUser ? styles.userMessage : styles.botMessage, {
|
|
40
|
+
backgroundColor: fromUser ? theme.primaryColor : '#E8E8E8'
|
|
41
|
+
}];
|
|
42
|
+
const getTextStyle = fromUser => [styles.messageText, {
|
|
43
|
+
color: fromUser ? '#fff' : theme.textColor
|
|
44
|
+
}];
|
|
45
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.SafeAreaView, {
|
|
46
|
+
style: containerStyle,
|
|
47
|
+
testID: "chat-container"
|
|
48
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.KeyboardAvoidingView, {
|
|
49
|
+
behavior: _reactNative.Platform.OS === 'ios' ? 'padding' : 'height',
|
|
50
|
+
style: styles.content
|
|
51
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.ScrollView, {
|
|
52
|
+
style: styles.messagesContainer
|
|
53
|
+
}, messages.map((msg, i) => /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
54
|
+
key: i,
|
|
55
|
+
style: getMessageStyle(msg.fromUser)
|
|
56
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
57
|
+
style: getTextStyle(msg.fromUser)
|
|
58
|
+
}, msg.text)))), /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
59
|
+
style: styles.inputContainer
|
|
60
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.TextInput, {
|
|
61
|
+
style: [styles.input, {
|
|
62
|
+
color: theme.textColor
|
|
63
|
+
}],
|
|
64
|
+
value: message,
|
|
65
|
+
onChangeText: setMessage,
|
|
66
|
+
placeholder: "Type a message...",
|
|
67
|
+
placeholderTextColor: "#999"
|
|
68
|
+
}), /*#__PURE__*/_react.default.createElement(_reactNative.Button, {
|
|
69
|
+
title: "Send",
|
|
70
|
+
onPress: handleSend,
|
|
71
|
+
color: theme.primaryColor
|
|
72
|
+
}))));
|
|
73
|
+
};
|
|
74
|
+
exports.Chat = Chat;
|
|
75
|
+
const styles = _reactNative.StyleSheet.create({
|
|
76
|
+
container: {
|
|
77
|
+
flex: 1,
|
|
78
|
+
backgroundColor: '#FFFFFF'
|
|
79
|
+
},
|
|
80
|
+
content: {
|
|
81
|
+
flex: 1,
|
|
82
|
+
backgroundColor: '#F8F9FA'
|
|
83
|
+
},
|
|
84
|
+
messagesContainer: {
|
|
85
|
+
flex: 1,
|
|
86
|
+
padding: 20,
|
|
87
|
+
paddingTop: 30
|
|
88
|
+
},
|
|
89
|
+
messageBubble: {
|
|
90
|
+
maxWidth: '85%',
|
|
91
|
+
padding: 16,
|
|
92
|
+
borderRadius: 20,
|
|
93
|
+
marginBottom: 16,
|
|
94
|
+
backgroundColor: '#FFFFFF',
|
|
95
|
+
shadowColor: '#000',
|
|
96
|
+
shadowOffset: {
|
|
97
|
+
width: 0,
|
|
98
|
+
height: 2
|
|
99
|
+
},
|
|
100
|
+
shadowOpacity: 0.05,
|
|
101
|
+
shadowRadius: 8,
|
|
102
|
+
elevation: 3
|
|
103
|
+
},
|
|
104
|
+
userMessage: {
|
|
105
|
+
alignSelf: 'flex-end',
|
|
106
|
+
backgroundColor: '#FFFFFF',
|
|
107
|
+
borderWidth: 1,
|
|
108
|
+
borderColor: 'rgba(0, 0, 0, 0.04)'
|
|
109
|
+
},
|
|
110
|
+
botMessage: {
|
|
111
|
+
alignSelf: 'flex-start',
|
|
112
|
+
backgroundColor: '#FFFFFF',
|
|
113
|
+
borderWidth: 1,
|
|
114
|
+
borderColor: 'rgba(0, 0, 0, 0.04)'
|
|
115
|
+
},
|
|
116
|
+
messageText: {
|
|
117
|
+
fontSize: 15,
|
|
118
|
+
lineHeight: 22,
|
|
119
|
+
fontWeight: '400',
|
|
120
|
+
color: '#2C2C2E',
|
|
121
|
+
letterSpacing: 0.2
|
|
122
|
+
},
|
|
123
|
+
inputContainer: {
|
|
124
|
+
flexDirection: 'row',
|
|
125
|
+
alignItems: 'center',
|
|
126
|
+
paddingHorizontal: 16,
|
|
127
|
+
paddingVertical: 12,
|
|
128
|
+
backgroundColor: '#FFFFFF',
|
|
129
|
+
borderTopWidth: 1,
|
|
130
|
+
borderTopColor: 'rgba(0, 0, 0, 0.06)',
|
|
131
|
+
shadowColor: '#000',
|
|
132
|
+
shadowOffset: {
|
|
133
|
+
width: 0,
|
|
134
|
+
height: -8
|
|
135
|
+
},
|
|
136
|
+
shadowOpacity: 0.04,
|
|
137
|
+
shadowRadius: 12,
|
|
138
|
+
elevation: 8,
|
|
139
|
+
marginTop: 'auto'
|
|
140
|
+
},
|
|
141
|
+
input: {
|
|
142
|
+
flex: 1,
|
|
143
|
+
backgroundColor: '#F8F9FA',
|
|
144
|
+
borderRadius: 16,
|
|
145
|
+
borderWidth: 1,
|
|
146
|
+
borderColor: 'rgba(0, 0, 0, 0.06)',
|
|
147
|
+
paddingHorizontal: 20,
|
|
148
|
+
paddingVertical: 12,
|
|
149
|
+
marginRight: 12,
|
|
150
|
+
fontSize: 15,
|
|
151
|
+
maxHeight: 120,
|
|
152
|
+
color: '#2C2C2E',
|
|
153
|
+
shadowColor: '#000',
|
|
154
|
+
shadowOffset: {
|
|
155
|
+
width: 0,
|
|
156
|
+
height: 1
|
|
157
|
+
},
|
|
158
|
+
shadowOpacity: 0.04,
|
|
159
|
+
shadowRadius: 4,
|
|
160
|
+
elevation: 2
|
|
161
|
+
}
|
|
162
|
+
});
|
|
163
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","e","__esModule","default","defaultTheme","primaryColor","backgroundColor","textColor","Chat","onSendMessage","theme","message","setMessage","React","useState","messages","setMessages","handleSend","trim","prev","text","fromUser","response","containerStyle","styles","container","getMessageStyle","messageBubble","userMessage","botMessage","getTextStyle","messageText","color","createElement","SafeAreaView","style","testID","KeyboardAvoidingView","behavior","Platform","OS","content","ScrollView","messagesContainer","map","msg","i","View","key","Text","inputContainer","TextInput","input","value","onChangeText","placeholder","placeholderTextColor","Button","title","onPress","exports","StyleSheet","create","flex","padding","paddingTop","maxWidth","borderRadius","marginBottom","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","elevation","alignSelf","borderWidth","borderColor","fontSize","lineHeight","fontWeight","letterSpacing","flexDirection","alignItems","paddingHorizontal","paddingVertical","borderTopWidth","borderTopColor","marginTop","marginRight","maxHeight"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { SafeAreaView, Text, StyleSheet, View, TextInput, ScrollView, KeyboardAvoidingView, Platform, Button } from 'react-native';
|
|
3
|
+
const defaultTheme = {
|
|
4
|
+
primaryColor: '#007AFF',
|
|
5
|
+
backgroundColor: '#FFFFFF',
|
|
6
|
+
textColor: '#000000'
|
|
7
|
+
};
|
|
8
|
+
export const Chat = ({
|
|
9
|
+
onSendMessage,
|
|
10
|
+
theme = defaultTheme
|
|
11
|
+
}) => {
|
|
12
|
+
const [message, setMessage] = React.useState('');
|
|
13
|
+
const [messages, setMessages] = React.useState([]);
|
|
14
|
+
const handleSend = async () => {
|
|
15
|
+
if (!message.trim()) {
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
setMessages(prev => [...prev, {
|
|
19
|
+
text: message,
|
|
20
|
+
fromUser: true
|
|
21
|
+
}]);
|
|
22
|
+
setMessage('');
|
|
23
|
+
const response = await onSendMessage(message);
|
|
24
|
+
setMessages(prev => [...prev, {
|
|
25
|
+
text: response,
|
|
26
|
+
fromUser: false
|
|
27
|
+
}]);
|
|
28
|
+
};
|
|
29
|
+
const containerStyle = [styles.container, {
|
|
30
|
+
backgroundColor: theme.backgroundColor
|
|
31
|
+
}];
|
|
32
|
+
const getMessageStyle = fromUser => [styles.messageBubble, fromUser ? styles.userMessage : styles.botMessage, {
|
|
33
|
+
backgroundColor: fromUser ? theme.primaryColor : '#E8E8E8'
|
|
34
|
+
}];
|
|
35
|
+
const getTextStyle = fromUser => [styles.messageText, {
|
|
36
|
+
color: fromUser ? '#fff' : theme.textColor
|
|
37
|
+
}];
|
|
38
|
+
return /*#__PURE__*/React.createElement(SafeAreaView, {
|
|
39
|
+
style: containerStyle,
|
|
40
|
+
testID: "chat-container"
|
|
41
|
+
}, /*#__PURE__*/React.createElement(KeyboardAvoidingView, {
|
|
42
|
+
behavior: Platform.OS === 'ios' ? 'padding' : 'height',
|
|
43
|
+
style: styles.content
|
|
44
|
+
}, /*#__PURE__*/React.createElement(ScrollView, {
|
|
45
|
+
style: styles.messagesContainer
|
|
46
|
+
}, messages.map((msg, i) => /*#__PURE__*/React.createElement(View, {
|
|
47
|
+
key: i,
|
|
48
|
+
style: getMessageStyle(msg.fromUser)
|
|
49
|
+
}, /*#__PURE__*/React.createElement(Text, {
|
|
50
|
+
style: getTextStyle(msg.fromUser)
|
|
51
|
+
}, msg.text)))), /*#__PURE__*/React.createElement(View, {
|
|
52
|
+
style: styles.inputContainer
|
|
53
|
+
}, /*#__PURE__*/React.createElement(TextInput, {
|
|
54
|
+
style: [styles.input, {
|
|
55
|
+
color: theme.textColor
|
|
56
|
+
}],
|
|
57
|
+
value: message,
|
|
58
|
+
onChangeText: setMessage,
|
|
59
|
+
placeholder: "Type a message...",
|
|
60
|
+
placeholderTextColor: "#999"
|
|
61
|
+
}), /*#__PURE__*/React.createElement(Button, {
|
|
62
|
+
title: "Send",
|
|
63
|
+
onPress: handleSend,
|
|
64
|
+
color: theme.primaryColor
|
|
65
|
+
}))));
|
|
66
|
+
};
|
|
67
|
+
const styles = StyleSheet.create({
|
|
68
|
+
container: {
|
|
69
|
+
flex: 1,
|
|
70
|
+
backgroundColor: '#FFFFFF'
|
|
71
|
+
},
|
|
72
|
+
content: {
|
|
73
|
+
flex: 1,
|
|
74
|
+
backgroundColor: '#F8F9FA'
|
|
75
|
+
},
|
|
76
|
+
messagesContainer: {
|
|
77
|
+
flex: 1,
|
|
78
|
+
padding: 20,
|
|
79
|
+
paddingTop: 30
|
|
80
|
+
},
|
|
81
|
+
messageBubble: {
|
|
82
|
+
maxWidth: '85%',
|
|
83
|
+
padding: 16,
|
|
84
|
+
borderRadius: 20,
|
|
85
|
+
marginBottom: 16,
|
|
86
|
+
backgroundColor: '#FFFFFF',
|
|
87
|
+
shadowColor: '#000',
|
|
88
|
+
shadowOffset: {
|
|
89
|
+
width: 0,
|
|
90
|
+
height: 2
|
|
91
|
+
},
|
|
92
|
+
shadowOpacity: 0.05,
|
|
93
|
+
shadowRadius: 8,
|
|
94
|
+
elevation: 3
|
|
95
|
+
},
|
|
96
|
+
userMessage: {
|
|
97
|
+
alignSelf: 'flex-end',
|
|
98
|
+
backgroundColor: '#FFFFFF',
|
|
99
|
+
borderWidth: 1,
|
|
100
|
+
borderColor: 'rgba(0, 0, 0, 0.04)'
|
|
101
|
+
},
|
|
102
|
+
botMessage: {
|
|
103
|
+
alignSelf: 'flex-start',
|
|
104
|
+
backgroundColor: '#FFFFFF',
|
|
105
|
+
borderWidth: 1,
|
|
106
|
+
borderColor: 'rgba(0, 0, 0, 0.04)'
|
|
107
|
+
},
|
|
108
|
+
messageText: {
|
|
109
|
+
fontSize: 15,
|
|
110
|
+
lineHeight: 22,
|
|
111
|
+
fontWeight: '400',
|
|
112
|
+
color: '#2C2C2E',
|
|
113
|
+
letterSpacing: 0.2
|
|
114
|
+
},
|
|
115
|
+
inputContainer: {
|
|
116
|
+
flexDirection: 'row',
|
|
117
|
+
alignItems: 'center',
|
|
118
|
+
paddingHorizontal: 16,
|
|
119
|
+
paddingVertical: 12,
|
|
120
|
+
backgroundColor: '#FFFFFF',
|
|
121
|
+
borderTopWidth: 1,
|
|
122
|
+
borderTopColor: 'rgba(0, 0, 0, 0.06)',
|
|
123
|
+
shadowColor: '#000',
|
|
124
|
+
shadowOffset: {
|
|
125
|
+
width: 0,
|
|
126
|
+
height: -8
|
|
127
|
+
},
|
|
128
|
+
shadowOpacity: 0.04,
|
|
129
|
+
shadowRadius: 12,
|
|
130
|
+
elevation: 8,
|
|
131
|
+
marginTop: 'auto'
|
|
132
|
+
},
|
|
133
|
+
input: {
|
|
134
|
+
flex: 1,
|
|
135
|
+
backgroundColor: '#F8F9FA',
|
|
136
|
+
borderRadius: 16,
|
|
137
|
+
borderWidth: 1,
|
|
138
|
+
borderColor: 'rgba(0, 0, 0, 0.06)',
|
|
139
|
+
paddingHorizontal: 20,
|
|
140
|
+
paddingVertical: 12,
|
|
141
|
+
marginRight: 12,
|
|
142
|
+
fontSize: 15,
|
|
143
|
+
maxHeight: 120,
|
|
144
|
+
color: '#2C2C2E',
|
|
145
|
+
shadowColor: '#000',
|
|
146
|
+
shadowOffset: {
|
|
147
|
+
width: 0,
|
|
148
|
+
height: 1
|
|
149
|
+
},
|
|
150
|
+
shadowOpacity: 0.04,
|
|
151
|
+
shadowRadius: 4,
|
|
152
|
+
elevation: 2
|
|
153
|
+
}
|
|
154
|
+
});
|
|
155
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","SafeAreaView","Text","StyleSheet","View","TextInput","ScrollView","KeyboardAvoidingView","Platform","Button","defaultTheme","primaryColor","backgroundColor","textColor","Chat","onSendMessage","theme","message","setMessage","useState","messages","setMessages","handleSend","trim","prev","text","fromUser","response","containerStyle","styles","container","getMessageStyle","messageBubble","userMessage","botMessage","getTextStyle","messageText","color","createElement","style","testID","behavior","OS","content","messagesContainer","map","msg","i","key","inputContainer","input","value","onChangeText","placeholder","placeholderTextColor","title","onPress","create","flex","padding","paddingTop","maxWidth","borderRadius","marginBottom","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","elevation","alignSelf","borderWidth","borderColor","fontSize","lineHeight","fontWeight","letterSpacing","flexDirection","alignItems","paddingHorizontal","paddingVertical","borderTopWidth","borderTopColor","marginTop","marginRight","maxHeight"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface ChatProps {
|
|
3
|
+
onSendMessage: (message: string) => Promise<string>;
|
|
4
|
+
placeholder?: string;
|
|
5
|
+
theme?: {
|
|
6
|
+
primaryColor?: string;
|
|
7
|
+
backgroundColor?: string;
|
|
8
|
+
textColor?: string;
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
export declare const Chat: React.FC<ChatProps>;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAa1B,UAAU,SAAS;IACjB,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACpD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE;QACN,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;CACH;AAQD,eAAO,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CAwEpC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,204 +1,93 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-srschat",
|
|
3
|
-
"version": "0.1.
|
|
4
|
-
"description": "
|
|
5
|
-
"
|
|
6
|
-
"
|
|
7
|
-
"module": "
|
|
8
|
-
"
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
}
|
|
18
|
-
}
|
|
3
|
+
"version": "0.1.2",
|
|
4
|
+
"description": "A modern, sophisticated chat interface for React Native",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"types": "dist/index.d.ts",
|
|
7
|
+
"module": "dist/index.js",
|
|
8
|
+
"source": "src/index.tsx",
|
|
9
|
+
"react-native": "src/index.tsx",
|
|
10
|
+
"scripts": {
|
|
11
|
+
"build": "bob build",
|
|
12
|
+
"prepare": "bob build",
|
|
13
|
+
"lint": "eslint \"src/**/*.{ts,tsx}\" \"example/src/**/*.{ts,tsx}\" --fix",
|
|
14
|
+
"prepublishOnly": "yarn lint && yarn build",
|
|
15
|
+
"test": "jest --config jest.config.js",
|
|
16
|
+
"example": "yarn workspace react-native-srschat-example start"
|
|
19
17
|
},
|
|
20
18
|
"files": [
|
|
19
|
+
"dist",
|
|
21
20
|
"src",
|
|
22
|
-
"
|
|
23
|
-
"
|
|
24
|
-
"ios",
|
|
25
|
-
"cpp",
|
|
26
|
-
"*.podspec",
|
|
27
|
-
"react-native.config.js",
|
|
28
|
-
"!ios/build",
|
|
29
|
-
"!android/build",
|
|
30
|
-
"!android/gradle",
|
|
31
|
-
"!android/gradlew",
|
|
32
|
-
"!android/gradlew.bat",
|
|
33
|
-
"!android/local.properties",
|
|
34
|
-
"!**/__tests__",
|
|
35
|
-
"!**/__fixtures__",
|
|
36
|
-
"!**/__mocks__",
|
|
37
|
-
"!**/.*"
|
|
21
|
+
"README.md",
|
|
22
|
+
"LICENSE"
|
|
38
23
|
],
|
|
39
|
-
"scripts": {
|
|
40
|
-
"example": "yarn workspace react-native-srschat-example",
|
|
41
|
-
"test": "jest",
|
|
42
|
-
"typecheck": "tsc",
|
|
43
|
-
"lint": "eslint \"**/*.{js,ts,tsx}\"",
|
|
44
|
-
"clean": "del-cli lib",
|
|
45
|
-
"prepare": "bob build",
|
|
46
|
-
"release": "release-it"
|
|
47
|
-
},
|
|
48
24
|
"keywords": [
|
|
49
25
|
"react-native",
|
|
50
|
-
"
|
|
51
|
-
"
|
|
26
|
+
"chat",
|
|
27
|
+
"messaging",
|
|
28
|
+
"ui",
|
|
29
|
+
"modern"
|
|
52
30
|
],
|
|
31
|
+
"author": "alxkai",
|
|
32
|
+
"license": "MIT",
|
|
33
|
+
"peerDependencies": {
|
|
34
|
+
"react": ">=16.8.0",
|
|
35
|
+
"react-native": ">=0.60.0"
|
|
36
|
+
},
|
|
37
|
+
"devDependencies": {
|
|
38
|
+
"@babel/core": "^7.20.0",
|
|
39
|
+
"@babel/plugin-transform-runtime": "^7.22.15",
|
|
40
|
+
"@babel/preset-env": "^7.20.0",
|
|
41
|
+
"@babel/preset-react": "^7.20.0",
|
|
42
|
+
"@babel/preset-typescript": "^7.20.0",
|
|
43
|
+
"@react-native/eslint-config": "^0.72.2",
|
|
44
|
+
"@types/jest": "^29.0.0",
|
|
45
|
+
"@types/react": "~18.2.45",
|
|
46
|
+
"@types/react-native": "~0.72.8",
|
|
47
|
+
"@typescript-eslint/eslint-plugin": "^5.0.0",
|
|
48
|
+
"@typescript-eslint/parser": "^5.0.0",
|
|
49
|
+
"eslint": "^8.0.0",
|
|
50
|
+
"eslint-config-prettier": "^10.0.1",
|
|
51
|
+
"eslint-plugin-prettier": "^5.2.3",
|
|
52
|
+
"eslint-plugin-react": "^7.0.0",
|
|
53
|
+
"eslint-plugin-react-native": "^4.0.0",
|
|
54
|
+
"jest": "^29.0.0",
|
|
55
|
+
"jest-expo": "~50.0.0",
|
|
56
|
+
"metro-react-native-babel-preset": "^0.77.0",
|
|
57
|
+
"prettier": "^3.4.2",
|
|
58
|
+
"react": "18.2.0",
|
|
59
|
+
"react-native": "0.73.6",
|
|
60
|
+
"react-native-builder-bob": "^0.20.0",
|
|
61
|
+
"ts-jest": "^29.0.0",
|
|
62
|
+
"typescript": "^5.1.3"
|
|
63
|
+
},
|
|
53
64
|
"repository": {
|
|
54
65
|
"type": "git",
|
|
55
66
|
"url": "git+https://github.com/alxkai/react-native-srschat.git"
|
|
56
67
|
},
|
|
57
|
-
"author": "alxkai <alex@instalily.ai> (https://github.com/alxkai)",
|
|
58
|
-
"license": "MIT",
|
|
59
68
|
"bugs": {
|
|
60
69
|
"url": "https://github.com/alxkai/react-native-srschat/issues"
|
|
61
70
|
},
|
|
62
71
|
"homepage": "https://github.com/alxkai/react-native-srschat#readme",
|
|
63
|
-
"publishConfig": {
|
|
64
|
-
"registry": "https://registry.npmjs.org/"
|
|
65
|
-
},
|
|
66
|
-
"devDependencies": {
|
|
67
|
-
"@commitlint/config-conventional": "^17.0.2",
|
|
68
|
-
"@evilmartians/lefthook": "^1.5.0",
|
|
69
|
-
"@react-native/eslint-config": "^0.73.1",
|
|
70
|
-
"@release-it/conventional-changelog": "^9.0.2",
|
|
71
|
-
"@types/jest": "^29.5.5",
|
|
72
|
-
"@types/react": "^18.2.44",
|
|
73
|
-
"commitlint": "^17.0.2",
|
|
74
|
-
"del-cli": "^5.1.0",
|
|
75
|
-
"eslint": "^8.51.0",
|
|
76
|
-
"eslint-config-prettier": "^9.0.0",
|
|
77
|
-
"eslint-plugin-prettier": "^5.0.1",
|
|
78
|
-
"jest": "^29.7.0",
|
|
79
|
-
"prettier": "^3.0.3",
|
|
80
|
-
"react": "18.3.1",
|
|
81
|
-
"react-native": "0.76.6",
|
|
82
|
-
"react-native-builder-bob": "^0.35.2",
|
|
83
|
-
"release-it": "^17.10.0",
|
|
84
|
-
"typescript": "^5.2.2"
|
|
85
|
-
},
|
|
86
|
-
"resolutions": {
|
|
87
|
-
"@types/react": "^18.2.44"
|
|
88
|
-
},
|
|
89
|
-
"peerDependencies": {
|
|
90
|
-
"react": "*",
|
|
91
|
-
"react-native": "*"
|
|
92
|
-
},
|
|
93
72
|
"workspaces": [
|
|
94
73
|
"example"
|
|
95
74
|
],
|
|
96
|
-
"
|
|
97
|
-
|
|
98
|
-
"preset": "react-native",
|
|
99
|
-
"modulePathIgnorePatterns": [
|
|
100
|
-
"<rootDir>/example/node_modules",
|
|
101
|
-
"<rootDir>/lib/"
|
|
102
|
-
]
|
|
103
|
-
},
|
|
104
|
-
"commitlint": {
|
|
105
|
-
"extends": [
|
|
106
|
-
"@commitlint/config-conventional"
|
|
107
|
-
]
|
|
108
|
-
},
|
|
109
|
-
"release-it": {
|
|
110
|
-
"git": {
|
|
111
|
-
"commitMessage": "chore: release ${version}",
|
|
112
|
-
"tagName": "v${version}"
|
|
113
|
-
},
|
|
114
|
-
"npm": {
|
|
115
|
-
"publish": true
|
|
116
|
-
},
|
|
117
|
-
"github": {
|
|
118
|
-
"release": true
|
|
119
|
-
},
|
|
120
|
-
"plugins": {
|
|
121
|
-
"@release-it/conventional-changelog": {
|
|
122
|
-
"preset": "angular"
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
},
|
|
126
|
-
"eslintConfig": {
|
|
127
|
-
"root": true,
|
|
128
|
-
"extends": [
|
|
129
|
-
"@react-native",
|
|
130
|
-
"prettier"
|
|
131
|
-
],
|
|
132
|
-
"rules": {
|
|
133
|
-
"react/react-in-jsx-scope": "off",
|
|
134
|
-
"prettier/prettier": [
|
|
135
|
-
"error",
|
|
136
|
-
{
|
|
137
|
-
"quoteProps": "consistent",
|
|
138
|
-
"singleQuote": true,
|
|
139
|
-
"tabWidth": 2,
|
|
140
|
-
"trailingComma": "es5",
|
|
141
|
-
"useTabs": false
|
|
142
|
-
}
|
|
143
|
-
]
|
|
144
|
-
}
|
|
145
|
-
},
|
|
146
|
-
"eslintIgnore": [
|
|
147
|
-
"node_modules/",
|
|
148
|
-
"lib/"
|
|
149
|
-
],
|
|
150
|
-
"prettier": {
|
|
151
|
-
"quoteProps": "consistent",
|
|
152
|
-
"singleQuote": true,
|
|
153
|
-
"tabWidth": 2,
|
|
154
|
-
"trailingComma": "es5",
|
|
155
|
-
"useTabs": false
|
|
75
|
+
"dependencies": {
|
|
76
|
+
"@babel/runtime": "^7.20.0"
|
|
156
77
|
},
|
|
157
78
|
"react-native-builder-bob": {
|
|
158
79
|
"source": "src",
|
|
159
|
-
"output": "
|
|
80
|
+
"output": "dist",
|
|
160
81
|
"targets": [
|
|
161
|
-
"
|
|
162
|
-
|
|
163
|
-
"commonjs",
|
|
164
|
-
{
|
|
165
|
-
"esm": true
|
|
166
|
-
}
|
|
167
|
-
],
|
|
168
|
-
[
|
|
169
|
-
"module",
|
|
170
|
-
{
|
|
171
|
-
"esm": true
|
|
172
|
-
}
|
|
173
|
-
],
|
|
82
|
+
"commonjs",
|
|
83
|
+
"module",
|
|
174
84
|
[
|
|
175
85
|
"typescript",
|
|
176
86
|
{
|
|
177
|
-
"project": "tsconfig.build.json"
|
|
178
|
-
"esm": true
|
|
87
|
+
"project": "tsconfig.build.json"
|
|
179
88
|
}
|
|
180
89
|
]
|
|
181
90
|
]
|
|
182
91
|
},
|
|
183
|
-
"
|
|
184
|
-
"name": "RNSrschatSpec",
|
|
185
|
-
"type": "modules",
|
|
186
|
-
"jsSrcsDir": "src",
|
|
187
|
-
"outputDir": {
|
|
188
|
-
"ios": "ios/generated",
|
|
189
|
-
"android": "android/generated"
|
|
190
|
-
},
|
|
191
|
-
"android": {
|
|
192
|
-
"javaPackageName": "com.srschat"
|
|
193
|
-
}
|
|
194
|
-
},
|
|
195
|
-
"create-react-native-library": {
|
|
196
|
-
"languages": "js",
|
|
197
|
-
"type": "library",
|
|
198
|
-
"version": "0.45.5"
|
|
199
|
-
},
|
|
200
|
-
"dependencies": {
|
|
201
|
-
"@expo/vector-icons": "^14.0.4",
|
|
202
|
-
"expo-font": "^13.0.3"
|
|
203
|
-
}
|
|
92
|
+
"packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e"
|
|
204
93
|
}
|