diff --git a/scripts/flow/config/flowconfig b/scripts/flow/config/flowconfig index 99cd2da34e0a..22f1033e5924 100644 --- a/scripts/flow/config/flowconfig +++ b/scripts/flow/config/flowconfig @@ -13,6 +13,8 @@ .*/__mocks__/.* .*/__tests__/.* +%REACT_RENDERER_FLOW_IGNORES% + [include] ../../../node_modules/ ../../../packages/ diff --git a/scripts/flow/createFlowConfigs.js b/scripts/flow/createFlowConfigs.js index f1ca3523c77d..2fab449a04e9 100644 --- a/scripts/flow/createFlowConfigs.js +++ b/scripts/flow/createFlowConfigs.js @@ -23,16 +23,29 @@ function writeConfig(renderer, isFizzSupported) { mkdirp.sync(folder); const fizzRenderer = isFizzSupported ? renderer : 'custom'; - const config = configTemplate.replace( - '%REACT_RENDERER_FLOW_OPTIONS%', - ` + const config = configTemplate + .replace( + '%REACT_RENDERER_FLOW_OPTIONS%', + ` module.name_mapper='react-reconciler/inline.${renderer}$$' -> 'react-reconciler/inline-typed' module.name_mapper='ReactFiberHostConfig$$' -> 'forks/ReactFiberHostConfig.${renderer}' module.name_mapper='react-stream/inline.${renderer}$$' -> 'react-stream/inline-typed' module.name_mapper='ReactFizzHostConfig$$' -> 'forks/ReactFizzHostConfig.${fizzRenderer}' module.name_mapper='ReactFizzFormatConfig$$' -> 'forks/ReactFizzFormatConfig.${fizzRenderer}' `.trim(), - ); + ) + .replace( + '%REACT_RENDERER_FLOW_IGNORES%', + renderer === 'dom' || renderer === 'dom-browser' + ? '' + : // If we're not checking DOM, ignore the DOM package since it + // won't be consistent. + ` + .*/packages/react-dom/.* + .*/packages/.*/forks/.*.dom.js + .*/packages/.*/forks/.*.dom-browser.js + `.trim(), + ); const disclaimer = ` # ---------------------------------------------------------------#