mirror of
https://github.com/affaan-m/everything-claude-code.git
synced 2026-03-30 21:53:28 +08:00
43 lines
1.1 KiB
JavaScript
43 lines
1.1 KiB
JavaScript
'use strict';
|
|
|
|
const {
|
|
createLegacyInstallPlan,
|
|
createManifestInstallPlan,
|
|
} = require('../install-executor');
|
|
|
|
function createInstallPlanFromRequest(request, options = {}) {
|
|
if (!request || typeof request !== 'object') {
|
|
throw new Error('A normalized install request is required');
|
|
}
|
|
|
|
if (request.mode === 'manifest') {
|
|
return createManifestInstallPlan({
|
|
target: request.target,
|
|
profileId: request.profileId,
|
|
moduleIds: request.moduleIds,
|
|
includeComponentIds: request.includeComponentIds,
|
|
excludeComponentIds: request.excludeComponentIds,
|
|
projectRoot: options.projectRoot,
|
|
homeDir: options.homeDir,
|
|
sourceRoot: options.sourceRoot,
|
|
});
|
|
}
|
|
|
|
if (request.mode === 'legacy') {
|
|
return createLegacyInstallPlan({
|
|
target: request.target,
|
|
languages: request.languages,
|
|
projectRoot: options.projectRoot,
|
|
homeDir: options.homeDir,
|
|
claudeRulesDir: options.claudeRulesDir,
|
|
sourceRoot: options.sourceRoot,
|
|
});
|
|
}
|
|
|
|
throw new Error(`Unsupported install request mode: ${request.mode}`);
|
|
}
|
|
|
|
module.exports = {
|
|
createInstallPlanFromRequest,
|
|
};
|