Skip to main content

Module: ui

Routines for building UI

Namespaces

Classes

Interfaces

Variables

icons

icons: Object

Type declaration

NameType
add(handler: Function, tooltipMsg: null | string) => HTMLElement
close(handler: Function, tooltipMsg: null | string) => HTMLElement
copy(handler: Function, tooltipMsg: null | string) => HTMLElement
delete(handler: Function, tooltipMsg: null | string) => HTMLElement
edit(handler: Function, tooltipMsg: null | string) => HTMLElement
filter(handler: Function, tooltipMsg: null | string) => HTMLElement
help(handler: Function, tooltipMsg: null | string) => HTMLElement
info(handler: Function, tooltipMsg: null | string) => HTMLElement
play(handler: Function, tooltipMsg: null | string) => HTMLElement
remove(handler: Function, tooltipMsg: null | string) => HTMLElement
save(handler: null | Function, tooltipMsg: null | string) => HTMLElement
search(handler: Function, tooltipMsg: null | string) => HTMLElement
settings(handler: Function, tooltipMsg: null | string) => HTMLElement
sync(handler: Function, tooltipMsg: null | string) => HTMLElement
undo(handler: Function, tooltipMsg: null | string) => HTMLElement

Defined in

ui.ts:1366


tooltip

tooltip: Tooltip

Defined in

ui.ts:905

Functions

_backColor

_backColor(x, s): HTMLElement

Parameters

NameType
xHTMLElement
sstring

Returns

HTMLElement

Defined in

ui.ts:104


_class

_class(x, s): HTMLElement

Parameters

NameType
xHTMLElement
sstring

Returns

HTMLElement

Defined in

ui.ts:94


_color

_color(x, s): HTMLElement

Parameters

NameType
xHTMLElement
sstring

Returns

HTMLElement

Defined in

ui.ts:99


_innerText

_innerText(x, s): HTMLElement

Parameters

NameType
xHTMLElement
sstring

Returns

HTMLElement

Defined in

ui.ts:89


accordion

accordion(key?): Accordion

Creates an accordion with dynamically populated panes. Sample: https://public.datagrok.ai/js/samples/ui/ui

Parameters

NameTypeDefault value
keyanynull

Returns

Accordion

Defined in

ui.ts:157


appendAll

appendAll(root, elements): HTMLElement

Appends multiple elements to root, and returns root. An element could be either HTMLElement or Viewer.

Parameters

NameType
rootHTMLElement
elements(HTMLElement | Viewer<any>)[]

Returns

HTMLElement

Defined in

ui.ts:57


bigButton

bigButton(text, handler, tooltip?): HTMLButtonElement

Parameters

NameTypeDefault value
textstringundefined
handlerFunctionundefined
tooltipnull | stringnull

Returns

HTMLButtonElement

Defined in

ui.ts:396


bind

bind(item, element, options?): HTMLElement

Binds [item] with the [element]. It enables selecting it as a current object, drag-and-drop, tooltip, and popup menu.

Parameters

NameType
itemany
elementHTMLElement
options?Object
options.contextMenuboolean

Returns

HTMLElement

Defined in

ui.ts:532


bindInputs

bindInputs(inputs): StreamSubscription[]

Parameters

NameType
inputsInputBase<any>[]

Returns

StreamSubscription[]

Defined in

ui.ts:618


block

block(items, options?): HTMLDivElement

Parameters

NameTypeDefault value
itemsHTMLElement[]undefined
optionsnull | string | ElementOptionsnull

Returns

HTMLDivElement

Defined in

ui.ts:1259


block25

block25(items, options?): HTMLDivElement

Parameters

NameTypeDefault value
itemsHTMLElement[]undefined
optionsnull | ElementOptionsnull

Returns

HTMLDivElement

Defined in

ui.ts:1271


block50

block50(items, options?): HTMLDivElement

Parameters

NameTypeDefault value
itemsHTMLElement[]undefined
optionsnull | ElementOptionsnull

Returns

HTMLDivElement

Defined in

ui.ts:1277


block75

block75(items, options?): HTMLDivElement

Parameters

NameTypeDefault value
itemsHTMLElement[]undefined
optionsnull | ElementOptionsnull

Returns

HTMLDivElement

Defined in

ui.ts:1265


