@modern-js/module-tools 2.14.0 → 2.16.0-beta.0

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.
Files changed (135) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/compiled/postcss-custom-properties/index.js +1 -1
  3. package/compiled/postcss-custom-properties/package.json +1 -1
  4. package/dist/build.js +23 -66
  5. package/dist/build.js.map +1 -1
  6. package/dist/builder/build.js +114 -170
  7. package/dist/builder/build.js.map +1 -1
  8. package/dist/builder/clear.js +23 -65
  9. package/dist/builder/clear.js.map +1 -1
  10. package/dist/builder/copy.js +83 -164
  11. package/dist/builder/copy.js.map +1 -1
  12. package/dist/builder/dts/index.js +15 -28
  13. package/dist/builder/dts/index.js.map +1 -1
  14. package/dist/builder/dts/rollup.js +46 -120
  15. package/dist/builder/dts/rollup.js.map +1 -1
  16. package/dist/builder/dts/tsc.js +82 -141
  17. package/dist/builder/dts/tsc.js.map +1 -1
  18. package/dist/builder/index.js +34 -85
  19. package/dist/builder/index.js.map +1 -1
  20. package/dist/builder/platform.js +40 -93
  21. package/dist/builder/platform.js.map +1 -1
  22. package/dist/cli.js +35 -84
  23. package/dist/cli.js.map +1 -1
  24. package/dist/command.js +56 -136
  25. package/dist/command.js.map +1 -1
  26. package/dist/config/defineConfig.js +13 -42
  27. package/dist/config/defineConfig.js.map +1 -1
  28. package/dist/config/legacySchema.js +96 -52
  29. package/dist/config/legacySchema.js.map +1 -1
  30. package/dist/config/normalize.js +73 -149
  31. package/dist/config/normalize.js.map +1 -1
  32. package/dist/config/schema.d.ts +36 -0
  33. package/dist/config/schema.js +118 -56
  34. package/dist/config/schema.js.map +1 -1
  35. package/dist/config/transformLegacyConfig.js +152 -203
  36. package/dist/config/transformLegacyConfig.js.map +1 -1
  37. package/dist/constants/build.js +15 -27
  38. package/dist/constants/build.js.map +1 -1
  39. package/dist/constants/buildPresets.js +71 -84
  40. package/dist/constants/buildPresets.js.map +1 -1
  41. package/dist/constants/colors.js +28 -30
  42. package/dist/constants/colors.js.map +1 -1
  43. package/dist/constants/dts.js +13 -28
  44. package/dist/constants/dts.js.map +1 -1
  45. package/dist/constants/file.js +27 -30
  46. package/dist/constants/file.js.map +1 -1
  47. package/dist/constants/legacyBuildPresets.js +33 -49
  48. package/dist/constants/legacyBuildPresets.js.map +1 -1
  49. package/dist/constants/log.js +15 -33
  50. package/dist/constants/log.js.map +1 -1
  51. package/dist/dev.js +45 -91
  52. package/dist/dev.js.map +1 -1
  53. package/dist/error.js +37 -54
  54. package/dist/error.js.map +1 -1
  55. package/dist/hooks/build.js +22 -35
  56. package/dist/hooks/build.js.map +1 -1
  57. package/dist/hooks/dev.js +15 -33
  58. package/dist/hooks/dev.js.map +1 -1
  59. package/dist/hooks/index.js +15 -42
  60. package/dist/hooks/index.js.map +1 -1
  61. package/dist/hooks/misc.js +10 -28
  62. package/dist/hooks/misc.js.map +1 -1
  63. package/dist/index.js +21 -35
  64. package/dist/index.js.map +1 -1
  65. package/dist/locale/en.d.ts +7 -2
  66. package/dist/locale/en.js +25 -32
  67. package/dist/locale/en.js.map +1 -1
  68. package/dist/locale/index.d.ts +14 -4
  69. package/dist/locale/index.js +18 -31
  70. package/dist/locale/index.js.map +1 -1
  71. package/dist/locale/zh.d.ts +7 -2
  72. package/dist/locale/zh.js +25 -32
  73. package/dist/locale/zh.js.map +1 -1
  74. package/dist/plugins.js +16 -39
  75. package/dist/plugins.js.map +1 -1
  76. package/dist/types/color.js +4 -15
  77. package/dist/types/color.js.map +1 -1
  78. package/dist/types/command.js +4 -15
  79. package/dist/types/command.js.map +1 -1
  80. package/dist/types/config/index.d.ts +6 -0
  81. package/dist/types/config/index.js +6 -17
  82. package/dist/types/config/index.js.map +1 -1
  83. package/dist/types/config/style.js +4 -15
  84. package/dist/types/config/style.js.map +1 -1
  85. package/dist/types/context.js +4 -15
  86. package/dist/types/context.js.map +1 -1
  87. package/dist/types/copy.js +4 -15
  88. package/dist/types/copy.js.map +1 -1
  89. package/dist/types/dts.js +4 -15
  90. package/dist/types/dts.js.map +1 -1
  91. package/dist/types/hooks.js +4 -15
  92. package/dist/types/hooks.js.map +1 -1
  93. package/dist/types/index.js +11 -22
  94. package/dist/types/index.js.map +1 -1
  95. package/dist/types/legacyConfig/index.js +4 -15
  96. package/dist/types/legacyConfig/index.js.map +1 -1
  97. package/dist/types/legacyConfig/output.js +4 -15
  98. package/dist/types/legacyConfig/output.js.map +1 -1
  99. package/dist/types/legacyConfig/source.js +4 -15
  100. package/dist/types/legacyConfig/source.js.map +1 -1
  101. package/dist/types/legacyConfig/tools.js +4 -15
  102. package/dist/types/legacyConfig/tools.js.map +1 -1
  103. package/dist/types/utils.js +4 -17
  104. package/dist/utils/builder.d.ts +20 -2
  105. package/dist/utils/builder.js +81 -68
  106. package/dist/utils/builder.js.map +1 -1
  107. package/dist/utils/common.js +10 -44
  108. package/dist/utils/common.js.map +1 -1
  109. package/dist/utils/config.js +108 -144
  110. package/dist/utils/config.js.map +1 -1
  111. package/dist/utils/context.js +16 -59
  112. package/dist/utils/context.js.map +1 -1
  113. package/dist/utils/dts.js +69 -146
  114. package/dist/utils/dts.js.map +1 -1
  115. package/dist/utils/input.js +44 -87
  116. package/dist/utils/input.js.map +1 -1
  117. package/dist/utils/language.js +15 -60
  118. package/dist/utils/language.js.map +1 -1
  119. package/dist/utils/libuildPlugins.js +27 -67
  120. package/dist/utils/libuildPlugins.js.map +1 -1
  121. package/dist/utils/log.js +14 -61
  122. package/dist/utils/log.js.map +1 -1
  123. package/dist/utils/onExit.js +14 -61
  124. package/dist/utils/onExit.js.map +1 -1
  125. package/dist/utils/path.js +13 -59
  126. package/dist/utils/path.js.map +1 -1
  127. package/dist/utils/print.js +57 -105
  128. package/dist/utils/print.js.map +1 -1
  129. package/dist/utils/style.js +54 -106
  130. package/dist/utils/style.js.map +1 -1
  131. package/dist/utils/tspathsTransform.js +44 -81
  132. package/dist/utils/tspathsTransform.js.map +1 -1
  133. package/package.json +20 -19
  134. package/scripts/debug-mode.js +23 -21
  135. package/dist/types/utils.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":null,"mappings":"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","names":["options"],"sources":["../../src/builder/build.ts"],"sourcesContent":["import { join } from 'path';\nimport { logger } from '@modern-js/utils/logger';\nimport type { CLIConfig } from '@modern-js/libuild';\nimport type {\n BuildCommandOptions,\n BaseBuildConfig,\n ModuleTools,\n PluginAPI,\n DTSOptions,\n ModuleContext,\n} from '../types';\n\nexport const runBuildTask = async (\n options: {\n buildConfig: BaseBuildConfig;\n buildCmdOptions: BuildCommandOptions;\n context: ModuleContext;\n },\n api: PluginAPI<ModuleTools>,\n) => {\n const { buildConfig, context, buildCmdOptions } = options;\n const { appDirectory, isTsProject } = context;\n\n const { copyTask } = await import('./copy');\n await copyTask(buildConfig, { appDirectory, watch: buildCmdOptions.watch });\n\n if (isTsProject) {\n await buildInTsProject(options, api);\n } else {\n await buildInJsProject(options, api);\n }\n};\n\nexport const buildInTsProject = async (\n options: {\n buildConfig: BaseBuildConfig;\n buildCmdOptions: BuildCommandOptions;\n context: ModuleContext;\n },\n api: PluginAPI<ModuleTools>,\n) => {\n const { buildConfig, buildCmdOptions } = options;\n const dts = buildCmdOptions.dts ? buildConfig.dts : false;\n const skipBuildLib = buildConfig.dts ? buildConfig.dts.only : false;\n const watch = buildCmdOptions.watch ?? false;\n\n if (dts === false) {\n // --no-dts and buildConfig is `{ dts: { only: true } }`, then skip.\n !skipBuildLib && (await buildLib(buildConfig, api, { watch }));\n } else {\n const tasks = dts.only ? [generatorDts] : [buildLib, generatorDts];\n const { default: pMap } = await import('../../compiled/p-map');\n await pMap(tasks, async task => {\n await task(buildConfig, api as any, { watch, dts });\n });\n }\n};\n\nexport const buildInJsProject = async (\n options: {\n buildConfig: BaseBuildConfig;\n buildCmdOptions: BuildCommandOptions;\n context: ModuleContext;\n },\n api: PluginAPI<ModuleTools>,\n) => {\n const { buildConfig, buildCmdOptions } = options;\n const dts = buildCmdOptions.dts ? buildConfig.dts : false;\n const watch = buildCmdOptions.watch ?? false;\n\n if (dts !== false && dts.only) {\n return;\n }\n\n await buildLib(buildConfig, api, { watch });\n};\n\nexport const generatorDts = async (\n config: BaseBuildConfig,\n api: PluginAPI<ModuleTools>,\n options: {\n watch: boolean;\n dts: DTSOptions;\n },\n) => {\n const { runRollup, runTsc } = await import('./dts');\n const { watch, dts } = options;\n const { buildType, input, sourceDir, alias } = config;\n const { appDirectory } = api.useAppContext();\n const { tsconfigPath, distPath, abortOnError } = dts;\n if (buildType === 'bundle') {\n const { getFinalExternals } = await import('../utils/builder');\n const finalExternals = await getFinalExternals(config, { appDirectory });\n\n await runRollup(api, {\n distDir: distPath,\n watch,\n externals: finalExternals,\n input,\n tsconfigPath,\n abortOnError,\n });\n } else {\n await runTsc(api, {\n appDirectory,\n alias,\n distAbsPath: distPath,\n watch,\n tsconfigPath,\n sourceDir,\n abortOnError,\n });\n }\n};\n\nexport const buildLib = async (\n config: BaseBuildConfig,\n api: PluginAPI<ModuleTools>,\n options: {\n watch: boolean;\n },\n) => {\n const { watch } = options;\n const {\n target,\n buildType,\n sourceMap,\n format,\n outDir: distPath,\n asset,\n jsx,\n input,\n platform,\n splitting,\n minify,\n sourceDir,\n umdGlobals,\n umdModuleName,\n define,\n alias,\n style,\n externals,\n autoExternal,\n dts,\n metafile,\n sideEffects,\n redirect,\n esbuildOptions,\n } = config;\n const { appDirectory } = api.useAppContext();\n const { slash } = await import('@modern-js/utils');\n const root = slash(appDirectory);\n const outdir = slash(distPath);\n const assetOutDir = asset.path ? slash(asset.path) : asset.path;\n const { less, sass, postcss, inject, modules, autoModules } = style;\n\n // support es5,umd and emitDecoratorMetadata by swc\n const { es5Plugin, umdPlugin, transformPlugin } = await import(\n '@modern-js/libuild-plugin-swc'\n );\n const plugins = format === 'umd' ? [umdPlugin(umdModuleName)] : [];\n if (target === 'es5') {\n plugins.push(es5Plugin());\n }\n const { getProjectTsconfig } = await import('./dts/tsc');\n const tsconfigPath = dts\n ? dts.tsconfigPath\n : join(appDirectory, './tsconfig.json');\n const userTsconfig = await getProjectTsconfig(tsconfigPath);\n if (userTsconfig?.compilerOptions?.emitDecoratorMetadata) {\n plugins.push(\n transformPlugin({\n jsc: {\n transform: {\n legacyDecorator: true,\n decoratorMetadata: true,\n },\n },\n }),\n );\n }\n\n // support svgr\n if (asset.svgr) {\n const { svgrPlugin } = await import('@modern-js/libuild-plugin-svgr');\n const options = typeof asset.svgr === 'boolean' ? {} : asset.svgr;\n plugins.push(svgrPlugin(options));\n }\n\n // adapt module tools\n const { watchPlugin, externalPlugin } = await import(\n '../utils/libuildPlugins'\n );\n plugins.push(watchPlugin(api, config));\n plugins.push(externalPlugin(config, { appDirectory }));\n\n const buildConfig: CLIConfig = {\n root,\n watch,\n target,\n sourceMap,\n format,\n outdir,\n define,\n style: {\n less,\n sass,\n postcss,\n inject,\n modules,\n autoModules,\n },\n resolve: {\n alias,\n },\n asset: {\n ...asset,\n outdir: assetOutDir,\n },\n plugins,\n jsx,\n input,\n platform,\n splitting,\n minify,\n sourceDir,\n metafile: metafile && buildType === 'bundle',\n globals: umdGlobals,\n external: externals,\n autoExternal,\n redirect,\n bundle: buildType === 'bundle',\n sideEffects,\n // outbase for [dir]/[name]\n outbase: sourceDir,\n esbuildOptions,\n };\n\n try {\n const { Libuilder } = await import('@modern-js/libuild');\n const { addOutputChunk } = await import('../utils/print');\n const runner = api.useHookRunners();\n const modifiedBuildConfig = await runner.modifyLibuild(buildConfig, {\n onLast: c => c,\n });\n\n const builder = await Libuilder.create(modifiedBuildConfig);\n await builder.build();\n addOutputChunk(builder.outputChunk, root, buildType === 'bundle');\n\n if (watch) {\n const { watchSectionTitle } = await import('../utils/log');\n const { SectionTitleStatus } = await import('../constants/log');\n const titleText = `[${\n buildType === 'bundle' ? 'Bundle' : 'Bundleless'\n }: ${format}_${target}]`;\n\n logger.info(\n await watchSectionTitle(titleText, SectionTitleStatus.Success),\n );\n }\n } catch (e: any) {\n const { InternalBuildError } = await import('../error');\n throw new InternalBuildError(e, {\n target,\n format,\n buildType,\n });\n }\n};\n"]}
1
+ {"version":3,"file":null,"mappings":"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","names":["runBuildTask","buildInTsProject","buildInJsProject","generatorDts","buildLib","options","api","buildConfig","context","buildCmdOptions","appDirectory","isTsProject","copyTask","watch","dts","skipBuildLib","only","tasks","default","pMap","task","config","runRollup","runTsc","buildType","input","sourceDir","alias","useAppContext","tsconfigPath","distPath","abortOnError","getFinalExternals","finalExternals","distDir","externals","distAbsPath","target","sourceMap","format","outDir","asset","jsx","platform","splitting","minify","umdGlobals","umdModuleName","define","style","autoExternal","metafile","sideEffects","redirect","esbuildOptions","externalHelpers","transformImport","sourceType","disableSwcTransform","slash","root","outdir","assetOutDir","path","less","sass","postcss","inject","modules","autoModules","umdPlugin","swcTransformPlugin","es5Plugin","checkSwcHelpers","matchEs5PluginCondition","matchSwcTransformCondition","getProjectTsconfig","join","userTsconfig","plugins","push","pluginImport","Boolean","emitDecoratorMetadata","compilerOptions","svgr","svgrPlugin","watchPlugin","externalPlugin","resolve","globals","external","bundle","outbase","Libuilder","addOutputChunk","runner","useHookRunners","modifiedBuildConfig","modifyLibuild","onLast","c","builder","create","build","outputChunk","watchSectionTitle","SectionTitleStatus","titleText","logger","info","Success","e","InternalBuildError"],"sources":["../../src/builder/Users/bytedance/github/targeral/modern-js/packages/solutions/module-tools/src/builder/build.ts"],"sourcesContent":["import { join } from 'path';\nimport { logger } from '@modern-js/utils/logger';\nimport type { CLIConfig } from '@modern-js/libuild';\nimport type {\n BuildCommandOptions,\n BaseBuildConfig,\n ModuleTools,\n PluginAPI,\n DTSOptions,\n ModuleContext,\n} from '../types';\n\nexport const runBuildTask = async (\n options: {\n buildConfig: BaseBuildConfig;\n buildCmdOptions: BuildCommandOptions;\n context: ModuleContext;\n },\n api: PluginAPI<ModuleTools>,\n) => {\n const { buildConfig, context, buildCmdOptions } = options;\n const { appDirectory, isTsProject } = context;\n\n const { copyTask } = await import('./copy');\n await copyTask(buildConfig, { appDirectory, watch: buildCmdOptions.watch });\n\n if (isTsProject) {\n await buildInTsProject(options, api);\n } else {\n await buildInJsProject(options, api);\n }\n};\n\nexport const buildInTsProject = async (\n options: {\n buildConfig: BaseBuildConfig;\n buildCmdOptions: BuildCommandOptions;\n context: ModuleContext;\n },\n api: PluginAPI<ModuleTools>,\n) => {\n const { buildConfig, buildCmdOptions } = options;\n const dts = buildCmdOptions.dts ? buildConfig.dts : false;\n const skipBuildLib = buildConfig.dts ? buildConfig.dts.only : false;\n const watch = buildCmdOptions.watch ?? false;\n\n if (dts === false) {\n // --no-dts and buildConfig is `{ dts: { only: true } }`, then skip.\n !skipBuildLib && (await buildLib(buildConfig, api, { watch }));\n } else {\n const tasks = dts.only ? [generatorDts] : [buildLib, generatorDts];\n const { default: pMap } = await import('../../compiled/p-map');\n await pMap(tasks, async task => {\n await task(buildConfig, api as any, { watch, dts });\n });\n }\n};\n\nexport const buildInJsProject = async (\n options: {\n buildConfig: BaseBuildConfig;\n buildCmdOptions: BuildCommandOptions;\n context: ModuleContext;\n },\n api: PluginAPI<ModuleTools>,\n) => {\n const { buildConfig, buildCmdOptions } = options;\n const dts = buildCmdOptions.dts ? buildConfig.dts : false;\n const watch = buildCmdOptions.watch ?? false;\n\n if (dts !== false && dts.only) {\n return;\n }\n\n await buildLib(buildConfig, api, { watch });\n};\n\nexport const generatorDts = async (\n config: BaseBuildConfig,\n api: PluginAPI<ModuleTools>,\n options: {\n watch: boolean;\n dts: DTSOptions;\n },\n) => {\n const { runRollup, runTsc } = await import('./dts');\n const { watch, dts } = options;\n const { buildType, input, sourceDir, alias } = config;\n const { appDirectory } = api.useAppContext();\n const { tsconfigPath, distPath, abortOnError } = dts;\n if (buildType === 'bundle') {\n const { getFinalExternals } = await import('../utils/builder');\n const finalExternals = await getFinalExternals(config, { appDirectory });\n\n await runRollup(api, {\n distDir: distPath,\n watch,\n externals: finalExternals,\n input,\n tsconfigPath,\n abortOnError,\n });\n } else {\n await runTsc(api, {\n appDirectory,\n alias,\n distAbsPath: distPath,\n watch,\n tsconfigPath,\n sourceDir,\n abortOnError,\n });\n }\n};\n\nexport const buildLib = async (\n config: BaseBuildConfig,\n api: PluginAPI<ModuleTools>,\n options: {\n watch: boolean;\n },\n) => {\n const { watch } = options;\n const {\n target,\n buildType,\n sourceMap,\n format,\n outDir: distPath,\n asset,\n jsx,\n input,\n platform,\n splitting,\n minify,\n sourceDir,\n umdGlobals,\n umdModuleName,\n define,\n alias,\n style,\n externals,\n autoExternal,\n dts,\n metafile,\n sideEffects,\n redirect,\n esbuildOptions,\n externalHelpers,\n transformImport,\n sourceType,\n disableSwcTransform,\n } = config;\n const { appDirectory } = api.useAppContext();\n const { slash } = await import('@modern-js/utils');\n const root = slash(appDirectory);\n const outdir = slash(distPath);\n const assetOutDir = asset.path ? slash(asset.path) : asset.path;\n const { less, sass, postcss, inject, modules, autoModules } = style;\n\n // support swc-transform, umd and emitDecoratorMetadata by swc\n const { umdPlugin, swcTransformPlugin, es5Plugin } = await import(\n '@modern-js/libuild-plugin-swc'\n );\n const {\n checkSwcHelpers,\n matchEs5PluginCondition,\n matchSwcTransformCondition,\n } = await import('../utils/builder');\n\n const { getProjectTsconfig } = await import('./dts/tsc');\n const tsconfigPath = dts\n ? dts.tsconfigPath\n : join(appDirectory, './tsconfig.json');\n const userTsconfig = await getProjectTsconfig(tsconfigPath);\n\n const plugins = [];\n\n if (\n matchSwcTransformCondition({\n sourceType,\n buildType,\n format,\n disableSwcTransform,\n })\n ) {\n plugins.push(\n swcTransformPlugin({\n pluginImport: transformImport,\n externalHelpers: Boolean(externalHelpers),\n emitDecoratorMetadata:\n userTsconfig?.compilerOptions?.emitDecoratorMetadata,\n }),\n );\n } else if (\n matchEs5PluginCondition({\n sourceType,\n buildType,\n format,\n target,\n disableSwcTransform,\n })\n ) {\n plugins.push(es5Plugin());\n }\n\n if (format === 'umd') {\n plugins.push(umdPlugin(umdModuleName));\n }\n\n await checkSwcHelpers({ appDirectory, externalHelpers });\n\n // support svgr\n if (asset.svgr) {\n const { svgrPlugin } = await import('@modern-js/libuild-plugin-svgr');\n const options = typeof asset.svgr === 'boolean' ? {} : asset.svgr;\n plugins.push(svgrPlugin(options));\n }\n\n // adapt module tools\n const { watchPlugin, externalPlugin } = await import(\n '../utils/libuildPlugins'\n );\n plugins.push(watchPlugin(api, config));\n plugins.push(externalPlugin(config, { appDirectory }));\n\n const buildConfig: CLIConfig = {\n root,\n watch,\n target,\n sourceMap,\n format,\n outdir,\n define,\n style: {\n less,\n sass,\n postcss,\n inject,\n modules,\n autoModules,\n },\n resolve: {\n alias,\n },\n asset: {\n ...asset,\n outdir: assetOutDir,\n },\n plugins,\n jsx,\n input,\n platform,\n splitting,\n minify,\n sourceDir,\n metafile: metafile && buildType === 'bundle',\n globals: umdGlobals,\n external: externals,\n autoExternal,\n redirect,\n bundle: buildType === 'bundle',\n sideEffects,\n // outbase for [dir]/[name]\n outbase: sourceDir,\n esbuildOptions,\n };\n\n try {\n const { Libuilder } = await import('@modern-js/libuild');\n const { addOutputChunk } = await import('../utils/print');\n const runner = api.useHookRunners();\n const modifiedBuildConfig = await runner.modifyLibuild(buildConfig, {\n onLast: c => c,\n });\n\n const builder = await Libuilder.create(modifiedBuildConfig);\n await builder.build();\n addOutputChunk(builder.outputChunk, root, buildType === 'bundle');\n\n if (watch) {\n const { watchSectionTitle } = await import('../utils/log');\n const { SectionTitleStatus } = await import('../constants/log');\n const titleText = `[${\n buildType === 'bundle' ? 'Bundle' : 'Bundleless'\n }: ${format}_${target}]`;\n\n logger.info(\n await watchSectionTitle(titleText, SectionTitleStatus.Success),\n );\n }\n } catch (e: any) {\n const { InternalBuildError } = await import('../error');\n throw new InternalBuildError(e, {\n target,\n format,\n buildType,\n });\n }\n};\n"]}
@@ -1,74 +1,32 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
- var __async = (__this, __arguments, generator) => {
29
- return new Promise((resolve, reject) => {
30
- var fulfilled = (value) => {
31
- try {
32
- step(generator.next(value));
33
- } catch (e) {
34
- reject(e);
35
- }
36
- };
37
- var rejected = (value) => {
38
- try {
39
- step(generator.throw(value));
40
- } catch (e) {
41
- reject(e);
42
- }
43
- };
44
- var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
45
- step((generator = generator.apply(__this, __arguments)).next());
46
- });
47
- };
48
- var clear_exports = {};
49
- __export(clear_exports, {
50
- clearBuildConfigPaths: () => clearBuildConfigPaths,
51
- clearDtsTemp: () => clearDtsTemp
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
52
4
  });
53
- module.exports = __toCommonJS(clear_exports);
54
- const clearDtsTemp = () => __async(void 0, null, function* () {
55
- const { fs } = yield Promise.resolve().then(() => __toESM(require("@modern-js/utils")));
56
- const { dtsTempDirectory } = yield Promise.resolve().then(() => __toESM(require("../constants/dts")));
57
- yield fs.remove(dtsTempDirectory);
5
+ function _export(target, all) {
6
+ for (var name in all)
7
+ Object.defineProperty(target, name, {
8
+ enumerable: true,
9
+ get: all[name]
10
+ });
11
+ }
12
+ _export(exports, {
13
+ clearDtsTemp: () => clearDtsTemp,
14
+ clearBuildConfigPaths: () => clearBuildConfigPaths
58
15
  });
59
- const clearBuildConfigPaths = (configs, noClear) => __async(void 0, null, function* () {
60
- const { fs } = yield Promise.resolve().then(() => __toESM(require("@modern-js/utils")));
16
+ const _interop_require_wildcard = require("@swc/helpers/_/_interop_require_wildcard");
17
+ const clearDtsTemp = async () => {
18
+ const { fs } = await Promise.resolve().then(() => /* @__PURE__ */ _interop_require_wildcard._(require("@modern-js/utils")));
19
+ const { dtsTempDirectory } = await Promise.resolve().then(() => /* @__PURE__ */ _interop_require_wildcard._(require("../constants/dts")));
20
+ await fs.remove(dtsTempDirectory);
21
+ };
22
+ const clearBuildConfigPaths = async (configs, noClear) => {
23
+ const { fs } = await Promise.resolve().then(() => /* @__PURE__ */ _interop_require_wildcard._(require("@modern-js/utils")));
61
24
  if (noClear) {
62
25
  return;
63
26
  }
64
27
  for (const config of configs) {
65
- yield fs.remove(config.outDir);
28
+ await fs.remove(config.outDir);
66
29
  }
67
- });
68
- // Annotate the CommonJS export names for ESM import in node:
69
- 0 && (module.exports = {
70
- clearBuildConfigPaths,
71
- clearDtsTemp
72
- });
30
+ };
73
31
 
74
32
  //# sourceMappingURL=clear.js.map
@@ -1 +1 @@
1
- {"version":3,"file":null,"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEO,MAAM,eAAe,MAAY;AACtC,QAAM,EAAE,GAAG,IAAI,MAAM,6CAAO,kBAAkB;AAC9C,QAAM,EAAE,iBAAiB,IAAI,MAAM,6CAAO,kBAAkB;AAC5D,QAAM,GAAG,OAAO,gBAAgB;AAClC;AAEO,MAAM,wBAAwB,CACnC,SACA,YACG;AACH,QAAM,EAAE,GAAG,IAAI,MAAM,6CAAO,kBAAkB;AAE9C,MAAI,SAAS;AACX;AAAA,EACF;AAEA,aAAW,UAAU,SAAS;AAC5B,UAAM,GAAG,OAAO,OAAO,MAAM;AAAA,EAC/B;AACF;;;;;;","names":[],"sources":["../../src/builder/clear.ts"],"sourcesContent":["import type { BaseBuildConfig } from '../types';\n\nexport const clearDtsTemp = async () => {\n const { fs } = await import('@modern-js/utils');\n const { dtsTempDirectory } = await import('../constants/dts');\n await fs.remove(dtsTempDirectory);\n};\n\nexport const clearBuildConfigPaths = async (\n configs: BaseBuildConfig[],\n noClear: boolean,\n) => {\n const { fs } = await import('@modern-js/utils');\n\n if (noClear) {\n return;\n }\n\n for (const config of configs) {\n await fs.remove(config.outDir);\n }\n};\n"]}
1
+ {"version":3,"file":null,"mappings":";;;;;;;;;;;;EAEaA,cAAY,MAAZA;EAMAC,uBAAqB,MAArBA;;;AANN,MAAMD,eAAe,YAAY;AACtC,QAAM,EAAEE,GAAE,IAAK,MAAM,iFAAO;AAC5B,QAAM,EAAEC,iBAAgB,IAAK,MAAM,iFAAO;AAC1C,QAAMD,GAAGE,OAAOD;AAClB;AAEO,MAAMF,wBAAwB,OACnCI,SACAC,YACG;AACH,QAAM,EAAEJ,GAAE,IAAK,MAAM,iFAAO;AAE5B,MAAII,SAAS;AACX;EACF;AAEA,aAAWC,UAAUF,SAAS;AAC5B,UAAMH,GAAGE,OAAOG,OAAOC,MAAM;EAC/B;AACF;","names":["clearDtsTemp","clearBuildConfigPaths","fs","dtsTempDirectory","remove","configs","noClear","config","outDir"],"sources":["../../src/builder/Users/bytedance/github/targeral/modern-js/packages/solutions/module-tools/src/builder/clear.ts"],"sourcesContent":["import type { BaseBuildConfig } from '../types';\n\nexport const clearDtsTemp = async () => {\n const { fs } = await import('@modern-js/utils');\n const { dtsTempDirectory } = await import('../constants/dts');\n await fs.remove(dtsTempDirectory);\n};\n\nexport const clearBuildConfigPaths = async (\n configs: BaseBuildConfig[],\n noClear: boolean,\n) => {\n const { fs } = await import('@modern-js/utils');\n\n if (noClear) {\n return;\n }\n\n for (const config of configs) {\n await fs.remove(config.outDir);\n }\n};\n"]}
@@ -1,100 +1,48 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __defProps = Object.defineProperties;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
6
- var __getOwnPropNames = Object.getOwnPropertyNames;
7
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
8
- var __getProtoOf = Object.getPrototypeOf;
9
- var __hasOwnProp = Object.prototype.hasOwnProperty;
10
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
11
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
12
- var __spreadValues = (a, b) => {
13
- for (var prop in b || (b = {}))
14
- if (__hasOwnProp.call(b, prop))
15
- __defNormalProp(a, prop, b[prop]);
16
- if (__getOwnPropSymbols)
17
- for (var prop of __getOwnPropSymbols(b)) {
18
- if (__propIsEnum.call(b, prop))
19
- __defNormalProp(a, prop, b[prop]);
20
- }
21
- return a;
22
- };
23
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
24
- var __export = (target, all) => {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
25
6
  for (var name in all)
26
- __defProp(target, name, { get: all[name], enumerable: true });
27
- };
28
- var __copyProps = (to, from, except, desc) => {
29
- if (from && typeof from === "object" || typeof from === "function") {
30
- for (let key of __getOwnPropNames(from))
31
- if (!__hasOwnProp.call(to, key) && key !== except)
32
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
33
- }
34
- return to;
35
- };
36
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
37
- // If the importer is in node compatibility mode or this is not an ESM
38
- // file that has been converted to a CommonJS file using a Babel-
39
- // compatible transform (i.e. "__esModule" has not been set), then set
40
- // "default" to the CommonJS "module.exports" for node compatibility.
41
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
42
- mod
43
- ));
44
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
45
- var __async = (__this, __arguments, generator) => {
46
- return new Promise((resolve, reject) => {
47
- var fulfilled = (value) => {
48
- try {
49
- step(generator.next(value));
50
- } catch (e) {
51
- reject(e);
52
- }
53
- };
54
- var rejected = (value) => {
55
- try {
56
- step(generator.throw(value));
57
- } catch (e) {
58
- reject(e);
59
- }
60
- };
61
- var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
62
- step((generator = generator.apply(__this, __arguments)).next());
63
- });
64
- };
65
- var copy_exports = {};
66
- __export(copy_exports, {
67
- copyTask: () => copyTask,
7
+ Object.defineProperty(target, name, {
8
+ enumerable: true,
9
+ get: all[name]
10
+ });
11
+ }
12
+ _export(exports, {
68
13
  runPatterns: () => runPatterns,
69
- watchCopyFiles: () => watchCopyFiles
14
+ watchCopyFiles: () => watchCopyFiles,
15
+ copyTask: () => copyTask
70
16
  });
71
- module.exports = __toCommonJS(copy_exports);
72
- var import_path = __toESM(require("path"));
73
- var import_logger = require("@modern-js/utils/logger");
17
+ const _interop_require_default = require("@swc/helpers/_/_interop_require_default");
18
+ const _interop_require_wildcard = require("@swc/helpers/_/_interop_require_wildcard");
19
+ const _path = /* @__PURE__ */ _interop_require_default._(require("path"));
20
+ const _logger = require("@modern-js/utils/logger");
74
21
  const watchMap = /* @__PURE__ */ new Map();
75
- const runPatterns = (pattern, options) => __async(void 0, null, function* () {
76
- var _a;
77
- const { fs, fastGlob, globby } = yield Promise.resolve().then(() => __toESM(require("@modern-js/utils")));
78
- const { default: normalizePath } = yield Promise.resolve().then(() => __toESM(require("../../compiled/normalize-path")));
22
+ const runPatterns = async (pattern, options) => {
23
+ const { fs, fastGlob, globby } = await Promise.resolve().then(() => /* @__PURE__ */ _interop_require_wildcard._(require("@modern-js/utils")));
24
+ const { default: normalizePath } = await Promise.resolve().then(() => /* @__PURE__ */ _interop_require_wildcard._(require("../../compiled/normalize-path")));
79
25
  const { appDirectory, enableCopySync = false } = options;
80
26
  const { from, globOptions = {} } = pattern;
81
- const targetPattern = __spreadValues({}, pattern);
82
- const normalizedFrom = import_path.default.normalize(from);
27
+ const targetPattern = {
28
+ ...pattern
29
+ };
30
+ const normalizedFrom = _path.default.normalize(from);
83
31
  const defaultAbsContext = options.defaultContext;
84
32
  if (typeof pattern.context === "string") {
85
- targetPattern.context = import_path.default.isAbsolute(pattern.context) ? pattern.context : import_path.default.join(appDirectory, pattern.context);
33
+ targetPattern.context = _path.default.isAbsolute(pattern.context) ? pattern.context : _path.default.join(appDirectory, pattern.context);
86
34
  } else {
87
35
  targetPattern.context = defaultAbsContext;
88
36
  }
89
37
  let absoluteFrom;
90
- if (import_path.default.isAbsolute(normalizedFrom)) {
38
+ if (_path.default.isAbsolute(normalizedFrom)) {
91
39
  absoluteFrom = normalizedFrom;
92
40
  } else {
93
- absoluteFrom = import_path.default.resolve(targetPattern.context, normalizedFrom);
41
+ absoluteFrom = _path.default.resolve(targetPattern.context, normalizedFrom);
94
42
  }
95
43
  let stats;
96
44
  try {
97
- stats = yield fs.stat(absoluteFrom);
45
+ stats = await fs.stat(absoluteFrom);
98
46
  } catch (error) {
99
47
  }
100
48
  let fromType;
@@ -113,141 +61,112 @@ const runPatterns = (pattern, options) => __async(void 0, null, function* () {
113
61
  switch (fromType) {
114
62
  case "dir":
115
63
  targetPattern.context = absoluteFrom;
116
- glob = import_path.default.posix.join(
117
- fastGlob.escapePath(normalizePath(import_path.default.resolve(absoluteFrom))),
118
- "**/*"
119
- );
120
- absoluteFrom = import_path.default.join(absoluteFrom, "**/*");
64
+ glob = _path.default.posix.join(fastGlob.escapePath(normalizePath(_path.default.resolve(absoluteFrom))), "**/*");
65
+ absoluteFrom = _path.default.join(absoluteFrom, "**/*");
121
66
  if (typeof globOptions.dot === "undefined") {
122
67
  globOptions.dot = true;
123
68
  }
124
69
  break;
125
70
  case "file":
126
- targetPattern.context = import_path.default.dirname(absoluteFrom);
127
- glob = fastGlob.escapePath(normalizePath(import_path.default.resolve(absoluteFrom)));
71
+ targetPattern.context = _path.default.dirname(absoluteFrom);
72
+ glob = fastGlob.escapePath(normalizePath(_path.default.resolve(absoluteFrom)));
128
73
  if (typeof globOptions.dot === "undefined") {
129
74
  globOptions.dot = true;
130
75
  }
131
76
  break;
132
77
  case "glob":
133
78
  default: {
134
- glob = import_path.default.isAbsolute(from) ? from : import_path.default.posix.join(
135
- fastGlob.escapePath(
136
- normalizePath(
137
- import_path.default.resolve((_a = targetPattern.context) != null ? _a : appDirectory)
138
- )
139
- ),
140
- from
141
- );
79
+ var _targetPattern_context;
80
+ glob = _path.default.isAbsolute(from) ? from : _path.default.posix.join(fastGlob.escapePath(normalizePath(_path.default.resolve((_targetPattern_context = targetPattern.context) !== null && _targetPattern_context !== void 0 ? _targetPattern_context : appDirectory))), from);
142
81
  }
143
82
  }
144
- const globEntries = yield globby(glob, __spreadProps(__spreadValues(__spreadValues({}, { followSymbolicLinks: true }), targetPattern.globOptions || {}), {
83
+ const globEntries = await globby(glob, {
84
+ ...{
85
+ followSymbolicLinks: true
86
+ },
87
+ ...targetPattern.globOptions || {},
145
88
  cwd: targetPattern.context,
146
89
  objectMode: true
147
- }));
148
- const { default: pMap } = yield Promise.resolve().then(() => __toESM(require("../../compiled/p-map")));
149
- pMap(globEntries, (globEntry) => __async(void 0, null, function* () {
150
- var _a2;
90
+ });
91
+ const { default: pMap } = await Promise.resolve().then(() => /* @__PURE__ */ _interop_require_wildcard._(require("../../compiled/p-map")));
92
+ pMap(globEntries, async (globEntry) => {
151
93
  if (!globEntry.dirent.isFile()) {
152
94
  return;
153
95
  }
154
96
  const from2 = globEntry.path;
155
- const absoluteFrom2 = import_path.default.resolve(targetPattern.context, from2);
156
- const to = import_path.default.normalize(
157
- typeof targetPattern.to !== "undefined" ? targetPattern.to : ""
158
- );
159
- const toType = import_path.default.extname(to) === "" || to.slice(-1) === import_path.default.sep ? "dir" : "file";
160
- const relativeFrom = import_path.default.relative(
161
- (_a2 = targetPattern.context) != null ? _a2 : defaultAbsContext,
162
- absoluteFrom2
163
- );
164
- const filename = toType === "dir" ? import_path.default.join(to, relativeFrom) : to;
165
- const absoluteTo = import_path.default.isAbsolute(filename) ? filename : import_path.default.join(options.outDir, filename);
97
+ const absoluteFrom2 = _path.default.resolve(targetPattern.context, from2);
98
+ const to = _path.default.normalize(typeof targetPattern.to !== "undefined" ? targetPattern.to : "");
99
+ const toType = _path.default.extname(to) === "" || to.slice(-1) === _path.default.sep ? "dir" : "file";
100
+ var _targetPattern_context2;
101
+ const relativeFrom = _path.default.relative((_targetPattern_context2 = targetPattern.context) !== null && _targetPattern_context2 !== void 0 ? _targetPattern_context2 : defaultAbsContext, absoluteFrom2);
102
+ const filename = toType === "dir" ? _path.default.join(to, relativeFrom) : to;
103
+ const absoluteTo = _path.default.isAbsolute(filename) ? filename : _path.default.join(options.outDir, filename);
166
104
  if (options.watch) {
167
105
  watchMap.set(absoluteFrom2, absoluteTo);
168
106
  }
169
107
  if (enableCopySync) {
170
108
  fs.copySync(absoluteFrom2, absoluteTo);
171
109
  } else {
172
- yield fs.copy(absoluteFrom2, absoluteTo);
110
+ await fs.copy(absoluteFrom2, absoluteTo);
173
111
  }
174
- }));
175
- });
176
- const watchCopyFiles = (options, copyConfig) => __async(void 0, null, function* () {
177
- const { watch, fs, logger: logger2, createDebugger } = yield Promise.resolve().then(() => __toESM(require("@modern-js/utils")));
112
+ });
113
+ };
114
+ const watchCopyFiles = async (options, copyConfig) => {
115
+ const { watch, fs, logger, createDebugger } = await Promise.resolve().then(() => /* @__PURE__ */ _interop_require_wildcard._(require("@modern-js/utils")));
178
116
  const debug = createDebugger("module-tools:copy-watch");
179
117
  debug("watchMap", watchMap);
180
- const { SectionTitleStatus, CopyLogPrefix } = yield Promise.resolve().then(() => __toESM(require("../constants/log")));
181
- const { watchSectionTitle } = yield Promise.resolve().then(() => __toESM(require("../utils/log")));
118
+ const { SectionTitleStatus, CopyLogPrefix } = await Promise.resolve().then(() => /* @__PURE__ */ _interop_require_wildcard._(require("../constants/log")));
119
+ const { watchSectionTitle } = await Promise.resolve().then(() => /* @__PURE__ */ _interop_require_wildcard._(require("../utils/log")));
182
120
  const watchList = Array.from(watchMap.keys());
183
121
  debug("watchList", watchList);
184
- watch(watchList, (_0) => __async(void 0, [_0], function* ({ changedFilePath, changeType }) {
185
- var _a;
122
+ watch(watchList, async ({ changedFilePath, changeType }) => {
123
+ var _copyConfig_options;
186
124
  const result = watchMap.get(changedFilePath);
187
125
  if (!result) {
188
126
  return;
189
127
  }
190
- const formatFilePath = import_path.default.relative(options.appDirectory, changedFilePath);
128
+ const formatFilePath = _path.default.relative(options.appDirectory, changedFilePath);
191
129
  if (changeType === "unlink") {
192
130
  fs.remove(result);
193
- logger2.log(
194
- yield watchSectionTitle(
195
- CopyLogPrefix,
196
- SectionTitleStatus.Log,
197
- `${formatFilePath} removed`
198
- )
199
- );
131
+ logger.log(await watchSectionTitle(CopyLogPrefix, SectionTitleStatus.Log, `${formatFilePath} removed`));
200
132
  return;
201
133
  }
202
- if ((_a = copyConfig == null ? void 0 : copyConfig.options) == null ? void 0 : _a.enableCopySync) {
134
+ if (copyConfig === null || copyConfig === void 0 ? void 0 : (_copyConfig_options = copyConfig.options) === null || _copyConfig_options === void 0 ? void 0 : _copyConfig_options.enableCopySync) {
203
135
  fs.copySync(changedFilePath, result);
204
136
  } else {
205
- yield fs.copy(changedFilePath, result);
137
+ await fs.copy(changedFilePath, result);
206
138
  }
207
- logger2.log(
208
- yield watchSectionTitle(
209
- CopyLogPrefix,
210
- SectionTitleStatus.Log,
211
- `${formatFilePath} changed`
212
- )
213
- );
214
- }));
215
- });
216
- const copyTask = (buildConfig, options) => __async(void 0, null, function* () {
217
- var _a;
139
+ logger.log(await watchSectionTitle(CopyLogPrefix, SectionTitleStatus.Log, `${formatFilePath} changed`));
140
+ });
141
+ };
142
+ const copyTask = async (buildConfig, options) => {
143
+ var _copyConfig_options;
218
144
  const copyConfig = buildConfig.copy;
219
145
  if (!copyConfig.patterns || copyConfig.patterns.length === 0) {
220
146
  return;
221
147
  }
222
- const { default: pMap } = yield Promise.resolve().then(() => __toESM(require("../../compiled/p-map")));
223
- const concurrency = ((_a = copyConfig == null ? void 0 : copyConfig.options) == null ? void 0 : _a.concurrency) || 100;
148
+ const { default: pMap } = await Promise.resolve().then(() => /* @__PURE__ */ _interop_require_wildcard._(require("../../compiled/p-map")));
149
+ const concurrency = (copyConfig === null || copyConfig === void 0 ? void 0 : (_copyConfig_options = copyConfig.options) === null || _copyConfig_options === void 0 ? void 0 : _copyConfig_options.concurrency) || 100;
224
150
  try {
225
- yield pMap(
226
- copyConfig.patterns,
227
- (copyOption) => __async(void 0, null, function* () {
228
- var _a2;
229
- yield runPatterns(copyOption, __spreadProps(__spreadValues({}, options), {
230
- enableCopySync: (_a2 = copyConfig.options) == null ? void 0 : _a2.enableCopySync,
231
- outDir: buildConfig.outDir,
232
- defaultContext: buildConfig.sourceDir
233
- }));
234
- }),
235
- { concurrency }
236
- );
151
+ await pMap(copyConfig.patterns, async (copyOption) => {
152
+ var _copyConfig_options2;
153
+ await runPatterns(copyOption, {
154
+ ...options,
155
+ enableCopySync: (_copyConfig_options2 = copyConfig.options) === null || _copyConfig_options2 === void 0 ? void 0 : _copyConfig_options2.enableCopySync,
156
+ outDir: buildConfig.outDir,
157
+ defaultContext: buildConfig.sourceDir
158
+ });
159
+ }, {
160
+ concurrency
161
+ });
237
162
  } catch (e) {
238
163
  if (e instanceof Error) {
239
- import_logger.logger.error(`copy error: ${e.message}`);
164
+ _logger.logger.error(`copy error: ${e.message}`);
240
165
  }
241
166
  }
242
167
  if (options.watch) {
243
- yield watchCopyFiles(options, copyConfig);
168
+ await watchCopyFiles(options, copyConfig);
244
169
  }
245
- });
246
- // Annotate the CommonJS export names for ESM import in node:
247
- 0 && (module.exports = {
248
- copyTask,
249
- runPatterns,
250
- watchCopyFiles
251
- });
170
+ };
252
171
 
253
172
  //# sourceMappingURL=copy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":null,"mappings":"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","names":["from","absoluteFrom","_a"],"sources":["../../src/builder/copy.ts"],"sourcesContent":["import path from 'path';\nimport { logger } from '@modern-js/utils/logger';\nimport type { CopyOptions, CopyPattern } from '../types/copy';\nimport type { BaseBuildConfig } from '../types/config';\n\nconst watchMap = new Map<string, string>();\n\nexport const runPatterns = async (\n pattern: CopyPattern,\n options: {\n appDirectory: string;\n enableCopySync?: boolean;\n outDir: string;\n defaultContext: string;\n watch?: boolean;\n },\n) => {\n const { fs, fastGlob, globby } = await import('@modern-js/utils');\n const { default: normalizePath } = await import(\n '../../compiled/normalize-path'\n );\n const { appDirectory, enableCopySync = false } = options;\n const { from, globOptions = {} } = pattern;\n const targetPattern: CopyPattern = { ...pattern };\n const normalizedFrom = path.normalize(from);\n const defaultAbsContext = options.defaultContext;\n\n // when context is relative path\n if (typeof pattern.context === 'string') {\n targetPattern.context = path.isAbsolute(pattern.context)\n ? pattern.context\n : path.join(appDirectory, pattern.context);\n } else {\n targetPattern.context = defaultAbsContext;\n }\n\n let absoluteFrom;\n if (path.isAbsolute(normalizedFrom)) {\n absoluteFrom = normalizedFrom;\n } else {\n absoluteFrom = path.resolve(targetPattern.context, normalizedFrom);\n }\n\n let stats;\n try {\n stats = await fs.stat(absoluteFrom);\n } catch (error) {\n // Do Nothing\n }\n\n let fromType: 'file' | 'dir' | 'glob';\n if (stats) {\n if (stats.isDirectory()) {\n fromType = 'dir';\n } else if (stats.isFile()) {\n fromType = 'file';\n } else {\n fromType = 'glob';\n }\n } else {\n fromType = 'glob';\n }\n\n let glob;\n\n switch (fromType) {\n case 'dir':\n targetPattern.context = absoluteFrom;\n glob = path.posix.join(\n fastGlob.escapePath(normalizePath(path.resolve(absoluteFrom))),\n '**/*',\n );\n absoluteFrom = path.join(absoluteFrom, '**/*');\n\n if (typeof globOptions.dot === 'undefined') {\n globOptions.dot = true;\n }\n break;\n case 'file':\n targetPattern.context = path.dirname(absoluteFrom);\n glob = fastGlob.escapePath(normalizePath(path.resolve(absoluteFrom)));\n\n if (typeof globOptions.dot === 'undefined') {\n globOptions.dot = true;\n }\n break;\n case 'glob':\n default: {\n glob = path.isAbsolute(from)\n ? from\n : path.posix.join(\n fastGlob.escapePath(\n normalizePath(\n path.resolve(targetPattern.context ?? appDirectory),\n ),\n ),\n from,\n );\n }\n }\n\n const globEntries = await globby(glob, {\n ...{ followSymbolicLinks: true },\n ...(targetPattern.globOptions || {}),\n cwd: targetPattern.context,\n objectMode: true,\n });\n const { default: pMap } = await import('../../compiled/p-map');\n pMap(globEntries, async globEntry => {\n if (!globEntry.dirent.isFile()) {\n return;\n }\n\n const from = globEntry.path;\n const absoluteFrom = path.resolve(targetPattern.context!, from);\n const to = path.normalize(\n typeof targetPattern.to !== 'undefined' ? targetPattern.to : '',\n );\n const toType =\n path.extname(to) === '' || to.slice(-1) === path.sep ? 'dir' : 'file';\n\n const relativeFrom = path.relative(\n targetPattern.context ?? defaultAbsContext,\n absoluteFrom,\n );\n\n const filename = toType === 'dir' ? path.join(to, relativeFrom) : to;\n\n const absoluteTo = path.isAbsolute(filename)\n ? filename\n : path.join(options.outDir, filename);\n\n if (options.watch) {\n watchMap.set(absoluteFrom, absoluteTo);\n }\n\n if (enableCopySync) {\n fs.copySync(absoluteFrom, absoluteTo);\n } else {\n await fs.copy(absoluteFrom, absoluteTo);\n }\n });\n};\n\nexport const watchCopyFiles = async (\n options: {\n appDirectory: string;\n },\n copyConfig: CopyOptions,\n) => {\n const { watch, fs, logger, createDebugger } = await import(\n '@modern-js/utils'\n );\n const debug = createDebugger('module-tools:copy-watch');\n\n debug('watchMap', watchMap);\n\n const { SectionTitleStatus, CopyLogPrefix } = await import(\n '../constants/log'\n );\n const { watchSectionTitle } = await import('../utils/log');\n const watchList = Array.from(watchMap.keys());\n\n debug('watchList', watchList);\n\n watch(watchList, async ({ changedFilePath, changeType }) => {\n const result = watchMap.get(changedFilePath);\n if (!result) {\n return;\n }\n\n const formatFilePath = path.relative(options.appDirectory, changedFilePath);\n\n if (changeType === 'unlink') {\n fs.remove(result);\n logger.log(\n await watchSectionTitle(\n CopyLogPrefix,\n SectionTitleStatus.Log,\n `${formatFilePath} removed`,\n ),\n );\n return;\n }\n\n if (copyConfig?.options?.enableCopySync) {\n fs.copySync(changedFilePath, result);\n } else {\n await fs.copy(changedFilePath, result);\n }\n\n logger.log(\n await watchSectionTitle(\n CopyLogPrefix,\n SectionTitleStatus.Log,\n `${formatFilePath} changed`,\n ),\n );\n });\n};\n\nexport const copyTask = async (\n buildConfig: BaseBuildConfig,\n options: {\n appDirectory: string;\n watch?: boolean;\n },\n) => {\n const copyConfig = buildConfig.copy;\n\n if (!copyConfig.patterns || copyConfig.patterns.length === 0) {\n return;\n }\n\n const { default: pMap } = await import('../../compiled/p-map');\n const concurrency = copyConfig?.options?.concurrency || 100;\n try {\n await pMap(\n copyConfig.patterns,\n async copyOption => {\n await runPatterns(copyOption, {\n ...options,\n enableCopySync: copyConfig.options?.enableCopySync,\n outDir: buildConfig.outDir,\n defaultContext: buildConfig.sourceDir,\n });\n },\n { concurrency },\n );\n } catch (e) {\n if (e instanceof Error) {\n logger.error(`copy error: ${e.message}`);\n }\n }\n if (options.watch) {\n await watchCopyFiles(options, copyConfig);\n }\n};\n"]}
1
+ {"version":3,"file":null,"mappings":";;;;;;;;;;;;EAOaA,aAAW,MAAXA;EAyIAC,gBAAc,MAAdA;EAyDAC,UAAQ,MAARA;;;;iEAzMI;wBACM;AAIvB,MAAMC,WAAW,oBAAIC;AAEd,MAAMJ,cAAc,OACzBK,SACAC,YAOG;AACH,QAAM,EAAEC,IAAIC,UAAUC,OAAM,IAAK,MAAM,iFAAO;AAC9C,QAAM,EAAEC,SAASC,cAAa,IAAK,MAAM,iFACvC;AAEF,QAAM,EAAEC,cAAcC,iBAAiB,MAAK,IAAKP;AACjD,QAAM,EAAEQ,MAAMC,cAAc,CAAC,EAAC,IAAKV;AACnC,QAAMW,gBAA6B;IAAE,GAAGX;EAAQ;AAChD,QAAMY,iBAAiBC,cAAKC,UAAUL;AACtC,QAAMM,oBAAoBd,QAAQe;AAGlC,MAAI,OAAOhB,QAAQiB,YAAY,UAAU;AACvCN,kBAAcM,UAAUJ,cAAKK,WAAWlB,QAAQiB,OAAO,IACnDjB,QAAQiB,UACRJ,cAAKM,KAAKZ,cAAcP,QAAQiB,OAAO;EAC7C,OAAO;AACLN,kBAAcM,UAAUF;EAC1B;AAEA,MAAIK;AACJ,MAAIP,cAAKK,WAAWN,iBAAiB;AACnCQ,mBAAeR;EACjB,OAAO;AACLQ,mBAAeP,cAAKQ,QAAQV,cAAcM,SAASL;EACrD;AAEA,MAAIU;AACJ,MAAI;AACFA,YAAQ,MAAMpB,GAAGqB,KAAKH;EACxB,SAASI,OAAP;EAEF;AAEA,MAAIC;AACJ,MAAIH,OAAO;AACT,QAAIA,MAAMI,YAAW,GAAI;AACvBD,iBAAW;IACb,WAAWH,MAAMK,OAAM,GAAI;AACzBF,iBAAW;IACb,OAAO;AACLA,iBAAW;IACb;EACF,OAAO;AACLA,eAAW;EACb;AAEA,MAAIG;AAEJ,UAAQH;IACN,KAAK;AACHd,oBAAcM,UAAUG;AACxBQ,aAAOf,cAAKgB,MAAMV,KAChBhB,SAAS2B,WAAWxB,cAAcO,cAAKQ,QAAQD,iBAC/C;AAEFA,qBAAeP,cAAKM,KAAKC,cAAc;AAEvC,UAAI,OAAOV,YAAYqB,QAAQ,aAAa;AAC1CrB,oBAAYqB,MAAM;MACpB;AACA;IACF,KAAK;AACHpB,oBAAcM,UAAUJ,cAAKmB,QAAQZ;AACrCQ,aAAOzB,SAAS2B,WAAWxB,cAAcO,cAAKQ,QAAQD;AAEtD,UAAI,OAAOV,YAAYqB,QAAQ,aAAa;AAC1CrB,oBAAYqB,MAAM;MACpB;AACA;IACF,KAAK;IACL,SAAS;UAMgBpB;AALvBiB,aAAOf,cAAKK,WAAWT,QACnBA,OACAI,cAAKgB,MAAMV,KACThB,SAAS2B,WACPxB,cACEO,cAAKQ,SAAQV,uCAAcM,aAAO,QAArBN,6DAAyBJ,YAAY,KAGtDE;IAER;EACF;AAEA,QAAMwB,cAAc,MAAM7B,OAAOwB,MAAM;IACrC,GAAG;MAAEM,qBAAqB;IAAK;IAC/B,GAAIvB,cAAcD,eAAe,CAAC;IAClCyB,KAAKxB,cAAcM;IACnBmB,YAAY;EACd;AACA,QAAM,EAAE/B,SAASgC,KAAI,IAAK,MAAM,iFAAO;AACvCA,OAAKJ,aAAa,OAAMK,cAAa;AACnC,QAAI,CAACA,UAAUC,OAAOZ,OAAM,GAAI;AAC9B;IACF;AAEA,UAAMlB,QAAO6B,UAAUzB;AACvB,UAAMO,gBAAeP,cAAKQ,QAAQV,cAAcM,SAAUR;AAC1D,UAAM+B,KAAK3B,cAAKC,UACd,OAAOH,cAAc6B,OAAO,cAAc7B,cAAc6B,KAAK,EAAE;AAEjE,UAAMC,SACJ5B,cAAK6B,QAAQF,QAAQ,MAAMA,GAAGG,MAAM,EAAC,MAAO9B,cAAK+B,MAAM,QAAQ;QAG/DjC;AADF,UAAMkC,eAAehC,cAAKiC,UACxBnC,wCAAcM,aAAO,QAArBN,+DAAyBI,mBACzBK;AAGF,UAAM2B,WAAWN,WAAW,QAAQ5B,cAAKM,KAAKqB,IAAIK,gBAAgBL;AAElE,UAAMQ,aAAanC,cAAKK,WAAW6B,YAC/BA,WACAlC,cAAKM,KAAKlB,QAAQgD,QAAQF;AAE9B,QAAI9C,QAAQiD,OAAO;AACjBpD,eAASqD,IAAI/B,eAAc4B;IAC7B;AAEA,QAAIxC,gBAAgB;AAClBN,SAAGkD,SAAShC,eAAc4B;IAC5B,OAAO;AACL,YAAM9C,GAAGmD,KAAKjC,eAAc4B;IAC9B;EACF;AACF;AAEO,MAAMpD,iBAAiB,OAC5BK,SAGAqD,eACG;AACH,QAAM,EAAEJ,OAAOhD,IAAIqD,QAAQC,eAAc,IAAK,MAAM,iFAClD;AAEF,QAAMC,QAAQD,eAAe;AAE7BC,QAAM,YAAY3D;AAElB,QAAM,EAAE4D,oBAAoBC,cAAa,IAAK,MAAM,iFAClD;AAEF,QAAM,EAAEC,kBAAiB,IAAK,MAAM,iFAAO;AAC3C,QAAMC,YAAYC,MAAMrD,KAAKX,SAASiE,KAAI;AAE1CN,QAAM,aAAaI;AAEnBX,QAAMW,WAAW,OAAO,EAAEG,iBAAiBC,WAAU,MAAO;QAoBtDX;AAnBJ,UAAMY,SAASpE,SAASqE,IAAIH;AAC5B,QAAI,CAACE,QAAQ;AACX;IACF;AAEA,UAAME,iBAAiBvD,cAAKiC,SAAS7C,QAAQM,cAAcyD;AAE3D,QAAIC,eAAe,UAAU;AAC3B/D,SAAGmE,OAAOH;AACVX,aAAOe,IACL,MAAMV,kBACJD,eACAD,mBAAmBa,KACnB,GAAGH,wBAAwB;AAG/B;IACF;AAEA,QAAId,0FAAYrD,aAAO,QAAnBqD,8DAAqB9C,gBAAgB;AACvCN,SAAGkD,SAASY,iBAAiBE;IAC/B,OAAO;AACL,YAAMhE,GAAGmD,KAAKW,iBAAiBE;IACjC;AAEAX,WAAOe,IACL,MAAMV,kBACJD,eACAD,mBAAmBa,KACnB,GAAGH,wBAAwB;EAGjC;AACF;AAEO,MAAMvE,WAAW,OACtB2E,aACAvE,YAIG;MAQiBqD;AAPpB,QAAMA,aAAakB,YAAYnB;AAE/B,MAAI,CAACC,WAAWmB,YAAYnB,WAAWmB,SAASC,WAAW,GAAG;AAC5D;EACF;AAEA,QAAM,EAAErE,SAASgC,KAAI,IAAK,MAAM,iFAAO;AACvC,QAAMsC,eAAcrB,0FAAYrD,aAAO,QAAnBqD,8DAAqBqB,gBAAe;AACxD,MAAI;AACF,UAAMtC,KACJiB,WAAWmB,UACX,OAAMG,eAAc;UAGAtB;AAFlB,YAAM3D,YAAYiF,YAAY;QAC5B,GAAG3E;QACHO,iBAAgB8C,kCAAWrD,aAAO,QAAlBqD,gEAAoB9C;QACpCyC,QAAQuB,YAAYvB;QACpBjC,gBAAgBwD,YAAYK;MAC9B;IACF,GACA;MAAEF;IAAY;EAElB,SAASG,GAAP;AACA,QAAIA,aAAaC,OAAO;AACtBxB,qBAAO/B,MAAM,eAAesD,EAAEE,SAAS;IACzC;EACF;AACA,MAAI/E,QAAQiD,OAAO;AACjB,UAAMtD,eAAeK,SAASqD;EAChC;AACF;","names":["runPatterns","watchCopyFiles","copyTask","watchMap","Map","pattern","options","fs","fastGlob","globby","default","normalizePath","appDirectory","enableCopySync","from","globOptions","targetPattern","normalizedFrom","path","normalize","defaultAbsContext","defaultContext","context","isAbsolute","join","absoluteFrom","resolve","stats","stat","error","fromType","isDirectory","isFile","glob","posix","escapePath","dot","dirname","globEntries","followSymbolicLinks","cwd","objectMode","pMap","globEntry","dirent","to","toType","extname","slice","sep","relativeFrom","relative","filename","absoluteTo","outDir","watch","set","copySync","copy","copyConfig","logger","createDebugger","debug","SectionTitleStatus","CopyLogPrefix","watchSectionTitle","watchList","Array","keys","changedFilePath","changeType","result","get","formatFilePath","remove","log","Log","buildConfig","patterns","length","concurrency","copyOption","sourceDir","e","Error","message"],"sources":["../../src/builder/Users/bytedance/github/targeral/modern-js/packages/solutions/module-tools/src/builder/copy.ts"],"sourcesContent":["import path from 'path';\nimport { logger } from '@modern-js/utils/logger';\nimport type { CopyOptions, CopyPattern } from '../types/copy';\nimport type { BaseBuildConfig } from '../types/config';\n\nconst watchMap = new Map<string, string>();\n\nexport const runPatterns = async (\n pattern: CopyPattern,\n options: {\n appDirectory: string;\n enableCopySync?: boolean;\n outDir: string;\n defaultContext: string;\n watch?: boolean;\n },\n) => {\n const { fs, fastGlob, globby } = await import('@modern-js/utils');\n const { default: normalizePath } = await import(\n '../../compiled/normalize-path'\n );\n const { appDirectory, enableCopySync = false } = options;\n const { from, globOptions = {} } = pattern;\n const targetPattern: CopyPattern = { ...pattern };\n const normalizedFrom = path.normalize(from);\n const defaultAbsContext = options.defaultContext;\n\n // when context is relative path\n if (typeof pattern.context === 'string') {\n targetPattern.context = path.isAbsolute(pattern.context)\n ? pattern.context\n : path.join(appDirectory, pattern.context);\n } else {\n targetPattern.context = defaultAbsContext;\n }\n\n let absoluteFrom;\n if (path.isAbsolute(normalizedFrom)) {\n absoluteFrom = normalizedFrom;\n } else {\n absoluteFrom = path.resolve(targetPattern.context, normalizedFrom);\n }\n\n let stats;\n try {\n stats = await fs.stat(absoluteFrom);\n } catch (error) {\n // Do Nothing\n }\n\n let fromType: 'file' | 'dir' | 'glob';\n if (stats) {\n if (stats.isDirectory()) {\n fromType = 'dir';\n } else if (stats.isFile()) {\n fromType = 'file';\n } else {\n fromType = 'glob';\n }\n } else {\n fromType = 'glob';\n }\n\n let glob;\n\n switch (fromType) {\n case 'dir':\n targetPattern.context = absoluteFrom;\n glob = path.posix.join(\n fastGlob.escapePath(normalizePath(path.resolve(absoluteFrom))),\n '**/*',\n );\n absoluteFrom = path.join(absoluteFrom, '**/*');\n\n if (typeof globOptions.dot === 'undefined') {\n globOptions.dot = true;\n }\n break;\n case 'file':\n targetPattern.context = path.dirname(absoluteFrom);\n glob = fastGlob.escapePath(normalizePath(path.resolve(absoluteFrom)));\n\n if (typeof globOptions.dot === 'undefined') {\n globOptions.dot = true;\n }\n break;\n case 'glob':\n default: {\n glob = path.isAbsolute(from)\n ? from\n : path.posix.join(\n fastGlob.escapePath(\n normalizePath(\n path.resolve(targetPattern.context ?? appDirectory),\n ),\n ),\n from,\n );\n }\n }\n\n const globEntries = await globby(glob, {\n ...{ followSymbolicLinks: true },\n ...(targetPattern.globOptions || {}),\n cwd: targetPattern.context,\n objectMode: true,\n });\n const { default: pMap } = await import('../../compiled/p-map');\n pMap(globEntries, async globEntry => {\n if (!globEntry.dirent.isFile()) {\n return;\n }\n\n const from = globEntry.path;\n const absoluteFrom = path.resolve(targetPattern.context!, from);\n const to = path.normalize(\n typeof targetPattern.to !== 'undefined' ? targetPattern.to : '',\n );\n const toType =\n path.extname(to) === '' || to.slice(-1) === path.sep ? 'dir' : 'file';\n\n const relativeFrom = path.relative(\n targetPattern.context ?? defaultAbsContext,\n absoluteFrom,\n );\n\n const filename = toType === 'dir' ? path.join(to, relativeFrom) : to;\n\n const absoluteTo = path.isAbsolute(filename)\n ? filename\n : path.join(options.outDir, filename);\n\n if (options.watch) {\n watchMap.set(absoluteFrom, absoluteTo);\n }\n\n if (enableCopySync) {\n fs.copySync(absoluteFrom, absoluteTo);\n } else {\n await fs.copy(absoluteFrom, absoluteTo);\n }\n });\n};\n\nexport const watchCopyFiles = async (\n options: {\n appDirectory: string;\n },\n copyConfig: CopyOptions,\n) => {\n const { watch, fs, logger, createDebugger } = await import(\n '@modern-js/utils'\n );\n const debug = createDebugger('module-tools:copy-watch');\n\n debug('watchMap', watchMap);\n\n const { SectionTitleStatus, CopyLogPrefix } = await import(\n '../constants/log'\n );\n const { watchSectionTitle } = await import('../utils/log');\n const watchList = Array.from(watchMap.keys());\n\n debug('watchList', watchList);\n\n watch(watchList, async ({ changedFilePath, changeType }) => {\n const result = watchMap.get(changedFilePath);\n if (!result) {\n return;\n }\n\n const formatFilePath = path.relative(options.appDirectory, changedFilePath);\n\n if (changeType === 'unlink') {\n fs.remove(result);\n logger.log(\n await watchSectionTitle(\n CopyLogPrefix,\n SectionTitleStatus.Log,\n `${formatFilePath} removed`,\n ),\n );\n return;\n }\n\n if (copyConfig?.options?.enableCopySync) {\n fs.copySync(changedFilePath, result);\n } else {\n await fs.copy(changedFilePath, result);\n }\n\n logger.log(\n await watchSectionTitle(\n CopyLogPrefix,\n SectionTitleStatus.Log,\n `${formatFilePath} changed`,\n ),\n );\n });\n};\n\nexport const copyTask = async (\n buildConfig: BaseBuildConfig,\n options: {\n appDirectory: string;\n watch?: boolean;\n },\n) => {\n const copyConfig = buildConfig.copy;\n\n if (!copyConfig.patterns || copyConfig.patterns.length === 0) {\n return;\n }\n\n const { default: pMap } = await import('../../compiled/p-map');\n const concurrency = copyConfig?.options?.concurrency || 100;\n try {\n await pMap(\n copyConfig.patterns,\n async copyOption => {\n await runPatterns(copyOption, {\n ...options,\n enableCopySync: copyConfig.options?.enableCopySync,\n outDir: buildConfig.outDir,\n defaultContext: buildConfig.sourceDir,\n });\n },\n { concurrency },\n );\n } catch (e) {\n if (e instanceof Error) {\n logger.error(`copy error: ${e.message}`);\n }\n }\n if (options.watch) {\n await watchCopyFiles(options, copyConfig);\n }\n};\n"]}
@@ -1,32 +1,19 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
- var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __export = (target, all) => {
6
- for (var name in all)
7
- __defProp(target, name, { get: all[name], enumerable: true });
8
- };
9
- var __copyProps = (to, from, except, desc) => {
10
- if (from && typeof from === "object" || typeof from === "function") {
11
- for (let key of __getOwnPropNames(from))
12
- if (!__hasOwnProp.call(to, key) && key !== except)
13
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
- }
15
- return to;
16
- };
17
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
- var dts_exports = {};
19
- __export(dts_exports, {
20
- runRollup: () => import_rollup.runRollup,
21
- runTsc: () => import_tsc.runTsc
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
22
4
  });
23
- module.exports = __toCommonJS(dts_exports);
24
- var import_rollup = require("./rollup");
25
- var import_tsc = require("./tsc");
26
- // Annotate the CommonJS export names for ESM import in node:
27
- 0 && (module.exports = {
28
- runRollup,
29
- runTsc
5
+ function _export(target, all) {
6
+ for (var name in all)
7
+ Object.defineProperty(target, name, {
8
+ enumerable: true,
9
+ get: all[name]
10
+ });
11
+ }
12
+ _export(exports, {
13
+ runRollup: () => _rollup.runRollup,
14
+ runTsc: () => _tsc.runTsc
30
15
  });
16
+ const _rollup = require("./rollup");
17
+ const _tsc = require("./tsc");
31
18
 
32
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":null,"mappings":";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA0B;AAC1B,iBAAuB;;;;;;","names":[],"sources":["../../../src/builder/dts/index.ts"],"sourcesContent":["export { runRollup } from './rollup';\nexport { runTsc } from './tsc';\n"]}
1
+ {"version":3,"file":null,"mappings":";;;;;;;;;;;;EAASA,WAAS,MAATA;EACAC,QAAM,MAANA;;wBADiB;qBACH;","names":["runRollup","runTsc"],"sources":["../../../src/builder/dts/Users/bytedance/github/targeral/modern-js/packages/solutions/module-tools/src/builder/dts/index.ts"],"sourcesContent":["export { runRollup } from './rollup';\nexport { runTsc } from './tsc';\n"]}