Files
dealplustech/node_modules/astro/dist/cli/info/infra/cli-debug-info-provider.js
Kunthawat 77ac4d2d05 feat: Upgrade to Astro with full PDPA compliance
PDPA Features:
 Cookie consent banner
 Consent logging API
 Admin dashboard
 Privacy Policy
 Terms & Conditions

Technical:
 Astro 5.x + Tailwind v4
 Docker on port 80
 SQLite database
 15 pages built

Ready for Easypanel deployment.
2026-03-12 10:01:04 +07:00

58 lines
1.6 KiB
JavaScript

function withVersion(name, version) {
let result = name;
if (version) {
result += ` (${version})`;
}
return result;
}
class CliDebugInfoProvider {
#config;
#astroVersionProvider;
#packageManager;
#operatingSystemProvider;
#nodeVersionProvider;
constructor({
config,
astroVersionProvider,
packageManager,
operatingSystemProvider,
nodeVersionProvider
}) {
this.#config = config;
this.#astroVersionProvider = astroVersionProvider;
this.#packageManager = packageManager;
this.#operatingSystemProvider = operatingSystemProvider;
this.#nodeVersionProvider = nodeVersionProvider;
}
async get() {
const debugInfo = [
["Astro", `v${this.#astroVersionProvider.version}`],
["Node", this.#nodeVersionProvider.version],
["System", this.#operatingSystemProvider.displayName],
["Package Manager", this.#packageManager.name],
["Output", this.#config.output]
];
const viteVersion = await this.#packageManager.getPackageVersion("vite");
if (viteVersion) {
debugInfo.splice(1, 0, ["Vite", viteVersion]);
}
debugInfo.push([
"Adapter",
this.#config.adapter ? withVersion(
this.#config.adapter.name,
await this.#packageManager.getPackageVersion(this.#config.adapter.name)
) : "none"
]);
const integrations = await Promise.all(
this.#config.integrations.map(
async ({ name }) => withVersion(name, await this.#packageManager.getPackageVersion(name))
)
);
debugInfo.push(["Integrations", integrations.length > 0 ? integrations : "none"]);
return debugInfo;
}
}
export {
CliDebugInfoProvider
};