d48cda4081
CI / Test (ubuntu-latest, Node 18.x, bun) (push) Failing after 15m1s
CI / Test (ubuntu-latest, Node 18.x, npm) (push) Failing after 15m1s
CI / Test (ubuntu-latest, Node 18.x, pnpm) (push) Failing after 15m1s
CI / Test (ubuntu-latest, Node 18.x, yarn) (push) Failing after 15m1s
CI / Test (ubuntu-latest, Node 20.x, bun) (push) Failing after 17m13s
CI / Test (ubuntu-latest, Node 20.x, npm) (push) Failing after 18m42s
CI / Test (ubuntu-latest, Node 20.x, pnpm) (push) Failing after 15m0s
CI / Test (ubuntu-latest, Node 20.x, yarn) (push) Failing after 49m44s
CI / Test (ubuntu-latest, Node 22.x, bun) (push) Failing after 51m55s
CI / Test (ubuntu-latest, Node 22.x, pnpm) (push) Failing after 21m57s
CI / Test (ubuntu-latest, Node 22.x, npm) (push) Failing after 37m39s
CI / Test (ubuntu-latest, Node 22.x, yarn) (push) Failing after 34m7s
CI / Validate Components (push) Failing after 37m15s
CI / Python Tests (push) Failing after 10m1s
CI / Security Scan (push) Failing after 10m1s
CI / Lint (push) Failing after 17m12s
CI / Coverage (push) Failing after 20m19s
CI / Test (macos-latest, Node 18.x, bun) (push) Has been cancelled
CI / Test (macos-latest, Node 18.x, npm) (push) Has been cancelled
CI / Test (macos-latest, Node 18.x, pnpm) (push) Has been cancelled
CI / Test (macos-latest, Node 18.x, yarn) (push) Has been cancelled
CI / Test (windows-latest, Node 18.x, npm) (push) Has been cancelled
CI / Test (windows-latest, Node 18.x, pnpm) (push) Has been cancelled
CI / Test (windows-latest, Node 18.x, yarn) (push) Has been cancelled
CI / Test (macos-latest, Node 20.x, bun) (push) Has been cancelled
CI / Test (macos-latest, Node 20.x, npm) (push) Has been cancelled
CI / Test (macos-latest, Node 20.x, pnpm) (push) Has been cancelled
CI / Test (macos-latest, Node 20.x, yarn) (push) Has been cancelled
CI / Test (windows-latest, Node 20.x, npm) (push) Has been cancelled
CI / Test (windows-latest, Node 20.x, pnpm) (push) Has been cancelled
CI / Test (windows-latest, Node 20.x, yarn) (push) Has been cancelled
CI / Test (macos-latest, Node 22.x, bun) (push) Has been cancelled
CI / Test (macos-latest, Node 22.x, npm) (push) Has been cancelled
CI / Test (macos-latest, Node 22.x, pnpm) (push) Has been cancelled
CI / Test (macos-latest, Node 22.x, yarn) (push) Has been cancelled
CI / Test (windows-latest, Node 22.x, npm) (push) Has been cancelled
CI / Test (windows-latest, Node 22.x, pnpm) (push) Has been cancelled
CI / Test (windows-latest, Node 22.x, yarn) (push) Has been cancelled
57 lines
1.6 KiB
JavaScript
57 lines
1.6 KiB
JavaScript
'use strict';
|
|
|
|
const {
|
|
createLegacyCompatInstallPlan,
|
|
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-compat') {
|
|
return createLegacyCompatInstallPlan({
|
|
target: request.target,
|
|
legacyLanguages: request.legacyLanguages,
|
|
includeComponentIds: request.includeComponentIds,
|
|
excludeComponentIds: request.excludeComponentIds,
|
|
projectRoot: options.projectRoot,
|
|
homeDir: options.homeDir,
|
|
claudeRulesDir: options.claudeRulesDir,
|
|
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,
|
|
};
|