mirror of
https://github.com/the-djmaze/snappymail.git
synced 2026-06-28 14:55:48 +00:00
Let all the new CollectionModels use AbstractCollectionModel
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
import { AbstractCollectionModel } from 'Model/AbstractCollection';
|
||||
import { MessageModel } from 'Model/Message';
|
||||
|
||||
import {
|
||||
@@ -8,11 +9,11 @@ import {
|
||||
|
||||
'use strict';
|
||||
|
||||
class MessageCollectionModel extends Array
|
||||
export class MessageCollectionModel extends AbstractCollectionModel
|
||||
{
|
||||
/*
|
||||
constructor() {
|
||||
super();
|
||||
/*
|
||||
this.Filtered
|
||||
this.Folder
|
||||
this.FolderHash
|
||||
@@ -25,23 +26,20 @@ class MessageCollectionModel extends Array
|
||||
this.Search
|
||||
this.ThreadUid
|
||||
this.UidNext
|
||||
*/
|
||||
}
|
||||
*/
|
||||
|
||||
/**
|
||||
* @param {?Object} json
|
||||
* @returns {MessageCollectionModel}
|
||||
*/
|
||||
static reviveFromJson(collection, cached) {
|
||||
if (collection
|
||||
&& 'Collection/MessageCollection' === collection['@Object']
|
||||
&& Array.isArray(collection['@Collection'])) {
|
||||
const result = new MessageCollectionModel;
|
||||
|
||||
Object.entries(collection).forEach(([key, value]) => '@' !== key[0] && (result[key] = value));
|
||||
static reviveFromJson(object, cached) {
|
||||
const collection = this.getFromJSON(object, 'MessageCollection');
|
||||
if (collection) {
|
||||
const result = new MessageCollectionModel(object);
|
||||
|
||||
let newCount = 0;
|
||||
collection['@Collection'].forEach(message => {
|
||||
collection.forEach(message => {
|
||||
if (message && 'Object/Message' === message['@Object']) {
|
||||
message = MessageModel.newInstanceFromJson(message);
|
||||
if (message) {
|
||||
@@ -59,11 +57,7 @@ class MessageCollectionModel extends Array
|
||||
}
|
||||
});
|
||||
|
||||
// collection[@Count] == result.length
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export { MessageCollectionModel, MessageCollectionModel as default };
|
||||
|
||||
Reference in New Issue
Block a user