Hierarchy

Constructors

Properties

Accessors

Methods

addClasses addEventListener addPanel addScrollableWrapper addSettingsPanel append appendTo canHideDrawer close closest contains createExecuteButton deregisterBindHandlers deregisterEventBusSubscriber draw dump exists flipHorizontal flipVertical focus furthest getAs getBindable getBox getChildren getDataHostId getDialog getIcon getIndex getMenu getMousePosition getName getNthChild getNthChildFromEnd getOffset getOppositeEdgePosition getPanel getParent getRectangle getScreen getSelectionTarget getSiblingDialogs hide initializeSettingsPanel intersectsWithSiblings isActive isDragging isFocused isPanelVisible isPinned isPlayerSwimming isPositionFree isSelectable isSelectedIslandValid isShowingTooltip isVisible markActive markInactive matches observe onAccept onAppend onCanvasClick onCanvasDialogRemove onChangedSelectedIsland onContextMenu onDialogMoveResize onDown onEnter onIslandRenamed onLeave onLeft onLoad onLoadCanvasDialog onMouseMove onPortsChanged onRemove1 onResize onRight onSelect onShow onSubmit onUp onZoom pin prepend prependTo querySelectorAll queryX queryXAll reflow refreshTooltip regenerateBoxes registerBindHandlers registerEventBusSubscriber remove removeEventListener removeTooltip render repaint resetSizeAndPosition resetView resetViewOffset resetViewZoom resolveEdges rotateClockwise rotateCounterClockwise schedule scrollTo selectIsland setContents setContextMenu setEdgePosition setElement setHighlight setHoveringClickable setId setInert setInitialSelection setSelectable setSizeAndPosition setTooltip setZoomLevels shouldDisplayConstructLighthousesHint shouldDisplayIsland show showPanel showSettingsPanel showTooltip siblings sleep store tempHighlight toggle toggleActive togglePinned unpin updateView all append findDescendants get getSelectableLayer makeTopDialog remove

Constructors

Properties

actualViewAngle: number = 0
actualViewOffset: default = Vector2.ZERO
actualViewScale: default = Vector2.ONE
actualViewZoom: number = 1
body: default<HTMLElement>
buttonSurface: default<HTMLElement> = ...
canZoom: boolean = true
canvas: Canvas
drawer: default<HTMLElement> = ...
edges: IDialogEdges = ...

The positions of each edge of the dialog. Stored as percentages.

entered: boolean = false
event: IEventEmitter<default, ICanvasDialogEvents>
hasHiddenClass?: boolean
header: Header
info: default<HTMLElement> = ...
internalDialog: default<HTMLElement>
lastSailAwayCheckPosition?: default
loading: boolean = true
log: Log
mainPanel: default<HTMLElement> = ...
observing?: boolean
ports: IIslandsDialogPort[] = []
portsWrapper: default<HTMLElement> = ...
removed?: string | boolean
rooted: boolean = false
scrollableHandler: void = ...
selectedIslandPosition: default = ...
title: default = ...
uiSurface: default<HTMLElement> = ...
viewAngle: number = 0
viewOffset: default = Vector2.ZERO
viewScale: default = Vector2.ONE
viewZoom: number = 1
zoomReference: CanvasZoomReference = ...
map: WeakMap<Element, default<HTMLElement>> = componentMap

Accessors

  • get childCount(): number
  • The number of child elements of this component.

    Returns number

  • get dataset(): DOMStringMap
  • The dataset of the internal element.

    Returns DOMStringMap

  • get element(): E
  • The element that this Component instance wraps.

    Returns E

  • get footer(): Footer
  • Returns Footer

  • get isHovering(): boolean
  • Returns boolean

  • get island(): undefined | default
  • Returns undefined | default

  • get selectable(): false | SelectableLayer
  • The selectable layer of this element, or false if it is not selectable.

    Returns false | SelectableLayer

  • get square(): boolean
  • Returns boolean

  • get subId(): string
  • Returns string

  • set subId(value: string): void
  • Parameters

    • value: string

    Returns void

