Summary: This diff makes flipper-server stand-alone servable as a single package. It basically works as follows: - (default) plugins are build as usually into static folder - static folder is copied into flipper-server/static (as far as relevant) - `flipper-server/src/index.tsx` is bundled into `flipper-server/dist/index.js` - `flipper-ui-browser/src/index.tsx` is bundled into `flipper-server/static/bundle.js` If flipper-server is started without the `--bundler` config, the `bundle.js` will be served statically, rather than starting up the Metro bundler with all the typical transforms (in a distributed version of the package those all wouldn't resolve) Things to be done in next diffs: * make sure plugins actually load in the non bundled setup * make sure flipper-server gets published properly * make sure build is created as part of CI At the end of this stack, running `npx flipper-server` on any machine should basically be a viable approach to get flipper up and running locally :) Reviewed By: nikoant Differential Revision: D33171107 fbshipit-source-id: 4af8ac2699467a0b55283fe084640482700744c2
28 lines
1.0 KiB
TypeScript
28 lines
1.0 KiB
TypeScript
/**
|
|
* 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
|
|
*/
|
|
|
|
import path from 'path';
|
|
|
|
export const rootDir = path.resolve(__dirname, '..');
|
|
export const appDir = path.join(rootDir, 'app');
|
|
export const browserUiDir = path.join(rootDir, 'flipper-ui-browser');
|
|
export const staticDir = path.join(rootDir, 'static');
|
|
export const serverDir = path.join(rootDir, 'flipper-server');
|
|
export const serverStaticDir = path.join(serverDir, 'static'); // for pre-bundled server, static resources are copied here
|
|
export const defaultPluginsDir = path.join(staticDir, 'defaultPlugins');
|
|
export const pluginsDir = path.join(rootDir, 'plugins');
|
|
export const fbPluginsDir = path.join(pluginsDir, 'fb');
|
|
export const publicPluginsDir = path.join(pluginsDir, 'public');
|
|
export const distDir = path.resolve(rootDir, '..', 'dist');
|
|
export const babelTransformationsDir = path.resolve(
|
|
rootDir,
|
|
'babel-transformer',
|
|
'src',
|
|
);
|