DevTools tells Babel to parse the source code using "jsx" and "typescript" plug-ins:
https://github.com/facebook/react/blob/ed6c091fe961a3b95e956ebcefe8f152177b1fb7/packages/react-devtools-extensions/src/parseHookNames.js#L446-L462

This will work for some simple usages of Flow, but syntax may diverge and cause the parsing to fail.

Let's scan the source code for a `@flow` pragma and pass "flow" instead of "typescript" if one is found.

---

We should also add tests for both Flow and TypeScript to the test component pool:
https://github.com/facebook/react/tree/main/packages/react-devtools-extensions/src/__tests__/__source__
const fetchPromise =
            fetchPromises.get(url) ||
            fetchFile(url).then(
              sourceMapContents =>
                new SourceMapConsumer(JSON.parse(sourceMapContents)),
            );
          if (__DEBUG__) {
            if (!fetchPromises.has(url)) {
              console.log(
                `extractAndLoadSourceMaps() External source map "${url}"`,
              );
            }
          }
          fetchPromises.set(url, fetchPromise);
          setPromises.push(
            fetchPromise.then(sourceConsumer => {
              hookSourceData.sourceConsumer = sourceConsumer;
            }),
          );
          break;
        }
      }
    }
  });
  return Promise.all(setPromises);
}
function fetchFile(url: string): Promise<string> {
  return new Promise((resolve, reject) => {
    fetch(url).then(response => {
      if (response.ok) {