@amityco/react-native-social-uikit 4.0.0 → 4.0.1-0037d7d.0

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.
@@ -8,6 +8,7 @@ var _tsSdkReactNative = require("@amityco/ts-sdk-react-native");
8
8
  var _reactNative = require("react-native");
9
9
  var _reactQuery = require("@tanstack/react-query");
10
10
  var _constants = require("../constants");
11
+ var _fileUpload = require("../utils/fileUpload");
11
12
  function useUpload() {
12
13
  const {
13
14
  mutateAsync,
@@ -27,13 +28,11 @@ function useUpload() {
27
28
  const formData = new FormData();
28
29
  const parts = file.split('/');
29
30
  const fileName = parts[parts.length - 1];
30
- const fileType = _reactNative.Platform.OS === 'ios' ? 'image/jpeg' : 'image/jpg';
31
- const uri = _reactNative.Platform.OS === 'android' ? file : file.replace('file://', '');
32
- formData.append('files', {
33
- name: fileName,
34
- type: fileType,
35
- uri: uri
36
- });
31
+
32
+ // Attach the file as a React-Native { uri, name, type } multipart part.
33
+ // This works on both the Old and New (Bridgeless) Architecture and is what
34
+ // the SDK's uploadImage expects (it reads files[0].name for preferredFilename).
35
+ (0, _fileUpload.appendFileToFormData)(formData, 'files', file, fileName, 'image/jpeg');
37
36
  return await mutateAsync({
38
37
  file: formData,
39
38
  onProgress,
@@ -1 +1 @@
1
- {"version":3,"names":["_tsSdkReactNative","require","_reactNative","_reactQuery","_constants","useUpload","mutateAsync","isPending","useMutation","mutationFn","file","onProgress","altText","FileRepository","uploadImage","formData","FormData","parts","split","fileName","length","fileType","Platform","OS","uri","replace","append","name","type","onError","error","message","includes","ERROR_CODE","INVALID_IMAGE","VIOLENCE","Alert","alert","text","isImageUploading"],"sourceRoot":"../../../../src","sources":["core/hooks/useUpload.ts"],"mappings":";;;;;;AAAA,IAAAA,iBAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AAoBO,SAASI,SAASA,CAAA,EAAG;EAC1B,MAAM;IAAEC,WAAW;IAAEC;EAAU,CAAC,GAAG,IAAAC,uBAAW,EAI5C;IACAC,UAAU,EAAEA,CAAC;MAAEC,IAAI;MAAEC,UAAU;MAAEC;IAAQ,CAAC,KACxCC,gCAAc,CAACC,WAAW,CAACJ,IAAI,EAAEC,UAAU,EAAEC,OAAO;EACxD,CAAC,CAAC;EAEF,MAAME,WAAW,GAAG,MAAAA,CAAO;IACzBJ,IAAI;IACJC,UAAU;IACVC;EACuB,CAAC,KAAK;IAC7B,MAAMG,QAAQ,GAAG,IAAIC,QAAQ,CAAC,CAAC;IAC/B,MAAMC,KAAK,GAAGP,IAAI,CAACQ,KAAK,CAAC,GAAG,CAAC;IAC7B,MAAMC,QAAQ,GAAGF,KAAK,CAACA,KAAK,CAACG,MAAM,GAAG,CAAC,CAAC;IACxC,MAAMC,QAAQ,GAAGC,qBAAQ,CAACC,EAAE,KAAK,KAAK,GAAG,YAAY,GAAG,WAAW;IACnE,MAAMC,GAAG,GAAGF,qBAAQ,CAACC,EAAE,KAAK,SAAS,GAAGb,IAAI,GAAGA,IAAI,CAACe,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;IAE1EV,QAAQ,CAACW,MAAM,CAAC,OAAO,EAAE;MACvBC,IAAI,EAAER,QAAQ;MACdS,IAAI,EAAEP,QAAQ;MACdG,GAAG,EAAEA;IACP,CAAC,CAAC;IAEF,OAAO,MAAMlB,WAAW,CACtB;MACEI,IAAI,EAAEK,QAAQ;MACdJ,UAAU;MACVC;IACF,CAAC,EACD;MACEiB,OAAO,EAAGC,KAAK,IAAK;QAClB,IACEA,KAAK,CAACC,OAAO,CAACC,QAAQ,CAACC,qBAAU,CAACC,aAAa,CAAC,IAChDJ,KAAK,CAACC,OAAO,CAACC,QAAQ,CAACC,qBAAU,CAACE,QAAQ,CAAC,EAC3C;UACAC,kBAAK,CAACC,KAAK,CACT,qBAAqB,EACrB,4CAA4C,EAC5C,CAAC;YAAEC,IAAI,EAAE;UAAK,CAAC,CACjB,CAAC;QACH,CAAC,MAAM;UACLF,kBAAK,CAACC,KAAK,CAAC,eAAe,EAAE,mBAAmB,EAAE,CAAC;YAAEC,IAAI,EAAE;UAAK,CAAC,CAAC,CAAC;QACrE;MACF;IACF,CACF,CAAC;EACH,CAAC;EAED,OAAO;IACLxB,WAAW;IACXyB,gBAAgB,EAAEhC;EACpB,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"names":["_tsSdkReactNative","require","_reactNative","_reactQuery","_constants","_fileUpload","useUpload","mutateAsync","isPending","useMutation","mutationFn","file","onProgress","altText","FileRepository","uploadImage","formData","FormData","parts","split","fileName","length","appendFileToFormData","onError","error","message","includes","ERROR_CODE","INVALID_IMAGE","VIOLENCE","Alert","alert","text","isImageUploading"],"sourceRoot":"../../../../src","sources":["core/hooks/useUpload.ts"],"mappings":";;;;;;AAAA,IAAAA,iBAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AAoBO,SAASK,SAASA,CAAA,EAAG;EAC1B,MAAM;IAAEC,WAAW;IAAEC;EAAU,CAAC,GAAG,IAAAC,uBAAW,EAI5C;IACAC,UAAU,EAAEA,CAAC;MAAEC,IAAI;MAAEC,UAAU;MAAEC;IAAQ,CAAC,KACxCC,gCAAc,CAACC,WAAW,CAACJ,IAAI,EAAEC,UAAU,EAAEC,OAAO;EACxD,CAAC,CAAC;EAEF,MAAME,WAAW,GAAG,MAAAA,CAAO;IACzBJ,IAAI;IACJC,UAAU;IACVC;EACuB,CAAC,KAAK;IAC7B,MAAMG,QAAQ,GAAG,IAAIC,QAAQ,CAAC,CAAC;IAC/B,MAAMC,KAAK,GAAGP,IAAI,CAACQ,KAAK,CAAC,GAAG,CAAC;IAC7B,MAAMC,QAAQ,GAAGF,KAAK,CAACA,KAAK,CAACG,MAAM,GAAG,CAAC,CAAC;;IAExC;IACA;IACA;IACA,IAAAC,gCAAoB,EAACN,QAAQ,EAAE,OAAO,EAAEL,IAAI,EAAES,QAAQ,EAAE,YAAY,CAAC;IAErE,OAAO,MAAMb,WAAW,CACtB;MACEI,IAAI,EAAEK,QAAQ;MACdJ,UAAU;MACVC;IACF,CAAC,EACD;MACEU,OAAO,EAAGC,KAAK,IAAK;QAClB,IACEA,KAAK,CAACC,OAAO,CAACC,QAAQ,CAACC,qBAAU,CAACC,aAAa,CAAC,IAChDJ,KAAK,CAACC,OAAO,CAACC,QAAQ,CAACC,qBAAU,CAACE,QAAQ,CAAC,EAC3C;UACAC,kBAAK,CAACC,KAAK,CACT,qBAAqB,EACrB,4CAA4C,EAC5C,CAAC;YAAEC,IAAI,EAAE;UAAK,CAAC,CACjB,CAAC;QACH,CAAC,MAAM;UACLF,kBAAK,CAACC,KAAK,CAAC,eAAe,EAAE,mBAAmB,EAAE,CAAC;YAAEC,IAAI,EAAE;UAAK,CAAC,CAAC,CAAC;QACrE;MACF;IACF,CACF,CAAC;EACH,CAAC;EAED,OAAO;IACLjB,WAAW;IACXkB,gBAAgB,EAAEzB;EACpB,CAAC;AACH","ignoreList":[]}
@@ -9,18 +9,14 @@ exports.uploadImageFile = uploadImageFile;
9
9
  exports.uploadVideoFile = uploadVideoFile;
10
10
  var _tsSdkReactNative = require("@amityco/ts-sdk-react-native");
11
11
  var _reactNative = require("react-native");
12
+ var _fileUpload = require("../utils/fileUpload");
12
13
  async function uploadFile(filePath, perCentCallback) {
13
14
  return await new Promise(async (resolve, reject) => {
14
15
  const formData = new FormData();
15
16
  const parts = filePath.split('/');
16
17
  const fileName = parts[parts.length - 1];
17
18
  const fileType = _reactNative.Platform.OS === 'ios' ? 'image/jpeg' : 'image/jpg';
18
- const uri = _reactNative.Platform.OS === 'android' ? filePath : filePath.replace('file://', '');
19
- formData.append('files', {
20
- name: fileName,
21
- type: fileType,
22
- uri: uri
23
- });
19
+ await (0, _fileUpload.appendFileToFormData)(formData, 'files', filePath, fileName, fileType);
24
20
  const {
25
21
  data: file
26
22
  } = await _tsSdkReactNative.FileRepository.uploadFile(formData, percent => {
@@ -40,12 +36,7 @@ async function uploadImageFile(filePath, perCentCallback) {
40
36
  const parts = filePath.split('/');
41
37
  const fileName = parts[parts.length - 1];
42
38
  const fileType = _reactNative.Platform.OS === 'ios' ? 'image/jpeg' : 'image/jpg';
43
- const uri = _reactNative.Platform.OS === 'android' ? filePath : filePath.replace('file://', '');
44
- formData.append('files', {
45
- name: fileName,
46
- type: fileType,
47
- uri: uri
48
- });
39
+ await (0, _fileUpload.appendFileToFormData)(formData, 'files', filePath, fileName, fileType);
49
40
  const {
50
41
  data: file
51
42
  } = await _tsSdkReactNative.FileRepository.uploadImage(formData, percent => {
@@ -81,13 +72,7 @@ async function uploadVideoFile(filePath, perCentCallback) {
81
72
  const formData = new FormData();
82
73
  const parts = filePath.split('/');
83
74
  const fileName = parts[parts.length - 1];
84
- // const fileType = Platform.OS === 'ios' ? 'image/jpeg' : 'image/jpg';
85
- const uri = _reactNative.Platform.OS === 'android' ? filePath : filePath.replace('file://', '');
86
- formData.append('files', {
87
- name: fileName,
88
- type: 'video/*',
89
- uri: uri
90
- });
75
+ await (0, _fileUpload.appendFileToFormData)(formData, 'files', filePath, fileName, 'video/mp4');
91
76
  const {
92
77
  data: file
93
78
  } = await _tsSdkReactNative.FileRepository.uploadVideo(formData, _tsSdkReactNative.ContentFeedType.POST, percent => {
@@ -1 +1 @@
1
- {"version":3,"names":["_tsSdkReactNative","require","_reactNative","uploadFile","filePath","perCentCallback","Promise","resolve","reject","formData","FormData","parts","split","fileName","length","fileType","Platform","OS","uri","replace","append","name","type","data","file","FileRepository","percent","uploadImageFile","uploadImage","message","error","_error$message","_error$message2","includes","details","code","originalError","uploadVideoFile","uploadVideo","ContentFeedType","POST","deleteAmityFile","fileId","reactionObject","isFileDeleted","deleteFile"],"sourceRoot":"../../../../src","sources":["core/legacy/file.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_tsSdkReactNative","require","_reactNative","_fileUpload","uploadFile","filePath","perCentCallback","Promise","resolve","reject","formData","FormData","parts","split","fileName","length","fileType","Platform","OS","appendFileToFormData","data","file","FileRepository","percent","uploadImageFile","uploadImage","message","error","_error$message","_error$message2","includes","details","code","originalError","uploadVideoFile","uploadVideo","ContentFeedType","POST","deleteAmityFile","fileId","reactionObject","isFileDeleted","deleteFile"],"sourceRoot":"../../../../src","sources":["core/legacy/file.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.appendFileToFormData = appendFileToFormData;
7
+ var _reactNative = require("react-native");
8
+ /**
9
+ * fileUpload.ts
10
+ *
11
+ * Helper for attaching a local file to a FormData for upload to the Amity SDK.
12
+ *
13
+ * Why the `{ uri, name, type }` object (and NOT a Blob)
14
+ * -----------------------------------------------------
15
+ * React Native's `FormData.getParts()` only turns a value into a multipart
16
+ * *file* part when that value is an object carrying a `uri`:
17
+ *
18
+ * • `name` → the `filename` in the `Content-Disposition` header
19
+ * • `type` → the part's `Content-Type`
20
+ * • `uri` → the local path the native networking layer streams bytes from
21
+ *
22
+ * This is the canonical React Native upload pattern and works on BOTH the Old
23
+ * and the New (Bridgeless / JSI) Architecture — RN 0.83 did not change this JS
24
+ * API. The Amity SDK's `uploadImage` is built around it too: it calls
25
+ * `formData.getAll('files')` and reads `files[0].name` to set
26
+ * `preferredFilename`.
27
+ *
28
+ * Do NOT append a Blob here. A Blob produced by `fetch(uri).blob()` has:
29
+ * • no `uri` → RN attaches no file body, so the request carries no
30
+ * bytes and the server responds `400 "No files
31
+ * uploaded."`
32
+ * • no top-level `name` → `files[0].name` is `null`, so `preferredFilename`
33
+ * is sent as `null`.
34
+ * That combination is exactly the failure seen in PDT-3461.
35
+ */
36
+
37
+ /**
38
+ * Append a local file to `formData` as a React-Native multipart file part.
39
+ *
40
+ * @param formData The FormData instance to mutate.
41
+ * @param fieldName The multipart field name (e.g. `'files'`).
42
+ * @param fileUri Local file URI (`file://…` or `content://…`).
43
+ * @param fileName The filename sent in the Content-Disposition header.
44
+ * @param mimeType MIME type for the part (e.g. `'image/jpeg'`).
45
+ */
46
+ function appendFileToFormData(formData, fieldName, fileUri, fileName, mimeType) {
47
+ // Android keeps the URI as-is (`content://` / `file://` are both streamable);
48
+ // iOS expects the `file://` scheme stripped to a bare path.
49
+ const uri = _reactNative.Platform.OS === 'android' ? fileUri : fileUri.replace('file://', '');
50
+
51
+ // RN's FormData.append is typed for the legacy `{ uri, name, type }` object
52
+ // but its TS types don't expose that overload, so we cast to `any`.
53
+ formData.append(fieldName, {
54
+ uri,
55
+ name: fileName,
56
+ type: mimeType
57
+ });
58
+ }
59
+ //# sourceMappingURL=fileUpload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactNative","require","appendFileToFormData","formData","fieldName","fileUri","fileName","mimeType","uri","Platform","OS","replace","append","name","type"],"sourceRoot":"../../../../src","sources":["core/utils/fileUpload.ts"],"mappings":";;;;;;AA6BA,IAAAA,YAAA,GAAAC,OAAA;AA7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,oBAAoBA,CAClCC,QAAkB,EAClBC,SAAiB,EACjBC,OAAe,EACfC,QAAgB,EAChBC,QAAgB,EACV;EACN;EACA;EACA,MAAMC,GAAG,GACPC,qBAAQ,CAACC,EAAE,KAAK,SAAS,GAAGL,OAAO,GAAGA,OAAO,CAACM,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;;EAEtE;EACA;EACAR,QAAQ,CAACS,MAAM,CAACR,SAAS,EAAE;IACzBI,GAAG;IACHK,IAAI,EAAEP,QAAQ;IACdQ,IAAI,EAAEP;EACR,CAAQ,CAAC;AACX","ignoreList":[]}
@@ -20,6 +20,7 @@ var _useFile = require("../../../hooks/useFile");
20
20
  var _url = require("../../../../core/utils/url");
21
21
  var _LoadingOverlay = require("../../../components/legacy/LoadingOverlay");
22
22
  var _mime = _interopRequireDefault(require("mime"));
23
+ var _fileUpload = require("../../../../core/utils/fileUpload");
23
24
  var _toastSlice = require("../../../../core/stores/slices/toastSlice");
24
25
  var _reactNativeSafeAreaContext = require("react-native-safe-area-context");
25
26
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
@@ -101,11 +102,7 @@ const AmityDraftStoryPage = ({
101
102
  const formData = new FormData();
102
103
  const isImage = type === _enums.StoryType.image;
103
104
  const mimeType = _mime.default.getType(mediaType.uri) ?? (isImage ? 'image/jpeg' : 'video/mp4');
104
- formData.append('files', {
105
- uri: mediaType.uri,
106
- name: mediaType.name,
107
- type: mimeType
108
- });
105
+ await (0, _fileUpload.appendFileToFormData)(formData, 'files', mediaType.uri, mediaType.name, mimeType);
109
106
  try {
110
107
  setLoading(true);
111
108
  if (type === _enums.StoryType.image) {
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_react","_reactNativeLinearGradient","_interopRequireDefault","_reactNativeVideo","_xml","_reactNativeSvg","_styles","_tsSdkReactNative","_enums","_reactNativePaper","_useConfigImageUri","_HyperLinkConfig","_useFile","_url","_LoadingOverlay","_mime","_toastSlice","_reactNativeSafeAreaContext","e","__esModule","default","AmityDraftStoryPage","targetId","targetType","mediaType","onCreateStory","onDiscardStory","_hyperlink$","_hyperlink$2","_hyperlink$3","_hyperlink$4","type","getMediaTypeFromUrl","uri","styles","useStyles","getImage","useFile","imageDisplayMode","setImageDisplayMode","useState","isVisibleModal","setIsVisibleModal","communityAvatarUrl","setCommunityAvatarUrl","hyperlink","setHyperlink","undefined","loading","setLoading","theme","useTheme","aspectRatioIcon","useConfigImageUri","configPath","page","PageID","CreateStoryPage","component","ComponentID","WildCardComponent","element","ElementID","AspectRatioBtn","configKey","hyperLinkIcon","StoryHyperLinkBtn","showToast","useToast","useEffect","CommunityRepository","getCommunity","error","isLoading","data","image","fileId","avatarFileId","imageSize","ImageSizeState","small","onPressBack","useCallback","Alert","alert","text","style","onPress","onPressAspectRatio","prev","onPressHyperLink","onPressShareStory","formData","FormData","isImage","StoryType","mimeType","mime","getType","append","name","StoryRepository","createImageStory","createVideoStory","message","onHyperLinkSubmit","item","storyItem","React","createElement","SafeAreaView","container","View","imageContainer","Fragment","Image","source","blurredBackground","resizeMode","blurRadius","paused","repeat","colors","start","x","y","end","storyGradient","length","TouchableOpacity","hyperlinkContainer","SvgXml","xml","storyHyperLinkIcon","width","height","Text","hyperlinkText","customText","url","shareStoryBtn","avatar","shareStoryTxt","rightLongArrow","baseShade2","backBtn","leftLongArrow","aspectRatioBtn","aspectRationIcon","hyperLinkBtn","hyperlinkItem","LoadingOverlay","_default","exports","memo"],"sourceRoot":"../../../../../../src","sources":["social/features/story/Draft/Draft.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_react","_reactNativeLinearGradient","_interopRequireDefault","_reactNativeVideo","_xml","_reactNativeSvg","_styles","_tsSdkReactNative","_enums","_reactNativePaper","_useConfigImageUri","_HyperLinkConfig","_useFile","_url","_LoadingOverlay","_mime","_fileUpload","_toastSlice","_reactNativeSafeAreaContext","e","__esModule","default","AmityDraftStoryPage","targetId","targetType","mediaType","onCreateStory","onDiscardStory","_hyperlink$","_hyperlink$2","_hyperlink$3","_hyperlink$4","type","getMediaTypeFromUrl","uri","styles","useStyles","getImage","useFile","imageDisplayMode","setImageDisplayMode","useState","isVisibleModal","setIsVisibleModal","communityAvatarUrl","setCommunityAvatarUrl","hyperlink","setHyperlink","undefined","loading","setLoading","theme","useTheme","aspectRatioIcon","useConfigImageUri","configPath","page","PageID","CreateStoryPage","component","ComponentID","WildCardComponent","element","ElementID","AspectRatioBtn","configKey","hyperLinkIcon","StoryHyperLinkBtn","showToast","useToast","useEffect","CommunityRepository","getCommunity","error","isLoading","data","image","fileId","avatarFileId","imageSize","ImageSizeState","small","onPressBack","useCallback","Alert","alert","text","style","onPress","onPressAspectRatio","prev","onPressHyperLink","onPressShareStory","formData","FormData","isImage","StoryType","mimeType","mime","getType","appendFileToFormData","name","StoryRepository","createImageStory","createVideoStory","message","onHyperLinkSubmit","item","storyItem","React","createElement","SafeAreaView","container","View","imageContainer","Fragment","Image","source","blurredBackground","resizeMode","blurRadius","paused","repeat","colors","start","x","y","end","storyGradient","length","TouchableOpacity","hyperlinkContainer","SvgXml","xml","storyHyperLinkIcon","width","height","Text","hyperlinkText","customText","url","shareStoryBtn","avatar","shareStoryTxt","rightLongArrow","baseShade2","backBtn","leftLongArrow","aspectRatioBtn","aspectRationIcon","hyperLinkBtn","hyperlinkItem","LoadingOverlay","_default","exports","memo"],"sourceRoot":"../../../../../../src","sources":["social/features/story/Draft/Draft.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,7 +1,8 @@
1
1
  import { FileRepository } from '@amityco/ts-sdk-react-native';
2
- import { Alert, Platform } from 'react-native';
2
+ import { Alert } from 'react-native';
3
3
  import { useMutation } from '@tanstack/react-query';
4
4
  import { ERROR_CODE } from '../constants';
5
+ import { appendFileToFormData } from '../utils/fileUpload';
5
6
  export function useUpload() {
6
7
  const {
7
8
  mutateAsync,
@@ -21,13 +22,11 @@ export function useUpload() {
21
22
  const formData = new FormData();
22
23
  const parts = file.split('/');
23
24
  const fileName = parts[parts.length - 1];
24
- const fileType = Platform.OS === 'ios' ? 'image/jpeg' : 'image/jpg';
25
- const uri = Platform.OS === 'android' ? file : file.replace('file://', '');
26
- formData.append('files', {
27
- name: fileName,
28
- type: fileType,
29
- uri: uri
30
- });
25
+
26
+ // Attach the file as a React-Native { uri, name, type } multipart part.
27
+ // This works on both the Old and New (Bridgeless) Architecture and is what
28
+ // the SDK's uploadImage expects (it reads files[0].name for preferredFilename).
29
+ appendFileToFormData(formData, 'files', file, fileName, 'image/jpeg');
31
30
  return await mutateAsync({
32
31
  file: formData,
33
32
  onProgress,
@@ -1 +1 @@
1
- {"version":3,"names":["FileRepository","Alert","Platform","useMutation","ERROR_CODE","useUpload","mutateAsync","isPending","mutationFn","file","onProgress","altText","uploadImage","formData","FormData","parts","split","fileName","length","fileType","OS","uri","replace","append","name","type","onError","error","message","includes","INVALID_IMAGE","VIOLENCE","alert","text","isImageUploading"],"sourceRoot":"../../../../src","sources":["core/hooks/useUpload.ts"],"mappings":"AAAA,SAASA,cAAc,QAAQ,8BAA8B;AAC7D,SAASC,KAAK,EAAEC,QAAQ,QAAQ,cAAc;AAC9C,SAASC,WAAW,QAAQ,uBAAuB;AACnD,SAASC,UAAU,QAAQ,cAAc;AAoBzC,OAAO,SAASC,SAASA,CAAA,EAAG;EAC1B,MAAM;IAAEC,WAAW;IAAEC;EAAU,CAAC,GAAGJ,WAAW,CAI5C;IACAK,UAAU,EAAEA,CAAC;MAAEC,IAAI;MAAEC,UAAU;MAAEC;IAAQ,CAAC,KACxCX,cAAc,CAACY,WAAW,CAACH,IAAI,EAAEC,UAAU,EAAEC,OAAO;EACxD,CAAC,CAAC;EAEF,MAAMC,WAAW,GAAG,MAAAA,CAAO;IACzBH,IAAI;IACJC,UAAU;IACVC;EACuB,CAAC,KAAK;IAC7B,MAAME,QAAQ,GAAG,IAAIC,QAAQ,CAAC,CAAC;IAC/B,MAAMC,KAAK,GAAGN,IAAI,CAACO,KAAK,CAAC,GAAG,CAAC;IAC7B,MAAMC,QAAQ,GAAGF,KAAK,CAACA,KAAK,CAACG,MAAM,GAAG,CAAC,CAAC;IACxC,MAAMC,QAAQ,GAAGjB,QAAQ,CAACkB,EAAE,KAAK,KAAK,GAAG,YAAY,GAAG,WAAW;IACnE,MAAMC,GAAG,GAAGnB,QAAQ,CAACkB,EAAE,KAAK,SAAS,GAAGX,IAAI,GAAGA,IAAI,CAACa,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;IAE1ET,QAAQ,CAACU,MAAM,CAAC,OAAO,EAAE;MACvBC,IAAI,EAAEP,QAAQ;MACdQ,IAAI,EAAEN,QAAQ;MACdE,GAAG,EAAEA;IACP,CAAC,CAAC;IAEF,OAAO,MAAMf,WAAW,CACtB;MACEG,IAAI,EAAEI,QAAQ;MACdH,UAAU;MACVC;IACF,CAAC,EACD;MACEe,OAAO,EAAGC,KAAK,IAAK;QAClB,IACEA,KAAK,CAACC,OAAO,CAACC,QAAQ,CAACzB,UAAU,CAAC0B,aAAa,CAAC,IAChDH,KAAK,CAACC,OAAO,CAACC,QAAQ,CAACzB,UAAU,CAAC2B,QAAQ,CAAC,EAC3C;UACA9B,KAAK,CAAC+B,KAAK,CACT,qBAAqB,EACrB,4CAA4C,EAC5C,CAAC;YAAEC,IAAI,EAAE;UAAK,CAAC,CACjB,CAAC;QACH,CAAC,MAAM;UACLhC,KAAK,CAAC+B,KAAK,CAAC,eAAe,EAAE,mBAAmB,EAAE,CAAC;YAAEC,IAAI,EAAE;UAAK,CAAC,CAAC,CAAC;QACrE;MACF;IACF,CACF,CAAC;EACH,CAAC;EAED,OAAO;IACLrB,WAAW;IACXsB,gBAAgB,EAAE3B;EACpB,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"names":["FileRepository","Alert","useMutation","ERROR_CODE","appendFileToFormData","useUpload","mutateAsync","isPending","mutationFn","file","onProgress","altText","uploadImage","formData","FormData","parts","split","fileName","length","onError","error","message","includes","INVALID_IMAGE","VIOLENCE","alert","text","isImageUploading"],"sourceRoot":"../../../../src","sources":["core/hooks/useUpload.ts"],"mappings":"AAAA,SAASA,cAAc,QAAQ,8BAA8B;AAC7D,SAASC,KAAK,QAAQ,cAAc;AACpC,SAASC,WAAW,QAAQ,uBAAuB;AACnD,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,oBAAoB,QAAQ,qBAAqB;AAoB1D,OAAO,SAASC,SAASA,CAAA,EAAG;EAC1B,MAAM;IAAEC,WAAW;IAAEC;EAAU,CAAC,GAAGL,WAAW,CAI5C;IACAM,UAAU,EAAEA,CAAC;MAAEC,IAAI;MAAEC,UAAU;MAAEC;IAAQ,CAAC,KACxCX,cAAc,CAACY,WAAW,CAACH,IAAI,EAAEC,UAAU,EAAEC,OAAO;EACxD,CAAC,CAAC;EAEF,MAAMC,WAAW,GAAG,MAAAA,CAAO;IACzBH,IAAI;IACJC,UAAU;IACVC;EACuB,CAAC,KAAK;IAC7B,MAAME,QAAQ,GAAG,IAAIC,QAAQ,CAAC,CAAC;IAC/B,MAAMC,KAAK,GAAGN,IAAI,CAACO,KAAK,CAAC,GAAG,CAAC;IAC7B,MAAMC,QAAQ,GAAGF,KAAK,CAACA,KAAK,CAACG,MAAM,GAAG,CAAC,CAAC;;IAExC;IACA;IACA;IACAd,oBAAoB,CAACS,QAAQ,EAAE,OAAO,EAAEJ,IAAI,EAAEQ,QAAQ,EAAE,YAAY,CAAC;IAErE,OAAO,MAAMX,WAAW,CACtB;MACEG,IAAI,EAAEI,QAAQ;MACdH,UAAU;MACVC;IACF,CAAC,EACD;MACEQ,OAAO,EAAGC,KAAK,IAAK;QAClB,IACEA,KAAK,CAACC,OAAO,CAACC,QAAQ,CAACnB,UAAU,CAACoB,aAAa,CAAC,IAChDH,KAAK,CAACC,OAAO,CAACC,QAAQ,CAACnB,UAAU,CAACqB,QAAQ,CAAC,EAC3C;UACAvB,KAAK,CAACwB,KAAK,CACT,qBAAqB,EACrB,4CAA4C,EAC5C,CAAC;YAAEC,IAAI,EAAE;UAAK,CAAC,CACjB,CAAC;QACH,CAAC,MAAM;UACLzB,KAAK,CAACwB,KAAK,CAAC,eAAe,EAAE,mBAAmB,EAAE,CAAC;YAAEC,IAAI,EAAE;UAAK,CAAC,CAAC,CAAC;QACrE;MACF;IACF,CACF,CAAC;EACH,CAAC;EAED,OAAO;IACLd,WAAW;IACXe,gBAAgB,EAAEpB;EACpB,CAAC;AACH","ignoreList":[]}
@@ -1,17 +1,13 @@
1
1
  import { FileRepository, ContentFeedType } from '@amityco/ts-sdk-react-native';
2
2
  import { Platform } from 'react-native';
3
+ import { appendFileToFormData } from '../utils/fileUpload';
3
4
  export async function uploadFile(filePath, perCentCallback) {
4
5
  return await new Promise(async (resolve, reject) => {
5
6
  const formData = new FormData();
6
7
  const parts = filePath.split('/');
7
8
  const fileName = parts[parts.length - 1];
8
9
  const fileType = Platform.OS === 'ios' ? 'image/jpeg' : 'image/jpg';
9
- const uri = Platform.OS === 'android' ? filePath : filePath.replace('file://', '');
10
- formData.append('files', {
11
- name: fileName,
12
- type: fileType,
13
- uri: uri
14
- });
10
+ await appendFileToFormData(formData, 'files', filePath, fileName, fileType);
15
11
  const {
16
12
  data: file
17
13
  } = await FileRepository.uploadFile(formData, percent => {
@@ -31,12 +27,7 @@ export async function uploadImageFile(filePath, perCentCallback) {
31
27
  const parts = filePath.split('/');
32
28
  const fileName = parts[parts.length - 1];
33
29
  const fileType = Platform.OS === 'ios' ? 'image/jpeg' : 'image/jpg';
34
- const uri = Platform.OS === 'android' ? filePath : filePath.replace('file://', '');
35
- formData.append('files', {
36
- name: fileName,
37
- type: fileType,
38
- uri: uri
39
- });
30
+ await appendFileToFormData(formData, 'files', filePath, fileName, fileType);
40
31
  const {
41
32
  data: file
42
33
  } = await FileRepository.uploadImage(formData, percent => {
@@ -72,13 +63,7 @@ export async function uploadVideoFile(filePath, perCentCallback) {
72
63
  const formData = new FormData();
73
64
  const parts = filePath.split('/');
74
65
  const fileName = parts[parts.length - 1];
75
- // const fileType = Platform.OS === 'ios' ? 'image/jpeg' : 'image/jpg';
76
- const uri = Platform.OS === 'android' ? filePath : filePath.replace('file://', '');
77
- formData.append('files', {
78
- name: fileName,
79
- type: 'video/*',
80
- uri: uri
81
- });
66
+ await appendFileToFormData(formData, 'files', filePath, fileName, 'video/mp4');
82
67
  const {
83
68
  data: file
84
69
  } = await FileRepository.uploadVideo(formData, ContentFeedType.POST, percent => {
@@ -1 +1 @@
1
- {"version":3,"names":["FileRepository","ContentFeedType","Platform","uploadFile","filePath","perCentCallback","Promise","resolve","reject","formData","FormData","parts","split","fileName","length","fileType","OS","uri","replace","append","name","type","data","file","percent","uploadImageFile","uploadImage","message","error","_error$message","_error$message2","includes","details","code","originalError","uploadVideoFile","uploadVideo","POST","deleteAmityFile","fileId","reactionObject","isFileDeleted","deleteFile"],"sourceRoot":"../../../../src","sources":["core/legacy/file.tsx"],"mappings":"AAAA,SAASA,cAAc,EAAEC,eAAe,QAAQ,8BAA8B;AAE9E,SAASC,QAAQ,QAAQ,cAAc;AAEvC,OAAO,eAAeC,UAAUA,CAC9BC,QAAgB,EAChBC,eAA2C,EACf;EAC5B,OAAO,MAAM,IAAIC,OAAO,CAAC,OAAOC,OAAO,EAAEC,MAAM,KAAK;IAClD,MAAMC,QAAQ,GAAG,IAAIC,QAAQ,CAAC,CAAC;IAC/B,MAAMC,KAAK,GAAGP,QAAQ,CAACQ,KAAK,CAAC,GAAG,CAAC;IACjC,MAAMC,QAAQ,GAAGF,KAAK,CAACA,KAAK,CAACG,MAAM,GAAG,CAAC,CAAC;IACxC,MAAMC,QAAQ,GAAGb,QAAQ,CAACc,EAAE,KAAK,KAAK,GAAG,YAAY,GAAG,WAAW;IACnE,MAAMC,GAAG,GACPf,QAAQ,CAACc,EAAE,KAAK,SAAS,GAAGZ,QAAQ,GAAGA,QAAQ,CAACc,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;IAExET,QAAQ,CAACU,MAAM,CAAC,OAAO,EAAE;MACvBC,IAAI,EAAEP,QAAQ;MACdQ,IAAI,EAAEN,QAAQ;MACdE,GAAG,EAAEA;IACP,CAAC,CAAC;IAEF,MAAM;MAAEK,IAAI,EAAEC;IAAK,CAAC,GAAG,MAAMvB,cAAc,CAACG,UAAU,CACpDM,QAAQ,EACPe,OAAO,IAAK;MACXnB,eAAe,IAAIA,eAAe,CAACmB,OAAO,CAAC;IAC7C,CACF,CAAC;IACD,IAAID,IAAI,EAAE;MACRhB,OAAO,CAACgB,IAAI,CAAC;IACf,CAAC,MAAM;MACLf,MAAM,CAAC,cAAc,CAAC;IACxB;EACF,CAAC,CAAC;AACJ;AACA,OAAO,eAAeiB,eAAeA,CACnCrB,QAAgB,EAChBC,eAA2C,EACX;EAChC,OAAO,MAAM,IAAIC,OAAO,CAAC,OAAOC,OAAO,EAAEC,MAAM,KAAK;IAClD,IAAI;MACF,MAAMC,QAAQ,GAAG,IAAIC,QAAQ,CAAC,CAAC;MAC/B,MAAMC,KAAK,GAAGP,QAAQ,CAACQ,KAAK,CAAC,GAAG,CAAC;MACjC,MAAMC,QAAQ,GAAGF,KAAK,CAACA,KAAK,CAACG,MAAM,GAAG,CAAC,CAAC;MACxC,MAAMC,QAAQ,GAAGb,QAAQ,CAACc,EAAE,KAAK,KAAK,GAAG,YAAY,GAAG,WAAW;MACnE,MAAMC,GAAG,GACPf,QAAQ,CAACc,EAAE,KAAK,SAAS,GAAGZ,QAAQ,GAAGA,QAAQ,CAACc,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;MAExET,QAAQ,CAACU,MAAM,CAAC,OAAO,EAAE;QACvBC,IAAI,EAAEP,QAAQ;QACdQ,IAAI,EAAEN,QAAQ;QACdE,GAAG,EAAEA;MACP,CAAC,CAAC;MAEF,MAAM;QAAEK,IAAI,EAAEC;MAAK,CAAC,GAAG,MAAMvB,cAAc,CAAC0B,WAAW,CACrDjB,QAAQ,EACPe,OAAO,IAAK;QACXnB,eAAe,IAAIA,eAAe,CAACmB,OAAO,CAAC;MAC7C,CACF,CAAC;MAED,IAAID,IAAI,EAAE;QACRhB,OAAO,CAACgB,IAAI,CAAC;MACf,CAAC,MAAM;QACLf,MAAM,CAAC;UAAEmB,OAAO,EAAE;QAAwC,CAAC,CAAC;MAC9D;IACF,CAAC,CAAC,OAAOC,KAAU,EAAE;MAAA,IAAAC,cAAA,EAAAC,eAAA;MACnB,IACEF,KAAK,aAALA,KAAK,gBAAAC,cAAA,GAALD,KAAK,CAAED,OAAO,cAAAE,cAAA,eAAdA,cAAA,CAAgBE,QAAQ,CAAC,eAAe,CAAC,IACzCH,KAAK,aAALA,KAAK,gBAAAE,eAAA,GAALF,KAAK,CAAED,OAAO,cAAAG,eAAA,eAAdA,eAAA,CAAgBC,QAAQ,CAAC,eAAe,CAAC,EACzC;QACAvB,MAAM,CAAC;UACLmB,OAAO,EAAE,qBAAqB;UAC9BK,OAAO,EAAE,4CAA4C;UACrDC,IAAI,EAAE;QACR,CAAC,CAAC;MACJ,CAAC,MAAM;QACLzB,MAAM,CAAC;UACLmB,OAAO,EAAE,eAAe;UACxBK,OAAO,EACL,CAAAJ,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAED,OAAO,KACd,qDAAqD;UACvDO,aAAa,EAAEN;QACjB,CAAC,CAAC;MACJ;IACF;EACF,CAAC,CAAC;AACJ;AACA,OAAO,eAAeO,eAAeA,CACnC/B,QAAgB,EAChBC,eAA2C,EACf;EAC5B,OAAO,MAAM,IAAIC,OAAO,CAAC,OAAOC,OAAO,EAAEC,MAAM,KAAK;IAClD,MAAMC,QAAQ,GAAG,IAAIC,QAAQ,CAAC,CAAC;IAC/B,MAAMC,KAAK,GAAGP,QAAQ,CAACQ,KAAK,CAAC,GAAG,CAAC;IACjC,MAAMC,QAAQ,GAAGF,KAAK,CAACA,KAAK,CAACG,MAAM,GAAG,CAAC,CAAC;IACxC;IACA,MAAMG,GAAG,GACPf,QAAQ,CAACc,EAAE,KAAK,SAAS,GAAGZ,QAAQ,GAAGA,QAAQ,CAACc,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;IAExET,QAAQ,CAACU,MAAM,CAAC,OAAO,EAAE;MACvBC,IAAI,EAAEP,QAAQ;MACdQ,IAAI,EAAE,SAAS;MACfJ,GAAG,EAAEA;IACP,CAAC,CAAC;IAEF,MAAM;MAAEK,IAAI,EAAEC;IAAK,CAAC,GAAG,MAAMvB,cAAc,CAACoC,WAAW,CACrD3B,QAAQ,EACRR,eAAe,CAACoC,IAAI,EACnBb,OAAO,IAAK;MACXnB,eAAe,IAAIA,eAAe,CAACmB,OAAO,CAAC;IAC7C,CACF,CAAC;IACD,IAAID,IAAI,EAAE;MACRhB,OAAO,CAACgB,IAAI,CAAC;IACf,CAAC,MAAM;MACLf,MAAM,CAAC,cAAc,CAAC;IACxB;EACF,CAAC,CAAC;AACJ;AACA,OAAO,eAAe8B,eAAeA,CACnCC,MAAc,EACiB;EAC/B,MAAMC,cAA6C,GAAG,IAAIlC,OAAO,CAC/D,OAAOC,OAAO,EAAEC,MAAM,KAAK;IACzB,IAAI;MACF,MAAMiC,aAAa,GAAG,MAAMzC,cAAc,CAAC0C,UAAU,CAACH,MAAM,CAAC;MAC7DhC,OAAO,CAACkC,aAAa,CAAC;IACxB,CAAC,CAAC,OAAOb,KAAK,EAAE;MACdpB,MAAM,CAACoB,KAAK,CAAC;IACf;EACF,CACF,CAAC;EACD,OAAOY,cAAc;AACvB","ignoreList":[]}
1
+ {"version":3,"names":["FileRepository","ContentFeedType","Platform","appendFileToFormData","uploadFile","filePath","perCentCallback","Promise","resolve","reject","formData","FormData","parts","split","fileName","length","fileType","OS","data","file","percent","uploadImageFile","uploadImage","message","error","_error$message","_error$message2","includes","details","code","originalError","uploadVideoFile","uploadVideo","POST","deleteAmityFile","fileId","reactionObject","isFileDeleted","deleteFile"],"sourceRoot":"../../../../src","sources":["core/legacy/file.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,54 @@
1
+ /**
2
+ * fileUpload.ts
3
+ *
4
+ * Helper for attaching a local file to a FormData for upload to the Amity SDK.
5
+ *
6
+ * Why the `{ uri, name, type }` object (and NOT a Blob)
7
+ * -----------------------------------------------------
8
+ * React Native's `FormData.getParts()` only turns a value into a multipart
9
+ * *file* part when that value is an object carrying a `uri`:
10
+ *
11
+ * • `name` → the `filename` in the `Content-Disposition` header
12
+ * • `type` → the part's `Content-Type`
13
+ * • `uri` → the local path the native networking layer streams bytes from
14
+ *
15
+ * This is the canonical React Native upload pattern and works on BOTH the Old
16
+ * and the New (Bridgeless / JSI) Architecture — RN 0.83 did not change this JS
17
+ * API. The Amity SDK's `uploadImage` is built around it too: it calls
18
+ * `formData.getAll('files')` and reads `files[0].name` to set
19
+ * `preferredFilename`.
20
+ *
21
+ * Do NOT append a Blob here. A Blob produced by `fetch(uri).blob()` has:
22
+ * • no `uri` → RN attaches no file body, so the request carries no
23
+ * bytes and the server responds `400 "No files
24
+ * uploaded."`
25
+ * • no top-level `name` → `files[0].name` is `null`, so `preferredFilename`
26
+ * is sent as `null`.
27
+ * That combination is exactly the failure seen in PDT-3461.
28
+ */
29
+
30
+ import { Platform } from 'react-native';
31
+
32
+ /**
33
+ * Append a local file to `formData` as a React-Native multipart file part.
34
+ *
35
+ * @param formData The FormData instance to mutate.
36
+ * @param fieldName The multipart field name (e.g. `'files'`).
37
+ * @param fileUri Local file URI (`file://…` or `content://…`).
38
+ * @param fileName The filename sent in the Content-Disposition header.
39
+ * @param mimeType MIME type for the part (e.g. `'image/jpeg'`).
40
+ */
41
+ export function appendFileToFormData(formData, fieldName, fileUri, fileName, mimeType) {
42
+ // Android keeps the URI as-is (`content://` / `file://` are both streamable);
43
+ // iOS expects the `file://` scheme stripped to a bare path.
44
+ const uri = Platform.OS === 'android' ? fileUri : fileUri.replace('file://', '');
45
+
46
+ // RN's FormData.append is typed for the legacy `{ uri, name, type }` object
47
+ // but its TS types don't expose that overload, so we cast to `any`.
48
+ formData.append(fieldName, {
49
+ uri,
50
+ name: fileName,
51
+ type: mimeType
52
+ });
53
+ }
54
+ //# sourceMappingURL=fileUpload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Platform","appendFileToFormData","formData","fieldName","fileUri","fileName","mimeType","uri","OS","replace","append","name","type"],"sourceRoot":"../../../../src","sources":["core/utils/fileUpload.ts"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,QAAQ,QAAQ,cAAc;;AAEvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,oBAAoBA,CAClCC,QAAkB,EAClBC,SAAiB,EACjBC,OAAe,EACfC,QAAgB,EAChBC,QAAgB,EACV;EACN;EACA;EACA,MAAMC,GAAG,GACPP,QAAQ,CAACQ,EAAE,KAAK,SAAS,GAAGJ,OAAO,GAAGA,OAAO,CAACK,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;;EAEtE;EACA;EACAP,QAAQ,CAACQ,MAAM,CAACP,SAAS,EAAE;IACzBI,GAAG;IACHI,IAAI,EAAEN,QAAQ;IACdO,IAAI,EAAEN;EACR,CAAQ,CAAC;AACX","ignoreList":[]}
@@ -14,6 +14,7 @@ import { useFile } from '../../../hooks/useFile';
14
14
  import { getMediaTypeFromUrl } from '../../../../core/utils/url';
15
15
  import { LoadingOverlay } from '../../../components/legacy/LoadingOverlay';
16
16
  import mime from 'mime';
17
+ import { appendFileToFormData } from '../../../../core/utils/fileUpload';
17
18
  import { useToast } from '../../../../core/stores/slices/toastSlice';
18
19
  import { SafeAreaView } from 'react-native-safe-area-context';
19
20
  const AmityDraftStoryPage = ({
@@ -94,11 +95,7 @@ const AmityDraftStoryPage = ({
94
95
  const formData = new FormData();
95
96
  const isImage = type === StoryType.image;
96
97
  const mimeType = mime.getType(mediaType.uri) ?? (isImage ? 'image/jpeg' : 'video/mp4');
97
- formData.append('files', {
98
- uri: mediaType.uri,
99
- name: mediaType.name,
100
- type: mimeType
101
- });
98
+ await appendFileToFormData(formData, 'files', mediaType.uri, mediaType.name, mimeType);
102
99
  try {
103
100
  setLoading(true);
104
101
  if (type === StoryType.image) {
@@ -1 +1 @@
1
- {"version":3,"names":["Alert","Image","Text","TouchableOpacity","View","useCallback","useState","useEffect","memo","LinearGradient","Video","leftLongArrow","rightLongArrow","storyHyperLinkIcon","SvgXml","useStyles","CommunityRepository","StoryRepository","ComponentID","ElementID","PageID","StoryType","ImageSizeState","useTheme","useConfigImageUri","HyperlinkConfig","useFile","getMediaTypeFromUrl","LoadingOverlay","mime","useToast","SafeAreaView","AmityDraftStoryPage","targetId","targetType","mediaType","onCreateStory","onDiscardStory","_hyperlink$","_hyperlink$2","_hyperlink$3","_hyperlink$4","type","uri","styles","getImage","imageDisplayMode","setImageDisplayMode","isVisibleModal","setIsVisibleModal","communityAvatarUrl","setCommunityAvatarUrl","hyperlink","setHyperlink","undefined","loading","setLoading","theme","aspectRatioIcon","configPath","page","CreateStoryPage","component","WildCardComponent","element","AspectRatioBtn","configKey","hyperLinkIcon","StoryHyperLinkBtn","showToast","getCommunity","error","isLoading","data","image","fileId","avatarFileId","imageSize","small","onPressBack","alert","text","style","onPress","onPressAspectRatio","prev","onPressHyperLink","onPressShareStory","formData","FormData","isImage","mimeType","getType","append","name","createImageStory","createVideoStory","message","onHyperLinkSubmit","item","storyItem","React","createElement","container","imageContainer","Fragment","source","blurredBackground","resizeMode","blurRadius","paused","repeat","colors","start","x","y","end","storyGradient","length","hyperlinkContainer","xml","width","height","hyperlinkText","customText","url","shareStoryBtn","require","avatar","shareStoryTxt","baseShade2","backBtn","aspectRatioBtn","aspectRationIcon","hyperLinkBtn","hyperlinkItem"],"sourceRoot":"../../../../../../src","sources":["social/features/story/Draft/Draft.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Alert","Image","Text","TouchableOpacity","View","useCallback","useState","useEffect","memo","LinearGradient","Video","leftLongArrow","rightLongArrow","storyHyperLinkIcon","SvgXml","useStyles","CommunityRepository","StoryRepository","ComponentID","ElementID","PageID","StoryType","ImageSizeState","useTheme","useConfigImageUri","HyperlinkConfig","useFile","getMediaTypeFromUrl","LoadingOverlay","mime","appendFileToFormData","useToast","SafeAreaView","AmityDraftStoryPage","targetId","targetType","mediaType","onCreateStory","onDiscardStory","_hyperlink$","_hyperlink$2","_hyperlink$3","_hyperlink$4","type","uri","styles","getImage","imageDisplayMode","setImageDisplayMode","isVisibleModal","setIsVisibleModal","communityAvatarUrl","setCommunityAvatarUrl","hyperlink","setHyperlink","undefined","loading","setLoading","theme","aspectRatioIcon","configPath","page","CreateStoryPage","component","WildCardComponent","element","AspectRatioBtn","configKey","hyperLinkIcon","StoryHyperLinkBtn","showToast","getCommunity","error","isLoading","data","image","fileId","avatarFileId","imageSize","small","onPressBack","alert","text","style","onPress","onPressAspectRatio","prev","onPressHyperLink","onPressShareStory","formData","FormData","isImage","mimeType","getType","name","createImageStory","createVideoStory","message","onHyperLinkSubmit","item","storyItem","React","createElement","container","imageContainer","Fragment","source","blurredBackground","resizeMode","blurRadius","paused","repeat","colors","start","x","y","end","storyGradient","length","hyperlinkContainer","xml","width","height","hyperlinkText","customText","url","shareStoryBtn","require","avatar","shareStoryTxt","baseShade2","backBtn","aspectRatioBtn","aspectRationIcon","hyperLinkBtn","hyperlinkItem"],"sourceRoot":"../../../../../../src","sources":["social/features/story/Draft/Draft.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"useUpload.d.ts","sourceRoot":"","sources":["../../../../src/core/hooks/useUpload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAS9D,KAAK,iBAAiB,GAAG,UAAU,CAAC,OAAO,cAAc,CAAC,WAAW,CAAC,CAAC;AAEvE,KAAK,kBAAkB,GAAG;IACxB,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAC3B,UAAU,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAClC,OAAO,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC;CAChC,CAAC;AAEF,KAAK,uBAAuB,GAAG;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,kBAAkB,CAAC,YAAY,CAAC,CAAC;IAC9C,OAAO,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAC;CACzC,CAAC;AAEF,wBAAgB,SAAS;kDAcpB,uBAAuB;;;;;;EA0C3B"}
1
+ {"version":3,"file":"useUpload.d.ts","sourceRoot":"","sources":["../../../../src/core/hooks/useUpload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAU9D,KAAK,iBAAiB,GAAG,UAAU,CAAC,OAAO,cAAc,CAAC,WAAW,CAAC,CAAC;AAEvE,KAAK,kBAAkB,GAAG;IACxB,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAC3B,UAAU,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAClC,OAAO,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC;CAChC,CAAC;AAEF,KAAK,uBAAuB,GAAG;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,kBAAkB,CAAC,YAAY,CAAC,CAAC;IAC9C,OAAO,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAC;CACzC,CAAC;AAEF,wBAAgB,SAAS;kDAcpB,uBAAuB;;;;;;EAuC3B"}
@@ -1 +1 @@
1
- {"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../../../src/core/legacy/file.tsx"],"names":[],"mappings":"AAIA,wBAAsB,UAAU,CAC9B,QAAQ,EAAE,MAAM,EAChB,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAC1C,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CA2B5B;AACD,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,EAChB,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAC1C,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAiDhC;AACD,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,EAChB,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAC1C,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CA4B5B;AACD,wBAAsB,eAAe,CACnC,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CAY/B"}
1
+ {"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../../../src/core/legacy/file.tsx"],"names":[],"mappings":"AAKA,wBAAsB,UAAU,CAC9B,QAAQ,EAAE,MAAM,EAChB,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAC1C,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAqB5B;AACD,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,EAChB,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAC1C,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAiDhC;AACD,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,EAChB,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAC1C,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CA2B5B;AACD,wBAAsB,eAAe,CACnC,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CAY/B"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * fileUpload.ts
3
+ *
4
+ * Helper for attaching a local file to a FormData for upload to the Amity SDK.
5
+ *
6
+ * Why the `{ uri, name, type }` object (and NOT a Blob)
7
+ * -----------------------------------------------------
8
+ * React Native's `FormData.getParts()` only turns a value into a multipart
9
+ * *file* part when that value is an object carrying a `uri`:
10
+ *
11
+ * • `name` → the `filename` in the `Content-Disposition` header
12
+ * • `type` → the part's `Content-Type`
13
+ * • `uri` → the local path the native networking layer streams bytes from
14
+ *
15
+ * This is the canonical React Native upload pattern and works on BOTH the Old
16
+ * and the New (Bridgeless / JSI) Architecture — RN 0.83 did not change this JS
17
+ * API. The Amity SDK's `uploadImage` is built around it too: it calls
18
+ * `formData.getAll('files')` and reads `files[0].name` to set
19
+ * `preferredFilename`.
20
+ *
21
+ * Do NOT append a Blob here. A Blob produced by `fetch(uri).blob()` has:
22
+ * • no `uri` → RN attaches no file body, so the request carries no
23
+ * bytes and the server responds `400 "No files
24
+ * uploaded."`
25
+ * • no top-level `name` → `files[0].name` is `null`, so `preferredFilename`
26
+ * is sent as `null`.
27
+ * That combination is exactly the failure seen in PDT-3461.
28
+ */
29
+ /**
30
+ * Append a local file to `formData` as a React-Native multipart file part.
31
+ *
32
+ * @param formData The FormData instance to mutate.
33
+ * @param fieldName The multipart field name (e.g. `'files'`).
34
+ * @param fileUri Local file URI (`file://…` or `content://…`).
35
+ * @param fileName The filename sent in the Content-Disposition header.
36
+ * @param mimeType MIME type for the part (e.g. `'image/jpeg'`).
37
+ */
38
+ export declare function appendFileToFormData(formData: FormData, fieldName: string, fileUri: string, fileName: string, mimeType: string): void;
39
+ //# sourceMappingURL=fileUpload.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fileUpload.d.ts","sourceRoot":"","sources":["../../../../src/core/utils/fileUpload.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAIH;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,IAAI,CAaN"}
@@ -1 +1 @@
1
- {"version":3,"file":"Draft.d.ts","sourceRoot":"","sources":["../../../../../../src/social/features/story/Draft/Draft.tsx"],"names":[],"mappings":"AA0BA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;;AA2PtD,wBAAyC"}
1
+ {"version":3,"file":"Draft.d.ts","sourceRoot":"","sources":["../../../../../../src/social/features/story/Draft/Draft.tsx"],"names":[],"mappings":"AA0BA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;;AA+PtD,wBAAyC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@amityco/react-native-social-uikit",
3
- "version": "4.0.0",
3
+ "version": "4.0.1-0037d7d.0",
4
4
  "description": "Social UIKit",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -1,7 +1,8 @@
1
1
  import { FileRepository } from '@amityco/ts-sdk-react-native';
2
- import { Alert, Platform } from 'react-native';
2
+ import { Alert } from 'react-native';
3
3
  import { useMutation } from '@tanstack/react-query';
4
4
  import { ERROR_CODE } from '../constants';
5
+ import { appendFileToFormData } from '../utils/fileUpload';
5
6
 
6
7
  type UploadImageResponse = Awaited<
7
8
  ReturnType<typeof FileRepository.uploadImage>
@@ -39,14 +40,11 @@ export function useUpload() {
39
40
  const formData = new FormData();
40
41
  const parts = file.split('/');
41
42
  const fileName = parts[parts.length - 1];
42
- const fileType = Platform.OS === 'ios' ? 'image/jpeg' : 'image/jpg';
43
- const uri = Platform.OS === 'android' ? file : file.replace('file://', '');
44
43
 
45
- formData.append('files', {
46
- name: fileName,
47
- type: fileType,
48
- uri: uri,
49
- });
44
+ // Attach the file as a React-Native { uri, name, type } multipart part.
45
+ // This works on both the Old and New (Bridgeless) Architecture and is what
46
+ // the SDK's uploadImage expects (it reads files[0].name for preferredFilename).
47
+ appendFileToFormData(formData, 'files', file, fileName, 'image/jpeg');
50
48
 
51
49
  return await mutateAsync(
52
50
  {
@@ -1,6 +1,7 @@
1
1
  import { FileRepository, ContentFeedType } from '@amityco/ts-sdk-react-native';
2
2
 
3
3
  import { Platform } from 'react-native';
4
+ import { appendFileToFormData } from '../utils/fileUpload';
4
5
 
5
6
  export async function uploadFile(
6
7
  filePath: string,
@@ -11,14 +12,8 @@ export async function uploadFile(
11
12
  const parts = filePath.split('/');
12
13
  const fileName = parts[parts.length - 1];
13
14
  const fileType = Platform.OS === 'ios' ? 'image/jpeg' : 'image/jpg';
14
- const uri =
15
- Platform.OS === 'android' ? filePath : filePath.replace('file://', '');
16
15
 
17
- formData.append('files', {
18
- name: fileName,
19
- type: fileType,
20
- uri: uri,
21
- });
16
+ await appendFileToFormData(formData, 'files', filePath, fileName, fileType);
22
17
 
23
18
  const { data: file } = await FileRepository.uploadFile(
24
19
  formData,
@@ -43,14 +38,14 @@ export async function uploadImageFile(
43
38
  const parts = filePath.split('/');
44
39
  const fileName = parts[parts.length - 1];
45
40
  const fileType = Platform.OS === 'ios' ? 'image/jpeg' : 'image/jpg';
46
- const uri =
47
- Platform.OS === 'android' ? filePath : filePath.replace('file://', '');
48
41
 
49
- formData.append('files', {
50
- name: fileName,
51
- type: fileType,
52
- uri: uri,
53
- });
42
+ await appendFileToFormData(
43
+ formData,
44
+ 'files',
45
+ filePath,
46
+ fileName,
47
+ fileType
48
+ );
54
49
 
55
50
  const { data: file } = await FileRepository.uploadImage(
56
51
  formData,
@@ -94,15 +89,14 @@ export async function uploadVideoFile(
94
89
  const formData = new FormData();
95
90
  const parts = filePath.split('/');
96
91
  const fileName = parts[parts.length - 1];
97
- // const fileType = Platform.OS === 'ios' ? 'image/jpeg' : 'image/jpg';
98
- const uri =
99
- Platform.OS === 'android' ? filePath : filePath.replace('file://', '');
100
92
 
101
- formData.append('files', {
102
- name: fileName,
103
- type: 'video/*',
104
- uri: uri,
105
- });
93
+ await appendFileToFormData(
94
+ formData,
95
+ 'files',
96
+ filePath,
97
+ fileName,
98
+ 'video/mp4'
99
+ );
106
100
 
107
101
  const { data: file } = await FileRepository.uploadVideo(
108
102
  formData,
@@ -0,0 +1,60 @@
1
+ /**
2
+ * fileUpload.ts
3
+ *
4
+ * Helper for attaching a local file to a FormData for upload to the Amity SDK.
5
+ *
6
+ * Why the `{ uri, name, type }` object (and NOT a Blob)
7
+ * -----------------------------------------------------
8
+ * React Native's `FormData.getParts()` only turns a value into a multipart
9
+ * *file* part when that value is an object carrying a `uri`:
10
+ *
11
+ * • `name` → the `filename` in the `Content-Disposition` header
12
+ * • `type` → the part's `Content-Type`
13
+ * • `uri` → the local path the native networking layer streams bytes from
14
+ *
15
+ * This is the canonical React Native upload pattern and works on BOTH the Old
16
+ * and the New (Bridgeless / JSI) Architecture — RN 0.83 did not change this JS
17
+ * API. The Amity SDK's `uploadImage` is built around it too: it calls
18
+ * `formData.getAll('files')` and reads `files[0].name` to set
19
+ * `preferredFilename`.
20
+ *
21
+ * Do NOT append a Blob here. A Blob produced by `fetch(uri).blob()` has:
22
+ * • no `uri` → RN attaches no file body, so the request carries no
23
+ * bytes and the server responds `400 "No files
24
+ * uploaded."`
25
+ * • no top-level `name` → `files[0].name` is `null`, so `preferredFilename`
26
+ * is sent as `null`.
27
+ * That combination is exactly the failure seen in PDT-3461.
28
+ */
29
+
30
+ import { Platform } from 'react-native';
31
+
32
+ /**
33
+ * Append a local file to `formData` as a React-Native multipart file part.
34
+ *
35
+ * @param formData The FormData instance to mutate.
36
+ * @param fieldName The multipart field name (e.g. `'files'`).
37
+ * @param fileUri Local file URI (`file://…` or `content://…`).
38
+ * @param fileName The filename sent in the Content-Disposition header.
39
+ * @param mimeType MIME type for the part (e.g. `'image/jpeg'`).
40
+ */
41
+ export function appendFileToFormData(
42
+ formData: FormData,
43
+ fieldName: string,
44
+ fileUri: string,
45
+ fileName: string,
46
+ mimeType: string
47
+ ): void {
48
+ // Android keeps the URI as-is (`content://` / `file://` are both streamable);
49
+ // iOS expects the `file://` scheme stripped to a bare path.
50
+ const uri =
51
+ Platform.OS === 'android' ? fileUri : fileUri.replace('file://', '');
52
+
53
+ // RN's FormData.append is typed for the legacy `{ uri, name, type }` object
54
+ // but its TS types don't expose that overload, so we cast to `any`.
55
+ formData.append(fieldName, {
56
+ uri,
57
+ name: fileName,
58
+ type: mimeType,
59
+ } as any);
60
+ }
@@ -29,6 +29,7 @@ import { useFile } from '../../../hooks/useFile';
29
29
  import { getMediaTypeFromUrl } from '../../../../core/utils/url';
30
30
  import { LoadingOverlay } from '../../../components/legacy/LoadingOverlay';
31
31
  import mime from 'mime';
32
+ import { appendFileToFormData } from '../../../../core/utils/fileUpload';
32
33
  import { useToast } from '../../../../core/stores/slices/toastSlice';
33
34
  import { SafeAreaView } from 'react-native-safe-area-context';
34
35
 
@@ -119,11 +120,14 @@ const AmityDraftStoryPage: FC<IAmityDraftStoryPage> = ({
119
120
  const isImage = type === StoryType.image;
120
121
  const mimeType =
121
122
  mime.getType(mediaType.uri) ?? (isImage ? 'image/jpeg' : 'video/mp4');
122
- formData.append('files', {
123
- uri: mediaType.uri,
124
- name: mediaType.name,
125
- type: mimeType,
126
- } as unknown as Blob);
123
+
124
+ await appendFileToFormData(
125
+ formData,
126
+ 'files',
127
+ mediaType.uri,
128
+ mediaType.name,
129
+ mimeType
130
+ );
127
131
 
128
132
  try {
129
133
  setLoading(true);