{"_id":"@carchaze/react-native-voice-message-player","_rev":"8-73d6a42d8bcb106c5ceddd54870ade76","name":"@carchaze/react-native-voice-message-player","dist-tags":{"latest":"1.0.5"},"versions":{"1.0.0":{"name":"@carchaze/react-native-voice-message-player","version":"1.0.0","keywords":["voice","message","react-native","player","audio-player"],"author":{"url":"Hamza Hussain","name":"CarChaze"},"license":"MIT","_id":"@carchaze/react-native-voice-message-player@1.0.0","maintainers":[{"name":"carchaze","email":"carchaze.development@gmail.com"}],"homepage":"https://github.com/carchaze-org/react-native-voice-message-player#readme","bugs":{"url":"https://github.com/carchaze-org/react-native-voice-message-player/issues"},"dist":{"shasum":"97a5130fd1fca915a15b06e4aa6251a7ffde2ee5","tarball":"https://registry.npmjs.org/@carchaze/react-native-voice-message-player/-/react-native-voice-message-player-1.0.0.tgz","fileCount":44,"integrity":"sha512-YAgXCaH91biuIcLZ08HpiVSSYQ0UFxhxWWcTvn4FE+WKZ9x+4jb37srg5JgxTi0zD13i0TnUL3emLhwmG1Gm6Q==","signatures":[{"sig":"MEYCIQDyKrmtGtFRnQTueliTEUb3pQs5UNn4d+l2P3HpSBsMJAIhAKBzj6hmIu6LAQxFRfPGMfs2ROTGxhdkTu65TVojQJhN","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":2360988},"main":"index.js","scripts":{},"_npmUser":{"name":"carchaze","email":"carchaze.development@gmail.com"},"repository":{"url":"git+https://github.com/carchaze-org/react-native-voice-message-player.git","type":"git"},"_npmVersion":"9.6.7","description":"An intuitive and customizable React Native module for playing voice messages seamlessly in chat interfaces. This package offers out-of-the-box components and easy-to-use configurations to integrate voice message playback functionality in your application.","directories":{"example":"examples"},"_nodeVersion":"18.17.0","dependencies":{"react":"18.2.0","prop-types":"^15.8.1","react-native":"0.72.3","react-native-sound":"^0.11.2","@ptomasroos/react-native-multi-slider":"^2.2.2"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/react-native-voice-message-player_1.0.0_1691565569039_0.6175963323928568","host":"s3://npm-registry-packages"}},"1.0.1":{"name":"@carchaze/react-native-voice-message-player","version":"1.0.1","keywords":["voice","message","react-native","player","audio-player"],"author":{"url":"Hamza Hussain","name":"CarChaze"},"license":"MIT","_id":"@carchaze/react-native-voice-message-player@1.0.1","maintainers":[{"name":"carchaze","email":"carchaze.development@gmail.com"}],"homepage":"https://github.com/carchaze-org/react-native-voice-message-player#readme","bugs":{"url":"https://github.com/carchaze-org/react-native-voice-message-player/issues"},"dist":{"shasum":"c736b537f6d0118877a1a73d50525a263361314f","tarball":"https://registry.npmjs.org/@carchaze/react-native-voice-message-player/-/react-native-voice-message-player-1.0.1.tgz","fileCount":44,"integrity":"sha512-W566IwjY6SlZROATtsbHSv+HPOrZLwt7/UE5dtJxh7LduE1XiR9lam9KIwxB7vvu8mazU4qlzpW3xV5hWWuFzA==","signatures":[{"sig":"MEYCIQCHmUqgBr0AaAVygxJpdfcm4kteL6ULb9fAzzdzBxStygIhAPsyWzelpsQ9RSa7MBpJp6SzeQm+ZXNs/FaNZtoLN2sy","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":2360984},"main":"index.js","scripts":{},"_npmUser":{"name":"carchaze","email":"carchaze.development@gmail.com"},"repository":{"url":"git+https://github.com/carchaze-org/react-native-voice-message-player.git","type":"git"},"_npmVersion":"9.6.7","description":"An intuitive and customizable React Native module for playing voice messages seamlessly in chat interfaces. This package offers out-of-the-box components and easy-to-use configurations to integrate voice message playback functionality in your application.","directories":{"example":"examples"},"_nodeVersion":"18.17.0","dependencies":{"react":"18.2.0","prop-types":"^15.8.1","react-native":"0.72.3","react-native-sound":"^0.11.2","@ptomasroos/react-native-multi-slider":"^2.2.2"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/react-native-voice-message-player_1.0.1_1691566918539_0.834064382909266","host":"s3://npm-registry-packages"}},"1.0.2":{"name":"@carchaze/react-native-voice-message-player","version":"1.0.2","keywords":["voice","message","react-native","player","audio-player"],"author":{"url":"Hamza Hussain","name":"CarChaze"},"license":"MIT","_id":"@carchaze/react-native-voice-message-player@1.0.2","maintainers":[{"name":"hamzaxeros","email":"hamza.xeros@gmail.com"},{"name":"carchaze","email":"carchaze.development@gmail.com"}],"homepage":"https://github.com/carchaze-org/react-native-voice-message-player#readme","bugs":{"url":"https://github.com/carchaze-org/react-native-voice-message-player/issues"},"dist":{"shasum":"3490d420f894fc50e711419d687f3a8684057eb0","tarball":"https://registry.npmjs.org/@carchaze/react-native-voice-message-player/-/react-native-voice-message-player-1.0.2.tgz","fileCount":44,"integrity":"sha512-nITdjCDchDiN5pQQd2EmJWX3ykNCnXd8NI3fZcvsoqoKTt8yEX8szxK9VTEi1lSRoDgkCqLgZM63A6EKfbJHNg==","signatures":[{"sig":"MEUCIQDzKjWYB2BGgZeFlpBaqtPrNvyhdAAxKK6+jqVKzNoPyAIgXtIapRzlx8wk0MkkVoTij1DxAg8NgrR/DkfhLngnv84=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":208848},"main":"index.js","gitHead":"2dbb91297c5b2b75c500ca157186b00c5bde2d53","scripts":{},"_npmUser":{"name":"carchaze","email":"carchaze.development@gmail.com"},"repository":{"url":"git+https://github.com/carchaze-org/react-native-voice-message-player.git","type":"git"},"_npmVersion":"9.6.7","description":"An intuitive and customizable React Native module for playing voice messages seamlessly in chat interfaces. This package offers out-of-the-box components and easy-to-use configurations to integrate voice message playback functionality in your application.","directories":{"example":"examples"},"_nodeVersion":"18.17.0","dependencies":{"react":"18.2.0","prop-types":"^15.8.1","react-native":"0.72.3","react-native-sound":"^0.11.2","@ptomasroos/react-native-multi-slider":"^2.2.2"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/react-native-voice-message-player_1.0.2_1691570854239_0.7845692171784984","host":"s3://npm-registry-packages"}},"1.0.3":{"name":"@carchaze/react-native-voice-message-player","version":"1.0.3","keywords":["voice","message","react-native","player","audio-player"],"author":{"url":"Hamza Hussain","name":"CarChaze"},"license":"MIT","_id":"@carchaze/react-native-voice-message-player@1.0.3","maintainers":[{"name":"hamzaxeros","email":"hamza.xeros@gmail.com"},{"name":"carchaze","email":"carchaze.development@gmail.com"}],"homepage":"https://github.com/carchaze-org/react-native-voice-message-player#readme","bugs":{"url":"https://github.com/carchaze-org/react-native-voice-message-player/issues"},"dist":{"shasum":"3d8c5f01537946f8cb565660e2b2acd8827698b9","tarball":"https://registry.npmjs.org/@carchaze/react-native-voice-message-player/-/react-native-voice-message-player-1.0.3.tgz","fileCount":44,"integrity":"sha512-GtDESDjk+Dp5Rbz7zEy7HNrUMauWf2Pb/DeoI13bXSkexe+J4EtVsqkhgae7C72wiUoVC0PEmHPO+FwNXUz7Ew==","signatures":[{"sig":"MEUCIG80Gp45kYpwrSp5d9+eGj+f8c2TBgxFQdMXB64WSqjLAiEAn7U/lPdl8zaAgAe2ZLyoCxsRX4/gflQ+aV5BCPsSKlA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":210083},"main":"index.js","gitHead":"c8446de73dbc9b56293dcec7db2450560bf83b66","scripts":{},"_npmUser":{"name":"carchaze","email":"carchaze.development@gmail.com"},"repository":{"url":"git+https://github.com/carchaze-org/react-native-voice-message-player.git","type":"git"},"_npmVersion":"9.6.7","description":"An intuitive and customizable React Native module for playing voice messages seamlessly in chat interfaces. This package offers out-of-the-box components and easy-to-use configurations to integrate voice message playback functionality in your application.","directories":{"example":"examples"},"_nodeVersion":"18.17.0","dependencies":{"react":"18.2.0","prop-types":"^15.8.1","react-native":"0.72.3","react-native-sound":"^0.11.2","@ptomasroos/react-native-multi-slider":"^2.2.2"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/react-native-voice-message-player_1.0.3_1691589295921_0.4664019428666053","host":"s3://npm-registry-packages"}},"1.0.4":{"name":"@carchaze/react-native-voice-message-player","version":"1.0.4","keywords":["voice","message","react-native","player","audio-player"],"author":{"url":"Hamza Hussain","name":"CarChaze"},"license":"MIT","_id":"@carchaze/react-native-voice-message-player@1.0.4","maintainers":[{"name":"hamzaxeros","email":"hamza.xeros@gmail.com"},{"name":"carchaze","email":"carchaze.development@gmail.com"}],"homepage":"https://github.com/carchaze-org/react-native-voice-message-player#readme","bugs":{"url":"https://github.com/carchaze-org/react-native-voice-message-player/issues"},"dist":{"shasum":"06c0ce81b941e6b983fa575149d6d7f4c217bc20","tarball":"https://registry.npmjs.org/@carchaze/react-native-voice-message-player/-/react-native-voice-message-player-1.0.4.tgz","fileCount":45,"integrity":"sha512-TcXlUDQTzDcNbxInP9Lho7BkAKtkglJrTueN3+Q8y6fVpYEKXou59ck/95PxgFxdccfl11ruaCxNfKEr/83lVg==","signatures":[{"sig":"MEUCIA6cXLYxFGnniyQuYA09u02EsORrfo/kzCTjHNPrIGO+AiEAhY1VOlxCvCDyYV9/1Nf5UlmwpAPy4XxPN+2uaXJoi0w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":210749},"main":"index.js","gitHead":"88fcc648d95d65f052186703783782086148477a","scripts":{},"_npmUser":{"name":"carchaze","email":"carchaze.development@gmail.com"},"repository":{"url":"git+https://github.com/carchaze-org/react-native-voice-message-player.git","type":"git"},"_npmVersion":"9.6.7","description":"An intuitive and customizable React Native module for playing voice messages seamlessly in chat interfaces. This package offers out-of-the-box components and easy-to-use configurations to integrate voice message playback functionality in your application.","directories":{"example":"examples"},"_nodeVersion":"18.17.0","dependencies":{"react":"18.2.0","prop-types":"^15.8.1","react-native":"0.72.3","react-native-sound":"^0.11.2","@ptomasroos/react-native-multi-slider":"^2.2.2"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/react-native-voice-message-player_1.0.4_1691646577557_0.8951450158799128","host":"s3://npm-registry-packages"}},"1.0.5":{"name":"@carchaze/react-native-voice-message-player","version":"1.0.5","description":"An intuitive and customizable React Native module for playing voice messages seamlessly in chat interfaces. This package offers out-of-the-box components and easy-to-use configurations to integrate voice message playback functionality in your application.","main":"index.js","directories":{"example":"examples"},"scripts":{},"repository":{"type":"git","url":"git+https://github.com/carchaze-org/react-native-voice-message-player.git"},"keywords":["voice","message","react-native","player","audio-player"],"author":{"name":"CarChaze","url":"Hamza Hussain"},"license":"MIT","dependencies":{"@ptomasroos/react-native-multi-slider":"^2.2.2","react-native-sound":"^0.11.2","prop-types":"^15.8.1","react-native":"0.72.3","react":"18.2.0"},"bugs":{"url":"https://github.com/carchaze-org/react-native-voice-message-player/issues"},"homepage":"https://github.com/carchaze-org/react-native-voice-message-player#readme","_id":"@carchaze/react-native-voice-message-player@1.0.5","gitHead":"fc2a5f51b8f25852cb8af84db2487b755218676c","_nodeVersion":"20.10.0","_npmVersion":"10.2.3","dist":{"integrity":"sha512-UC4Ej0s5gEI9XqTTv3VYQclilUMGzV4fqT3R63f0IeqTjZDl4uy4MJFDGq+hW4mEZONVl4UiUYUWd932Q9HnNw==","shasum":"735c30c00394ef9a64247d560b8fa53762bbbbdc","tarball":"https://registry.npmjs.org/@carchaze/react-native-voice-message-player/-/react-native-voice-message-player-1.0.5.tgz","fileCount":45,"unpackedSize":210972,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFUOnjYWrjfwOF3Z8+b7o4lVRkIBvCyKtczQlXuE1GKmAiBMN1QRvUKv9QQVDZ1HrJeNYMNO4kgfN2tJAcUadmWHxw=="}]},"_npmUser":{"name":"hamzaxeros","email":"hamxahusain@yahoo.com"},"maintainers":[{"name":"hamzaxeros","email":"hamxahusain@yahoo.com"},{"name":"carchaze","email":"carchaze.development@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-native-voice-message-player_1.0.5_1721972294077_0.06910406449042039"},"_hasShrinkwrap":false}},"time":{"created":"2023-08-09T07:19:28.948Z","modified":"2024-07-26T05:38:14.565Z","1.0.0":"2023-08-09T07:19:29.263Z","1.0.1":"2023-08-09T07:41:58.751Z","1.0.2":"2023-08-09T08:47:34.561Z","1.0.3":"2023-08-09T13:54:56.162Z","1.0.4":"2023-08-10T05:49:37.815Z","1.0.5":"2024-07-26T05:38:14.386Z"},"bugs":{"url":"https://github.com/carchaze-org/react-native-voice-message-player/issues"},"author":{"name":"CarChaze","url":"Hamza Hussain"},"license":"MIT","homepage":"https://github.com/carchaze-org/react-native-voice-message-player#readme","keywords":["voice","message","react-native","player","audio-player"],"repository":{"type":"git","url":"git+https://github.com/carchaze-org/react-native-voice-message-player.git"},"description":"An intuitive and customizable React Native module for playing voice messages seamlessly in chat interfaces. This package offers out-of-the-box components and easy-to-use configurations to integrate voice message playback functionality in your application.","maintainers":[{"name":"hamzaxeros","email":"hamxahusain@yahoo.com"},{"name":"carchaze","email":"carchaze.development@gmail.com"}],"readme":"# @carchaze/react-native-voice-message-player\n\n![GitHub Stars](https://img.shields.io/github/stars/carchaze-org/react-native-voice-message-player?style=social)\n![GitHub Forks](https://img.shields.io/github/forks/carchaze-org/react-native-voice-message-player?style=social)\n\n![Supports iOS](https://img.shields.io/badge/supports-iOS-blue.svg)\n![Supports Android](https://img.shields.io/badge/supports-Android-green.svg)\n\n<img src=\"https://www.pngmart.com/files/3/Sound-Wave-PNG-File.png\" alt=\"Demo Gif\"  height=\"100\" width=\"500\"/>\n\n\\\n[![publish-package](https://img.shields.io/badge/publish-package-brightgreen.svg)](LINK_TO_PUBLISH_ACTION)\n[![License](https://img.shields.io/npm/l/@carchaze/react-native-voice-message-player.svg)](https://github.com/carchaze-org/react-native-voice-message-player/blob/master/LICENSE)\n[![code style: prettier](https://img.shields.io/badge/code%20style-prettier-ff69b4.svg)](https://github.com/prettier/prettier)\n[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](http://makeapullrequest.com)\n![GitHub Top Language](https://img.shields.io/github/languages/top/carchaze-org/react-native-voice-message-player)\n![Last Commit](https://img.shields.io/github/last-commit/carchaze-org/react-native-voice-message-player)\n\nThe `@carchaze/react-native-voice-message-player` is a flexible and feature-rich voice message player tailored for React Native applications. It's designed to provide developers with a seamless solution to integrate voice message playback into their apps with various customization options.\n\nFor a detailed list of changes, please refer to the [CHANGELOG.md](CHANGELOG.md).\n\n\n## Maintainer Required 🤝\n\n**This project is currently looking for a maintainer. If you are interested, please reach out!** 🚨\n\n## Features\n\n- **Theming and Styling**: Customize to fit your app's look and feel.\n- **Profile Support**: Attach user profiles with custom images.\n- **Custom Renderers**: Fine-tune UI components.\n- **Download Progress**: Display progress for downloading voice messages from URLs.\n- **Audio Playback Controls**: Play, pause, and load voice messages with user feedback.\n\n## Demo\n\n<img src=\"https://firebasestorage.googleapis.com/v0/b/hamzzahussain.appspot.com/o/Utilities%2Freact-native-voice-message-player__ios.gif?alt=media&token=d11bb38a-dd4f-4fc2-9781-f04194d6a369\" alt=\"Demo Gif\"  height=\"400\" />\n\n<a href=\"https://www.buymeacoffee.com/hamxahusain\" target=\"_blank\"><img src=\"https://cdn.buymeacoffee.com/buttons/v2/default-red.png\" alt=\"Buy Me A Coffee\" style=\"height: 60px !important;width: 217px !important;\"></a>\n\n\n## Installation\n\n```bash\nnpm install @carchaze/react-native-voice-message-player\n# or\nyarn add @carchaze/react-native-voice-message-player\n\n# On Ios\ncd ios && pod install && cd..\n```\n\n## Usage\n\n1. Import the `RNVoiceMessagePlayer` component into your React Native file:\n\n```jsx\nimport RNVoiceMessagePlayer from '@carchaze/react-native-voice-message-player';\n```\n\n2. Use the `RNVoiceMessagePlayer` component in your render method:\n\n```jsx\nconst localFile = require('./path/to/audio.*')\nconst localUrl = \"file:///path/to/audio.*\"\nconst onlineUrl = \"https://example.com/audio.*\"\n\n// Load local file\n<RNVoiceMessagePlayer source={localFile} />\n\n// Load local url\n<RNVoiceMessagePlayer source={localUrl} />\n<RNVoiceMessagePlayer source={{uri: localUrl}} />\n\n// Load online url\n<RNVoiceMessagePlayer source={onlineUrl} autoDownload={true} />\n```\n\n## Props\n\nBelow is a detailed list of props you can use with the `RNVoiceMessagePlayer`:\n\n### Main Props\n\n| Prop                     | Description                                                       | Type                         | Required | Default Value            |\n| ------------------------ | ----------------------------------------------------------------- | ---------------------------- | -------- | ------------------------ |\n| `source`                 | Source of the audio, either an object with URI or a require path. | `{uri: string} \\| require()` | `true`   | -                        |\n| `timestamp`              | The timestamp of the voice message.                               | `string`                     | -        | -                        |\n| `autoDownload`           | Whether to automatically download audio if given a URL.           | `boolean`                    | -        | `false`                  |\n| `customTheme`            | Custom theme to override the default theme.                       | `Theme`                      | -        | -                        |\n| `containerStyle`         | Style for the main container.                                     | `ViewStyle`                  | -        | -                        |\n| `renderDownloadProgress` | Custom render function for the download progress.                 | `Function`                   | -        | -                        |\n| `renderText`             | Custom render function for the text.                              | `Function`                   | -        | -                        |\n| `textNotDownloaded`      | Text to show when the audio is not downloaded.                    | `string`                     | -        | 'Download voice message' |\n| `textLoading`            | Text to show while loading the audio.                             | `string`                     | -        | 'Loading...'             |\n| `textError`              | Text to show when there's an error.                               | `string`                     | -        | 'Audio is not playable'  |\n| `ref`                    | Reference to the component.                                       | `React.Ref`                  | -        | -                        |\n\n### Chat Status Props\n\n| Prop                       | Description                          | Type                  | Required | Default Value    |\n| -------------------------- | ------------------------------------ | --------------------- | -------- | ---------------- |\n| `chatStatusProps.isNew`    | Whether the message is new.          | `boolean`             | -        | `false`          |\n| `chatStatusProps.isPlayed` | Whether the message has been played. | `boolean`             | -        | `false`          |\n| `chatStatusProps.status`   | Status of the chat message.          | `DefaultStatusString` | -        | `'single-check'` |\n\n### Profile Props\n\n| Prop                                     | Description                                     | Type                  | Required | Default Value |\n| ---------------------------------------- | ----------------------------------------------- | --------------------- | -------- | ------------- |\n| `profileProps.profilePosition`           | Position of the profile.                        | `('left' \\| 'right')` | -        | 'right'       |\n| `profileProps.profileImageSource`        | Source for the profile image.                   | `ImageSourcePropType` | -        | -             |\n| `profileProps.profileMicSource`          | Source for the microphone icon.                 | `ImageSourcePropType` | -        | -             |\n| `profileProps.ProfileImagePressDisabled` | Whether the profile image press is disabled.    | `boolean`             | -        | -             |\n| `profileProps.onProfileImagePress`       | Callback when profile image is pressed.         | `Function`            | -        | -             |\n| `profileProps.renderProfileMic`          | Custom render function for the microphone icon. | `Function`            | -        | -             |\n| `profileProps.renderProfileImage`        | Custom render function for the profile image.   | `Function`            | -        | -             |\n| `profileProps.renderProfile`             | Custom render function for the whole profile.   | `Function`            | -        | -             |\n| `profileProps.profileContainerStyle`     | Style for the profile container.                | `ViewStyle`           | -        | -             |\n\n### Bottom Props\n\n| Prop                                | Description                                      | Type                   | Required | Default Value |\n| ----------------------------------- | ------------------------------------------------ | ---------------------- | -------- | ------------- |\n| `bottomProps.renderBottomTimestamp` | Custom render function for the bottom timestamp. | `Function`             | -        | -             |\n| `bottomProps.renderBottomTimer`     | Custom render function for the bottom timer.     | `Function`             | -        | -             |\n| `bottomProps.bottomStatusSources`   | Sources for the bottom status.                   | `DefaultStatusSources` | -        | -             |\n| `bottomProps.bottomContainerStyle`  | Style for the bottom container.                  | `ViewStyle`            | -        | -             |\n| `bottomProps.renderBottom`          | Custom render function for the bottom section.   | `Function`             | -        | -             |\n\n### Left Action Props\n\n| Prop                                       | Description                                  | Type                   | Required | Default Value |\n| ------------------------------------------ | -------------------------------------------- | ---------------------- | -------- | ------------- |\n| `leftActionProps.leftActionSources`        | Sources for the left action buttons.         | `DefaultActionSources` | -        | -             |\n| `leftActionProps.leftActionContainerStyle` | Style for the left action container.         | `ViewStyle`            | -        | -             |\n| `leftActionProps.renderLeftAction`         | Custom render function for the left actions. | `Function`             | -        | -             |\n\n### Track Props\n\n| Prop                               | Description                                 | Type       | Required | Default Value |\n| ---------------------------------- | ------------------------------------------- | ---------- | -------- | ------------- |\n| `trackProps.renderTrack`           | Custom render function for the audio track. | `Function` | -        | -             |\n| `trackProps.onTrackChange`         | Callback when the track changes.            | `Function` | -        | -             |\n| `trackProps.onTrackChangeComplete` | Callback when track change is complete.     | `Function` | -        | -             |\n| `trackProps.onTrackChangeStart`    | Callback when track change starts.          | `Function` | -        | -             |\n\n### Audio Event Callbacks\n\n| Prop                | Description                                     | Type       | Required | Default Value |\n| ------------------- | ----------------------------------------------- | ---------- | -------- | ------------- |\n| `onPlay`            | Callback when the audio starts playing.         | `Function` | -        | -             |\n| `onPause`           | Callback when the audio is paused.              | `Function` | -        | -             |\n| `onError`           | Callback when there's an error.                 | `Function` | -        | -             |\n| `onLoading`         | Callback while the audio is loading.            | `Function` | -        | -             |\n| `onDownload`        | Callback when the audio starts downloading.     | `Function` | -        | -             |\n| `onDownloadSuccess` | Callback when the audio download is successful. | `Function` | -        | -             |\n| `onDownloadSaved`   | Callback when the downloaded audio is saved.    | `Function` | -        | -             |\n| `onDownloadFailed`  | Callback when the audio download fails.         | `Function` | -        | -             |\n| `onLoadStart`       | Callback when the audio starts loading.         | `Function` | -        | -             |\n| `onLoadSuccess`     | Callback when the audio loading is successful.  | `Function` | -        | -             |\n| `onLoadFailed`      | Callback when the audio loading fails.          | `Function` | -        | -             |\n\n## License\n\nThis project is licensed under the [MIT License](LICENSE).\n\n## Contributors\n\nA big thank you to all the contributors who have helped make this project better!\n\n<table>\n  <tr>\n    <td align=\"center\">\n      <a href=\"https://github.com/carchaze-org\">\n        <img src=\"https://play-lh.googleusercontent.com/WG6kUItvOXujRVanWx1X8cJz2AIAZ8c0ET2m8Q9S88D-VQe51ZR5IXuNIE-OdOUk7g=w600-h300-pc0xffffff-pd\" width=\"100px;\"  alt=\"\"/>\n        <br />\n        <sub><b>CarChaze Pvt Ltd</b></sub>\n      </a>\n    </td>\n    <td align=\"center\">\n      <a href=\"https://github.com/hamzaxeros\">\n        <img src=\"https://carchaze.com/_next/static/media/hamza-cto.c1a4801c.png\" width=\"50px;\" alt=\"\"/>\n        <br />\n        <sub><b>Hamza Hussain</b></sub>\n      </a>\n    </td>\n  </tr>\n</table>\n\n## Credits\n\nWe'd like to thank the following libraries and resources that have contributed to the development of React Native Voice Message Player:\n\n- [React Native](https://reactnative.dev)\n- [CarChaze Pvt Ltd](https://github.com/carchaze-org)\n- [react-native-sound](https://github.com/zmxv/react-native-sound)\n- [prop-types](https://www.npmjs.com/package/prop-types)\n- [react](https://reactjs.org)\n- [Hamza Hussain](https://github.com/hamzaxeros)\n\n## Contact\n\nIf you have any questions or need assistance, feel free to reach out to us:\n\n- Email: hamza@carchaze.com\n- GitHub Issues: [Report Issue](https://github.com/carchaze-org/react-native-voice-message-player/issues)\n\n## FAQs\n\n### General\n\n#### 1. What is the primary purpose of React Native Voice Message Player?\n\n**Answer:** The `@carchaze/react-native-voice-message-player` is designed to provide developers a seamless solution to integrate voice message playback in their React Native apps with various customization options.\n\n#### 2. Is this package free to use?\n\n**Answer:** Yes, the package is open-source and free to use. We appreciate contributions from the community to improve it further!\n\n### Technical\n\n#### 3. Which versions of React Native are supported?\n\n**Answer:** The package supports React Native versions 0.60 and above. For older versions, you might encounter compatibility issues.\n\n#### 4. How do I customize the theme of the player?\n\n**Answer:** You can use the `customTheme` prop to override the default styles and match your app's theme. Refer to the Props section for more details.\n\n#### 5. Are there any known issues with the package?\n\n**Answer:** All known issues are tracked on our GitHub issues page. If you encounter a problem, please check there first, and if it's a new issue, feel free to report it.\n\n### Contributing\n\n#### 6. I found a bug! How can I report it?\n\n**Answer:** We appreciate your feedback! Please report any bugs or issues on our GitHub repository's issues page.\n\n#### 7. I have a feature request. Where can I submit it?\n\n**Answer:** Feature requests can be submitted on our GitHub repository. We welcome contributions and suggestions from the community.\n\n#### 8. How can I contribute to the project?\n\n**Answer:** Please refer to our Contributing Guidelines for detailed steps on how to contribute. We appreciate all forms of contributions, from code to documentation and testing.\n\n### Miscellaneous\n\n#### 9. Are there plans for future features or improvements?\n\n**Answer:** We continuously aim to improve the package and add new features. Keep an eye on our GitHub repository for the latest updates and planned features.\n\n#### 10. How can I support the project?\n\n**Answer:** Using the package, reporting bugs, suggesting features, and contributing to the codebase are all great ways to support the project. Additionally, giving the repository a star on GitHub helps boost its visibility in the community!\n\n## Contributing Guidelines\n\nAt CarChaze, we value the power of the community and believe in the open-source spirit. We are thrilled you're considering contributing to the `React Native Voice Message Player` package. Before you start, please ensure you've read and understood these guidelines.\n\n### Reporting Bugs or Suggesting Enhancements\n\nIf you come across any issues or have ideas for improvements:\n\n1. Check the [issues](https://github.com/carchaze-org/react-native-voice-message-player/issues) page to ensure your problem or suggestion hasn't been reported or addressed already.\n2. If your issue isn't listed, you can [create a new one](https://github.com/carchaze-org/react-native-voice-message-player/issues/new).\n\n### Code Contributions\n\n1. **Fork and Clone**: Fork the `react-native-voice-message-player` repository, then clone your fork onto your machine.\n2. **Create a New Branch**: It's a best practice to create a new branch for each feature or fix you are working on.\n3. **Make Necessary Changes**: Write your code, ensuring you follow CarChaze's coding standards. Make sure the package functions as intended and doesn't introduce new issues.\n4. **Test**: Ensure your changes are well-tested. Add or update tests as necessary.\n5. **Pull Request**: Submit a pull request to the `main` branch. Provide a comprehensive description of the changes and link the related issues.\n\n### Documentation\n\nIf you're making changes to features that are already documented, make sure you update the corresponding parts of the documentation. If you introduce a new feature, please add related documentation.\n\n### Stay Updated\n\nEnsure you pull changes from the main repository to your fork regularly to stay updated. This helps reduce merge conflicts when submitting a PR.\n\n### Community and Behavior\n\nPlease remember to adhere to CarChaze's [Code of Conduct](CODE_OF_CONDUCT.md). We foster an inclusive and respectful community, and we expect contributors to do the same.\n\n### Recognition\n\nEvery contributor gets recognized! All accepted contributions will see the contributor's name added to the `Credits` section of our README.\n\n### Questions?\n\nIf you have any questions about contributing or face issues while setting up, don't hesitate to reach out. Create an issue, and a team member will assist you.\n\nThank you for being a part of CarChaze's open-source initiatives! Your efforts help make the React Native ecosystem even better.\n\n\n\n\n","readmeFilename":"Readme.md"}