mirror of https://github.com/doccano/doccano.git
pythondatasetsactive-learningtext-annotationdatasetnatural-language-processingdata-labelingmachine-learningannotation-tool
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
76 lines
1.5 KiB
76 lines
1.5 KiB
export class CommentItemList {
|
|
constructor(
|
|
private _count: number,
|
|
private _next: string | null,
|
|
private _prev: string | null,
|
|
private _items: CommentItem[]
|
|
) {}
|
|
|
|
static valueOf(
|
|
{ count, next, previous, results }:
|
|
{
|
|
count : number,
|
|
next : string | null,
|
|
previous: string | null,
|
|
results : Array<any>
|
|
}
|
|
): CommentItemList {
|
|
const items = results.map(item => CommentItem.valueOf(item))
|
|
return new CommentItemList(
|
|
count,
|
|
next,
|
|
previous,
|
|
items
|
|
)
|
|
}
|
|
|
|
get count() {
|
|
return this._count
|
|
}
|
|
|
|
get next() {
|
|
return this._next
|
|
}
|
|
|
|
get prev() {
|
|
return this._prev
|
|
}
|
|
|
|
get items(): CommentItem[] {
|
|
return this._items
|
|
}
|
|
}
|
|
|
|
export class CommentItem {
|
|
constructor(
|
|
public id: number,
|
|
public user: number,
|
|
public username: string,
|
|
public example: number,
|
|
public text: string,
|
|
public createdAt: string
|
|
) {}
|
|
|
|
static valueOf(
|
|
{ id, user, username, example, text, created_at }:
|
|
{ id: number, user: number, username: string, example: number,
|
|
text: string, created_at: string }
|
|
): CommentItem {
|
|
return new CommentItem(id, user, username, example, text, created_at)
|
|
}
|
|
|
|
by(userId: number) {
|
|
return this.user === userId
|
|
}
|
|
|
|
toObject(): Object {
|
|
return {
|
|
id: this.id,
|
|
user: this.user,
|
|
username: this.username,
|
|
document: this.example,
|
|
text: this.text,
|
|
created_at: this.createdAt
|
|
}
|
|
}
|
|
}
|