Skip to content

BlockSuite API Documentation / @blocksuite/blocks / EdgelessRootBlockComponent

Class: EdgelessRootBlockComponent

Extends

Constructors

new EdgelessRootBlockComponent()

new EdgelessRootBlockComponent(): EdgelessRootBlockComponent

Returns

EdgelessRootBlockComponent

Inherited from

BlockComponent.constructor

Defined in

node_modules/@lit/reactive-element/development/reactive-element.d.ts:504

Other

_disposables

protected _disposables: DisposableGroup

Inherited from

BlockComponent._disposables

Defined in

packages/framework/global/dist/utils/with-disposable.d.ts:5


[blockComponentSymbol]

[blockComponentSymbol]: boolean

Inherited from

BlockComponent.[blockComponentSymbol]

Defined in

packages/framework/block-std/dist/view/element/block-component.d.ts:14


clipboardController

clipboardController: EdgelessClipboardController

Defined in

packages/blocks/src/root-block/edgeless/edgeless-root-block.ts:122


disposables

readonly disposables: DisposableGroup

Inherited from

BlockComponent.disposables

Defined in

packages/framework/global/dist/utils/with-disposable.d.ts:6


handleEvent()

handleEvent: (name, handler, options?) => void

Parameters

name

"click" | "doubleClick" | "tripleClick" | "pointerDown" | "pointerMove" | "pointerUp" | "pointerOut" | "dragStart" | "dragMove" | "dragEnd" | "pinch" | "pan" | "keyDown" | "keyUp" | "selectionChange" | "compositionStart" | "compositionUpdate" | "compositionEnd" | "cut" | "copy" | "paste" | "nativeDragStart" | "nativeDragMove" | "nativeDragEnd" | "nativeDrop" | "beforeInput" | "blur" | "focus" | "contextMenu" | "wheel"

handler

UIEventHandler

options?
flavour

boolean

global

boolean

Returns

void

Inherited from

BlockComponent.handleEvent

Defined in

packages/framework/block-std/dist/view/element/block-component.d.ts:15


keyboardManager

keyboardManager: null | EdgelessPageKeyboardManager = null

Defined in

packages/blocks/src/root-block/edgeless/edgeless-root-block.ts:124


virtualKeyboardPolicy

virtualKeyboardPolicy: string

Inherited from

BlockComponent.virtualKeyboardPolicy

Defined in

packages/framework/global/dist/types/virtual-keyboard.d.ts:20


connectedCount

static connectedCount: WeakMap<Constructor, WeakMap<Node, number>>

Inherited from

BlockComponent.connectedCount

Defined in

packages/framework/block-std/dist/view/element/shadowless-element.d.ts:5


onDisconnectedMap

static onDisconnectedMap: WeakMap<Constructor, null | () => void>

Inherited from

BlockComponent.onDisconnectedMap

Defined in

packages/framework/block-std/dist/view/element/shadowless-element.d.ts:6


_renderers

Inherited from

BlockComponent._renderers

Defined in

packages/framework/block-std/dist/view/element/block-component.d.ts:53


backgroundElm

Defined in

packages/blocks/src/root-block/edgeless/edgeless-root-block.ts:561


blockId

Get Signature

get blockId(): string

Returns

string

Inherited from

BlockComponent.blockId

Defined in

packages/framework/block-std/dist/view/element/block-component.d.ts:19


childBlocks

Get Signature

get childBlocks(): BlockComponent<BlockModel<object, object>, BlockService, string>[]

Returns

BlockComponent<BlockModel<object, object>, BlockService, string>[]

Inherited from

BlockComponent.childBlocks

Defined in

packages/framework/block-std/dist/view/element/block-component.d.ts:20


dispatcher

Get Signature

get dispatcher(): UIEventDispatcher

Returns

UIEventDispatcher

Defined in

packages/blocks/src/root-block/edgeless/edgeless-root-block.ts:126


doc

Inherited from

BlockComponent.doc

Defined in

packages/framework/block-std/dist/view/element/block-component.d.ts:55


flavour

Get Signature

get flavour(): string

Returns

string

Inherited from

BlockComponent.flavour

Defined in

packages/framework/block-std/dist/view/element/block-component.d.ts:21


gfx

Get Signature

get gfx(): GfxController

Returns

GfxController

Defined in

packages/blocks/src/root-block/edgeless/edgeless-root-block.ts:130


gfxViewportElm

Defined in

packages/blocks/src/root-block/edgeless/edgeless-root-block.ts:564


host

Get Signature

get host(): EditorHost

Returns

EditorHost

Inherited from

BlockComponent.host

Defined in

packages/framework/block-std/dist/view/element/block-component.d.ts:22


isVersionMismatch

Get Signature

get isVersionMismatch(): boolean

Returns

boolean

Inherited from

BlockComponent.isVersionMismatch

Defined in

packages/framework/block-std/dist/view/element/block-component.d.ts:23


model

Get Signature

get model(): Model

Returns

Model

Inherited from

BlockComponent.model

Defined in

packages/framework/block-std/dist/view/element/block-component.d.ts:24


mountElm

Defined in