boolInput

boolInput(name, value, onValueChanged?): InputBase<boolean | null>

Parameters

NameTypeDefault value
namestringundefined
valuebooleanundefined
onValueChangednull | Functionnull

Returns

InputBase<boolean | null>

Defined in

ui.ts:729


box

box(item?, options?): HTMLDivElement

Parameters

NameTypeDefault value
itemnull | HTMLElement | Widget<any> | InputBase<any>null
optionsnull | string | ElementOptionsnull

Returns

HTMLDivElement

Defined in

ui.ts:1077


boxFixed

boxFixed(item, options?): HTMLDivElement

Parameters

NameTypeDefault value
itemnull | HTMLElement | Widget<any> | InputBase<any>undefined
optionsnull | ElementOptionsnull

Returns

HTMLDivElement

Defined in

ui.ts:1094


button

button(content, handler, tooltip?): HTMLButtonElement

Creates a button with the specified text, click handler, and tooltip

Parameters

NameTypeDefault value
contentstring | Element | (string | Element)[]undefined
handlerFunctionundefined
tooltipnull | stringnull

Returns

HTMLButtonElement

Defined in

ui.ts:392


buttonsInput

buttonsInput(children?): HTMLDivElement

Parameters

NameTypeDefault value
childrenHTMLButtonElement[][]

Returns

HTMLDivElement

Defined in

ui.ts:1327


canvas

canvas(width?, height?): HTMLCanvasElement

Parameters

NameTypeDefault value
widthnull | numbernull
heightnull | numbernull

Returns

HTMLCanvasElement

Defined in

ui.ts:113


card

card(content): HTMLDivElement

Renders content as a card.

Parameters

NameType
contentHTMLElement

Returns

HTMLDivElement

Defined in

ui.ts:374


choiceInput

choiceInput<T>(name, selected, items, onValueChanged?): InputBase<T | null>

Type parameters

Name
T

Parameters

NameTypeDefault value
namestringundefined
selectedTundefined
itemsT[]undefined
onValueChangednull | Functionnull

Returns

InputBase<T | null>

Defined in

ui.ts:705


colorInput

colorInput(name, value, onValueChanged?): InputBase<string>

Parameters

NameTypeDefault value
namestringundefined
valuestringundefined
onValueChangednull | Functionnull

Returns

InputBase<string>

Defined in

ui.ts:758


columnInput

columnInput(name, table, value, onValueChanged?): InputBase<Column | null>

Parameters

NameTypeDefault value
namestringundefined
tableDataFrameundefined
valuenull | Column<any>undefined
onValueChangednull | Functionnull

Returns

InputBase<Column | null>

Defined in

ui.ts:741


columnsInput

columnsInput(name, table, onValueChanged, options?): InputBase<Column[]>

Parameters

NameType
namestring
tableDataFrame
onValueChanged(columns: Column<any>[]) => void
options?Object
options.available?string[]
options.checked?string[]

Returns

InputBase<Column[]>

Defined in

ui.ts:745


comboPopup

comboPopup(caption, items, handler, renderer?): HTMLElement

Creates a combo popup with the specified icons and items

Parameters

NameTypeDescription
captionstring | HTMLElement
itemsstring[]
handler(item: any) => void(item) => {...}
renderer?null | (item: any) => HTMLElement(item) => {...}

Returns

HTMLElement

Defined in

ui.ts:407


comboPopupItems

comboPopupItems(caption, items): HTMLElement

Creates a combo popup with the specified icons and items

Parameters

NameType
captionstring | HTMLElement
itemsObject

Returns

HTMLElement

Defined in

ui.ts:416


contextActions

contextActions(x): HTMLElement

Parameters

NameType
xany

Returns

HTMLElement

Defined in

ui.ts:1343


dateInput

dateInput(name, value, onValueChanged?): DateInput

Parameters

NameTypeDefault value
namestringundefined
valuenull | Dayjsundefined
onValueChangednull | Functionnull

Returns

DateInput

Defined in

ui.ts:725


dialog

dialog(options?): Dialog

Creates a [Dialog].

Parameters

NameType
options?string | { helpUrl?: string ; showFooter?: boolean ; showHeader?: boolean ; title?: string }

Returns

Dialog

Defined in

ui.ts:526


div

