| feat: allow providing background color when transforming images with alpha channel to a format without it (#3800) ## 🎯 Goal Feature request: https://getstream.slack.com/archives/C02GBL5M1BK/p1788176084433019 The problem: - When transforming images with an alpha channel (PNG/Webp) to a format without an alpha channel (for example JPEG) the resulting image's background is platform-dependent: black on Android, white on iOS 26 - The request: provide an option for integrators to specify an explicit background color for these transforms How to use it? ```ts const localCompressImage = defaultNativeHandlers.compressImage; registerNativeHandlers({ compressImage: localCompressImage ? (params) => localCompressImage({ ...params, backgroundColor: '#FFFFFF' }) : undefined, }); ``` ## 🛠 Implementation details Works for CLI-only because `expo-image-manipulator` doesn't have such option. The default background color is white. ## 🎨 UI Changes <!-- Add relevant screenshots --> <details> <summary>iOS</summary> <table> <thead> <tr> <td>Before</td> <td>After</td> </tr> </thead> <tbody> <tr> <td> <!--<img src="" /> --> </td> <td> <!--<img src="" /> --> </td> </tr> </tbody> </table> </details> <details> <summary>Android</summary> <table> <thead> <tr> <td>Before</td> <td>After</td> </tr> </thead> <tbody> <tr> <td> <!--<img src="" /> --> </td> <td> <!--<img src="" /> --> </td> </tr> </tbody> </table> </details> ## 🧪 Testing <!-- Explain how this change can be tested (or why it can't be tested) --> ## ☑️ Checklist - [ ] I have signed the [Stream CLA](https://docs.google.com/forms/d/e/1FAIpQLScFKsKkAJI7mhCr7K9rEIOpqIDThrWxuvxnwUq2XkHyG154vQ/viewform) (required) - [ ] PR targets the `develop` branch - [ ] Documentation is updated - [ ] New code is tested in main example apps, including all possible scenarios - [ ] SampleApp iOS and Android - [ ] Expo iOS and Android | 23 天前 |