stream-chat-react-native-core 5.21.0-beta.1 → 5.21.0-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/lib/commonjs/components/AttachmentPicker/AttachmentPicker.js +34 -17
  2. package/lib/commonjs/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
  3. package/lib/commonjs/components/MessageInput/MessageInput.js +36 -30
  4. package/lib/commonjs/components/MessageInput/MessageInput.js.map +1 -1
  5. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js +5 -3
  6. package/lib/commonjs/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  7. package/lib/commonjs/i18n/en.json +3 -1
  8. package/lib/commonjs/i18n/fr.json +48 -46
  9. package/lib/commonjs/i18n/he.json +1 -0
  10. package/lib/commonjs/i18n/hi.json +48 -46
  11. package/lib/commonjs/i18n/it.json +48 -46
  12. package/lib/commonjs/i18n/ja.json +1 -0
  13. package/lib/commonjs/i18n/ko.json +1 -0
  14. package/lib/commonjs/i18n/nl.json +48 -46
  15. package/lib/commonjs/i18n/ru.json +48 -46
  16. package/lib/commonjs/i18n/tr.json +48 -46
  17. package/lib/commonjs/native.js +6 -1
  18. package/lib/commonjs/native.js.map +1 -1
  19. package/lib/commonjs/version.json +1 -1
  20. package/lib/module/components/AttachmentPicker/AttachmentPicker.js +34 -17
  21. package/lib/module/components/AttachmentPicker/AttachmentPicker.js.map +1 -1
  22. package/lib/module/components/MessageInput/MessageInput.js +36 -30
  23. package/lib/module/components/MessageInput/MessageInput.js.map +1 -1
  24. package/lib/module/contexts/messageInputContext/MessageInputContext.js +5 -3
  25. package/lib/module/contexts/messageInputContext/MessageInputContext.js.map +1 -1
  26. package/lib/module/i18n/en.json +3 -1
  27. package/lib/module/i18n/fr.json +48 -46
  28. package/lib/module/i18n/he.json +1 -0
  29. package/lib/module/i18n/hi.json +48 -46
  30. package/lib/module/i18n/it.json +48 -46
  31. package/lib/module/i18n/ja.json +1 -0
  32. package/lib/module/i18n/ko.json +1 -0
  33. package/lib/module/i18n/nl.json +48 -46
  34. package/lib/module/i18n/ru.json +48 -46
  35. package/lib/module/i18n/tr.json +48 -46
  36. package/lib/module/native.js +6 -1
  37. package/lib/module/native.js.map +1 -1
  38. package/lib/module/version.json +1 -1
  39. package/lib/typescript/i18n/en.json +3 -1
  40. package/lib/typescript/i18n/fr.json +48 -46
  41. package/lib/typescript/i18n/he.json +1 -0
  42. package/lib/typescript/i18n/hi.json +48 -46
  43. package/lib/typescript/i18n/it.json +48 -46
  44. package/lib/typescript/i18n/ja.json +1 -0
  45. package/lib/typescript/i18n/ko.json +1 -0
  46. package/lib/typescript/i18n/nl.json +48 -46
  47. package/lib/typescript/i18n/ru.json +48 -46
  48. package/lib/typescript/i18n/tr.json +48 -46
  49. package/lib/typescript/native.d.ts +4 -0
  50. package/lib/typescript/utils/Streami18n.d.ts +2 -0
  51. package/package.json +1 -1
  52. package/src/components/AttachmentPicker/AttachmentPicker.tsx +21 -2
  53. package/src/components/MessageInput/MessageInput.tsx +9 -2
  54. package/src/contexts/messageInputContext/MessageInputContext.tsx +4 -1
  55. package/src/i18n/en.json +3 -1
  56. package/src/i18n/fr.json +48 -46
  57. package/src/i18n/he.json +1 -0
  58. package/src/i18n/hi.json +48 -46
  59. package/src/i18n/it.json +48 -46
  60. package/src/i18n/ja.json +1 -0
  61. package/src/i18n/ko.json +1 -0
  62. package/src/i18n/nl.json +48 -46
  63. package/src/i18n/ru.json +48 -46
  64. package/src/i18n/tr.json +48 -46
  65. package/src/native.ts +9 -0
  66. package/src/version.json +1 -1
@@ -1,7 +1,7 @@
1
1
  Object.defineProperty(exports, "__esModule", {
2
2
  value: true
3
3
  });
4
- exports.triggerHaptic = exports.takePhoto = exports.shareImage = exports.setClipboardString = exports.saveFile = exports.registerNativeHandlers = exports.pickDocument = exports.oniOS14GalleryLibrarySelectionChange = exports.isVideoPackageAvailable = exports.isAudioPackageAvailable = exports.getPhotos = exports.getLocalAssetUri = exports.deleteFile = exports.compressImage = exports.Video = exports.Sound = exports.SDK = exports.NetInfo = exports.FlatList = void 0;
4
+ exports.triggerHaptic = exports.takePhoto = exports.shareImage = exports.setClipboardString = exports.saveFile = exports.registerNativeHandlers = exports.pickDocument = exports.oniOS14GalleryLibrarySelectionChange = exports.isVideoPackageAvailable = exports.isAudioPackageAvailable = exports.iOS14RefreshGallerySelection = exports.getPhotos = exports.getLocalAssetUri = exports.deleteFile = exports.compressImage = exports.Video = exports.Sound = exports.SDK = exports.NetInfo = exports.FlatList = void 0;
5
5
  var _reactNative = require("react-native");
