hunk.code_window:       apps,
         snacks,
       });
     const theme = useExpoTheme();
     if (!isDevice || !shouldShowReviewSection) {
       return null;
     }
     return (
  
hunk.labels: keep keep keep keep keep replace keep keep keep keep
hunk.after_edit:   if ((!isDevice && !__DEV__) || !shouldShowReviewSection) {
  
hunk.file_path: home/components/UserReviewSection.tsx
hunk.type: replace
file: ---
  title: Crypto
  description: A universal library for crypto operations.
  sourceCodeUrl: 'https://github.com/expo/expo/tree/sdk-50/packages/expo-crypto'
  packageName: 'expo-crypto'
  iconUrl: '/static/images/packages/expo-crypto.png'
  ---
  
  import APISection from '~/components/plugins/APISection';
  import { APIInstallSection } from '~/components/plugins/InstallSection';
  import PlatformsSection from '~/components/plugins/PlatformsSection';
  import { SnackInline } from '~/ui/components/Snippet';
  
  `expo-crypto` enables you to hash data in an equivalent manner to the Node.js core `crypto` API.
  
  <PlatformsSection android emulator ios simulator web />
  
  ## Installation
  
  <APIInstallSection />
  
  ## Usage
  
  <SnackInline label='Basic Crypto usage' dependencies={['expo-crypto']}>
  
  ```jsx
  import React, { useEffect } from 'react';
  import { StyleSheet, View, Text } from 'react-native';
  import * as Crypto from 'expo-crypto';
  
  export default function App() {
    useEffect(() => {
      (async () => {
        const digest = await Crypto.digestStringAsync(
          Crypto.CryptoDigestAlgorithm.SHA256,
          'GitHub stars are neat 🌟'
        );
        console.log('Digest: ', digest);
        /* Some crypto operation... */
      })();
    }, []);
  
    return (
      <View style={styles.container}>
        <Text>Crypto Module Example</Text>
      </View>
    );
  }
  
  /* @hide const styles = StyleSheet.create({ ... }); */
  const styles = StyleSheet.create({
    container: {
      flex: 1,
      backgroundColor: '#fff',
      alignItems: 'center',
      justifyContent: 'center',
    },
  });
  /* @end */
  ```
  
  </SnackInline>
  
  ## API
  
  ```js
  import * as Crypto from 'expo-crypto';
  ```
  
  <APISection packageName="expo-crypto" apiName="Crypto" />
  
  ## Error codes
  
  | Code                     | Description                                                                                                                                                              |
  | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
  | `ERR_CRYPTO_UNAVAILABLE` | **Web Only.** Access to the WebCrypto API is restricted to secure origins (https). <br/>You can run your web project from a secure origin with `npx expo start --https`. |
  | `ERR_CRYPTO_DIGEST`      | An invalid encoding type provided.                                                                                                                                       |
  