Methods

  • Parameters

    Returns void

  • Alias of .element.addEventListener, except it returns this instead and prevents memory leaks

    Type Parameters

    • K extends keyof HTMLElementEventMap

    Parameters

    • type: K
    • listener: ((this: HTMLElement, ev: HTMLElementEventMap[K]) => any)
        • (this: HTMLElement, ev: HTMLElementEventMap[K]): any
        • Parameters

          • this: HTMLElement
          • ev: HTMLElementEventMap[K]

          Returns any

    • Optional options: boolean | AddEventListenerOptions

    Returns default

  • Parameters

    • type: string
    • listener: ((this: HTMLElement, ev: Event) => any)
        • (this: HTMLElement, ev: Event): any
        • Parameters

          • this: HTMLElement
          • ev: Event

          Returns any

    • Optional options: boolean | AddEventListenerOptions

    Returns default

  • Parameters

    • id: string | number

    Returns default<HTMLElement>

  • Parameters

    • type: "scroll" | "auto" = "scroll"
    • Optional initializer: ((wrapper: default<HTMLElement>) => any)
        • (wrapper: default<HTMLElement>): any
        • Parameters

          Returns any

    Returns default<HTMLElement>

  • Appends every element of a list of components/elements.

    Parameters

    • Rest ...elements: ArrayOfIterablesOr<undefined | false | HTMLElement | default<HTMLElement>>

      A varargs list of elements or iterables of elements. Falsy values are skipped

    Returns default

  • Appends every element of a list of components/elements.

    Parameters

    • appendStrategy: AppendStrategy

      Where in this component to insert new components. See AppendStrategy

    • Rest ...elements: ArrayOfIterablesOr<undefined | false | HTMLElement | default<HTMLElement>>

      A varargs list of elements or iterables of elements. Falsy values are skipped

    Returns default

  • Appends this component to another element, by selector, element, or component.

    Parameters

    • Optional where: null | string | HTMLElement | default<HTMLElement>

      A CSS selector, an element, or a component to append this component to.

    • Optional appendStrategy: AppendStrategy

      Where in the new container to insert this component. See AppendStrategy

    Returns default

  • Returns boolean

  • Closes the dialog.

    Also the event handler for when the close button is pressed in the dialog's header.

    Returns Promise<boolean>

  • An alias for element.closest(selector)

    Parameters

    • selector: string

    Returns undefined | Element

  • Returns whether this component contains the given element.

    Parameters

    • Optional what: null | string | Node | default<HTMLElement>

    Returns boolean

  • Parameters

    Returns undefined | default

  • Returns void

  • Removes all children.

    Returns default

  • Removes all children that are not filtered out with the given filter function.

    Parameters

    • Optional filter: ((element: HTMLElement, component?: default<HTMLElement>) => boolean)

      A function that returns true if the child should be kept.

        • (element: HTMLElement, component?: default<HTMLElement>): boolean
        • Parameters

          • element: HTMLElement
          • Optional component: default<HTMLElement>

          Returns boolean

    Returns default

  • Returns boolean

  • Returns void

  • Returns void

  • Makes this dialog the top dialog.

    Returns void

  • An alias for element.closest(selector)

    Parameters

    • selector: string

    Returns undefined | HTMLElement

  • Type Parameters

    Parameters

    • cls: AnyClass<C>

    Returns undefined | C

  • Returns undefined | default

  • A cached alias for element.getBoundingClientRect(). Boxes are updated or regenerated as ancestors shift.

    Parameters

    • regenIfZero: boolean = true
    • forceRegen: boolean = false

    Returns default

  • Returns a stream of this component's child components. Child elements that don't have associated components will be undefined.

    Type Parameters

    Parameters

    • Optional selector: string

      A selector that each element must match to be included in the result stream

    Returns Stream<C>

  • Returns string

  • Returns this component's containing dialog, if it exists.

    Type Parameters

    Returns undefined | D

  • Returns the index of this component amongst its sibling nodes. If it has no parent, it returns undefined.

    Parameters

    • elementsOnly: boolean = false

    Returns undefined | number

  • Returns this component's containing menu, if it exists.

    Type Parameters

    Returns undefined | M

  • Returns the nth child, defaulting to the first child

    Type Parameters

    • C extends undefined | default<HTMLElement> = undefined | default<HTMLElement>

    Parameters

    • nth: number = 0

    Returns undefined | C

  • Returns the nth child from the end, defaulting to the last child

    Type Parameters

    • C extends undefined | default<HTMLElement> = undefined | default<HTMLElement>

    Parameters

    • nth: number = 0

    Returns undefined | C

  • Returns an object containing HTMLElement.offsetTop and HTMLElement.offsetLeft

    Returns {
        left: number;
        top: number;
    }

    • left: number
    • top: number
  • Parameters

    • edge: Edge
    • position: number

    Returns number

  • Parameters

    • id: string | number

    Returns undefined | default<HTMLElement>

  • Returns this component's parent component, if it exists.

    Type Parameters

    • C extends undefined | default<HTMLElement> = undefined | default<HTMLElement>

    Returns null | C

  • Returns this component's containing dialog, if it exists.

    Type Parameters

    Returns undefined | S

  • Hides the element. If a tooltip is shown for this element, hides that as well.

    Parameters

    • trustInternalState: boolean = false

    Returns default

  • Parameters

    Returns void

  • Returns boolean

  • Returns boolean

  • Returns boolean

  • Parameters

    • id: string | number

    Returns boolean

  • Returns boolean

  • Parameters

    Returns undefined | boolean

  • Returns boolean

  • Returns boolean

  • Returns boolean

  • Returns whether the element is visible.

    Parameters

    • trustInternalState: boolean = false

    Returns boolean

  • Mark that this dialog is "active"

    Parameters

    • reason: any

    Returns void

  • Mark that this dialog is not "active"

    Parameters

    • reason: any

    Returns void

  • Parameters

    • selector: string

    Returns boolean

  • Enables a intersection observe on this component and fires an observe event once when the element is first observed

    Returns void

  • Returns boolean

  • Event handler for when this dialog is appended

    Returns void

  • Returns void

  • Returns void

  • Parameters

    • animate: boolean = true

    Returns void

  • Returns void

  • Returns boolean

  • Parameters

    • reason: "focus" | "mouse"

    Returns void

  • Parameters

    Returns void

  • Parameters

    • reason: "remove" | "focus" | "mouse"

    Returns void

  • Returns boolean

  • Parameters

    • initial: boolean

    Returns Promise<void>

  • Returns Promise<void>

  • Returns void

  • Parameters

    Returns void

  • Returns void

  • Returns void

  • Returns boolean

  • Parameters

    • _: any
    • Optional component: default<HTMLElement>

    Returns void

  • Returns void

  • Returns boolean

  • Returns boolean

  • Mark that this dialog is forced to be the top dialog

    Parameters

    • reason: any

    Returns void

  • Appends every element of a list of components/elements.

    Parameters

    • Rest ...elements: ArrayOfIterablesOr<undefined | false | HTMLElement | default<HTMLElement>>

      A varargs list of elements or iterables of elements. Falsy values are skipped

    Returns default

  • Appends this component to another element, by selector, element, or component.

    Parameters

    • Optional where: null | string | HTMLElement | default<HTMLElement>

      A CSS selector, an element, or a component to append this component to.

    Returns default

  • An alias for element.querySelectorAll(selector)

    Type Parameters

    • E extends HTMLElement<E> = HTMLElement

    Parameters

    • selector: string

    Returns NodeListOf<E>

  • Type Parameters

    • N extends Node<N> = Node

    Parameters

    • selector: string

    Returns null | N

  • Type Parameters

    • N extends Node<N> = Node

    Parameters

    • selector: string

    Returns N[]

  • Parameters

    • reason: string

    Returns void

  • Returns void

  • Forcibly regenerates the cached result of Component.getBox for this component and all descendants.

    Parameters

    • descendants: boolean = true

    Returns void

  • Removes this element and all descendants.

    Returns default

  • Type Parameters

    • K extends keyof HTMLElementEventMap

    Parameters

    • type: K
    • listener: ((this: HTMLElement, ev: HTMLElementEventMap[K]) => any)
        • (this: HTMLElement, ev: HTMLElementEventMap[K]): any
        • Parameters

          • this: HTMLElement
          • ev: HTMLElementEventMap[K]

          Returns any

    Returns default

  • Returns void

  • Parameters

    • animationId: number = ...

    Returns void

  • Triggers a repaint on this element.

    Returns void

  • Returns void

  • Parameters

    • animate: boolean = true
    • resetOffset: boolean = true
    • resetZoom: boolean = true
    • resetAngle: boolean = true
    • resetScale: boolean = true

    Returns void

  • Parameters

    • islandPosition: IVector2 = localIsland.position

    Returns void

  • Returns void

  • Returns void

  • Returns void

  • Runs the given callback with the given arguments. this and the first argument are this element.

    Type Parameters

    • A extends any[]

    Parameters

    • Optional cb: ((this: default, component: default, ...args: A) => any)

      The callback to run.

    • Rest ...args: A

      The arguments with which to call the callback.

    Returns default

  • Runs the given callback with the given arguments. this and the first argument are this element.

    Parameters

    • Optional cb: ((this: default, component: default) => any)

      The callback to run.

    • Rest ...args: any[]

      The arguments with which to call the callback.

    Returns default

  • Runs the given callback with the given arguments, after the specified amount of time. this and the first argument are this element.

    Type Parameters

    • A extends any[]

    Parameters

    • ms: number

      The amount of time to wait before running the callback, in milliseconds.

    • cb: ((this: default, component: default, ...args: A) => any)

      The callback to run.

    • Rest ...args: A

      The arguments with which to call the callback.

    Returns default

  • Runs the given callback with the given arguments, after the specified amount of time. this and the first argument are this element.

    Parameters

    • ms: number

      The amount of time to wait before running the callback, in milliseconds.

    • Optional cb: ((this: default, component: default) => any)

      The callback to run.

    • Rest ...args: any[]

      The arguments with which to call the callback.

    Returns default

  • Runs the given callback with the given arguments, after the specified amount of time. this and the first argument are this element.

    Type Parameters

    • A extends any[]

    Parameters

    • ms: number

      The amount of time to wait before running the callback, in milliseconds.

    • debounce: number

      The span of time to debounce in. (If this callback was scheduled again in this time, skip this earlier call)

    • cb: ((this: default, component: default, ...args: A) => any)

      The callback to run.

    • Rest ...args: A

      The arguments with which to call the callback.

    Returns default

  • Runs the given callback with the given arguments, after the specified amount of time. this and the first argument are this element.

    Parameters

    • ms: number

      The amount of time to wait before running the callback, in milliseconds.

    • debounce: number

      The span of time to debounce in. (If this callback was scheduled again in this time, skip this earlier call)

    • Optional cb: ((this: default, component: default) => any)

      The callback to run.

    • Rest ...args: any[]

      The arguments with which to call the callback.

    Returns default

  • Scrolls this element so the given child is at the top of the viewport.

    Parameters

    • Optional child: HTMLElement | default<HTMLElement>

      The child to scroll to

    • Optional ms: number

      The time to take, defaulting to 1000 (1 second)

    Returns void

  • Scrolls this element so the given child is at the top of the viewport.

    Parameters

    • child: undefined | HTMLElement | default<HTMLElement>

      The child to scroll to

    • offsetTop: number

      An offset for the position to scroll to, relative to the position of the child

    • Optional ms: number

      The time to take, defaulting to 1000 (1 second)

    Returns void

  • Parameters

    • x: number
    • y: number

    Returns void

  • Sets the contents of this element using innerHTML.

    Parameters

    • html: string

      The content, an HTML string. Script tags will not be executed, as per the normal functionality of innerHTML

    • escape: boolean = false

      Only the text within the HTML will be appended, not the tags.

    Returns default

  • Removes the context menu from this element.

    Returns default

  • Sets the context menu for this element.

    Parameters

    • generator: ((contextMenu: ContextMenu, api: IBindHandlerApi) => undefined | ContextMenu)
        • (contextMenu: ContextMenu, api: IBindHandlerApi): undefined | ContextMenu
        • Parameters

          Returns undefined | ContextMenu

    • Optional priority: number

    Returns default

  • Set the position of an edge.

    Parameters

    • edge: Edge
    • position: number
    • transform: boolean = true

    Returns void

  • Warning: This method will replace the internal element backing this component.

    Only call this directly after constructing the element.

    Parameters

    • element: HTMLElement

    Returns default

  • Warning: This method will replace the internal element backing this component.

    Only call this directly after constructing the element.

    Parameters

    • Optional elementType: string
    • Optional namespace: SVG

    Returns default

  • Parameters

    • hoveringClickable: boolean = true

    Returns void

  • Sets the ID of this component's element.

    Parameters

    • id: string

    Returns default

  • Parameters

    • inert: boolean = true

    Returns default

  • Parameters

    • initialSelection: boolean = true

    Returns default

  • Sets the tooltip options for this element. Setting the tooltip to undefined, or not providing the argument removes the tooltip options.

    Type Parameters

    • ARGS extends any[]

    Parameters

    • Optional initializer: ((tooltip: default, ...args: ARGS) => any)
        • (tooltip: default, ...args: ARGS): any
        • Parameters

          • tooltip: default
          • Rest ...args: ARGS

          Returns any

    • Rest ...args: ARGS

    Returns default

  • Parameters

    • levels: Iterable<number>

    Returns default

  • Returns boolean

  • Parameters

    • x: number
    • y: number
    • Optional island: default

    Returns boolean

  • Shows the element.

    Parameters

    • trustInternalState: boolean = false

    Returns default

  • Parameters

    • id: string | number
    • Optional disableAnimations: boolean

    Returns undefined | default<HTMLElement>

  • Returns void

  • Returns a stream of this component's sibling components. Child elements that don't have associated components will be undefined.

    Type Parameters

    Parameters

    • Optional selector: string

      A selector that each element must match to be included in the result stream

    Returns Stream<C>

  • Returns

    a promise that resolves when either the given time has passed, or this component has been removed. Returns true if this component exists, false if it has been removed.

    Parameters

    • ms: number

    Returns Promise<boolean>

  • Moves this element to a hidden element, in order to retain any information the element had. This allows the element to be re-appended later without re-adding event handlers, CSS, or any other data.

    Parameters

    Returns default

  • Parameters

    • duration: number = 5000

    Returns void

  • Toggles the visibility of this element. Internally uses show and hide.

    Parameters

    • Optional visible: boolean

      The new visiblity of this element.

    • trustInternalState: boolean = false

    Returns default

  • Toggle whether this dialog is "active"

    Parameters

    • reason: any
    • active: boolean

    Returns void

  • Toggle whether this dialog is forced to be the top dialog

    Parameters

    • reason: any
    • pinned: boolean

    Returns void

  • Mark that this dialog is forced to be the top dialog

    Parameters

    • reason: any

    Returns void

  • Parameters

    • isDragging: boolean

    Returns void

  • Parameters

    • selector: string

    Returns Stream<default<HTMLElement>>

  • Parameters

    • elementToMove: string | HTMLElement | default<HTMLElement>
    • placeToAppendTo: string | HTMLElement | default<HTMLElement>
    • strategy: AppendStrategy = "append"

    Returns void

  • Parameters

    • inElement: HTMLElement | default<HTMLElement>
    • selector: string
    • includeSelf: boolean = false

    Returns HTMLElement[]

  • Parameters

    • selector: string

    Returns undefined | default<HTMLElement>

  • Parameters

    • element: Element | default<HTMLElement>

    Returns default<HTMLElement>

  • Parameters

    • event: Event

    Returns default<HTMLElement>

  • Parameters

    • element: undefined | null | false | Element | default<HTMLElement>

    Returns undefined | default<HTMLElement>

  • Parameters

    • selector: string
    • create: undefined | false

    Returns undefined | default<HTMLElement>

  • Parameters

    • element: Element | default<HTMLElement>
    • create: undefined | false

    Returns undefined | default<HTMLElement>

  • Parameters

    • event: Event
    • create: undefined | false

    Returns undefined | default<HTMLElement>

  • Parameters

    • element: undefined | null | false | Element | default<HTMLElement>
    • create: undefined | false

    Returns undefined | default<HTMLElement>

  • Type Parameters

    Parameters

    • selector: string

    Returns undefined | C

  • Type Parameters

    Parameters

    • element: Element | C

    Returns C

  • Type Parameters

    Parameters

    • event: Event

    Returns C

  • Type Parameters

    Parameters

    • element: undefined | null | false | Element | C

    Returns undefined | C

  • Type Parameters

    Parameters

    • selector: string
    • create: undefined | false

    Returns undefined | C

  • Type Parameters

    Parameters

    • element: Element | C
    • create: undefined | false

    Returns undefined | C

  • Type Parameters

    Parameters

    • event: Event
    • create: undefined | false

    Returns undefined | C

  • Type Parameters

    Parameters

    • element: undefined | null | false | Element | C
    • create: undefined | false

    Returns undefined | C

  • Parameters

    • element: HTMLElement | default<HTMLElement>

    Returns number | false

  • Parameters

    • element: HTMLElement

    Returns void

  • Parameters

    • elementToRemove: null | string | Element | default<HTMLElement> | ChildNode
    • force: boolean = false
    • uncacheSiblingsAndAncestors: boolean = true

    Returns void

Generated using TypeDoc