react-native-chatbot-ai 0.1.7 → 0.1.8
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/components/chat/item/ChatUserMessageItem.js +2 -5
- package/lib/module/components/chat/item/ChatUserMessageItem.js.map +1 -1
- package/lib/module/utils/device.js +3 -3
- package/lib/module/utils/device.js.map +1 -1
- package/lib/typescript/src/components/chat/item/ChatUserMessageItem.d.ts.map +1 -1
- package/lib/typescript/src/utils/device.d.ts.map +1 -1
- package/package.json +3 -2
- package/src/components/chat/item/ChatUserMessageItem.tsx +2 -5
- package/src/utils/device.ts +7 -6
|
@@ -7,9 +7,9 @@ import { useChatContext } from "../../../context/ChatContext.js";
|
|
|
7
7
|
import { useCallback } from 'react';
|
|
8
8
|
import { formatFileSize, shortenFileName } from "../../../utils/common.js";
|
|
9
9
|
import { IconPdf } from "../../../assets/svgIcon/IconPdf.js";
|
|
10
|
-
import { viewDocument } from '@react-native-documents/viewer';
|
|
11
10
|
import ReactNativeBlobUtil from 'react-native-blob-util';
|
|
12
11
|
import UIUtils from "../../../utils/ui.js";
|
|
12
|
+
import FileViewer from 'react-native-file-viewer';
|
|
13
13
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
14
14
|
const IMAGE_SIZE = (Dimensions.get('window').width * 0.8 - KSpacingValue['3.5rem']) / 3;
|
|
15
15
|
const ChatUserMessageItem = ({
|
|
@@ -31,10 +31,7 @@ const ChatUserMessageItem = ({
|
|
|
31
31
|
appendExt: 'pdf'
|
|
32
32
|
}).fetch('GET', file.data);
|
|
33
33
|
const localPath = res.path();
|
|
34
|
-
|
|
35
|
-
uri: `file://${localPath}`,
|
|
36
|
-
mimeType: file.mime_type
|
|
37
|
-
}).catch(() => {
|
|
34
|
+
FileViewer.open(localPath).catch(() => {
|
|
38
35
|
UIUtils.toast.open({
|
|
39
36
|
title: `Đã xảy ra lỗi khi mở tệp sau: ${file.name}. Vui lòng thử lại.`,
|
|
40
37
|
theme: 'danger'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Dimensions","StyleSheet","KButton","KColors","KContainer","KImage","KLabel","KRadiusValue","KSpacingValue","IconChatArrow","useChatContext","useCallback","formatFileSize","shortenFileName","IconPdf","
|
|
1
|
+
{"version":3,"names":["Dimensions","StyleSheet","KButton","KColors","KContainer","KImage","KLabel","KRadiusValue","KSpacingValue","IconChatArrow","useChatContext","useCallback","formatFileSize","shortenFileName","IconPdf","ReactNativeBlobUtil","UIUtils","FileViewer","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","open","catch","toast","title","name","theme","View","style","styles","container","children","content","imagesContainer","Touchable","imageItem","onPress","Base","uri","br","imageItemContainer","filesContainer","fileItem","height","fileItemContent","Text","typo","color","gray","light","size","messageContainer","messageContent","black","fill","VisibleView","visible","metadata","status","errorContainer","VectorIcons","danger","normal","dark","flex","Outline","kind","label","icon","vectorName","tintColor","create","marginVertical","gap","paddingHorizontal","alignSelf","alignItems","maxWidth","flexDirection","paddingVertical","backgroundColor","hexToRgba","borderRadius","borderTopRightRadius","flexWrap","justifyContent","position","palette","w25"],"sourceRoot":"../../../../../src","sources":["components/chat/item/ChatUserMessageItem.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import { pick } from '@react-native-documents/picker';
|
|
4
4
|
import UIUtils from "../utils/ui.js";
|
|
5
|
-
import {
|
|
5
|
+
import { Platform } from 'react-native';
|
|
6
6
|
import { openCamera, openPicker } from 'react-native-image-crop-picker';
|
|
7
7
|
import { check, PERMISSIONS, request } from 'react-native-permissions';
|
|
8
8
|
const READ_MEDIA_IMAGES = 'android.permission.READ_MEDIA_IMAGES';
|
|
@@ -25,7 +25,7 @@ const pickerOptions = {
|
|
|
25
25
|
const requestPermission = async (perm, requestMessage, disableToast = false) => {
|
|
26
26
|
try {
|
|
27
27
|
//handle android function check can't return status code blocked
|
|
28
|
-
let granted = Platform.OS === 'android' ? await request(perm) : await check(perm);
|
|
28
|
+
let granted = Platform.OS === 'android' ? perm ? await request(perm) : 'granted' : await check(perm);
|
|
29
29
|
if (granted === 'unavailable') {
|
|
30
30
|
UIUtils.toast.open({
|
|
31
31
|
title: 'Tính năng hiện tại không khả dụng, vui lòng thử lại sau'
|
|
@@ -59,7 +59,7 @@ const requestPermission = async (perm, requestMessage, disableToast = false) =>
|
|
|
59
59
|
const requestReadPhotoPermission = async (disableToast = false) => {
|
|
60
60
|
const perm = Platform.select({
|
|
61
61
|
ios: PERMISSIONS.IOS.PHOTO_LIBRARY,
|
|
62
|
-
default: Platform.Version >= 33 ? READ_MEDIA_IMAGES :
|
|
62
|
+
default: Platform.Version >= 33 ? READ_MEDIA_IMAGES : null
|
|
63
63
|
});
|
|
64
64
|
return requestPermission(perm, 'Vui lòng cấp quyền truy cập vào "Thư viện ảnh" của bạn trước khi sử dụng tính năng này', disableToast);
|
|
65
65
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["pick","UIUtils","
|
|
1
|
+
{"version":3,"names":["pick","UIUtils","Platform","openCamera","openPicker","check","PERMISSIONS","request","READ_MEDIA_IMAGES","pickerOptions","writeTempFile","mediaType","compressImageQuality","width","height","compressImageMaxHeight","compressImageMaxWidth","cropping","cropperCircleOverlay","waitAnimationEnd","includeExif","forceJpg","cropperChooseText","cropperCancelText","requestPermission","perm","requestMessage","disableToast","granted","OS","toast","open","title","result","err","requestReadPhotoPermission","select","ios","IOS","PHOTO_LIBRARY","default","Version","requestCameraPermission","CAMERA","ANDROID","openImagePicker","options","Promise","resolve","isGranted","Error","value","error","undefined","openImageMultiplePicker","multiple","openCameraPicker","openDocumentPicker","mode"],"sourceRoot":"../../../src","sources":["utils/device.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatUserMessageItem.d.ts","sourceRoot":"","sources":["../../../../../../src/components/chat/item/ChatUserMessageItem.tsx"],"names":[],"mappings":"AAUA,OAAO,EAAe,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAU3D,UAAU,wBAAwB;IAChC,IAAI,EAAE,YAAY,CAAC;CACpB;AAID,QAAA,MAAM,mBAAmB,GAAI,UAAU,wBAAwB,
|
|
1
|
+
{"version":3,"file":"ChatUserMessageItem.d.ts","sourceRoot":"","sources":["../../../../../../src/components/chat/item/ChatUserMessageItem.tsx"],"names":[],"mappings":"AAUA,OAAO,EAAe,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAU3D,UAAU,wBAAwB;IAChC,IAAI,EAAE,YAAY,CAAC;CACpB;AAID,QAAA,MAAM,mBAAmB,GAAI,UAAU,wBAAwB,4CAiH9D,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../../../../src/utils/device.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAQ,MAAM,gCAAgC,CAAC;AAG7E,OAAO,EACL,KAAK,EAGL,OAAO,EACP,aAAa,EACd,MAAM,gCAAgC,CAAC;AAGxC,KAAK,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,SAAS,EAAE,OAAO,CAAA;CAAE,GAAG,KAAK,GAAG,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../../../../src/utils/device.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAQ,MAAM,gCAAgC,CAAC;AAG7E,OAAO,EACL,KAAK,EAGL,OAAO,EACP,aAAa,EACd,MAAM,gCAAgC,CAAC;AAGxC,KAAK,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,SAAS,EAAE,OAAO,CAAA;CAAE,GAAG,KAAK,GAAG,KAAK,CAAC;AAqFrE,eAAO,MAAM,eAAe,GAC1B,UAAU,OAAO,KAChB,OAAO,CAAC,aAAa,CAAC,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,GAAG,SAAS,CAgBhE,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAClC,UAAU,OAAO,KAChB,OAAO,CAAC,aAAa,CAAC,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,SAAS,CAiBlE,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAC3B,UAAU,OAAO,KAChB,OAAO,CAAC,aAAa,CAAC,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,GAAG,SAAS,CAiBhE,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAU,UAAU,qBAAqB,yFAUvE,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-chatbot-ai",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.8",
|
|
4
4
|
"description": "React Native library for Chatbot AI",
|
|
5
5
|
"main": "./lib/module/index.js",
|
|
6
6
|
"types": "./lib/typescript/src/index.d.ts",
|
|
@@ -84,6 +84,7 @@
|
|
|
84
84
|
"lodash": "^4.17.21",
|
|
85
85
|
"prettier": "^3.6.2",
|
|
86
86
|
"react-native-builder-bob": "^0.40.13",
|
|
87
|
+
"react-native-file-viewer": "^2.1.5",
|
|
87
88
|
"react-native-image-crop-picker": "^0.51.1",
|
|
88
89
|
"react-native-marked": "^7.0.2",
|
|
89
90
|
"react-native-sse": "^1.2.1",
|
|
@@ -94,11 +95,11 @@
|
|
|
94
95
|
"peerDependencies": {
|
|
95
96
|
"@droppii/libs": "*",
|
|
96
97
|
"@react-native-documents/picker": "*",
|
|
97
|
-
"@react-native-documents/viewer": "*",
|
|
98
98
|
"@tanstack/react-query": "*",
|
|
99
99
|
"react": "*",
|
|
100
100
|
"react-native": "*",
|
|
101
101
|
"react-native-blob-util": "*",
|
|
102
|
+
"react-native-file-viewer": "*",
|
|
102
103
|
"react-native-popup-menu": "*"
|
|
103
104
|
},
|
|
104
105
|
"workspaces": [
|
|
@@ -14,9 +14,9 @@ import { useChatContext } from '../../../context/ChatContext';
|
|
|
14
14
|
import { useCallback } from 'react';
|
|
15
15
|
import { formatFileSize, shortenFileName } from '../../../utils/common';
|
|
16
16
|
import { IconPdf } from '../../../assets/svgIcon/IconPdf';
|
|
17
|
-
import { viewDocument } from '@react-native-documents/viewer';
|
|
18
17
|
import ReactNativeBlobUtil from 'react-native-blob-util';
|
|
19
18
|
import UIUtils from '../../../utils/ui';
|
|
19
|
+
import FileViewer from 'react-native-file-viewer';
|
|
20
20
|
|
|
21
21
|
interface ChatUserMessageItemProps {
|
|
22
22
|
item: IMessageItem;
|
|
@@ -52,10 +52,7 @@ const ChatUserMessageItem = ({ item }: ChatUserMessageItemProps) => {
|
|
|
52
52
|
}).fetch('GET', file.data);
|
|
53
53
|
|
|
54
54
|
const localPath = res.path();
|
|
55
|
-
|
|
56
|
-
uri: `file://${localPath}`,
|
|
57
|
-
mimeType: file.mime_type,
|
|
58
|
-
}).catch(() => {
|
|
55
|
+
FileViewer.open(localPath).catch(() => {
|
|
59
56
|
UIUtils.toast.open({
|
|
60
57
|
title: `Đã xảy ra lỗi khi mở tệp sau: ${file.name}. Vui lòng thử lại.`,
|
|
61
58
|
theme: 'danger',
|
package/src/utils/device.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { DocumentPickerOptions, pick } from '@react-native-documents/picker';
|
|
2
2
|
import UIUtils from '../utils/ui';
|
|
3
|
-
import {
|
|
3
|
+
import { Platform } from 'react-native';
|
|
4
4
|
import {
|
|
5
5
|
Image,
|
|
6
6
|
openCamera,
|
|
@@ -39,7 +39,11 @@ const requestPermission = async (
|
|
|
39
39
|
try {
|
|
40
40
|
//handle android function check can't return status code blocked
|
|
41
41
|
let granted =
|
|
42
|
-
Platform.OS === 'android'
|
|
42
|
+
Platform.OS === 'android'
|
|
43
|
+
? perm
|
|
44
|
+
? await request(perm)
|
|
45
|
+
: 'granted'
|
|
46
|
+
: await check(perm);
|
|
43
47
|
if (granted === 'unavailable') {
|
|
44
48
|
UIUtils.toast.open({
|
|
45
49
|
title: 'Tính năng hiện tại không khả dụng, vui lòng thử lại sau',
|
|
@@ -74,10 +78,7 @@ const requestPermission = async (
|
|
|
74
78
|
const requestReadPhotoPermission = async (disableToast = false) => {
|
|
75
79
|
const perm = Platform.select({
|
|
76
80
|
ios: PERMISSIONS.IOS.PHOTO_LIBRARY,
|
|
77
|
-
default:
|
|
78
|
-
(Platform.Version as number) >= 33
|
|
79
|
-
? READ_MEDIA_IMAGES
|
|
80
|
-
: PermissionsAndroid.PERMISSIONS.READ_EXTERNAL_STORAGE,
|
|
81
|
+
default: (Platform.Version as number) >= 33 ? READ_MEDIA_IMAGES : null,
|
|
81
82
|
});
|
|
82
83
|
return requestPermission(
|
|
83
84
|
perm as any,
|