argos/dmp-frontend/src/app/core/model/admin/dataset-profile/dataset-profile.ts

84 lines
1.3 KiB
TypeScript

import { ValidationType } from "../../../common/enum/validation-type";
export interface DatasetProfile {
label: string;
sections: Section[];
pages: Page[];
status: number;
version: number;
description: string;
language: string;
}
export interface Page {
id: string;
ordinal: number;
title: string;
}
export interface Section {
sections: Section[];
fieldSets: FieldSet[];
defaultVisibility: boolean;
page: string;
ordinal: number;
id: string;
title: string;
description: string;
}
export interface FieldSet {
id: string;
ordinal: number;
multiplicity: Multiplicity;
title: string;
description: string;
extendedDescription: string;
additionalInformation:string;
hasCommentField: boolean;
fields: Field[];
}
export interface Multiplicity {
min: number;
max: number;
}
export interface Field {
id: string;
ordinal: number;
value: string;
viewStyle: ViewStyle;
datatype: string;
page: number;
defaultValue: DefaultValue;
data: any;
visible: Visibility;
validations: ValidationType[];
rdaCommonStandard: string;
}
export interface ViewStyle {
renderStyle: string;
cssClass: string;
}
export interface DefaultValue {
type: string;
value: string;
}
export interface Visibility {
rules: Rule[];
style: string;
}
export interface Rule {
ruleType: string;
target: string;
ruleStyle: string;
value: string;
valueType: string;
}