Ctrl K
ComunidadGuías…

fingerprint.config.js

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
/** @type {import('@expo/fingerprint').Config} */
const config = {
  /*
   * Expo 58 changed the default to 'balanced', which hashes autolinked native
   * modules and config plugins by their package.json version and ignores
   * eas.json and app version changes. Stick with the historical 'strict'
   * behaviour so any change to native sources changes the fingerprint.
   */
  preset: 'strict',
  /*
   * The worklets Babel plugin writes generated JS into this directory whenever
   * Metro bundles, which would otherwise change the fingerprint of any checkout
   * that has run Metro and make EAS build cache lookups miss. Only `*.js` is
   * ignored so the shipped `dummy.md` keeps clean-install hashes unchanged.
   */
  ignorePaths: [
    '**/node_modules/react-native-worklets/.worklets/*.js',
    /*
     * app.config.js loads the share platform catalog, which would make every
     * catalog edit look native. The only native parts, its iOS schemes and
     * Android packages, are already hashed as part of the resolved Expo config,
     * so ignoring the file still catches the changes that need a native build.
     */
    'src/components/ShareDialog/catalog.ts',
  ],
  /*
   * The nano icon fonts are linked into the native binary, but the fingerprint
   * only sees the plugin config, not the icons. Without this, adding or
   * changing an icon would ship as an OTA update to binaries whose font lacks
   * the new glyphs, and those icons would render blank.
   */
  extraSources: ['ui', 'brands', 'community'].map(lane => ({
    type: 'file',
    filePath: `assets/nano-icons/nanoicons/icons-${lane}.ttf`,
    reasons: ['react-native-nano-icons font'],
  })),
}

module.exports = config