add scope to change schema

This commit is contained in:
Sarah Aladetan
2022-09-15 17:53:34 +00:00
parent fd3a3b1051
commit 1a7a37c468
3 changed files with 8 additions and 1 deletions
+2
View File
@@ -11,6 +11,7 @@ let npmChange: Change = {
package_url: 'pkg:npm/[email protected]', package_url: 'pkg:npm/[email protected]',
license: 'MIT', license: 'MIT',
source_repository_url: 'github.com/some-repo', source_repository_url: 'github.com/some-repo',
scope: 'runtime',
vulnerabilities: [ vulnerabilities: [
{ {
severity: 'critical', severity: 'critical',
@@ -30,6 +31,7 @@ let rubyChange: Change = {
package_url: 'pkg:gem/[email protected]', package_url: 'pkg:gem/[email protected]',
license: 'BSD', license: 'BSD',
source_repository_url: 'github.com/some-repo', source_repository_url: 'github.com/some-repo',
scope: 'development',
vulnerabilities: [ vulnerabilities: [
{ {
severity: 'moderate', severity: 'moderate',
+2
View File
@@ -11,6 +11,7 @@ let npmChange: Change = {
package_url: 'pkg:npm/[email protected]', package_url: 'pkg:npm/[email protected]',
license: 'MIT', license: 'MIT',
source_repository_url: 'github.com/some-repo', source_repository_url: 'github.com/some-repo',
scope: 'runtime',
vulnerabilities: [ vulnerabilities: [
{ {
severity: 'critical', severity: 'critical',
@@ -30,6 +31,7 @@ let rubyChange: Change = {
package_url: 'pkg:gem/[email protected]', package_url: 'pkg:gem/[email protected]',
license: 'BSD', license: 'BSD',
source_repository_url: 'github.com/some-repo', source_repository_url: 'github.com/some-repo',
scope: 'runtime',
vulnerabilities: [ vulnerabilities: [
{ {
severity: 'moderate', severity: 'moderate',
+4 -1
View File
@@ -1,6 +1,7 @@
import * as z from 'zod' import * as z from 'zod'
export const SEVERITIES = ['critical', 'high', 'moderate', 'low'] as const export const SEVERITIES = ['critical', 'high', 'moderate', 'low'] as const
export const SCOPES = ['unknown', 'runtime', 'development'] as const
export const ChangeSchema = z.object({ export const ChangeSchema = z.object({
change_type: z.enum(['added', 'removed']), change_type: z.enum(['added', 'removed']),
@@ -11,10 +12,11 @@ export const ChangeSchema = z.object({
package_url: z.string(), package_url: z.string(),
license: z.string().nullable(), license: z.string().nullable(),
source_repository_url: z.string().nullable(), source_repository_url: z.string().nullable(),
scope: z.enum(SCOPES),
vulnerabilities: z vulnerabilities: z
.array( .array(
z.object({ z.object({
severity: z.enum(['critical', 'high', 'moderate', 'low']), severity: z.enum(SEVERITIES),
advisory_ghsa_id: z.string(), advisory_ghsa_id: z.string(),
advisory_summary: z.string(), advisory_summary: z.string(),
advisory_url: z.string() advisory_url: z.string()
@@ -50,3 +52,4 @@ export type Change = z.infer<typeof ChangeSchema>
export type Changes = z.infer<typeof ChangesSchema> export type Changes = z.infer<typeof ChangesSchema>
export type ConfigurationOptions = z.infer<typeof ConfigurationOptionsSchema> export type ConfigurationOptions = z.infer<typeof ConfigurationOptionsSchema>
export type Severity = typeof SEVERITIES[number] export type Severity = typeof SEVERITIES[number]
export type Scope = typeof SCOPES[number]