packages/blocks/src/root-block/edgeless/edgeless-root-block.ts:567


parentComponent

Get Signature

get parentComponent(): null | BlockComponent<BlockModel<object, SignaledProps<object>>, BlockService, string>

Returns

null | BlockComponent<BlockModel<object, SignaledProps<object>>, BlockService, string>

Inherited from

BlockComponent.parentComponent

Defined in

packages/framework/block-std/dist/view/element/block-component.d.ts:25


renderChildren

Get Signature

get renderChildren(): (model, filter?) => TemplateResult

Returns

Function

Parameters
model

BlockModel<object, SignaledProps<object>>

filter?

(model) => boolean

Returns

TemplateResult

Inherited from

BlockComponent.renderChildren

Defined in

packages/framework/block-std/dist/view/element/block-component.d.ts:26


rootComponent

Get Signature

get rootComponent(): null | BlockComponent<BlockModel<object, SignaledProps<object>>, BlockService, string>

Returns

null | BlockComponent<BlockModel<object, SignaledProps<object>>, BlockService, string>

Inherited from

BlockComponent.rootComponent

Defined in

packages/framework/block-std/dist/view/element/block-component.d.ts:27


selected

Get Signature

get selected(): null | BaseSelection

Returns

null | BaseSelection

Inherited from

BlockComponent.selected

Defined in

packages/framework/block-std/dist/view/element/block-component.d.ts:28


selectedRectWidget

Get Signature

get selectedRectWidget(): EdgelessSelectedRectWidget

Returns

EdgelessSelectedRectWidget

Defined in

packages/blocks/src/root-block/edgeless/edgeless-root-block.ts:134


selection

Get Signature

get selection(): SelectionManager

Returns

SelectionManager

Inherited from

BlockComponent.selection

Defined in

packages/framework/block-std/dist/view/element/block-component.d.ts:29


service

Get Signature

get service(): Service

Returns

Service

Inherited from

BlockComponent.service

Defined in

packages/framework/block-std/dist/view/element/block-component.d.ts:30


slots

Get Signature

get slots(): object

Returns

object

copyAsPng

copyAsPng: Slot<{ blocks: EdgelessBlockModelType[]; shapes: SurfaceModel[]; }>

draggingAreaUpdated

draggingAreaUpdated: Slot<void>

elementResizeEnd

elementResizeEnd: Slot<void>

elementResizeStart

elementResizeStart: Slot<void>

fullScreenToggled

fullScreenToggled: Slot<void>

navigatorFrameChanged: Slot<FrameBlockModel>

navigatorSettingUpdated: Slot<{ blackBackground: boolean; fillScreen: boolean; hideToolbar: boolean; }>

pressShiftKeyUpdated

pressShiftKeyUpdated: Slot<boolean>

readonlyUpdated

readonlyUpdated: Slot<boolean>

toggleNoteSlicer

toggleNoteSlicer: Slot<void>

toolbarLocked

toolbarLocked: Slot<boolean>

Defined in

packages/blocks/src/root-block/edgeless/edgeless-root-block.ts:141


std

Inherited from

BlockComponent.std

Defined in

packages/framework/block-std/dist/view/element/block-component.d.ts:12


surface

Defined in

packages/blocks/src/root-block/edgeless/edgeless-root-block.ts:570


surfaceBlockModel

Get Signature

get surfaceBlockModel(): SurfaceBlockModel

Returns

SurfaceBlockModel

Defined in

packages/blocks/src/root-block/edgeless/edgeless-root-block.ts:145


topContenteditableElement

Get Signature

get topContenteditableElement(): null | BlockComponent<BlockModel<object, SignaledProps<object>>, BlockService, string>

Returns

null | BlockComponent<BlockModel<object, SignaledProps<object>>, BlockService, string>

Inherited from

BlockComponent.topContenteditableElement

Defined in

packages/framework/block-std/dist/view/element/block-component.d.ts:31


viewport

Get Signature

get viewport(): Viewport

Don't confuse with gfx.viewport which is edgeless-only concept. This refers to the wrapper element of the EditorHost.

Returns

Viewport

Defined in

packages/blocks/src/root-block/edgeless/edgeless-root-block.ts:155


viewportElement

Get Signature

get viewportElement(): HTMLElement

Returns

HTMLElement

Defined in

packages/blocks/src/root-block/edgeless/edgeless-root-block.ts:177


viewType

Inherited from

BlockComponent.viewType

Defined in

packages/framework/block-std/dist/view/element/block-component.d.ts:56


widgetComponents

Get Signature

get widgetComponents(): Partial<Record<WidgetName, WidgetComponent<BlockModel<object, SignaledProps<object>>, BlockComponent<BlockModel<object, SignaledProps<object>>, BlockService, string>, BlockService>>>

Returns

Partial<Record<WidgetName, WidgetComponent<BlockModel<object, SignaledProps<object>>, BlockComponent<BlockModel<object, SignaledProps<object>>, BlockService, string>, BlockService>>>

Inherited from

BlockComponent.widgetComponents

Defined in

packages/framework/block-std/dist/view/element/block-component.d.ts:32


widgets

Inherited from

