Home Reference Source
import NotificationCategorizer from '~/models/NotificationCategorizer.js'
public class | source

NotificationCategorizer

Categorizes notifications

Constructor Summary

Public Constructor
public

Creates empty categorizer.

Member Summary

Public Members
public get

The amount of days this covers

public get

The amount of unique items

Method Summary

Public Methods
public
public

addNotificationWithSiblings(category: Category, notification: Notification): Object

Attempts to find a notification's siblings in a category

public

async feed(notificationIterator,: Generator<Notification>)

Takes in a notification iterator.

public

feedOnce(notification: Notification)

Feeds a single notification in

public

findCategory(categoryHeader: string): Object

Finds a category by a name or returns a new category

public

Obtains header for a date.

public

Registers a notification as an instance

Public Constructors

public constructor() source

Creates empty categorizer.

Public Members

public get dayCount source

The amount of days this covers

public get rowCount: number source

The amount of unique items

Public Methods

public * [Symbol.iterator]() source

public addNotificationWithSiblings(category: Category, notification: Notification): Object source

Attempts to find a notification's siblings in a category

Params:

NameTypeAttributeDescription
category Category
notification Notification

Return:

Object

A notification group object. Creates new if not exist

public async feed(notificationIterator,: Generator<Notification>) source

Takes in a notification iterator. Assumes aync

Params:

NameTypeAttributeDescription
notificationIterator, Generator<Notification>

public feedOnce(notification: Notification) source

Feeds a single notification in

Params:

NameTypeAttributeDescription
notification Notification

public findCategory(categoryHeader: string): Object source

Finds a category by a name or returns a new category

Params:

NameTypeAttributeDescription
categoryHeader string

Return:

Object

public headerForDate(date: Date): String source

Obtains header for a date. Same header = same categorization

Params:

NameTypeAttributeDescription
date Date

Return:

String

public registerNotificationMetadata(notification: Notification) source

Registers a notification as an instance

Params:

NameTypeAttributeDescription
notification Notification