cli/new: add ability to configure publish registry
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
This commit is contained in:
@@ -53,6 +53,7 @@ export default async (opts: ArgOptions) => {
|
||||
license: otherGlobals.license,
|
||||
version: otherGlobals.baseVersion,
|
||||
private: otherGlobals.private,
|
||||
publishRegistry: otherGlobals.npmRegistry,
|
||||
packageNamePrefix: packagePrefix,
|
||||
packageNamePluginInfix: pluginInfix,
|
||||
},
|
||||
|
||||
@@ -42,9 +42,6 @@ export async function writeTemplateContents(
|
||||
values: {
|
||||
...roleValues,
|
||||
packageName: input.packageName,
|
||||
privatePackage: input.private,
|
||||
packageVersion: input.version,
|
||||
license: input.license,
|
||||
},
|
||||
templatedValues: template.templateValues,
|
||||
});
|
||||
@@ -114,6 +111,17 @@ export function injectPackageJsonInput(
|
||||
delete pkgJson.private;
|
||||
}
|
||||
|
||||
if (input.publishRegistry) {
|
||||
if (pkgJson.publishConfig) {
|
||||
pkgJson.publishConfig = {
|
||||
...pkgJson.publishConfig,
|
||||
registry: input.publishRegistry,
|
||||
};
|
||||
} else {
|
||||
toAdd.push(['publishConfig', { registry: input.publishRegistry }]);
|
||||
}
|
||||
}
|
||||
|
||||
const entries = Object.entries(pkgJson);
|
||||
|
||||
const nameIndex = entries.findIndex(([name]) => name === 'name');
|
||||
|
||||
@@ -93,6 +93,7 @@ export async function collectPortableTemplateInput(
|
||||
license: config.license,
|
||||
version: config.version,
|
||||
private: config.private,
|
||||
publishRegistry: config.publishRegistry,
|
||||
packageName: packageParams.packageName,
|
||||
packagePath: packageParams.packagePath,
|
||||
};
|
||||
|
||||
@@ -26,6 +26,7 @@ const defaults = {
|
||||
license: 'Apache-2.0',
|
||||
version: '0.1.0',
|
||||
private: true,
|
||||
publishRegistry: undefined,
|
||||
packageNamePrefix: '@internal/',
|
||||
packageNamePluginInfix: 'plugin-',
|
||||
};
|
||||
@@ -56,6 +57,7 @@ const newConfigSchema = z
|
||||
license: z.string().optional(),
|
||||
version: z.string().optional(),
|
||||
private: z.boolean().optional(),
|
||||
publishRegistry: z.string().optional(),
|
||||
namePrefix: z.string().optional(),
|
||||
namePluginInfix: z.string().optional(),
|
||||
})
|
||||
@@ -118,6 +120,10 @@ export async function loadPortableTemplateConfig(
|
||||
license: overrides.license ?? config?.globals?.license ?? defaults.license,
|
||||
version: overrides.version ?? config?.globals?.version ?? defaults.version,
|
||||
private: overrides.private ?? config?.globals?.private ?? defaults.private,
|
||||
publishRegistry:
|
||||
overrides.publishRegistry ??
|
||||
config?.globals?.publishRegistry ??
|
||||
defaults.publishRegistry,
|
||||
packageNamePrefix:
|
||||
overrides.packageNamePrefix ??
|
||||
config?.globals?.namePrefix ??
|
||||
|
||||
@@ -31,6 +31,8 @@ export type PortableTemplateConfig = {
|
||||
|
||||
private: boolean;
|
||||
|
||||
publishRegistry?: string;
|
||||
|
||||
packageNamePrefix: string;
|
||||
|
||||
packageNamePluginInfix: string;
|
||||
@@ -113,6 +115,8 @@ export type PortableTemplateInput = {
|
||||
|
||||
private: boolean;
|
||||
|
||||
publishRegistry?: string;
|
||||
|
||||
packageName: string;
|
||||
|
||||
packagePath: string;
|
||||
|
||||
Reference in New Issue
Block a user