Welcome to mirror list, hosted at ThFree Co, Russian Federation.

FeedbackQueue.js « Queue « js « src - github.com/marius-wieschollek/passwords-webextension.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 2a89852ec359b09a893ddeece13bde98104f9aef (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import Queue from '@js/Queue/Queue';
import MessageService from '@js/Services/MessageService';
import FeedbackItem from '@js/Models/Queue/FeedbackItem';

export default class FeedbackQueue extends Queue {

    /**
     *
     * @param {String}      name
     * @param {(String|null)} [area=null]
     * @param {QueueItem}   [type=FeedbackItem]
     */
    constructor(name, area, type = FeedbackItem) {
        super(name, area, type);
    }


    /**
     *
     * @param {FeedbackItem|{}} item
     */
    push(item) {
        item = this._validateItem(item);
        if(!item.getSuccess() || !item.getAccepted()) {
            return super.push(item);
        }

        return new Promise((resolve) => {
            this._sendItem(item);

            resolve();
        });
    }
}