Skip to content
Shapemetry

@huukhanhnguyen/model / core/BaseCollection

core/BaseCollection

BaseCollection

Extends

Extended by

Type Parameters

T

T extends BaseObject = BaseObject

Constructors

Constructor

new BaseCollection<T>(owner): BaseCollection<T>

Parameters

owner

any

Returns

BaseCollection<T>

Overrides

Notifier.constructor

elements

elements: T[] = []

id

id: string

owner

owner: any

Accessors

model

Get Signature

get model(): any

Returns

any

Methods

_bulkAdd()

protected _bulkAdd(entries): void

Bulk add() for the LOAD path: one taken-keys set maintained incrementally across the batch and ONE final "change" notification, where per-item add() would rescan every sibling per item (O(n²) load — the check load-ratio budget) and fire a listener cascade per step. Per-item semantics match add(): key/name deduped in list order, the deduped key written back onto the item.

Parameters

entries

T[]

Returns

void

_dispose()

_dispose(): void

Returns

void

Inherited from

Notifier._dispose

_takenKeys()

protected _takenKeys(): Set<string>

Every key/name currently held by this collection's elements.

Returns

Set<string>

add()

add(entry, index?): void

Parameters

entry

T

index?

number = ...

Returns

void

addListener()

addListener(event, listener): () => void

Parameters

event

string

listener

Listener

Returns

() => void

Inherited from

Notifier.addListener

findById()

findById(id?): T | undefined

Parameters

id?

string

Returns

T | undefined

getLength()

getLength(listener?): number

Parameters

listener?

Listener

Returns

number

move()

move(entry, newIndex): void

Parameters

entry

T

newIndex

number

Returns

void

notify()

notify(event, ...args): void

Parameters

event

string

args

...unknown[]

Returns

void

Inherited from

Notifier.notify

remove()

remove(entry): void

Parameters

entry

T

Returns

void

removeListener()

removeListener(event, listener): void

Parameters

event

string

listener

Listener

Returns

void

Inherited from

Notifier.removeListener

set()

set(elements): void

Parameters

elements

T[]

Returns

void

toJSON()

toJSON(): (Record<string, unknown> | BaseObjectJSON)[]

Returns

(Record<string, unknown> | BaseObjectJSON)[]

uniqueKey()

uniqueKey(keyname): string

Parameters

keyname

string

Returns

string

uniqueKeyFrom()

protected static uniqueKeyFrom(taken, keyname): string

keyname, then keyname1, keyname2, … — first not in taken.

Parameters

taken

Set<string>

keyname

string

Returns

string


bumpLoadScanCount()

bumpLoadScanCount(n?): void

Parameters

n?

number = 1

Returns

void


readLoadScanCount()

readLoadScanCount(): number

Returns

number


resetLoadScanCount()

resetLoadScanCount(): void

Returns

void

Last updated: 📖 3 min readEdit on GitHub