@teambit/preview 1.0.1099 → 1.0.1102

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.
@@ -35,6 +35,13 @@ function _fsExtra() {
35
35
  };
36
36
  return data;
37
37
  }
38
+ function _legacy() {
39
+ const data = require("@teambit/legacy.logger");
40
+ _legacy = function () {
41
+ return data;
42
+ };
43
+ return data;
44
+ }
38
45
  function _harmonyModules() {
39
46
  const data = require("@teambit/harmony.modules.harmony-root-generator");
40
47
  _harmonyModules = function () {
@@ -160,14 +167,43 @@ async function buildPreBundlePreview(resolvedAspects, customOutputDir) {
160
167
  const mainEntry = generatePreBundlePreviewEntry(resolvedAspects, UIROOT_ASPECT_ID, RUNTIME_NAME, _preview().PreviewAspect.id, __dirname);
161
168
  const config = (0, _rspack().createRspackConfig)(outputDir, mainEntry);
162
169
  const compiler = (0, _core().rspack)(config);
163
- const compilerRun = (0, _util().promisify)(compiler.run.bind(compiler));
164
- const results = await compilerRun();
165
- if (!results) throw new Error();
166
- if (results?.hasErrors()) {
167
- (0, _preBundleUtils().clearConsole)();
168
- throw new Error(results?.toString({}));
170
+ try {
171
+ const compilerRun = (0, _util().promisify)(compiler.run.bind(compiler));
172
+ const results = await compilerRun();
173
+ if (!results) throw new Error();
174
+ if (results?.hasErrors()) {
175
+ (0, _preBundleUtils().clearConsole)();
176
+ throw new Error(results?.toString({}));
177
+ }
178
+ return results;
179
+ } finally {
180
+ await closeRspackCompiler(compiler);
181
+ }
182
+ }
183
+
184
+ /**
185
+ * Release the compiler's module graph, and rspack's native side of it, as soon as the bundle is
186
+ * done. Both callers keep the process alive well past this point: the PreBundlePreview build task
187
+ * runs once per env inside a `bit build` that runs every task in one process, and `bit start`
188
+ * pre-bundles on demand in a server that then keeps running.
189
+ *
190
+ * Never throws - it runs from a `finally`, and a cleanup failure must not replace the build error
191
+ * that sent us there. A failure is logged rather than swallowed, otherwise a compiler that never
192
+ * releases looks exactly like one that does.
193
+ */
194
+ async function closeRspackCompiler(compiler) {
195
+ const close = compiler.close;
196
+ if (typeof close !== 'function') return;
197
+ try {
198
+ await new Promise(done => {
199
+ close.call(compiler, err => {
200
+ if (err) _legacy().logger.debug(`failed closing the preview rspack compiler: ${err.message || err}`);
201
+ done();
202
+ });
203
+ });
204
+ } catch (err) {
205
+ _legacy().logger.debug(`failed closing the preview rspack compiler: ${err?.message || err}`);
169
206
  }
170
- return results;
171
207
  }
172
208
  async function generateBundlePreviewEntry(rootAspectId, previewPreBundlePath, config) {
173
209
  const manifestPath = (0, _path().join)(previewPreBundlePath, 'asset-manifest.json');
@@ -1 +1 @@
1
- {"version":3,"names":["_path","data","require","_util","_core","_fsExtra","_interopRequireWildcard","_harmonyModules","_toolboxCrypto","_normalizePath","_interopRequireDefault","_preview","_preBundleUtils","_mkTempDir","_rspack","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","previewDistDir","getPreviewDistDir","RUNTIME_NAME","exports","PUBLIC_DIR","join","UIROOT_ASPECT_ID","ENTRY_CONTENT_TEMPLATE","generatePreBundlePreviewEntry","aspectDefs","rootExtensionName","runtimeName","rootAspectId","dir","harmonyImport","createHarmonyImports","imports","createImports","identifiers","getIdentifiers","idSetters","getIdSetters","contents","replace","replaceAll","JSON","stringify","entryPath","resolve","sha1","fs","existsSync","outputFileSync","buildPreBundlePreview","resolvedAspects","customOutputDir","outputDir","mainEntry","PreviewAspect","id","__dirname","config","createRspackConfig","compiler","rspack","compilerRun","promisify","run","bind","results","Error","hasErrors","clearConsole","toString","generateBundlePreviewEntry","previewPreBundlePath","manifestPath","manifest","readJsonSync","entrypoints","map","entry","normalizePath","endsWith","previewRuntime"],"sources":["pre-bundle.ts"],"sourcesContent":["import { join, resolve } from 'path';\nimport { promisify } from 'util';\nimport { rspack } from '@rspack/core';\nimport fs, { existsSync, outputFileSync, readJsonSync } from 'fs-extra';\nimport type { AspectDefinition } from '@teambit/aspect-loader';\nimport {\n createHarmonyImports,\n createImports,\n getIdSetters,\n getIdentifiers,\n} from '@teambit/harmony.modules.harmony-root-generator';\nimport { sha1 } from '@teambit/toolbox.crypto.sha1';\nimport normalizePath from 'normalize-path';\nimport { PreviewAspect } from './preview.aspect';\nimport { clearConsole } from './pre-bundle-utils';\nimport { getPreviewDistDir } from './mk-temp-dir';\nimport { createRspackConfig } from './rspack/rspack.config';\n\nconst previewDistDir = getPreviewDistDir();\n\nexport const RUNTIME_NAME = 'preview';\nexport const PUBLIC_DIR = join('public', 'bit-preview');\nexport const UIROOT_ASPECT_ID = 'teambit.workspace/workspace';\n\nconst ENTRY_CONTENT_TEMPLATE = `__IMPORTS__\n\nexport const run = (config, customAspects = []) => {\n const isBrowser = typeof window !== \"undefined\";\n const windowConfig = isBrowser ? window.harmonyAppConfig : undefined;\n const mergedConfig = { ...config, ...windowConfig };\n __ID_SETTERS__\n function render(...props) {\n return Harmony.load(\n [\n ...customAspects,\n __IDENTIFIERS__,\n ],\n __RUNTIME_NAME__,\n mergedConfig\n ).then((harmony) => {\n return harmony\n .run()\n .then(() => harmony.get(__ROOT_ASPECT__))\n .then((rootExtension) => {\n const ssrSetup = !isBrowser && rootExtension.setupSsr;\n const setup = rootExtension.setup;\n const setupFunc = (ssrSetup || setup || function noop() {}).bind(\n rootExtension\n );\n return Promise.resolve(setupFunc()).then(\n () => {\n return rootExtension\n }\n );\n })\n .then((rootExtension) => {\n if (isBrowser) {\n return rootExtension.render(\n __ROOT_EXTENSION_NAME__,\n ...props\n );\n } else {\n return rootExtension.renderSsr(\n __ROOT_EXTENSION_NAME__,\n ...props\n );\n }\n })\n .catch((err) => {\n throw err;\n });\n });\n }\n if (isBrowser || __RUNTIME_NAME__ === \"main\") render();\n};\n`;\n\nexport const generatePreBundlePreviewEntry = (\n aspectDefs: AspectDefinition[],\n rootExtensionName: string,\n runtimeName: string,\n rootAspectId: string,\n dir: string\n) => {\n const harmonyImport = createHarmonyImports();\n const imports = createImports(aspectDefs);\n const identifiers = getIdentifiers(aspectDefs, 'Aspect');\n const idSetters = getIdSetters(aspectDefs, 'Aspect');\n const contents = ENTRY_CONTENT_TEMPLATE.replace('__IMPORTS__', [harmonyImport, imports].join('\\n'))\n .replace('__IDENTIFIERS__', identifiers.join(', '))\n .replace('__ID_SETTERS__', idSetters.join('\\n'))\n .replaceAll('__RUNTIME_NAME__', JSON.stringify(runtimeName))\n .replaceAll('__ROOT_ASPECT__', JSON.stringify(rootAspectId))\n .replaceAll('__ROOT_EXTENSION_NAME__', JSON.stringify(rootExtensionName));\n const entryPath = resolve(join(dir, `ui-bundle-entry.${sha1(contents)}.js`));\n if (!fs.existsSync(entryPath)) {\n fs.outputFileSync(entryPath, contents);\n }\n return entryPath;\n};\n\nexport async function buildPreBundlePreview(resolvedAspects: AspectDefinition[], customOutputDir?: string) {\n const outputDir = customOutputDir || resolve(PUBLIC_DIR);\n const mainEntry = generatePreBundlePreviewEntry(\n resolvedAspects,\n UIROOT_ASPECT_ID,\n RUNTIME_NAME,\n PreviewAspect.id,\n __dirname\n );\n const config = createRspackConfig(outputDir, mainEntry);\n const compiler = rspack(config as any);\n const compilerRun = promisify(compiler.run.bind(compiler));\n const results = await compilerRun();\n if (!results) throw new Error();\n if (results?.hasErrors()) {\n clearConsole();\n throw new Error(results?.toString({}));\n }\n return results;\n}\n\nexport async function generateBundlePreviewEntry(rootAspectId: string, previewPreBundlePath: string, config: object) {\n const manifestPath = join(previewPreBundlePath, 'asset-manifest.json');\n const manifest = readJsonSync(manifestPath);\n const imports = manifest.entrypoints\n .map((entry: string) => {\n const entryPath = normalizePath(join(previewPreBundlePath, entry));\n return entry.endsWith('.js') || entry.endsWith('.cjs') || entry.endsWith('.mjs')\n ? `import { run } from '${entryPath}';`\n : `import '${entryPath}';`;\n })\n .join('\\n');\n config['teambit.harmony/bit'] = rootAspectId;\n\n const contents = [imports, `run(${JSON.stringify(config, null, 2)});`].join('\\n');\n const previewRuntime = resolve(join(previewDistDir, `preview.entry.${sha1(contents)}.js`));\n\n if (!existsSync(previewRuntime)) {\n outputFileSync(previewRuntime, contents);\n }\n\n return previewRuntime;\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_path","data","require","_util","_core","_fsExtra","_interopRequireWildcard","_legacy","_harmonyModules","_toolboxCrypto","_normalizePath","_interopRequireDefault","_preview","_preBundleUtils","_mkTempDir","_rspack","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","previewDistDir","getPreviewDistDir","RUNTIME_NAME","exports","PUBLIC_DIR","join","UIROOT_ASPECT_ID","ENTRY_CONTENT_TEMPLATE","generatePreBundlePreviewEntry","aspectDefs","rootExtensionName","runtimeName","rootAspectId","dir","harmonyImport","createHarmonyImports","imports","createImports","identifiers","getIdentifiers","idSetters","getIdSetters","contents","replace","replaceAll","JSON","stringify","entryPath","resolve","sha1","fs","existsSync","outputFileSync","buildPreBundlePreview","resolvedAspects","customOutputDir","outputDir","mainEntry","PreviewAspect","id","__dirname","config","createRspackConfig","compiler","rspack","compilerRun","promisify","run","bind","results","Error","hasErrors","clearConsole","toString","closeRspackCompiler","close","Promise","done","err","logger","debug","message","generateBundlePreviewEntry","previewPreBundlePath","manifestPath","manifest","readJsonSync","entrypoints","map","entry","normalizePath","endsWith","previewRuntime"],"sources":["pre-bundle.ts"],"sourcesContent":["import { join, resolve } from 'path';\nimport { promisify } from 'util';\nimport { rspack } from '@rspack/core';\nimport fs, { existsSync, outputFileSync, readJsonSync } from 'fs-extra';\nimport type { AspectDefinition } from '@teambit/aspect-loader';\nimport { logger } from '@teambit/legacy.logger';\nimport {\n createHarmonyImports,\n createImports,\n getIdSetters,\n getIdentifiers,\n} from '@teambit/harmony.modules.harmony-root-generator';\nimport { sha1 } from '@teambit/toolbox.crypto.sha1';\nimport normalizePath from 'normalize-path';\nimport { PreviewAspect } from './preview.aspect';\nimport { clearConsole } from './pre-bundle-utils';\nimport { getPreviewDistDir } from './mk-temp-dir';\nimport { createRspackConfig } from './rspack/rspack.config';\n\nconst previewDistDir = getPreviewDistDir();\n\nexport const RUNTIME_NAME = 'preview';\nexport const PUBLIC_DIR = join('public', 'bit-preview');\nexport const UIROOT_ASPECT_ID = 'teambit.workspace/workspace';\n\nconst ENTRY_CONTENT_TEMPLATE = `__IMPORTS__\n\nexport const run = (config, customAspects = []) => {\n const isBrowser = typeof window !== \"undefined\";\n const windowConfig = isBrowser ? window.harmonyAppConfig : undefined;\n const mergedConfig = { ...config, ...windowConfig };\n __ID_SETTERS__\n function render(...props) {\n return Harmony.load(\n [\n ...customAspects,\n __IDENTIFIERS__,\n ],\n __RUNTIME_NAME__,\n mergedConfig\n ).then((harmony) => {\n return harmony\n .run()\n .then(() => harmony.get(__ROOT_ASPECT__))\n .then((rootExtension) => {\n const ssrSetup = !isBrowser && rootExtension.setupSsr;\n const setup = rootExtension.setup;\n const setupFunc = (ssrSetup || setup || function noop() {}).bind(\n rootExtension\n );\n return Promise.resolve(setupFunc()).then(\n () => {\n return rootExtension\n }\n );\n })\n .then((rootExtension) => {\n if (isBrowser) {\n return rootExtension.render(\n __ROOT_EXTENSION_NAME__,\n ...props\n );\n } else {\n return rootExtension.renderSsr(\n __ROOT_EXTENSION_NAME__,\n ...props\n );\n }\n })\n .catch((err) => {\n throw err;\n });\n });\n }\n if (isBrowser || __RUNTIME_NAME__ === \"main\") render();\n};\n`;\n\nexport const generatePreBundlePreviewEntry = (\n aspectDefs: AspectDefinition[],\n rootExtensionName: string,\n runtimeName: string,\n rootAspectId: string,\n dir: string\n) => {\n const harmonyImport = createHarmonyImports();\n const imports = createImports(aspectDefs);\n const identifiers = getIdentifiers(aspectDefs, 'Aspect');\n const idSetters = getIdSetters(aspectDefs, 'Aspect');\n const contents = ENTRY_CONTENT_TEMPLATE.replace('__IMPORTS__', [harmonyImport, imports].join('\\n'))\n .replace('__IDENTIFIERS__', identifiers.join(', '))\n .replace('__ID_SETTERS__', idSetters.join('\\n'))\n .replaceAll('__RUNTIME_NAME__', JSON.stringify(runtimeName))\n .replaceAll('__ROOT_ASPECT__', JSON.stringify(rootAspectId))\n .replaceAll('__ROOT_EXTENSION_NAME__', JSON.stringify(rootExtensionName));\n const entryPath = resolve(join(dir, `ui-bundle-entry.${sha1(contents)}.js`));\n if (!fs.existsSync(entryPath)) {\n fs.outputFileSync(entryPath, contents);\n }\n return entryPath;\n};\n\nexport async function buildPreBundlePreview(resolvedAspects: AspectDefinition[], customOutputDir?: string) {\n const outputDir = customOutputDir || resolve(PUBLIC_DIR);\n const mainEntry = generatePreBundlePreviewEntry(\n resolvedAspects,\n UIROOT_ASPECT_ID,\n RUNTIME_NAME,\n PreviewAspect.id,\n __dirname\n );\n const config = createRspackConfig(outputDir, mainEntry);\n const compiler = rspack(config as any);\n try {\n const compilerRun = promisify(compiler.run.bind(compiler));\n const results = await compilerRun();\n if (!results) throw new Error();\n if (results?.hasErrors()) {\n clearConsole();\n throw new Error(results?.toString({}));\n }\n return results;\n } finally {\n await closeRspackCompiler(compiler);\n }\n}\n\n/**\n * Release the compiler's module graph, and rspack's native side of it, as soon as the bundle is\n * done. Both callers keep the process alive well past this point: the PreBundlePreview build task\n * runs once per env inside a `bit build` that runs every task in one process, and `bit start`\n * pre-bundles on demand in a server that then keeps running.\n *\n * Never throws - it runs from a `finally`, and a cleanup failure must not replace the build error\n * that sent us there. A failure is logged rather than swallowed, otherwise a compiler that never\n * releases looks exactly like one that does.\n */\nasync function closeRspackCompiler(compiler: { close?: (callback: (err?: Error | null) => void) => void }) {\n const close = compiler.close;\n if (typeof close !== 'function') return;\n try {\n await new Promise<void>((done) => {\n close.call(compiler, (err) => {\n if (err) logger.debug(`failed closing the preview rspack compiler: ${err.message || err}`);\n done();\n });\n });\n } catch (err: any) {\n logger.debug(`failed closing the preview rspack compiler: ${err?.message || err}`);\n }\n}\n\nexport async function generateBundlePreviewEntry(rootAspectId: string, previewPreBundlePath: string, config: object) {\n const manifestPath = join(previewPreBundlePath, 'asset-manifest.json');\n const manifest = readJsonSync(manifestPath);\n const imports = manifest.entrypoints\n .map((entry: string) => {\n const entryPath = normalizePath(join(previewPreBundlePath, entry));\n return entry.endsWith('.js') || entry.endsWith('.cjs') || entry.endsWith('.mjs')\n ? `import { run } from '${entryPath}';`\n : `import '${entryPath}';`;\n })\n .join('\\n');\n config['teambit.harmony/bit'] = rootAspectId;\n\n const contents = [imports, `run(${JSON.stringify(config, null, 2)});`].join('\\n');\n const previewRuntime = resolve(join(previewDistDir, `preview.entry.${sha1(contents)}.js`));\n\n if (!existsSync(previewRuntime)) {\n outputFileSync(previewRuntime, contents);\n }\n\n return previewRuntime;\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.preview_preview@1.0.1099/dist/preview.composition.js';
2
- import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.preview_preview@1.0.1099/dist/preview.docs.mdx';
1
+ import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.preview_preview@1.0.1102/dist/preview.composition.js';
2
+ import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.preview_preview@1.0.1102/dist/preview.docs.mdx';
3
3
 
4
4
  export const compositions = [compositions_0];
5
5
  export const overview = [overview_0];
@@ -18,6 +18,13 @@ function _webpack() {
18
18
  };
19
19
  return data;
20
20
  }
21
+ function _webpackModules() {
22
+ const data = require("@teambit/webpack.modules.exclude-node-modules-js");
23
+ _webpackModules = function () {
24
+ return data;
25
+ };
26
+ return data;
27
+ }
21
28
  function _mdxModules() {
22
29
  const data = require("@teambit/mdx.modules.mdx-v3-options");
23
30
  _mdxModules = function () {
@@ -138,7 +145,7 @@ function createRspackConfig(outputDir, entryFile) {
138
145
  }
139
146
  }, {
140
147
  test: /\.(js|mjs|jsx|ts|tsx)$/,
141
- exclude: /node_modules/,
148
+ exclude: _webpackModules().excludeNodeModulesJs,
142
149
  use: {
143
150
  loader: 'builtin:swc-loader',
144
151
  options: {
@@ -1 +1 @@
1
- {"version":3,"names":["_core","data","require","_webpack","_mdxModules","_rspackManifestPlugin","_rspackModules","moduleFileExtensions","imageInlineSizeLimit","parseInt","process","env","IMAGE_INLINE_SIZE_LIMIT","cssModuleGenerator","localIdentName","esModule","cssParser","css","namedExports","createRspackConfig","outputDir","entryFile","mode","BIT_DEBUG_PREVIEW_BUNDLE","shouldUseSourceMap","GENERATE_SOURCEMAP","stats","children","errorDetails","devtool","experiments","entry","main","output","path","publicPath","chunkFilename","filename","cssFilename","cssChunkFilename","library","type","externalsType","externals","resolve","extensions","map","ext","alias","react","fallback","module","fallbacks","dgram","dns","fs","stream","http2","net","tls","child_process","optimization","minimize","minimizer","rspack","SwcJsMinimizerRspackPlugin","minimizerOptions","compress","ecma","comparisons","inline","mangle","format","comments","ascii_only","LightningCssMinimizerRspackPlugin","parser","rules","test","fullySpecified","exclude","use","loader","options","jsc","syntax","tsx","transform","runtime","target","enforce","include","descriptionData","componentId","value","extractSourceMap","dataUrlCondition","maxSize","sideEffects","generator","sourceMap","mdxOptions","plugins","RspackManifestPlugin","fileName","generate","generateAssetManifest","ProvidePlugin","fallbacksProvidePluginConfig","IgnorePlugin","resourceRegExp","contextRegExp","performance"],"sources":["rspack.config.ts"],"sourcesContent":["import { rspack, type Configuration } from '@rspack/core';\nimport { fallbacksProvidePluginConfig, fallbacks } from '@teambit/webpack';\nimport { mdxOptions } from '@teambit/mdx.modules.mdx-v3-options';\nimport { RspackManifestPlugin } from 'rspack-manifest-plugin';\nimport { generateAssetManifest } from '@teambit/rspack.modules.generate-asset-manifest';\n\nconst moduleFileExtensions = [\n 'web.mjs',\n 'mjs',\n 'web.js',\n 'js',\n 'web.ts',\n 'ts',\n 'web.tsx',\n 'tsx',\n 'json',\n 'web.jsx',\n 'jsx',\n 'mdx',\n 'md',\n];\n\nconst imageInlineSizeLimit = parseInt(process.env.IMAGE_INLINE_SIZE_LIMIT || '10000');\nconst cssModuleGenerator = { localIdentName: '[name]__[local]--[hash:base64:5]', esModule: false };\nconst cssParser = {\n css: { namedExports: false },\n 'css/auto': { namedExports: false },\n 'css/module': { namedExports: false },\n} as const;\n\nexport function createRspackConfig(outputDir: string, entryFile: string): Configuration {\n const mode = process.env.BIT_DEBUG_PREVIEW_BUNDLE ? 'development' : 'production';\n const shouldUseSourceMap = mode === 'development' || process.env.GENERATE_SOURCEMAP === 'true';\n\n return {\n stats: {\n children: true,\n errorDetails: true,\n },\n mode,\n\n devtool: shouldUseSourceMap ? 'source-map' : false,\n experiments: {\n css: true,\n },\n\n entry: {\n main: entryFile,\n },\n\n output: {\n path: outputDir,\n publicPath: '/',\n chunkFilename: 'static/js/[name].[contenthash:8].chunk.cjs',\n filename: 'static/js/[name].[contenthash:8].cjs',\n cssFilename: 'static/css/[name].[contenthash:8].css',\n cssChunkFilename: 'static/css/[name].[contenthash:8].chunk.css',\n library: {\n type: 'commonjs-static',\n },\n },\n\n externalsType: 'commonjs',\n externals: ['react', 'react-dom', '@mdx-js/react', '@teambit/mdx.ui.mdx-scope-context'],\n\n resolve: {\n extensions: moduleFileExtensions.map((ext) => `.${ext}`),\n alias: {\n 'react/jsx-runtime': require.resolve('react/jsx-runtime'),\n react: require.resolve('react'),\n 'react-dom': require.resolve('react-dom'),\n // dedupe to a single copy — multiple versions in the pnpm store break the module namespace\n // when bundled (matches the alias in the react env webpack + ui-foundation rspack configs).\n '@teambit/lanes.entities.lane-diff': require.resolve('@teambit/lanes.entities.lane-diff'),\n },\n fallback: {\n module: false,\n path: fallbacks.path,\n dgram: false,\n dns: false,\n fs: false,\n stream: false,\n http2: false,\n net: false,\n tls: false,\n child_process: false,\n process: fallbacks.process,\n },\n },\n\n optimization: {\n minimize: mode === 'production',\n minimizer: [\n new rspack.SwcJsMinimizerRspackPlugin({\n minimizerOptions: {\n compress: {\n ecma: 5,\n comparisons: false,\n inline: 2,\n },\n // We need to keep class names and disable mangling to prevent issues with consuming the rspack bundle in\n // other bundlers (e.g. webpack) that rely on class names for tree shaking and other optimizations.\n mangle: false,\n format: {\n ecma: 5,\n comments: false,\n ascii_only: true,\n },\n },\n }),\n new rspack.LightningCssMinimizerRspackPlugin({}),\n ],\n },\n\n module: {\n parser: cssParser,\n rules: [\n {\n test: /\\.m?js/,\n resolve: {\n fullySpecified: false,\n },\n },\n {\n test: /\\.(js|mjs|jsx|ts|tsx)$/,\n exclude: /node_modules/,\n use: {\n loader: 'builtin:swc-loader',\n options: {\n jsc: {\n parser: {\n syntax: 'typescript',\n tsx: true,\n },\n transform: {\n react: {\n runtime: 'automatic',\n },\n },\n target: 'es2015',\n },\n },\n },\n type: 'javascript/auto',\n },\n {\n test: /\\.js$/,\n enforce: 'pre' as const,\n include: /node_modules/,\n descriptionData: { componentId: (value: any) => !!value },\n extractSourceMap: shouldUseSourceMap,\n },\n {\n test: [/\\.bmp$/, /\\.gif$/, /\\.jpe?g$/, /\\.png$/],\n type: 'asset',\n parser: {\n dataUrlCondition: {\n maxSize: imageInlineSizeLimit,\n },\n },\n },\n {\n test: /\\.svg$/,\n type: 'asset',\n parser: {\n dataUrlCondition: {\n maxSize: imageInlineSizeLimit,\n },\n },\n },\n {\n test: /\\.css$/,\n exclude: /\\.module\\.css$/,\n type: 'css',\n sideEffects: true,\n },\n {\n test: /\\.module\\.css$/,\n type: 'css/module',\n generator: cssModuleGenerator,\n },\n {\n test: /\\.(scss|sass)$/,\n exclude: /\\.module\\.(scss|sass)$/,\n use: [\n {\n loader: require.resolve('resolve-url-loader'),\n options: { sourceMap: shouldUseSourceMap },\n },\n {\n loader: require.resolve('sass-loader'),\n options: { sourceMap: shouldUseSourceMap },\n },\n ],\n type: 'css',\n sideEffects: true,\n },\n {\n test: /\\.module\\.(scss|sass)$/,\n use: [\n {\n loader: require.resolve('resolve-url-loader'),\n options: { sourceMap: shouldUseSourceMap },\n },\n {\n loader: require.resolve('sass-loader'),\n options: { sourceMap: shouldUseSourceMap },\n },\n ],\n type: 'css/module',\n generator: cssModuleGenerator,\n },\n {\n test: /\\.(woff(2)?|ttf|eot)(\\?v=\\d+\\.\\d+\\.\\d+)?$/,\n type: 'asset',\n generator: {\n filename: 'static/fonts/[hash][ext][query]',\n },\n },\n {\n test: /\\.mdx?$/,\n use: [\n {\n loader: 'builtin:swc-loader',\n options: {\n jsc: {\n parser: {\n syntax: 'typescript',\n tsx: true,\n },\n transform: {\n react: {\n runtime: 'automatic',\n },\n },\n target: 'es2015',\n },\n },\n },\n {\n loader: require.resolve('@mdx-js/loader'),\n options: mdxOptions,\n },\n {\n // transforms admonition syntax (:::type content → :::type[content]) for mdx v3\n loader: require.resolve('@teambit/react/dist/webpack/mdx-pre-loader.cjs'),\n },\n ],\n type: 'javascript/auto',\n },\n {\n exclude: [/\\.(cjs|js|mjs|jsx|ts|tsx)$/, /\\.html$/, /\\.json$/, /\\.css$/, /\\.s[ac]ss$/, /\\.less$/, /\\.mdx?$/],\n type: 'asset/resource',\n },\n ],\n },\n\n plugins: [\n new RspackManifestPlugin({ fileName: 'asset-manifest.json', generate: generateAssetManifest }),\n\n new rspack.ProvidePlugin({ process: fallbacksProvidePluginConfig.process }),\n\n new rspack.IgnorePlugin({\n resourceRegExp: /^\\.\\/locale$/,\n contextRegExp: /moment$/,\n }),\n ],\n\n performance: false,\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_core","data","require","_webpack","_webpackModules","_mdxModules","_rspackManifestPlugin","_rspackModules","moduleFileExtensions","imageInlineSizeLimit","parseInt","process","env","IMAGE_INLINE_SIZE_LIMIT","cssModuleGenerator","localIdentName","esModule","cssParser","css","namedExports","createRspackConfig","outputDir","entryFile","mode","BIT_DEBUG_PREVIEW_BUNDLE","shouldUseSourceMap","GENERATE_SOURCEMAP","stats","children","errorDetails","devtool","experiments","entry","main","output","path","publicPath","chunkFilename","filename","cssFilename","cssChunkFilename","library","type","externalsType","externals","resolve","extensions","map","ext","alias","react","fallback","module","fallbacks","dgram","dns","fs","stream","http2","net","tls","child_process","optimization","minimize","minimizer","rspack","SwcJsMinimizerRspackPlugin","minimizerOptions","compress","ecma","comparisons","inline","mangle","format","comments","ascii_only","LightningCssMinimizerRspackPlugin","parser","rules","test","fullySpecified","exclude","excludeNodeModulesJs","use","loader","options","jsc","syntax","tsx","transform","runtime","target","enforce","include","descriptionData","componentId","value","extractSourceMap","dataUrlCondition","maxSize","sideEffects","generator","sourceMap","mdxOptions","plugins","RspackManifestPlugin","fileName","generate","generateAssetManifest","ProvidePlugin","fallbacksProvidePluginConfig","IgnorePlugin","resourceRegExp","contextRegExp","performance"],"sources":["rspack.config.ts"],"sourcesContent":["import { rspack, type Configuration } from '@rspack/core';\nimport { fallbacksProvidePluginConfig, fallbacks } from '@teambit/webpack';\nimport { excludeNodeModulesJs } from '@teambit/webpack.modules.exclude-node-modules-js';\nimport { mdxOptions } from '@teambit/mdx.modules.mdx-v3-options';\nimport { RspackManifestPlugin } from 'rspack-manifest-plugin';\nimport { generateAssetManifest } from '@teambit/rspack.modules.generate-asset-manifest';\n\nconst moduleFileExtensions = [\n 'web.mjs',\n 'mjs',\n 'web.js',\n 'js',\n 'web.ts',\n 'ts',\n 'web.tsx',\n 'tsx',\n 'json',\n 'web.jsx',\n 'jsx',\n 'mdx',\n 'md',\n];\n\nconst imageInlineSizeLimit = parseInt(process.env.IMAGE_INLINE_SIZE_LIMIT || '10000');\nconst cssModuleGenerator = { localIdentName: '[name]__[local]--[hash:base64:5]', esModule: false };\nconst cssParser = {\n css: { namedExports: false },\n 'css/auto': { namedExports: false },\n 'css/module': { namedExports: false },\n} as const;\n\nexport function createRspackConfig(outputDir: string, entryFile: string): Configuration {\n const mode = process.env.BIT_DEBUG_PREVIEW_BUNDLE ? 'development' : 'production';\n const shouldUseSourceMap = mode === 'development' || process.env.GENERATE_SOURCEMAP === 'true';\n\n return {\n stats: {\n children: true,\n errorDetails: true,\n },\n mode,\n\n devtool: shouldUseSourceMap ? 'source-map' : false,\n experiments: {\n css: true,\n },\n\n entry: {\n main: entryFile,\n },\n\n output: {\n path: outputDir,\n publicPath: '/',\n chunkFilename: 'static/js/[name].[contenthash:8].chunk.cjs',\n filename: 'static/js/[name].[contenthash:8].cjs',\n cssFilename: 'static/css/[name].[contenthash:8].css',\n cssChunkFilename: 'static/css/[name].[contenthash:8].chunk.css',\n library: {\n type: 'commonjs-static',\n },\n },\n\n externalsType: 'commonjs',\n externals: ['react', 'react-dom', '@mdx-js/react', '@teambit/mdx.ui.mdx-scope-context'],\n\n resolve: {\n extensions: moduleFileExtensions.map((ext) => `.${ext}`),\n alias: {\n 'react/jsx-runtime': require.resolve('react/jsx-runtime'),\n react: require.resolve('react'),\n 'react-dom': require.resolve('react-dom'),\n // dedupe to a single copy — multiple versions in the pnpm store break the module namespace\n // when bundled (matches the alias in the react env webpack + ui-foundation rspack configs).\n '@teambit/lanes.entities.lane-diff': require.resolve('@teambit/lanes.entities.lane-diff'),\n },\n fallback: {\n module: false,\n path: fallbacks.path,\n dgram: false,\n dns: false,\n fs: false,\n stream: false,\n http2: false,\n net: false,\n tls: false,\n child_process: false,\n process: fallbacks.process,\n },\n },\n\n optimization: {\n minimize: mode === 'production',\n minimizer: [\n new rspack.SwcJsMinimizerRspackPlugin({\n minimizerOptions: {\n compress: {\n ecma: 5,\n comparisons: false,\n inline: 2,\n },\n // We need to keep class names and disable mangling to prevent issues with consuming the rspack bundle in\n // other bundlers (e.g. webpack) that rely on class names for tree shaking and other optimizations.\n mangle: false,\n format: {\n ecma: 5,\n comments: false,\n ascii_only: true,\n },\n },\n }),\n new rspack.LightningCssMinimizerRspackPlugin({}),\n ],\n },\n\n module: {\n parser: cssParser,\n rules: [\n {\n test: /\\.m?js/,\n resolve: {\n fullySpecified: false,\n },\n },\n {\n test: /\\.(js|mjs|jsx|ts|tsx)$/,\n exclude: excludeNodeModulesJs,\n use: {\n loader: 'builtin:swc-loader',\n options: {\n jsc: {\n parser: {\n syntax: 'typescript',\n tsx: true,\n },\n transform: {\n react: {\n runtime: 'automatic',\n },\n },\n target: 'es2015',\n },\n },\n },\n type: 'javascript/auto',\n },\n {\n test: /\\.js$/,\n enforce: 'pre' as const,\n include: /node_modules/,\n descriptionData: { componentId: (value: any) => !!value },\n extractSourceMap: shouldUseSourceMap,\n },\n {\n test: [/\\.bmp$/, /\\.gif$/, /\\.jpe?g$/, /\\.png$/],\n type: 'asset',\n parser: {\n dataUrlCondition: {\n maxSize: imageInlineSizeLimit,\n },\n },\n },\n {\n test: /\\.svg$/,\n type: 'asset',\n parser: {\n dataUrlCondition: {\n maxSize: imageInlineSizeLimit,\n },\n },\n },\n {\n test: /\\.css$/,\n exclude: /\\.module\\.css$/,\n type: 'css',\n sideEffects: true,\n },\n {\n test: /\\.module\\.css$/,\n type: 'css/module',\n generator: cssModuleGenerator,\n },\n {\n test: /\\.(scss|sass)$/,\n exclude: /\\.module\\.(scss|sass)$/,\n use: [\n {\n loader: require.resolve('resolve-url-loader'),\n options: { sourceMap: shouldUseSourceMap },\n },\n {\n loader: require.resolve('sass-loader'),\n options: { sourceMap: shouldUseSourceMap },\n },\n ],\n type: 'css',\n sideEffects: true,\n },\n {\n test: /\\.module\\.(scss|sass)$/,\n use: [\n {\n loader: require.resolve('resolve-url-loader'),\n options: { sourceMap: shouldUseSourceMap },\n },\n {\n loader: require.resolve('sass-loader'),\n options: { sourceMap: shouldUseSourceMap },\n },\n ],\n type: 'css/module',\n generator: cssModuleGenerator,\n },\n {\n test: /\\.(woff(2)?|ttf|eot)(\\?v=\\d+\\.\\d+\\.\\d+)?$/,\n type: 'asset',\n generator: {\n filename: 'static/fonts/[hash][ext][query]',\n },\n },\n {\n test: /\\.mdx?$/,\n use: [\n {\n loader: 'builtin:swc-loader',\n options: {\n jsc: {\n parser: {\n syntax: 'typescript',\n tsx: true,\n },\n transform: {\n react: {\n runtime: 'automatic',\n },\n },\n target: 'es2015',\n },\n },\n },\n {\n loader: require.resolve('@mdx-js/loader'),\n options: mdxOptions,\n },\n {\n // transforms admonition syntax (:::type content → :::type[content]) for mdx v3\n loader: require.resolve('@teambit/react/dist/webpack/mdx-pre-loader.cjs'),\n },\n ],\n type: 'javascript/auto',\n },\n {\n exclude: [/\\.(cjs|js|mjs|jsx|ts|tsx)$/, /\\.html$/, /\\.json$/, /\\.css$/, /\\.s[ac]ss$/, /\\.less$/, /\\.mdx?$/],\n type: 'asset/resource',\n },\n ],\n },\n\n plugins: [\n new RspackManifestPlugin({ fileName: 'asset-manifest.json', generate: generateAssetManifest }),\n\n new rspack.ProvidePlugin({ process: fallbacksProvidePluginConfig.process }),\n\n new rspack.IgnorePlugin({\n resourceRegExp: /^\\.\\/locale$/,\n contextRegExp: /moment$/,\n }),\n ],\n\n performance: false,\n };\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.1099",
3
+ "version": "1.0.1102",
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.1099"
9
+ "version": "1.0.1102"
10
10
  },
11
11
  "dependencies": {
12
12
  "mime": "2.5.2",
@@ -27,45 +27,47 @@
27
27
  "resolve-url-loader": "5.0.0",
28
28
  "rspack-manifest-plugin": "^5.2.1",
29
29
  "sass-loader": "13.3.2",
30
- "@teambit/express": "0.0.1463",
31
- "@teambit/logger": "0.0.1457",
32
30
  "@teambit/ui-foundation.ui.pages.static-error": "0.0.111",
33
31
  "@teambit/preview.ui.component-preview": "1.0.36",
34
- "@teambit/cli": "0.0.1364",
35
32
  "@teambit/toolbox.path.to-windows-compatible-path": "0.0.513",
36
33
  "@teambit/legacy.constants": "0.0.41",
37
34
  "@teambit/harmony": "0.4.12",
38
35
  "@teambit/toolbox.crypto.sha1": "0.0.20",
39
36
  "@teambit/harmony.modules.harmony-root-generator": "0.0.43",
40
- "@teambit/component.sources": "0.0.197",
37
+ "@teambit/legacy.logger": "0.0.56",
41
38
  "@teambit/toolbox.path.path": "0.0.21",
42
39
  "@teambit/preview.modules.preview-modules": "1.0.3",
43
40
  "@teambit/component-id": "1.2.4",
44
41
  "@teambit/bit-error": "0.0.404",
45
- "@teambit/cache": "0.0.1457",
46
42
  "@teambit/harmony.modules.feature-toggle": "0.0.53",
47
43
  "@teambit/preview.cli.dev-server-events-listener": "0.0.1",
48
44
  "@teambit/preview.cli.webpack-events-listener": "0.0.188",
49
45
  "@teambit/lanes.entities.lane-diff": "0.0.199",
50
46
  "@teambit/mdx.modules.mdx-v3-options": "0.0.3",
51
47
  "@teambit/rspack.modules.generate-asset-manifest": "0.0.9",
52
- "@teambit/builder": "1.0.1099",
53
- "@teambit/bundler": "1.0.1099",
54
- "@teambit/component": "1.0.1099",
55
- "@teambit/aspect-loader": "1.0.1099",
56
- "@teambit/dependency-resolver": "1.0.1099",
57
- "@teambit/envs": "1.0.1099",
58
- "@teambit/ui": "1.0.1099",
59
- "@teambit/isolator": "1.0.1099",
60
- "@teambit/graphql": "1.0.1099",
61
- "@teambit/pkg": "1.0.1099",
62
- "@teambit/pubsub": "1.0.1099",
63
- "@teambit/scope": "1.0.1099",
64
- "@teambit/watcher": "1.0.1099",
65
- "@teambit/workspace": "1.0.1099",
66
- "@teambit/compiler": "1.0.1099",
67
- "@teambit/react": "1.0.1099",
68
- "@teambit/webpack": "1.0.1099"
48
+ "@teambit/webpack.modules.exclude-node-modules-js": "0.0.1",
49
+ "@teambit/express": "0.0.1466",
50
+ "@teambit/logger": "0.0.1460",
51
+ "@teambit/builder": "1.0.1102",
52
+ "@teambit/bundler": "1.0.1102",
53
+ "@teambit/component": "1.0.1102",
54
+ "@teambit/aspect-loader": "1.0.1102",
55
+ "@teambit/cli": "0.0.1367",
56
+ "@teambit/dependency-resolver": "1.0.1102",
57
+ "@teambit/envs": "1.0.1102",
58
+ "@teambit/ui": "1.0.1102",
59
+ "@teambit/isolator": "1.0.1102",
60
+ "@teambit/component.sources": "0.0.200",
61
+ "@teambit/cache": "0.0.1460",
62
+ "@teambit/graphql": "1.0.1102",
63
+ "@teambit/pkg": "1.0.1102",
64
+ "@teambit/pubsub": "1.0.1102",
65
+ "@teambit/scope": "1.0.1102",
66
+ "@teambit/watcher": "1.0.1102",
67
+ "@teambit/workspace": "1.0.1102",
68
+ "@teambit/compiler": "1.0.1102",
69
+ "@teambit/react": "1.0.1102",
70
+ "@teambit/webpack": "1.0.1102"
69
71
  },
70
72
  "devDependencies": {
71
73
  "@types/mime": "2.0.3",
@@ -1,5 +1,6 @@
1
1
  import { rspack, type Configuration } from '@rspack/core';
2
2
  import { fallbacksProvidePluginConfig, fallbacks } from '@teambit/webpack';
3
+ import { excludeNodeModulesJs } from '@teambit/webpack.modules.exclude-node-modules-js';
3
4
  import { mdxOptions } from '@teambit/mdx.modules.mdx-v3-options';
4
5
  import { RspackManifestPlugin } from 'rspack-manifest-plugin';
5
6
  import { generateAssetManifest } from '@teambit/rspack.modules.generate-asset-manifest';
@@ -123,7 +124,7 @@ export function createRspackConfig(outputDir: string, entryFile: string): Config
123
124
  },
124
125
  {
125
126
  test: /\.(js|mjs|jsx|ts|tsx)$/,
126
- exclude: /node_modules/,
127
+ exclude: excludeNodeModulesJs,
127
128
  use: {
128
129
  loader: 'builtin:swc-loader',
129
130
  options: {