@secustor/backstage-plugin-renovate-common
Version:
Common functionalities for the renovate plugin
75 lines (72 loc) • 2.26 kB
JavaScript
import { z } from 'zod';
const targetRepo = z.object({
host: z.string(),
repository: z.string()
});
const problem = z.any();
const NullishString = z.coerce.string().optional().catch((ctx) => {
if (ctx.input === null) return void 0;
throw ctx.error;
});
const update = z.object({
updateType: z.string(),
newVersion: NullishString,
lockedVersion: NullishString,
newValue: NullishString,
newMajor: z.number().nullish(),
newMinor: z.number().nullish(),
newPatch: z.number().nullish()
}).passthrough();
const dependency = z.object({
depName: NullishString,
datasource: NullishString,
packageName: NullishString,
depType: NullishString,
currentValue: NullishString,
skipReason: NullishString,
currentVersion: NullishString,
updates: z.array(update).optional(),
registryUrl: NullishString,
sourceUrl: NullishString,
currentVersionTimestamp: z.coerce.date().optional()
}).passthrough();
const packageFile = z.object({
packageFile: z.string(),
packageFileVersion: NullishString,
datasource: NullishString,
deps: z.array(dependency)
}).passthrough();
const branch = z.object({
prNo: z.number().nullish(),
upgrades: z.array(z.any())
}).passthrough();
const packageFiles = z.record(z.string(), z.array(packageFile));
const libYears = z.object({
managerLibYears: z.record(z.string(), z.number()),
totalLibYears: z.number(),
totalDepsCount: z.number(),
outdatedDepsCount: z.number()
});
const repositoryReport = z.object({
problems: z.array(problem),
branches: z.array(branch),
packageFiles,
libYears: libYears.optional()
}).passthrough();
const renovateReport = z.object({
problems: z.array(problem),
repositories: z.record(z.string(), repositoryReport)
});
const repositoryReportResponseElement = z.object({
runID: z.string(),
taskID: z.string(),
timestamp: z.coerce.date(),
host: z.string(),
repository: z.string(),
report: repositoryReport
}).passthrough();
const repositoryReportResponse = z.array(
repositoryReportResponseElement
);
export { NullishString, branch, dependency, libYears, packageFile, packageFiles, problem, renovateReport, repositoryReport, repositoryReportResponse, repositoryReportResponseElement, targetRepo, update };
//# sourceMappingURL=schema.esm.js.map