5
0
mirror of https://github.com/wailsapp/wails.git synced 2025-05-02 10:21:20 +08:00
wails/v3/internal/parser/templates/model.ts.tmpl
Adam Tenderholt da90e74268
v3 parser: initial work on model generation w/ templates (#2428)
* v3 parser: initial work on model generation w/ templates

* v3 parser: expand models to namespaces
2023-02-28 20:35:18 +11:00

22 lines
487 B
Cheetah

{{$pkg := .Package}}
export namespace {{.Package}} {
{{range $name, $def := .Models}}
export class {{$def.Name}} {
{{range $def.Fields}}{{.JSDef $pkg}}
{{end}}
static createFrom(source: any = {}) {
return new {{$def.Name}}(source);
}
constructor(source: any = {}) {
if ('string' === typeof source) {
source = JSON.parse(source);
}
{{range $def.Fields}}this.{{.JSName}} = source["{{.JSName}}"]
{{end}}
}
}
{{end}}
}