Summary: Pull Request resolved: https://github.com/facebook/flipper/pull/872 Move all the JS code related to desktop app to "desktop" subfolder. The structure of "desktop" folder: - `src` - JS code of Flipper desktop app executing in Electron Renderer (Chrome) process. This folder also contains all the Flipper plugins in subfolder "src/plugins". - `static` - JS code of Flipper desktop app bootstrapping executing in Electron Main (Node.js) process - `pkg` - Flipper packaging lib and CLI tool - `doctor` - Flipper diagnostics lib and CLI tool - `scripts` - Build scripts for Flipper desktop app - `headless` - Headless version of Flipper app - `headless-tests` - Integration tests running agains Flipper headless version Reviewed By: passy Differential Revision: D20249304 fbshipit-source-id: 9a51c63b51b92b758a02fc8ebf7d3d116770efe9
32 lines
972 B
JavaScript
32 lines
972 B
JavaScript
/**
|
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
*
|
|
* This source code is licensed under the MIT license found in the
|
|
* LICENSE file in the root directory of this source tree.
|
|
*
|
|
* @format
|
|
*/
|
|
|
|
const path = require('path');
|
|
const util = require('util');
|
|
const {exists: existsImport, copyFile} = require('fs');
|
|
const exists = util.promisify(existsImport);
|
|
|
|
const desktopRootDir = path.resolve(__dirname, '..');
|
|
const rootDir = path.resolve(desktopRootDir, '..');
|
|
const hasGit = exists(path.join(rootDir, '.git'));
|
|
|
|
async function prepareWatchmanConfig(dir) {
|
|
const hasWatchmanConfig = exists(path.join(dir, '.watchmanconfig'));
|
|
if ((await hasGit) && !(await hasWatchmanConfig)) {
|
|
console.log(`Creating .watchmanconfig in ${dir}`);
|
|
await util.promisify(copyFile)(
|
|
path.join(dir, '_watchmanconfig'),
|
|
path.join(dir, '.watchmanconfig'),
|
|
);
|
|
}
|
|
}
|
|
|
|
prepareWatchmanConfig(rootDir);
|
|
prepareWatchmanConfig(path.join(desktopRootDir, 'static'));
|