@teambit/preview 1.0.649 → 1.0.651
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.
@@ -1,5 +1,5 @@
|
|
1
|
-
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.preview_preview@1.0.
|
2
|
-
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.preview_preview@1.0.
|
1
|
+
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.preview_preview@1.0.651/dist/preview.composition.js';
|
2
|
+
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.preview_preview@1.0.651/dist/preview.docs.mdx';
|
3
3
|
|
4
4
|
export const compositions = [compositions_0];
|
5
5
|
export const overview = [overview_0];
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_lodash","data","require","_bundler","_previewCli","_previewCli2","_compiler","_watcher","_chalk","_interopRequireDefault","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","PreviewStartPlugin","constructor","workspace","bundler","ui","pubsub","logger","watcher","graphql","Map","Promise","resolve","setReady","sub","BundlerAspect","id","event","type","NewDevServersCreatedEvent","TYPE","onNewDevServersCreated","componentsServers","ComponentsServerStartedEvent","onComponentServerStarted","componentsServer","componentServer","startedEnvId","context","envRuntime","serversMap","wasPending","pendingServers","has","delete","serversState","isStarted","index","previewServers","findIndex","s","uiServer","getUIServer","addComponentServerProxy","isCompilationDone","publishServerStarted","isPendingPublish","console","server","publish","ComponentServerStartedEvent","componentServers","servers","envId","set","isCompiling","isReady","listen","err","error","initiate","options","listenToDevServers","showInternalUrls","components","getComponentsByUserInput","pattern","devServer","watch","spawnTSServer","checkTypes","CheckTypes","None","preCompile","compile","initiator","CompilationInitiator","Start","catch","msg","message","concat","getProxy","proxyConfigs","map","target","port","ws","flatten","SubscribeToEvents","onStart","handleOnStartCompiling","onDone","results","handleOnDoneCompiling","SubscribeToWebpackEvents","spinnerId","getSpinnerId","text","getSpinnerCompilingMessage","get","exists","multiSpinner","spinners","add","errors","warnings","previewServer","spinner","isActive","hasErrors","getWarningsWithoutIgnored","hasWarnings","url","getSpinnerDoneMessage","undefined","fail","warn","succeed","noneAreCompiling","values","every","x","whenReady","readyPromise","exports","IGNORE_WARNINGS","warning","find","reg","match","verbose","prefix","chalk","cyan","includedEnvs","relatedContexts","stringifyIncludedEnvs","errorsTxt","join","errorsTxtWithTitle","red","warningsTxt","warningsTxtWithTitle","yellow","urlMessage"],"sources":["preview.start-plugin.tsx"],"sourcesContent":["import { flatten } from 'lodash';\nimport { BundlerAspect, BundlerMain, ComponentServer, ComponentServerStartedEvent, ComponentsServerStartedEvent, NewDevServersCreatedEvent } from '@teambit/bundler';\nimport { PubsubMain } from '@teambit/pubsub';\nimport { ProxyEntry, StartPlugin, StartPluginOptions, UiMain } from '@teambit/ui';\nimport { Workspace } from '@teambit/workspace';\nimport { SubscribeToEvents } from '@teambit/preview.cli.dev-server-events-listener';\nimport { SubscribeToWebpackEvents } from '@teambit/preview.cli.webpack-events-listener';\nimport { CompilationInitiator } from '@teambit/compiler';\nimport { Logger } from '@teambit/logger';\nimport { CheckTypes, WatcherMain } from '@teambit/watcher';\nimport { GraphqlMain } from '@teambit/graphql';\nimport chalk from 'chalk';\n\ntype ServerState = {\n isCompiling?: boolean;\n isReady?: boolean;\n errors?: Error[];\n warnings?: Error[];\n results?: any[];\n isStarted?: boolean;\n isCompilationDone?: boolean;\n isPendingPublish?: boolean;\n};\n\ntype ServerStateMap = Record<string, ServerState>;\n\nexport class PreviewStartPlugin implements StartPlugin {\n previewServers: ComponentServer[] = [];\n serversState: ServerStateMap = {};\n serversMap: Record<string, ComponentServer> = {};\n private pendingServers: Map<string, ComponentServer> = new Map();\n\n constructor(\n private workspace: Workspace,\n private bundler: BundlerMain,\n private ui: UiMain,\n private pubsub: PubsubMain,\n private logger: Logger,\n private watcher: WatcherMain,\n private graphql: GraphqlMain\n ) {\n this.pubsub.sub(BundlerAspect.id, async (event) => {\n if (event.type === NewDevServersCreatedEvent.TYPE) {\n await this.onNewDevServersCreated(event.componentsServers);\n }\n if (event.type === ComponentsServerStartedEvent.TYPE) {\n await this.onComponentServerStarted(event.componentsServer);\n }\n });\n }\n\n async onComponentServerStarted(componentServer: ComponentServer) {\n const startedEnvId = componentServer.context.envRuntime.id;\n this.serversMap[startedEnvId] = componentServer;\n const wasPending = this.pendingServers.has(startedEnvId);\n this.pendingServers.delete(startedEnvId);\n\n this.serversState[startedEnvId] = {\n ...this.serversState[startedEnvId],\n isStarted: true\n };\n\n const index = this.previewServers.findIndex(s => s.context.envRuntime.id === startedEnvId);\n if (index >= 0) {\n this.previewServers[index] = componentServer;\n } else {\n this.previewServers.push(componentServer);\n }\n\n const uiServer = this.ui.getUIServer();\n if (uiServer) {\n uiServer.addComponentServerProxy(componentServer);\n \n if (wasPending) {\n if (this.serversState[startedEnvId]?.isCompilationDone) {\n await this.publishServerStarted(componentServer);\n } else {\n this.serversState[startedEnvId] = {\n ...this.serversState[startedEnvId],\n isPendingPublish: true\n };\n this.logger.console(`Server ${startedEnvId} started but waiting for compilation to complete before publishing event.`);\n }\n }\n }\n }\n\n private async publishServerStarted(server: ComponentServer) {\n await this.graphql.pubsub.publish(ComponentServerStartedEvent, {\n componentServers: server,\n });\n }\n\n async onNewDevServersCreated(servers: ComponentServer[]) {\n for (const server of servers) {\n const envId = server.context.envRuntime.id;\n this.pendingServers.set(envId, server);\n \n this.serversState[envId] = {\n isCompiling: false,\n isReady: false,\n isStarted: false,\n isCompilationDone: false,\n isPendingPublish: false\n };\n \n try {\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n server.listen();\n } catch (err) {\n this.logger.error(`failed to start server for ${envId}`, err);\n }\n }\n }\n\n async initiate(options: StartPluginOptions) {\n this.listenToDevServers(options.showInternalUrls);\n const components = await this.workspace.getComponentsByUserInput(!options.pattern, options.pattern);\n // TODO: logic for creating preview servers must be refactored to this aspect from the DevServer aspect.\n const previewServers = await this.bundler.devServer(components);\n previewServers.forEach((server) => {\n const envId = server.context.envRuntime.id;\n this.serversMap[envId] = server;\n \n this.serversState[envId] = {\n isCompiling: false,\n isReady: false,\n isStarted: false,\n isCompilationDone: false,\n isPendingPublish: false\n };\n \n // DON'T add wait! this promise never resolves, so it would stop the start process!\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n server.listen();\n });\n this.watcher\n .watch({\n spawnTSServer: true,\n checkTypes: CheckTypes.None,\n preCompile: false,\n compile: true,\n initiator: CompilationInitiator.Start,\n })\n .catch((err) => {\n const msg = `watcher found an error`;\n this.logger.error(msg, err);\n this.logger.console(`${msg}, ${err.message}`);\n });\n this.previewServers = this.previewServers.concat(previewServers);\n }\n\n getProxy(): ProxyEntry[] {\n const proxyConfigs = this.previewServers.map<ProxyEntry[]>((server) => {\n return [\n {\n context: [`/preview/${server.context.envRuntime.id}`],\n target: `http://localhost:${server.port}`,\n },\n {\n context: [`/_hmr/${server.context.envRuntime.id}`],\n target: `http://localhost:${server.port}`,\n ws: true,\n },\n ];\n });\n\n return flatten(proxyConfigs);\n }\n\n // TODO: this should be a part of the devServer\n private listenToDevServers(showInternalUrls?: boolean) {\n // keep state changes immutable!\n SubscribeToEvents(this.pubsub, {\n onStart: (id) => {\n this.handleOnStartCompiling(id);\n },\n onDone: (id, results) => {\n this.handleOnDoneCompiling(id, results, showInternalUrls);\n },\n });\n // @deprecated\n // for legacy webpack bit report plugin\n SubscribeToWebpackEvents(this.pubsub, {\n onStart: (id) => {\n this.handleOnStartCompiling(id);\n },\n onDone: (id, results) => {\n this.handleOnDoneCompiling(id, results, showInternalUrls);\n },\n });\n }\n\n private handleOnStartCompiling(id: string) {\n this.serversState[id] = { \n ...this.serversState[id],\n isCompiling: true \n };\n const spinnerId = getSpinnerId(id);\n const text = getSpinnerCompilingMessage(this.serversMap[id] || this.pendingServers.get(id));\n const exists = this.logger.multiSpinner.spinners[spinnerId];\n if (!exists) {\n this.logger.multiSpinner.add(spinnerId, { text });\n }\n }\n\n private handleOnDoneCompiling(id: string, results, showInternalUrls?: boolean) {\n this.serversState[id] = {\n ...this.serversState[id],\n isCompiling: false,\n isReady: true,\n isCompilationDone: true,\n errors: results.errors,\n warnings: results.warnings,\n };\n const previewServer = this.serversMap[id] || this.pendingServers.get(id);\n const spinnerId = getSpinnerId(id);\n const spinner = this.logger.multiSpinner.spinners[spinnerId];\n if (spinner && spinner.isActive()) {\n const errors = results.errors || [];\n const hasErrors = !!errors.length;\n const warnings = getWarningsWithoutIgnored(results.warnings);\n const hasWarnings = !!warnings.length;\n const url = `http://localhost:${previewServer.port}`;\n const text = getSpinnerDoneMessage(this.serversMap[id], errors, warnings, url, undefined, showInternalUrls);\n if (hasErrors) {\n this.logger.multiSpinner.fail(spinnerId, { text });\n } else if (hasWarnings) {\n this.logger.multiSpinner.warn(spinnerId, { text });\n } else {\n this.logger.multiSpinner.succeed(spinnerId, { text });\n }\n }\n\n const noneAreCompiling = Object.values(this.serversState).every((x) => !x.isCompiling);\n if (noneAreCompiling) this.setReady();\n if (this.serversState[id]?.isPendingPublish) {\n const server = this.serversMap[id];\n if (server) {\n this.serversState[id].isPendingPublish = false;\n this.publishServerStarted(server).catch((err) => {\n this.logger.error(`failed to publish server started event for ${server.context.envRuntime.id}`, err);\n });\n }\n }\n }\n\n private setReady: () => void;\n private readyPromise = new Promise<void>((resolve) => (this.setReady = resolve));\n get whenReady(): Promise<void> {\n return this.readyPromise;\n }\n}\n\nfunction getWarningsWithoutIgnored(warnings?: Error[]): Error[] {\n if (!warnings || !warnings.length) return [];\n const IGNORE_WARNINGS = [\n // Webpack 5+ has no facility to disable this warning.\n // System.import is used in @angular/core for deprecated string-form lazy routes\n /System.import\\(\\) is deprecated and will be removed soon/i,\n // We need to include all the files in the compilation because we don't know what people will use in their compositions\n /is part of the TypeScript compilation but it's unused/i,\n // https://github.com/webpack-contrib/source-map-loader/blob/b2de4249c7431dd8432da607e08f0f65e9d64219/src/index.js#L83\n /Failed to parse source map from/,\n ];\n warnings.filter((warning) => !IGNORE_WARNINGS.find((reg) => warning?.message?.match(reg)));\n return warnings;\n}\n\nfunction getSpinnerId(envId: string) {\n return `preview-${envId}`;\n}\n\nfunction getSpinnerCompilingMessage(server: ComponentServer, verbose = false) {\n const prefix = 'COMPILING';\n const envId = chalk.cyan(server.context.envRuntime.id);\n let includedEnvs = '';\n if (server.context.relatedContexts && server.context.relatedContexts.length > 1) {\n includedEnvs = `on behalf of ${chalk.cyan(stringifyIncludedEnvs(server.context.relatedContexts, verbose))}`;\n }\n return `${prefix} ${envId} ${includedEnvs}`;\n}\n\nfunction getSpinnerDoneMessage(\n server: ComponentServer,\n errors: Error[],\n warnings: Error[],\n url: string,\n verbose = false,\n showInternalUrls?: boolean\n) {\n const hasErrors = !!errors.length;\n const hasWarnings = !!warnings.length;\n const prefix = hasErrors ? 'FAILED' : 'RUNNING';\n const envId = chalk.cyan(server.context.envRuntime.id);\n let includedEnvs = '';\n if (server.context.relatedContexts && server.context.relatedContexts.length > 1) {\n includedEnvs = ` on behalf of ${chalk.cyan(stringifyIncludedEnvs(server.context.relatedContexts, verbose))}`;\n }\n const errorsTxt = hasErrors ? errors.map((err) => err.message).join('\\n') : '';\n const errorsTxtWithTitle = hasErrors ? chalk.red(`\\nErrors:\\n${errorsTxt}`) : '';\n const warningsTxt = hasWarnings ? warnings.map((warning) => warning.message).join('\\n') : '';\n const warningsTxtWithTitle = hasWarnings ? chalk.yellow(`\\nWarnings:\\n${warningsTxt}`) : '';\n\n const urlMessage = hasErrors || !showInternalUrls ? '' : `at ${chalk.cyan(url)}`;\n return `${prefix} ${envId}${includedEnvs} ${urlMessage} ${errorsTxtWithTitle} ${warningsTxtWithTitle}`;\n}\n\nfunction stringifyIncludedEnvs(includedEnvs: string[] = [], verbose = false) {\n if (includedEnvs.length < 2) return '';\n if (includedEnvs.length > 2 && !verbose) return ` ${includedEnvs.length} other envs`;\n return includedEnvs.join(', ');\n}"],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"names":["_lodash","data","require","_bundler","_previewCli","_previewCli2","_compiler","_watcher","_chalk","_interopRequireDefault","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","PreviewStartPlugin","constructor","workspace","bundler","ui","pubsub","logger","watcher","graphql","Map","Promise","resolve","setReady","sub","BundlerAspect","id","event","type","NewDevServersCreatedEvent","TYPE","onNewDevServersCreated","componentsServers","ComponentsServerStartedEvent","onComponentServerStarted","componentsServer","componentServer","startedEnvId","context","envRuntime","serversMap","wasPending","pendingServers","has","delete","serversState","isStarted","index","previewServers","findIndex","s","uiServer","getUIServer","addComponentServerProxy","isCompilationDone","publishServerStarted","isPendingPublish","console","server","publish","ComponentServerStartedEvent","componentServers","servers","envId","set","isCompiling","isReady","listen","err","error","initiate","options","listenToDevServers","showInternalUrls","components","getComponentsByUserInput","pattern","devServer","watch","spawnTSServer","checkTypes","CheckTypes","None","preCompile","compile","initiator","CompilationInitiator","Start","catch","msg","message","concat","getProxy","proxyConfigs","map","target","port","ws","flatten","SubscribeToEvents","onStart","handleOnStartCompiling","onDone","results","handleOnDoneCompiling","SubscribeToWebpackEvents","spinnerId","getSpinnerId","text","getSpinnerCompilingMessage","get","exists","multiSpinner","spinners","add","errors","warnings","previewServer","spinner","isActive","hasErrors","getWarningsWithoutIgnored","hasWarnings","url","getSpinnerDoneMessage","undefined","fail","warn","succeed","noneAreCompiling","values","every","x","whenReady","readyPromise","exports","IGNORE_WARNINGS","warning","find","reg","match","verbose","prefix","chalk","cyan","includedEnvs","relatedContexts","stringifyIncludedEnvs","errorsTxt","join","errorsTxtWithTitle","red","warningsTxt","warningsTxtWithTitle","yellow","urlMessage"],"sources":["preview.start-plugin.tsx"],"sourcesContent":["import { flatten } from 'lodash';\nimport {\n BundlerAspect,\n BundlerMain,\n ComponentServer,\n ComponentServerStartedEvent,\n ComponentsServerStartedEvent,\n NewDevServersCreatedEvent,\n} from '@teambit/bundler';\nimport { PubsubMain } from '@teambit/pubsub';\nimport { ProxyEntry, StartPlugin, StartPluginOptions, UiMain } from '@teambit/ui';\nimport { Workspace } from '@teambit/workspace';\nimport { SubscribeToEvents } from '@teambit/preview.cli.dev-server-events-listener';\nimport { SubscribeToWebpackEvents } from '@teambit/preview.cli.webpack-events-listener';\nimport { CompilationInitiator } from '@teambit/compiler';\nimport { Logger } from '@teambit/logger';\nimport { CheckTypes, WatcherMain } from '@teambit/watcher';\nimport { GraphqlMain } from '@teambit/graphql';\nimport chalk from 'chalk';\n\ntype ServerState = {\n isCompiling?: boolean;\n isReady?: boolean;\n errors?: Error[];\n warnings?: Error[];\n results?: any[];\n isStarted?: boolean;\n isCompilationDone?: boolean;\n isPendingPublish?: boolean;\n};\n\ntype ServerStateMap = Record<string, ServerState>;\n\nexport class PreviewStartPlugin implements StartPlugin {\n previewServers: ComponentServer[] = [];\n serversState: ServerStateMap = {};\n serversMap: Record<string, ComponentServer> = {};\n private pendingServers: Map<string, ComponentServer> = new Map();\n\n constructor(\n private workspace: Workspace,\n private bundler: BundlerMain,\n private ui: UiMain,\n private pubsub: PubsubMain,\n private logger: Logger,\n private watcher: WatcherMain,\n private graphql: GraphqlMain\n ) {\n this.pubsub.sub(BundlerAspect.id, async (event) => {\n if (event.type === NewDevServersCreatedEvent.TYPE) {\n await this.onNewDevServersCreated(event.componentsServers);\n }\n if (event.type === ComponentsServerStartedEvent.TYPE) {\n await this.onComponentServerStarted(event.componentsServer);\n }\n });\n }\n\n async onComponentServerStarted(componentServer: ComponentServer) {\n const startedEnvId = componentServer.context.envRuntime.id;\n this.serversMap[startedEnvId] = componentServer;\n const wasPending = this.pendingServers.has(startedEnvId);\n this.pendingServers.delete(startedEnvId);\n\n this.serversState[startedEnvId] = {\n ...this.serversState[startedEnvId],\n isStarted: true,\n };\n\n const index = this.previewServers.findIndex((s) => s.context.envRuntime.id === startedEnvId);\n if (index >= 0) {\n this.previewServers[index] = componentServer;\n } else {\n this.previewServers.push(componentServer);\n }\n\n const uiServer = this.ui.getUIServer();\n if (uiServer) {\n uiServer.addComponentServerProxy(componentServer);\n\n if (wasPending) {\n if (this.serversState[startedEnvId]?.isCompilationDone) {\n await this.publishServerStarted(componentServer);\n } else {\n this.serversState[startedEnvId] = {\n ...this.serversState[startedEnvId],\n isPendingPublish: true,\n };\n this.logger.console(\n `Server ${startedEnvId} started but waiting for compilation to complete before publishing event.`\n );\n }\n }\n }\n }\n\n private async publishServerStarted(server: ComponentServer) {\n await this.graphql.pubsub.publish(ComponentServerStartedEvent, {\n componentServers: server,\n });\n }\n\n async onNewDevServersCreated(servers: ComponentServer[]) {\n for (const server of servers) {\n const envId = server.context.envRuntime.id;\n this.pendingServers.set(envId, server);\n\n this.serversState[envId] = {\n isCompiling: false,\n isReady: false,\n isStarted: false,\n isCompilationDone: false,\n isPendingPublish: false,\n };\n\n try {\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n server.listen();\n } catch (err) {\n this.logger.error(`failed to start server for ${envId}`, err);\n }\n }\n }\n\n async initiate(options: StartPluginOptions) {\n this.listenToDevServers(options.showInternalUrls);\n const components = await this.workspace.getComponentsByUserInput(!options.pattern, options.pattern);\n // TODO: logic for creating preview servers must be refactored to this aspect from the DevServer aspect.\n const previewServers = await this.bundler.devServer(components);\n previewServers.forEach((server) => {\n const envId = server.context.envRuntime.id;\n this.serversMap[envId] = server;\n\n this.serversState[envId] = {\n isCompiling: false,\n isReady: false,\n isStarted: false,\n isCompilationDone: false,\n isPendingPublish: false,\n };\n\n // DON'T add wait! this promise never resolves, so it would stop the start process!\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n server.listen();\n });\n this.watcher\n .watch({\n spawnTSServer: true,\n checkTypes: CheckTypes.None,\n preCompile: false,\n compile: true,\n initiator: CompilationInitiator.Start,\n })\n .catch((err) => {\n const msg = `watcher found an error`;\n this.logger.error(msg, err);\n this.logger.console(`${msg}, ${err.message}`);\n });\n this.previewServers = this.previewServers.concat(previewServers);\n }\n\n getProxy(): ProxyEntry[] {\n const proxyConfigs = this.previewServers.map<ProxyEntry[]>((server) => {\n return [\n {\n context: [`/preview/${server.context.envRuntime.id}`],\n target: `http://localhost:${server.port}`,\n },\n {\n context: [`/_hmr/${server.context.envRuntime.id}`],\n target: `http://localhost:${server.port}`,\n ws: true,\n },\n ];\n });\n\n return flatten(proxyConfigs);\n }\n\n // TODO: this should be a part of the devServer\n private listenToDevServers(showInternalUrls?: boolean) {\n // keep state changes immutable!\n SubscribeToEvents(this.pubsub, {\n onStart: (id) => {\n this.handleOnStartCompiling(id);\n },\n onDone: (id, results) => {\n this.handleOnDoneCompiling(id, results, showInternalUrls);\n },\n });\n // @deprecated\n // for legacy webpack bit report plugin\n SubscribeToWebpackEvents(this.pubsub, {\n onStart: (id) => {\n this.handleOnStartCompiling(id);\n },\n onDone: (id, results) => {\n this.handleOnDoneCompiling(id, results, showInternalUrls);\n },\n });\n }\n\n private handleOnStartCompiling(id: string) {\n this.serversState[id] = {\n ...this.serversState[id],\n isCompiling: true,\n };\n const spinnerId = getSpinnerId(id);\n const text = getSpinnerCompilingMessage(this.serversMap[id] || this.pendingServers.get(id));\n const exists = this.logger.multiSpinner.spinners[spinnerId];\n if (!exists) {\n this.logger.multiSpinner.add(spinnerId, { text });\n }\n }\n\n private handleOnDoneCompiling(id: string, results, showInternalUrls?: boolean) {\n this.serversState[id] = {\n ...this.serversState[id],\n isCompiling: false,\n isReady: true,\n isCompilationDone: true,\n errors: results.errors,\n warnings: results.warnings,\n };\n const previewServer = this.serversMap[id] || this.pendingServers.get(id);\n const spinnerId = getSpinnerId(id);\n const spinner = this.logger.multiSpinner.spinners[spinnerId];\n if (spinner && spinner.isActive()) {\n const errors = results.errors || [];\n const hasErrors = !!errors.length;\n const warnings = getWarningsWithoutIgnored(results.warnings);\n const hasWarnings = !!warnings.length;\n const url = `http://localhost:${previewServer.port}`;\n const text = getSpinnerDoneMessage(this.serversMap[id], errors, warnings, url, undefined, showInternalUrls);\n if (hasErrors) {\n this.logger.multiSpinner.fail(spinnerId, { text });\n } else if (hasWarnings) {\n this.logger.multiSpinner.warn(spinnerId, { text });\n } else {\n this.logger.multiSpinner.succeed(spinnerId, { text });\n }\n }\n\n const noneAreCompiling = Object.values(this.serversState).every((x) => !x.isCompiling);\n if (noneAreCompiling) this.setReady();\n if (this.serversState[id]?.isPendingPublish) {\n const server = this.serversMap[id];\n if (server) {\n this.serversState[id].isPendingPublish = false;\n this.publishServerStarted(server).catch((err) => {\n this.logger.error(`failed to publish server started event for ${server.context.envRuntime.id}`, err);\n });\n }\n }\n }\n\n private setReady: () => void;\n private readyPromise = new Promise<void>((resolve) => (this.setReady = resolve));\n get whenReady(): Promise<void> {\n return this.readyPromise;\n }\n}\n\nfunction getWarningsWithoutIgnored(warnings?: Error[]): Error[] {\n if (!warnings || !warnings.length) return [];\n const IGNORE_WARNINGS = [\n // Webpack 5+ has no facility to disable this warning.\n // System.import is used in @angular/core for deprecated string-form lazy routes\n /System.import\\(\\) is deprecated and will be removed soon/i,\n // We need to include all the files in the compilation because we don't know what people will use in their compositions\n /is part of the TypeScript compilation but it's unused/i,\n // https://github.com/webpack-contrib/source-map-loader/blob/b2de4249c7431dd8432da607e08f0f65e9d64219/src/index.js#L83\n /Failed to parse source map from/,\n ];\n warnings.filter((warning) => !IGNORE_WARNINGS.find((reg) => warning?.message?.match(reg)));\n return warnings;\n}\n\nfunction getSpinnerId(envId: string) {\n return `preview-${envId}`;\n}\n\nfunction getSpinnerCompilingMessage(server: ComponentServer, verbose = false) {\n const prefix = 'COMPILING';\n const envId = chalk.cyan(server.context.envRuntime.id);\n let includedEnvs = '';\n if (server.context.relatedContexts && server.context.relatedContexts.length > 1) {\n includedEnvs = `on behalf of ${chalk.cyan(stringifyIncludedEnvs(server.context.relatedContexts, verbose))}`;\n }\n return `${prefix} ${envId} ${includedEnvs}`;\n}\n\nfunction getSpinnerDoneMessage(\n server: ComponentServer,\n errors: Error[],\n warnings: Error[],\n url: string,\n verbose = false,\n showInternalUrls?: boolean\n) {\n const hasErrors = !!errors.length;\n const hasWarnings = !!warnings.length;\n const prefix = hasErrors ? 'FAILED' : 'RUNNING';\n const envId = chalk.cyan(server.context.envRuntime.id);\n let includedEnvs = '';\n if (server.context.relatedContexts && server.context.relatedContexts.length > 1) {\n includedEnvs = ` on behalf of ${chalk.cyan(stringifyIncludedEnvs(server.context.relatedContexts, verbose))}`;\n }\n const errorsTxt = hasErrors ? errors.map((err) => err.message).join('\\n') : '';\n const errorsTxtWithTitle = hasErrors ? chalk.red(`\\nErrors:\\n${errorsTxt}`) : '';\n const warningsTxt = hasWarnings ? warnings.map((warning) => warning.message).join('\\n') : '';\n const warningsTxtWithTitle = hasWarnings ? chalk.yellow(`\\nWarnings:\\n${warningsTxt}`) : '';\n\n const urlMessage = hasErrors || !showInternalUrls ? '' : `at ${chalk.cyan(url)}`;\n return `${prefix} ${envId}${includedEnvs} ${urlMessage} ${errorsTxtWithTitle} ${warningsTxtWithTitle}`;\n}\n\nfunction stringifyIncludedEnvs(includedEnvs: string[] = [], verbose = false) {\n if (includedEnvs.length < 2) return '';\n if (includedEnvs.length > 2 && !verbose) return ` ${includedEnvs.length} other envs`;\n return includedEnvs.join(', ');\n}\n"],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
{
|
2
2
|
"name": "@teambit/preview",
|
3
|
-
"version": "1.0.
|
3
|
+
"version": "1.0.651",
|
4
4
|
"homepage": "https://bit.cloud/teambit/preview/preview",
|
5
5
|
"main": "dist/index.js",
|
6
6
|
"componentId": {
|
7
7
|
"scope": "teambit.preview",
|
8
8
|
"name": "preview",
|
9
|
-
"version": "1.0.
|
9
|
+
"version": "1.0.651"
|
10
10
|
},
|
11
11
|
"dependencies": {
|
12
12
|
"mime": "2.5.2",
|
@@ -31,36 +31,36 @@
|
|
31
31
|
"@teambit/bit-error": "0.0.404",
|
32
32
|
"@teambit/preview.cli.dev-server-events-listener": "0.0.1",
|
33
33
|
"@teambit/react.webpack.react-webpack": "1.0.42",
|
34
|
-
"@teambit/express": "0.0.
|
35
|
-
"@teambit/logger": "0.0.
|
34
|
+
"@teambit/express": "0.0.1327",
|
35
|
+
"@teambit/logger": "0.0.1321",
|
36
36
|
"@teambit/ui-foundation.ui.pages.static-error": "0.0.108",
|
37
|
-
"@teambit/builder": "1.0.
|
38
|
-
"@teambit/bundler": "1.0.
|
39
|
-
"@teambit/component": "1.0.
|
40
|
-
"@teambit/preview.ui.component-preview": "1.0.
|
41
|
-
"@teambit/aspect-loader": "1.0.
|
42
|
-
"@teambit/cli": "0.0.
|
43
|
-
"@teambit/dependency-resolver": "1.0.
|
44
|
-
"@teambit/envs": "1.0.
|
37
|
+
"@teambit/builder": "1.0.651",
|
38
|
+
"@teambit/bundler": "1.0.651",
|
39
|
+
"@teambit/component": "1.0.651",
|
40
|
+
"@teambit/preview.ui.component-preview": "1.0.25",
|
41
|
+
"@teambit/aspect-loader": "1.0.651",
|
42
|
+
"@teambit/cli": "0.0.1228",
|
43
|
+
"@teambit/dependency-resolver": "1.0.651",
|
44
|
+
"@teambit/envs": "1.0.651",
|
45
45
|
"@teambit/toolbox.path.to-windows-compatible-path": "0.0.500",
|
46
46
|
"@teambit/legacy.constants": "0.0.12",
|
47
47
|
"@teambit/toolbox.crypto.sha1": "0.0.7",
|
48
|
-
"@teambit/ui": "1.0.
|
49
|
-
"@teambit/isolator": "1.0.
|
48
|
+
"@teambit/ui": "1.0.651",
|
49
|
+
"@teambit/isolator": "1.0.651",
|
50
50
|
"@teambit/harmony.modules.harmony-root-generator": "0.0.18",
|
51
|
-
"@teambit/component.sources": "0.0.
|
51
|
+
"@teambit/component.sources": "0.0.107",
|
52
52
|
"@teambit/toolbox.path.path": "0.0.8",
|
53
|
-
"@teambit/cache": "0.0.
|
54
|
-
"@teambit/graphql": "1.0.
|
53
|
+
"@teambit/cache": "0.0.1321",
|
54
|
+
"@teambit/graphql": "1.0.651",
|
55
55
|
"@teambit/harmony.modules.feature-toggle": "0.0.21",
|
56
|
-
"@teambit/pkg": "1.0.
|
57
|
-
"@teambit/pubsub": "1.0.
|
58
|
-
"@teambit/scope": "1.0.
|
59
|
-
"@teambit/watcher": "1.0.
|
60
|
-
"@teambit/workspace": "1.0.
|
61
|
-
"@teambit/compiler": "1.0.
|
56
|
+
"@teambit/pkg": "1.0.651",
|
57
|
+
"@teambit/pubsub": "1.0.651",
|
58
|
+
"@teambit/scope": "1.0.651",
|
59
|
+
"@teambit/watcher": "1.0.651",
|
60
|
+
"@teambit/workspace": "1.0.651",
|
61
|
+
"@teambit/compiler": "1.0.651",
|
62
62
|
"@teambit/preview.cli.webpack-events-listener": "0.0.177",
|
63
|
-
"@teambit/webpack": "1.0.
|
63
|
+
"@teambit/webpack": "1.0.651"
|
64
64
|
},
|
65
65
|
"devDependencies": {
|
66
66
|
"@types/mime": "2.0.3",
|
package/preview.start-plugin.tsx
CHANGED
@@ -1,5 +1,12 @@
|
|
1
1
|
import { flatten } from 'lodash';
|
2
|
-
import {
|
2
|
+
import {
|
3
|
+
BundlerAspect,
|
4
|
+
BundlerMain,
|
5
|
+
ComponentServer,
|
6
|
+
ComponentServerStartedEvent,
|
7
|
+
ComponentsServerStartedEvent,
|
8
|
+
NewDevServersCreatedEvent,
|
9
|
+
} from '@teambit/bundler';
|
3
10
|
import { PubsubMain } from '@teambit/pubsub';
|
4
11
|
import { ProxyEntry, StartPlugin, StartPluginOptions, UiMain } from '@teambit/ui';
|
5
12
|
import { Workspace } from '@teambit/workspace';
|
@@ -57,10 +64,10 @@ export class PreviewStartPlugin implements StartPlugin {
|
|
57
64
|
|
58
65
|
this.serversState[startedEnvId] = {
|
59
66
|
...this.serversState[startedEnvId],
|
60
|
-
isStarted: true
|
67
|
+
isStarted: true,
|
61
68
|
};
|
62
69
|
|
63
|
-
const index = this.previewServers.findIndex(s => s.context.envRuntime.id === startedEnvId);
|
70
|
+
const index = this.previewServers.findIndex((s) => s.context.envRuntime.id === startedEnvId);
|
64
71
|
if (index >= 0) {
|
65
72
|
this.previewServers[index] = componentServer;
|
66
73
|
} else {
|
@@ -70,16 +77,18 @@ export class PreviewStartPlugin implements StartPlugin {
|
|
70
77
|
const uiServer = this.ui.getUIServer();
|
71
78
|
if (uiServer) {
|
72
79
|
uiServer.addComponentServerProxy(componentServer);
|
73
|
-
|
80
|
+
|
74
81
|
if (wasPending) {
|
75
82
|
if (this.serversState[startedEnvId]?.isCompilationDone) {
|
76
83
|
await this.publishServerStarted(componentServer);
|
77
84
|
} else {
|
78
85
|
this.serversState[startedEnvId] = {
|
79
86
|
...this.serversState[startedEnvId],
|
80
|
-
isPendingPublish: true
|
87
|
+
isPendingPublish: true,
|
81
88
|
};
|
82
|
-
this.logger.console(
|
89
|
+
this.logger.console(
|
90
|
+
`Server ${startedEnvId} started but waiting for compilation to complete before publishing event.`
|
91
|
+
);
|
83
92
|
}
|
84
93
|
}
|
85
94
|
}
|
@@ -95,15 +104,15 @@ export class PreviewStartPlugin implements StartPlugin {
|
|
95
104
|
for (const server of servers) {
|
96
105
|
const envId = server.context.envRuntime.id;
|
97
106
|
this.pendingServers.set(envId, server);
|
98
|
-
|
107
|
+
|
99
108
|
this.serversState[envId] = {
|
100
109
|
isCompiling: false,
|
101
110
|
isReady: false,
|
102
111
|
isStarted: false,
|
103
112
|
isCompilationDone: false,
|
104
|
-
isPendingPublish: false
|
113
|
+
isPendingPublish: false,
|
105
114
|
};
|
106
|
-
|
115
|
+
|
107
116
|
try {
|
108
117
|
// eslint-disable-next-line @typescript-eslint/no-floating-promises
|
109
118
|
server.listen();
|
@@ -121,15 +130,15 @@ export class PreviewStartPlugin implements StartPlugin {
|
|
121
130
|
previewServers.forEach((server) => {
|
122
131
|
const envId = server.context.envRuntime.id;
|
123
132
|
this.serversMap[envId] = server;
|
124
|
-
|
133
|
+
|
125
134
|
this.serversState[envId] = {
|
126
135
|
isCompiling: false,
|
127
136
|
isReady: false,
|
128
137
|
isStarted: false,
|
129
138
|
isCompilationDone: false,
|
130
|
-
isPendingPublish: false
|
139
|
+
isPendingPublish: false,
|
131
140
|
};
|
132
|
-
|
141
|
+
|
133
142
|
// DON'T add wait! this promise never resolves, so it would stop the start process!
|
134
143
|
// eslint-disable-next-line @typescript-eslint/no-floating-promises
|
135
144
|
server.listen();
|
@@ -192,9 +201,9 @@ export class PreviewStartPlugin implements StartPlugin {
|
|
192
201
|
}
|
193
202
|
|
194
203
|
private handleOnStartCompiling(id: string) {
|
195
|
-
this.serversState[id] = {
|
204
|
+
this.serversState[id] = {
|
196
205
|
...this.serversState[id],
|
197
|
-
isCompiling: true
|
206
|
+
isCompiling: true,
|
198
207
|
};
|
199
208
|
const spinnerId = getSpinnerId(id);
|
200
209
|
const text = getSpinnerCompilingMessage(this.serversMap[id] || this.pendingServers.get(id));
|
@@ -238,9 +247,9 @@ export class PreviewStartPlugin implements StartPlugin {
|
|
238
247
|
const server = this.serversMap[id];
|
239
248
|
if (server) {
|
240
249
|
this.serversState[id].isPendingPublish = false;
|
241
|
-
|
250
|
+
this.publishServerStarted(server).catch((err) => {
|
242
251
|
this.logger.error(`failed to publish server started event for ${server.context.envRuntime.id}`, err);
|
243
|
-
|
252
|
+
});
|
244
253
|
}
|
245
254
|
}
|
246
255
|
}
|
@@ -310,4 +319,4 @@ function stringifyIncludedEnvs(includedEnvs: string[] = [], verbose = false) {
|
|
310
319
|
if (includedEnvs.length < 2) return '';
|
311
320
|
if (includedEnvs.length > 2 && !verbose) return ` ${includedEnvs.length} other envs`;
|
312
321
|
return includedEnvs.join(', ');
|
313
|
-
}
|
322
|
+
}
|