vdb-ai-chat 1.0.2 → 1.0.3
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/chat-widget.js +1 -1
- package/lib/commonjs/components/ChatInput.js +0 -1
- package/lib/commonjs/components/ChatInput.js.map +1 -1
- package/lib/commonjs/components/ChatWidget.js +66 -40
- package/lib/commonjs/components/ChatWidget.js.map +1 -1
- package/lib/commonjs/components/LazyProductsFetcher.js +47 -0
- package/lib/commonjs/components/LazyProductsFetcher.js.map +1 -0
- package/lib/commonjs/components/MessageBubble.js +1 -1
- package/lib/commonjs/components/MessageBubble.js.map +1 -1
- package/lib/commonjs/components/MessageMetaRow.js +1 -23
- package/lib/commonjs/components/MessageMetaRow.js.map +1 -1
- package/lib/commonjs/components/SuggestionsRow.js +13 -8
- package/lib/commonjs/components/SuggestionsRow.js.map +1 -1
- package/lib/commonjs/hooks/useInViewport.js +42 -0
- package/lib/commonjs/hooks/useInViewport.js.map +1 -0
- package/lib/module/components/ChatInput.js +0 -1
- package/lib/module/components/ChatInput.js.map +1 -1
- package/lib/module/components/ChatWidget.js +66 -40
- package/lib/module/components/ChatWidget.js.map +1 -1
- package/lib/module/components/LazyProductsFetcher.js +40 -0
- package/lib/module/components/LazyProductsFetcher.js.map +1 -0
- package/lib/module/components/MessageBubble.js +1 -1
- package/lib/module/components/MessageBubble.js.map +1 -1
- package/lib/module/components/MessageMetaRow.js +2 -24
- package/lib/module/components/MessageMetaRow.js.map +1 -1
- package/lib/module/components/SuggestionsRow.js +14 -9
- package/lib/module/components/SuggestionsRow.js.map +1 -1
- package/lib/module/hooks/useInViewport.js +36 -0
- package/lib/module/hooks/useInViewport.js.map +1 -0
- package/lib/typescript/components/ChatInput.d.ts.map +1 -1
- package/lib/typescript/components/ChatWidget.d.ts.map +1 -1
- package/lib/typescript/components/LazyProductsFetcher.d.ts +9 -0
- package/lib/typescript/components/LazyProductsFetcher.d.ts.map +1 -0
- package/lib/typescript/components/MessageBubble.d.ts.map +1 -1
- package/lib/typescript/components/SuggestionsRow.d.ts.map +1 -1
- package/lib/typescript/hooks/useInViewport.d.ts +5 -0
- package/lib/typescript/hooks/useInViewport.d.ts.map +1 -0
- package/package.json +1 -1
- package/src/components/ChatInput.tsx +6 -3
- package/src/components/ChatWidget.tsx +185 -133
- package/src/components/LazyProductsFetcher.tsx +41 -0
- package/src/components/MessageBubble.tsx +4 -1
- package/src/components/MessageMetaRow.tsx +2 -2
- package/src/components/SuggestionsRow.tsx +20 -15
- package/src/hooks/useInViewport.ts +38 -0
|
@@ -1,23 +1,26 @@
|
|
|
1
1
|
import React, { memo } from "react";
|
|
2
|
-
import { Text, TouchableOpacity, StyleSheet, ScrollView } from "react-native";
|
|
2
|
+
import { View, Text, TouchableOpacity, StyleSheet, ScrollView } from "react-native";
|
|
3
3
|
const SuggestionsRowComponent = ({
|
|
4
4
|
suggestions,
|
|
5
5
|
onSelect,
|
|
6
6
|
variant = "default"
|
|
7
7
|
}) => {
|
|
8
8
|
if (!suggestions.length) return null;
|
|
9
|
-
|
|
9
|
+
const ScrollViewComponent = variant === "inline" ? View : ScrollView;
|
|
10
|
+
return /*#__PURE__*/React.createElement(ScrollViewComponent, {
|
|
10
11
|
showsVerticalScrollIndicator: false,
|
|
11
12
|
contentContainerStyle: [styles.container, variant === "inline" && styles.containerInline],
|
|
12
13
|
style: [styles.scroll, variant === "inline" && styles.scrollInline]
|
|
13
|
-
}, suggestions.map(s => /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
14
|
-
key: s
|
|
14
|
+
}, suggestions.map((s, index) => /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
15
|
+
key: `${s}-${index}`,
|
|
15
16
|
style: [styles.chip, variant === "inline" && styles.chipInline],
|
|
16
17
|
onPress: () => onSelect(s),
|
|
17
18
|
activeOpacity: 0.75
|
|
18
19
|
}, /*#__PURE__*/React.createElement(Text, {
|
|
19
20
|
style: styles.chipText
|
|
20
|
-
}, s))
|
|
21
|
+
}, s)), index < suggestions.length - 1 && /*#__PURE__*/React.createElement(View, {
|
|
22
|
+
style: styles.spacer
|
|
23
|
+
}))));
|
|
21
24
|
};
|
|
22
25
|
const styles = StyleSheet.create({
|
|
23
26
|
scroll: {
|
|
@@ -45,15 +48,13 @@ const styles = StyleSheet.create({
|
|
|
45
48
|
},
|
|
46
49
|
chip: {
|
|
47
50
|
backgroundColor: "#EDEDF2",
|
|
48
|
-
borderRadius:
|
|
51
|
+
borderRadius: 6,
|
|
49
52
|
paddingHorizontal: 8,
|
|
50
53
|
paddingVertical: 6,
|
|
51
54
|
width: "100%",
|
|
52
55
|
alignSelf: "stretch",
|
|
53
56
|
justifyContent: "center",
|
|
54
|
-
alignItems: "flex-start"
|
|
55
|
-
borderWidth: 1,
|
|
56
|
-
borderColor: "#E0E0E0"
|
|
57
|
+
alignItems: "flex-start"
|
|
57
58
|
},
|
|
58
59
|
chipInline: {
|
|
59
60
|
backgroundColor: "#FFFFFF"
|
|
@@ -63,6 +64,10 @@ const styles = StyleSheet.create({
|
|
|
63
64
|
color: "#1A1A1A",
|
|
64
65
|
fontWeight: "500",
|
|
65
66
|
textAlign: "left"
|
|
67
|
+
},
|
|
68
|
+
spacer: {
|
|
69
|
+
width: 4,
|
|
70
|
+
height: 4
|
|
66
71
|
}
|
|
67
72
|
});
|
|
68
73
|
const SuggestionsRow = /*#__PURE__*/memo(SuggestionsRowComponent);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","memo","Text","TouchableOpacity","StyleSheet","ScrollView","SuggestionsRowComponent","suggestions","onSelect","variant","length","createElement","showsVerticalScrollIndicator","contentContainerStyle","styles","container","containerInline","style","scroll","scrollInline","map","s","key","chip","chipInline","onPress","activeOpacity","chipText","create","maxWidth","alignSelf","paddingHorizontal","paddingVertical","flexDirection","justifyContent","alignItems","gap","backgroundColor","borderRadius","width","
|
|
1
|
+
{"version":3,"names":["React","memo","View","Text","TouchableOpacity","StyleSheet","ScrollView","SuggestionsRowComponent","suggestions","onSelect","variant","length","ScrollViewComponent","createElement","showsVerticalScrollIndicator","contentContainerStyle","styles","container","containerInline","style","scroll","scrollInline","map","s","index","Fragment","key","chip","chipInline","onPress","activeOpacity","chipText","spacer","create","maxWidth","alignSelf","paddingHorizontal","paddingVertical","flexDirection","justifyContent","alignItems","gap","backgroundColor","borderRadius","width","fontSize","color","fontWeight","textAlign","height","SuggestionsRow"],"sourceRoot":"../../../src","sources":["components/SuggestionsRow.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { useEffect, useRef, useState } from "react";
|
|
2
|
+
import { Platform } from "react-native";
|
|
3
|
+
export function useInViewport() {
|
|
4
|
+
const ref = useRef(null);
|
|
5
|
+
const [inView, setInView] = useState(false);
|
|
6
|
+
useEffect(() => {
|
|
7
|
+
// On native, treat as in view to avoid DOM-specific code
|
|
8
|
+
if (Platform.OS !== "web") {
|
|
9
|
+
setInView(true);
|
|
10
|
+
return;
|
|
11
|
+
}
|
|
12
|
+
const node = ref.current;
|
|
13
|
+
if (!node || typeof IntersectionObserver === "undefined") {
|
|
14
|
+
// Fallback: consider it in view so functionality still works
|
|
15
|
+
setInView(true);
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
const observer = new IntersectionObserver(entries => {
|
|
19
|
+
const entry = entries[0];
|
|
20
|
+
setInView(entry.isIntersecting);
|
|
21
|
+
}, {
|
|
22
|
+
root: null,
|
|
23
|
+
rootMargin: "0px",
|
|
24
|
+
threshold: 0.1
|
|
25
|
+
});
|
|
26
|
+
observer.observe(node);
|
|
27
|
+
return () => {
|
|
28
|
+
observer.disconnect();
|
|
29
|
+
};
|
|
30
|
+
}, []);
|
|
31
|
+
return {
|
|
32
|
+
ref,
|
|
33
|
+
inView
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=useInViewport.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useEffect","useRef","useState","Platform","useInViewport","ref","inView","setInView","OS","node","current","IntersectionObserver","observer","entries","entry","isIntersecting","root","rootMargin","threshold","observe","disconnect"],"sourceRoot":"../../../src","sources":["hooks/useInViewport.ts"],"mappings":"AAAA,SAASA,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,OAAO;AACnD,SAASC,QAAQ,QAAQ,cAAc;AAEvC,OAAO,SAASC,aAAaA,CAAA,EAA0B;EACrD,MAAMC,GAAG,GAAGJ,MAAM,CAAW,IAAI,CAAC;EAClC,MAAM,CAACK,MAAM,EAAEC,SAAS,CAAC,GAAGL,QAAQ,CAAC,KAAK,CAAC;EAE3CF,SAAS,CAAC,MAAM;IACd;IACA,IAAIG,QAAQ,CAACK,EAAE,KAAK,KAAK,EAAE;MACzBD,SAAS,CAAC,IAAI,CAAC;MACf;IACF;IAEA,MAAME,IAAI,GAAGJ,GAAG,CAACK,OAAoC;IACrD,IAAI,CAACD,IAAI,IAAI,OAAOE,oBAAoB,KAAK,WAAW,EAAE;MACxD;MACAJ,SAAS,CAAC,IAAI,CAAC;MACf;IACF;IAEA,MAAMK,QAAQ,GAAG,IAAID,oBAAoB,CACtCE,OAAO,IAAK;MACX,MAAMC,KAAK,GAAGD,OAAO,CAAC,CAAC,CAAC;MACxBN,SAAS,CAACO,KAAK,CAACC,cAAc,CAAC;IACjC,CAAC,EACD;MAAEC,IAAI,EAAE,IAAI;MAAEC,UAAU,EAAE,KAAK;MAAEC,SAAS,EAAE;IAAI,CAClD,CAAC;IAEDN,QAAQ,CAACO,OAAO,CAACV,IAAI,CAAC;IAEtB,OAAO,MAAM;MACXG,QAAQ,CAACQ,UAAU,CAAC,CAAC;IACvB,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,OAAO;IAAEf,GAAG;IAAEC;EAAO,CAAC;AACxB","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatInput.d.ts","sourceRoot":"","sources":["../../../src/components/ChatInput.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAEL,SAAS,EAMV,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAa1C,UAAU,KAAK;IACb,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,SAAS,CAAC;IACjB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;CACvC;
|
|
1
|
+
{"version":3,"file":"ChatInput.d.ts","sourceRoot":"","sources":["../../../src/components/ChatInput.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAEL,SAAS,EAMV,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAa1C,UAAU,KAAK;IACb,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,SAAS,CAAC;IACjB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;CACvC;AA0BD,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAwCrC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatWidget.d.ts","sourceRoot":"","sources":["../../../src/components/ChatWidget.tsx"],"names":[],"mappings":"AAAA,OAAO,KAQN,MAAM,OAAO,CAAC;AAcf,OAAO,KAAK,EAAe,eAAe,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"ChatWidget.d.ts","sourceRoot":"","sources":["../../../src/components/ChatWidget.tsx"],"names":[],"mappings":"AAAA,OAAO,KAQN,MAAM,OAAO,CAAC;AAcf,OAAO,KAAK,EAAe,eAAe,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAuB5E,eAAO,MAAM,UAAU,uFAosBtB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
interface LazyProductsFetcherProps {
|
|
3
|
+
messageId: string;
|
|
4
|
+
payload: Record<string, any> | undefined | null;
|
|
5
|
+
onFetched: (messageId: string, data: any) => void;
|
|
6
|
+
}
|
|
7
|
+
declare const LazyProductsFetcher: React.FC<LazyProductsFetcherProps>;
|
|
8
|
+
export default LazyProductsFetcher;
|
|
9
|
+
//# sourceMappingURL=LazyProductsFetcher.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LazyProductsFetcher.d.ts","sourceRoot":"","sources":["../../../src/components/LazyProductsFetcher.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAKjD,UAAU,wBAAwB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC;IAChD,SAAS,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;CACnD;AAED,QAAA,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CA2B3D,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageBubble.d.ts","sourceRoot":"","sources":["../../../src/components/MessageBubble.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAe,MAAM,OAAO,CAAC;AAGpC,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAEvD,UAAU,KAAK;IACb,OAAO,EAAE,WAAW,CAAC;IACrB,KAAK,EAAE,SAAS,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oBAAoB,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;IAChD,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC;IACjD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;
|
|
1
|
+
{"version":3,"file":"MessageBubble.d.ts","sourceRoot":"","sources":["../../../src/components/MessageBubble.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAe,MAAM,OAAO,CAAC;AAGpC,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAEvD,UAAU,KAAK;IACb,OAAO,EAAE,WAAW,CAAC;IACrB,KAAK,EAAE,SAAS,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oBAAoB,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;IAChD,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC;IACjD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAuED,eAAO,MAAM,aAAa,mCAA+B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SuggestionsRow.d.ts","sourceRoot":"","sources":["../../../src/components/SuggestionsRow.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAe,MAAM,OAAO,CAAC;AASpC,UAAU,mBAAmB;IAC3B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,uFAAuF;IACvF,OAAO,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAChC;
|
|
1
|
+
{"version":3,"file":"SuggestionsRow.d.ts","sourceRoot":"","sources":["../../../src/components/SuggestionsRow.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAe,MAAM,OAAO,CAAC;AASpC,UAAU,mBAAmB;IAC3B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,uFAAuF;IACvF,OAAO,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAChC;AAsFD,QAAA,MAAM,cAAc,iDAAgC,CAAC;AACrD,eAAe,cAAc,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useInViewport.d.ts","sourceRoot":"","sources":["../../../src/hooks/useInViewport.ts"],"names":[],"mappings":"AAGA,wBAAgB,aAAa,CAAC,CAAC,SAAS,WAAW;;;EAkClD"}
|
package/package.json
CHANGED
|
@@ -46,7 +46,11 @@ const SendIcon = ({
|
|
|
46
46
|
uri: "https://cdn.vdbapp.com/ai/chat-widget/assets/img/send.svg",
|
|
47
47
|
}}
|
|
48
48
|
resizeMode="contain"
|
|
49
|
-
style={{
|
|
49
|
+
style={{
|
|
50
|
+
...styles.buttonIcon,
|
|
51
|
+
tintColor: isInactive ? "#ACACB3" : "#020001",
|
|
52
|
+
cursor: isInactive ? "auto" : "pointer",
|
|
53
|
+
}}
|
|
50
54
|
/>
|
|
51
55
|
);
|
|
52
56
|
};
|
|
@@ -83,7 +87,7 @@ export const ChatInput: React.FC<Props> = ({
|
|
|
83
87
|
autoFocus
|
|
84
88
|
/>
|
|
85
89
|
<TouchableOpacity
|
|
86
|
-
style={
|
|
90
|
+
style={styles.button}
|
|
87
91
|
onPress={onSend}
|
|
88
92
|
disabled={disabled}
|
|
89
93
|
>
|
|
@@ -101,7 +105,6 @@ const styles = StyleSheet.create({
|
|
|
101
105
|
justifyContent: "space-between",
|
|
102
106
|
alignItems: "center",
|
|
103
107
|
alignSelf: "stretch",
|
|
104
|
-
flex: 1,
|
|
105
108
|
borderRadius: 8,
|
|
106
109
|
backgroundColor: "#FFF",
|
|
107
110
|
borderColor: "#ACACB3",
|