react-native-chatbot-ai 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/lib/module/assets/svgIcon/IconChatArrow.js +0 -1
- package/lib/module/assets/svgIcon/IconChatArrow.js.map +1 -1
- package/lib/module/assets/svgIcon/IconPdf.js +27 -0
- package/lib/module/assets/svgIcon/IconPdf.js.map +1 -0
- package/lib/module/assets/svgIcon/IconThinkingStep.js +0 -1
- package/lib/module/assets/svgIcon/IconThinkingStep.js.map +1 -1
- package/lib/module/components/chat/ChatEmpty.js +6 -1
- package/lib/module/components/chat/ChatEmpty.js.map +1 -1
- package/lib/module/components/chat/ChatMessageList.js +33 -6
- package/lib/module/components/chat/ChatMessageList.js.map +1 -1
- package/lib/module/components/chat/footer/index.js +328 -0
- package/lib/module/components/chat/footer/index.js.map +1 -0
- package/lib/module/components/chat/footer/item/UploadFileItem.js +163 -0
- package/lib/module/components/chat/footer/item/UploadFileItem.js.map +1 -0
- package/lib/module/components/chat/footer/item/UploadImageItem.js +94 -0
- package/lib/module/components/chat/footer/item/UploadImageItem.js.map +1 -0
- package/lib/module/components/chat/index.js +1 -1
- package/lib/module/components/chat/index.js.map +1 -1
- package/lib/module/components/chat/item/ChatAIAnswerMessageItem.js +114 -32
- package/lib/module/components/chat/item/ChatAIAnswerMessageItem.js.map +1 -1
- package/lib/module/components/chat/item/ChatAIThinkingMessageItem.js +18 -7
- package/lib/module/components/chat/item/ChatAIThinkingMessageItem.js.map +1 -1
- package/lib/module/components/chat/item/ChatUserMessageItem.js +122 -15
- package/lib/module/components/chat/item/ChatUserMessageItem.js.map +1 -1
- package/lib/module/components/portal/Toast.js +193 -0
- package/lib/module/components/portal/Toast.js.map +1 -0
- package/lib/module/components/portal/index.js +15 -0
- package/lib/module/components/portal/index.js.map +1 -0
- package/lib/module/constants/events.js +2 -1
- package/lib/module/constants/events.js.map +1 -1
- package/lib/module/constants/index.js +9 -0
- package/lib/module/constants/index.js.map +1 -0
- package/lib/module/context/ChatContext.js +8 -5
- package/lib/module/context/ChatContext.js.map +1 -1
- package/lib/module/hooks/message/useMessage.js +0 -1
- package/lib/module/hooks/message/useMessage.js.map +1 -1
- package/lib/module/hooks/message/useSendMessage.js +3 -3
- package/lib/module/hooks/message/useSendMessage.js.map +1 -1
- package/lib/module/hooks/upload/useFileUpload.js +94 -0
- package/lib/module/hooks/upload/useFileUpload.js.map +1 -0
- package/lib/module/hooks/upload/useImageUpload.js +92 -0
- package/lib/module/hooks/upload/useImageUpload.js.map +1 -0
- package/lib/module/hooks/useAndroidBackHandler.js +20 -0
- package/lib/module/hooks/useAndroidBackHandler.js.map +1 -0
- package/lib/module/services/endpoints.js +3 -0
- package/lib/module/services/endpoints.js.map +1 -1
- package/lib/module/types/index.js +1 -0
- package/lib/module/types/index.js.map +1 -1
- package/lib/module/types/ui.js +4 -0
- package/lib/module/types/ui.js.map +1 -0
- package/lib/module/utils/common.js +31 -0
- package/lib/module/utils/common.js.map +1 -0
- package/lib/module/utils/device.js +137 -0
- package/lib/module/utils/device.js.map +1 -0
- package/lib/module/utils/ui.js +28 -0
- package/lib/module/utils/ui.js.map +1 -0
- package/lib/typescript/src/assets/icons/index.d.ts.map +1 -1
- package/lib/typescript/src/assets/svgIcon/IconChatArrow.d.ts.map +1 -1
- package/lib/typescript/src/assets/svgIcon/IconPdf.d.ts +7 -0
- package/lib/typescript/src/assets/svgIcon/IconPdf.d.ts.map +1 -0
- package/lib/typescript/src/assets/svgIcon/IconThinkingStep.d.ts.map +1 -1
- package/lib/typescript/src/components/chat/ChatEmpty.d.ts.map +1 -1
- package/lib/typescript/src/components/chat/ChatMessageList.d.ts.map +1 -1
- package/lib/typescript/src/components/chat/footer/index.d.ts +16 -0
- package/lib/typescript/src/components/chat/footer/index.d.ts.map +1 -0
- package/lib/typescript/src/components/chat/footer/item/UploadFileItem.d.ts +9 -0
- package/lib/typescript/src/components/chat/footer/item/UploadFileItem.d.ts.map +1 -0
- package/lib/typescript/src/components/chat/footer/item/UploadImageItem.d.ts +9 -0
- package/lib/typescript/src/components/chat/footer/item/UploadImageItem.d.ts.map +1 -0
- package/lib/typescript/src/components/chat/item/ChatAIAnswerMessageItem.d.ts +9 -0
- package/lib/typescript/src/components/chat/item/ChatAIAnswerMessageItem.d.ts.map +1 -1
- package/lib/typescript/src/components/chat/item/ChatAIThinkingMessageItem.d.ts.map +1 -1
- package/lib/typescript/src/components/chat/item/ChatUserMessageItem.d.ts.map +1 -1
- package/lib/typescript/src/components/portal/Toast.d.ts +4 -0
- package/lib/typescript/src/components/portal/Toast.d.ts.map +1 -0
- package/lib/typescript/src/components/portal/index.d.ts +3 -0
- package/lib/typescript/src/components/portal/index.d.ts.map +1 -0
- package/lib/typescript/src/constants/events.d.ts +1 -0
- package/lib/typescript/src/constants/events.d.ts.map +1 -1
- package/lib/typescript/src/constants/index.d.ts +6 -0
- package/lib/typescript/src/constants/index.d.ts.map +1 -0
- package/lib/typescript/src/context/ChatContext.d.ts.map +1 -1
- package/lib/typescript/src/hooks/message/useMessage.d.ts.map +1 -1
- package/lib/typescript/src/hooks/message/useSendMessage.d.ts +2 -1
- package/lib/typescript/src/hooks/message/useSendMessage.d.ts.map +1 -1
- package/lib/typescript/src/hooks/upload/useFileUpload.d.ts +15 -0
- package/lib/typescript/src/hooks/upload/useFileUpload.d.ts.map +1 -0
- package/lib/typescript/src/hooks/upload/useImageUpload.d.ts +15 -0
- package/lib/typescript/src/hooks/upload/useImageUpload.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useAndroidBackHandler.d.ts +4 -0
- package/lib/typescript/src/hooks/useAndroidBackHandler.d.ts.map +1 -0
- package/lib/typescript/src/services/endpoints.d.ts +3 -0
- package/lib/typescript/src/services/endpoints.d.ts.map +1 -1
- package/lib/typescript/src/types/chat.d.ts +6 -0
- package/lib/typescript/src/types/chat.d.ts.map +1 -1
- package/lib/typescript/src/types/dto.d.ts +10 -1
- package/lib/typescript/src/types/dto.d.ts.map +1 -1
- package/lib/typescript/src/types/index.d.ts +1 -0
- package/lib/typescript/src/types/index.d.ts.map +1 -1
- package/lib/typescript/src/types/ui.d.ts +7 -0
- package/lib/typescript/src/types/ui.d.ts.map +1 -0
- package/lib/typescript/src/utils/common.d.ts +10 -0
- package/lib/typescript/src/utils/common.d.ts.map +1 -0
- package/lib/typescript/src/utils/device.d.ts +11 -0
- package/lib/typescript/src/utils/device.d.ts.map +1 -0
- package/lib/typescript/src/utils/ui.d.ts +12 -0
- package/lib/typescript/src/utils/ui.d.ts.map +1 -0
- package/package.json +11 -6
- package/src/assets/icons/index.ts +1 -1
- package/src/assets/svgIcon/IconChatArrow.tsx +1 -7
- package/src/assets/svgIcon/IconPdf.tsx +26 -0
- package/src/assets/svgIcon/IconThinkingStep.tsx +1 -7
- package/src/components/chat/ChatEmpty.tsx +5 -2
- package/src/components/chat/ChatMessageList.tsx +39 -5
- package/src/components/chat/footer/index.tsx +410 -0
- package/src/components/chat/footer/item/UploadFileItem.tsx +181 -0
- package/src/components/chat/footer/item/UploadImageItem.tsx +91 -0
- package/src/components/chat/index.tsx +1 -1
- package/src/components/chat/item/ChatAIAnswerMessageItem.tsx +152 -54
- package/src/components/chat/item/ChatAIThinkingMessageItem.tsx +37 -31
- package/src/components/chat/item/ChatUserMessageItem.tsx +145 -13
- package/src/components/portal/Toast.tsx +315 -0
- package/src/components/portal/index.tsx +13 -0
- package/src/constants/events.ts +1 -0
- package/src/constants/index.ts +9 -0
- package/src/context/ChatContext.tsx +6 -2
- package/src/hooks/message/useMessage.ts +0 -1
- package/src/hooks/message/useSendMessage.ts +4 -4
- package/src/hooks/upload/useFileUpload.ts +126 -0
- package/src/hooks/upload/useImageUpload.ts +123 -0
- package/src/hooks/useAndroidBackHandler.ts +29 -0
- package/src/services/endpoints.ts +3 -0
- package/src/types/chat.ts +2 -0
- package/src/types/dto.ts +16 -1
- package/src/types/index.ts +1 -0
- package/src/types/ui.ts +12 -0
- package/src/utils/common.ts +40 -0
- package/src/utils/device.ts +170 -0
- package/src/utils/ui.tsx +32 -0
- package/lib/module/components/chat/ChatFooter.js +0 -91
- package/lib/module/components/chat/ChatFooter.js.map +0 -1
- package/lib/typescript/src/components/chat/ChatFooter.d.ts +0 -3
- package/lib/typescript/src/components/chat/ChatFooter.d.ts.map +0 -1
- package/src/components/chat/ChatFooter.tsx +0 -99
|
@@ -1,41 +1,148 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { StyleSheet } from 'react-native';
|
|
4
|
-
import { KColors, KContainer, KLabel, KSpacingValue } from '@droppii/libs';
|
|
3
|
+
import { Dimensions, StyleSheet } from 'react-native';
|
|
4
|
+
import { KColors, KContainer, KImage, KLabel, KRadiusValue, KSpacingValue } from '@droppii/libs';
|
|
5
5
|
import { IconChatArrow } from "../../../assets/svgIcon/IconChatArrow.js";
|
|
6
|
+
import { useChatContext } from "../../../context/ChatContext.js";
|
|
7
|
+
import { useCallback } from 'react';
|
|
8
|
+
import { formatFileSize, shortenFileName } from "../../../utils/common.js";
|
|
9
|
+
import { IconPdf } from "../../../assets/svgIcon/IconPdf.js";
|
|
10
|
+
import { viewDocument } from '@react-native-documents/viewer';
|
|
11
|
+
import ReactNativeBlobUtil from 'react-native-blob-util';
|
|
12
|
+
import UIUtils from "../../../utils/ui.js";
|
|
6
13
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
14
|
+
const IMAGE_SIZE = (Dimensions.get('window').width * 0.8 - KSpacingValue['2rem'] - KSpacingValue['1rem']) / 3;
|
|
7
15
|
const ChatUserMessageItem = ({
|
|
8
16
|
item
|
|
9
17
|
}) => {
|
|
18
|
+
const {
|
|
19
|
+
openImageViewer
|
|
20
|
+
} = useChatContext();
|
|
21
|
+
const images = item?.attachments?.filter(attachment => attachment.type === 'image');
|
|
22
|
+
const files = item?.attachments?.filter(attachment => attachment.type === 'file');
|
|
23
|
+
const handleOpenImageViewer = useCallback(index => {
|
|
24
|
+
openImageViewer?.(item?.attachments?.map(attachment => ({
|
|
25
|
+
url: attachment.data
|
|
26
|
+
})) || [], index);
|
|
27
|
+
}, [openImageViewer, item]);
|
|
28
|
+
const handleOpenFile = useCallback(async file => {
|
|
29
|
+
const res = await ReactNativeBlobUtil.config({
|
|
30
|
+
fileCache: true,
|
|
31
|
+
appendExt: 'pdf'
|
|
32
|
+
}).fetch('GET', file.data);
|
|
33
|
+
const localPath = res.path();
|
|
34
|
+
viewDocument({
|
|
35
|
+
uri: `file://${localPath}`,
|
|
36
|
+
mimeType: file.mime_type
|
|
37
|
+
}).catch(() => {
|
|
38
|
+
UIUtils.toast.open({
|
|
39
|
+
title: `Đã xảy ra lỗi khi mở tệp sau: ${file.name}. Vui lòng thử lại.`,
|
|
40
|
+
theme: 'danger'
|
|
41
|
+
});
|
|
42
|
+
});
|
|
43
|
+
}, []);
|
|
10
44
|
return /*#__PURE__*/_jsxs(KContainer.View, {
|
|
11
45
|
style: styles.container,
|
|
12
46
|
children: [/*#__PURE__*/_jsx(KContainer.View, {
|
|
13
|
-
style: styles.
|
|
14
|
-
children:
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
47
|
+
style: styles.imagesContainer,
|
|
48
|
+
children: images?.map((attachment, index) => {
|
|
49
|
+
return /*#__PURE__*/_jsx(KContainer.Touchable, {
|
|
50
|
+
style: styles.imageItem,
|
|
51
|
+
onPress: () => handleOpenImageViewer(index),
|
|
52
|
+
children: /*#__PURE__*/_jsx(KImage.Base, {
|
|
53
|
+
uri: attachment.data,
|
|
54
|
+
br: '2x',
|
|
55
|
+
style: styles.imageItemContainer
|
|
56
|
+
})
|
|
57
|
+
}, attachment.data);
|
|
18
58
|
})
|
|
19
|
-
}), /*#__PURE__*/_jsx(
|
|
20
|
-
|
|
59
|
+
}), /*#__PURE__*/_jsx(KContainer.View, {
|
|
60
|
+
style: styles.filesContainer,
|
|
61
|
+
children: files?.map(attachment => {
|
|
62
|
+
return /*#__PURE__*/_jsxs(KContainer.Touchable, {
|
|
63
|
+
style: styles.fileItem,
|
|
64
|
+
onPress: () => handleOpenFile(attachment),
|
|
65
|
+
children: [/*#__PURE__*/_jsx(IconPdf, {
|
|
66
|
+
width: 28,
|
|
67
|
+
height: 28
|
|
68
|
+
}), /*#__PURE__*/_jsxs(KContainer.View, {
|
|
69
|
+
style: styles.fileItemContent,
|
|
70
|
+
children: [/*#__PURE__*/_jsx(KLabel.Text, {
|
|
71
|
+
typo: "TextSmNormal",
|
|
72
|
+
children: shortenFileName(attachment.name || '')
|
|
73
|
+
}), /*#__PURE__*/_jsx(KLabel.Text, {
|
|
74
|
+
typo: "Text2XsNormal",
|
|
75
|
+
color: KColors.gray.light,
|
|
76
|
+
children: formatFileSize(attachment.size || 0)
|
|
77
|
+
})]
|
|
78
|
+
})]
|
|
79
|
+
}, attachment.data);
|
|
80
|
+
})
|
|
81
|
+
}), /*#__PURE__*/_jsxs(KContainer.View, {
|
|
82
|
+
style: styles.messageContainer,
|
|
83
|
+
children: [/*#__PURE__*/_jsx(KContainer.View, {
|
|
84
|
+
style: styles.messageContent,
|
|
85
|
+
children: /*#__PURE__*/_jsx(KLabel.Text, {
|
|
86
|
+
typo: "TextMdNormal",
|
|
87
|
+
color: KColors.black,
|
|
88
|
+
children: item.content
|
|
89
|
+
})
|
|
90
|
+
}), /*#__PURE__*/_jsx(IconChatArrow, {
|
|
91
|
+
fill: '#0077FF'
|
|
92
|
+
})]
|
|
21
93
|
})]
|
|
22
94
|
});
|
|
23
95
|
};
|
|
24
96
|
export default ChatUserMessageItem;
|
|
25
97
|
const styles = StyleSheet.create({
|
|
26
98
|
container: {
|
|
27
|
-
|
|
28
|
-
|
|
99
|
+
alignItems: 'flex-end',
|
|
100
|
+
marginVertical: KSpacingValue['0.5rem'],
|
|
101
|
+
gap: KSpacingValue['0.5rem'],
|
|
29
102
|
paddingHorizontal: KSpacingValue['1rem'],
|
|
30
|
-
|
|
103
|
+
maxWidth: '80%',
|
|
104
|
+
alignSelf: 'flex-end',
|
|
105
|
+
flex: 1
|
|
106
|
+
},
|
|
107
|
+
messageContainer: {
|
|
108
|
+
flexDirection: 'row'
|
|
31
109
|
},
|
|
32
|
-
|
|
33
|
-
maxWidth: '70%',
|
|
110
|
+
messageContent: {
|
|
34
111
|
paddingHorizontal: KSpacingValue['1rem'],
|
|
35
112
|
paddingVertical: KSpacingValue['0.5rem'],
|
|
36
113
|
backgroundColor: KColors.hexToRgba('#0077FF', 0.1),
|
|
37
114
|
borderRadius: KSpacingValue['1.5rem'],
|
|
38
115
|
borderTopRightRadius: 0
|
|
39
|
-
}
|
|
116
|
+
},
|
|
117
|
+
imagesContainer: {
|
|
118
|
+
flexDirection: 'row',
|
|
119
|
+
flexWrap: 'wrap',
|
|
120
|
+
gap: KSpacingValue['0.5rem'],
|
|
121
|
+
justifyContent: 'flex-end'
|
|
122
|
+
},
|
|
123
|
+
imageItem: {
|
|
124
|
+
borderRadius: KRadiusValue['2x'],
|
|
125
|
+
width: IMAGE_SIZE,
|
|
126
|
+
height: IMAGE_SIZE
|
|
127
|
+
},
|
|
128
|
+
imageItemContainer: {
|
|
129
|
+
width: IMAGE_SIZE,
|
|
130
|
+
height: IMAGE_SIZE
|
|
131
|
+
},
|
|
132
|
+
filesContainer: {
|
|
133
|
+
gap: KSpacingValue['0.5rem'],
|
|
134
|
+
alignItems: 'flex-end'
|
|
135
|
+
},
|
|
136
|
+
fileItem: {
|
|
137
|
+
position: 'relative',
|
|
138
|
+
paddingVertical: KSpacingValue['0.5rem'],
|
|
139
|
+
paddingHorizontal: KSpacingValue['0.75rem'],
|
|
140
|
+
gap: KSpacingValue['0.5rem'],
|
|
141
|
+
flexDirection: 'row',
|
|
142
|
+
alignItems: 'center',
|
|
143
|
+
borderRadius: KRadiusValue['3x'],
|
|
144
|
+
backgroundColor: KColors.hexToRgba(KColors.gray.light, 0.1)
|
|
145
|
+
},
|
|
146
|
+
fileItemContent: {}
|
|
40
147
|
});
|
|
41
148
|
//# sourceMappingURL=ChatUserMessageItem.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["StyleSheet","KColors","KContainer","KLabel","KSpacingValue","IconChatArrow","jsx","_jsx","jsxs","_jsxs","ChatUserMessageItem","item","View","style","styles","container","children","
|
|
1
|
+
{"version":3,"names":["Dimensions","StyleSheet","KColors","KContainer","KImage","KLabel","KRadiusValue","KSpacingValue","IconChatArrow","useChatContext","useCallback","formatFileSize","shortenFileName","IconPdf","viewDocument","ReactNativeBlobUtil","UIUtils","jsx","_jsx","jsxs","_jsxs","IMAGE_SIZE","get","width","ChatUserMessageItem","item","openImageViewer","images","attachments","filter","attachment","type","files","handleOpenImageViewer","index","map","url","data","handleOpenFile","file","res","config","fileCache","appendExt","fetch","localPath","path","uri","mimeType","mime_type","catch","toast","open","title","name","theme","View","style","styles","container","children","imagesContainer","Touchable","imageItem","onPress","Base","br","imageItemContainer","filesContainer","fileItem","height","fileItemContent","Text","typo","color","gray","light","size","messageContainer","messageContent","black","content","fill","create","alignItems","marginVertical","gap","paddingHorizontal","maxWidth","alignSelf","flex","flexDirection","paddingVertical","backgroundColor","hexToRgba","borderRadius","borderTopRightRadius","flexWrap","justifyContent","position"],"sourceRoot":"../../../../../src","sources":["components/chat/item/ChatUserMessageItem.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/* eslint-disable react-native/no-inline-styles */
|
|
4
|
+
import { forwardRef, memo, useCallback, useEffect, useImperativeHandle, useMemo, useRef, useState } from 'react';
|
|
5
|
+
// @ts-ignore
|
|
6
|
+
import { StyleSheet } from 'react-native';
|
|
7
|
+
import Animated, { FadeInDown, FadeInUp, FadeOutDown, FadeOutUp, useAnimatedStyle, useSharedValue, withSequence, withSpring } from 'react-native-reanimated';
|
|
8
|
+
import get from 'lodash/get';
|
|
9
|
+
import { KButton, KContainer, KImage, KLabel
|
|
10
|
+
// @ts-ignore
|
|
11
|
+
, KSpacingValue, KColors, KDims } from '@droppii/libs';
|
|
12
|
+
import { Z_INDEX_PRIORITY } from "../../constants/index.js";
|
|
13
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
14
|
+
const Toast = /*#__PURE__*/forwardRef((_, ref) => {
|
|
15
|
+
const [data, setData] = useState(undefined);
|
|
16
|
+
const scale = useSharedValue(1);
|
|
17
|
+
const containerRef = useRef(null);
|
|
18
|
+
const timeout = useRef(undefined);
|
|
19
|
+
const dismiss = useCallback(() => {
|
|
20
|
+
setData(undefined);
|
|
21
|
+
}, []);
|
|
22
|
+
useImperativeHandle(ref, () => ({
|
|
23
|
+
open: payload => {
|
|
24
|
+
if (data) {
|
|
25
|
+
scale.value = withSequence(withSpring(1.1, {
|
|
26
|
+
mass: 0.3
|
|
27
|
+
}), withSpring(1, {
|
|
28
|
+
mass: 0.3
|
|
29
|
+
}));
|
|
30
|
+
}
|
|
31
|
+
setData(payload);
|
|
32
|
+
},
|
|
33
|
+
dismiss
|
|
34
|
+
}), [dismiss, scale, data]);
|
|
35
|
+
const {
|
|
36
|
+
type = 'full-fill',
|
|
37
|
+
theme = 'light',
|
|
38
|
+
position = 'bottom',
|
|
39
|
+
contentAlignment = 'center',
|
|
40
|
+
textAlign = 'center',
|
|
41
|
+
stretch,
|
|
42
|
+
action,
|
|
43
|
+
description,
|
|
44
|
+
icon,
|
|
45
|
+
showCloseButton,
|
|
46
|
+
title,
|
|
47
|
+
content,
|
|
48
|
+
onPressContent,
|
|
49
|
+
visibleTimeout = 3000,
|
|
50
|
+
br = '2x',
|
|
51
|
+
withTabBar = true,
|
|
52
|
+
contentContainerStyle
|
|
53
|
+
} = data || {};
|
|
54
|
+
const colors = useMemo(() => {
|
|
55
|
+
const themeColor = theme === 'light' ? 'rgba(61,63,64,0.96)' : get(KColors, `${theme}.normal`, KColors.primary.normal);
|
|
56
|
+
return {
|
|
57
|
+
backgroundColor: theme === 'light' ? themeColor : type === 'revert' ? KColors.white : type === 'full-fill' ? themeColor : get(KColors, `palette.${theme}.w25`, KColors.palette.primary.w50),
|
|
58
|
+
borderColor: theme === 'light' || type !== 'revert' ? undefined : themeColor,
|
|
59
|
+
tintColor: theme === 'light' ? KColors.border.normal : type === 'full-fill' ? KColors.white : themeColor,
|
|
60
|
+
textColor: theme === 'light' ? KColors.border.normal : type === 'revert' ? KColors.gray.dark : type === 'full-fill' ? KColors.white : themeColor,
|
|
61
|
+
closeIconColor: theme === 'light' ? KColors.border.normal : type === 'revert' ? KColors.gray.light : type === 'full-fill' ? KColors.white : themeColor,
|
|
62
|
+
actionRevert: type === 'full-fill'
|
|
63
|
+
};
|
|
64
|
+
}, [type, theme]);
|
|
65
|
+
|
|
66
|
+
// @ts-ignore
|
|
67
|
+
useEffect(() => {
|
|
68
|
+
if (data) {
|
|
69
|
+
// @ts-ignore
|
|
70
|
+
timeout.current = setTimeout(() => {
|
|
71
|
+
dismiss();
|
|
72
|
+
}, visibleTimeout);
|
|
73
|
+
return () => {
|
|
74
|
+
clearTimeout(timeout.current);
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
78
|
+
}, [data]);
|
|
79
|
+
const onPressWrapper = useCallback(onPress => {
|
|
80
|
+
onPress?.();
|
|
81
|
+
dismiss?.();
|
|
82
|
+
}, [dismiss]);
|
|
83
|
+
const rStyle = useAnimatedStyle(() => ({
|
|
84
|
+
transform: [{
|
|
85
|
+
scale: scale.value
|
|
86
|
+
}]
|
|
87
|
+
}));
|
|
88
|
+
const onPressContentWrapper = useCallback(() => {
|
|
89
|
+
onPressContent?.();
|
|
90
|
+
dismiss();
|
|
91
|
+
}, [onPressContent, dismiss]);
|
|
92
|
+
if (!data) {
|
|
93
|
+
return null;
|
|
94
|
+
}
|
|
95
|
+
const Wrapper = onPressContent ? KContainer.Touchable : KContainer.View;
|
|
96
|
+
return /*#__PURE__*/_jsx(Animated.View, {
|
|
97
|
+
style: [styles.content, rStyle, position === 'top' ? styles.top : withTabBar ? styles.bottom : styles.bottomWithoutTabBar]
|
|
98
|
+
// @ts-ignore
|
|
99
|
+
,
|
|
100
|
+
ref: containerRef,
|
|
101
|
+
children: /*#__PURE__*/_jsx(Animated.View, {
|
|
102
|
+
entering: position === 'top' ? FadeInUp : FadeInDown,
|
|
103
|
+
exiting: position === 'top' ? FadeOutUp : FadeOutDown,
|
|
104
|
+
children: /*#__PURE__*/_jsxs(Wrapper, {
|
|
105
|
+
onPress: onPressContentWrapper,
|
|
106
|
+
activeOpacity: 0.9,
|
|
107
|
+
style: [styles.innerContent, {
|
|
108
|
+
backgroundColor: colors.backgroundColor,
|
|
109
|
+
borderWidth: colors.borderColor ? 1 : 0,
|
|
110
|
+
borderColor: colors.borderColor
|
|
111
|
+
}],
|
|
112
|
+
padding: "1rem",
|
|
113
|
+
paddingH: stretch ? '1rem' : '2rem',
|
|
114
|
+
br: br,
|
|
115
|
+
alignSelf: stretch ? 'stretch' : 'center',
|
|
116
|
+
children: [icon && /*#__PURE__*/_jsx(KContainer.View, {
|
|
117
|
+
children: /*#__PURE__*/_jsx(KImage.CommonIcon, {
|
|
118
|
+
...icon,
|
|
119
|
+
size: !icon.size || icon.size > 32 ? 32 : icon.size < 16 ? 16 : icon.size,
|
|
120
|
+
style: styles.leftIcon,
|
|
121
|
+
tintColor: colors.tintColor
|
|
122
|
+
})
|
|
123
|
+
}), /*#__PURE__*/_jsxs(KContainer.View, {
|
|
124
|
+
justifyContent: true,
|
|
125
|
+
alignItems: contentAlignment === 'center' ? 'center' : 'flex-start',
|
|
126
|
+
flex: stretch ? 1 : 0,
|
|
127
|
+
style: contentContainerStyle,
|
|
128
|
+
children: [!!title && /*#__PURE__*/_jsx(KLabel.Text, {
|
|
129
|
+
color: colors.textColor,
|
|
130
|
+
typo: "TextNmMedium",
|
|
131
|
+
textAlign: textAlign || 'center',
|
|
132
|
+
children: title
|
|
133
|
+
}), !!description && /*#__PURE__*/_jsx(KLabel.Text, {
|
|
134
|
+
color: colors.textColor,
|
|
135
|
+
typo: "TextSmNormal",
|
|
136
|
+
textAlign: textAlign || 'center',
|
|
137
|
+
marginT: "0.25rem",
|
|
138
|
+
children: description
|
|
139
|
+
}), content]
|
|
140
|
+
}), action && /*#__PURE__*/_jsx(KContainer.View, {
|
|
141
|
+
style: styles.rightIcon,
|
|
142
|
+
children: /*#__PURE__*/_jsx(KButton.Solid, {
|
|
143
|
+
kind: theme
|
|
144
|
+
// revert={colors.actionRevert}
|
|
145
|
+
,
|
|
146
|
+
label: action.label,
|
|
147
|
+
onPress: onPressWrapper.bind(null, action.onPress)
|
|
148
|
+
})
|
|
149
|
+
}), showCloseButton && /*#__PURE__*/_jsx(KContainer.View, {
|
|
150
|
+
style: styles.rightIcon,
|
|
151
|
+
children: /*#__PURE__*/_jsx(KButton.Close, {
|
|
152
|
+
size: 28,
|
|
153
|
+
color: colors.closeIconColor,
|
|
154
|
+
onPress: dismiss
|
|
155
|
+
})
|
|
156
|
+
})]
|
|
157
|
+
})
|
|
158
|
+
})
|
|
159
|
+
});
|
|
160
|
+
});
|
|
161
|
+
Toast.displayName = 'Portal.Toast';
|
|
162
|
+
export default /*#__PURE__*/memo(Toast);
|
|
163
|
+
const styles = StyleSheet.create({
|
|
164
|
+
content: {
|
|
165
|
+
position: 'absolute',
|
|
166
|
+
left: 0,
|
|
167
|
+
right: 0,
|
|
168
|
+
zIndex: Z_INDEX_PRIORITY.toast,
|
|
169
|
+
marginHorizontal: KSpacingValue['1rem'],
|
|
170
|
+
backgroundColor: KColors.transparent
|
|
171
|
+
},
|
|
172
|
+
innerContent: {
|
|
173
|
+
flexDirection: 'row',
|
|
174
|
+
alignItems: 'center',
|
|
175
|
+
alignSelf: 'center'
|
|
176
|
+
},
|
|
177
|
+
leftIcon: {
|
|
178
|
+
marginRight: KSpacingValue['0.5rem']
|
|
179
|
+
},
|
|
180
|
+
rightIcon: {
|
|
181
|
+
marginLeft: KSpacingValue['0.5rem']
|
|
182
|
+
},
|
|
183
|
+
bottom: {
|
|
184
|
+
bottom: KSpacingValue['1.5rem'] + KDims.bottomTabHeightStatic
|
|
185
|
+
},
|
|
186
|
+
bottomWithoutTabBar: {
|
|
187
|
+
bottom: KSpacingValue['1.5rem']
|
|
188
|
+
},
|
|
189
|
+
top: {
|
|
190
|
+
top: KDims.topBarSafeHeight > 0 ? KDims.topBarSafeHeight + 25 : KSpacingValue['2rem']
|
|
191
|
+
}
|
|
192
|
+
});
|
|
193
|
+
//# sourceMappingURL=Toast.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["forwardRef","memo","useCallback","useEffect","useImperativeHandle","useMemo","useRef","useState","StyleSheet","Animated","FadeInDown","FadeInUp","FadeOutDown","FadeOutUp","useAnimatedStyle","useSharedValue","withSequence","withSpring","get","KButton","KContainer","KImage","KLabel","KSpacingValue","KColors","KDims","Z_INDEX_PRIORITY","jsx","_jsx","jsxs","_jsxs","Toast","_","ref","data","setData","undefined","scale","containerRef","timeout","dismiss","open","payload","value","mass","type","theme","position","contentAlignment","textAlign","stretch","action","description","icon","showCloseButton","title","content","onPressContent","visibleTimeout","br","withTabBar","contentContainerStyle","colors","themeColor","primary","normal","backgroundColor","white","palette","w50","borderColor","tintColor","border","textColor","gray","dark","closeIconColor","light","actionRevert","current","setTimeout","clearTimeout","onPressWrapper","onPress","rStyle","transform","onPressContentWrapper","Wrapper","Touchable","View","style","styles","top","bottom","bottomWithoutTabBar","children","entering","exiting","activeOpacity","innerContent","borderWidth","padding","paddingH","alignSelf","CommonIcon","size","leftIcon","justifyContent","alignItems","flex","Text","color","typo","marginT","rightIcon","Solid","kind","label","bind","Close","displayName","create","left","right","zIndex","toast","marginHorizontal","transparent","flexDirection","marginRight","marginLeft","bottomTabHeightStatic","topBarSafeHeight"],"sourceRoot":"../../../../src","sources":["components/portal/Toast.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { memo } from 'react';
|
|
4
|
+
import ToastBar from "./Toast.js";
|
|
5
|
+
import { toastRef } from "../../constants/index.js";
|
|
6
|
+
import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
7
|
+
const Portal = /*#__PURE__*/memo(() => {
|
|
8
|
+
return /*#__PURE__*/_jsx(_Fragment, {
|
|
9
|
+
children: /*#__PURE__*/_jsx(ToastBar, {
|
|
10
|
+
ref: toastRef
|
|
11
|
+
})
|
|
12
|
+
});
|
|
13
|
+
});
|
|
14
|
+
export default Portal;
|
|
15
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["memo","ToastBar","toastRef","jsx","_jsx","Fragment","_Fragment","Portal","children","ref"],"sourceRoot":"../../../../src","sources":["components/portal/index.tsx"],"mappings":";;AAAA,SAASA,IAAI,QAAQ,OAAO;AAC5B,OAAOC,QAAQ,MAAM,YAAS;AAC9B,SAASC,QAAQ,QAAQ,0BAAiB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA;AAE3C,MAAMC,MAAM,gBAAGP,IAAI,CAAC,MAAM;EACxB,oBACEI,IAAA,CAAAE,SAAA;IAAAE,QAAA,eACEJ,IAAA,CAACH,QAAQ;MAACQ,GAAG,EAAEP;IAAS,CAAE;EAAC,CAC3B,CAAC;AAEP,CAAC,CAAC;AAEF,eAAeK,MAAM","ignoreList":[]}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
export const events = {
|
|
4
4
|
updateOneMessage: 'update_one_message',
|
|
5
5
|
updateMultipleMessage: 'update_multiple_message',
|
|
6
|
-
forceUpdateMessages: 'force_update_messages'
|
|
6
|
+
forceUpdateMessages: 'force_update_messages',
|
|
7
|
+
expandThinkingStep: 'expand_thinking_step'
|
|
7
8
|
};
|
|
8
9
|
//# sourceMappingURL=events.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["events","updateOneMessage","updateMultipleMessage","forceUpdateMessages"],"sourceRoot":"../../../src","sources":["constants/events.ts"],"mappings":";;AAAA,OAAO,MAAMA,MAAM,GAAG;EACpBC,gBAAgB,EAAE,oBAAoB;EACtCC,qBAAqB,EAAE,yBAAyB;EAChDC,mBAAmB,EAAE;
|
|
1
|
+
{"version":3,"names":["events","updateOneMessage","updateMultipleMessage","forceUpdateMessages","expandThinkingStep"],"sourceRoot":"../../../src","sources":["constants/events.ts"],"mappings":";;AAAA,OAAO,MAAMA,MAAM,GAAG;EACpBC,gBAAgB,EAAE,oBAAoB;EACtCC,qBAAqB,EAAE,yBAAyB;EAChDC,mBAAmB,EAAE,uBAAuB;EAC5CC,kBAAkB,EAAE;AACtB,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { createRef } from 'react';
|
|
4
|
+
const MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER + 100;
|
|
5
|
+
export const toastRef = /*#__PURE__*/createRef();
|
|
6
|
+
export const Z_INDEX_PRIORITY = {
|
|
7
|
+
toast: MAX_SAFE_INTEGER - 1
|
|
8
|
+
};
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createRef","MAX_SAFE_INTEGER","Number","toastRef","Z_INDEX_PRIORITY","toast"],"sourceRoot":"../../../src","sources":["constants/index.ts"],"mappings":";;AAAA,SAASA,SAAS,QAAQ,OAAO;AAGjC,MAAMC,gBAAgB,GAAGC,MAAM,CAACD,gBAAgB,GAAG,GAAG;AAEtD,OAAO,MAAME,QAAQ,gBAAGH,SAAS,CAAiB,CAAC;AACnD,OAAO,MAAMI,gBAAgB,GAAG;EAC9BC,KAAK,EAAEJ,gBAAgB,GAAG;AAC5B,CAAC","ignoreList":[]}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
import { createContext, useContext } from 'react';
|
|
4
4
|
import ChatBotAI from "../components/chat/index.js";
|
|
5
|
-
import
|
|
5
|
+
import Portal from "../components/portal/index.js";
|
|
6
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
6
7
|
export const ChatContext = /*#__PURE__*/createContext({
|
|
7
8
|
apiAddress: '',
|
|
8
9
|
userId: '',
|
|
@@ -13,15 +14,17 @@ export const ChatProvider = props => {
|
|
|
13
14
|
const {
|
|
14
15
|
apiAddress,
|
|
15
16
|
userId,
|
|
16
|
-
cartButton
|
|
17
|
+
cartButton,
|
|
18
|
+
openImageViewer
|
|
17
19
|
} = props;
|
|
18
|
-
return /*#__PURE__*/
|
|
20
|
+
return /*#__PURE__*/_jsxs(ChatContext.Provider, {
|
|
19
21
|
value: {
|
|
20
22
|
apiAddress,
|
|
21
23
|
userId,
|
|
22
|
-
cartButton
|
|
24
|
+
cartButton,
|
|
25
|
+
openImageViewer
|
|
23
26
|
},
|
|
24
|
-
children: /*#__PURE__*/_jsx(ChatBotAI, {})
|
|
27
|
+
children: [/*#__PURE__*/_jsx(ChatBotAI, {}), /*#__PURE__*/_jsx(Portal, {})]
|
|
25
28
|
});
|
|
26
29
|
};
|
|
27
30
|
//# sourceMappingURL=ChatContext.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createContext","useContext","ChatBotAI","jsx","_jsx","ChatContext","apiAddress","userId","cartButton","undefined","useChatContext","ChatProvider","props","Provider","value","children"],"sourceRoot":"../../../src","sources":["context/ChatContext.tsx"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,UAAU,QAAQ,OAAO;AAEjD,OAAOC,SAAS,MAAM,6BAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA;
|
|
1
|
+
{"version":3,"names":["createContext","useContext","ChatBotAI","Portal","jsx","_jsx","jsxs","_jsxs","ChatContext","apiAddress","userId","cartButton","undefined","useChatContext","ChatProvider","props","openImageViewer","Provider","value","children"],"sourceRoot":"../../../src","sources":["context/ChatContext.tsx"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,UAAU,QAAQ,OAAO;AAEjD,OAAOC,SAAS,MAAM,6BAAoB;AAC1C,OAAOC,MAAM,MAAM,+BAAsB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAE1C,OAAO,MAAMC,WAAW,gBAAGR,aAAa,CAAkB;EACxDS,UAAU,EAAE,EAAE;EACdC,MAAM,EAAE,EAAE;EACVC,UAAU,EAAEC;AACd,CAAC,CAAC;AAEF,OAAO,MAAMC,cAAc,GAAGA,CAAA,KAAMZ,UAAU,CAACO,WAAW,CAAC;AAE3D,OAAO,MAAMM,YAAY,GAAIC,KAAwB,IAAK;EACxD,MAAM;IAAEN,UAAU;IAAEC,MAAM;IAAEC,UAAU;IAAEK;EAAgB,CAAC,GAAGD,KAAK;EACjE,oBACER,KAAA,CAACC,WAAW,CAACS,QAAQ;IACnBC,KAAK,EAAE;MAAET,UAAU;MAAEC,MAAM;MAAEC,UAAU;MAAEK;IAAgB,CAAE;IAAAG,QAAA,gBAE3Dd,IAAA,CAACH,SAAS,IAAE,CAAC,eACbG,IAAA,CAACF,MAAM,IAAE,CAAC;EAAA,CACU,CAAC;AAE3B,CAAC","ignoreList":[]}
|
|
@@ -49,7 +49,6 @@ export const useMessage = () => {
|
|
|
49
49
|
setLoadState(prev => {
|
|
50
50
|
const existingIds = new Set(prev.messages.map(m => m?.id));
|
|
51
51
|
const filtered = messageItems.filter(m => !existingIds.has(m?.id)).reverse();
|
|
52
|
-
console.log('🚀 ~ useEffect ~ filtered:', prev.messages);
|
|
53
52
|
return {
|
|
54
53
|
...prev,
|
|
55
54
|
messages: [...filtered, ...prev.messages]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useCallback","useEffect","useState","useSessionStore","useFetchSessionById","DeviceEventEmitter","events","initialState","id","title","created_at","updated_at","metadata","source","shared","messages","useMessage","sessionId","state","mutateAsync","getSessionById","loadState","setLoadState","onGetSessionById","res","prev","length","reverse","subOneMessage","addListener","updateOneMessage","messageItem","subMultipleMessage","updateMultipleMessage","messageItems","existingIds","Set","map","m","filtered","filter","has","
|
|
1
|
+
{"version":3,"names":["useCallback","useEffect","useState","useSessionStore","useFetchSessionById","DeviceEventEmitter","events","initialState","id","title","created_at","updated_at","metadata","source","shared","messages","useMessage","sessionId","state","mutateAsync","getSessionById","loadState","setLoadState","onGetSessionById","res","prev","length","reverse","subOneMessage","addListener","updateOneMessage","messageItem","subMultipleMessage","updateMultipleMessage","messageItems","existingIds","Set","map","m","filtered","filter","has","subForceUpdateMessages","forceUpdateMessages","merged","msg","update","find","u","newItems","remove","messageState"],"sourceRoot":"../../../../src","sources":["hooks/message/useMessage.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -16,10 +16,10 @@ export const useSendMessage = () => {
|
|
|
16
16
|
const {
|
|
17
17
|
mutateAsync: createSession
|
|
18
18
|
} = useCreateSession();
|
|
19
|
-
const onSendMessage = useCallback(async message => {
|
|
19
|
+
const onSendMessage = useCallback(async (message, attachments) => {
|
|
20
20
|
const messageItem = {
|
|
21
21
|
id: dayjs().valueOf().toString(),
|
|
22
|
-
attachments: [],
|
|
22
|
+
attachments: attachments || [],
|
|
23
23
|
type: MessageType.user_message,
|
|
24
24
|
created_at: dayjs().toISOString(),
|
|
25
25
|
modified_at: dayjs().toISOString(),
|
|
@@ -43,7 +43,7 @@ export const useSendMessage = () => {
|
|
|
43
43
|
startStream({
|
|
44
44
|
content: message,
|
|
45
45
|
stream: true,
|
|
46
|
-
attachments: [],
|
|
46
|
+
attachments: attachments || [],
|
|
47
47
|
metadata: {
|
|
48
48
|
source: 'user'
|
|
49
49
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useCallback","useSessionStore","useStreamMessage","events","DeviceEventEmitter","MessageType","RoleType","dayjs","useCreateSession","useSendMessage","startStream","stopStream","mutateAsync","createSession","onSendMessage","message","messageItem","id","valueOf","toString","
|
|
1
|
+
{"version":3,"names":["useCallback","useSessionStore","useStreamMessage","events","DeviceEventEmitter","MessageType","RoleType","dayjs","useCreateSession","useSendMessage","startStream","stopStream","mutateAsync","createSession","onSendMessage","message","attachments","messageItem","id","valueOf","toString","type","user_message","created_at","toISOString","modified_at","content","additional_kwargs","response_metadata","name","role","user","metadata","emit","updateOneMessage","latestSessionId","getState","sessionId","resSession","title","setSessionId","stream","source","manual_retry_attempts"],"sourceRoot":"../../../../src","sources":["hooks/message/useSendMessage.ts"],"mappings":";;AAAA,SAASA,WAAW,QAAQ,OAAO;AACnC,OAAOC,eAAe,MAAM,wBAAqB;AACjD,SAASC,gBAAgB,QAAQ,uBAAoB;AACrD,SAASC,MAAM,QAAQ,2BAAwB;AAC/C,SAASC,kBAAkB,QAAQ,cAAc;AACjD,SAAoCC,WAAW,EAAEC,QAAQ,QAAQ,sBAAa;AAC9E,OAAOC,KAAK,MAAM,OAAO;AACzB,SAASC,gBAAgB,QAAQ,gCAA6B;AAE9D,OAAO,MAAMC,cAAc,GAAGA,CAAA,KAAM;EAClC,MAAM;IAAEC,WAAW;IAAEC;EAAW,CAAC,GAAGT,gBAAgB,CAAC,CAAC;EACtD,MAAM;IAAEU,WAAW,EAAEC;EAAc,CAAC,GAAGL,gBAAgB,CAAC,CAAC;EAEzD,MAAMM,aAAa,GAAGd,WAAW,CAC/B,OAAOe,OAAe,EAAEC,WAA2B,KAAK;IACtD,MAAMC,WAAyB,GAAG;MAChCC,EAAE,EAAEX,KAAK,CAAC,CAAC,CAACY,OAAO,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;MAChCJ,WAAW,EAAEA,WAAW,IAAI,EAAE;MAC9BK,IAAI,EAAEhB,WAAW,CAACiB,YAAY;MAC9BC,UAAU,EAAEhB,KAAK,CAAC,CAAC,CAACiB,WAAW,CAAC,CAAC;MACjCC,WAAW,EAAElB,KAAK,CAAC,CAAC,CAACiB,WAAW,CAAC,CAAC;MAClCE,OAAO,EAAEX,OAAO;MAChBY,iBAAiB,EAAE,CAAC,CAAC;MACrBC,iBAAiB,EAAE,CAAC,CAAC;MACrBC,IAAI,EAAE,IAAI;MACVC,IAAI,EAAExB,QAAQ,CAACyB,IAAI;MACnBC,QAAQ,EAAE,CAAC;IACb,CAAC;IACD5B,kBAAkB,CAAC6B,IAAI,CAAC9B,MAAM,CAAC+B,gBAAgB,EAAEjB,WAAW,CAAC;IAE7D,IAAIkB,eAAe;IACnB,IAAI,CAAClC,eAAe,CAACmC,QAAQ,CAAC,CAAC,CAACC,SAAS,EAAE;MACzC,MAAMC,UAAU,GAAG,MAAMzB,aAAa,CAAC;QAAE0B,KAAK,EAAExB;MAAQ,CAAC,CAAC;MAC1D,IAAI,CAACuB,UAAU,EAAE;MACjBrC,eAAe,CAACmC,QAAQ,CAAC,CAAC,CAACI,YAAY,CAACF,UAAU,CAACpB,EAAE,CAAC;MACtDiB,eAAe,GAAGG,UAAU,CAACpB,EAAE;IACjC;IACAR,WAAW,CACT;MACEgB,OAAO,EAAEX,OAAO;MAChB0B,MAAM,EAAE,IAAI;MACZzB,WAAW,EAAEA,WAAW,IAAI,EAAE;MAC9BgB,QAAQ,EAAE;QACRU,MAAM,EAAE;MACV,CAAC;MACDC,qBAAqB,EAAE;IACzB,CAAC,EACDR,eACF,CAAC;EACH,CAAC,EACD,CAACzB,WAAW,EAAEG,aAAa,CAC7B,CAAC;EAED,OAAO;IACLC,aAAa;IACbH;EACF,CAAC;AACH,CAAC","ignoreList":[]}
|