新增: - backend/venv/ - Python 虚拟环境 - backend/start.sh - 启动脚本(使用虚拟环境) - backend/requirements.txt - 依赖列表 - .gitignore - 忽略虚拟环境和缓存文件 说明: - 每个项目使用独立虚拟环境 - 避免依赖冲突 - 启动脚本自动创建和激活虚拟环境
45 lines
1.8 KiB
JavaScript
45 lines
1.8 KiB
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
const tapable_1 = require("tapable");
|
|
const compilerHookMap = new WeakMap();
|
|
function createForkTsCheckerWebpackPluginHooks() {
|
|
return {
|
|
start: new tapable_1.AsyncSeriesWaterfallHook([
|
|
'change',
|
|
'compilation',
|
|
]),
|
|
waiting: new tapable_1.SyncHook(['compilation']),
|
|
canceled: new tapable_1.SyncHook(['compilation']),
|
|
error: new tapable_1.SyncHook(['error', 'compilation']),
|
|
issues: new tapable_1.SyncWaterfallHook([
|
|
'issues',
|
|
'compilation',
|
|
]),
|
|
};
|
|
}
|
|
function forwardForkTsCheckerWebpackPluginHooks(source, target) {
|
|
source.start.tapPromise('ForkTsCheckerWebpackPlugin', target.start.promise);
|
|
source.waiting.tap('ForkTsCheckerWebpackPlugin', target.waiting.call);
|
|
source.canceled.tap('ForkTsCheckerWebpackPlugin', target.canceled.call);
|
|
source.error.tap('ForkTsCheckerWebpackPlugin', target.error.call);
|
|
source.issues.tap('ForkTsCheckerWebpackPlugin', target.issues.call);
|
|
}
|
|
function getForkTsCheckerWebpackPluginHooks(compiler) {
|
|
let hooks = compilerHookMap.get(compiler);
|
|
if (hooks === undefined) {
|
|
hooks = createForkTsCheckerWebpackPluginHooks();
|
|
compilerHookMap.set(compiler, hooks);
|
|
// proxy hooks for multi-compiler
|
|
if ('compilers' in compiler) {
|
|
compiler.compilers.forEach((childCompiler) => {
|
|
const childHooks = getForkTsCheckerWebpackPluginHooks(childCompiler);
|
|
if (hooks) {
|
|
forwardForkTsCheckerWebpackPluginHooks(childHooks, hooks);
|
|
}
|
|
});
|
|
}
|
|
}
|
|
return hooks;
|
|
}
|
|
exports.getForkTsCheckerWebpackPluginHooks = getForkTsCheckerWebpackPluginHooks;
|