2025-04-16 20:54:55 +03:00
|
|
|
import type { LanguageData, LanguageSerializedData } from '../types/language'
|
2023-09-15 18:40:35 +03:00
|
|
|
|
|
|
|
|
export class Language {
|
|
|
|
|
code: string
|
|
|
|
|
name: string
|
|
|
|
|
|
2025-04-16 20:54:55 +03:00
|
|
|
constructor(data?: LanguageData) {
|
|
|
|
|
if (!data) return
|
|
|
|
|
|
2025-03-29 11:39:46 +03:00
|
|
|
this.code = data.code
|
|
|
|
|
this.name = data.name
|
2023-09-15 18:40:35 +03:00
|
|
|
}
|
2025-04-16 20:54:55 +03:00
|
|
|
|
|
|
|
|
serialize(): LanguageSerializedData {
|
|
|
|
|
return {
|
|
|
|
|
code: this.code,
|
|
|
|
|
name: this.name
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
deserialize(data: LanguageSerializedData): this {
|
|
|
|
|
this.code = data.code
|
|
|
|
|
this.name = data.name
|
|
|
|
|
|
|
|
|
|
return this
|
|
|
|
|
}
|
2023-09-15 18:40:35 +03:00
|
|
|
}
|