BlockSuite API Documentation / @blocksuite/store / Y / Doc
Class: Doc
A Yjs instance handles the state of shared data.
Extends
Observable
<string
>
Constructors
new Doc(opts)
new Doc(
opts
?):Doc
Parameters
• opts?: DocOpts
configuration
Returns
Overrides
Observable<string>.constructor
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:20
Properties
_item
_item:
null
|Item
If this document is a subdocument - a document integrated into another document - then _item is defined.
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:47
_observers
_observers:
Map
<string
,any
>
Some desc.
Inherited from
Observable._observers
Source
node_modules/.pnpm/lib0@0.2.88/node_modules/lib0/observable.d.ts:58
_transaction
_transaction:
null
|Transaction
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:34
_transactionCleanups
_transactionCleanups:
Transaction
[]
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:38
autoLoad
autoLoad:
boolean
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:49
clientID
clientID:
number
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:23
collectionid
collectionid:
null
|string
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:25
gc
gc:
boolean
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:21
gcFilter
gcFilter: (
arg0
) =>boolean
Parameters
• arg0: Item
Returns
boolean
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:22
guid
guid:
string
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:24
isLoaded
isLoaded:
boolean
This is set to true when the persistence provider loaded the document from the database or when the sync
event fires. Note that not all providers implement this feature. Provider authors are encouraged to fire the load
event when the doc content is loaded from the database.
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:57
isSynced
isSynced:
boolean
This is set to true when the connection provider has successfully synced with a backend. Note that when using peer-to-peer providers this event may not provide very useful. Also note that not all providers implement this feature. Provider authors are encouraged to fire the sync
event when the doc has been synced (with true
as a parameter) or if connection is lost (with false as a parameter).
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:65
meta
meta:
any
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:50
share
share:
Map
<string
,AbstractType
<YEvent
<any
>>>
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:29
shouldLoad
shouldLoad:
boolean
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:48
store
store:
StructStore
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:30
subdocs
subdocs:
Set
<Doc
>
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:42
whenLoaded
whenLoaded:
Promise
<any
>
Promise that resolves once the document has been loaded from a presistence provider.
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:69
whenSynced
whenSynced:
Promise
<any
>
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:70
Methods
destroy()
destroy():
void
Returns
void
Inherited from
Observable.destroy
Source
node_modules/.pnpm/lib0@0.2.88/node_modules/lib0/observable.d.ts:84
emit()
emit(
name
,args
):void
Emit a named event. All registered event listeners that listen to the specified name will receive the event.
Parameters
• name: string
The event name.
• args: any
[]
The arguments that are applied to the event listener.
Returns
void
Inherited from
Observable.emit
Todo
This should catch exceptions
Source
node_modules/.pnpm/lib0@0.2.88/node_modules/lib0/observable.d.ts:83
get()
get(
name
,TypeConstructor
?):AbstractType
<any
>
Define a shared data type.
Multiple calls of y.get(name, TypeConstructor)
yield the same result and do not overwrite each other. I.e. y.define(name, Y.Array) === y.define(name, Y.Array)
After this method is called, the type is also available on y.share.get(name)
.
Best Practices: Define all types right after the Yjs instance is created and store them in a separate object. Also use the typed methods getText(name)
, getArray(name)
, ..
Parameters
• name: string
• TypeConstructor?: Function
The constructor of the type definition. E.g. Y.Text, Y.Array, Y.Map, ...
Returns
AbstractType
<any
>
The created type. Constructed with TypeConstructor
Example
const y = new Y(..)
const appState = {
document: y.getText('document')
comments: y.getArray('comments')
}
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:121
getArray()
getArray<
T_1
>(name
?):Array
<T_1
>
Type parameters
• T_1
Parameters
• name?: string
Returns
Array
<T_1
>
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:129
getMap()
getMap<
T_2
>(name
?):Map
<T_2
>
Type parameters
• T_2
Parameters
• name?: string
Returns
Map
<T_2
>
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:144
getSubdocGuids()
getSubdocGuids():
Set
<string
>
Returns
Set
<string
>
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:80
getSubdocs()
getSubdocs():
Set
<Doc
>
Returns
Set
<Doc
>
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:79
getText()
getText(
name
?):Text
Parameters
• name?: string
Returns
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:136
getXmlFragment()
getXmlFragment(
name
?):XmlFragment
Parameters
• name?: string
Returns
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:151
load()
load():
void
Notify the parent document that you request to load data into this subdocument (if it is a subdocument).
load()
might be used in the future to request any provider to load the most current data.
It is safe to call load()
multiple times.
Returns
void
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:78
off()
off(
name
,f
):void
Parameters
• name: string
• f: Function
Returns
void
Inherited from
Observable.off
Source
node_modules/.pnpm/lib0@0.2.88/node_modules/lib0/observable.d.ts:73
on()
on(
eventName
,f
):void
Parameters
• eventName: string
• f: (...args
) => any
Returns
void
Overrides
Observable.on
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:167
once()
once(
name
,f
):void
Parameters
• name: string
• f: Function
Returns
void
Inherited from
Observable.once
Source
node_modules/.pnpm/lib0@0.2.88/node_modules/lib0/observable.d.ts:68
toJSON()
toJSON():
Object
Converts the entire document into a js object, recursively traversing each yjs type Doesn't log types that have not been defined (using ydoc.getType(..)).
Returns
Object
Deprecated
Do not use this method and rather call toJSON directly on the shared types.
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:160
transact()
transact<
T
>(f
,origin
?):T
Changes that happen inside of a transaction are bundled. This means that the observer fires after the transaction is finished and that all changes that happened inside of the transaction are sent as one message to the other peers.
Type parameters
• T
Parameters
• f: (arg0
) => T
The function that should be executed as a transaction
• origin?: any
Origin of who started the transaction. Will be stored on transaction.origin
Returns
T
T
Source
node_modules/.pnpm/yjs@13.6.11/node_modules/yjs/dist/src/utils/Doc.d.ts:94
Generated using TypeDoc and typedoc-plugin-markdown.