Skip to content

Commit

Permalink
Merge pull request #318 from NorskHelsenett/feature/adding-enums-again
Browse files Browse the repository at this point in the history
Adding enums for typescript
  • Loading branch information
rogerwesterbo authored Jan 28, 2025
2 parents b17ef64 + c3d7a2c commit bb3b859
Show file tree
Hide file tree
Showing 4 changed files with 59 additions and 103 deletions.
4 changes: 4 additions & 0 deletions cmd/generator/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ import (

"github.com/NorskHelsenett/ror/pkg/rorresources"
"github.com/NorskHelsenett/ror/pkg/rorresources/rordefs"
"github.com/NorskHelsenett/ror/pkg/rorresources/rortypes"
"github.com/tkrajina/typescriptify-golang-structs/typescriptify"
)

Expand Down Expand Up @@ -154,6 +155,9 @@ func generateTypescriptModels() {
converter := typescriptify.New()
converter.CreateInterface = true
converter.CreateConstructor = true
converter.AddEnum(rortypes.AllVulnerabilityStatuses)
converter.AddEnum(rortypes.AllVulnerabilityDismissalReasons)
converter.AddEnum(rortypes.AllResourceTagProperties)

converter.Add(rorresources.ResourceSet{})
converter.Add(rorresources.ResourceQuery{})
Expand Down
13 changes: 13 additions & 0 deletions pkg/rorresources/rortypes/resource_common_models.go
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,19 @@ const (
TagPropertiesColor ResourceTagProperties = "color"
)

var AllResourceTagProperties = []ResourceTagProperties{
TagPropertiesColor,
}

func (p ResourceTagProperties) TSName() string {
switch p {
case TagPropertiesColor:
return "color"
default:
return "unknown"
}
}

// Commonresource defines the minimum resource definition.
type CommonResource struct {
metav1.TypeMeta `json:",inline"`
Expand Down
80 changes: 0 additions & 80 deletions typescript/models/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

65 changes: 42 additions & 23 deletions typescript/models/src/resources.ts
Original file line number Diff line number Diff line change
@@ -1,14 +1,29 @@
/* Do not change, this code is generated from Golang structs */

export enum VulnerabilityStatus {
NOT_ASSESSED = 0,
NEEDS_TRIAGE = 1,
CONFIRMED = 2,
DISMISSED = 3,
}
export enum VulnerabilityDismissalReason {
ACCEPTABLE_RISK = 0,
FALSE_POSITIVE = 1,
NOT_APPLICABLE = 2,
}
export enum ResourceTagProperties {
color = 'color',
}
export interface ResourceBackupJobSpec {
name: string;
status: string;
sourceName: string;
sourceId: string;
policyId: string;
directBackupTarget: ResourceIndirectBackupTarget[];
indirectBackupTarget: ResourceDirectBackupTarget[];
backupDestination: ResourceBackupDestination[];
policyName: string;
activeTargets: ResourceBackupTarget[];
indirectBackupTargets: ResourceIndirectBackupTarget[];
backupDestinations: ResourceBackupDestination[];
startTime: Time;
endTime: Time;
expiryTime: Time;
Expand All @@ -19,45 +34,49 @@ export interface ResourceBackupStorage {
logicalSize: number;
physicalSize: number;
}
export interface ResourceBackupDestination {
name: string;
id: string;
type: string;
Status: string;
expiryTime: Time;
}
export interface ResourceBackupTarget {
name: string;
id: string;
externalIds: { [key: string]: string };
}
export interface ResourceDirectBackupTarget {
export interface ResourceBackupRun {
backupTargets: ResourceBackupTarget[];
backupDestination: ResourceBackupDestination[];
backupDestinations: ResourceBackupDestination[];
startTime: Time;
endTime: Time;
expiryTime: Time;
backupStorage: ResourceBackupStorage;
}
export interface ResourceBackupDestination {
name: string;
id: string;
type: string;
status: string;
expiryTime: Time;
}
export interface ResourceIndirectBackupTarget {
type: string;
ids: string[];
keyValues: { [key: string]: string[] };
}
export interface ResourceBackupTarget {
name: string;
id: string;
externalIds: { [key: string]: string };
}
export interface ResourceBackupJobStatus {
name: string;
status: string;
sourceName: string;
sourceId: string;
policyId: string;
directBackupTarget: ResourceIndirectBackupTarget[];
indirectBackupTarget: ResourceDirectBackupTarget[];
backupDestination: ResourceBackupDestination[];
policyName: string;
activeTargets: ResourceBackupTarget[];
indirectBackupTargets: ResourceIndirectBackupTarget[];
backupDestinations: ResourceBackupDestination[];
startTime: Time;
endTime: Time;
expiryTime: Time;
runs: ResourceBackupRun[];
}
export interface ResourceBackupJob {
id: string;
provider: string;
status: ResourceBackupJobStatus;
spec: ResourceBackupJobSpec;
}
Expand Down Expand Up @@ -295,9 +314,9 @@ export interface ResourceRoute {
spec: ResourceRouteSpec;
}
export interface ResourceClusterVulnerabilityReportReportStatus {
status: number;
status: VulnerabilityStatus;
until?: Time;
reason?: number;
reason?: VulnerabilityDismissalReason;
comment?: string;
riskAssessment?: string;
}
Expand Down Expand Up @@ -1067,7 +1086,7 @@ export interface ResourceNamespace {}
export interface ResourceTag {
key: string;
value: string;
properties: { [key: string]: string };
properties: { [key: ResourceTagProperties]: string };
}
export interface RorResourceOwnerReference {
scope: string;
Expand Down

0 comments on commit bb3b859

Please sign in to comment.