BlockComponent.widgets

Defined in

packages/framework/block-std/dist/view/element/block-component.d.ts:57


addRenderer()

addRenderer(renderer): void

Parameters

renderer

(content) => unknown

Returns

void

Inherited from

BlockComponent.addRenderer

Defined in

packages/framework/block-std/dist/view/element/block-component.d.ts:35


bindHotKey()

bindHotKey(keymap, options?): () => void

Parameters

keymap

Record<string, UIEventHandler>

options?
flavour

boolean

global

boolean

Returns

Function

Returns

void

Overrides

BlockComponent.bindHotKey

Defined in

packages/blocks/src/root-block/edgeless/edgeless-root-block.ts:420


connectedCallback()

connectedCallback(): void

Returns

void

Overrides

BlockComponent.connectedCallback

Defined in

packages/blocks/src/root-block/edgeless/edgeless-root-block.ts:455


disconnectedCallback()

disconnectedCallback(): void

Returns

void

Overrides

BlockComponent.disconnectedCallback

Defined in

packages/blocks/src/root-block/edgeless/edgeless-root-block.ts:478


renderBlock()

renderBlock(): TemplateResult<1>

Returns

TemplateResult<1>

Overrides

BlockComponent.renderBlock

Defined in

packages/blocks/src/root-block/edgeless/edgeless-root-block.ts:520


renderVersionMismatch()

renderVersionMismatch(expectedVersion, actualVersion): TemplateResult

Render a warning message when the block version is mismatched.

Parameters

expectedVersion

number

If the schema is not found, the expected version is -1. Which means the block is not supported in the current editor.

actualVersion

number

The version of the block's crdt data.

Returns

TemplateResult

Inherited from

BlockComponent.renderVersionMismatch

Defined in

packages/framework/block-std/dist/view/element/block-component.d.ts:51

rendering

createRenderRoot()

createRenderRoot(): this

Returns

this

Inherited from

BlockComponent.createRenderRoot

Defined in

packages/framework/block-std/dist/view/element/shadowless-element.d.ts:11


render()

render(): unknown

Invoked on each update to perform rendering tasks. This method may return any value renderable by lit-html's ChildPart - typically a TemplateResult. Setting properties inside this method will not trigger the element to update.

Returns

unknown

Inherited from

BlockComponent.render

Defined in

packages/framework/block-std/dist/view/element/block-component.d.ts:43

styles

styles

static styles: CSSResult

Array of styles to apply to the element. The styles should be defined using the css tag function, via constructible stylesheets, or imported from native CSS module scripts.

Note on Content Security Policy:

Element styles are implemented with <style> tags when the browser doesn't support adopted StyleSheets. To use such <style> tags with the style-src CSP directive, the style-src value must either include 'unsafe-inline' or nonce-<base64-value> with <base64-value> replaced be a server-generated nonce.

To provide a nonce to use on generated <style> elements, set window.litNonce to a server-generated nonce in your page's HTML, before loading application code:

html
<script>
  // Generated and unique per request:
  window.litNonce = 'a1b2c3d4';
</script>

Nocollapse

Overrides

BlockComponent.styles

Defined in

packages/blocks/src/root-block/edgeless/edgeless-root-block.ts:58


finalizeStyles()

protected static finalizeStyles(styles?): CSSResultOrNative[]

Takes the styles the user supplied via the static styles property and returns the array of styles to apply to the element. Override this method to integrate into a style management system.

Styles are deduplicated preserving the last instance in the list. This is a performance optimization to avoid duplicated styles that can occur especially when composing via subclassing. The last item is kept to try to preserve the cascade order with the assumption that it's most important that last added styles override previous styles.

Parameters

styles?

CSSResultGroup

Returns

CSSResultOrNative[]

Nocollapse

Inherited from

BlockComponent.finalizeStyles

Defined in

packages/framework/block-std/dist/view/element/shadowless-element.d.ts:7

updates

firstUpdated()

firstUpdated(): void

Invoked when the element is first updated. Implement to perform one time work on the element after update.

ts
firstUpdated() {
  this.renderRoot.getElementById('my-text-area').focus();
}

Setting properties inside this method will trigger the element to update again after this update cycle completes.

Returns

void

Overrides

BlockComponent.firstUpdated

Defined in

packages/blocks/src/root-block/edgeless/edgeless-root-block.ts:489


getUpdateComplete()

protected getUpdateComplete(): Promise<boolean>

Override point for the updateComplete promise.

It is not safe to override the updateComplete getter directly due to a limitation in TypeScript which means it is not possible to call a superclass getter (e.g. super.updateComplete.then(...)) when the target language is ES5 (https://github.com/microsoft/TypeScript/issues/338). This method should be overridden instead. For example:

ts
class MyElement extends LitElement {
  override async getUpdateComplete() {
    const result = await super.getUpdateComplete();
    await this._myChild.updateComplete;
    return result;
  }
}

Returns

Promise<boolean>

A promise of a boolean that resolves to true if the update completed without triggering another update.

Inherited from

BlockComponent.getUpdateComplete

Defined in

packages/framework/block-std/dist/view/element/block-component.d.ts:42