@jimka/typescript-ui 0.5.0 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/{AbstractInput-B10DfLOf.js → AbstractInput-sRNPzWel.js} +2 -2
- package/dist/lib/{AbstractInput-B10DfLOf.js.map → AbstractInput-sRNPzWel.js.map} +1 -1
- package/dist/lib/Anchor-CwRhdP2J.js +2 -0
- package/dist/lib/Anchor-CwRhdP2J.js.map +1 -0
- package/dist/lib/AnimatedDropdown-H3Rh-YMZ.js +2 -0
- package/dist/lib/AnimatedDropdown-H3Rh-YMZ.js.map +1 -0
- package/dist/lib/Border-0DJFDiij.js +2 -0
- package/dist/lib/Border-0DJFDiij.js.map +1 -0
- package/dist/lib/Button-MpMIYBYJ.js +2 -0
- package/dist/lib/Button-MpMIYBYJ.js.map +1 -0
- package/dist/lib/{Card-CD3jxshU.js → Card-QYo27r5b.js} +2 -2
- package/dist/lib/{Card-CD3jxshU.js.map → Card-QYo27r5b.js.map} +1 -1
- package/dist/lib/Checkbox-D0JYK-wc.js +2 -0
- package/dist/lib/Checkbox-D0JYK-wc.js.map +1 -0
- package/dist/lib/CheckboxMenuRow-CesLhSnp.js +2 -0
- package/dist/lib/CheckboxMenuRow-CesLhSnp.js.map +1 -0
- package/dist/lib/{CodeEditor-BGlB232h.js → CodeEditor-N1FQodcF.js} +2 -2
- package/dist/lib/CodeEditor-N1FQodcF.js.map +1 -0
- package/dist/lib/ComboBox-Dx8Tk9yg.js +2 -0
- package/dist/lib/ComboBox-Dx8Tk9yg.js.map +1 -0
- package/dist/lib/Component-B0ShfPVi.js +2 -0
- package/dist/lib/Component-B0ShfPVi.js.map +1 -0
- package/dist/lib/Container-abY5Ww3W.js +2 -0
- package/dist/lib/{Container-C7RPLQEc.js.map → Container-abY5Ww3W.js.map} +1 -1
- package/dist/lib/{DOM-Ba8YRVel.js → DOM-C-Edb3tA.js} +2 -2
- package/dist/lib/DOM-C-Edb3tA.js.map +1 -0
- package/dist/lib/Dialog-cbA9V17e.js +2 -0
- package/dist/lib/Dialog-cbA9V17e.js.map +1 -0
- package/dist/lib/{FieldDecorator-HG65hEtk.js → FieldDecorator-BlYMfZ9L.js} +2 -2
- package/dist/lib/{FieldDecorator-HG65hEtk.js.map → FieldDecorator-BlYMfZ9L.js.map} +1 -1
- package/dist/lib/{Fit-Cg3dPyZg.js → Fit-BhlB-HAo.js} +2 -2
- package/dist/lib/{Fit-Cg3dPyZg.js.map → Fit-BhlB-HAo.js.map} +1 -1
- package/dist/lib/{FloatingPanel-D5buuVrQ.js → FloatingPanel-DkJXsZ2D.js} +2 -2
- package/dist/lib/{FloatingPanel-D5buuVrQ.js.map → FloatingPanel-DkJXsZ2D.js.map} +1 -1
- package/dist/lib/{Glyph-DeJF_zsR.js → Glyph-_VeBacS2.js} +2 -2
- package/dist/lib/{Glyph-DeJF_zsR.js.map → Glyph-_VeBacS2.js.map} +1 -1
- package/dist/lib/{Grid-BYBohJIA.js → Grid-Daiz7F5d.js} +2 -2
- package/dist/lib/Grid-Daiz7F5d.js.map +1 -0
- package/dist/lib/GridConstraints-C58LuTqM.js +2 -0
- package/dist/lib/{GridConstraints-Bts284FI.js.map → GridConstraints-C58LuTqM.js.map} +1 -1
- package/dist/lib/{Header-BIFJK9nR.js → Header-Dql3Zxc6.js} +2 -2
- package/dist/lib/{Header-BIFJK9nR.js.map → Header-Dql3Zxc6.js.map} +1 -1
- package/dist/lib/{IconText-Dsb1xS-E.js → IconText-PUjhTLlp.js} +2 -2
- package/dist/lib/{IconText-Dsb1xS-E.js.map → IconText-PUjhTLlp.js.map} +1 -1
- package/dist/lib/LayoutSerialization-CMxunLfV.js +2 -0
- package/dist/lib/LayoutSerialization-CMxunLfV.js.map +1 -0
- package/dist/lib/List-nx8220Fi.js +2 -0
- package/dist/lib/{List-BPd-IXZR.js.map → List-nx8220Fi.js.map} +1 -1
- package/dist/lib/MemoryStore-DhPoU-7X.js +2 -0
- package/dist/lib/MemoryStore-DhPoU-7X.js.map +1 -0
- package/dist/lib/Menu-Q0bpXXze.js +2 -0
- package/dist/lib/Menu-Q0bpXXze.js.map +1 -0
- package/dist/lib/{MenuButton-BR4KOFld.js → MenuButton-DCXi0tsP.js} +2 -2
- package/dist/lib/{MenuButton-BR4KOFld.js.map → MenuButton-DCXi0tsP.js.map} +1 -1
- package/dist/lib/OverlayFade-3pof2AJH.js +2 -0
- package/dist/lib/OverlayFade-3pof2AJH.js.map +1 -0
- package/dist/lib/{Panel-CpNQTLNF.js → Panel-Cy1pdlWO.js} +2 -2
- package/dist/lib/{Panel-CpNQTLNF.js.map → Panel-Cy1pdlWO.js.map} +1 -1
- package/dist/lib/{Position-PBVBW1JS.js → Position-BwtxouxK.js} +2 -2
- package/dist/lib/{Position-PBVBW1JS.js.map → Position-BwtxouxK.js.map} +1 -1
- package/dist/lib/{ProgressSpinner-lAsK26C-.js → ProgressSpinner-DK8xEQ9y.js} +2 -2
- package/dist/lib/{ProgressSpinner-lAsK26C-.js.map → ProgressSpinner-DK8xEQ9y.js.map} +1 -1
- package/dist/lib/RadioButton-BEwpqg1k.js +2 -0
- package/dist/lib/{RadioButton-CCcIaL54.js.map → RadioButton-BEwpqg1k.js.map} +1 -1
- package/dist/lib/RadioMenuRow-DP5qPyFR.js +2 -0
- package/dist/lib/RadioMenuRow-DP5qPyFR.js.map +1 -0
- package/dist/lib/{RovingTabIndex-C2Vzq0IX.js → RovingTabIndex-pHEv5oLD.js} +2 -2
- package/dist/lib/{RovingTabIndex-C2Vzq0IX.js.map → RovingTabIndex-pHEv5oLD.js.map} +1 -1
- package/dist/lib/Scrollbar-t8fFrUVQ.js +2 -0
- package/dist/lib/Scrollbar-t8fFrUVQ.js.map +1 -0
- package/dist/lib/{Slider-DZ9drUxn.js → Slider-CTbwR6HR.js} +2 -2
- package/dist/lib/{Slider-DZ9drUxn.js.map → Slider-CTbwR6HR.js.map} +1 -1
- package/dist/lib/{Spacer-SDhOMp2g.js → Spacer-srdN2d2b.js} +2 -2
- package/dist/lib/{Spacer-SDhOMp2g.js.map → Spacer-srdN2d2b.js.map} +1 -1
- package/dist/lib/TabButton-DLoMQzky.js +2 -0
- package/dist/lib/TabButton-DLoMQzky.js.map +1 -0
- package/dist/lib/TabCloseButton-CY7BGitY.js +2 -0
- package/dist/lib/TabCloseButton-CY7BGitY.js.map +1 -0
- package/dist/lib/{Text-CdHf3B-1.js → Text-CMKnK9uB.js} +2 -2
- package/dist/lib/{Text-CdHf3B-1.js.map → Text-CMKnK9uB.js.map} +1 -1
- package/dist/lib/{Tooltip-B_UF5bXD.js → Tooltip-CUOJOqQi.js} +3 -3
- package/dist/lib/Tooltip-CUOJOqQi.js.map +1 -0
- package/dist/lib/Tree-C64JNPWJ.js +2 -0
- package/dist/lib/Tree-C64JNPWJ.js.map +1 -0
- package/dist/lib/VBox-DfJPWXqc.js +2 -0
- package/dist/lib/VBox-DfJPWXqc.js.map +1 -0
- package/dist/lib/VirtualScroller-DTIn19o1.js +2 -0
- package/dist/lib/VirtualScroller-DTIn19o1.js.map +1 -0
- package/dist/lib/assets/StoreWorker-B5NwRM2I.js +2 -0
- package/dist/lib/assets/StoreWorker-B5NwRM2I.js.map +1 -0
- package/dist/lib/component/button.es.js +1 -1
- package/dist/lib/component/button.es.js.map +1 -1
- package/dist/lib/component/chart.es.js +1 -1
- package/dist/lib/component/container.es.js +1 -1
- package/dist/lib/component/container.es.js.map +1 -1
- package/dist/lib/component/diagram.es.js +1 -1
- package/dist/lib/component/diagram.es.js.map +1 -1
- package/dist/lib/component/display.es.js +1 -1
- package/dist/lib/component/display.es.js.map +1 -1
- package/dist/lib/component/editor.es.js +2 -2
- package/dist/lib/component/editor.es.js.map +1 -1
- package/dist/lib/component/input.es.js +1 -1
- package/dist/lib/component/input.es.js.map +1 -1
- package/dist/lib/component/list.es.js +1 -1
- package/dist/lib/component/list.es.js.map +1 -1
- package/dist/lib/component/menubar.es.js +1 -1
- package/dist/lib/component/menubar.es.js.map +1 -1
- package/dist/lib/component/table.es.js +6 -3
- package/dist/lib/component/table.es.js.map +1 -1
- package/dist/lib/component/tree.es.js +1 -1
- package/dist/lib/core.es.js +1 -1
- package/dist/lib/core.es.js.map +1 -1
- package/dist/lib/data.es.js +1 -1
- package/dist/lib/glyphs/solid/index.es.js +1 -1
- package/dist/lib/layout.es.js +1 -1
- package/dist/lib/layout.es.js.map +1 -1
- package/dist/lib/overlay.es.js +1 -1
- package/dist/lib/overlay.es.js.map +1 -1
- package/dist/lib/primitive.es.js +1 -1
- package/dist/lib/router.es.js +1 -1
- package/dist/lib/router.es.js.map +1 -1
- package/dist/lib/selectionsEqual-gMG7gCVI.js +2 -0
- package/dist/lib/selectionsEqual-gMG7gCVI.js.map +1 -0
- package/dist/lib/types/component/button/Button.d.ts +13 -0
- package/dist/lib/types/component/button/MenuButton.d.ts +1 -0
- package/dist/lib/types/component/button/PopupButton.d.ts +22 -0
- package/dist/lib/types/component/button/TabButton.d.ts +4 -0
- package/dist/lib/types/component/button/index.d.ts +2 -0
- package/dist/lib/types/component/container/CheckboxMenuRow.d.ts +33 -0
- package/dist/lib/types/component/container/CollapseButton.d.ts +11 -3
- package/dist/lib/types/component/container/MenuItem.d.ts +15 -5
- package/dist/lib/types/component/container/MenuRow.d.ts +24 -0
- package/dist/lib/types/component/container/MenuSeparator.d.ts +4 -2
- package/dist/lib/types/component/container/RadioMenuRow.d.ts +33 -0
- package/dist/lib/types/component/container/Scrollbar.d.ts +5 -0
- package/dist/lib/types/component/container/SplitGutter.d.ts +7 -2
- package/dist/lib/types/component/container/TabBar.d.ts +2 -0
- package/dist/lib/types/component/container/WindowBorder.d.ts +1 -1
- package/dist/lib/types/component/container/index.d.ts +6 -1
- package/dist/lib/types/component/display/WebGLCanvas.d.ts +1 -0
- package/dist/lib/types/component/input/AbstractCalendarDropdown.d.ts +2 -0
- package/dist/lib/types/component/input/AbstractPickerField.d.ts +3 -2
- package/dist/lib/types/component/list/AbstractSelectableList.d.ts +1 -1
- package/dist/lib/types/component/list/MultiSelectList.d.ts +2 -1
- package/dist/lib/types/component/shared/VirtualRowView.d.ts +2 -0
- package/dist/lib/types/component/table/Body.d.ts +22 -1
- package/dist/lib/types/component/table/Column.d.ts +3 -1
- package/dist/lib/types/component/table/ColumnConfig.d.ts +2 -0
- package/dist/lib/types/component/table/ColumnFilter.d.ts +27 -0
- package/dist/lib/types/component/table/Header.d.ts +30 -3
- package/dist/lib/types/component/table/Row.d.ts +4 -0
- package/dist/lib/types/component/table/Table.d.ts +29 -0
- package/dist/lib/types/component/table/TableExporter.d.ts +4 -3
- package/dist/lib/types/component/table/TreeBody.d.ts +2 -1
- package/dist/lib/types/component/table/cell/CellText.d.ts +9 -0
- package/dist/lib/types/component/table/cell/Filter.d.ts +54 -0
- package/dist/lib/types/component/table/cell/FilterClauseBadge.d.ts +21 -0
- package/dist/lib/types/component/table/cell/GroupSeparator.d.ts +9 -0
- package/dist/lib/types/component/table/cell/Header.d.ts +1 -0
- package/dist/lib/types/component/table/cell/editor/CellEditor.d.ts +1 -0
- package/dist/lib/types/component/table/cell/renderer/CellRenderer.d.ts +1 -0
- package/dist/lib/types/component/table/cell/renderer/Combo.d.ts +2 -0
- package/dist/lib/types/component/table/cell/renderer/Date.d.ts +2 -0
- package/dist/lib/types/component/table/cell/renderer/DateTime.d.ts +2 -0
- package/dist/lib/types/component/table/cell/renderer/Filter.d.ts +16 -0
- package/dist/lib/types/component/table/cell/renderer/Glyph.d.ts +1 -0
- package/dist/lib/types/component/table/cell/renderer/Link.d.ts +2 -0
- package/dist/lib/types/component/table/cell/renderer/Number.d.ts +3 -1
- package/dist/lib/types/component/table/cell/renderer/String.d.ts +2 -0
- package/dist/lib/types/component/table/cell/renderer/Time.d.ts +2 -0
- package/dist/lib/types/component/table/cell/renderer/TreeCell.d.ts +1 -0
- package/dist/lib/types/component/table/index.d.ts +6 -0
- package/dist/lib/types/component/tree/Tree.d.ts +17 -1
- package/dist/lib/types/component/tree/index.d.ts +1 -1
- package/dist/lib/types/core/AnimatedDropdown.d.ts +0 -9
- package/dist/lib/types/core/Body.d.ts +4 -0
- package/dist/lib/types/core/ClassStyleRules.d.ts +1 -0
- package/dist/lib/types/core/DOM.d.ts +10 -0
- package/dist/lib/types/core/Event.d.ts +11 -2
- package/dist/lib/types/core/OverlayFade.d.ts +12 -0
- package/dist/lib/types/core/OverlayPosition.d.ts +6 -0
- package/dist/lib/types/core/Theme.d.ts +8 -0
- package/dist/lib/types/core/index.d.ts +5 -3
- package/dist/lib/types/data/AbstractStore.d.ts +3 -0
- package/dist/lib/types/data/FilterDescriptor.d.ts +13 -0
- package/dist/lib/types/data/index.d.ts +2 -1
- package/dist/lib/types/data/temporalText.d.ts +2 -0
- package/dist/lib/types/layout/BoxLayout.d.ts +6 -1
- package/dist/lib/types/layout/Grid.d.ts +1 -0
- package/dist/lib/types/layout/HFlow.d.ts +1 -1
- package/dist/lib/types/layout/Split.d.ts +10 -1
- package/dist/lib/types/layout/Tab.d.ts +7 -1
- package/dist/lib/types/layout/VFlow.d.ts +1 -1
- package/dist/lib/types/layout/index.d.ts +1 -1
- package/dist/lib/types/overlay/Dock.d.ts +1 -0
- package/dist/lib/types/overlay/Menu.d.ts +1 -1
- package/dist/lib/types/overlay/Popover.d.ts +3 -0
- package/dist/lib/types/overlay/PopupPanel.d.ts +17 -0
- package/dist/lib/types/overlay/Window.d.ts +2 -0
- package/dist/lib/types/overlay/index.d.ts +2 -0
- package/dist/lib/types/router/RoutePattern.d.ts +7 -0
- package/dist/lib/types/router/Router.d.ts +6 -2
- package/dist/lib/types/router/index.d.ts +1 -1
- package/dist/lib/validation.es.js +1 -1
- package/llms.txt +4 -0
- package/package.json +1 -1
- package/dist/lib/AbstractBooleanInput-CbW7ZrDT.js +0 -2
- package/dist/lib/AbstractBooleanInput-CbW7ZrDT.js.map +0 -1
- package/dist/lib/Anchor-BsblS5it.js +0 -2
- package/dist/lib/Anchor-BsblS5it.js.map +0 -1
- package/dist/lib/AnimatedDropdown-kL47HPGP.js +0 -2
- package/dist/lib/AnimatedDropdown-kL47HPGP.js.map +0 -1
- package/dist/lib/Border-CNS6aEXB.js +0 -2
- package/dist/lib/Border-CNS6aEXB.js.map +0 -1
- package/dist/lib/Button-T16zSZip.js +0 -2
- package/dist/lib/Button-T16zSZip.js.map +0 -1
- package/dist/lib/CodeEditor-BGlB232h.js.map +0 -1
- package/dist/lib/ComboBox-C9FYMuLv.js +0 -2
- package/dist/lib/ComboBox-C9FYMuLv.js.map +0 -1
- package/dist/lib/Component-w65rPK75.js +0 -2
- package/dist/lib/Component-w65rPK75.js.map +0 -1
- package/dist/lib/Container-C7RPLQEc.js +0 -2
- package/dist/lib/DOM-Ba8YRVel.js.map +0 -1
- package/dist/lib/DragManager-UvPHSoRm.js +0 -2
- package/dist/lib/DragManager-UvPHSoRm.js.map +0 -1
- package/dist/lib/Grid-BYBohJIA.js.map +0 -1
- package/dist/lib/GridConstraints-Bts284FI.js +0 -2
- package/dist/lib/LayoutSerialization-ySzY1h2l.js +0 -2
- package/dist/lib/LayoutSerialization-ySzY1h2l.js.map +0 -1
- package/dist/lib/LayoutSizes-DKDK1Cle.js +0 -2
- package/dist/lib/LayoutSizes-DKDK1Cle.js.map +0 -1
- package/dist/lib/List-BPd-IXZR.js +0 -2
- package/dist/lib/MemoryStore-BgP7-Uzn.js +0 -2
- package/dist/lib/MemoryStore-BgP7-Uzn.js.map +0 -1
- package/dist/lib/Menu-C0roOCY7.js +0 -2
- package/dist/lib/Menu-C0roOCY7.js.map +0 -1
- package/dist/lib/RadioButton-CCcIaL54.js +0 -2
- package/dist/lib/Scrollbar-C3ZZyZ1e.js +0 -2
- package/dist/lib/Scrollbar-C3ZZyZ1e.js.map +0 -1
- package/dist/lib/TabButton-DNo4ZgV8.js +0 -2
- package/dist/lib/TabButton-DNo4ZgV8.js.map +0 -1
- package/dist/lib/Tooltip-B_UF5bXD.js.map +0 -1
- package/dist/lib/Tree-C7qLbIYH.js +0 -2
- package/dist/lib/Tree-C7qLbIYH.js.map +0 -1
- package/dist/lib/VBox-32fxpkDl.js +0 -2
- package/dist/lib/VBox-32fxpkDl.js.map +0 -1
- package/dist/lib/VirtualScroller-cvFNMS7U.js +0 -2
- package/dist/lib/VirtualScroller-cvFNMS7U.js.map +0 -1
- package/dist/lib/assets/StoreWorker-CgOBYoai.js +0 -2
- package/dist/lib/assets/StoreWorker-CgOBYoai.js.map +0 -1
- package/dist/lib/selectionsEqual-BrTxPMmK.js +0 -2
- package/dist/lib/selectionsEqual-BrTxPMmK.js.map +0 -1
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Component, ComponentOptions } from "../../core/Component.js";
|
|
2
2
|
import type { AxisOrientation } from "../../primitive/Axis.js";
|
|
3
3
|
export type ScrollbarEvent = "scroll";
|
|
4
|
+
export declare const TRACK_WIDTH = 12;
|
|
4
5
|
export type ScrollbarListener = (position: number) => void;
|
|
5
6
|
export interface ScrollbarOptions extends ComponentOptions {
|
|
6
7
|
arrowsEnabled?: boolean;
|
|
@@ -9,6 +10,7 @@ export interface ScrollbarOptions extends ComponentOptions {
|
|
|
9
10
|
scroll?: ScrollbarListener;
|
|
10
11
|
};
|
|
11
12
|
}
|
|
13
|
+
export declare function isScrollbarTarget(e: Event): boolean;
|
|
12
14
|
declare class Scrollbar extends Component<ScrollbarOptions> {
|
|
13
15
|
private _orientation;
|
|
14
16
|
private _thumb;
|
|
@@ -19,6 +21,8 @@ declare class Scrollbar extends Component<ScrollbarOptions> {
|
|
|
19
21
|
private _thumbPos;
|
|
20
22
|
private _dragStartClient;
|
|
21
23
|
private _dragStartScroll;
|
|
24
|
+
private _thumbHovered;
|
|
25
|
+
private _thumbDragging;
|
|
22
26
|
private _listeners;
|
|
23
27
|
private _arrowsEnabled;
|
|
24
28
|
private _arrowStep;
|
|
@@ -32,6 +36,7 @@ declare class Scrollbar extends Component<ScrollbarOptions> {
|
|
|
32
36
|
private disposeArrows;
|
|
33
37
|
private _onThumbMouseOver;
|
|
34
38
|
private _onThumbMouseOut;
|
|
39
|
+
private updateThumbFill;
|
|
35
40
|
on(event: "scroll", listener: ScrollbarListener): this;
|
|
36
41
|
off(event: ScrollbarEvent, listener: Function): this;
|
|
37
42
|
protected emit(event: "scroll", position: number): void;
|
|
@@ -1,20 +1,22 @@
|
|
|
1
1
|
import { Component, ComponentOptions } from "../../core/Component.js";
|
|
2
2
|
import type { Handle } from "../../core/DOM.js";
|
|
3
|
-
import { CollapseDirection } from "../../component/container/CollapseButton.js";
|
|
3
|
+
import { CollapseDirection, CollapseTrigger } from "../../component/container/CollapseButton.js";
|
|
4
4
|
import { Event } from "../../core/Event.js";
|
|
5
|
-
export type SplitGutterEvent = "dragstart" | "drag" | "dragend" | "collapse";
|
|
5
|
+
export type SplitGutterEvent = "dragstart" | "drag" | "dragend" | "collapse" | "contextmenu";
|
|
6
6
|
export interface SplitGutterOptions extends ComponentOptions {
|
|
7
7
|
orientation?: string;
|
|
8
8
|
collapsible?: boolean;
|
|
9
9
|
movable?: boolean;
|
|
10
10
|
opaque?: boolean;
|
|
11
11
|
collapseDirection?: CollapseDirection;
|
|
12
|
+
collapseTrigger?: CollapseTrigger;
|
|
12
13
|
expandedBackground?: string;
|
|
13
14
|
listeners?: {
|
|
14
15
|
dragstart?: (position: number) => void;
|
|
15
16
|
drag?: (position: number) => void;
|
|
16
17
|
dragend?: () => void;
|
|
17
18
|
collapse?: () => void;
|
|
19
|
+
contextmenu?: (x: number, y: number) => void;
|
|
18
20
|
};
|
|
19
21
|
}
|
|
20
22
|
declare class SplitGutter extends Component<SplitGutterOptions> {
|
|
@@ -24,6 +26,7 @@ declare class SplitGutter extends Component<SplitGutterOptions> {
|
|
|
24
26
|
private _collapseButton;
|
|
25
27
|
private _opaque;
|
|
26
28
|
private _collapseDirection;
|
|
29
|
+
private _collapseTrigger;
|
|
27
30
|
private _expandedBackground;
|
|
28
31
|
private _tooltipText;
|
|
29
32
|
private _listeners;
|
|
@@ -45,11 +48,13 @@ declare class SplitGutter extends Component<SplitGutterOptions> {
|
|
|
45
48
|
on(event: "drag", listener: (position: number) => void): this;
|
|
46
49
|
on(event: "dragend", listener: () => void): this;
|
|
47
50
|
on(event: "collapse", listener: () => void): this;
|
|
51
|
+
on(event: "contextmenu", listener: (x: number, y: number) => void): this;
|
|
48
52
|
off(event: SplitGutterEvent, listener: Function): this;
|
|
49
53
|
protected emit(event: "dragstart", position: number): void;
|
|
50
54
|
protected emit(event: "drag", position: number): void;
|
|
51
55
|
protected emit(event: "dragend"): void;
|
|
52
56
|
protected emit(event: "collapse"): void;
|
|
57
|
+
protected emit(event: "contextmenu", x: number, y: number): void;
|
|
53
58
|
protected destructor(): void;
|
|
54
59
|
private _dispatchDrag;
|
|
55
60
|
onDragStart(evnt: MouseEvent): void;
|
|
@@ -110,6 +110,8 @@ declare class TabBar extends Container<TabBarOptions> {
|
|
|
110
110
|
isEntryCloseable(id: string): boolean;
|
|
111
111
|
getEntryName(id: string): string;
|
|
112
112
|
setEntryContentId(id: string, contentId: string): this;
|
|
113
|
+
setEntryBusy(id: string, busy: boolean): this;
|
|
114
|
+
isEntryBusy(id: string): boolean;
|
|
113
115
|
getEntryButtonId(id: string): string;
|
|
114
116
|
private entryById;
|
|
115
117
|
private activeEntry;
|
|
@@ -34,7 +34,7 @@ declare class WindowBorder extends Component<WindowBorderOptions> {
|
|
|
34
34
|
private _dispatchDrag;
|
|
35
35
|
isSnapTarget(): boolean;
|
|
36
36
|
setSnapTarget(value: boolean): this;
|
|
37
|
-
onDragStart(): void;
|
|
37
|
+
onDragStart(e?: MouseEvent): void;
|
|
38
38
|
onDragStop(): Event.ListenerResult;
|
|
39
39
|
private dragCursor;
|
|
40
40
|
render(): import("../../core/DOM.js").Handle;
|
|
@@ -8,8 +8,13 @@ export { Legend } from '../../component/container/Legend.js';
|
|
|
8
8
|
export type { LegendOptions } from '../../component/container/Legend.js';
|
|
9
9
|
export { MenuItem } from '../../component/container/MenuItem.js';
|
|
10
10
|
export type { MenuItemConfig, MenuConfig, MenuItemCSSVarPrefix, MenuItemOptions } from '../../component/container/MenuItem.js';
|
|
11
|
+
export { MenuRow } from '../../component/container/MenuRow.js';
|
|
11
12
|
export { MenuSeparator } from '../../component/container/MenuSeparator.js';
|
|
12
13
|
export type { MenuSeparatorOptions } from '../../component/container/MenuSeparator.js';
|
|
14
|
+
export { CheckboxMenuRow } from '../../component/container/CheckboxMenuRow.js';
|
|
15
|
+
export type { CheckboxMenuRowOptions, CheckboxMenuRowEvent } from '../../component/container/CheckboxMenuRow.js';
|
|
16
|
+
export { RadioMenuRow } from '../../component/container/RadioMenuRow.js';
|
|
17
|
+
export type { RadioMenuRowOptions, RadioMenuRowEvent } from '../../component/container/RadioMenuRow.js';
|
|
13
18
|
export { Scrollbar } from '../../component/container/Scrollbar.js';
|
|
14
19
|
export type { ScrollbarListener, ScrollbarOptions, ScrollbarEvent } from '../../component/container/Scrollbar.js';
|
|
15
20
|
export { ScrollStrip } from '../../component/container/ScrollStrip.js';
|
|
@@ -31,7 +36,7 @@ export type { AccordionHeaderOptions } from '../../component/container/Accordion
|
|
|
31
36
|
export { AccordionIndicator } from '../../component/container/AccordionIndicator.js';
|
|
32
37
|
export type { AccordionIndicatorOptions } from '../../component/container/AccordionIndicator.js';
|
|
33
38
|
export { CollapseButton } from '../../component/container/CollapseButton.js';
|
|
34
|
-
export type { CollapseButtonOptions, CollapseButtonEvent, CollapseDirection } from '../../component/container/CollapseButton.js';
|
|
39
|
+
export type { CollapseButtonOptions, CollapseButtonEvent, CollapseDirection, CollapseTrigger } from '../../component/container/CollapseButton.js';
|
|
35
40
|
export { TabBar } from '../../component/container/TabBar.js';
|
|
36
41
|
export type { TabBarOptions, TabBarEvent, TabToolDescriptor } from '../../component/container/TabBar.js';
|
|
37
42
|
export { TabPanel } from '../../component/container/TabPanel.js';
|
|
@@ -16,6 +16,7 @@ declare class WebGLCanvas extends Component<WebGLCanvasOptions> {
|
|
|
16
16
|
private _elapsedMs;
|
|
17
17
|
private _animationRequested;
|
|
18
18
|
private _contextLost;
|
|
19
|
+
private readonly _onContextLost;
|
|
19
20
|
private _contextInitialised;
|
|
20
21
|
private _syncedWidth;
|
|
21
22
|
private _syncedHeight;
|
|
@@ -22,10 +22,12 @@ declare class PickerBlankCell extends Component {
|
|
|
22
22
|
}
|
|
23
23
|
declare class PickerNavButton extends Component {
|
|
24
24
|
constructor(glyphName: string, onClick: () => void);
|
|
25
|
+
private onPointerDown;
|
|
25
26
|
protected render(): Handle;
|
|
26
27
|
}
|
|
27
28
|
declare class PickerMonthLabel extends Text {
|
|
28
29
|
constructor(onClick: () => void);
|
|
30
|
+
private onPointerDown;
|
|
29
31
|
protected render(): Handle;
|
|
30
32
|
}
|
|
31
33
|
declare class PickerDay extends Text {
|
|
@@ -3,6 +3,7 @@ import { AnimatedDropdown } from "../../core/AnimatedDropdown.js";
|
|
|
3
3
|
import type { Handle } from "../../core/DOM.js";
|
|
4
4
|
import { PickerInput } from "../../component/input/PickerInput.js";
|
|
5
5
|
import { PickerButton } from "../../component/input/PickerButton.js";
|
|
6
|
+
import { Event } from "../../core/Event.js";
|
|
6
7
|
export interface AbstractPickerFieldOptions extends AbstractInputOptions {
|
|
7
8
|
dropdownAnimated?: boolean;
|
|
8
9
|
}
|
|
@@ -33,11 +34,11 @@ declare abstract class AbstractPickerField<TValue, TDropdown extends AnimatedDro
|
|
|
33
34
|
protected applyEnabled(value: boolean): void;
|
|
34
35
|
protected applyReadOnly(value: boolean): void;
|
|
35
36
|
protected onButtonClick(): void;
|
|
36
|
-
protected onButtonPointerDown(
|
|
37
|
+
protected onButtonPointerDown(_e: PointerEvent): Event.ListenerResult;
|
|
37
38
|
protected onInput(): void;
|
|
38
39
|
protected onBlur(): void;
|
|
39
40
|
protected setInvalid(invalid: boolean): void;
|
|
40
|
-
protected onKeyDown(e: KeyboardEvent):
|
|
41
|
+
protected onKeyDown(e: KeyboardEvent): Event.ListenerResult;
|
|
41
42
|
protected ensureDropdown(): TDropdown;
|
|
42
43
|
protected openDropdown(): void;
|
|
43
44
|
protected closeDropdown(): void;
|
|
@@ -128,7 +128,7 @@ declare abstract class AbstractSelectableList<TValue, TOptions extends AbstractS
|
|
|
128
128
|
getFocusedIndex(): number;
|
|
129
129
|
getFocusedRowId(): string | null;
|
|
130
130
|
handleKey(e: KeyboardEvent): boolean;
|
|
131
|
-
protected handleKeyDown(e: KeyboardEvent):
|
|
131
|
+
protected handleKeyDown(e: KeyboardEvent): Event.ListenerResult;
|
|
132
132
|
protected handleNavigationKey(e: KeyboardEvent, ctrl: boolean): boolean;
|
|
133
133
|
protected moveFocus(idx: number, ctrl: boolean, shift: boolean): void;
|
|
134
134
|
protected commitFocusedRow(ctrl: boolean, shift: boolean): void;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { AbstractSelectableList, AbstractSelectableListOptions } from "../../component/list/AbstractSelectableList.js";
|
|
2
2
|
import { ModelRecord } from "../../data/ModelRecord.js";
|
|
3
|
+
import { Event } from "../../core/Event.js";
|
|
3
4
|
export interface MultiSelectListOptions extends AbstractSelectableListOptions {
|
|
4
5
|
selectedIndices?: number[];
|
|
5
6
|
}
|
|
@@ -16,7 +17,7 @@ declare class MultiSelectList extends AbstractSelectableList<string[], MultiSele
|
|
|
16
17
|
shift: boolean;
|
|
17
18
|
}): void;
|
|
18
19
|
protected notifyUserChange(): void;
|
|
19
|
-
protected handleKeyDown(e: KeyboardEvent):
|
|
20
|
+
protected handleKeyDown(e: KeyboardEvent): Event.ListenerResult;
|
|
20
21
|
protected selectAll(): void;
|
|
21
22
|
private applyInitialSelection;
|
|
22
23
|
}
|
|
@@ -11,6 +11,7 @@ declare abstract class VirtualRowView<TRow extends Component, TOptions extends C
|
|
|
11
11
|
} | null>;
|
|
12
12
|
protected _rowDisplayed: boolean[];
|
|
13
13
|
protected _scroller: VirtualScroller | null;
|
|
14
|
+
private _lastWindowStart;
|
|
14
15
|
private _renderDeferred;
|
|
15
16
|
private _renderResumed;
|
|
16
17
|
private _pendingScrollX;
|
|
@@ -34,6 +35,7 @@ declare abstract class VirtualRowView<TRow extends Component, TOptions extends C
|
|
|
34
35
|
protected computePoolTarget(windowSize: number, visibleHeight: number, totalRows: number): number;
|
|
35
36
|
protected computePageSize(): number;
|
|
36
37
|
protected growRowPool(poolTarget: number): void;
|
|
38
|
+
protected alignPoolWindow(firstRow: number): void;
|
|
37
39
|
protected positionRow(slot: number, targetY: number, rowWidth: number): boolean;
|
|
38
40
|
protected hideExcessPoolRows(windowSize: number): void;
|
|
39
41
|
protected invalidateGeom(): void;
|
|
@@ -4,6 +4,7 @@ import { AbstractStore } from "../../data/AbstractStore.js";
|
|
|
4
4
|
import { ModelRecord } from "../../data/ModelRecord.js";
|
|
5
5
|
import { Row } from "../../component/table/Row.js";
|
|
6
6
|
import { CellEditorPool } from "../../component/table/cell/editor/CellEditorPool.js";
|
|
7
|
+
import { Event } from "../../core/Event.js";
|
|
7
8
|
import { VirtualRowView } from "../../component/shared/VirtualRowView.js";
|
|
8
9
|
import type { ColumnConfig } from "../../component/table/ColumnConfig.js";
|
|
9
10
|
import { Column } from "../../component/table/Column.js";
|
|
@@ -25,12 +26,22 @@ export interface ColumnWindow {
|
|
|
25
26
|
lefts: number[];
|
|
26
27
|
}
|
|
27
28
|
export declare function computeColumnWindow(widths: number[], scrollX: number, viewportWidth: number): ColumnWindow;
|
|
29
|
+
export declare function buildTsv(rows: string[][], startRow: number, startCol: number, startOffset: number | null, endRow: number, endCol: number, endOffset: number | null): string;
|
|
30
|
+
export declare function locateCellInGrid(grid: Array<Array<{
|
|
31
|
+
element: Handle;
|
|
32
|
+
}>>, target: Handle): {
|
|
33
|
+
row: number;
|
|
34
|
+
col: number;
|
|
35
|
+
} | null;
|
|
28
36
|
declare class Body extends VirtualRowView<Row> {
|
|
29
37
|
private _store;
|
|
30
38
|
private _hiddenColumns;
|
|
31
39
|
private _columns;
|
|
32
40
|
private _columnConfigs;
|
|
33
41
|
private _rowReadOnly;
|
|
42
|
+
private _rowVisible;
|
|
43
|
+
private _rowSeparator;
|
|
44
|
+
private _rowIndented;
|
|
34
45
|
private _cellGeom;
|
|
35
46
|
private _lastBodyWidth;
|
|
36
47
|
private _lastColumnWidths;
|
|
@@ -67,6 +78,12 @@ declare class Body extends VirtualRowView<Row> {
|
|
|
67
78
|
setHiddenColumns(hidden: Set<string>): this;
|
|
68
79
|
setColumns(columns: Column[]): this;
|
|
69
80
|
setRowReadOnly(predicate: ((record: ModelRecord) => boolean) | null): this;
|
|
81
|
+
setRowSeparator(predicate: ((record: ModelRecord) => {
|
|
82
|
+
label: string;
|
|
83
|
+
color: string | null;
|
|
84
|
+
} | null) | null): this;
|
|
85
|
+
setRowIndented(predicate: ((record: ModelRecord) => boolean) | null): this;
|
|
86
|
+
setRowVisible(predicate: ((record: ModelRecord) => boolean) | null): this;
|
|
70
87
|
setColumnConfigs(configs: Map<string, ColumnConfig>): this;
|
|
71
88
|
private registerComboEditors;
|
|
72
89
|
private syncPoolCells;
|
|
@@ -84,6 +101,9 @@ declare class Body extends VirtualRowView<Row> {
|
|
|
84
101
|
protected bindAndPositionRows(firstRow: number, windowSize: number, rowWidth: number, records: ModelRecord[], columns: ColumnWindow): void;
|
|
85
102
|
protected onSubtreeClick(e: MouseEvent): void;
|
|
86
103
|
private onRowClick;
|
|
104
|
+
private onCopy;
|
|
105
|
+
private buildSelectionText;
|
|
106
|
+
private renderedCellGrid;
|
|
87
107
|
selectRecord(record: ModelRecord | null): void;
|
|
88
108
|
getSelectedRecord(): ModelRecord | null;
|
|
89
109
|
getSelectedRecords(): ModelRecord[];
|
|
@@ -105,7 +125,8 @@ declare class Body extends VirtualRowView<Row> {
|
|
|
105
125
|
setHeader(header: TableHeader): this;
|
|
106
126
|
protected _updateFocusStyle(): void;
|
|
107
127
|
protected _updateActiveDescendant(): void;
|
|
108
|
-
|
|
128
|
+
private skipSeparators;
|
|
129
|
+
protected onKeyDown(e: KeyboardEvent): Event.ListenerResult;
|
|
109
130
|
protected scrollRecordIntoView(record: ModelRecord): void;
|
|
110
131
|
protected scrollColumnIntoView(colIndex: number): void;
|
|
111
132
|
}
|
|
@@ -14,7 +14,8 @@ export declare class Column {
|
|
|
14
14
|
private _group;
|
|
15
15
|
private _groupColor;
|
|
16
16
|
private _required;
|
|
17
|
-
|
|
17
|
+
private _filterable;
|
|
18
|
+
constructor(field: Field, config?: ColumnConfig, specFilterable?: boolean);
|
|
18
19
|
getField(): Field;
|
|
19
20
|
getMinWidth(): number | undefined;
|
|
20
21
|
getMaxWidth(): number | undefined;
|
|
@@ -30,5 +31,6 @@ export declare class Column {
|
|
|
30
31
|
getGroup(): string | null;
|
|
31
32
|
getGroupColor(): string | null;
|
|
32
33
|
isRequired(): boolean;
|
|
34
|
+
isFilterable(): boolean;
|
|
33
35
|
static resolve(fields: Field[], spec?: ColumnSpec): Column[];
|
|
34
36
|
}
|
|
@@ -16,6 +16,7 @@ export interface ColumnConfig {
|
|
|
16
16
|
hidden?: boolean;
|
|
17
17
|
unhideable?: boolean;
|
|
18
18
|
readOnly?: boolean;
|
|
19
|
+
filterable?: boolean;
|
|
19
20
|
cellReadOnly?: (record: ModelRecord) => boolean;
|
|
20
21
|
showSeconds?: boolean;
|
|
21
22
|
values?: Array<ComboOption | string>;
|
|
@@ -34,4 +35,5 @@ export interface ColumnSpec {
|
|
|
34
35
|
appendUnlisted?: boolean;
|
|
35
36
|
rowReadOnly?: (record: ModelRecord) => boolean;
|
|
36
37
|
autoSizeColumns?: boolean;
|
|
38
|
+
filterable?: boolean;
|
|
37
39
|
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { FieldType } from "../../data/Field.js";
|
|
2
|
+
import type { FilterDescriptor } from "../../data/FilterDescriptor.js";
|
|
3
|
+
import type { ComboOption } from "../../component/table/ColumnConfig.js";
|
|
4
|
+
import type { CellTextResolver } from "../../component/table/cell/CellText.js";
|
|
5
|
+
export type ColumnFilterOperator = 'contains' | 'startsWith' | 'endsWith' | 'eq' | 'neq' | 'gt' | 'gte' | 'lt' | 'lte' | 'isEmpty' | 'isNotEmpty';
|
|
6
|
+
export interface ColumnFilterClause {
|
|
7
|
+
operator: ColumnFilterOperator;
|
|
8
|
+
text: string;
|
|
9
|
+
}
|
|
10
|
+
export interface ColumnFilterState {
|
|
11
|
+
clauses: ColumnFilterClause[];
|
|
12
|
+
}
|
|
13
|
+
export interface ColumnFilterTarget {
|
|
14
|
+
type: FieldType;
|
|
15
|
+
values?: Array<ComboOption | string>;
|
|
16
|
+
showSeconds?: boolean;
|
|
17
|
+
}
|
|
18
|
+
export declare function columnFilterOperators(type: FieldType): ColumnFilterOperator[];
|
|
19
|
+
export declare function columnFilterOperatorLabel(operator: ColumnFilterOperator): string;
|
|
20
|
+
export declare function columnFilterOperatorGlyph(operator: ColumnFilterOperator): string;
|
|
21
|
+
export declare function columnFilterTakesOperand(operator: ColumnFilterOperator): boolean;
|
|
22
|
+
export declare function isClauseEffective(clause: ColumnFilterClause): boolean;
|
|
23
|
+
export declare function effectiveClauseCount(clauses: ColumnFilterClause[]): number;
|
|
24
|
+
export declare function columnFilterTakesNumericOperand(target: ColumnFilterTarget): boolean;
|
|
25
|
+
export declare function columnFilterAcceptsNumericKey(key: string): boolean;
|
|
26
|
+
export declare function buildColumnFilter(field: string, target: ColumnFilterTarget, state: ColumnFilterState, display: CellTextResolver): FilterDescriptor | null;
|
|
27
|
+
export declare function columnFilterStatesEqual(a: ColumnFilterState, b: ColumnFilterState): boolean;
|
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
import { Component } from "../../core/Component.js";
|
|
2
|
-
import type { Handle } from "../../core/DOM.js";
|
|
3
2
|
import { Row } from "../../component/table/Row.js";
|
|
4
3
|
import { AbstractModel } from "../../data/AbstractModel.js";
|
|
5
4
|
import { AbstractStore } from "../../data/AbstractStore.js";
|
|
6
5
|
import { Column } from "../../component/table/Column.js";
|
|
6
|
+
import type { ColumnConfig } from "../../component/table/ColumnConfig.js";
|
|
7
|
+
import { Button } from "../../component/button/Button.js";
|
|
7
8
|
export type TableHeaderEvent = "columnresizestart" | "columnresize" | "columncontextmenu";
|
|
8
9
|
export interface HeaderColumnGeometry {
|
|
9
10
|
columnWidths: number[];
|
|
10
11
|
viewportWidth: number;
|
|
11
12
|
columnHeight: number;
|
|
12
13
|
parentRowHeight: number;
|
|
14
|
+
filterRowHeight: number;
|
|
13
15
|
}
|
|
14
16
|
declare class TableHeader extends Component {
|
|
15
17
|
private _model;
|
|
@@ -17,7 +19,8 @@ declare class TableHeader extends Component {
|
|
|
17
19
|
private _hiddenColumns;
|
|
18
20
|
private _columns;
|
|
19
21
|
private _listeners;
|
|
20
|
-
private
|
|
22
|
+
private _menuButton;
|
|
23
|
+
private _boundOnMenuButtonAction;
|
|
21
24
|
private _visibleFields;
|
|
22
25
|
private _windowFirst;
|
|
23
26
|
private _scrollX;
|
|
@@ -25,12 +28,22 @@ declare class TableHeader extends Component {
|
|
|
25
28
|
private _columnsDirty;
|
|
26
29
|
private _geometry;
|
|
27
30
|
private _cellGeom;
|
|
31
|
+
private _filterRowVisible;
|
|
32
|
+
private _filterStates;
|
|
33
|
+
private _filterCellsDirty;
|
|
34
|
+
private _filterWindowFirst;
|
|
35
|
+
private _pendingFilterField;
|
|
36
|
+
private _filterTimer;
|
|
37
|
+
private _boundOnStoreFilterChange;
|
|
38
|
+
private _columnConfigs;
|
|
39
|
+
private _cellText;
|
|
28
40
|
constructor(model: AbstractModel, store: AbstractStore);
|
|
29
41
|
getModel(): AbstractModel;
|
|
30
42
|
setStore(store: AbstractStore): this;
|
|
31
43
|
setModel(model: AbstractModel): this;
|
|
32
44
|
setHiddenColumns(hidden: Set<string>): this;
|
|
33
45
|
setColumns(columns: Column[]): this;
|
|
46
|
+
setColumnConfigs(configs: Map<string, ColumnConfig>): this;
|
|
34
47
|
on(event: "columnresizestart", listener: (colIndex: number, clientX: number) => void): this;
|
|
35
48
|
on(event: "columnresize", listener: (colIndex: number, clientX: number) => void): this;
|
|
36
49
|
on(event: "columncontextmenu", listener: (fieldName: string, x: number, y: number) => void): this;
|
|
@@ -42,7 +55,12 @@ declare class TableHeader extends Component {
|
|
|
42
55
|
getColumnWindowStart(): number;
|
|
43
56
|
getParentRow(): Row;
|
|
44
57
|
hasParentRow(): boolean;
|
|
45
|
-
|
|
58
|
+
getFilterRow(): Row;
|
|
59
|
+
hasFilterRow(): boolean;
|
|
60
|
+
setFilterRowVisible(visible: boolean): this;
|
|
61
|
+
private clearFilterRowState;
|
|
62
|
+
getMenuButton(): Button;
|
|
63
|
+
private onMenuButtonAction;
|
|
46
64
|
addRow(row: Row): this;
|
|
47
65
|
addComponent(row: Row): this;
|
|
48
66
|
setHeight(height: number): this;
|
|
@@ -54,13 +72,22 @@ declare class TableHeader extends Component {
|
|
|
54
72
|
private columnIndexOf;
|
|
55
73
|
private handleSortClick;
|
|
56
74
|
private syncSortIndicators;
|
|
75
|
+
private filterState;
|
|
76
|
+
private onFilterCellChange;
|
|
77
|
+
private filterTarget;
|
|
78
|
+
private applyPendingFilter;
|
|
79
|
+
private onStoreFilterChange;
|
|
80
|
+
private wireFilterCell;
|
|
81
|
+
private reconcileFilterCells;
|
|
57
82
|
renderColumnWindow(geometry?: HeaderColumnGeometry): this;
|
|
83
|
+
private positionFilterCells;
|
|
58
84
|
private positionColumnCells;
|
|
59
85
|
private positionParentCells;
|
|
60
86
|
setScrollX(scrollLeft: number): this;
|
|
61
87
|
getScrollX(): number;
|
|
62
88
|
setFocusedColumn(colIndex: number | null): this;
|
|
63
89
|
private applyFocusedColumn;
|
|
90
|
+
protected destructor(): void;
|
|
64
91
|
}
|
|
65
92
|
declare const TableHeaderCallable: import("../../core/Callable.js").Callable<typeof TableHeader>;
|
|
66
93
|
type TableHeaderCallable = TableHeader;
|
|
@@ -17,10 +17,13 @@ declare class Row extends Component {
|
|
|
17
17
|
private _cellKeys;
|
|
18
18
|
private _fieldNames;
|
|
19
19
|
private _columnsDirty;
|
|
20
|
+
private _separatorMode;
|
|
20
21
|
constructor(model?: AbstractModel, data?: ModelRecord, hiddenColumns?: Set<string>, columnConfigs?: Map<string, ColumnConfig>, onCellCommit?: (record: ModelRecord) => void, treeFieldName?: string);
|
|
21
22
|
getTreeCell(): Cell<any> | null;
|
|
22
23
|
getColumnWindowStart(): number;
|
|
23
24
|
getFieldNames(): string[];
|
|
25
|
+
isSeparator(): boolean;
|
|
26
|
+
setFieldIndent(indented: boolean): void;
|
|
24
27
|
getData(): ModelRecord | undefined;
|
|
25
28
|
setData(record: ModelRecord): this;
|
|
26
29
|
setStripe(striped: boolean): void;
|
|
@@ -28,6 +31,7 @@ declare class Row extends Component {
|
|
|
28
31
|
addColumn(cell: Cell<any>, constraints?: LayoutConstraints): this;
|
|
29
32
|
addComponent(cell: Cell<any>, constraints?: LayoutConstraints): this;
|
|
30
33
|
setColumnFields(model: AbstractModel, hiddenColumns: Set<string>, columnConfigs: Map<string, ColumnConfig>, treeFieldName?: string): this;
|
|
34
|
+
renderSeparator(label: string, color: string | null): void;
|
|
31
35
|
setColumnWindow(firstCol: number, lastCol: number): boolean;
|
|
32
36
|
private commitCellValue;
|
|
33
37
|
private static cellKey;
|
|
@@ -19,6 +19,7 @@ declare class Table extends Component<TableOptions> {
|
|
|
19
19
|
private _resolvedColumns;
|
|
20
20
|
private _hiddenColumns;
|
|
21
21
|
private _columnContextMenu;
|
|
22
|
+
private _columnDialog;
|
|
22
23
|
private _headerVisible;
|
|
23
24
|
private _header;
|
|
24
25
|
private _body;
|
|
@@ -32,18 +33,25 @@ declare class Table extends Component<TableOptions> {
|
|
|
32
33
|
private _savedColumnWidths;
|
|
33
34
|
private _columnConfigs;
|
|
34
35
|
private _exportMenuEnabled;
|
|
36
|
+
private _filterRowVisible;
|
|
35
37
|
private _listeners;
|
|
36
38
|
private _displayMode;
|
|
37
39
|
private _rotatedRecord;
|
|
40
|
+
private _rowVisible;
|
|
41
|
+
private _quickSearch;
|
|
38
42
|
private _rotatedStore;
|
|
39
43
|
private _rotatedColumns;
|
|
40
44
|
private _rotatedConfigs;
|
|
41
45
|
private _rotatedFieldByName;
|
|
46
|
+
private _rotatedSeparatorRecords;
|
|
47
|
+
private _rotatedIndentedRecords;
|
|
42
48
|
private _sourceRefresh;
|
|
49
|
+
private _sourceUpdate;
|
|
43
50
|
private _suppressSelectionForward;
|
|
44
51
|
private _autoWidthsSampled;
|
|
45
52
|
private _widthRefs;
|
|
46
53
|
private _sampledCandidates;
|
|
54
|
+
private _cellText;
|
|
47
55
|
constructor(store: AbstractStore, spec?: ColumnSpec, bodyFactory?: (store: AbstractStore) => Body);
|
|
48
56
|
on(event: "selection", listener: (records: ModelRecord[]) => void): this;
|
|
49
57
|
on(event: "cellclick", listener: (e: CellClickEvent) => void): this;
|
|
@@ -54,9 +62,16 @@ declare class Table extends Component<TableOptions> {
|
|
|
54
62
|
private getSourceColumns;
|
|
55
63
|
getDisplayMode(): TableDisplayMode;
|
|
56
64
|
setDisplayMode(mode: TableDisplayMode): this;
|
|
65
|
+
setRowVisible(predicate: ((record: ModelRecord) => boolean) | null): this;
|
|
66
|
+
setQuickSearch(text: string | null, fields?: readonly string[] | null): this;
|
|
67
|
+
private resolveSearchFields;
|
|
68
|
+
private quickSearchMatches;
|
|
69
|
+
private composeRowVisible;
|
|
70
|
+
private applyRowVisible;
|
|
57
71
|
getStore(): AbstractStore;
|
|
58
72
|
getModel(): import("../../data").AbstractModel;
|
|
59
73
|
setStore(store: AbstractStore): this;
|
|
74
|
+
private refreshQuickSearch;
|
|
60
75
|
getColumnWidths(): number[];
|
|
61
76
|
setColumnWidths(widths: number[]): this;
|
|
62
77
|
getAvailableColumnWidth(): number;
|
|
@@ -64,6 +79,8 @@ declare class Table extends Component<TableOptions> {
|
|
|
64
79
|
setColumnVisible(fieldName: string, visible: boolean): this;
|
|
65
80
|
getHeader(): import("../../component/table/Header.js")._TableHeader;
|
|
66
81
|
isHeaderVisible(): boolean;
|
|
82
|
+
isFilterRowVisible(): boolean;
|
|
83
|
+
setFilterRowVisible(visible: boolean): this;
|
|
67
84
|
getBody(): import("../../component/table/Body.js")._Body;
|
|
68
85
|
isBodyVisible(): boolean;
|
|
69
86
|
getFooter(): import("../../component/table/Footer.js")._FooterRow;
|
|
@@ -83,17 +100,27 @@ declare class Table extends Component<TableOptions> {
|
|
|
83
100
|
private bindSourceStore;
|
|
84
101
|
private unbindSourceStore;
|
|
85
102
|
private onSourceStoreChange;
|
|
103
|
+
private onSourceRecordUpdate;
|
|
86
104
|
private ensureRotatedStore;
|
|
87
105
|
private rebuildRotatedStore;
|
|
106
|
+
private computeGroupRuns;
|
|
88
107
|
private rotatedCellType;
|
|
89
108
|
private rotatedCellValues;
|
|
90
109
|
private bindView;
|
|
91
110
|
protected destructor(): void;
|
|
92
111
|
private showColumnMenu;
|
|
112
|
+
private columnsInMenuOrder;
|
|
113
|
+
private buildColumnMenuItems;
|
|
114
|
+
private showColumnDialog;
|
|
115
|
+
private dialogColumnCount;
|
|
116
|
+
private splitIntoDialogColumns;
|
|
117
|
+
private buildColumnDialogBody;
|
|
118
|
+
private buildColumnDialogColumn;
|
|
93
119
|
setExportMenuEnabled(enabled: boolean): this;
|
|
94
120
|
exportCSV(options?: ExportOptions): void;
|
|
95
121
|
exportJSON(options?: ExportOptions): void;
|
|
96
122
|
private getExportColumns;
|
|
123
|
+
getCellText(field: string, record: ModelRecord): string;
|
|
97
124
|
private onColumnResizeStart;
|
|
98
125
|
private onColumnResize;
|
|
99
126
|
private resetColumns;
|
|
@@ -105,6 +132,8 @@ declare class Table extends Component<TableOptions> {
|
|
|
105
132
|
private measureHeaders;
|
|
106
133
|
private measureContent;
|
|
107
134
|
private resolveContentCandidates;
|
|
135
|
+
private resolveRotatedContentCandidates;
|
|
136
|
+
private formatRotatedValueText;
|
|
108
137
|
private collectCandidates;
|
|
109
138
|
private keepLongest;
|
|
110
139
|
private samplesRecordText;
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
import { Column } from "../../component/table/Column.js";
|
|
2
2
|
import { ColumnConfig } from "../../component/table/ColumnConfig.js";
|
|
3
3
|
import { ModelRecord } from "../../data/ModelRecord.js";
|
|
4
|
+
import type { CellTextResolver } from "../../component/table/cell/CellText.js";
|
|
4
5
|
export interface ExportOptions {
|
|
5
6
|
includeHidden?: boolean;
|
|
6
7
|
filename?: string;
|
|
7
8
|
}
|
|
8
9
|
export declare class TableExporter {
|
|
9
|
-
static exportCSV(columns: Column[], records: ModelRecord[], columnConfigs: Map<string, ColumnConfig>, options?: ExportOptions): void;
|
|
10
|
-
static exportJSON(columns: Column[], records: ModelRecord[], columnConfigs: Map<string, ColumnConfig>, options?: ExportOptions): void;
|
|
11
|
-
static formatValue(column: Column, value: any, columnConfigs: Map<string, ColumnConfig
|
|
10
|
+
static exportCSV(columns: Column[], records: ModelRecord[], columnConfigs: Map<string, ColumnConfig>, display: CellTextResolver, options?: ExportOptions): void;
|
|
11
|
+
static exportJSON(columns: Column[], records: ModelRecord[], columnConfigs: Map<string, ColumnConfig>, display: CellTextResolver, options?: ExportOptions): void;
|
|
12
|
+
static formatValue(column: Column, value: any, columnConfigs: Map<string, ColumnConfig>, display: CellTextResolver): any;
|
|
12
13
|
private static escapeCSVField;
|
|
13
14
|
private static download;
|
|
14
15
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { _Body } from "../../component/table/Body.js";
|
|
2
2
|
import { AbstractStore } from "../../data/AbstractStore.js";
|
|
3
3
|
import type { Handle } from "../../core/DOM.js";
|
|
4
|
+
import { Event } from "../../core/Event.js";
|
|
4
5
|
import { ModelRecord } from "../../data/ModelRecord.js";
|
|
5
6
|
import { Row } from "../../component/table/Row.js";
|
|
6
7
|
type TreeBodyReparentHandler = (dragged: ModelRecord, newParent: ModelRecord | null) => boolean;
|
|
@@ -61,7 +62,7 @@ declare class TreeBody extends _Body {
|
|
|
61
62
|
setReparentHandlers(validator: TreeBodyReparentValidator, handler: TreeBodyReparentHandler): this;
|
|
62
63
|
private ensureEmptyAreaDropTarget;
|
|
63
64
|
protected onSubtreeClick(e: MouseEvent): void;
|
|
64
|
-
protected onKeyDown(e: KeyboardEvent):
|
|
65
|
+
protected onKeyDown(e: KeyboardEvent): Event.ListenerResult;
|
|
65
66
|
private handleArrowRight;
|
|
66
67
|
private handleArrowLeft;
|
|
67
68
|
private moveFocusTo;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { CellRenderer } from "../../../component/table/cell/renderer/CellRenderer.js";
|
|
2
|
+
import type { CellType, ComboOption } from "../../../component/table/ColumnConfig.js";
|
|
3
|
+
export declare function buildCellRenderer(type: CellType, showSeconds: boolean, numberAlign?: "left" | "right"): CellRenderer<any>;
|
|
4
|
+
export declare class CellTextResolver {
|
|
5
|
+
private _renderers;
|
|
6
|
+
private _comboOptions;
|
|
7
|
+
text(type: CellType, showSeconds: boolean, values: Array<ComboOption | string> | undefined, value: any): string;
|
|
8
|
+
dispose(): void;
|
|
9
|
+
}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { Cell, CellEvent } from "../../../component/table/cell/Cell.js";
|
|
2
|
+
import type { ColumnFilterOperator, ColumnFilterState } from "../../../component/table/ColumnFilter.js";
|
|
3
|
+
import type { Handle } from "../../../core/DOM.js";
|
|
4
|
+
export type FilterCellEvent = CellEvent | "filterchange";
|
|
5
|
+
declare class FilterCell extends Cell<string | null> {
|
|
6
|
+
private _fieldName;
|
|
7
|
+
private _operators;
|
|
8
|
+
private _numericOnly;
|
|
9
|
+
private _clauses;
|
|
10
|
+
private _badge;
|
|
11
|
+
private _clausesPopover;
|
|
12
|
+
private _columnLabel;
|
|
13
|
+
constructor(fieldName: string, operators: ColumnFilterOperator[]);
|
|
14
|
+
private filterRenderer;
|
|
15
|
+
private applyOperatorFace;
|
|
16
|
+
private applyOperandAvailability;
|
|
17
|
+
setFieldName(name: string): this;
|
|
18
|
+
getFieldName(): string;
|
|
19
|
+
setOperators(operators: ColumnFilterOperator[]): this;
|
|
20
|
+
setNumericOnly(numeric: boolean): this;
|
|
21
|
+
setColumnLabel(label: string): this;
|
|
22
|
+
setFilterState(state: ColumnFilterState): this;
|
|
23
|
+
getFilterState(): ColumnFilterState;
|
|
24
|
+
private selectOperator;
|
|
25
|
+
private numericKeyDisposition;
|
|
26
|
+
private onInputKeyDown;
|
|
27
|
+
private onOperatorButtonClick;
|
|
28
|
+
private addConditionAndOpenPopover;
|
|
29
|
+
private ensureClausesPopover;
|
|
30
|
+
private pruneBlankClauses;
|
|
31
|
+
private openClausesPopover;
|
|
32
|
+
private refreshClausesPopoverBody;
|
|
33
|
+
private buildClausesBody;
|
|
34
|
+
private buildClauseRow;
|
|
35
|
+
private selectRowOperator;
|
|
36
|
+
private onRowTextChange;
|
|
37
|
+
private onAddConditionButtonClick;
|
|
38
|
+
private removeClause;
|
|
39
|
+
private syncBadge;
|
|
40
|
+
private describeClauses;
|
|
41
|
+
private fireFilterChange;
|
|
42
|
+
protected init(element?: Handle): this;
|
|
43
|
+
on(event: "commit", listener: (value: string | null) => void): this;
|
|
44
|
+
on(event: "editend", listener: () => void): this;
|
|
45
|
+
on(event: "filterchange", listener: (fieldName: string, state: ColumnFilterState, immediate: boolean) => void): this;
|
|
46
|
+
off(event: FilterCellEvent, listener: Function): this;
|
|
47
|
+
protected emit(event: "commit", value: string | null): void;
|
|
48
|
+
protected emit(event: "editend"): void;
|
|
49
|
+
protected emit(event: "filterchange", fieldName: string, state: ColumnFilterState, immediate: boolean): void;
|
|
50
|
+
protected destructor(): void;
|
|
51
|
+
}
|
|
52
|
+
declare const FilterCellCallable: import("../../../core/Callable.js").Callable<typeof FilterCell>;
|
|
53
|
+
type FilterCellCallable = FilterCell;
|
|
54
|
+
export { FilterCell as _FilterCell, FilterCellCallable as FilterCell };
|