1. 'use strict';
    
  2. 
    
  3. module.exports = {
    
  4.   env: {
    
  5.     commonjs: true,
    
  6.     browser: true,
    
  7.   },
    
  8.   globals: {
    
  9.     // ES6
    
  10.     BigInt: 'readonly',
    
  11.     Map: 'readonly',
    
  12.     Set: 'readonly',
    
  13.     Symbol: 'readonly',
    
  14.     Proxy: 'readonly',
    
  15.     WeakMap: 'readonly',
    
  16.     WeakSet: 'readonly',
    
  17. 
    
  18.     Int8Array: 'readonly',
    
  19.     Uint8Array: 'readonly',
    
  20.     Uint8ClampedArray: 'readonly',
    
  21.     Int16Array: 'readonly',
    
  22.     Uint16Array: 'readonly',
    
  23.     Int32Array: 'readonly',
    
  24.     Uint32Array: 'readonly',
    
  25.     Float32Array: 'readonly',
    
  26.     Float64Array: 'readonly',
    
  27.     BigInt64Array: 'readonly',
    
  28.     BigUint64Array: 'readonly',
    
  29.     DataView: 'readonly',
    
  30.     ArrayBuffer: 'readonly',
    
  31. 
    
  32.     Reflect: 'readonly',
    
  33.     globalThis: 'readonly',
    
  34. 
    
  35.     FinalizationRegistry: 'readonly',
    
  36. 
    
  37.     // Vendor specific
    
  38.     MSApp: 'readonly',
    
  39.     __REACT_DEVTOOLS_GLOBAL_HOOK__: 'readonly',
    
  40.     // FB
    
  41.     __DEV__: 'readonly',
    
  42.     // Fabric. See https://github.com/facebook/react/pull/15490
    
  43.     // for more information
    
  44.     nativeFabricUIManager: 'readonly',
    
  45.     // Trusted Types
    
  46.     trustedTypes: 'readonly',
    
  47.     // RN supports this
    
  48.     setImmediate: 'readonly',
    
  49.     // Scheduler profiling
    
  50.     TaskController: 'readonly',
    
  51.     reportError: 'readonly',
    
  52.     AggregateError: 'readonly',
    
  53. 
    
  54.     // Temp
    
  55.     AsyncLocalStorage: 'readonly',
    
  56. 
    
  57.     // jest
    
  58.     jest: 'readonly',
    
  59. 
    
  60.     // act
    
  61.     IS_REACT_ACT_ENVIRONMENT: 'readonly',
    
  62.   },
    
  63.   parserOptions: {
    
  64.     ecmaVersion: 5,
    
  65.     sourceType: 'script',
    
  66.   },
    
  67.   rules: {
    
  68.     'no-undef': 'error',
    
  69.     'no-shadow-restricted-names': 'error',
    
  70.   },
    
  71. 
    
  72.   // These plugins aren't used, but eslint complains if an eslint-ignore comment
    
  73.   // references unused plugins. An alternate approach could be to strip
    
  74.   // eslint-ignore comments as part of the build.
    
  75.   plugins: ['ft-flow', 'jest', 'no-for-of-loops', 'react', 'react-internal'],
    
  76. };