div(children?, options?): HTMLDivElement

Parameters

NameTypeDefault value
childrenstring | any[] | HTMLElement[]
optionsnull | string | ElementOptionsnull

Returns

HTMLDivElement

Defined in

ui.ts:315


divH

divH(items, options?): HTMLDivElement

Div flex-box container that positions child elements horizontally.

Parameters

NameTypeDefault value
itemsHTMLElement[]undefined
optionsnull | string | ElementOptionsnull

Returns

HTMLDivElement

Defined in

ui.ts:369


divText

divText(text, options?): HTMLDivElement

Returns DivElement with the specified inner text

Parameters

NameTypeDefault value
textstringundefined
optionsanynull

Returns

HTMLDivElement

Defined in

ui.ts:180


divV

divV(items, options?): HTMLDivElement

Div flex-box container that positions child elements vertically.

Parameters

NameTypeDefault value
itemsany[]undefined
optionsnull | string | ElementOptionsnull

Returns

HTMLDivElement

Defined in

ui.ts:361


element

element(tagName, className?): HTMLElement & any

Creates an instance of the element for the specified tag, and optionally assigns it a CSS class.

Parameters

NameTypeDefault valueDescription
tagNamestringundefinedThe name of an element.
classNamenull | stringnull

Returns

HTMLElement & any

Defined in

ui.ts:44


empty

empty(e): HTMLElement

Removes all child nodes, and disposes widgets that these nodes might contain. See also [remove].

Parameters

NameType
eHTMLElement

Returns

HTMLElement

Defined in

ui.ts:67


extractRoot

extractRoot(x): HTMLElement | null

Parameters

NameType
xany

Returns

HTMLElement | null

Defined in

ui.ts:239


fileBrowser

fileBrowser(params?): Widget

Parameters

NameType
paramsObject
params.dataSourceFilter?"S3"[]
params.path?string

Returns

Widget

Defined in

ui.ts:1396


floatInput

floatInput(name, value, onValueChanged?): InputBase<number | null>

Parameters

NameTypeDefault value
namestringundefined
valuenull | numberundefined
onValueChangednull | Functionnull

Returns

InputBase<number | null>

Defined in

ui.ts:721


form

form(children?, options?): HTMLDivElement

Parameters

NameTypeDefault value
childrenInputBase<any>[][]
optionsnull | {}null

Returns

HTMLDivElement

Defined in

ui.ts:1305


h1

h1(s, options?): HTMLHeadingElement

Parameters

NameTypeDefault value
sstring | Elementundefined
optionsnull | string | ElementOptionsnull

Returns

HTMLHeadingElement

Defined in

ui.ts:125


h2

h2(s, options?): HTMLHeadingElement

Parameters

NameTypeDefault value
sstring | Elementundefined
optionsnull | string | ElementOptionsnull

Returns

HTMLHeadingElement

Defined in

ui.ts:135


h3

h3(s, options?): HTMLHeadingElement

Parameters

NameTypeDefault value
sstring | Elementundefined
optionsnull | string | ElementOptionsnull

Returns

HTMLHeadingElement

Defined in

ui.ts:145


iconFA

iconFA(name, handler?, tooltipMsg?): HTMLElement

Returns a font-awesome icon with the specified name, handler, and tooltip. Sample: https://public.datagrok.ai/js/samples/ui/icons

Parameters

NameTypeDefault valueDescription
namestringundefinedicon name (omit the "fa-" prefix)
handlernull | (this: HTMLElement, ev: MouseEvent) => anynull
tooltipMsgnull | stringnull

Returns

HTMLElement

Defined in

ui.ts:201


iconImage

iconImage(name, path, handler?, tooltipMsg?): HTMLElement

Parameters

NameTypeDefault value
namestringundefined
pathstringundefined
handlernull | (this: HTMLElement, ev: MouseEvent) => anynull
tooltipMsgnull | stringnull

Returns

HTMLElement

Defined in

ui.ts:213


iconSvg

iconSvg(name, handler?, tooltipMsg?): HTMLElement

Parameters

NameTypeDefault value
namestringundefined
handlernull | (this: HTMLElement, ev: MouseEvent) => anynull
tooltipMsgnull | stringnull

Returns

HTMLElement

Defined in

ui.ts:227


iframe

