29 lines
777 B
TypeScript
29 lines
777 B
TypeScript
import { Prisma } from '@prisma/client';
|
|
import { RawItemProps } from './RawItemProps';
|
|
|
|
export class RawItemData {
|
|
_id: string;
|
|
_name: string;
|
|
_parent: string;
|
|
_type: string;
|
|
_props: RawItemProps;
|
|
_proto?: string | undefined;
|
|
|
|
static fromRawData(data: any): RawItemData {
|
|
const rawData = new RawItemData();
|
|
Object.assign(rawData, data)
|
|
rawData._props = RawItemProps.fromRawData(data['_props'])
|
|
|
|
return rawData;
|
|
}
|
|
|
|
toItemData(): Prisma.XOR<Prisma.ItemCreateInput, Prisma.ItemUncheckedCreateInput> {
|
|
return {
|
|
internalId: this._id,
|
|
name: this._name,
|
|
type: this._type,
|
|
props: this._props.toItemPropsData(),
|
|
proto: this._proto
|
|
}
|
|
}
|
|
} |