UNPKG

@supernovaio/cli

Version:

Supernova.io Command Line Interface

73 lines (71 loc) 3.7 kB
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="5b80a86e-3e0f-57f9-9a49-8bce1bf07cc7")}catch(e){}}(); import { isPrivateDependencyScopePattern, resolveExactPrivatePackages } from "../../helpers.js"; import { emphasis } from "../../ui.js"; import { promptDependencyPackageNames, promptPrivateRegistryConfiguration } from "./prompts.js"; export function createDependencyHandlers(services) { return { async CONFIGURE_DEPENDENCIES(context) { services.ui.renderStep("Design system dependencies"); const dependencyPackageNames = await promptDependencyPackageNames(context, services.ui.error, services.ui.log); services.ui.log(`${emphasis("Packages to add:")} ${dependencyPackageNames.join(", ")}`); return { dependencyPackageNames, }; }, async CONFIGURE_PRIVATE_REGISTRY(context) { if (!context.dependencyPackageNames?.length) { services.ui.error("Design system packages are missing."); } services.ui.renderStep("Package access"); const registryConfig = await promptPrivateRegistryConfiguration({ context, ensureLocalNpmrcFile: services.dependencies.ensureLocalNpmrcFile, error: services.ui.error, log: services.ui.log, }); if (registryConfig.dependencyMode === "Public") { await services.dependencies.applyTemplateDependencyConfiguration({ ...context, dependencyMode: "Public", }); services.ui.log(`${emphasis("Public packages:")} ${context.dependencyPackageNames.join(", ")}`); return { dependencyMode: "Public", privateDependencyEntries: undefined, npmToken: undefined, }; } const privateDependencyEntries = services.dependencies.createPrivateDependencyEntries(context.dependencyPackageNames); await services.dependencies.applyTemplateDependencyConfiguration({ ...context, dependencyMode: "Private", privateDependencyEntries, }); const privatePackageNames = resolveExactPrivatePackages({ ...context, dependencyMode: "Private", privateDependencyEntries, }); const privateScopePattern = privateDependencyEntries.find(entry => isPrivateDependencyScopePattern(entry)); services.ui.log(`${emphasis("Private packages:")} ${privatePackageNames.join(", ")}`); if (privateScopePattern) { services.ui.log(`${emphasis("Auto-added Supernova scope pattern:")} ${privateScopePattern}`); } return { dependencyMode: "Private", privateDependencyEntries, npmToken: registryConfig.npmToken, }; }, async VALIDATE_DEPENDENCY_ACCESS(context) { services.ui.renderStep("Validate dependency access"); if (!context.templateDestinationPath) { services.ui.error("Template destination path is missing."); } await services.dependencies.validateTemplateDependencies(context); return undefined; }, }; } //# sourceMappingURL=index.js.map //# debugId=5b80a86e-3e0f-57f9-9a49-8bce1bf07cc7