iframe(options?): HTMLIFrameElement

Parameters

NameType
options?Object
options.height?string
options.src?string
options.width?string

Returns

HTMLIFrameElement

Defined in

ui.ts:456


image

image(src, width, height, options?): HTMLDivElement

Parameters

NameType
srcstring
widthnumber
heightnumber
options?Object
options.target?string | Function
options.tooltipMsg?string

Returns

HTMLDivElement

Defined in

ui.ts:487


info

info(children, header?, reopenable?): HTMLDivElement

Parameters

NameTypeDefault value
childrenstring | HTMLElement | HTMLElement[]undefined
headernull | stringnull
reopenablebooleantrue

Returns

HTMLDivElement

Defined in

ui.ts:327


inlineText

inlineText(objects): HTMLElement

Renders inline text, calling [renderMarkup] for each non-HTMLElement

Parameters

NameType
objectsany[]

Returns

HTMLElement

.

Defined in

ui.ts:307


inputs

inputs(inputs, options?): HTMLDivElement

Parameters

NameTypeDefault value
inputsIterable<InputBase<any>>undefined
optionsanynull

Returns

HTMLDivElement

Defined in

ui.ts:633


inputsRow

inputsRow(name, inputs): HTMLElement

Parameters

NameType
namestring
inputsInputBase<any>[]

Returns

HTMLElement

Defined in

ui.ts:691


intInput

intInput(name, value, onValueChanged?): InputBase<number | null>

Parameters

NameTypeDefault value
namestringundefined
valuenull | numberundefined
onValueChangednull | Functionnull

Returns

InputBase<number | null>

Defined in

ui.ts:697


label

label(text, options?): HTMLLabelElement

Parameters

NameTypeDefault value
textnull | stringundefined
optionsnull | {}null

Returns

HTMLLabelElement

Defined in

ui.ts:1297


link(text, target, tooltipMsg?, options?): HTMLAnchorElement

Creates an <a> element.

Parameters

NameType
textstring
targetstring | object | Function
tooltipMsg?string
optionsnull | string | ElementOptions

Returns

HTMLAnchorElement

Defined in

ui.ts:502


list

list(items, options?): HTMLElement

Creates a visual element representing list of [items].

Parameters

NameType
itemsany[]
options?Object
options.processNode?(node: HTMLElement) => void

Returns

HTMLElement

Defined in

ui.ts:448


loader

loader(): any

Returns

any

Defined in

ui.ts:378


makeDraggable

makeDraggable<T>(e, options?): Element

Type parameters

Name
T

Parameters

NameType
eElement
options?Object
options.allowCopy?() => boolean
options.check?() => boolean
options.dragObjectType?string
options.getDragCaption?() => any
options.getDragContext?() => any
options.getDragHint?() => string
options.getDragObject?() => any
options.onDragEnd?() => void
options.onDragStart?(me: MouseEvent) => boolean

Returns

Element

Defined in

ui.ts:582


makeDroppable

makeDroppable<T>(e, options?): void

Type parameters

Name
T

Parameters

NameType
eElement
options?Object
options.acceptDrop?(dragObject: T) => boolean
options.doDrop?(dragObject: T, copying: boolean) => void

Returns

void

Defined in

ui.ts:607


markdown

markdown(text): HTMLElement

Parameters

NameType
textstring

Returns

HTMLElement

Defined in

ui.ts:191


moleculeInput

moleculeInput(name, value, onValueChanged?): InputBase<string>

Parameters

NameTypeDefault value
namestringundefined
valuestringundefined
onValueChangednull | Functionnull

Returns

InputBase<string>

Defined in

ui.ts:737


multiChoiceInput

multiChoiceInput<T>(name, value, items, onValueChanged?): InputBase<T[] | null>

Type parameters

Name
T

Parameters

NameTypeDefault value
namestringundefined
valueT[]undefined
itemsT[]undefined
onValueChangednull | Functionnull

Returns

InputBase<T[] | null>

Defined in

ui.ts:709


narrowForm

narrowForm(children?, options?): HTMLDivElement

Parameters

NameTypeDefault value
childrenInputBase<any>[][]
optionsnull | {}null

Returns

HTMLDivElement

Defined in

ui.ts:1315


onSizeChanged

