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.     // Node.js Server Rendering
    
  43.     setImmediate: 'readonly',
    
  44.     Buffer: 'readonly',
    
  45.     // Trusted Types
    
  46.     trustedTypes: 'readonly',
    
  47. 
    
  48.     // Scheduler profiling
    
  49.     TaskController: 'readonly',
    
  50.     reportError: 'readonly',
    
  51.     AggregateError: 'readonly',
    
  52. 
    
  53.     // Flight
    
  54.     Promise: 'readonly',
    
  55. 
    
  56.     // Temp
    
  57.     AsyncLocalStorage: 'readonly',
    
  58. 
    
  59.     // jest
    
  60.     jest: 'readonly',
    
  61. 
    
  62.     // act
    
  63.     IS_REACT_ACT_ENVIRONMENT: 'readonly',
    
  64.   },
    
  65.   parserOptions: {
    
  66.     ecmaVersion: 5,
    
  67.     sourceType: 'script',
    
  68.   },
    
  69.   rules: {
    
  70.     'no-undef': 'error',
    
  71.     'no-shadow-restricted-names': 'error',
    
  72.   },
    
  73. 
    
  74.   // These plugins aren't used, but eslint complains if an eslint-ignore comment
    
  75.   // references unused plugins. An alternate approach could be to strip
    
  76.   // eslint-ignore comments as part of the build.
    
  77.   plugins: ['ft-flow', 'jest', 'no-for-of-loops', 'react', 'react-internal'],
    
  78. };