6
6
  var fail = function fail() {
7
7
  throw Error('Native handler was not registered, you should import stream-chat-expo or stream-chat-react-native');
@@ -14,6 +14,8 @@ var getLocalAssetUri = fail;
14
14
  exports.getLocalAssetUri = getLocalAssetUri;
15
15
  var oniOS14GalleryLibrarySelectionChange = fail;
16
16
  exports.oniOS14GalleryLibrarySelectionChange = oniOS14GalleryLibrarySelectionChange;
17
+ var iOS14RefreshGallerySelection = fail;
18
+ exports.iOS14RefreshGallerySelection = iOS14RefreshGallerySelection;
17
19
  var getPhotos = fail;
18
20
  exports.getPhotos = getPhotos;
19
21
  var FlatList = _reactNative.FlatList;
@@ -60,6 +62,9 @@ var registerNativeHandlers = function registerNativeHandlers(handlers) {
60
62
  if (handlers.getPhotos) {
61
63
  exports.getPhotos = getPhotos = handlers.getPhotos;
62
64
  }
65
+ if (handlers.iOS14RefreshGallerySelection) {
66
+ exports.iOS14RefreshGallerySelection = iOS14RefreshGallerySelection = handlers.iOS14RefreshGallerySelection;
67
+ }
63
68
  if (handlers.oniOS14GalleryLibrarySelectionChange) {
64
69
  exports.oniOS14GalleryLibrarySelectionChange = oniOS14GalleryLibrarySelectionChange = handlers.oniOS14GalleryLibrarySelectionChange;
65
70
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","fail","Error","compressImage","exports","deleteFile","getLocalAssetUri","oniOS14GalleryLibrarySelectionChange","getPhotos","FlatList","DefaultFlatList","NetInfo","addEventListener","fetch","pickDocument","saveFile","setClipboardString","shareImage","takePhoto","triggerHaptic","SDK","Sound","Video","registerNativeHandlers","handlers","undefined","isVideoPackageAvailable","isAudioPackageAvailable","Player","initializeSound"],"sources":["native.ts"],"sourcesContent":["import type React from 'react';\nimport { FlatList as DefaultFlatList, StyleProp, ViewStyle } from 'react-native';\n\nimport type { NetInfoSubscription } from '@react-native-community/netinfo';\n\nimport type { Asset, File } from './types/types';\n\nconst fail = () => {\n throw Error(\n 'Native handler was not registered, you should import stream-chat-expo or stream-chat-react-native',\n );\n};\n\ntype CompressImage = ({\n compressImageQuality,\n height,\n uri,\n width,\n}: {\n compressImageQuality: number;\n height: number;\n uri: string;\n width: number;\n}) => Promise<string> | never;\nexport let compressImage: CompressImage = fail;\n\ntype DeleteFile = ({ uri }: { uri: string }) => Promise<boolean> | never;\nexport let deleteFile: DeleteFile = fail;\n\ntype GetLocalAssetUri = (uriOrAssetId: string) => Promise<string | undefined> | never;\nexport let getLocalAssetUri: GetLocalAssetUri = fail;\n\ntype OniOS14LibrarySelectionChange = (callback: () => void) => { unsubscribe: () => void };\nexport let oniOS14GalleryLibrarySelectionChange: OniOS14LibrarySelectionChange = fail;\n\ntype GetPhotos = ({ after, first }: { first: number; after?: string }) =>\n | Promise<{\n assets: Array<Omit<Asset, 'source'> & { source: 'picker' }>;\n endCursor: string;\n hasNextPage: boolean;\n }>\n | never;\nexport let getPhotos: GetPhotos = fail;\n\ntype NetInfo = {\n addEventListener: (listener: (isConnected: boolean) => void) => NetInfoSubscription | never;\n fetch: (requestedInterface?: string | undefined) => Promise<boolean> | never;\n};\n\nexport let FlatList = DefaultFlatList;\n\nexport let NetInfo: NetInfo = {\n addEventListener: fail,\n fetch: fail,\n};\n\ntype PickDocument = ({ maxNumberOfFiles }: { maxNumberOfFiles?: number }) =>\n | Promise<{\n cancelled: boolean;\n assets?: File[];\n }>\n | never;\nexport let pickDocument: PickDocument = fail;\n\ntype SaveFileOptions = {\n fileName: string;\n fromUrl: string;\n};\ntype SaveFile = (options: SaveFileOptions) => Promise<string> | never;\nexport let saveFile: SaveFile = fail;\n\ntype SetClipboardString = (text: string) => Promise<void> | never;\nexport let setClipboardString: SetClipboardString = fail;\n\ntype ShareOptions = {\n type?: string;\n url?: string;\n};\ntype ShareImage = (options: ShareOptions) => Promise<boolean> | never;\nexport let shareImage: ShareImage = fail;\n\ntype Photo =\n | (Omit<Asset, 'source'> & {\n cancelled: false;\n source: 'camera';\n })\n | { cancelled: true };\ntype TakePhoto = (options: { compressImageQuality?: number }) => Promise<Photo> | never;\nexport let takePhoto: TakePhoto = fail;\n\ntype HapticFeedbackMethod =\n | 'impactHeavy'\n | 'impactLight'\n | 'impactMedium'\n | 'notificationError'\n | 'notificationSuccess'\n | 'notificationWarning'\n | 'selection';\ntype TriggerHaptic = (method: HapticFeedbackMethod) => void | never;\nexport let triggerHaptic: TriggerHaptic = fail;\n\nexport type PlaybackStatus = {\n didJustFinish: boolean;\n durationMillis: number;\n error: string;\n isBuffering: boolean;\n isLoaded: boolean;\n isLooping: boolean;\n isPlaying: boolean;\n positionMillis: number;\n};\n\nexport type AVPlaybackStatusToSet = {\n isLooping: boolean;\n isMuted: boolean;\n positionMillis: number;\n progressUpdateIntervalMillis: number;\n rate: number;\n shouldCorrectPitch: boolean;\n shouldPlay: boolean;\n volume: number;\n};\n\nexport let SDK: string;\n\nexport type SoundOptions = {\n basePathOrCallback?: string;\n callback?: () => void;\n filenameOrFile?: string;\n initialStatus?: Partial<AVPlaybackStatusToSet>;\n onPlaybackStatusUpdate?: (playbackStatus: PlaybackStatus) => void;\n source?: { uri: string };\n};\n\nexport type SoundReturnType = {\n paused: boolean;\n testID: string;\n getDuration?: () => number;\n isPlaying?: () => boolean;\n onBuffer?: (props: { isBuffering: boolean }) => void;\n onEnd?: () => void;\n onLoad?: (payload: VideoPayloadData) => void;\n onLoadStart?: () => void;\n onPlaybackStatusUpdate?: (playbackStatus: PlaybackStatus) => void;\n onProgress?: (data: VideoProgressData) => void;\n onReadyForDisplay?: () => void;\n pauseAsync?: () => void;\n play?: () => void;\n playAsync?: () => void;\n replayAsync?: () => void;\n resizeMode?: string;\n seek?: (progress: number) => void;\n setPositionAsync?: (millis: number) => void;\n soundRef?: React.RefObject<SoundReturnType>;\n stopAsync?: () => void;\n style?: StyleProp<ViewStyle>;\n unloadAsync?: () => void;\n uri?: string;\n};\n\nexport type SoundType = {\n initializeSound: (\n source?: { uri: string },\n initialStatus?: Partial<AVPlaybackStatusToSet>,\n onPlaybackStatusUpdate?: (playbackStatus: PlaybackStatus) => void,\n ) => Promise<SoundReturnType | null>;\n Player: React.ComponentType<SoundReturnType> | null;\n};\n\nexport let Sound: SoundType;\n\nexport type VideoProgressData = {\n currentTime: number;\n seekableDuration: number;\n playableDuration?: number;\n};\n\nexport type VideoPayloadData = {\n duration: number;\n audioTracks?: { index: number; language: string; title: string; type: string }[];\n currentPosition?: number;\n naturalSize?: { height: number; orientation: 'portrait' | 'landscape'; width: number };\n textTracks?: { index: number; language: string; title: string; type: string }[];\n videoTracks?: {\n bitrate: number;\n codecs: string;\n height: number;\n trackId: number;\n width: number;\n }[];\n};\n\nexport type VideoType = {\n paused: boolean;\n testID: string;\n uri: string;\n videoRef: React.RefObject<VideoType>;\n onBuffer?: (props: { isBuffering: boolean }) => void;\n onEnd?: () => void;\n onLoad?: (payload: VideoPayloadData) => void;\n onLoadStart?: () => void;\n onPlaybackStatusUpdate?: (playbackStatus: PlaybackStatus) => void;\n onProgress?: (data: VideoProgressData) => void;\n onReadyForDisplay?: () => void;\n repeat?: boolean;\n replayAsync?: () => void;\n resizeMode?: string;\n seek?: (progress: number) => void;\n setPositionAsync?: (position: number) => void;\n style?: StyleProp<ViewStyle>;\n};\n\nexport let Video: React.ComponentType<VideoType>;\n\ntype Handlers = {\n compressImage?: CompressImage;\n deleteFile?: DeleteFile;\n FlatList?: typeof DefaultFlatList;\n getLocalAssetUri?: GetLocalAssetUri;\n getPhotos?: GetPhotos;\n NetInfo?: NetInfo;\n oniOS14GalleryLibrarySelectionChange?: OniOS14LibrarySelectionChange;\n pickDocument?: PickDocument;\n saveFile?: SaveFile;\n SDK?: string;\n setClipboardString?: SetClipboardString;\n shareImage?: ShareImage;\n Sound?: SoundType;\n takePhoto?: TakePhoto;\n triggerHaptic?: TriggerHaptic;\n Video?: React.ComponentType<VideoType>;\n};\n\nexport const registerNativeHandlers = (handlers: Handlers) => {\n if (handlers.compressImage) {\n compressImage = handlers.compressImage;\n }\n\n if (handlers.deleteFile) {\n deleteFile = handlers.deleteFile;\n }\n\n if (handlers.FlatList) {\n FlatList = handlers.FlatList;\n }\n if (handlers.NetInfo) {\n NetInfo = handlers.NetInfo;\n }\n\n if (handlers.getLocalAssetUri) {\n getLocalAssetUri = handlers.getLocalAssetUri;\n }\n\n if (handlers.getPhotos) {\n getPhotos = handlers.getPhotos;\n }\n\n if (handlers.oniOS14GalleryLibrarySelectionChange) {\n oniOS14GalleryLibrarySelectionChange = handlers.oniOS14GalleryLibrarySelectionChange;\n }\n\n if (handlers.pickDocument !== undefined) {\n pickDocument = handlers.pickDocument;\n }\n\n if (handlers.saveFile) {\n saveFile = handlers.saveFile;\n }\n\n if (handlers.SDK) {\n SDK = handlers.SDK;\n }\n\n if (handlers.shareImage !== undefined) {\n shareImage = handlers.shareImage;\n }\n\n if (handlers.Sound) {\n Sound = handlers.Sound;\n }\n\n if (handlers.takePhoto) {\n takePhoto = handlers.takePhoto;\n }\n\n if (handlers.triggerHaptic) {\n triggerHaptic = handlers.triggerHaptic;\n }\n\n if (handlers.Video) {\n Video = handlers.Video;\n }\n\n if (handlers.setClipboardString !== undefined) {\n setClipboardString = handlers.setClipboardString;\n }\n};\n\nexport const isVideoPackageAvailable = () => !!Video;\nexport const isAudioPackageAvailable = () => !!Sound.Player || !!Sound.initializeSound;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_reactNative","require","fail","Error","compressImage","exports","deleteFile","getLocalAssetUri","oniOS14GalleryLibrarySelectionChange","iOS14RefreshGallerySelection","getPhotos","FlatList","DefaultFlatList","NetInfo","addEventListener","fetch","pickDocument","saveFile","setClipboardString","shareImage","takePhoto","triggerHaptic","SDK","Sound","Video","registerNativeHandlers","handlers","undefined","isVideoPackageAvailable","isAudioPackageAvailable","Player","initializeSound"],"sources":["native.ts"],"sourcesContent":["import type React from 'react';\nimport { FlatList as DefaultFlatList, StyleProp, ViewStyle } from 'react-native';\n\nimport type { NetInfoSubscription } from '@react-native-community/netinfo';\n\nimport type { Asset, File } from './types/types';\n\nconst fail = () => {\n throw Error(\n 'Native handler was not registered, you should import stream-chat-expo or stream-chat-react-native',\n );\n};\n\ntype CompressImage = ({\n compressImageQuality,\n height,\n uri,\n width,\n}: {\n compressImageQuality: number;\n height: number;\n uri: string;\n width: number;\n}) => Promise<string> | never;\nexport let compressImage: CompressImage = fail;\n\ntype DeleteFile = ({ uri }: { uri: string }) => Promise<boolean> | never;\nexport let deleteFile: DeleteFile = fail;\n\ntype GetLocalAssetUri = (uriOrAssetId: string) => Promise<string | undefined> | never;\nexport let getLocalAssetUri: GetLocalAssetUri = fail;\n\ntype OniOS14LibrarySelectionChange = (callback: () => void) => { unsubscribe: () => void };\nexport let oniOS14GalleryLibrarySelectionChange: OniOS14LibrarySelectionChange = fail;\n\ntype iOS14RefreshGallerySelection = () => Promise<void>;\nexport let iOS14RefreshGallerySelection: iOS14RefreshGallerySelection = fail;\n\ntype GetPhotos = ({ after, first }: { first: number; after?: string }) =>\n | Promise<{\n assets: Array<Omit<Asset, 'source'> & { source: 'picker' }>;\n endCursor: string;\n hasNextPage: boolean;\n iOSLimited: boolean;\n }>\n | never;\nexport let getPhotos: GetPhotos = fail;\n\ntype NetInfo = {\n addEventListener: (listener: (isConnected: boolean) => void) => NetInfoSubscription | never;\n fetch: (requestedInterface?: string | undefined) => Promise<boolean> | never;\n};\n\nexport let FlatList = DefaultFlatList;\n\nexport let NetInfo: NetInfo = {\n addEventListener: fail,\n fetch: fail,\n};\n\ntype PickDocument = ({ maxNumberOfFiles }: { maxNumberOfFiles?: number }) =>\n | Promise<{\n cancelled: boolean;\n assets?: File[];\n }>\n | never;\nexport let pickDocument: PickDocument = fail;\n\ntype SaveFileOptions = {\n fileName: string;\n fromUrl: string;\n};\ntype SaveFile = (options: SaveFileOptions) => Promise<string> | never;\nexport let saveFile: SaveFile = fail;\n\ntype SetClipboardString = (text: string) => Promise<void> | never;\nexport let setClipboardString: SetClipboardString = fail;\n\ntype ShareOptions = {\n type?: string;\n url?: string;\n};\ntype ShareImage = (options: ShareOptions) => Promise<boolean> | never;\nexport let shareImage: ShareImage = fail;\n\ntype Photo =\n | (Omit<Asset, 'source'> & {\n cancelled: false;\n source: 'camera';\n })\n | { cancelled: true };\ntype TakePhoto = (options: { compressImageQuality?: number }) => Promise<Photo> | never;\nexport let takePhoto: TakePhoto = fail;\n\ntype HapticFeedbackMethod =\n | 'impactHeavy'\n | 'impactLight'\n | 'impactMedium'\n | 'notificationError'\n | 'notificationSuccess'\n | 'notificationWarning'\n | 'selection';\ntype TriggerHaptic = (method: HapticFeedbackMethod) => void | never;\nexport let triggerHaptic: TriggerHaptic = fail;\n\nexport type PlaybackStatus = {\n didJustFinish: boolean;\n durationMillis: number;\n error: string;\n isBuffering: boolean;\n isLoaded: boolean;\n isLooping: boolean;\n isPlaying: boolean;\n positionMillis: number;\n};\n\nexport type AVPlaybackStatusToSet = {\n isLooping: boolean;\n isMuted: boolean;\n positionMillis: number;\n progressUpdateIntervalMillis: number;\n rate: number;\n shouldCorrectPitch: boolean;\n shouldPlay: boolean;\n volume: number;\n};\n\nexport let SDK: string;\n\nexport type SoundOptions = {\n basePathOrCallback?: string;\n callback?: () => void;\n filenameOrFile?: string;\n initialStatus?: Partial<AVPlaybackStatusToSet>;\n onPlaybackStatusUpdate?: (playbackStatus: PlaybackStatus) => void;\n source?: { uri: string };\n};\n\nexport type SoundReturnType = {\n paused: boolean;\n testID: string;\n getDuration?: () => number;\n isPlaying?: () => boolean;\n onBuffer?: (props: { isBuffering: boolean }) => void;\n onEnd?: () => void;\n onLoad?: (payload: VideoPayloadData) => void;\n onLoadStart?: () => void;\n onPlaybackStatusUpdate?: (playbackStatus: PlaybackStatus) => void;\n onProgress?: (data: VideoProgressData) => void;\n onReadyForDisplay?: () => void;\n pauseAsync?: () => void;\n play?: () => void;\n playAsync?: () => void;\n replayAsync?: () => void;\n resizeMode?: string;\n seek?: (progress: number) => void;\n setPositionAsync?: (millis: number) => void;\n soundRef?: React.RefObject<SoundReturnType>;\n stopAsync?: () => void;\n style?: StyleProp<ViewStyle>;\n unloadAsync?: () => void;\n uri?: string;\n};\n\nexport type SoundType = {\n initializeSound: (\n source?: { uri: string },\n initialStatus?: Partial<AVPlaybackStatusToSet>,\n onPlaybackStatusUpdate?: (playbackStatus: PlaybackStatus) => void,\n ) => Promise<SoundReturnType | null>;\n Player: React.ComponentType<SoundReturnType> | null;\n};\n\nexport let Sound: SoundType;\n\nexport type VideoProgressData = {\n currentTime: number;\n seekableDuration: number;\n playableDuration?: number;\n};\n\nexport type VideoPayloadData = {\n duration: number;\n audioTracks?: { index: number; language: string; title: string; type: string }[];\n currentPosition?: number;\n naturalSize?: { height: number; orientation: 'portrait' | 'landscape'; width: number };\n textTracks?: { index: number; language: string; title: string; type: string }[];\n videoTracks?: {\n bitrate: number;\n codecs: string;\n height: number;\n trackId: number;\n width: number;\n }[];\n};\n\nexport type VideoType = {\n paused: boolean;\n testID: string;\n uri: string;\n videoRef: React.RefObject<VideoType>;\n onBuffer?: (props: { isBuffering: boolean }) => void;\n onEnd?: () => void;\n onLoad?: (payload: VideoPayloadData) => void;\n onLoadStart?: () => void;\n onPlaybackStatusUpdate?: (playbackStatus: PlaybackStatus) => void;\n onProgress?: (data: VideoProgressData) => void;\n onReadyForDisplay?: () => void;\n repeat?: boolean;\n replayAsync?: () => void;\n resizeMode?: string;\n seek?: (progress: number) => void;\n setPositionAsync?: (position: number) => void;\n style?: StyleProp<ViewStyle>;\n};\n\nexport let Video: React.ComponentType<VideoType>;\n\ntype Handlers = {\n iOS14RefreshGallerySelection: iOS14RefreshGallerySelection;\n compressImage?: CompressImage;\n deleteFile?: DeleteFile;\n FlatList?: typeof DefaultFlatList;\n getLocalAssetUri?: GetLocalAssetUri;\n getPhotos?: GetPhotos;\n NetInfo?: NetInfo;\n oniOS14GalleryLibrarySelectionChange?: OniOS14LibrarySelectionChange;\n pickDocument?: PickDocument;\n saveFile?: SaveFile;\n SDK?: string;\n setClipboardString?: SetClipboardString;\n shareImage?: ShareImage;\n Sound?: SoundType;\n takePhoto?: TakePhoto;\n triggerHaptic?: TriggerHaptic;\n Video?: React.ComponentType<VideoType>;\n};\n\nexport const registerNativeHandlers = (handlers: Handlers) => {\n if (handlers.compressImage) {\n compressImage = handlers.compressImage;\n }\n\n if (handlers.deleteFile) {\n deleteFile = handlers.deleteFile;\n }\n\n if (handlers.FlatList) {\n FlatList = handlers.FlatList;\n }\n if (handlers.NetInfo) {\n NetInfo = handlers.NetInfo;\n }\n\n if (handlers.getLocalAssetUri) {\n getLocalAssetUri = handlers.getLocalAssetUri;\n }\n\n if (handlers.getPhotos) {\n getPhotos = handlers.getPhotos;\n }\n\n if (handlers.iOS14RefreshGallerySelection) {\n iOS14RefreshGallerySelection = handlers.iOS14RefreshGallerySelection;\n }\n\n if (handlers.oniOS14GalleryLibrarySelectionChange) {\n oniOS14GalleryLibrarySelectionChange = handlers.oniOS14GalleryLibrarySelectionChange;\n }\n\n if (handlers.pickDocument !== undefined) {\n pickDocument = handlers.pickDocument;\n }\n\n if (handlers.saveFile) {\n saveFile = handlers.saveFile;\n }\n\n if (handlers.SDK) {\n SDK = handlers.SDK;\n }\n\n if (handlers.shareImage !== undefined) {\n shareImage = handlers.shareImage;\n }\n\n if (handlers.Sound) {\n Sound = handlers.Sound;\n }\n\n if (handlers.takePhoto) {\n takePhoto = handlers.takePhoto;\n }\n\n if (handlers.triggerHaptic) {\n triggerHaptic = handlers.triggerHaptic;\n }\n\n if (handlers.Video) {\n Video = handlers.Video;\n }\n\n if (handlers.setClipboardString !== undefined) {\n setClipboardString = handlers.setClipboardString;\n }\n};\n\nexport const isVideoPackageAvailable = () => !!Video;\nexport const isAudioPackageAvailable = () => !!Sound.Player || !!Sound.initializeSound;\n"],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  {
2
- "version": "5.21.0-beta.1"
2
+ "version": "5.21.0-beta.3"
3
3
  }
@@ -22,12 +22,13 @@
22
22
  "File type not supported": "File type not supported",
23
23
  "Flag": "Flag",
24
24
  "Flag Message": "Flag Message",
25
- "Flag action failed either due to a network issue or the message is already flagged": "Flag action failed either due to a network issue or the message is already flagged.",
25
+ "Flag action failed either due to a network issue or the message is already flagged": "Flag action failed either due to a network issue or the message is already flagged",
26
26
  "Instant Commands": "Instant Commands",
27
27
  "Links are disabled": "Links are disabled",
28
28
  "Loading channels...": "Loading channels...",
29
29
  "Loading messages...": "Loading messages...",
30
30
  "Loading...": "Loading...",
31
+ "Maximum file size upload limit reached. Please upload a file below {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB.": "Maximum file size upload limit reached. Please upload a file below {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB.",
31
32
  "Message Reactions": "Message Reactions",
32
33
  "Message deleted": "Message deleted",
33
34
  "Message flagged": "Message flagged",
@@ -47,6 +48,7 @@
47
48
  "Reply to Message": "Reply to Message",
48
49
  "Resend": "Resend",
49
50
  "Search GIFs": "Search GIFs",
51
+ "Select More Photos": "Select More Photos",
50
52
  "Send a message": "Send a message",
51
53
  "Sending links is not allowed in this conversation": "Sending links is not allowed in this conversation",
52
54
  "Slow mode ON": "Slow mode ON",
@@ -1,69 +1,71 @@
1
1
  {
2
2
  "1 Reply": "1 Réponse",
3
3
  "1 Thread Reply": "",
4
- "Allow access to your Gallery": "",
4
+ "Allow access to your Gallery": "Autoriser l'accès à votre galerie",
5
5
  "Also send to channel": "",
6
- "Are you sure you want to permanently delete this message?": "Êtes-vous sûr de vouloir supprimer définitivement ce message?",
7
- "Block User": "Bloquer un utilisateur",
8
- "Cancel": "Annuler",
9
- "Cannot Flag Message": "Impossible de signaler le message",
10
- "Copy Message": "Copier le message",
11
- "Delete": "Supprimer",
12
- "Delete Message": "Supprimer un message",
13
- "Do you want to send a copy of this message to a moderator for further investigation?": "Voulez-vous envoyer une copie de ce message à un modérateur pour une enquête plus approfondie?",
14
- "Edit Message": "Éditer un message",
6
+ "Are you sure you want to permanently delete this message?": "",
7
+ "Block User": "",
8
+ "Cancel": "",
9
+ "Cannot Flag Message": "",
10
+ "Copy Message": "",
11
+ "Delete": "",
12
+ "Delete Message": "",
13
+ "Do you want to send a copy of this message to a moderator for further investigation?": "",
14
+ "Edit Message": "",
15
15
  "Editing Message": "",
16
16
  "Emoji matching": "Correspondance Emoji",
17
- "Empty message...": "Message vide...",
18
- "Error loading": "Erreur lors du chargement",
19
- "Error loading channel list...": "Erreur lors du chargement de la liste de canaux...",
20
- "Error loading messages for this channel...": "Erreur lors du chargement des messages de ce canal...",
21
- "Error while loading, please reload/refresh": "Erreur lors du chargement, veuillez recharger/rafraîchir",
17
+ "Empty message...": "",
18
+ "Error loading": "",
19
+ "Error loading channel list...": "",
20
+ "Error loading messages for this channel...": "",
21
+ "Error while loading, please reload/refresh": "",
22
22
  "File type not supported": "",
23
- "Flag": "Signaler",
24
- "Flag Message": "Signaler le message",
25
- "Flag action failed either due to a network issue or the message is already flagged": "L'action de signalisation a échoué en raison d'un problème de réseau ou le message est déjà signalé.",
23
+ "Flag": "",
24
+ "Flag Message": "",
25
+ "Flag action failed either due to a network issue or the message is already flagged": "",
26
26
  "Instant Commands": "Commandes Instantanées",
27
27
  "Links are disabled": "",
28
- "Loading channels...": "Chargement des canaux...",
29
- "Loading messages...": "Chargement des messages...",
30
- "Loading...": "Chargement...",
31
- "Message Reactions": "",
32
- "Message deleted": "Message supprimé",
33
- "Message flagged": "Message signalé",
34
- "Mute User": "Utilisateur muet",
28
+ "Loading channels...": "",
29
+ "Loading messages...": "",
30
+ "Loading...": "",
31
+ "Maximum file size upload limit reached. Please upload a file below {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB.": "",
32
+ "Message Reactions": "Réactions aux messages",
33
+ "Message deleted": "",
34
+ "Message flagged": "",
35
+ "Mute User": "",
35
36
  "Not supported": "Non pris en charge",
36
- "Nothing yet...": "Aucun message...",
37
- "Ok": "Ok",
37
+ "Nothing yet...": "",
38
+ "Ok": "",
38
39
  "Only visible to you": "",
39
- "Photo": "",
40
- "Photos and Videos": "",
41
- "Pin to Conversation": "Épingler à la conversation",
42
- "Pinned by": "Épinglé par",
43
- "Please enable access to your photos and videos so you can share them.": "",
40
+ "Photo": "Photo",
41
+ "Photos and Videos": "Photos et vidéos",
42
+ "Pin to Conversation": "",
43
+ "Pinned by": "",
44
+ "Please enable access to your photos and videos so you can share them.": "Veuillez autoriser l'accès à vos photos et vidéos afin de pouvoir les partager.",
44
45
  "Please select a channel first": "",
45
- "Reconnecting...": "Se Reconnecter...",
46
- "Reply": "Répondre",
46
+ "Reconnecting...": "",
47
+ "Reply": "",
47
48
  "Reply to Message": "",
48
- "Resend": "Renvoyer",
49
+ "Resend": "",
49
50
  "Search GIFs": "",
51
+ "Select More Photos": "Sélectionner plus de photos",
50
52
  "Send a message": "",
51
53
  "Sending links is not allowed in this conversation": "",
52
54
  "Slow mode ON": "",
53
- "The message has been reported to a moderator.": "Le message a été signalé à un modérateur.",
54
- "Thread Reply": "Réponse à la discussion",
55
- "Unblock User": "Débloquer Utilisateur",
56
- "Unknown User": "",
57
- "Unmute User": "Activer le son de Utilisateur",
58
- "Unpin from Conversation": "Décrocher de la conversation",
59
- "Unread Messages": "Messages non lus",
60
- "Video": "",
61
- "You": "Toi",
55
+ "The message has been reported to a moderator.": "",
56
+ "Thread Reply": "",
57
+ "Unblock User": "",
58
+ "Unknown User": "Utilisateur inconnu",
59
+ "Unmute User": "",
60
+ "Unpin from Conversation": "",
61
+ "Unread Messages": "",
62
+ "Video": "Vidéo",
63
+ "You": "",
62
64
  "You can't send messages in this channel": "",
63
65
  "{{ firstUser }} and {{ nonSelfUserLength }} more are typing": "",
64
- "{{ index }} of {{ photoLength }}": "",
66
+ "{{ index }} of {{ photoLength }}": "{{ index }} sur {{ photoLength }}",
65
67
  "{{ replyCount }} Replies": "{{ replyCount }} Réponses",
66
68
  "{{ replyCount }} Thread Replies": "",
67
69
  "{{ user }} is typing": "",
68
- "🏙 Attachment...": "🏙 Pièce jointe..."
70
+ "🏙 Attachment...": ""
69
71
  }
@@ -66,6 +66,7 @@
66
66
  "{{ replyCount }} Replies": "{{ replyCount }} תגובות",
67
67
  "{{ replyCount }} Thread Replies": "{{ replyCount }} תגובות שרשור",
68
68
  "{{ user }} is typing": "{{ user }} מקליד/ה",
69
+ "Select More Photos": "בחר עוד תמונות",
69
70
  "🏙 Attachment...": "🏙 קובץ מצורף...",
70
71
  "Maximum file size upload limit reached. Please upload a file below {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB.": "הגעת למגבלת העלאת גודל הקובץ המקסימלית. אנא העלה קובץ מתחת ל-{{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB"
71
72
  }
@@ -1,69 +1,71 @@
1
1
  {
2
2
  "1 Reply": "1 रिप्लाई",
3
3
  "1 Thread Reply": "",
4
- "Allow access to your Gallery": "",
4
+ "Allow access to your Gallery": "अपनी गैलरी तक पहुँचने की अनुमति दें",
5
5
  "Also send to channel": "",
6
- "Are you sure you want to permanently delete this message?": "क्या आप वाकई इस संदेश को स्थायी रूप से हटाना चाहते हैं?",
7
- "Block User": "उपयोगकर्ता को रोक देना, ब्लॉक यूजर",
8
- "Cancel": "रद्द करें",
9
- "Cannot Flag Message": "मैसेज फ्लैग नहीं किया जा सकता है",
10
- "Copy Message": "संदेश की प्रतिलिपि बनाएँ",
11
- "Delete": "हटाएं",
12
- "Delete Message": "मैसेज को डिलीट करे",
13
- "Do you want to send a copy of this message to a moderator for further investigation?": "क्या आप इस संदेश की एक प्रति आगे की जाँच के लिए किसी मॉडरेटर को भेजना चाहते हैं?",
14
- "Edit Message": "मैसेज में बदलाव करे",
6
+ "Are you sure you want to permanently delete this message?": "",
7
+ "Block User": "",
8
+ "Cancel": "",
9
+ "Cannot Flag Message": "",
10
+ "Copy Message": "",
11
+ "Delete": "",
12
+ "Delete Message": "",
13
+ "Do you want to send a copy of this message to a moderator for further investigation?": "",
14
+ "Edit Message": "",
15
15
  "Editing Message": "",
16
16
  "Emoji matching": "इमोजी मिलान",
17
- "Empty message...": "खाली संदेश...",
18
- "Error loading": "लोड होने मे त्रुटि",
19
- "Error loading channel list...": "चैनल सूची लोड करने में त्रुटि...",
20
- "Error loading messages for this channel...": "इस चैनल के लिए मेसेजेस लोड करने में त्रुटि हुई...",
21
- "Error while loading, please reload/refresh": "एरर, रिफ्रेश करे",
17
+ "Empty message...": "",
18
+ "Error loading": "",
19
+ "Error loading channel list...": "",
20
+ "Error loading messages for this channel...": "",
21
+ "Error while loading, please reload/refresh": "",
22
22
  "File type not supported": "",
23
- "Flag": "झंडा",
24
- "Flag Message": "झंडा संदेश",
25
- "Flag action failed either due to a network issue or the message is already flagged": "फ़्लैग कार्रवाई या तो नेटवर्क समस्या के कारण विफल हो गई या संदेश पहले से फ़्लैग किया गया है।",
23
+ "Flag": "",
24
+ "Flag Message": "",
25
+ "Flag action failed either due to a network issue or the message is already flagged": "",
26
26
  "Instant Commands": "त्वरित कमांड",
27
27
  "Links are disabled": "",
28
- "Loading channels...": "चैनल लोड हो रहे हैं...",
29
- "Loading messages...": "मेसेजस लोड हो रहे हैं...",
30
- "Loading...": "लोड हो रहा है...",
31
- "Message Reactions": "",
32
- "Message deleted": "मैसेज हटा दिया गया",
33
- "Message flagged": "संदेश को ध्वजांकित किया गया",
34
- "Mute User": "उपयोगकर्ता को म्यूट करें",
28
+ "Loading channels...": "",
29
+ "Loading messages...": "",
30
+ "Loading...": "",
31
+ "Maximum file size upload limit reached. Please upload a file below {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB.": "",
32
+ "Message Reactions": "संदेश प्रतिक्रियाएँ",
33
+ "Message deleted": "",
34
+ "Message flagged": "",
35
+ "Mute User": "",
35
36
  "Not supported": "समर्थित नहीं",
36
- "Nothing yet...": "कोई मैसेज नहीं है...",
37
- "Ok": "ठीक",
37
+ "Nothing yet...": "",
38
+ "Ok": "",
38
39
  "Only visible to you": "",
39
- "Photo": "",
40
- "Photos and Videos": "",
41
- "Pin to Conversation": "बातचीत में पिन करें",
42
- "Pinned by": "द्वारा पिन किया गया",
43
- "Please enable access to your photos and videos so you can share them.": "",
40
+ "Photo": "तस्वीर",
41
+ "Photos and Videos": "तस्वीरें और वीडियों",
42
+ "Pin to Conversation": "",
43
+ "Pinned by": "",
44
+ "Please enable access to your photos and videos so you can share them.": "कृपया अपनी फ़ोटो और वीडियो तक पहुंच सक्षम करें ताकि आप उन्हें साझा कर सकें।",
44
45
  "Please select a channel first": "",
45
- "Reconnecting...": "पुनः कनेक्ट हो...",
46
- "Reply": "मैसेज को रिप्लाई करे",
46
+ "Reconnecting...": "",
47
+ "Reply": "",
47
48
  "Reply to Message": "",
48
- "Resend": "पुन: भेजें",
49
+ "Resend": "",
49
50
  "Search GIFs": "",
51
+ "Select More Photos": "अधिक फ़ोटो चुनें",
50
52
  "Send a message": "",
51
53
  "Sending links is not allowed in this conversation": "",
52
54
  "Slow mode ON": "",
53
- "The message has been reported to a moderator.": "संदेश एक मॉडरेटर को सूचित किया गया है।",
54
- "Thread Reply": "धागा जवाब",
55
- "Unblock User": "उपयोगकर्ता को अनब्लॉक करें",
56
- "Unknown User": "",
57
- "Unmute User": "उपयोगकर्ता को अनम्यूट करें",
58
- "Unpin from Conversation": "बातचीत से अनपिन करें",
59
- "Unread Messages": "अपठित संदेश",
60
- "Video": "",
61
- "You": "आप",
55
+ "The message has been reported to a moderator.": "",
56
+ "Thread Reply": "",
57
+ "Unblock User": "",
58
+ "Unknown User": "अज्ञात उपयोगकर्ता",
59
+ "Unmute User": "",
60
+ "Unpin from Conversation": "",
61
+ "Unread Messages": "",
62
+ "Video": "वीडियो",
63
+ "You": "",
62
64
  "You can't send messages in this channel": "",
63
65
  "{{ firstUser }} and {{ nonSelfUserLength }} more are typing": "",
64
- "{{ index }} of {{ photoLength }}": "",
66
+ "{{ index }} of {{ photoLength }}": "{{ index }} / {{ photoLength }}",
65
67
  "{{ replyCount }} Replies": "{{ replyCount }} रिप्लाई",
66
68
  "{{ replyCount }} Thread Replies": "",
67
69
  "{{ user }} is typing": "",
68
- "🏙 Attachment...": "🏙 अटैचमेंट..."
70
+ "🏙 Attachment...": ""
69
71
  }
@@ -1,69 +1,71 @@
1
1
  {
2
2
  "1 Reply": "1 Risposta",
3
3
  "1 Thread Reply": "",
4
- "Allow access to your Gallery": "",
4
+ "Allow access to your Gallery": "Consenti l'accesso alla tua galleria",
5
5
  "Also send to channel": "",
6
- "Are you sure you want to permanently delete this message?": "Sei sicuro di voler eliminare definitivamente questo messaggio?",
7
- "Block User": "Blocca Utente",
8
- "Cancel": "Annulla",
9
- "Cannot Flag Message": "Impossibile Segnalare Messaggio",
10
- "Copy Message": "Copia Messaggio",
11
- "Delete": "Elimina",
12
- "Delete Message": "Cancella il Messaggio",
13
- "Do you want to send a copy of this message to a moderator for further investigation?": "Vuoi inviare una copia di questo messaggio a un moderatore per ulteriori indagini?",
14
- "Edit Message": "Modifica Messaggio",
6
+ "Are you sure you want to permanently delete this message?": "",
7
+ "Block User": "",
8
+ "Cancel": "",
9
+ "Cannot Flag Message": "",
10
+ "Copy Message": "",
11
+ "Delete": "",
12
+ "Delete Message": "",
13
+ "Do you want to send a copy of this message to a moderator for further investigation?": "",
14
+ "Edit Message": "",
15
15
  "Editing Message": "",
16
16
  "Emoji matching": "Abbinamento emoji",
17
- "Empty message...": "Message vuoto...",
18
- "Error loading": "Errore di caricamento",
19
- "Error loading channel list...": "Errore durante il caricamento della lista dei canali...",
20
- "Error loading messages for this channel...": "Errore durante il caricamento dei messaggi per questo canale...",
21
- "Error while loading, please reload/refresh": "Errore durante il caricamento, per favore ricarica la pagina",
17
+ "Empty message...": "",
18
+ "Error loading": "",
19
+ "Error loading channel list...": "",
20
+ "Error loading messages for this channel...": "",
21
+ "Error while loading, please reload/refresh": "",
22
22
  "File type not supported": "",
23
- "Flag": "Contrassegna",
24
- "Flag Message": "Contrassegna Messaggio",
25
- "Flag action failed either due to a network issue or the message is already flagged": "L'azione di segnalazione non è riuscita a causa di un problema di rete o il messaggio è già segnalato.",
23
+ "Flag": "",
24
+ "Flag Message": "",
25
+ "Flag action failed either due to a network issue or the message is already flagged": "",
26
26
  "Instant Commands": "Comandi Istantanei",
27
27
  "Links are disabled": "",
28
- "Loading channels...": "Caricamento canali in corso...",
29
- "Loading messages...": "Caricamento messaggi...",
30
- "Loading...": "Caricamento...",
31
- "Message Reactions": "",
32
- "Message deleted": "Messaggio cancellato",
33
- "Message flagged": "Messaggio contrassegnato",
34
- "Mute User": "Utente Muto",
28
+ "Loading channels...": "",
29
+ "Loading messages...": "",
30
+ "Loading...": "",
31
+ "Maximum file size upload limit reached. Please upload a file below {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB.": "",
32
+ "Message Reactions": "Reazioni ai Messaggi",
33
+ "Message deleted": "",
34
+ "Message flagged": "",
35
+ "Mute User": "",
35
36
  "Not supported": "non supportato",
36
- "Nothing yet...": "Ancora niente...",
37
- "Ok": "Ok",
37
+ "Nothing yet...": "",
38
+ "Ok": "",
38
39
  "Only visible to you": "",
39
- "Photo": "",
40
- "Photos and Videos": "",
41
- "Pin to Conversation": "Metti in evidenza",
42
- "Pinned by": "Fissato da",
43
- "Please enable access to your photos and videos so you can share them.": "",
40
+ "Photo": "Foto",
41
+ "Photos and Videos": "Foto e Video",
42
+ "Pin to Conversation": "",
43
+ "Pinned by": "",
44
+ "Please enable access to your photos and videos so you can share them.": "Abilita l'accesso alle tue foto e ai tuoi video in modo da poterli condividere.",
44
45
  "Please select a channel first": "",
45
- "Reconnecting...": "Ricollegarsi...",
46
- "Reply": "Rispondi",
46
+ "Reconnecting...": "",
47
+ "Reply": "",
47
48
  "Reply to Message": "",
48
- "Resend": "Invia di nuovo",
49
+ "Resend": "",
49
50
  "Search GIFs": "",
51
+ "Select More Photos": "Seleziona Altre foto",
50
52
  "Send a message": "",
51
53
  "Sending links is not allowed in this conversation": "",
52
54
  "Slow mode ON": "",
53
- "The message has been reported to a moderator.": "Il messaggio è stato segnalato a un moderatore.",
54
- "Thread Reply": "Rispondi alla Discussione",
55
- "Unblock User": "Sblocca utente",
56
- "Unknown User": "",
57
- "Unmute User": "Riattiva utente",
58
- "Unpin from Conversation": "Rimuovi dagli elementi in evidenza",
59
- "Unread Messages": "Messaggi non letti",
60
- "Video": "",
61
- "You": "Tu",
55
+ "The message has been reported to a moderator.": "",
56
+ "Thread Reply": "",
57
+ "Unblock User": "",
58
+ "Unknown User": "Utente sconosciuto",
59
+ "Unmute User": "",
60
+ "Unpin from Conversation": "",
61
+ "Unread Messages": "",
62
+ "Video": "Video",
63
+ "You": "",
62
64
  "You can't send messages in this channel": "",
63
65
  "{{ firstUser }} and {{ nonSelfUserLength }} more are typing": "",
64
- "{{ index }} of {{ photoLength }}": "",
66
+ "{{ index }} of {{ photoLength }}": "{{ index }} di {{ photoLength }}",
65
67
  "{{ replyCount }} Replies": "{{ replyCount }} Risposte",
66
68
  "{{ replyCount }} Thread Replies": "",
67
69
  "{{ user }} is typing": "",
68
- "🏙 Attachment...": "🏙 Allegato..."
70
+ "🏙 Attachment...": ""
69
71
  }
@@ -69,6 +69,7 @@
69
69
  "Reply to Message": "メッセージに返信",
70
70
  "🏙 Attachment...": "🏙 アタッチメント...",
71
71
  "Not supported": "サポートしていません",
72
+ "Select More Photos": "さらに写真を選択",
72
73
  "File type not supported": "サポートされていないファイルです",
73
74
  "Maximum file size upload limit reached. Please upload a file below {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB.": "最大ファイル サイズのアップロード制限に達しました。 {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB 以下のファイルをアップロードしてください"
74
75
  }
@@ -68,6 +68,7 @@
68
68
  "Reply to Message": "메시지에 답장",
69
69
  "🏙 Attachment...": "🏙 부착...",
70
70
  "File type not supported": "지원하지 않는 파일입니다.",
71
+ "Select More Photos": "추가 사진 선택",
71
72
  "Not supported": "지원하지 않습니다",
72
73
  "Maximum file size upload limit reached. Please upload a file below {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}} MB.": "최대 파일 크기 업로드 제한에 도달했습니다. {{MAX_FILE_SIZE_TO_UPLOAD_IN_MB}}MB 미만의 파일을 업로드하세요."
73
74
  }