onSizeChanged(element): rxjs.Observable<any>

Sample: https://public.datagrok.ai/js/samples/ui/ui-events

Parameters

NameType
elementHTMLElement

Returns

rxjs.Observable<any>

Defined in

ui.ts:766


p

p(text, options?): HTMLParagraphElement

Parameters

NameTypeDefault value
textstringundefined
optionsanynull

Returns

HTMLParagraphElement

Defined in

ui.ts:1283


panel

panel(items?, options?): HTMLDivElement

Parameters

NameTypeDefault value
itemsHTMLElement[][]
options?string | ElementOptionsundefined

Returns

HTMLDivElement

Defined in

ui.ts:1291


popupMenu

popupMenu(items): void

Parameters

NameType
itemsany

Returns

void

Defined in

ui.ts:566


rangeSlider

rangeSlider(minRange, maxRange, min, max, vertical?, style?): RangeSlider

Parameters

NameTypeDefault value
minRangenumberundefined
maxRangenumberundefined
minnumberundefined
maxnumberundefined
verticalbooleanfalse
styleRangeSliderStyle | SliderOptions'barbell'

Returns

RangeSlider

Defined in

ui.ts:546


remove

remove(element): void

Removes the [element] from the DOM, and disposes any widgets that the [element] might contain. See also [empty].

Parameters

NameType
elementHTMLElement

Returns

void

Defined in

ui.ts:84


render

render(x, options?): HTMLElement

Renders object to html element.

Parameters

NameType
xany
options?ElementOptions

Returns

HTMLElement

Defined in

ui.ts:258


renderCard

renderCard(x): HTMLElement

Renders object to html card.

Parameters

NameType
xobject

Returns

HTMLElement

.

Defined in

ui.ts:289


renderInline

renderInline(x): HTMLElement

Parameters

NameType
xHTMLElement

Returns

HTMLElement

Defined in

ui.ts:298


ribbonPanel

ribbonPanel(items): HTMLDivElement

Parameters

NameType
itemsnull | HTMLElement[]

Returns

HTMLDivElement

Defined in

ui.ts:1242


searchInput

searchInput(name, value, onValueChanged?): InputBase<string>

Parameters

NameTypeDefault value
namestringundefined
valuestringundefined
onValueChangednull | Functionnull

Returns

InputBase<string>

Defined in

ui.ts:717


setClass

setClass(e, classes, flag): void

Parameters

NameType
eHTMLElement
classesstring
flagboolean

Returns

void

Defined in

ui.ts:75


setDisplay

setDisplay(element, show): HTMLElement

Parameters

NameType
elementHTMLElement
showboolean

Returns

HTMLElement

Defined in

ui.ts:1388


setDisplayAll

setDisplayAll(elements, show): void

Parameters

NameType
elementsHTMLElement[]
showboolean

Returns

void

Defined in

ui.ts:1384


setUpdateIndicator

setUpdateIndicator(element, updating?): void

Parameters

NameTypeDefault value
elementHTMLElementundefined
updatingbooleantrue

Returns

void

Defined in

ui.ts:382


showPopup

showPopup(element, anchor, vertical?): Element

Shows popup with the [element] near the [anchor]. tooltip, and popup menu.

Parameters

NameTypeDefault value
elementHTMLElementundefined
anchorHTMLElementundefined
verticalbooleanfalse

Returns

Element

.

Defined in

ui.ts:542


sliderInput

sliderInput(name, value, min, max, onValueChanged?): InputBase<number | null>

Parameters

NameTypeDefault value
namestringundefined
valuenull | numberundefined
minnumberundefined
maxnumberundefined
onValueChangednull | Functionnull

Returns

InputBase<number | null>

Defined in

ui.ts:701


span

span(x, options?): HTMLElement

Renders multiple objects as a span

Parameters

NameTypeDefault value
xany[]undefined
optionsnull | string | ElementOptionsnull

Returns

HTMLElement

Defined in

ui.ts:294


splitH

splitH(items, options?, resize?): HTMLDivElement

Div flex-box container that positions child elements horizontally.

Parameters

NameTypeDefault value
itemsHTMLElement[]undefined
optionsnull | ElementOptionsnull
resizenull | booleanfalse

Returns

HTMLDivElement

Defined in

ui.ts:1139


splitV

