@teambit/api-server 1.0.374 → 1.0.376
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/artifacts/__bit_junit.xml +1 -1
- package/artifacts/schema.json +151 -105
- package/dist/api-server.main.runtime.d.ts +1 -0
- package/dist/api-server.main.runtime.js +15 -2
- package/dist/api-server.main.runtime.js.map +1 -1
- package/dist/cli-raw.route.js +53 -7
- package/dist/cli-raw.route.js.map +1 -1
- package/package.json +21 -20
- /package/dist/{preview-1723087263885.js → preview-1723173535489.js} +0 -0
|
@@ -27,6 +27,7 @@ export declare class ApiServerMain {
|
|
|
27
27
|
compile: boolean;
|
|
28
28
|
}): Promise<unknown>;
|
|
29
29
|
writeUsedPort(port: number): void;
|
|
30
|
+
getRandomPort(): Promise<number>;
|
|
30
31
|
getExistingUsedPort(): Promise<number | undefined>;
|
|
31
32
|
private getServerPortFilePath;
|
|
32
33
|
static dependencies: import("@teambit/harmony").Aspect[];
|
|
@@ -11,6 +11,13 @@ function _cli() {
|
|
|
11
11
|
};
|
|
12
12
|
return data;
|
|
13
13
|
}
|
|
14
|
+
function _toolboxNetwork() {
|
|
15
|
+
const data = require("@teambit/toolbox.network.get-port");
|
|
16
|
+
_toolboxNetwork = function () {
|
|
17
|
+
return data;
|
|
18
|
+
};
|
|
19
|
+
return data;
|
|
20
|
+
}
|
|
14
21
|
function _fsExtra() {
|
|
15
22
|
const data = _interopRequireDefault(require("fs-extra"));
|
|
16
23
|
_fsExtra = function () {
|
|
@@ -247,7 +254,7 @@ class ApiServerMain {
|
|
|
247
254
|
// don't throw an error, we don't want to break the "run" process
|
|
248
255
|
this.logger.error('watcher found an error', err);
|
|
249
256
|
});
|
|
250
|
-
const port = options.port ||
|
|
257
|
+
const port = options.port || (await this.getRandomPort());
|
|
251
258
|
const app = this.express.createApp();
|
|
252
259
|
app.use(
|
|
253
260
|
// @ts-ignore todo: it's not clear what's the issue.
|
|
@@ -282,7 +289,6 @@ class ApiServerMain {
|
|
|
282
289
|
server.on('listening', () => {
|
|
283
290
|
this.logger.consoleSuccess(`Bit Server is listening on port ${port}`);
|
|
284
291
|
this.writeUsedPort(port);
|
|
285
|
-
process.env.BIT_SERVER_RUNNING = 'true';
|
|
286
292
|
resolve(port);
|
|
287
293
|
});
|
|
288
294
|
});
|
|
@@ -291,6 +297,13 @@ class ApiServerMain {
|
|
|
291
297
|
const filePath = this.getServerPortFilePath();
|
|
292
298
|
_fsExtra().default.writeFileSync(filePath, port.toString());
|
|
293
299
|
}
|
|
300
|
+
async getRandomPort() {
|
|
301
|
+
const startingPort = 3593; // some arbitrary number shy away from the standard 3000
|
|
302
|
+
// get random number in the range of [startingPort, 55500].
|
|
303
|
+
const randomNumber = Math.floor(Math.random() * (55500 - startingPort + 1) + startingPort);
|
|
304
|
+
const port = await _toolboxNetwork().Port.getPort(randomNumber, 65500);
|
|
305
|
+
return port;
|
|
306
|
+
}
|
|
294
307
|
async getExistingUsedPort() {
|
|
295
308
|
const filePath = this.getServerPortFilePath();
|
|
296
309
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_cli","data","require","_fsExtra","_interopRequireDefault","_express","_logger","_lanes","_remove","_snapping","_generator","_componentCompare","_componentLog","_watcher","_config","_export","_checkout","_install","_importer","_workspace","_harmonyModules","_cors","_httpProxyMiddleware","_apiServer","_cli2","_server","_ide","_apiForIde","_sseEvents","_path","_cliRaw","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ApiServerMain","constructor","workspace","logger","express","watcher","installer","importer","runApiServer","options","Error","process","cwd","registerOnComponentChange","component","files","removedFiles","sendEventsToClients","id","toStringWithoutVersion","registerOnBitmapChange","lastModifiedTimestamp","bitMap","getLastModifiedBitmapThroughBit","secondsPassedSinceLastModified","Date","now","debug","importCurrentObjects","registerOnWorkspaceConfigChange","registerPostInstall","watch","preCompile","compile","catch","err","error","port","app","createApp","use","cors","origin","callback","credentials","createProxyMiddleware","target","changeOrigin","on","req","res","writeHead","end","proxyReq","fixRequestBody","server","listen","Promise","resolve","reject","consoleSuccess","writeUsedPort","env","BIT_SERVER_RUNNING","filePath","getServerPortFilePath","fs","writeFileSync","toString","getExistingUsedPort","fileContent","readFile","parseInt","code","undefined","join","scope","path","provider","cli","loggerMain","snapping","lanes","exporter","checkout","componentLog","componentCompare","generator","remove","config","createLogger","ApiServerAspect","apiServer","register","ServerCmd","apiForIDE","APIForIDE","cliRoute","CLIRoute","cliRawRoute","CLIRawRoute","ideRoute","IDERoute","sseEventsRoute","SSEEventsRoute","exports","CLIAspect","WorkspaceAspect","LoggerAspect","ExpressAspect","WatcherAspect","SnappingAspect","LanesAspect","InstallAspect","ExportAspect","CheckoutAspect","ComponentLogAspect","ImporterAspect","ComponentCompareAspect","GeneratorAspect","RemoveAspect","ConfigAspect","MainRuntime","addRuntime","_default"],"sources":["api-server.main.runtime.ts"],"sourcesContent":["import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport fs from 'fs-extra';\nimport { ExpressAspect, ExpressMain } from '@teambit/express';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { LanesAspect, LanesMain } from '@teambit/lanes';\nimport { RemoveAspect, RemoveMain } from '@teambit/remove';\nimport { SnappingAspect, SnappingMain } from '@teambit/snapping';\nimport { GeneratorAspect, GeneratorMain } from '@teambit/generator';\nimport { ComponentCompareAspect, ComponentCompareMain } from '@teambit/component-compare';\nimport { ComponentLogAspect, ComponentLogMain } from '@teambit/component-log';\nimport { WatcherAspect, WatcherMain } from '@teambit/watcher';\nimport { ConfigAspect, ConfigMain } from '@teambit/config';\nimport { ExportAspect, ExportMain } from '@teambit/export';\nimport { CheckoutAspect, CheckoutMain } from '@teambit/checkout';\nimport { InstallAspect, InstallMain } from '@teambit/install';\nimport { ImporterAspect, ImporterMain } from '@teambit/importer';\nimport { Component } from '@teambit/component';\nimport { WorkspaceAspect, Workspace } from '@teambit/workspace';\nimport { sendEventsToClients } from '@teambit/harmony.modules.send-server-sent-events';\nimport cors from 'cors';\nimport { createProxyMiddleware, fixRequestBody } from 'http-proxy-middleware';\nimport { ApiServerAspect } from './api-server.aspect';\nimport { CLIRoute } from './cli.route';\nimport { ServerCmd } from './server.cmd';\nimport { IDERoute } from './ide.route';\nimport { APIForIDE } from './api-for-ide';\nimport { SSEEventsRoute } from './sse-events.route';\nimport { join } from 'path';\nimport { CLIRawRoute } from './cli-raw.route';\n\nexport class ApiServerMain {\n constructor(\n private workspace: Workspace,\n private logger: Logger,\n private express: ExpressMain,\n private watcher: WatcherMain,\n private installer: InstallMain,\n private importer: ImporterMain\n ) {}\n\n async runApiServer(options: { port: number; compile: boolean }) {\n if (!this.workspace) {\n throw new Error(`unable to run bit-server, the current directory ${process.cwd()} is not a workspace`);\n }\n\n this.workspace.registerOnComponentChange(\n async (\n component: Component,\n files: string[], // os absolute paths\n removedFiles?: string[] // os absolute paths\n ) => {\n sendEventsToClients('onComponentChange', {\n id: component.id.toStringWithoutVersion(),\n files,\n removedFiles,\n });\n }\n );\n\n this.workspace.registerOnBitmapChange(async () => {\n const lastModifiedTimestamp = await this.workspace.bitMap.getLastModifiedBitmapThroughBit();\n const secondsPassedSinceLastModified = lastModifiedTimestamp && (Date.now() - lastModifiedTimestamp) / 1000;\n if (secondsPassedSinceLastModified && secondsPassedSinceLastModified > 1) {\n // changes by bit were done more than a second ago, so probably this .bitmap change was done by \"git pull\"\n this.logger.debug(\n `running import because we assume the .bitmap file has changed due to \"git pull\", last time it was modified by bit was ${secondsPassedSinceLastModified} seconds ago`\n );\n await this.importer.importCurrentObjects();\n }\n sendEventsToClients('onBitmapChange', {});\n });\n\n this.workspace.registerOnWorkspaceConfigChange(async () => {\n sendEventsToClients('onWorkspaceConfigChange', {});\n });\n\n this.installer.registerPostInstall(async () => {\n sendEventsToClients('onPostInstall', {});\n });\n\n this.watcher\n .watch({\n preCompile: false,\n compile: options.compile,\n })\n .catch((err) => {\n // don't throw an error, we don't want to break the \"run\" process\n this.logger.error('watcher found an error', err);\n });\n\n const port = options.port || 3000;\n\n const app = this.express.createApp();\n\n app.use(\n // @ts-ignore todo: it's not clear what's the issue.\n cors({\n origin(origin, callback) {\n callback(null, true);\n },\n credentials: true,\n })\n );\n app.use(\n '/api/cloud-graphql',\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n createProxyMiddleware({\n target: 'https://api.main.lanes.bit.cloud/graphql',\n changeOrigin: true,\n on: {\n error: (err, req, res) => {\n this.logger.error('graphql cloud proxy error', err);\n // @ts-ignore\n res.writeHead(500, {\n 'Content-Type': 'text/plain',\n });\n res.end('Something went wrong with the proxy server of bit cloud graphql');\n },\n proxyReq: fixRequestBody,\n },\n })\n );\n\n const server = await app.listen(port);\n\n return new Promise((resolve, reject) => {\n server.on('error', (err) => {\n reject(err);\n });\n server.on('listening', () => {\n this.logger.consoleSuccess(`Bit Server is listening on port ${port}`);\n this.writeUsedPort(port);\n process.env.BIT_SERVER_RUNNING = 'true';\n resolve(port);\n });\n });\n }\n\n writeUsedPort(port: number) {\n const filePath = this.getServerPortFilePath();\n fs.writeFileSync(filePath, port.toString());\n }\n\n async getExistingUsedPort(): Promise<number | undefined> {\n const filePath = this.getServerPortFilePath();\n try {\n const fileContent = await fs.readFile(filePath, 'utf8');\n return parseInt(fileContent, 10);\n } catch (err: any) {\n if (err.code === 'ENOENT') {\n return undefined;\n }\n throw err;\n }\n }\n\n private getServerPortFilePath() {\n return join(this.workspace.scope.path, 'server-port.txt');\n }\n\n static dependencies = [\n CLIAspect,\n WorkspaceAspect,\n LoggerAspect,\n ExpressAspect,\n WatcherAspect,\n SnappingAspect,\n LanesAspect,\n InstallAspect,\n ExportAspect,\n CheckoutAspect,\n ComponentLogAspect,\n ImporterAspect,\n ComponentCompareAspect,\n GeneratorAspect,\n RemoveAspect,\n ConfigAspect,\n ];\n static runtime = MainRuntime;\n static async provider([\n cli,\n workspace,\n loggerMain,\n express,\n watcher,\n snapping,\n lanes,\n installer,\n exporter,\n checkout,\n componentLog,\n importer,\n componentCompare,\n generator,\n remove,\n config,\n ]: [\n CLIMain,\n Workspace,\n LoggerMain,\n ExpressMain,\n WatcherMain,\n SnappingMain,\n LanesMain,\n InstallMain,\n ExportMain,\n CheckoutMain,\n ComponentLogMain,\n ImporterMain,\n ComponentCompareMain,\n GeneratorMain,\n RemoveMain,\n ConfigMain\n ]) {\n const logger = loggerMain.createLogger(ApiServerAspect.id);\n const apiServer = new ApiServerMain(workspace, logger, express, watcher, installer, importer);\n cli.register(new ServerCmd(apiServer));\n\n const apiForIDE = new APIForIDE(\n workspace,\n snapping,\n lanes,\n installer,\n exporter,\n checkout,\n componentLog,\n componentCompare,\n generator,\n remove,\n config\n );\n const cliRoute = new CLIRoute(logger, cli, apiForIDE);\n const cliRawRoute = new CLIRawRoute(logger, cli, apiForIDE);\n const ideRoute = new IDERoute(logger, apiForIDE);\n const sseEventsRoute = new SSEEventsRoute(logger, cli);\n // register only when the workspace is available. don't register this on a remote-scope, for security reasons.\n if (workspace) {\n express.register([cliRoute, cliRawRoute, ideRoute, sseEventsRoute]);\n }\n\n return apiServer;\n }\n}\n\nApiServerAspect.addRuntime(ApiServerMain);\n\nexport default ApiServerMain;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_cli","data","require","_toolboxNetwork","_fsExtra","_interopRequireDefault","_express","_logger","_lanes","_remove","_snapping","_generator","_componentCompare","_componentLog","_watcher","_config","_export","_checkout","_install","_importer","_workspace","_harmonyModules","_cors","_httpProxyMiddleware","_apiServer","_cli2","_server","_ide","_apiForIde","_sseEvents","_path","_cliRaw","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ApiServerMain","constructor","workspace","logger","express","watcher","installer","importer","runApiServer","options","Error","process","cwd","registerOnComponentChange","component","files","removedFiles","sendEventsToClients","id","toStringWithoutVersion","registerOnBitmapChange","lastModifiedTimestamp","bitMap","getLastModifiedBitmapThroughBit","secondsPassedSinceLastModified","Date","now","debug","importCurrentObjects","registerOnWorkspaceConfigChange","registerPostInstall","watch","preCompile","compile","catch","err","error","port","getRandomPort","app","createApp","use","cors","origin","callback","credentials","createProxyMiddleware","target","changeOrigin","on","req","res","writeHead","end","proxyReq","fixRequestBody","server","listen","Promise","resolve","reject","consoleSuccess","writeUsedPort","filePath","getServerPortFilePath","fs","writeFileSync","toString","startingPort","randomNumber","Math","floor","random","Port","getPort","getExistingUsedPort","fileContent","readFile","parseInt","code","undefined","join","scope","path","provider","cli","loggerMain","snapping","lanes","exporter","checkout","componentLog","componentCompare","generator","remove","config","createLogger","ApiServerAspect","apiServer","register","ServerCmd","apiForIDE","APIForIDE","cliRoute","CLIRoute","cliRawRoute","CLIRawRoute","ideRoute","IDERoute","sseEventsRoute","SSEEventsRoute","exports","CLIAspect","WorkspaceAspect","LoggerAspect","ExpressAspect","WatcherAspect","SnappingAspect","LanesAspect","InstallAspect","ExportAspect","CheckoutAspect","ComponentLogAspect","ImporterAspect","ComponentCompareAspect","GeneratorAspect","RemoveAspect","ConfigAspect","MainRuntime","addRuntime","_default"],"sources":["api-server.main.runtime.ts"],"sourcesContent":["import { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport { Port } from '@teambit/toolbox.network.get-port';\nimport fs from 'fs-extra';\nimport { ExpressAspect, ExpressMain } from '@teambit/express';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { LanesAspect, LanesMain } from '@teambit/lanes';\nimport { RemoveAspect, RemoveMain } from '@teambit/remove';\nimport { SnappingAspect, SnappingMain } from '@teambit/snapping';\nimport { GeneratorAspect, GeneratorMain } from '@teambit/generator';\nimport { ComponentCompareAspect, ComponentCompareMain } from '@teambit/component-compare';\nimport { ComponentLogAspect, ComponentLogMain } from '@teambit/component-log';\nimport { WatcherAspect, WatcherMain } from '@teambit/watcher';\nimport { ConfigAspect, ConfigMain } from '@teambit/config';\nimport { ExportAspect, ExportMain } from '@teambit/export';\nimport { CheckoutAspect, CheckoutMain } from '@teambit/checkout';\nimport { InstallAspect, InstallMain } from '@teambit/install';\nimport { ImporterAspect, ImporterMain } from '@teambit/importer';\nimport { Component } from '@teambit/component';\nimport { WorkspaceAspect, Workspace } from '@teambit/workspace';\nimport { sendEventsToClients } from '@teambit/harmony.modules.send-server-sent-events';\nimport cors from 'cors';\nimport { createProxyMiddleware, fixRequestBody } from 'http-proxy-middleware';\nimport { ApiServerAspect } from './api-server.aspect';\nimport { CLIRoute } from './cli.route';\nimport { ServerCmd } from './server.cmd';\nimport { IDERoute } from './ide.route';\nimport { APIForIDE } from './api-for-ide';\nimport { SSEEventsRoute } from './sse-events.route';\nimport { join } from 'path';\nimport { CLIRawRoute } from './cli-raw.route';\n\nexport class ApiServerMain {\n constructor(\n private workspace: Workspace,\n private logger: Logger,\n private express: ExpressMain,\n private watcher: WatcherMain,\n private installer: InstallMain,\n private importer: ImporterMain\n ) {}\n\n async runApiServer(options: { port: number; compile: boolean }) {\n if (!this.workspace) {\n throw new Error(`unable to run bit-server, the current directory ${process.cwd()} is not a workspace`);\n }\n\n this.workspace.registerOnComponentChange(\n async (\n component: Component,\n files: string[], // os absolute paths\n removedFiles?: string[] // os absolute paths\n ) => {\n sendEventsToClients('onComponentChange', {\n id: component.id.toStringWithoutVersion(),\n files,\n removedFiles,\n });\n }\n );\n\n this.workspace.registerOnBitmapChange(async () => {\n const lastModifiedTimestamp = await this.workspace.bitMap.getLastModifiedBitmapThroughBit();\n const secondsPassedSinceLastModified = lastModifiedTimestamp && (Date.now() - lastModifiedTimestamp) / 1000;\n if (secondsPassedSinceLastModified && secondsPassedSinceLastModified > 1) {\n // changes by bit were done more than a second ago, so probably this .bitmap change was done by \"git pull\"\n this.logger.debug(\n `running import because we assume the .bitmap file has changed due to \"git pull\", last time it was modified by bit was ${secondsPassedSinceLastModified} seconds ago`\n );\n await this.importer.importCurrentObjects();\n }\n sendEventsToClients('onBitmapChange', {});\n });\n\n this.workspace.registerOnWorkspaceConfigChange(async () => {\n sendEventsToClients('onWorkspaceConfigChange', {});\n });\n\n this.installer.registerPostInstall(async () => {\n sendEventsToClients('onPostInstall', {});\n });\n\n this.watcher\n .watch({\n preCompile: false,\n compile: options.compile,\n })\n .catch((err) => {\n // don't throw an error, we don't want to break the \"run\" process\n this.logger.error('watcher found an error', err);\n });\n\n const port = options.port || (await this.getRandomPort());\n\n const app = this.express.createApp();\n\n app.use(\n // @ts-ignore todo: it's not clear what's the issue.\n cors({\n origin(origin, callback) {\n callback(null, true);\n },\n credentials: true,\n })\n );\n app.use(\n '/api/cloud-graphql',\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n createProxyMiddleware({\n target: 'https://api.main.lanes.bit.cloud/graphql',\n changeOrigin: true,\n on: {\n error: (err, req, res) => {\n this.logger.error('graphql cloud proxy error', err);\n // @ts-ignore\n res.writeHead(500, {\n 'Content-Type': 'text/plain',\n });\n res.end('Something went wrong with the proxy server of bit cloud graphql');\n },\n proxyReq: fixRequestBody,\n },\n })\n );\n\n const server = await app.listen(port);\n\n return new Promise((resolve, reject) => {\n server.on('error', (err) => {\n reject(err);\n });\n server.on('listening', () => {\n this.logger.consoleSuccess(`Bit Server is listening on port ${port}`);\n this.writeUsedPort(port);\n resolve(port);\n });\n });\n }\n\n writeUsedPort(port: number) {\n const filePath = this.getServerPortFilePath();\n fs.writeFileSync(filePath, port.toString());\n }\n\n async getRandomPort() {\n const startingPort = 3593; // some arbitrary number shy away from the standard 3000\n // get random number in the range of [startingPort, 55500].\n const randomNumber = Math.floor(Math.random() * (55500 - startingPort + 1) + startingPort);\n const port = await Port.getPort(randomNumber, 65500);\n return port;\n }\n\n async getExistingUsedPort(): Promise<number | undefined> {\n const filePath = this.getServerPortFilePath();\n try {\n const fileContent = await fs.readFile(filePath, 'utf8');\n return parseInt(fileContent, 10);\n } catch (err: any) {\n if (err.code === 'ENOENT') {\n return undefined;\n }\n throw err;\n }\n }\n\n private getServerPortFilePath() {\n return join(this.workspace.scope.path, 'server-port.txt');\n }\n\n static dependencies = [\n CLIAspect,\n WorkspaceAspect,\n LoggerAspect,\n ExpressAspect,\n WatcherAspect,\n SnappingAspect,\n LanesAspect,\n InstallAspect,\n ExportAspect,\n CheckoutAspect,\n ComponentLogAspect,\n ImporterAspect,\n ComponentCompareAspect,\n GeneratorAspect,\n RemoveAspect,\n ConfigAspect,\n ];\n static runtime = MainRuntime;\n static async provider([\n cli,\n workspace,\n loggerMain,\n express,\n watcher,\n snapping,\n lanes,\n installer,\n exporter,\n checkout,\n componentLog,\n importer,\n componentCompare,\n generator,\n remove,\n config,\n ]: [\n CLIMain,\n Workspace,\n LoggerMain,\n ExpressMain,\n WatcherMain,\n SnappingMain,\n LanesMain,\n InstallMain,\n ExportMain,\n CheckoutMain,\n ComponentLogMain,\n ImporterMain,\n ComponentCompareMain,\n GeneratorMain,\n RemoveMain,\n ConfigMain\n ]) {\n const logger = loggerMain.createLogger(ApiServerAspect.id);\n const apiServer = new ApiServerMain(workspace, logger, express, watcher, installer, importer);\n cli.register(new ServerCmd(apiServer));\n\n const apiForIDE = new APIForIDE(\n workspace,\n snapping,\n lanes,\n installer,\n exporter,\n checkout,\n componentLog,\n componentCompare,\n generator,\n remove,\n config\n );\n const cliRoute = new CLIRoute(logger, cli, apiForIDE);\n const cliRawRoute = new CLIRawRoute(logger, cli, apiForIDE);\n const ideRoute = new IDERoute(logger, apiForIDE);\n const sseEventsRoute = new SSEEventsRoute(logger, cli);\n // register only when the workspace is available. don't register this on a remote-scope, for security reasons.\n if (workspace) {\n express.register([cliRoute, cliRawRoute, ideRoute, sseEventsRoute]);\n }\n\n return apiServer;\n }\n}\n\nApiServerAspect.addRuntime(ApiServerMain);\n\nexport default ApiServerMain;\n"],"mappings":"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","ignoreList":[]}
|
package/dist/cli-raw.route.js
CHANGED
|
@@ -11,6 +11,13 @@ function _cli() {
|
|
|
11
11
|
};
|
|
12
12
|
return data;
|
|
13
13
|
}
|
|
14
|
+
function _fsExtra() {
|
|
15
|
+
const data = _interopRequireDefault(require("fs-extra"));
|
|
16
|
+
_fsExtra = function () {
|
|
17
|
+
return data;
|
|
18
|
+
};
|
|
19
|
+
return data;
|
|
20
|
+
}
|
|
14
21
|
function _chalk() {
|
|
15
22
|
const data = _interopRequireDefault(require("chalk"));
|
|
16
23
|
_chalk = function () {
|
|
@@ -32,6 +39,13 @@ function _harmonyModules() {
|
|
|
32
39
|
};
|
|
33
40
|
return data;
|
|
34
41
|
}
|
|
42
|
+
function _loader() {
|
|
43
|
+
const data = _interopRequireDefault(require("@teambit/legacy/dist/cli/loader"));
|
|
44
|
+
_loader = function () {
|
|
45
|
+
return data;
|
|
46
|
+
};
|
|
47
|
+
return data;
|
|
48
|
+
}
|
|
35
49
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
36
50
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
37
51
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
@@ -58,12 +72,43 @@ class CLIRawRoute {
|
|
|
58
72
|
const {
|
|
59
73
|
command,
|
|
60
74
|
pwd,
|
|
61
|
-
envBitFeatures
|
|
75
|
+
envBitFeatures,
|
|
76
|
+
ttyPath
|
|
62
77
|
} = req.body;
|
|
63
78
|
this.logger.debug(`cli-raw server: got request for ${command}`);
|
|
64
79
|
if (pwd && !process.cwd().startsWith(pwd)) {
|
|
65
80
|
throw new Error(`bit-server is running on a different directory. bit-server: ${process.cwd()}, pwd: ${pwd}`);
|
|
66
81
|
}
|
|
82
|
+
|
|
83
|
+
// save the original process.stdout.write method
|
|
84
|
+
const originalStdoutWrite = process.stdout.write;
|
|
85
|
+
const originalStderrWrite = process.stderr.write;
|
|
86
|
+
if (ttyPath) {
|
|
87
|
+
const fileHandle = await _fsExtra().default.open(ttyPath, 'w');
|
|
88
|
+
// @ts-ignore monkey patch the process stdout write method
|
|
89
|
+
process.stdout.write = (chunk, encoding, callback) => {
|
|
90
|
+
_fsExtra().default.writeSync(fileHandle, chunk.toString());
|
|
91
|
+
return originalStdoutWrite.call(process.stdout, chunk, encoding, callback);
|
|
92
|
+
};
|
|
93
|
+
// @ts-ignore monkey patch the process stderr write method
|
|
94
|
+
process.stderr.write = (chunk, encoding, callback) => {
|
|
95
|
+
_fsExtra().default.writeSync(fileHandle, chunk.toString());
|
|
96
|
+
return originalStderrWrite.call(process.stdout, chunk, encoding, callback);
|
|
97
|
+
};
|
|
98
|
+
} else {
|
|
99
|
+
process.env.BIT_CLI_SERVER_NO_TTY = 'true';
|
|
100
|
+
_loader().default.shouldSendServerEvents = true;
|
|
101
|
+
}
|
|
102
|
+
let currentLogger;
|
|
103
|
+
const levelFromArgv = (0, _logger().getLevelFromArgv)(command);
|
|
104
|
+
if (levelFromArgv) {
|
|
105
|
+
currentLogger = _logger().default.logger;
|
|
106
|
+
if (ttyPath) {
|
|
107
|
+
_logger().default.switchToConsoleLogger(levelFromArgv);
|
|
108
|
+
} else {
|
|
109
|
+
_logger().default.switchToSSELogger(levelFromArgv);
|
|
110
|
+
}
|
|
111
|
+
}
|
|
67
112
|
const currentBitFeatures = process.env.BIT_FEATURES;
|
|
68
113
|
const shouldReloadFeatureToggle = currentBitFeatures !== envBitFeatures;
|
|
69
114
|
if (shouldReloadFeatureToggle) {
|
|
@@ -75,12 +120,6 @@ class CLIRawRoute {
|
|
|
75
120
|
const cmdStrLog = `${randomNumber} ${commandStr}`;
|
|
76
121
|
await this.apiForIDE.logStartCmdHistory(cmdStrLog);
|
|
77
122
|
_logger().default.isDaemon = true;
|
|
78
|
-
let currentLogger;
|
|
79
|
-
const levelFromArgv = (0, _logger().getLevelFromArgv)(command);
|
|
80
|
-
if (levelFromArgv) {
|
|
81
|
-
currentLogger = _logger().default.logger;
|
|
82
|
-
_logger().default.switchToSSELogger(levelFromArgv);
|
|
83
|
-
}
|
|
84
123
|
enableChalk();
|
|
85
124
|
const cliParser = new (_cli().CLIParser)(this.cli.commands, this.cli.groups, this.cli.onCommandStartSlot);
|
|
86
125
|
try {
|
|
@@ -104,6 +143,13 @@ class CLIRawRoute {
|
|
|
104
143
|
});
|
|
105
144
|
}
|
|
106
145
|
} finally {
|
|
146
|
+
if (ttyPath) {
|
|
147
|
+
process.stdout.write = originalStdoutWrite;
|
|
148
|
+
process.stderr.write = originalStderrWrite;
|
|
149
|
+
} else {
|
|
150
|
+
delete process.env.BIT_CLI_SERVER_NO_TTY;
|
|
151
|
+
_loader().default.shouldSendServerEvents = false;
|
|
152
|
+
}
|
|
107
153
|
this.logger.clearStatusLine();
|
|
108
154
|
// change chalk back to false, otherwise, the IDE will have colors. (this is a global setting)
|
|
109
155
|
_chalk().default.enabled = false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_cli","data","require","_chalk","_interopRequireDefault","_logger","_interopRequireWildcard","_harmonyModules","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_defineProperty","_toPropertyKey","value","enumerable","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","CLIRawRoute","constructor","logger","cli","apiForIDE","req","res","command","pwd","envBitFeatures","body","debug","process","cwd","startsWith","Error","currentBitFeatures","env","BIT_FEATURES","shouldReloadFeatureToggle","reloadFeatureToggle","randomNumber","Math","floor","random","commandStr","join","cmdStrLog","logStartCmdHistory","legacyLogger","isDaemon","currentLogger","levelFromArgv","getLevelFromArgv","switchToSSELogger","enableChalk","cliParser","CLIParser","commands","groups","onCommandStartSlot","commandRunner","parse","result","runCommand","logFinishCmdHistory","json","err","YargsExitWorkaround","helpMsg","exitCode","error","status","jsonp","message","clearStatusLine","chalk","enabled","switchToLogger","exports","level"],"sources":["cli-raw.route.ts"],"sourcesContent":["import { CLIMain, CLIParser, YargsExitWorkaround } from '@teambit/cli';\nimport chalk from 'chalk';\nimport { Route, Request, Response } from '@teambit/express';\nimport { Logger } from '@teambit/logger';\nimport legacyLogger, { getLevelFromArgv } from '@teambit/legacy/dist/logger/logger';\nimport { reloadFeatureToggle } from '@teambit/harmony.modules.feature-toggle';\nimport { APIForIDE } from './api-for-ide';\n\n/**\n * example usage:\n * post to http://localhost:3000/api/cli\n * with the following json as the body\n *\n{\n \"command\": [\"tag comp1 --build\"]\n}\n */\nexport class CLIRawRoute implements Route {\n constructor(private logger: Logger, private cli: CLIMain, private apiForIDE: APIForIDE) {}\n\n method = 'post';\n route = '/cli-raw';\n\n middlewares = [\n async (req: Request, res: Response) => {\n const { command, pwd, envBitFeatures } = req.body;\n this.logger.debug(`cli-raw server: got request for ${command}`);\n if (pwd && !process.cwd().startsWith(pwd)) {\n throw new Error(`bit-server is running on a different directory. bit-server: ${process.cwd()}, pwd: ${pwd}`);\n }\n const currentBitFeatures = process.env.BIT_FEATURES;\n const shouldReloadFeatureToggle = currentBitFeatures !== envBitFeatures;\n if (shouldReloadFeatureToggle) {\n process.env.BIT_FEATURES = envBitFeatures;\n reloadFeatureToggle();\n }\n\n const randomNumber = Math.floor(Math.random() * 10000); // helps to distinguish between commands in the log\n const commandStr = command.join(' ');\n const cmdStrLog = `${randomNumber} ${commandStr}`;\n await this.apiForIDE.logStartCmdHistory(cmdStrLog);\n legacyLogger.isDaemon = true;\n let currentLogger;\n const levelFromArgv = getLevelFromArgv(command);\n if (levelFromArgv) {\n currentLogger = legacyLogger.logger;\n legacyLogger.switchToSSELogger(levelFromArgv);\n }\n enableChalk();\n const cliParser = new CLIParser(this.cli.commands, this.cli.groups, this.cli.onCommandStartSlot);\n try {\n const commandRunner = await cliParser.parse(command);\n const result = await commandRunner.runCommand(true);\n await this.apiForIDE.logFinishCmdHistory(cmdStrLog, 0);\n res.json(result);\n } catch (err: any) {\n if (err instanceof YargsExitWorkaround) {\n res.json({ data: err.helpMsg, exitCode: err.exitCode });\n } else {\n this.logger.error(`cli-raw server: got an error for ${commandStr}`, err);\n await this.apiForIDE.logFinishCmdHistory(cmdStrLog, 1);\n res.status(500);\n res.jsonp({\n message: err.message,\n error: err,\n });\n }\n } finally {\n this.logger.clearStatusLine();\n // change chalk back to false, otherwise, the IDE will have colors. (this is a global setting)\n chalk.enabled = false;\n if (shouldReloadFeatureToggle) {\n process.env.BIT_FEATURES = currentBitFeatures;\n reloadFeatureToggle();\n }\n if (currentLogger) {\n legacyLogger.switchToLogger(currentLogger);\n }\n }\n },\n ];\n}\n\n/**\n * because this gets called from the express server, which gets spawn from a script, chalk defaults to false.\n * changing only the \"level\" is not enough, it must be enabled as well.\n * only when calling this route from the terminal, we want colors. on the IDE, we don't want colors.\n */\nfunction enableChalk() {\n chalk.enabled = true;\n chalk.level = 3;\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_cli","data","require","_fsExtra","_interopRequireDefault","_chalk","_logger","_interopRequireWildcard","_harmonyModules","_loader","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_defineProperty","_toPropertyKey","value","enumerable","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","CLIRawRoute","constructor","logger","cli","apiForIDE","req","res","command","pwd","envBitFeatures","ttyPath","body","debug","process","cwd","startsWith","Error","originalStdoutWrite","stdout","write","originalStderrWrite","stderr","fileHandle","fs","open","chunk","encoding","callback","writeSync","toString","env","BIT_CLI_SERVER_NO_TTY","loader","shouldSendServerEvents","currentLogger","levelFromArgv","getLevelFromArgv","legacyLogger","switchToConsoleLogger","switchToSSELogger","currentBitFeatures","BIT_FEATURES","shouldReloadFeatureToggle","reloadFeatureToggle","randomNumber","Math","floor","random","commandStr","join","cmdStrLog","logStartCmdHistory","isDaemon","enableChalk","cliParser","CLIParser","commands","groups","onCommandStartSlot","commandRunner","parse","result","runCommand","logFinishCmdHistory","json","err","YargsExitWorkaround","helpMsg","exitCode","error","status","jsonp","message","clearStatusLine","chalk","enabled","switchToLogger","exports","level"],"sources":["cli-raw.route.ts"],"sourcesContent":["import { CLIMain, CLIParser, YargsExitWorkaround } from '@teambit/cli';\nimport fs from 'fs-extra';\nimport chalk from 'chalk';\nimport { Route, Request, Response } from '@teambit/express';\nimport { Logger } from '@teambit/logger';\nimport legacyLogger, { getLevelFromArgv } from '@teambit/legacy/dist/logger/logger';\nimport { reloadFeatureToggle } from '@teambit/harmony.modules.feature-toggle';\nimport loader from '@teambit/legacy/dist/cli/loader';\nimport { APIForIDE } from './api-for-ide';\n\n/**\n * example usage:\n * post to http://localhost:3000/api/cli\n * with the following json as the body\n *\n{\n \"command\": [\"tag comp1 --build\"]\n}\n */\nexport class CLIRawRoute implements Route {\n constructor(private logger: Logger, private cli: CLIMain, private apiForIDE: APIForIDE) {}\n\n method = 'post';\n route = '/cli-raw';\n\n middlewares = [\n async (req: Request, res: Response) => {\n const { command, pwd, envBitFeatures, ttyPath } = req.body;\n this.logger.debug(`cli-raw server: got request for ${command}`);\n if (pwd && !process.cwd().startsWith(pwd)) {\n throw new Error(`bit-server is running on a different directory. bit-server: ${process.cwd()}, pwd: ${pwd}`);\n }\n\n // save the original process.stdout.write method\n const originalStdoutWrite = process.stdout.write;\n const originalStderrWrite = process.stderr.write;\n\n if (ttyPath) {\n const fileHandle = await fs.open(ttyPath, 'w');\n // @ts-ignore monkey patch the process stdout write method\n process.stdout.write = (chunk, encoding, callback) => {\n fs.writeSync(fileHandle, chunk.toString());\n return originalStdoutWrite.call(process.stdout, chunk, encoding, callback);\n };\n // @ts-ignore monkey patch the process stderr write method\n process.stderr.write = (chunk, encoding, callback) => {\n fs.writeSync(fileHandle, chunk.toString());\n return originalStderrWrite.call(process.stdout, chunk, encoding, callback);\n };\n } else {\n process.env.BIT_CLI_SERVER_NO_TTY = 'true';\n loader.shouldSendServerEvents = true;\n }\n\n let currentLogger;\n const levelFromArgv = getLevelFromArgv(command);\n if (levelFromArgv) {\n currentLogger = legacyLogger.logger;\n if (ttyPath) {\n legacyLogger.switchToConsoleLogger(levelFromArgv);\n } else {\n legacyLogger.switchToSSELogger(levelFromArgv);\n }\n }\n\n const currentBitFeatures = process.env.BIT_FEATURES;\n const shouldReloadFeatureToggle = currentBitFeatures !== envBitFeatures;\n if (shouldReloadFeatureToggle) {\n process.env.BIT_FEATURES = envBitFeatures;\n reloadFeatureToggle();\n }\n\n const randomNumber = Math.floor(Math.random() * 10000); // helps to distinguish between commands in the log\n const commandStr = command.join(' ');\n const cmdStrLog = `${randomNumber} ${commandStr}`;\n await this.apiForIDE.logStartCmdHistory(cmdStrLog);\n legacyLogger.isDaemon = true;\n enableChalk();\n const cliParser = new CLIParser(this.cli.commands, this.cli.groups, this.cli.onCommandStartSlot);\n try {\n const commandRunner = await cliParser.parse(command);\n const result = await commandRunner.runCommand(true);\n await this.apiForIDE.logFinishCmdHistory(cmdStrLog, 0);\n res.json(result);\n } catch (err: any) {\n if (err instanceof YargsExitWorkaround) {\n res.json({ data: err.helpMsg, exitCode: err.exitCode });\n } else {\n this.logger.error(`cli-raw server: got an error for ${commandStr}`, err);\n await this.apiForIDE.logFinishCmdHistory(cmdStrLog, 1);\n res.status(500);\n res.jsonp({\n message: err.message,\n error: err,\n });\n }\n } finally {\n if (ttyPath) {\n process.stdout.write = originalStdoutWrite;\n process.stderr.write = originalStderrWrite;\n } else {\n delete process.env.BIT_CLI_SERVER_NO_TTY;\n loader.shouldSendServerEvents = false;\n }\n this.logger.clearStatusLine();\n // change chalk back to false, otherwise, the IDE will have colors. (this is a global setting)\n chalk.enabled = false;\n if (shouldReloadFeatureToggle) {\n process.env.BIT_FEATURES = currentBitFeatures;\n reloadFeatureToggle();\n }\n if (currentLogger) {\n legacyLogger.switchToLogger(currentLogger);\n }\n }\n },\n ];\n}\n\n/**\n * because this gets called from the express server, which gets spawn from a script, chalk defaults to false.\n * changing only the \"level\" is not enough, it must be enabled as well.\n * only when calling this route from the terminal, we want colors. on the IDE, we don't want colors.\n */\nfunction enableChalk() {\n chalk.enabled = true;\n chalk.level = 3;\n}\n"],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@teambit/api-server",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.376",
|
|
4
4
|
"homepage": "https://bit.cloud/teambit/harmony/api-server",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"componentId": {
|
|
7
7
|
"scope": "teambit.harmony",
|
|
8
8
|
"name": "api-server",
|
|
9
|
-
"version": "1.0.
|
|
9
|
+
"version": "1.0.376"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"fs-extra": "10.0.0",
|
|
@@ -18,26 +18,27 @@
|
|
|
18
18
|
"pretty-time": "1.1.0",
|
|
19
19
|
"@teambit/lane-id": "0.0.311",
|
|
20
20
|
"@teambit/harmony": "0.4.6",
|
|
21
|
-
"@teambit/checkout": "1.0.
|
|
22
|
-
"@teambit/component-compare": "1.0.
|
|
23
|
-
"@teambit/component-log": "1.0.
|
|
24
|
-
"@teambit/config": "0.0.
|
|
25
|
-
"@teambit/export": "1.0.
|
|
26
|
-
"@teambit/generator": "1.0.
|
|
27
|
-
"@teambit/install": "1.0.
|
|
28
|
-
"@teambit/lanes": "1.0.
|
|
21
|
+
"@teambit/checkout": "1.0.376",
|
|
22
|
+
"@teambit/component-compare": "1.0.376",
|
|
23
|
+
"@teambit/component-log": "1.0.376",
|
|
24
|
+
"@teambit/config": "0.0.1127",
|
|
25
|
+
"@teambit/export": "1.0.376",
|
|
26
|
+
"@teambit/generator": "1.0.377",
|
|
27
|
+
"@teambit/install": "1.0.376",
|
|
28
|
+
"@teambit/lanes": "1.0.376",
|
|
29
29
|
"@teambit/legacy.utils": "0.0.4",
|
|
30
|
-
"@teambit/merging": "1.0.
|
|
31
|
-
"@teambit/remove": "1.0.
|
|
32
|
-
"@teambit/snapping": "1.0.
|
|
33
|
-
"@teambit/workspace": "1.0.
|
|
34
|
-
"@teambit/cli": "0.0.
|
|
35
|
-
"@teambit/component": "1.0.
|
|
36
|
-
"@teambit/express": "0.0.
|
|
30
|
+
"@teambit/merging": "1.0.376",
|
|
31
|
+
"@teambit/remove": "1.0.376",
|
|
32
|
+
"@teambit/snapping": "1.0.376",
|
|
33
|
+
"@teambit/workspace": "1.0.376",
|
|
34
|
+
"@teambit/cli": "0.0.953",
|
|
35
|
+
"@teambit/component": "1.0.376",
|
|
36
|
+
"@teambit/express": "0.0.1052",
|
|
37
37
|
"@teambit/harmony.modules.send-server-sent-events": "0.0.2",
|
|
38
|
-
"@teambit/importer": "1.0.
|
|
39
|
-
"@teambit/logger": "0.0.
|
|
40
|
-
"@teambit/
|
|
38
|
+
"@teambit/importer": "1.0.376",
|
|
39
|
+
"@teambit/logger": "0.0.1046",
|
|
40
|
+
"@teambit/toolbox.network.get-port": "1.0.6",
|
|
41
|
+
"@teambit/watcher": "1.0.376",
|
|
41
42
|
"@teambit/harmony.modules.feature-toggle": "0.0.5"
|
|
42
43
|
},
|
|
43
44
|
"devDependencies": {
|
|
File without changes
|