LandingPage.ts 566 Bytes
Newer Older
Hanadi's avatar
Hanadi committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import {Link} from "./Link";
import {validateRequiredFields} from "./Helpers";

export class LandingPage {
    title?: string;
    description?: string;
    links!: Link[];

    static fromJson(jsonObj: any): LandingPage {
        validateRequiredFields(jsonObj, ["links"], LandingPage.name);

        let landingPage = new LandingPage();
        landingPage.title = jsonObj["title"];
        landingPage.description = jsonObj["description"];
        landingPage.links = jsonObj["links"].map(Link.fromJson);
        return landingPage;
    }

    // TODO from html
}