splitV(items, options?, resize?): HTMLDivElement

Div flex-box container that positions child elements vertically.

Parameters

NameTypeDefault value
itemsHTMLElement[]undefined
optionsnull | ElementOptionsnull
resizenull | booleanfalse

Returns

HTMLDivElement

Defined in

ui.ts:1101


star

star(id): HTMLElement

Parameters

NameType
idstring

Returns

HTMLElement

Defined in

ui.ts:1347


stringInput

stringInput(name, value, onValueChanged?, options?): InputBase<string>

Parameters

NameTypeDefault value
namestringundefined
valuestringundefined
onValueChangednull | Functionnull
optionsnull | { clearIcon?: boolean ; escClears?: boolean ; icon?: string | HTMLElement ; placeholder?: String }null

Returns

InputBase<string>

Defined in

ui.ts:713


switchInput

switchInput(name, value, onValueChanged?): InputBase<boolean>

Parameters

NameTypeDefault value
namestringundefined
valuebooleanundefined
onValueChangednull | Functionnull

Returns

InputBase<boolean>

Defined in

ui.ts:733


tabControl

tabControl(pages?, vertical?): TabControl

Parameters

NameTypeDefault valueDescription
pagesnull | { [key: string]: any; }nulllist of page factories
verticalbooleanfalse

Returns

TabControl

Defined in

ui.ts:165


table

table<T>(items, renderer, columnNames?): HTMLTableElement

Creates a visual table based on [items] and [renderer].

Type parameters

Name
T

Parameters

NameTypeDefault value
itemsT[]undefined
renderernull | (item: T, ind: number) => anyundefined
columnNamesnull | string[]null

Returns

HTMLTableElement

Defined in

ui.ts:433


tableFromMap

tableFromMap(map): HTMLTableElement

Creates an html table based on [map].

Parameters

NameType
mapObject

Returns

HTMLTableElement

Defined in

ui.ts:421


tableFromProperties

tableFromProperties(items, properties): HTMLTableElement

Creates an editable html table for the specified items (rows) and properties (columns).

Parameters

NameType
itemsany[]
propertiesProperty[]

Returns

HTMLTableElement

Defined in

ui.ts:426


tableInput

tableInput(name, table, tables?, onValueChanged?): InputBase<DataFrame | null>

Parameters

NameTypeDefault value
namestringundefined
tablenull | DataFrameundefined
tablesDataFrame[]grok.shell.tables
onValueChangednull | Functionnull

Returns

InputBase<DataFrame | null>

Defined in

ui.ts:750


tags

tags(entity): HTMLElement

Parameters

NameType
entityEntity

Returns

HTMLElement

Defined in

ui.ts:187


textInput

textInput(name, value, onValueChanged?): InputBase<string>

Parameters

NameTypeDefault value
namestringundefined
valuestringundefined
onValueChangednull | Functionnull

Returns

InputBase<string>

Defined in

ui.ts:754


tree

tree(): TreeViewGroup

Creates new nodes tree. Sample: https://public.datagrok.ai/js/samples/ui/tree-view

Returns

TreeViewGroup

Defined in

ui.ts:640


virtualView

virtualView(length, renderer, verticalScroll?, maxColumns?): VirtualView

Creates a virtual list widget. Sample: https://public.datagrok.ai/js/samples/ui/virtual-view

Parameters

NameTypeDefault valueDescription
lengthnumberundefinednumber of elements
rendererFunctionundefined
verticalScrollbooleantruevertical or horizontal scrolling
maxColumnsnumber1000maximum number of items on the non-scrolling axis

Returns

VirtualView

Defined in

ui.ts:560


wait

wait(getElement): any

Waits for Future<Element> function to complete and collect its result.

Parameters

NameType
getElement() => Promise<HTMLElement>

Returns

any

Defined in

ui.ts:438


waitBox

waitBox(getElement): any

Waits for Future<Element> function to complete and collect its result as a ui.box.

Parameters

NameType
getElement() => Promise<HTMLElement>

Returns

any

Defined in

ui.ts:443


wideForm

wideForm(children?, options?): HTMLDivElement

Parameters

NameTypeDefault value
childrenInputBase<any>[][]
optionsnull | {}null

Returns

HTMLDivElement

Defined in

ui.ts:1321