@teambit/preview 0.0.695 → 0.0.698
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/dist/env-preview-template.task.js +1 -1
- package/dist/env-preview-template.task.js.map +1 -1
- package/package-tar/teambit-preview-0.0.698.tgz +0 -0
- package/package.json +20 -20
- package/{preview-1648696872583.js → preview-1648981242623.js} +2 -2
- package/package-tar/teambit-preview-0.0.695.tgz +0 -0
|
@@ -166,7 +166,7 @@ class EnvPreviewTemplateTask {
|
|
|
166
166
|
}
|
|
167
167
|
|
|
168
168
|
async runBundlerForGroups(context, groups) {
|
|
169
|
-
const bundlerContext = Object.assign(
|
|
169
|
+
const bundlerContext = Object.assign(context, {
|
|
170
170
|
targets: [],
|
|
171
171
|
entry: [],
|
|
172
172
|
externalizePeer: false,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["env-preview-template.task.ts"],"names":["GENERATE_ENV_TEMPLATE_TASK_NAME","PREVIEW_ROOT_CHUNK_NAME","PEERS_CHUNK_NAME","EnvPreviewTemplateTask","constructor","preview","envs","aspectLoader","execute","context","previewDefs","getDefs","htmlConfig","generateHtmlConfig","dev","originalSeedersIds","capsuleNetwork","originalSeedersCapsules","map","c","component","id","toString","grouped","Promise","all","components","length","includes","undefined","envDef","getEnvFromComponent","env","bundlingStrategy","getBundlingStrategy","name","target","getEnvTargetFromComponent","shouldUseDefaultBundler","envToGetBundler","getEnvsEnvDefinition","groupEnvId","targets","push","componentsResults","runBundlerForGroups","groups","bundlerContext","Object","assign","entry","externalizePeer","development","metaData","initiator","envId","bundlerResults","entries","targetsGroup","bundler","getTemplateBundler","bundlerResult","run","results","computeResults","isCoreEnv","envComponent","envPreviewConfig","getEnvPreviewConfig","isSplitComponentBundle","splitComponentBundle","peers","getHostDependencies","envComponentPeers","keys","getDependencies","peerDependencies","additionalHostDeps","getAdditionalHostDependencies","concat","capsule","graphCapsules","getCapsule","Error","previewRoot","writePreviewRuntime","previewModules","getPreviewModules","outputPath","computeOutputPath","getEntries","runtimeChunkName","html","chunking","splitChunks","previewRootChunkName","peersChunkName","options","htmlConfigs","previewModule","generateHtmlConfigForPreviewDef","previewDef","previewDeps","include","chunks","prefix","includePeers","unshift","config","title","templateContent","minify","filename","previewRootEntry","import","peersRootEntry","reduce","acc","module","linkFile","writeLink","ComponentMap","create","path","dependOn","allResults","result","errors","err","message","warning","warnings","startTime","endTime","artifacts","getArtifactDef","modules","def","renderTemplatePathByEnv","getArtifactDirectory","CAPSULE_ARTIFACTS_DIR","globPatterns","rootDir"],"mappings":"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","sourcesContent":["import {\n BuildContext,\n BuiltTaskResult,\n BuildTask,\n TaskLocation,\n ComponentResult,\n CAPSULE_ARTIFACTS_DIR,\n} from '@teambit/builder';\nimport mapSeries from 'p-map-series';\nimport { Component, ComponentMap } from '@teambit/component';\nimport { AspectLoaderMain } from '@teambit/aspect-loader';\nimport { Capsule } from '@teambit/isolator';\nimport { Bundler, BundlerContext, BundlerEntryMap, BundlerHtmlConfig, BundlerResult, Target } from '@teambit/bundler';\nimport type { EnvDefinition, Environment, EnvsMain } from '@teambit/envs';\nimport { join } from 'path';\nimport { cloneDeep, compact, flatten, isEmpty } from 'lodash';\nimport { existsSync, mkdirpSync } from 'fs-extra';\nimport type { PreviewMain } from './preview.main.runtime';\nimport { PreviewDefinition } from '.';\nimport { html } from './webpack';\n\nexport type ModuleExpose = {\n name: string;\n path: string;\n include?: string[];\n};\n\ntype TargetsGroup = {\n env: Environment;\n targets: Target[];\n};\ntype TargetsGroupMap = {\n [envId: string]: TargetsGroup;\n};\n\nexport const GENERATE_ENV_TEMPLATE_TASK_NAME = 'GenerateEnvTemplate';\nexport const PREVIEW_ROOT_CHUNK_NAME = 'previewRoot';\nexport const PEERS_CHUNK_NAME = 'peers';\n\nexport class EnvPreviewTemplateTask implements BuildTask {\n aspectId = 'teambit.preview/preview';\n name = GENERATE_ENV_TEMPLATE_TASK_NAME;\n location: TaskLocation = 'end';\n // readonly dependencies = [CompilerAspect.id];\n\n constructor(private preview: PreviewMain, private envs: EnvsMain, private aspectLoader: AspectLoaderMain) {}\n\n async execute(context: BuildContext): Promise<BuiltTaskResult> {\n const previewDefs = this.preview.getDefs();\n const htmlConfig = this.generateHtmlConfig(previewDefs, PREVIEW_ROOT_CHUNK_NAME, PEERS_CHUNK_NAME, {\n dev: context.dev,\n });\n const originalSeedersIds = context.capsuleNetwork.originalSeedersCapsules.map((c) => c.component.id.toString());\n const grouped: TargetsGroupMap = {};\n await Promise.all(\n context.components.map(async (component) => {\n // Do not run over other components in the graph. it make the process much longer with no need\n if (originalSeedersIds && originalSeedersIds.length && !originalSeedersIds.includes(component.id.toString())) {\n return undefined;\n }\n const envDef = this.envs.getEnvFromComponent(component);\n if (!envDef) return undefined;\n const env = envDef.env;\n const bundlingStrategy = this.preview.getBundlingStrategy(envDef.env);\n if (bundlingStrategy.name === 'env') {\n return undefined;\n }\n const target = await this.getEnvTargetFromComponent(context, component, envDef, htmlConfig);\n if (!target) return undefined;\n const shouldUseDefaultBundler = this.shouldUseDefaultBundler(envDef);\n let envToGetBundler = this.envs.getEnvsEnvDefinition().env;\n let groupEnvId = 'default';\n if (!shouldUseDefaultBundler) {\n envToGetBundler = env;\n groupEnvId = envDef.id;\n }\n if (!grouped[groupEnvId]) {\n grouped[groupEnvId] = {\n env: envToGetBundler,\n targets: [target],\n };\n } else {\n grouped[groupEnvId].targets.push(target);\n }\n return undefined;\n })\n );\n if (isEmpty(grouped)) {\n return { componentsResults: [] };\n }\n\n return this.runBundlerForGroups(context, grouped);\n }\n\n private async runBundlerForGroups(context: BuildContext, groups: TargetsGroupMap): Promise<BuiltTaskResult> {\n const bundlerContext: BundlerContext = Object.assign(cloneDeep(context), {\n targets: [],\n entry: [],\n externalizePeer: false,\n development: context.dev,\n metaData: {\n initiator: `${GENERATE_ENV_TEMPLATE_TASK_NAME} task`,\n envId: context.id,\n },\n });\n const bundlerResults = await mapSeries(Object.entries(groups), async ([, targetsGroup]) => {\n bundlerContext.targets = targetsGroup.targets;\n const bundler: Bundler = await targetsGroup.env.getTemplateBundler(bundlerContext);\n const bundlerResult = await bundler.run();\n return bundlerResult;\n });\n\n const results = await this.computeResults(bundlerContext, flatten(bundlerResults));\n return results;\n }\n\n private shouldUseDefaultBundler(envDef: EnvDefinition): boolean {\n if (this.aspectLoader.isCoreEnv(envDef.id)) return true;\n const env = envDef.env;\n if (env.getTemplateBundler && typeof env.getTemplateBundler === 'function') return false;\n return true;\n }\n\n private async getEnvTargetFromComponent(\n context: BuildContext,\n envComponent: Component,\n envDef: EnvDefinition,\n htmlConfig: BundlerHtmlConfig[]\n ): Promise<Target | undefined> {\n const env = envDef.env;\n const envPreviewConfig = this.preview.getEnvPreviewConfig(envDef.env);\n const isSplitComponentBundle = envPreviewConfig.splitComponentBundle ?? false;\n let peers;\n if (env.getHostDependencies && typeof env.getHostDependencies === 'function') {\n peers = (await env.getHostDependencies()) || [];\n } else {\n const envComponentPeers = Object.keys((await env.getDependencies()).peerDependencies || {}) || [];\n let additionalHostDeps = [];\n if (env.getAdditionalHostDependencies && typeof env.getAdditionalHostDependencies === 'function') {\n additionalHostDeps = await env.getAdditionalHostDependencies();\n }\n peers = envComponentPeers.concat(additionalHostDeps);\n }\n\n // const module = await this.getPreviewModule(envComponent);\n // const entries = Object.keys(module).map((key) => module.exposes[key]);\n const capsule = context.capsuleNetwork.graphCapsules.getCapsule(envComponent.id);\n if (!capsule) throw new Error('no capsule found');\n // Passing here the env itself to make sure it's preview runtime will be part of the preview root file\n // that's needed to make sure the providers register there are running correctly\n const previewRoot = await this.preview.writePreviewRuntime(context, [envComponent.id.toString()]);\n const previewModules = await this.getPreviewModules(envDef);\n // const templatesFile = previewModules.map((template) => {\n // return this.preview.writeLink(template.name, ComponentMap.create([]), template.path, capsule.path);\n // });\n const outputPath = this.computeOutputPath(context, envComponent);\n if (!existsSync(outputPath)) mkdirpSync(outputPath);\n const entries = this.getEntries(previewModules, capsule, previewRoot, isSplitComponentBundle, peers);\n\n return {\n peers,\n runtimeChunkName: 'runtime',\n html: htmlConfig,\n entries,\n chunking: {\n splitChunks: true,\n },\n components: [envComponent],\n outputPath,\n };\n }\n\n private generateHtmlConfig(\n previewDefs: PreviewDefinition[],\n previewRootChunkName: string,\n peersChunkName: string,\n options: { dev?: boolean }\n ): BundlerHtmlConfig[] {\n const htmlConfigs = previewDefs.map((previewModule) =>\n this.generateHtmlConfigForPreviewDef(previewModule, previewRootChunkName, peersChunkName, options)\n );\n return htmlConfigs;\n }\n\n private generateHtmlConfigForPreviewDef(\n previewDef: PreviewDefinition,\n previewRootChunkName: string,\n peersChunkName: string,\n options: { dev?: boolean }\n ): BundlerHtmlConfig {\n const previewDeps = previewDef.include || [];\n const chunks = [...previewDeps, previewDef.prefix, previewRootChunkName];\n if (previewDef.includePeers) {\n chunks.unshift(peersChunkName);\n }\n\n const config = {\n title: 'Preview',\n templateContent: html('Preview'),\n minify: options?.dev ?? true,\n chunks,\n filename: `${previewDef.prefix}.html`,\n };\n return config;\n }\n\n getEntries(\n previewModules: ModuleExpose[],\n capsule: Capsule,\n previewRoot: string,\n isSplitComponentBundle = false,\n peers: string[] = []\n ): BundlerEntryMap {\n const previewRootEntry = {\n filename: 'preview-root.[chunkhash].js',\n import: previewRoot,\n };\n\n const peersRootEntry = {\n filename: 'peers.[chunkhash].js',\n import: peers,\n };\n\n const entries = previewModules.reduce(\n (acc, module) => {\n const linkFile = this.preview.writeLink(\n module.name,\n ComponentMap.create([]),\n module.path,\n capsule.path,\n isSplitComponentBundle\n );\n acc[module.name] = {\n // filename: `${module.name}.[contenthash].js`,\n filename: `${module.name}.[chunkhash].js`,\n // filename: `${module.name}.js`,\n import: linkFile,\n // library: {\n // name: module.name,\n // type: 'umd',\n // },\n };\n if (module.include) {\n acc[module.name].dependOn = module.include;\n }\n return acc;\n },\n { [PREVIEW_ROOT_CHUNK_NAME]: previewRootEntry, [PEERS_CHUNK_NAME]: peersRootEntry }\n );\n\n return entries;\n }\n\n async computeResults(context: BundlerContext, results: BundlerResult[]) {\n const allResults = results.map((result) => {\n const componentsResults: ComponentResult[] = result.components.map((component) => {\n return {\n component,\n errors: result.errors.map((err) => (typeof err === 'string' ? err : err.message)),\n warning: result.warnings,\n startTime: result.startTime,\n endTime: result.endTime,\n };\n });\n return componentsResults;\n });\n\n const componentsResults = flatten(allResults);\n\n const artifacts = getArtifactDef();\n\n return {\n componentsResults,\n artifacts,\n };\n }\n\n async getPreviewModules(envDef: EnvDefinition): Promise<ModuleExpose[]> {\n const previewDefs = this.preview.getDefs();\n\n const modules = compact(\n await Promise.all(\n previewDefs.map(async (def) => {\n if (!def.renderTemplatePathByEnv) return undefined;\n return {\n name: def.prefix,\n path: await def.renderTemplatePathByEnv(envDef.env),\n include: def.include,\n };\n })\n )\n );\n\n return modules;\n }\n\n private computeOutputPath(context: BuildContext, component: Component) {\n const capsule = context.capsuleNetwork.graphCapsules.getCapsule(component.id);\n if (!capsule) throw new Error('no capsule found');\n return join(capsule.path, getArtifactDirectory());\n }\n}\n\nexport function getArtifactDirectory() {\n return join(CAPSULE_ARTIFACTS_DIR, 'env-template');\n}\n\nexport function getArtifactDef() {\n return [\n {\n name: 'env-template',\n globPatterns: ['**'],\n rootDir: getArtifactDirectory(),\n },\n ];\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["env-preview-template.task.ts"],"names":["GENERATE_ENV_TEMPLATE_TASK_NAME","PREVIEW_ROOT_CHUNK_NAME","PEERS_CHUNK_NAME","EnvPreviewTemplateTask","constructor","preview","envs","aspectLoader","execute","context","previewDefs","getDefs","htmlConfig","generateHtmlConfig","dev","originalSeedersIds","capsuleNetwork","originalSeedersCapsules","map","c","component","id","toString","grouped","Promise","all","components","length","includes","undefined","envDef","getEnvFromComponent","env","bundlingStrategy","getBundlingStrategy","name","target","getEnvTargetFromComponent","shouldUseDefaultBundler","envToGetBundler","getEnvsEnvDefinition","groupEnvId","targets","push","componentsResults","runBundlerForGroups","groups","bundlerContext","Object","assign","entry","externalizePeer","development","metaData","initiator","envId","bundlerResults","entries","targetsGroup","bundler","getTemplateBundler","bundlerResult","run","results","computeResults","isCoreEnv","envComponent","envPreviewConfig","getEnvPreviewConfig","isSplitComponentBundle","splitComponentBundle","peers","getHostDependencies","envComponentPeers","keys","getDependencies","peerDependencies","additionalHostDeps","getAdditionalHostDependencies","concat","capsule","graphCapsules","getCapsule","Error","previewRoot","writePreviewRuntime","previewModules","getPreviewModules","outputPath","computeOutputPath","getEntries","runtimeChunkName","html","chunking","splitChunks","previewRootChunkName","peersChunkName","options","htmlConfigs","previewModule","generateHtmlConfigForPreviewDef","previewDef","previewDeps","include","chunks","prefix","includePeers","unshift","config","title","templateContent","minify","filename","previewRootEntry","import","peersRootEntry","reduce","acc","module","linkFile","writeLink","ComponentMap","create","path","dependOn","allResults","result","errors","err","message","warning","warnings","startTime","endTime","artifacts","getArtifactDef","modules","def","renderTemplatePathByEnv","getArtifactDirectory","CAPSULE_ARTIFACTS_DIR","globPatterns","rootDir"],"mappings":"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","sourcesContent":["import {\n BuildContext,\n BuiltTaskResult,\n BuildTask,\n TaskLocation,\n ComponentResult,\n CAPSULE_ARTIFACTS_DIR,\n} from '@teambit/builder';\nimport mapSeries from 'p-map-series';\nimport { Component, ComponentMap } from '@teambit/component';\nimport { AspectLoaderMain } from '@teambit/aspect-loader';\nimport { Capsule } from '@teambit/isolator';\nimport { Bundler, BundlerContext, BundlerEntryMap, BundlerHtmlConfig, BundlerResult, Target } from '@teambit/bundler';\nimport type { EnvDefinition, Environment, EnvsMain } from '@teambit/envs';\nimport { join } from 'path';\nimport { compact, flatten, isEmpty } from 'lodash';\nimport { existsSync, mkdirpSync } from 'fs-extra';\nimport type { PreviewMain } from './preview.main.runtime';\nimport { PreviewDefinition } from '.';\nimport { html } from './webpack';\n\nexport type ModuleExpose = {\n name: string;\n path: string;\n include?: string[];\n};\n\ntype TargetsGroup = {\n env: Environment;\n targets: Target[];\n};\ntype TargetsGroupMap = {\n [envId: string]: TargetsGroup;\n};\n\nexport const GENERATE_ENV_TEMPLATE_TASK_NAME = 'GenerateEnvTemplate';\nexport const PREVIEW_ROOT_CHUNK_NAME = 'previewRoot';\nexport const PEERS_CHUNK_NAME = 'peers';\n\nexport class EnvPreviewTemplateTask implements BuildTask {\n aspectId = 'teambit.preview/preview';\n name = GENERATE_ENV_TEMPLATE_TASK_NAME;\n location: TaskLocation = 'end';\n // readonly dependencies = [CompilerAspect.id];\n\n constructor(private preview: PreviewMain, private envs: EnvsMain, private aspectLoader: AspectLoaderMain) {}\n\n async execute(context: BuildContext): Promise<BuiltTaskResult> {\n const previewDefs = this.preview.getDefs();\n const htmlConfig = this.generateHtmlConfig(previewDefs, PREVIEW_ROOT_CHUNK_NAME, PEERS_CHUNK_NAME, {\n dev: context.dev,\n });\n const originalSeedersIds = context.capsuleNetwork.originalSeedersCapsules.map((c) => c.component.id.toString());\n const grouped: TargetsGroupMap = {};\n await Promise.all(\n context.components.map(async (component) => {\n // Do not run over other components in the graph. it make the process much longer with no need\n if (originalSeedersIds && originalSeedersIds.length && !originalSeedersIds.includes(component.id.toString())) {\n return undefined;\n }\n const envDef = this.envs.getEnvFromComponent(component);\n if (!envDef) return undefined;\n const env = envDef.env;\n const bundlingStrategy = this.preview.getBundlingStrategy(envDef.env);\n if (bundlingStrategy.name === 'env') {\n return undefined;\n }\n const target = await this.getEnvTargetFromComponent(context, component, envDef, htmlConfig);\n if (!target) return undefined;\n const shouldUseDefaultBundler = this.shouldUseDefaultBundler(envDef);\n let envToGetBundler = this.envs.getEnvsEnvDefinition().env;\n let groupEnvId = 'default';\n if (!shouldUseDefaultBundler) {\n envToGetBundler = env;\n groupEnvId = envDef.id;\n }\n if (!grouped[groupEnvId]) {\n grouped[groupEnvId] = {\n env: envToGetBundler,\n targets: [target],\n };\n } else {\n grouped[groupEnvId].targets.push(target);\n }\n return undefined;\n })\n );\n if (isEmpty(grouped)) {\n return { componentsResults: [] };\n }\n\n return this.runBundlerForGroups(context, grouped);\n }\n\n private async runBundlerForGroups(context: BuildContext, groups: TargetsGroupMap): Promise<BuiltTaskResult> {\n const bundlerContext: BundlerContext = Object.assign(context, {\n targets: [],\n entry: [],\n externalizePeer: false,\n development: context.dev,\n metaData: {\n initiator: `${GENERATE_ENV_TEMPLATE_TASK_NAME} task`,\n envId: context.id,\n },\n });\n const bundlerResults = await mapSeries(Object.entries(groups), async ([, targetsGroup]) => {\n bundlerContext.targets = targetsGroup.targets;\n const bundler: Bundler = await targetsGroup.env.getTemplateBundler(bundlerContext);\n const bundlerResult = await bundler.run();\n return bundlerResult;\n });\n\n const results = await this.computeResults(bundlerContext, flatten(bundlerResults));\n return results;\n }\n\n private shouldUseDefaultBundler(envDef: EnvDefinition): boolean {\n if (this.aspectLoader.isCoreEnv(envDef.id)) return true;\n const env = envDef.env;\n if (env.getTemplateBundler && typeof env.getTemplateBundler === 'function') return false;\n return true;\n }\n\n private async getEnvTargetFromComponent(\n context: BuildContext,\n envComponent: Component,\n envDef: EnvDefinition,\n htmlConfig: BundlerHtmlConfig[]\n ): Promise<Target | undefined> {\n const env = envDef.env;\n const envPreviewConfig = this.preview.getEnvPreviewConfig(envDef.env);\n const isSplitComponentBundle = envPreviewConfig.splitComponentBundle ?? false;\n let peers;\n if (env.getHostDependencies && typeof env.getHostDependencies === 'function') {\n peers = (await env.getHostDependencies()) || [];\n } else {\n const envComponentPeers = Object.keys((await env.getDependencies()).peerDependencies || {}) || [];\n let additionalHostDeps = [];\n if (env.getAdditionalHostDependencies && typeof env.getAdditionalHostDependencies === 'function') {\n additionalHostDeps = await env.getAdditionalHostDependencies();\n }\n peers = envComponentPeers.concat(additionalHostDeps);\n }\n\n // const module = await this.getPreviewModule(envComponent);\n // const entries = Object.keys(module).map((key) => module.exposes[key]);\n const capsule = context.capsuleNetwork.graphCapsules.getCapsule(envComponent.id);\n if (!capsule) throw new Error('no capsule found');\n // Passing here the env itself to make sure it's preview runtime will be part of the preview root file\n // that's needed to make sure the providers register there are running correctly\n const previewRoot = await this.preview.writePreviewRuntime(context, [envComponent.id.toString()]);\n const previewModules = await this.getPreviewModules(envDef);\n // const templatesFile = previewModules.map((template) => {\n // return this.preview.writeLink(template.name, ComponentMap.create([]), template.path, capsule.path);\n // });\n const outputPath = this.computeOutputPath(context, envComponent);\n if (!existsSync(outputPath)) mkdirpSync(outputPath);\n const entries = this.getEntries(previewModules, capsule, previewRoot, isSplitComponentBundle, peers);\n\n return {\n peers,\n runtimeChunkName: 'runtime',\n html: htmlConfig,\n entries,\n chunking: {\n splitChunks: true,\n },\n components: [envComponent],\n outputPath,\n };\n }\n\n private generateHtmlConfig(\n previewDefs: PreviewDefinition[],\n previewRootChunkName: string,\n peersChunkName: string,\n options: { dev?: boolean }\n ): BundlerHtmlConfig[] {\n const htmlConfigs = previewDefs.map((previewModule) =>\n this.generateHtmlConfigForPreviewDef(previewModule, previewRootChunkName, peersChunkName, options)\n );\n return htmlConfigs;\n }\n\n private generateHtmlConfigForPreviewDef(\n previewDef: PreviewDefinition,\n previewRootChunkName: string,\n peersChunkName: string,\n options: { dev?: boolean }\n ): BundlerHtmlConfig {\n const previewDeps = previewDef.include || [];\n const chunks = [...previewDeps, previewDef.prefix, previewRootChunkName];\n if (previewDef.includePeers) {\n chunks.unshift(peersChunkName);\n }\n\n const config = {\n title: 'Preview',\n templateContent: html('Preview'),\n minify: options?.dev ?? true,\n chunks,\n filename: `${previewDef.prefix}.html`,\n };\n return config;\n }\n\n getEntries(\n previewModules: ModuleExpose[],\n capsule: Capsule,\n previewRoot: string,\n isSplitComponentBundle = false,\n peers: string[] = []\n ): BundlerEntryMap {\n const previewRootEntry = {\n filename: 'preview-root.[chunkhash].js',\n import: previewRoot,\n };\n\n const peersRootEntry = {\n filename: 'peers.[chunkhash].js',\n import: peers,\n };\n\n const entries = previewModules.reduce(\n (acc, module) => {\n const linkFile = this.preview.writeLink(\n module.name,\n ComponentMap.create([]),\n module.path,\n capsule.path,\n isSplitComponentBundle\n );\n acc[module.name] = {\n // filename: `${module.name}.[contenthash].js`,\n filename: `${module.name}.[chunkhash].js`,\n // filename: `${module.name}.js`,\n import: linkFile,\n // library: {\n // name: module.name,\n // type: 'umd',\n // },\n };\n if (module.include) {\n acc[module.name].dependOn = module.include;\n }\n return acc;\n },\n { [PREVIEW_ROOT_CHUNK_NAME]: previewRootEntry, [PEERS_CHUNK_NAME]: peersRootEntry }\n );\n\n return entries;\n }\n\n async computeResults(context: BundlerContext, results: BundlerResult[]) {\n const allResults = results.map((result) => {\n const componentsResults: ComponentResult[] = result.components.map((component) => {\n return {\n component,\n errors: result.errors.map((err) => (typeof err === 'string' ? err : err.message)),\n warning: result.warnings,\n startTime: result.startTime,\n endTime: result.endTime,\n };\n });\n return componentsResults;\n });\n\n const componentsResults = flatten(allResults);\n\n const artifacts = getArtifactDef();\n\n return {\n componentsResults,\n artifacts,\n };\n }\n\n async getPreviewModules(envDef: EnvDefinition): Promise<ModuleExpose[]> {\n const previewDefs = this.preview.getDefs();\n\n const modules = compact(\n await Promise.all(\n previewDefs.map(async (def) => {\n if (!def.renderTemplatePathByEnv) return undefined;\n return {\n name: def.prefix,\n path: await def.renderTemplatePathByEnv(envDef.env),\n include: def.include,\n };\n })\n )\n );\n\n return modules;\n }\n\n private computeOutputPath(context: BuildContext, component: Component) {\n const capsule = context.capsuleNetwork.graphCapsules.getCapsule(component.id);\n if (!capsule) throw new Error('no capsule found');\n return join(capsule.path, getArtifactDirectory());\n }\n}\n\nexport function getArtifactDirectory() {\n return join(CAPSULE_ARTIFACTS_DIR, 'env-template');\n}\n\nexport function getArtifactDef() {\n return [\n {\n name: 'env-template',\n globPatterns: ['**'],\n rootDir: getArtifactDirectory(),\n },\n ];\n}\n"]}
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@teambit/preview",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.698",
|
|
4
4
|
"homepage": "https://bit.dev/teambit/preview/preview",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"componentId": {
|
|
7
7
|
"scope": "teambit.preview",
|
|
8
8
|
"name": "preview",
|
|
9
|
-
"version": "0.0.
|
|
9
|
+
"version": "0.0.698"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"mime": "2.5.2",
|
|
@@ -21,26 +21,26 @@
|
|
|
21
21
|
"graphql-request": "3.4.0",
|
|
22
22
|
"@babel/runtime": "7.12.18",
|
|
23
23
|
"core-js": "^3.0.0",
|
|
24
|
-
"@teambit/express": "0.0.
|
|
25
|
-
"@teambit/logger": "0.0.
|
|
24
|
+
"@teambit/express": "0.0.561",
|
|
25
|
+
"@teambit/logger": "0.0.557",
|
|
26
26
|
"@teambit/ui-foundation.ui.pages.static-error": "0.0.72",
|
|
27
|
-
"@teambit/builder": "0.0.
|
|
28
|
-
"@teambit/bundler": "0.0.
|
|
29
|
-
"@teambit/component": "0.0.
|
|
30
|
-
"@teambit/aspect-loader": "0.0.
|
|
31
|
-
"@teambit/envs": "0.0.
|
|
32
|
-
"@teambit/isolator": "0.0.
|
|
27
|
+
"@teambit/builder": "0.0.698",
|
|
28
|
+
"@teambit/bundler": "0.0.698",
|
|
29
|
+
"@teambit/component": "0.0.698",
|
|
30
|
+
"@teambit/aspect-loader": "0.0.698",
|
|
31
|
+
"@teambit/envs": "0.0.698",
|
|
32
|
+
"@teambit/isolator": "0.0.698",
|
|
33
33
|
"@teambit/toolbox.path.to-windows-compatible-path": "0.0.483",
|
|
34
34
|
"@teambit/component-id": "0.0.402",
|
|
35
35
|
"@teambit/bit-error": "0.0.394",
|
|
36
|
-
"@teambit/cli": "0.0.
|
|
37
|
-
"@teambit/dependency-resolver": "0.0.
|
|
38
|
-
"@teambit/graphql": "0.0.
|
|
39
|
-
"@teambit/pkg": "0.0.
|
|
40
|
-
"@teambit/pubsub": "0.0.
|
|
41
|
-
"@teambit/ui": "0.0.
|
|
42
|
-
"@teambit/workspace": "0.0.
|
|
43
|
-
"@teambit/compiler": "0.0.
|
|
36
|
+
"@teambit/cli": "0.0.465",
|
|
37
|
+
"@teambit/dependency-resolver": "0.0.698",
|
|
38
|
+
"@teambit/graphql": "0.0.698",
|
|
39
|
+
"@teambit/pkg": "0.0.698",
|
|
40
|
+
"@teambit/pubsub": "0.0.698",
|
|
41
|
+
"@teambit/ui": "0.0.698",
|
|
42
|
+
"@teambit/workspace": "0.0.698",
|
|
43
|
+
"@teambit/compiler": "0.0.698",
|
|
44
44
|
"@teambit/preview.cli.preview-server-status": "0.0.491",
|
|
45
45
|
"@teambit/preview.cli.webpack-events-listener": "0.0.161"
|
|
46
46
|
},
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
"@teambit/preview.aspect-docs.preview": "0.0.136"
|
|
60
60
|
},
|
|
61
61
|
"peerDependencies": {
|
|
62
|
-
"@teambit/legacy": "1.0.
|
|
62
|
+
"@teambit/legacy": "1.0.243",
|
|
63
63
|
"react-dom": "^16.8.0 || ^17.0.0",
|
|
64
64
|
"react": "^16.8.0 || ^17.0.0"
|
|
65
65
|
},
|
|
@@ -87,7 +87,7 @@
|
|
|
87
87
|
"react": "-"
|
|
88
88
|
},
|
|
89
89
|
"peerDependencies": {
|
|
90
|
-
"@teambit/legacy": "1.0.
|
|
90
|
+
"@teambit/legacy": "1.0.243",
|
|
91
91
|
"react-dom": "^16.8.0 || ^17.0.0",
|
|
92
92
|
"react": "^16.8.0 || ^17.0.0"
|
|
93
93
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const compositions = [require('/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.preview_preview@0.0.
|
|
2
|
-
export const overview = [require('/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.preview_preview@0.0.
|
|
1
|
+
export const compositions = [require('/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.preview_preview@0.0.698/dist/preview.composition.js')]
|
|
2
|
+
export const overview = [require('/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.preview_preview@0.0.698/dist/preview.docs.mdx')]
|
|
Binary file
|