diff --git a/docusaurus/docs/reactnative/basics/installation.mdx b/docusaurus/docs/reactnative/basics/installation.mdx index 68a1756164..00674dd744 100644 --- a/docusaurus/docs/reactnative/basics/installation.mdx +++ b/docusaurus/docs/reactnative/basics/installation.mdx @@ -147,6 +147,91 @@ values={[ Please follow along the linked documentation of each optional dependencies so as to support them correctly in your application. ::: +### Configuring permissions + +Some dependencies(if you are using them on your application), require you to add additional permissions to the `Info.plist` file in iOS and `AndroidManifest.xml` file in Android. Please follow the steps mentioned in the links below for corresponding dependencies: + + + + +- [`@react-native-camera-roll/camera-roll`](https://github.com/react-native-cameraroll/react-native-cameraroll?tab=readme-ov-file#permissions) for gallery/photo library access. +- [`react-native-image-crop-picker`](https://github.com/ivpusic/react-native-image-crop-picker?tab=readme-ov-file#step-3) for camera access. +- [`react-native-audio-recorder-player`](https://github.com/hyochan/react-native-audio-recorder-player?tab=readme-ov-file#post-installation) for microphone access for voice recording. + +An example `AndroidManifest.xml` would look like this with permissions: + +```xml + + + + + + +``` + +An example `Info.plist` would look like this with permissions: + +```xml +NSPhotoLibraryUsageDescription +$(PRODUCT_NAME) would like access to your photo gallery to share image in a message. +NSPhotoLibraryAddUsageDescription +$(PRODUCT_NAME) would like to save photos to your photo gallery after downloading from a message. +NSCameraUsageDescription +$(PRODUCT_NAME) would like to use your camera to share image in a message. +NSMicrophoneUsageDescription +$(PRODUCT_NAME) would like to use your microphone for voice recording. +``` + + + + +- [`expo-media-library`](https://docs.expo.dev/versions/latest/sdk/media-library/#configurable-properties) for gallery/photo library access. +- [`expo-image-picker`](https://docs.expo.dev/versions/latest/sdk/imagepicker/#configuration-in-appjsonappconfigjs) for camera access. +- [`expo-av`](https://docs.expo.dev/versions/latest/sdk/av/#configuration-in-appjsonappconfigjs) for microphone access for voice recording. + +An example `app.json` config for expo would look like this to add permissions to the `Info.plist` on iOS, using the config plugins: + +```json +{ + "expo": { + "plugins": [ + [ + "expo-media-library", + { + "photosPermission": "$(PRODUCT_NAME) would like access to your photo gallery to share image in a message.", + "savePhotosPermission": "$(PRODUCT_NAME) would like to save photos to your photo gallery after downloading from a message." + } + ], + [ + "expo-image-picker", + { + "cameraPermission": "$(PRODUCT_NAME) would like to use your camera to share image in a message." + } + ], + [ + "expo-av", + { + "microphonePermission": "$(PRODUCT_NAME) would like to use your microphone for voice recording." + } + ] + ] + } +} +``` + +For Android on Expo, most of the most permissions are added automatically by libraries that you use in your app either with config plugins or with a package-level `AndroidManifest.xml`. Read more [here](https://docs.expo.dev/guides/permissions/#android). + + + + ### Additional Steps Some dependencies require us to make changes to our application for all functionalities to be available. diff --git a/examples/ExpoMessaging/app.json b/examples/ExpoMessaging/app.json index 426820c2f4..68743ec4b3 100644 --- a/examples/ExpoMessaging/app.json +++ b/examples/ExpoMessaging/app.json @@ -35,6 +35,27 @@ "turboModules": true }, "scheme": "ExpoMessaging", - "plugins": ["expo-router"] + "plugins": [ + "expo-router", + [ + "expo-media-library", + { + "photosPermission": "$(PRODUCT_NAME) would like access to your photo gallery to share image in a message.", + "savePhotosPermission": "$(PRODUCT_NAME) would like to save photos to your photo gallery after downloading from a message." + } + ], + [ + "expo-image-picker", + { + "cameraPermission": "$(PRODUCT_NAME) would like to use your camera to share image in a message." + } + ], + [ + "expo-av", + { + "microphonePermission": "$(PRODUCT_NAME) would like to use your microphone for voice recording." + } + ] + ] } } diff --git a/examples/ExpoMessaging/package.json b/examples/ExpoMessaging/package.json index ea4d57add7..6685996c0b 100644 --- a/examples/ExpoMessaging/package.json +++ b/examples/ExpoMessaging/package.json @@ -12,20 +12,20 @@ "dependencies": { "@react-native-community/netinfo": "11.1.0", "@react-navigation/elements": "^1.3.30", - "expo": "~50.0.14", - "expo-av": "~13.10.5", + "expo": "~50.0.19", + "expo-av": "~13.10.6", "expo-clipboard": "~5.0.1", - "expo-constants": "~15.4.5", + "expo-constants": "~15.4.6", "expo-document-picker": "~11.10.1", - "expo-file-system": "~16.0.8", + "expo-file-system": "~16.0.9", "expo-haptics": "~12.8.1", "expo-image-manipulator": "~11.8.0", "expo-image-picker": "~14.7.1", "expo-linking": "~6.2.2", - "expo-media-library": "~15.9.1", - "expo-router": "~3.4.8", + "expo-media-library": "~15.9.2", + "expo-router": "~3.4.10", "expo-sharing": "~11.10.0", - "expo-splash-screen": "~0.26.4", + "expo-splash-screen": "~0.26.5", "expo-status-bar": "~1.11.1", "react": "18.2.0", "react-dom": "18.2.0", @@ -39,7 +39,7 @@ "react-native-web": "~0.19.6", "stream-chat-expo": "link:../../package/expo-package", "stream-chat-react-native-core": "link:../../package", - "typescript": "5.0.4" + "typescript": "^5.3.0" }, "devDependencies": { "@babel/core": "^7.20.0", diff --git a/examples/ExpoMessaging/yarn.lock b/examples/ExpoMessaging/yarn.lock index 75c6c3fc56..2a0b1fd0cf 100644 --- a/examples/ExpoMessaging/yarn.lock +++ b/examples/ExpoMessaging/yarn.lock @@ -1448,7 +1448,7 @@ resolved "https://registry.yarnpkg.com/@babel/regjsgen/-/regjsgen-0.8.0.tgz#f0ba69b075e1f05fb2825b7fad991e7adbb18310" integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA== -"@babel/runtime@^7.0.0", "@babel/runtime@^7.12.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.16.3", "@babel/runtime@^7.18.6", "@babel/runtime@^7.20.0", "@babel/runtime@^7.8.4": +"@babel/runtime@^7.0.0", "@babel/runtime@^7.12.0", "@babel/runtime@^7.16.3", "@babel/runtime@^7.18.6", "@babel/runtime@^7.20.0", "@babel/runtime@^7.8.4": version "7.22.3" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.22.3.tgz#0a7fce51d43adbf0f7b517a71f4c3aaca92ebcbb" integrity sha512-XsDuspWKLUsxwCp6r7EhsExHtYfbe5oAGQ19kqngTdCPUoPQzOPdUbD/pB9PJiwb2ptYKQDjSJT3R6dC+EPqfQ== @@ -1531,15 +1531,15 @@ mv "~2" safe-json-stringify "~1" -"@expo/cli@0.17.8": - version "0.17.8" - resolved "https://registry.yarnpkg.com/@expo/cli/-/cli-0.17.8.tgz#4abe0d8c604b73a6e1d0a10f34e993cbf1cbad42" - integrity sha512-yfkoghCltbGPDbRI71Qu3puInjXx4wO82+uhW82qbWLvosfIN7ep5Gr0Lq54liJpvlUG6M0IXM1GiGqcCyP12w== +"@expo/cli@0.17.12": + version "0.17.12" + resolved "https://registry.yarnpkg.com/@expo/cli/-/cli-0.17.12.tgz#e0d7c2477d889d118a195c8c2789298c6a43a914" + integrity sha512-HIv55FSSRFk53hdwxt+JKGMSCCMABhpakm1BSxGm0ymWa7nIM6llV/0gUWbHNXGkvmRPNWJqMNqVlV/vcPa8oA== dependencies: "@babel/runtime" "^7.20.0" "@expo/code-signing-certificates" "0.0.5" "@expo/config" "~8.5.0" - "@expo/config-plugins" "~7.8.0" + "@expo/config-plugins" "~7.9.0" "@expo/devcert" "^1.0.0" "@expo/env" "~0.2.2" "@expo/image-utils" "^0.4.0" @@ -1548,7 +1548,7 @@ "@expo/osascript" "^2.0.31" "@expo/package-manager" "^1.1.1" "@expo/plist" "^0.1.0" - "@expo/prebuild-config" "6.7.4" + "@expo/prebuild-config" "6.8.1" "@expo/rudder-sdk-node" "1.1.1" "@expo/spawn-async" "1.5.0" "@expo/xcpretty" "^4.3.0" @@ -1621,7 +1621,30 @@ node-forge "^1.2.1" nullthrows "^1.1.1" -"@expo/config-plugins@7.8.4", "@expo/config-plugins@~7.8.0", "@expo/config-plugins@~7.8.2": +"@expo/config-plugins@7.9.2", "@expo/config-plugins@~7.9.0": + version "7.9.2" + resolved "https://registry.yarnpkg.com/@expo/config-plugins/-/config-plugins-7.9.2.tgz#fc18e84761067ce670742d735b888613c06fbea8" + integrity sha512-sRU/OAp7kJxrCUiCTUZqvPMKPdiN1oTmNfnbkG4oPdfWQTpid3jyCH7ZxJEN5SI6jrY/ZsK5B/JPgjDUhuWLBQ== + dependencies: + "@expo/config-types" "^50.0.0-alpha.1" + "@expo/fingerprint" "^0.6.0" + "@expo/json-file" "~8.3.0" + "@expo/plist" "^0.1.0" + "@expo/sdk-runtime-versions" "^1.0.0" + "@react-native/normalize-color" "^2.0.0" + chalk "^4.1.2" + debug "^4.3.1" + find-up "~5.0.0" + getenv "^1.0.0" + glob "7.1.6" + resolve-from "^5.0.0" + semver "^7.5.3" + slash "^3.0.0" + slugify "^1.6.6" + xcode "^3.0.1" + xml2js "0.6.0" + +"@expo/config-plugins@~7.8.2": version "7.8.4" resolved "https://registry.yarnpkg.com/@expo/config-plugins/-/config-plugins-7.8.4.tgz#533b5d536c1dc8b5544d64878b51bda28f2e1a1f" integrity sha512-hv03HYxb/5kX8Gxv/BTI8TLc9L06WzqAfHRRXdbar4zkLcP2oTzvsLEF4/L/TIpD3rsnYa0KU42d0gWRxzPCJg== @@ -1649,7 +1672,24 @@ resolved "https://registry.yarnpkg.com/@expo/config-types/-/config-types-50.0.0.tgz#b534d3ec997ec60f8af24f6ad56244c8afc71a0b" integrity sha512-0kkhIwXRT6EdFDwn+zTg9R2MZIAEYGn1MVkyRohAd+C9cXOb5RA8WLQi7vuxKF9m1SMtNAUrf0pO+ENK0+/KSw== -"@expo/config@8.5.4", "@expo/config@~8.5.0": +"@expo/config@8.5.6": + version "8.5.6" + resolved "https://registry.yarnpkg.com/@expo/config/-/config-8.5.6.tgz#e37ba437a1718ed4629e1dd130a7aace25312b89" + integrity sha512-wF5awSg6MNn1cb1lIgjnhOn5ov2TEUTnkAVCsOl0QqDwcP+YIerteSFwjn9V52UZvg58L+LKxpCuGbw5IHavbg== + dependencies: + "@babel/code-frame" "~7.10.4" + "@expo/config-plugins" "~7.9.0" + "@expo/config-types" "^50.0.0" + "@expo/json-file" "^8.2.37" + getenv "^1.0.0" + glob "7.1.6" + require-from-string "^2.0.2" + resolve-from "^5.0.0" + semver "7.5.3" + slugify "^1.3.4" + sucrase "3.34.0" + +"@expo/config@~8.5.0": version "8.5.4" resolved "https://registry.yarnpkg.com/@expo/config/-/config-8.5.4.tgz#bb5eb06caa36e4e35dc8c7647fae63e147b830ca" integrity sha512-ggOLJPHGzJSJHVBC1LzwXwR6qUn8Mw7hkc5zEKRIdhFRuIQ6s2FE4eOvP87LrNfDF7eZGa6tJQYsiHSmZKG+8Q== @@ -1743,7 +1783,33 @@ json5 "^2.2.2" write-file-atomic "^2.3.0" -"@expo/metro-config@0.17.6", "@expo/metro-config@~0.17.0": +"@expo/metro-config@0.17.7": + version "0.17.7" + resolved "https://registry.yarnpkg.com/@expo/metro-config/-/metro-config-0.17.7.tgz#c877a9558f3b97447cc9cf382971403834d84b46" + integrity sha512-3vAdinAjMeRwdhGWWLX6PziZdAPvnyJ6KVYqnJErHHqH0cA6dgAENT3Vq6PEM1H2HgczKr2d5yG9AMgwy848ow== + dependencies: + "@babel/core" "^7.20.0" + "@babel/generator" "^7.20.5" + "@babel/parser" "^7.20.0" + "@babel/types" "^7.20.0" + "@expo/config" "~8.5.0" + "@expo/env" "~0.2.2" + "@expo/json-file" "~8.3.0" + "@expo/spawn-async" "^1.7.2" + babel-preset-fbjs "^3.4.0" + chalk "^4.1.0" + debug "^4.3.2" + find-yarn-workspace-root "~2.0.0" + fs-extra "^9.1.0" + getenv "^1.0.0" + glob "^7.2.3" + jsc-safe-url "^0.2.4" + lightningcss "~1.19.0" + postcss "~8.4.32" + resolve-from "^5.0.0" + sucrase "3.34.0" + +"@expo/metro-config@~0.17.0": version "0.17.6" resolved "https://registry.yarnpkg.com/@expo/metro-config/-/metro-config-0.17.6.tgz#f1f4ef056aa357c1dba3841de465f5d319f17216" integrity sha512-WaC1C+sLX/Wa7irwUigLhng3ckmXIEQefZczB8DfYmleV6uhfWWo2kz/HijFBpV7FKs2cW6u8J/aBQpFkxlcqg== @@ -1809,13 +1875,13 @@ base64-js "^1.2.3" xmlbuilder "^14.0.0" -"@expo/prebuild-config@6.7.4": - version "6.7.4" - resolved "https://registry.yarnpkg.com/@expo/prebuild-config/-/prebuild-config-6.7.4.tgz#b3e4c8545d7a101bf1fc263c5b7290abc4635e69" - integrity sha512-x8EUdCa8DTMZ/dtEXjHAdlP+ljf6oSeSKNzhycXiHhpMSMG9jEhV28ocCwc6cKsjK5GziweEiHwvrj6+vsBlhA== +"@expo/prebuild-config@6.8.1": + version "6.8.1" + resolved "https://registry.yarnpkg.com/@expo/prebuild-config/-/prebuild-config-6.8.1.tgz#5d562b1d6b2e5e4727a3c61acf1a4ed6117b94d8" + integrity sha512-ptK9e0dcj1eYlAWV+fG+QkuAWcLAT1AmtEbj++tn7ZjEj8+LkXRM73LCOEGaF0Er8i8ZWNnaVsgGW4vjgP5ZsA== dependencies: "@expo/config" "~8.5.0" - "@expo/config-plugins" "~7.8.0" + "@expo/config-plugins" "~7.9.0" "@expo/config-types" "^50.0.0-alpha.1" "@expo/image-utils" "^0.4.0" "@expo/json-file" "^8.2.37" @@ -3025,10 +3091,10 @@ babel-plugin-transform-flow-enums@^0.0.2: dependencies: "@babel/plugin-syntax-flow" "^7.12.1" -babel-preset-expo@~10.0.1: - version "10.0.1" - resolved "https://registry.yarnpkg.com/babel-preset-expo/-/babel-preset-expo-10.0.1.tgz#a0e7ad0119f46e58cb3f0738c3ca0c6e97b69c11" - integrity sha512-uWIGmLfbP3dS5+8nesxaW6mQs41d4iP7X82ZwRdisB/wAhKQmuJM9Y1jQe4006uNYkw6Phf2TT03ykLVro7KuQ== +babel-preset-expo@~10.0.2: + version "10.0.2" + resolved "https://registry.yarnpkg.com/babel-preset-expo/-/babel-preset-expo-10.0.2.tgz#5aae992b8c85dce6cf98334c9991d3052c567950" + integrity sha512-hg06qdSTK7MjKmFXSiq6cFoIbI3n3uT8a3NI2EZoISWhu+tedCj4DQduwi+3adFuRuYvAwECI0IYn/5iGh5zWQ== dependencies: "@babel/plugin-proposal-decorators" "^7.12.9" "@babel/plugin-transform-export-namespace-from" "^7.22.11" @@ -4040,33 +4106,45 @@ expo-asset@~9.0.2: invariant "^2.2.4" md5-file "^3.2.3" -expo-av@~13.10.5: - version "13.10.5" - resolved "https://registry.yarnpkg.com/expo-av/-/expo-av-13.10.5.tgz#cdce4db8c0f896be88cc881994704a251a1e63ff" - integrity sha512-w45oCoe+8PunDeM0rh/Ut6UaGh7OjEJOCjAiQy3nCxpA8FaXB17KaqpsvkAXIMvceHYWndH8+D29esUTS6wEsA== +expo-av@~13.10.6: + version "13.10.6" + resolved "https://registry.yarnpkg.com/expo-av/-/expo-av-13.10.6.tgz#ca1b5d0c46a016069f653c1740a25516ffc730a2" + integrity sha512-h3c1fg5yhWnP0RIGO+fhgPx6cmh4B4lnKdXR2i69aC3vs5D5Cu+JlzBon1gLIu6eUo2IVfC0RjSLpfQbcJ4doQ== expo-clipboard@~5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/expo-clipboard/-/expo-clipboard-5.0.1.tgz#a62a021a9444740d180d60f915cca8242a323716" integrity sha512-JH853QJPr5W3h87If3aDTnMK+ESSIrwzU2TdfZrqZttVDY2pMIf/w37mVHHNYodXM4ATHXadtOkjKbAa0DWwUg== -expo-constants@~15.4.0, expo-constants@~15.4.3, expo-constants@~15.4.5: +expo-constants@~15.4.0, expo-constants@~15.4.3: version "15.4.5" resolved "https://registry.yarnpkg.com/expo-constants/-/expo-constants-15.4.5.tgz#81756a4c4e1c020f840a419cd86a124a6d1fb35b" integrity sha512-1pVVjwk733hbbIjtQcvUFCme540v4gFemdNlaxM2UXKbfRCOh2hzgKN5joHMOysoXQe736TTUrRj7UaZI5Yyhg== dependencies: "@expo/config" "~8.5.0" +expo-constants@~15.4.6: + version "15.4.6" + resolved "https://registry.yarnpkg.com/expo-constants/-/expo-constants-15.4.6.tgz#d4e9b21b70c5602457962700f2e90a75356b487b" + integrity sha512-vizE69dww2Vl0PTWWvDmK0Jo2/J+WzdcMZlA05YEnEYofQuhKxTVsiuipf79mSOmFavt4UQYC1UnzptzKyfmiQ== + dependencies: + "@expo/config" "~8.5.0" + expo-document-picker@~11.10.1: version "11.10.1" resolved "https://registry.yarnpkg.com/expo-document-picker/-/expo-document-picker-11.10.1.tgz#03394d77842a2fd7cb0a784a60098ee1ddd1012e" integrity sha512-A1MiLfyXQ+KxanRO5lYxYQy3ryV+25JHe5Ai/BLV+FJU0QXByUF+Y/dn35WVPx5gpdZXC8UJ4ejg5SKSoeconw== -expo-file-system@~16.0.0, expo-file-system@~16.0.8: +expo-file-system@~16.0.0: version "16.0.8" resolved "https://registry.yarnpkg.com/expo-file-system/-/expo-file-system-16.0.8.tgz#13c79a8e06e42a8e76e9297df6920597a011d989" integrity sha512-yDbVT0TUKd7ewQjaY5THum2VRFx2n/biskGhkUmLh3ai21xjIVtaeIzHXyv9ir537eVgt4ReqDNWi7jcXjdUcA== +expo-file-system@~16.0.9: + version "16.0.9" + resolved "https://registry.yarnpkg.com/expo-file-system/-/expo-file-system-16.0.9.tgz#cbd6c4b228b60a6b6c71fd1b91fe57299fb24da7" + integrity sha512-3gRPvKVv7/Y7AdD9eHMIdfg5YbUn2zbwKofjsloTI5sEC57SLUFJtbLvUCz9Pk63DaSQ7WIE1JM0EASyvuPbuw== + expo-font@~11.10.3: version "11.10.3" resolved "https://registry.yarnpkg.com/expo-font/-/expo-font-11.10.3.tgz#a3115ebda8e09bd7cb8052619a4bbe606f0c17f4" @@ -4111,10 +4189,10 @@ expo-linking@~6.2.2: expo-constants "~15.4.3" invariant "^2.2.4" -expo-media-library@~15.9.1: - version "15.9.1" - resolved "https://registry.yarnpkg.com/expo-media-library/-/expo-media-library-15.9.1.tgz#1eaf5a0c8f51669f6f86d385a8fa411226042216" - integrity sha512-Y29uKFJ3qWwNejIrjoCppXp3OgIFs/RYHWXkF9xey6evpNrUlHoP1WHG2jYAMSrss6aIRVt3tO7EtYUCZxz50Q== +expo-media-library@~15.9.2: + version "15.9.2" + resolved "https://registry.yarnpkg.com/expo-media-library/-/expo-media-library-15.9.2.tgz#cf7183db639a3065862ed0696a315e946d5812a0" + integrity sha512-ExRcCxNO768aWPQr9axuBDQLcFnRTSiqvWZ1XvnopCfZEic04wJ/CPAE1hLqTp7AyYrd6jHpqxa/aNKBAAFVeA== expo-modules-autolinking@1.10.3: version "1.10.3" @@ -4135,10 +4213,10 @@ expo-modules-core@1.11.13: dependencies: invariant "^2.2.4" -expo-router@~3.4.8: - version "3.4.8" - resolved "https://registry.yarnpkg.com/expo-router/-/expo-router-3.4.8.tgz#c7e55f500467985950760d325f75d06f8dfc17e7" - integrity sha512-fOOAWHH4LSPjPFtIZbApxdTNU8xSS8qKvhZ7PfWNMfx9510J1R1Ce/nwENPzcRLHRuVofDsSAEBfi4kV03fJwg== +expo-router@~3.4.10: + version "3.4.10" + resolved "https://registry.yarnpkg.com/expo-router/-/expo-router-3.4.10.tgz#f73cfd31c2b3102b4cb33a8b82bfca976dc6cadf" + integrity sha512-3Ldhsva/EtfWFFTDaTl6PRuJFJWG0DTd3OOI3U9/tY+/S7oaNbIOO8yVJbbTbsymAreVZuDwrQsfCmw0xLsB7g== dependencies: "@expo/metro-runtime" "3.1.3" "@expo/server" "^0.3.0" @@ -4146,8 +4224,8 @@ expo-router@~3.4.8: "@react-navigation/bottom-tabs" "~6.5.7" "@react-navigation/native" "~6.1.6" "@react-navigation/native-stack" "~6.9.12" - expo-splash-screen "0.26.4" - react-helmet-async "^1.3.0" + expo-splash-screen "~0.26.5" + react-native-helmet-async "2.0.4" schema-utils "^4.0.1" expo-sharing@~11.10.0: @@ -4155,32 +4233,32 @@ expo-sharing@~11.10.0: resolved "https://registry.yarnpkg.com/expo-sharing/-/expo-sharing-11.10.0.tgz#0e85197ee4d2634b00fe201e571fbdc64cf83eef" integrity sha512-/64RyyKlZ25WfnMXa87HbPXhIIqWwNbIku/RaIYAq4SE0XTRC+KTH3v0XFkfDa+SCG/jKsAr1pJ3vQvsNo1sCQ== -expo-splash-screen@0.26.4, expo-splash-screen@~0.26.4: - version "0.26.4" - resolved "https://registry.yarnpkg.com/expo-splash-screen/-/expo-splash-screen-0.26.4.tgz#bc1fb226c6eae03ee351a3ebe5521a37f868cbc7" - integrity sha512-2DwofTQ0FFQCsvDysm/msENsbyNsJiAJwK3qK/oXeizECAPqD7bK19J4z9kuEbr7ORPX9MLnTQYKl6kmX3keUg== +expo-splash-screen@~0.26.5: + version "0.26.5" + resolved "https://registry.yarnpkg.com/expo-splash-screen/-/expo-splash-screen-0.26.5.tgz#9813a5e099180188204e4e7f925f90a0a1939cd2" + integrity sha512-FyvA2EWDeQdC3zuoQdXV2VmSANiJzF0hmbtoEEyR6MXoHaYFvxxKyhBeAm61N8C9TtUijIcEgFM6XBCh0wTBVw== dependencies: - "@expo/prebuild-config" "6.7.4" + "@expo/prebuild-config" "6.8.1" expo-status-bar@~1.11.1: version "1.11.1" resolved "https://registry.yarnpkg.com/expo-status-bar/-/expo-status-bar-1.11.1.tgz#a11318741d361048c11db2b16c4364a79a74af30" integrity sha512-ddQEtCOgYHTLlFUe/yH67dDBIoct5VIULthyT3LRJbEwdpzAgueKsX2FYK02ldh440V87PWKCamh7R9evk1rrg== -expo@~50.0.14: - version "50.0.15" - resolved "https://registry.yarnpkg.com/expo/-/expo-50.0.15.tgz#18c5c3ee0125fd42fe828b6791410eed68f7e74a" - integrity sha512-tsyRmMHjA8lPlM7AsqH1smSH8hzmn1+x/vsP+xgbKYJTGtYccdY/wsm6P84VJWeK5peWSVqrWNos+YuPqXKLSQ== +expo@~50.0.19: + version "50.0.19" + resolved "https://registry.yarnpkg.com/expo/-/expo-50.0.19.tgz#c44369919a078f46a92f64106a94b6c37957bfd1" + integrity sha512-9weIVMGylJhNVN41mId1c1Kog3VmGA28oY0RpJKdJNrKGt5NKQAXV26TIwxw/PyDG1J4q2T/wZZoK+F1C64aIw== dependencies: "@babel/runtime" "^7.20.0" - "@expo/cli" "0.17.8" - "@expo/config" "8.5.4" - "@expo/config-plugins" "7.8.4" - "@expo/metro-config" "0.17.6" + "@expo/cli" "0.17.12" + "@expo/config" "8.5.6" + "@expo/config-plugins" "7.9.2" + "@expo/metro-config" "0.17.7" "@expo/vector-icons" "^14.0.0" - babel-preset-expo "~10.0.1" + babel-preset-expo "~10.0.2" expo-asset "~9.0.2" - expo-file-system "~16.0.8" + expo-file-system "~16.0.9" expo-font "~11.10.3" expo-keep-awake "~12.8.2" expo-modules-autolinking "1.10.3" @@ -6596,7 +6674,7 @@ react-dom@18.2.0: loose-envify "^1.1.0" scheduler "^0.23.0" -react-fast-compare@^3.2.0: +react-fast-compare@^3.2.2: version "3.2.2" resolved "https://registry.yarnpkg.com/react-fast-compare/-/react-fast-compare-3.2.2.tgz#929a97a532304ce9fee4bcae44234f1ce2c21d49" integrity sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ== @@ -6606,17 +6684,6 @@ react-freeze@^1.0.0: resolved "https://registry.yarnpkg.com/react-freeze/-/react-freeze-1.0.3.tgz#5e3ca90e682fed1d73a7cb50c2c7402b3e85618d" integrity sha512-ZnXwLQnGzrDpHBHiC56TXFXvmolPeMjTn1UOm610M4EXGzbEDR7oOIyS2ZiItgbs6eZc4oU/a0hpk8PrcKvv5g== -react-helmet-async@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/react-helmet-async/-/react-helmet-async-1.3.0.tgz#7bd5bf8c5c69ea9f02f6083f14ce33ef545c222e" - integrity sha512-9jZ57/dAn9t3q6hneQS0wukqC2ENOBgMNVEhb/ZG9ZSxUetzVIw4iAmEU38IaVg3QGYauQPhSeUTuIUtFglWpg== - dependencies: - "@babel/runtime" "^7.12.5" - invariant "^2.2.4" - prop-types "^15.7.2" - react-fast-compare "^3.2.0" - shallowequal "^1.1.0" - "react-is@^16.12.0 || ^17.0.0 || ^18.0.0", react-is@^18.0.0: version "18.2.0" resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b" @@ -6643,6 +6710,15 @@ react-native-gesture-handler@~2.14.0: lodash "^4.17.21" prop-types "^15.7.2" +react-native-helmet-async@2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/react-native-helmet-async/-/react-native-helmet-async-2.0.4.tgz#93f53a1ff22d6898039688a541653a2d6b6866bb" + integrity sha512-m3CkXWss6B1dd6mCMleLpzDCJJGGaHOLQsUzZv8kAASJmMfmVT4d2fx375iXKTRWT25ThBfae3dECuX5cq/8hg== + dependencies: + invariant "^2.2.4" + react-fast-compare "^3.2.2" + shallowequal "^1.1.0" + react-native-lightbox@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/react-native-lightbox/-/react-native-lightbox-0.7.0.tgz#e52b4d7fcc141f59d7b23f0180de535e35b20ec9" @@ -7695,10 +7771,10 @@ type-fest@^0.7.1: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.7.1.tgz#8dda65feaf03ed78f0a3f9678f1869147f7c5c48" integrity sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg== -typescript@5.0.4: - version "5.0.4" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.0.4.tgz#b217fd20119bd61a94d4011274e0ab369058da3b" - integrity sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw== +typescript@^5.3.0: + version "5.4.5" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.5.tgz#42ccef2c571fdbd0f6718b1d1f5e6e5ef006f611" + integrity sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ== ua-parser-js@^0.7.30: version "0.7.35" diff --git a/examples/SampleApp/ios/SampleApp/Info.plist b/examples/SampleApp/ios/SampleApp/Info.plist index e1ffbc550d..2f3d69aa0b 100644 --- a/examples/SampleApp/ios/SampleApp/Info.plist +++ b/examples/SampleApp/ios/SampleApp/Info.plist @@ -26,22 +26,23 @@ NSAppTransportSecurity - + NSAllowsArbitraryLoads - + NSAllowsLocalNetworking - + - NSCameraUsageDescription - $(PRODUCT_NAME) would like to use your camera NSLocationWhenInUseUsageDescription - NSMicrophoneUsageDescription - $(PRODUCT_NAME) would like to use your microphone (for videos) - NSPhotoLibraryAddUsageDescription - $(PRODUCT_NAME) would like to save photos to your photo gallery NSPhotoLibraryUsageDescription - $(PRODUCT_NAME) would like access to your photo gallery + $(PRODUCT_NAME) would like access to your photo gallery to share image in a message. + NSPhotoLibraryAddUsageDescription + $(PRODUCT_NAME) would like to save photos to your photo gallery after downloading + from a message. + NSCameraUsageDescription + $(PRODUCT_NAME) would like to use your camera to share image in a message. + NSMicrophoneUsageDescription + $(PRODUCT_NAME) would like to use your microphone for voice recording. UILaunchStoryboardName LaunchScreen UIRequiredDeviceCapabilities diff --git a/examples/TypeScriptMessaging/ios/TypeScriptMessaging/Info.plist b/examples/TypeScriptMessaging/ios/TypeScriptMessaging/Info.plist index 73a387d92e..bbf70e0dfa 100644 --- a/examples/TypeScriptMessaging/ios/TypeScriptMessaging/Info.plist +++ b/examples/TypeScriptMessaging/ios/TypeScriptMessaging/Info.plist @@ -26,11 +26,11 @@ NSAppTransportSecurity - + NSAllowsArbitraryLoads - + NSAllowsLocalNetworking - + NSLocationWhenInUseUsageDescription @@ -49,15 +49,13 @@ UIViewControllerBasedStatusBarAppearance NSPhotoLibraryUsageDescription - $(PRODUCT_NAME) would like access to your photo gallery - NSCameraUsageDescription - $(PRODUCT_NAME) would like to use your camera + $(PRODUCT_NAME) would like access to your photo gallery to share image in a message. NSPhotoLibraryAddUsageDescription - $(PRODUCT_NAME) would like to save photos to your photo gallery - NSMicrophoneUsageDescription - $(PRODUCT_NAME) would like to use your microphone (for videos) + $(PRODUCT_NAME) would like to save photos to your photo gallery after downloading + from a message. + NSCameraUsageDescription + $(PRODUCT_NAME) would like to use your camera to share image in a message. NSMicrophoneUsageDescription - Give $(PRODUCT_NAME) permission to use your microphone. Your record wont be shared - without your permission. + $(PRODUCT_NAME) would like to use your microphone for voice recording. \ No newline at end of file