Skip to content

BlockSuite API Documentation / @blocksuite/store / Y / Array

Class: Array<T>

A shared Array implementation.

Implements

Extends

Type parameters

T

Implements

  • Iterable<T>

Constructors

new Array(undefined)

new Array<T>(): Array<T>

Returns

Array<T>

Inherited from

AbstractType.constructor

Properties

_dEH

_dEH: EventHandler<YEvent<any>[], Transaction>

Deep event handlers

Inherited from

AbstractType._dEH

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/AbstractType.d.ts:46


_eH

_eH: EventHandler<YArrayEvent<T>, Transaction>

Event handlers

Inherited from

AbstractType._eH

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/AbstractType.d.ts:41


_item

_item: null | Item

Inherited from

AbstractType._item

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/AbstractType.d.ts:23


_length

_length: number

Inherited from

AbstractType._length

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/AbstractType.d.ts:36


_map

_map: Map<string, Item>

Inherited from

AbstractType._map

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/AbstractType.d.ts:27


_prelimContent

private _prelimContent: any

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/YArray.d.ts:34


_searchMarker

_searchMarker: ArraySearchMarker[]

Overrides

AbstractType._searchMarker

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/YArray.d.ts:38


_start

_start: null | Item

Inherited from

AbstractType._start

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/AbstractType.d.ts:31


doc

doc: null | Doc

Inherited from

AbstractType.doc

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/AbstractType.d.ts:35

Accessors

_first

get _first(): null | Item

The first non-deleted item

Returns

null | Item

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/AbstractType.d.ts:81


length

get length(): number

Returns

number

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/YArray.d.ts:58


parent

get parent(): null | AbstractType<any>

Returns

null | AbstractType<any>

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/AbstractType.d.ts:54

Methods

[iterator]()

[iterator](): IterableIterator<T>

Returns

IterableIterator<T>

Implementation of

Iterable.[iterator]

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/YArray.d.ts:143


_callObserver()

_callObserver(transaction, _parentSubs): void

Creates YEvent and calls all type observers. Must be implemented by each type.

Parameters

transaction: Transaction

_parentSubs: Set<null | string>

Keys changed on this type. null if list was modified.

Returns

void

Inherited from

AbstractType._callObserver

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/AbstractType.d.ts:89


_copy()

_copy(): Array<T>

Returns

Array<T>

Overrides

AbstractType._copy

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/YArray.d.ts:53


_integrate()

_integrate(y, item): void

Integrate this type into the Yjs instance.

  • Save this struct in the os
  • This type is sent to other client
  • Observer functions are fired

Parameters

y: Doc

The Yjs instance

item: Item

Returns

void

Overrides

AbstractType._integrate

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/YArray.d.ts:49


_write()

_write(_encoder): void

Parameters

_encoder: UpdateEncoderV1 | UpdateEncoderV2

Returns

void

Inherited from

AbstractType._write

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/AbstractType.d.ts:77


clone()

clone(): Array<T>

Returns

Array<T>

Overrides

AbstractType.clone

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/YArray.d.ts:57


delete()

delete(index, length?): void

Deletes elements starting from an index.

Parameters

index: number

Index at which to start deleting elements

length?: number

The number of elements to remove. Defaults to 1.

Returns

void

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/YArray.d.ts:96


forEach()

forEach(f): void

Executes a provided function once on overy element of this YArray.

Parameters

f

A function to execute on every element of this YArray.

Returns

void

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/YArray.d.ts:139


get()

get(index): T

Returns the i-th element from a YArray.

Parameters

index: number

The index of the element to return from the YArray

Returns

T

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/YArray.d.ts:103


insert()

insert(index, content): void

Inserts new content at an index.

Important: This function expects an array of content. Not just a content object. The reason for this "weirdness" is that inserting several elements is very efficient when it is done as a single operation.

Parameters

index: number

The index to insert content at.

content: T[]

The array of content

Returns

void

Example

ts
// Insert character 'a' at position 0
 yarray.insert(0, ['a'])
 // Insert numbers 1, 2 at position 1
 yarray.insert(1, [1, 2])

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/YArray.d.ts:75


map()

map<M>(f): M[]

Returns an Array with the result of calling a provided function on every element of this YArray.

Type parameters

M

Parameters

f

Function that produces an element of the new Array

Returns

M[]

A new array with each element being the result of the callback function

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/YArray.d.ts:133


observe()

observe(f): void

Observe all events that are created on this type.

Parameters

f

Observer function

Returns

void

Inherited from

AbstractType.observe

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/AbstractType.d.ts:95


observeDeep()

observeDeep(f): void

Observe all events that are created by this type and its children.

Parameters

f

Observer function

Returns

void

Inherited from

AbstractType.observeDeep

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/AbstractType.d.ts:101


push()

push(content): void

Appends content to this YArray.

Parameters

content: T[]

Array of content to append.

Returns

void

Todo

Use the following implementation in all types.

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/YArray.d.ts:83


slice()

slice(start?, end?): T[]

Transforms this YArray to a JavaScript Array.

Parameters

start?: number

end?: number

Returns

T[]

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/YArray.d.ts:117


toArray()

toArray(): T[]

Transforms this YArray to a JavaScript Array.

Returns

T[]

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/YArray.d.ts:109


toJSON()

toJSON(): any[]

Transforms this Shared Type to a JSON object.

Returns

any[]

Overrides

AbstractType.toJSON

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/YArray.d.ts:123


unobserve()

unobserve(f): void

Unregister an observer function.

Parameters

f

Observer function

Returns

void

Inherited from

AbstractType.unobserve

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/AbstractType.d.ts:107


unobserveDeep()

unobserveDeep(f): void

Unregister an observer function.

Parameters

f

Observer function

Returns

void

Inherited from

AbstractType.unobserveDeep

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/AbstractType.d.ts:113


unshift()

unshift(content): void

Preppends content to this YArray.

Parameters

content: T[]

Array of content to preppend.

Returns

void

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/YArray.d.ts:89


from()

static from<T_1>(items): Array<T_1>

Construct a new YArray containing the specified items.

Type parameters

T_1 extends null | string | number | any[] | Uint8Array | object

Parameters

items: T_1[]

Returns

Array<T_1>

Source

node_modules/.pnpm/yjs@13.6.14/node_modules/yjs/dist/src/types/YArray.d.ts:27