export default class PageRecord { public UUID: string; public Name: string; public OrgUserId: string; public IsPublic = true; public IsVisibleInMenu = true; public ParentId: string; public NodeIds: Array; public CreatedAt: Date; public UpdatedAt: Date; public CreatedUserId: string; public UpdateUserId: string; public ChildPageIds: Array; constructor(data: any = {Name: 'Click to edit title...'}) { [ 'UUID', 'Name', 'OrgUserId', 'IsPublic', 'IsVisibleInMenu', 'ParentId', 'NodeIds', 'CreatedAt', 'UpdatedAt', 'CreatedUserId', 'UpdateUserId', 'ChildPageIds' ].forEach(field => { if ( field in data ) { this[field] = data[field]; } }); } toSave() { const data = {}; [ 'UUID', 'Name', 'OrgUserId', 'IsPublic', 'IsVisibleInMenu', 'ParentId', 'NodeIds', 'CreatedAt', 'UpdatedAt', 'CreatedUserId', 'UpdateUserId', 'ChildPageIds' ].forEach(field => { if ( field in this ) { data[field] = this[field]; } }); return data; } }