verstak 0.96.26031 → 0.96.26040
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/build/dist/source/components/Button.v.d.ts +6 -2
- package/build/dist/source/components/Button.v.js +8 -7
- package/build/dist/source/components/Icon.v.d.ts +6 -2
- package/build/dist/source/components/Icon.v.js +5 -4
- package/build/dist/source/components/Image.v.d.ts +6 -2
- package/build/dist/source/components/Image.v.js +6 -5
- package/build/dist/source/components/Input.v.d.ts +6 -2
- package/build/dist/source/components/Input.v.js +12 -11
- package/build/dist/source/components/Markdown.v.d.ts +7 -1
- package/build/dist/source/components/Markdown.v.js +7 -5
- package/build/dist/source/components/Spinner.v.d.ts +6 -2
- package/build/dist/source/components/Spinner.v.js +7 -6
- package/build/dist/source/components/Toggle.v.d.ts +6 -2
- package/build/dist/source/components/Toggle.v.js +8 -7
- package/build/dist/source/core/El.d.ts +4 -3
- package/build/dist/source/core/ElDriver.d.ts +8 -21
- package/build/dist/source/core/ElDriver.js +4 -15
- package/build/dist/source/core/HtmlApiExt.d.ts +1 -1
- package/build/dist/source/core/HtmlApiExt.js +1 -1
- package/build/dist/source/core/SplitViewMath.js +3 -2
- package/build/dist/source/core/WebDriver.d.ts +11 -11
- package/build/dist/source/core/WebDriver.js +11 -11
- package/build/dist/source/core/api.d.ts +1 -1
- package/build/dist/source/core/api.js +1 -1
- package/build/dist/source/core/elements/ApplicationWindow.d.ts +13 -0
- package/build/dist/source/core/elements/ApplicationWindow.js +20 -0
- package/build/dist/source/core/elements/Cursor.d.ts +13 -0
- package/build/dist/source/core/elements/Cursor.js +19 -0
- package/build/dist/source/core/elements/Element.d.ts +15 -0
- package/build/dist/source/core/elements/Element.js +136 -0
- package/build/dist/source/core/elements/Fragment.d.ts +13 -0
- package/build/dist/source/core/elements/Fragment.js +16 -0
- package/build/dist/source/core/elements/Group.d.ts +13 -0
- package/build/dist/source/core/elements/Group.js +13 -0
- package/build/dist/source/core/elements/Partition.d.ts +17 -0
- package/build/dist/source/core/elements/Partition.js +64 -0
- package/build/dist/source/core/elements/Splitter.d.ts +15 -0
- package/build/dist/source/core/elements/Splitter.js +71 -0
- package/build/dist/source/core/elements/Table.d.ts +13 -0
- package/build/dist/source/core/elements/Table.js +13 -0
- package/build/dist/source/core/elements/api.d.ts +16 -0
- package/build/dist/source/core/elements/api.js +16 -0
- package/build/dist/source/core/elements/v5k.d.ts +1 -0
- package/build/dist/source/core/elements/v5k.js +274 -0
- package/build/dist/source/core/sensors/Handlers.js +6 -6
- package/build/dist/source/html/DraggableArea.view.d.ts +3 -3
- package/build/dist/source/html/DraggableArea.view.js +2 -2
- package/build/dist/source/html/HtmlElements.d.ts +571 -115
- package/build/dist/source/html/HtmlElements.js +343 -115
- package/build/dist/source/svg/SvgElements.d.ts +296 -60
- package/build/dist/source/svg/SvgElements.js +178 -60
- package/package.json +9 -9
- package/build/dist/source/core/Elements.d.ts +0 -44
- package/build/dist/source/core/Elements.js +0 -552
|
@@ -1,8 +1,12 @@
|
|
|
1
|
-
import { ReactiveTreeNode,
|
|
1
|
+
import { ReactiveTreeNode, ReactiveTreeNodeDesc, Script, Mode, ScriptAsync } from "reactronic";
|
|
2
2
|
import { El } from "verstak";
|
|
3
3
|
export type ButtonModel = {
|
|
4
4
|
icon?: string;
|
|
5
5
|
label?: string;
|
|
6
6
|
action?(): void;
|
|
7
7
|
};
|
|
8
|
-
export declare function Button(
|
|
8
|
+
export declare function Button<D = unknown>(setup: Script<El<HTMLElement, ButtonModel, D>>): ReactiveTreeNode<El<HTMLElement, ButtonModel, D>>;
|
|
9
|
+
export declare function Button<D = unknown>(key: string, setup: Script<El<HTMLElement, ButtonModel, D>>): ReactiveTreeNode<El<HTMLElement, ButtonModel, D>>;
|
|
10
|
+
export declare function Button<D = unknown>(mode: Mode, setup: Script<El<HTMLElement, ButtonModel, D>>): ReactiveTreeNode<El<HTMLElement, ButtonModel, D>>;
|
|
11
|
+
export declare function Button<D = unknown>(description: ReactiveTreeNodeDesc<El<HTMLElement, ButtonModel, D>>): ReactiveTreeNode<El<HTMLElement, ButtonModel, D>>;
|
|
12
|
+
export declare function Button<D = unknown>(key?: string, mode?: Mode, setup?: Script<El<HTMLElement, ButtonModel, D>>, setupTask?: ScriptAsync<El<HTMLElement, ButtonModel, D>>, creation?: Script<El<HTMLElement, ButtonModel, D>>, creationTask?: ScriptAsync<El<HTMLElement, ButtonModel, D>>, mounting?: Script<El<HTMLElement, ButtonModel, D>>, destruction?: Script<El<HTMLElement, ButtonModel, D>>, signalArgs?: unknown, unmounted?: boolean, basis?: ReactiveTreeNodeDesc<El<HTMLElement, ButtonModel, D>>): ReactiveTreeNode<El<HTMLElement, ButtonModel, D>>;
|
|
@@ -1,24 +1,25 @@
|
|
|
1
|
-
import { ReactiveTreeNode, setBasis } from "reactronic";
|
|
1
|
+
import { ReactiveTreeNode, args2desc, setBasis } from "reactronic";
|
|
2
2
|
import { Element, OnClick } from "verstak";
|
|
3
3
|
import { rxModel } from "./common/Utils.js";
|
|
4
4
|
import { Theme } from "./Theme.js";
|
|
5
5
|
import { Icon } from "./Icon.v.js";
|
|
6
|
-
export function Button(
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
export function Button(setupOrKeyOrModeDescription, setupOrMode, setup, setupTask, creation, creationTask, mounting, destruction, signalArgs, unmounted, basis) {
|
|
7
|
+
const description = args2desc(setupOrKeyOrModeDescription, setupOrMode, setup, setupTask, creation, creationTask, mounting, destruction, signalArgs, unmounted, basis);
|
|
8
|
+
return (Element(setBasis(description, {
|
|
9
|
+
creation() {
|
|
9
10
|
var _a;
|
|
10
11
|
(_a = this.model) !== null && _a !== void 0 ? _a : (this.model = rxModel({
|
|
11
12
|
icon: "fa-solid fa-square",
|
|
12
13
|
label: ReactiveTreeNode.current.key,
|
|
13
14
|
}));
|
|
14
15
|
},
|
|
15
|
-
|
|
16
|
+
setup() {
|
|
16
17
|
const m = this.model;
|
|
17
18
|
const theme = Theme.current.button;
|
|
18
19
|
this.useStylingPreset(theme.main);
|
|
19
20
|
if (m.icon) {
|
|
20
21
|
Icon(m.icon, {
|
|
21
|
-
|
|
22
|
+
setup(el, base) {
|
|
22
23
|
base();
|
|
23
24
|
this.useStylingPreset(theme.icon);
|
|
24
25
|
},
|
|
@@ -26,7 +27,7 @@ export function Button(declaration) {
|
|
|
26
27
|
}
|
|
27
28
|
if (m.label) {
|
|
28
29
|
Element({
|
|
29
|
-
|
|
30
|
+
setup(el, base) {
|
|
30
31
|
base();
|
|
31
32
|
this.textIsFormatted = false;
|
|
32
33
|
this.text = m.label;
|
|
@@ -1,3 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ReactiveTreeNode, ReactiveTreeNodeDesc, Script, Mode, ScriptAsync } from "reactronic";
|
|
2
2
|
import { El } from "verstak";
|
|
3
|
-
export declare function Icon(name: string,
|
|
3
|
+
export declare function Icon<D = unknown>(name: string, setup: Script<El<HTMLElement, void, D>>): ReactiveTreeNode<El<HTMLElement, void, D>>;
|
|
4
|
+
export declare function Icon<D = unknown>(name: string, key: string, setup: Script<El<HTMLElement, void, D>>): ReactiveTreeNode<El<HTMLElement, void, D>>;
|
|
5
|
+
export declare function Icon<D = unknown>(name: string, mode: Mode, setup: Script<El<HTMLElement, void, D>>): ReactiveTreeNode<El<HTMLElement, void, D>>;
|
|
6
|
+
export declare function Icon<D = unknown>(name: string, description: ReactiveTreeNodeDesc<El<HTMLElement, void, D>>): ReactiveTreeNode<El<HTMLElement, void, D>>;
|
|
7
|
+
export declare function Icon<D = unknown>(name: string, key?: string, mode?: Mode, setup?: Script<El<HTMLElement, void, D>>, setupTask?: ScriptAsync<El<HTMLElement, void, D>>, creation?: Script<El<HTMLElement, void, D>>, creationTask?: ScriptAsync<El<HTMLElement, void, D>>, mounting?: Script<El<HTMLElement, void, D>>, destruction?: Script<El<HTMLElement, void, D>>, signalArgs?: unknown, unmounted?: boolean, basis?: ReactiveTreeNodeDesc<El<HTMLElement, void, D>>): ReactiveTreeNode<El<HTMLElement, void, D>>;
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { setBasis } from "reactronic";
|
|
1
|
+
import { args2desc, setBasis } from "reactronic";
|
|
2
2
|
import { Element } from "verstak";
|
|
3
3
|
import { Theme } from "./Theme.js";
|
|
4
|
-
export function Icon(name,
|
|
5
|
-
|
|
4
|
+
export function Icon(name, setupOrKeyOrModeDescription, setupOrMode, setup, setupTask, creation, creationTask, mounting, destruction, signalArgs, unmounted, basis) {
|
|
5
|
+
const description = args2desc(setupOrKeyOrModeDescription, setupOrMode, setup, setupTask, creation, creationTask, mounting, destruction, signalArgs, unmounted, basis);
|
|
6
|
+
return (Element(setBasis(description, {
|
|
6
7
|
signalArgs: { name },
|
|
7
|
-
|
|
8
|
+
setup() {
|
|
8
9
|
const theme = Theme.current.icon;
|
|
9
10
|
this.useStylingPreset(name);
|
|
10
11
|
this.useStylingPreset(theme.main);
|
|
@@ -1,6 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ReactiveTreeNode, ReactiveTreeNodeDesc, Script, Mode, ScriptAsync } from "reactronic";
|
|
2
2
|
import { El } from "verstak";
|
|
3
3
|
export type ImageModel = {
|
|
4
4
|
source?: string;
|
|
5
5
|
};
|
|
6
|
-
export declare function Image(
|
|
6
|
+
export declare function Image<D = unknown>(setup: Script<El<HTMLElement, ImageModel, D>>): ReactiveTreeNode<El<HTMLElement, ImageModel, D>>;
|
|
7
|
+
export declare function Image<D = unknown>(key: string, setup: Script<El<HTMLElement, ImageModel, D>>): ReactiveTreeNode<El<HTMLElement, ImageModel, D>>;
|
|
8
|
+
export declare function Image<D = unknown>(mode: Mode, setup: Script<El<HTMLElement, ImageModel, D>>): ReactiveTreeNode<El<HTMLElement, ImageModel, D>>;
|
|
9
|
+
export declare function Image<D = unknown>(description: ReactiveTreeNodeDesc<El<HTMLElement, ImageModel, D>>): ReactiveTreeNode<El<HTMLElement, ImageModel, D>>;
|
|
10
|
+
export declare function Image<D = unknown>(key?: string, mode?: Mode, setup?: Script<El<HTMLElement, ImageModel, D>>, setupTask?: ScriptAsync<El<HTMLElement, ImageModel, D>>, creation?: Script<El<HTMLElement, ImageModel, D>>, creationTask?: ScriptAsync<El<HTMLElement, ImageModel, D>>, mounting?: Script<El<HTMLElement, ImageModel, D>>, destruction?: Script<El<HTMLElement, ImageModel, D>>, signalArgs?: unknown, unmounted?: boolean, basis?: ReactiveTreeNodeDesc<El<HTMLElement, ImageModel, D>>): ReactiveTreeNode<El<HTMLElement, ImageModel, D>>;
|
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import { setBasis } from "reactronic";
|
|
1
|
+
import { args2desc, setBasis } from "reactronic";
|
|
2
2
|
import { Element } from "verstak";
|
|
3
3
|
import { rxModel } from "./common/Utils.js";
|
|
4
|
-
export function Image(
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
export function Image(setupOrKeyOrModeDescription, setupOrMode, setup, setupTask, creation, creationTask, mounting, destruction, signalArgs, unmounted, basis) {
|
|
5
|
+
const description = args2desc(setupOrKeyOrModeDescription, setupOrMode, setup, setupTask, creation, creationTask, mounting, destruction, signalArgs, unmounted, basis);
|
|
6
|
+
return (Element(setBasis(description, {
|
|
7
|
+
creation() {
|
|
7
8
|
var _a;
|
|
8
9
|
(_a = this.model) !== null && _a !== void 0 ? _a : (this.model = rxModel({ source: undefined }));
|
|
9
10
|
},
|
|
10
|
-
|
|
11
|
+
setup() {
|
|
11
12
|
const m = this.model;
|
|
12
13
|
this.style.backgroundImage = `url(${m.source})`;
|
|
13
14
|
this.style.backgroundSize = "contain";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ReactiveTreeNode, ReactiveTreeNodeDesc, Script, Mode, ScriptAsync } from "reactronic";
|
|
2
2
|
import { FocusModel, El } from "verstak";
|
|
3
3
|
import { ValuesOrRefs } from "./common/Utils.js";
|
|
4
4
|
export type InputModel<T = string> = FocusModel & {
|
|
@@ -12,5 +12,9 @@ export type InputModel<T = string> = FocusModel & {
|
|
|
12
12
|
isHotText: boolean;
|
|
13
13
|
inputStyle: string;
|
|
14
14
|
};
|
|
15
|
-
export declare function Input(
|
|
15
|
+
export declare function Input<D = unknown>(setup: Script<El<HTMLElement, InputModel, D>>): ReactiveTreeNode<El<HTMLElement, InputModel, D>>;
|
|
16
|
+
export declare function Input<D = unknown>(key: string, setup: Script<El<HTMLElement, InputModel, D>>): ReactiveTreeNode<El<HTMLElement, InputModel, D>>;
|
|
17
|
+
export declare function Input<D = unknown>(mode: Mode, setup: Script<El<HTMLElement, InputModel, D>>): ReactiveTreeNode<El<HTMLElement, InputModel, D>>;
|
|
18
|
+
export declare function Input<D = unknown>(description: ReactiveTreeNodeDesc<El<HTMLElement, InputModel, D>>): ReactiveTreeNode<El<HTMLElement, InputModel, D>>;
|
|
19
|
+
export declare function Input<D = unknown>(key?: string, mode?: Mode, setup?: Script<El<HTMLElement, InputModel, D>>, setupTask?: ScriptAsync<El<HTMLElement, InputModel, D>>, creation?: Script<El<HTMLElement, InputModel, D>>, creationTask?: ScriptAsync<El<HTMLElement, InputModel, D>>, mounting?: Script<El<HTMLElement, InputModel, D>>, destruction?: Script<El<HTMLElement, InputModel, D>>, signalArgs?: unknown, unmounted?: boolean, basis?: ReactiveTreeNodeDesc<El<HTMLElement, InputModel, D>>): ReactiveTreeNode<El<HTMLElement, InputModel, D>>;
|
|
16
20
|
export declare function composeInputModel<T>(props?: Partial<ValuesOrRefs<InputModel<T>>>): InputModel<T>;
|
|
@@ -1,22 +1,23 @@
|
|
|
1
|
-
import { Mode, setBasis } from "reactronic";
|
|
1
|
+
import { Mode, args2desc, setBasis } from "reactronic";
|
|
2
2
|
import { Element, OnFocus, rowBreak, Fragment, KeyboardModifiers, H, V } from "verstak";
|
|
3
3
|
import { rxModel } from "./common/Utils.js";
|
|
4
4
|
import { Theme } from "./Theme.js";
|
|
5
5
|
import { Icon } from "./Icon.v.js";
|
|
6
|
-
export function Input(
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
export function Input(setupOrKeyOrModeDescription, setupOrMode, setup, setupTask, creation, creationTask, mounting, destruction, signalArgs, unmounted, basis) {
|
|
7
|
+
const description = args2desc(setupOrKeyOrModeDescription, setupOrMode, setup, setupTask, creation, creationTask, mounting, destruction, signalArgs, unmounted, basis);
|
|
8
|
+
return (Element(setBasis(description, {
|
|
9
|
+
creation() {
|
|
9
10
|
var _a;
|
|
10
11
|
(_a = this.model) !== null && _a !== void 0 ? _a : (this.model = composeInputModel());
|
|
11
12
|
this.native.dataForSensor.focus = this.model;
|
|
12
13
|
},
|
|
13
|
-
|
|
14
|
+
setup() {
|
|
14
15
|
const m = this.model;
|
|
15
16
|
const theme = Theme.current.input;
|
|
16
17
|
this.useStylingPreset(theme.main);
|
|
17
18
|
if (m.icon)
|
|
18
19
|
Icon(m.icon, {
|
|
19
|
-
|
|
20
|
+
setup(el, base) {
|
|
20
21
|
base();
|
|
21
22
|
this.useStylingPreset(theme.icon);
|
|
22
23
|
},
|
|
@@ -45,7 +46,7 @@ function InputField(model, styling) {
|
|
|
45
46
|
return (Element({
|
|
46
47
|
key: InputField.name,
|
|
47
48
|
mode: Mode.primitive,
|
|
48
|
-
|
|
49
|
+
creation(el, base) {
|
|
49
50
|
const e = this.native;
|
|
50
51
|
this.useStylingPreset(styling.field);
|
|
51
52
|
this.selfAlignmentHorizontal = H.stretch;
|
|
@@ -55,7 +56,7 @@ function InputField(model, styling) {
|
|
|
55
56
|
e.dataForSensor.focus = model;
|
|
56
57
|
base();
|
|
57
58
|
},
|
|
58
|
-
|
|
59
|
+
setup() {
|
|
59
60
|
const e = this.native;
|
|
60
61
|
if (!model.isEditMode)
|
|
61
62
|
this.text = model.text;
|
|
@@ -82,7 +83,7 @@ function InputPopup(model, styling) {
|
|
|
82
83
|
return (Element({
|
|
83
84
|
key: InputPopup.name,
|
|
84
85
|
mode: Mode.primitive,
|
|
85
|
-
|
|
86
|
+
setup() {
|
|
86
87
|
this.useStylingPreset(styling.popup);
|
|
87
88
|
Fragment(() => model.position = this.native.sensors.scroll.y);
|
|
88
89
|
const visible = this.overlayVisible = model.isEditMode;
|
|
@@ -94,7 +95,7 @@ function InputPopup(model, styling) {
|
|
|
94
95
|
Element({
|
|
95
96
|
key: x,
|
|
96
97
|
mode: Mode.primitive,
|
|
97
|
-
|
|
98
|
+
creation() {
|
|
98
99
|
this.text = x;
|
|
99
100
|
this.contentWrapping = false;
|
|
100
101
|
},
|
|
@@ -105,7 +106,7 @@ function InputPopup(model, styling) {
|
|
|
105
106
|
Element({
|
|
106
107
|
key: "(nothing)",
|
|
107
108
|
mode: Mode.primitive,
|
|
108
|
-
|
|
109
|
+
setup() {
|
|
109
110
|
this.text = "(nothing)";
|
|
110
111
|
},
|
|
111
112
|
});
|
|
@@ -1 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
import { ReactiveTreeNode, ReactiveTreeNodeDesc, Script, Mode, ScriptAsync } from "reactronic";
|
|
2
|
+
import { El } from "verstak";
|
|
3
|
+
export declare function Markdown<D = unknown>(content: string, setup: Script<El<HTMLElement, any, D>>): ReactiveTreeNode<El<HTMLElement, any, D>>;
|
|
4
|
+
export declare function Markdown<D = unknown>(content: string, key: string, setup: Script<El<HTMLElement, any, D>>): ReactiveTreeNode<El<HTMLElement, any, D>>;
|
|
5
|
+
export declare function Markdown<D = unknown>(content: string, mode: Mode, setup: Script<El<HTMLElement, any, D>>): ReactiveTreeNode<El<HTMLElement, any, D>>;
|
|
6
|
+
export declare function Markdown<D = unknown>(content: string, description: ReactiveTreeNodeDesc<El<HTMLElement, any, D>>): ReactiveTreeNode<El<HTMLElement, any, D>>;
|
|
7
|
+
export declare function Markdown<D = unknown>(content: string, key?: string, mode?: Mode, setup?: Script<El<HTMLElement, any, D>>, setupTask?: ScriptAsync<El<HTMLElement, any, D>>, creation?: Script<El<HTMLElement, any, D>>, creationTask?: ScriptAsync<El<HTMLElement, any, D>>, mounting?: Script<El<HTMLElement, any, D>>, destruction?: Script<El<HTMLElement, any, D>>, signalArgs?: unknown, unmounted?: boolean, basis?: ReactiveTreeNodeDesc<El<HTMLElement, any, D>>): ReactiveTreeNode<El<HTMLElement, any, D>>;
|
|
@@ -1,17 +1,19 @@
|
|
|
1
|
+
import { args2desc, setBasis } from "reactronic";
|
|
1
2
|
import Md from "markdown-it";
|
|
2
3
|
import * as prism from "prismjs";
|
|
3
4
|
import { Element } from "verstak";
|
|
4
|
-
export function Markdown(content) {
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
export function Markdown(content, setupOrKeyOrModeDescription, setupOrMode, setup, setupTask, creation, creationTask, mounting, destruction, signalArgs, unmounted, basis) {
|
|
6
|
+
const description = args2desc(setupOrKeyOrModeDescription, setupOrMode, setup, setupTask, creation, creationTask, mounting, destruction, signalArgs, unmounted, basis);
|
|
7
|
+
return (Element(setBasis(description, {
|
|
8
|
+
creation(el, base) {
|
|
7
9
|
this.contentWrapping = true;
|
|
8
10
|
base();
|
|
9
11
|
},
|
|
10
|
-
|
|
12
|
+
setup() {
|
|
11
13
|
this.textIsFormatted = true;
|
|
12
14
|
this.text = md.render(content);
|
|
13
15
|
},
|
|
14
|
-
}));
|
|
16
|
+
})));
|
|
15
17
|
}
|
|
16
18
|
const md = new Md({
|
|
17
19
|
html: true,
|
|
@@ -1,9 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ReactiveTreeNode, ReactiveTreeNodeDesc, Script, Mode, ScriptAsync } from "reactronic";
|
|
2
2
|
import { El } from "verstak";
|
|
3
3
|
import { ValuesOrRefs } from "./common/Utils.js";
|
|
4
4
|
export type SpinnerModel = {
|
|
5
5
|
active: boolean;
|
|
6
6
|
color: string;
|
|
7
7
|
};
|
|
8
|
-
export declare function Spinner(
|
|
8
|
+
export declare function Spinner<D = unknown>(setup: Script<El<HTMLElement, SpinnerModel, D>>): ReactiveTreeNode<El<HTMLElement, SpinnerModel, D>>;
|
|
9
|
+
export declare function Spinner<D = unknown>(key: string, setup: Script<El<HTMLElement, SpinnerModel, D>>): ReactiveTreeNode<El<HTMLElement, SpinnerModel, D>>;
|
|
10
|
+
export declare function Spinner<D = unknown>(mode: Mode, setup: Script<El<HTMLElement, SpinnerModel, D>>): ReactiveTreeNode<El<HTMLElement, SpinnerModel, D>>;
|
|
11
|
+
export declare function Spinner<D = unknown>(description: ReactiveTreeNodeDesc<El<HTMLElement, SpinnerModel, D>>): ReactiveTreeNode<El<HTMLElement, SpinnerModel, D>>;
|
|
12
|
+
export declare function Spinner<D = unknown>(key?: string, mode?: Mode, setup?: Script<El<HTMLElement, SpinnerModel, D>>, setupTask?: ScriptAsync<El<HTMLElement, SpinnerModel, D>>, creation?: Script<El<HTMLElement, SpinnerModel, D>>, creationTask?: ScriptAsync<El<HTMLElement, SpinnerModel, D>>, mounting?: Script<El<HTMLElement, SpinnerModel, D>>, destruction?: Script<El<HTMLElement, SpinnerModel, D>>, signalArgs?: unknown, unmounted?: boolean, basis?: ReactiveTreeNodeDesc<El<HTMLElement, SpinnerModel, D>>): ReactiveTreeNode<El<HTMLElement, SpinnerModel, D>>;
|
|
9
13
|
export declare function composeSpinnerModel<T>(props?: Partial<ValuesOrRefs<SpinnerModel>>): SpinnerModel;
|
|
@@ -1,18 +1,19 @@
|
|
|
1
|
-
import { Mode, setBasis } from "reactronic";
|
|
1
|
+
import { Mode, args2desc, setBasis } from "reactronic";
|
|
2
2
|
import { Element } from "verstak";
|
|
3
3
|
import { rxModel } from "./common/Utils.js";
|
|
4
|
-
export function Spinner(
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
export function Spinner(setupOrKeyOrModeDescription, setupOrMode, setup, setupTask, creation, creationTask, mounting, destruction, signalArgs, unmounted, basis) {
|
|
5
|
+
const description = args2desc(setupOrKeyOrModeDescription, setupOrMode, setup, setupTask, creation, creationTask, mounting, destruction, signalArgs, unmounted, basis);
|
|
6
|
+
return (Element(setBasis(description, {
|
|
7
|
+
creation() {
|
|
7
8
|
var _a;
|
|
8
9
|
(_a = this.model) !== null && _a !== void 0 ? _a : (this.model = composeSpinnerModel());
|
|
9
10
|
},
|
|
10
|
-
|
|
11
|
+
setup() {
|
|
11
12
|
const m = this.model;
|
|
12
13
|
if (m.active)
|
|
13
14
|
Element({
|
|
14
15
|
mode: Mode.primitive,
|
|
15
|
-
|
|
16
|
+
setup() {
|
|
16
17
|
this.text = "loading...";
|
|
17
18
|
},
|
|
18
19
|
});
|
|
@@ -1,8 +1,12 @@
|
|
|
1
|
-
import { ReactiveTreeNode,
|
|
1
|
+
import { ReactiveTreeNode, ReactiveTreeNodeDesc, Script, Mode, ScriptAsync } from "reactronic";
|
|
2
2
|
import { El } from "verstak";
|
|
3
3
|
export type ToggleModel = {
|
|
4
4
|
label?: string;
|
|
5
5
|
checked?: boolean;
|
|
6
6
|
color?: string;
|
|
7
7
|
};
|
|
8
|
-
export declare function Toggle(
|
|
8
|
+
export declare function Toggle<D = unknown>(setup: Script<El<HTMLElement, ToggleModel, D>>): ReactiveTreeNode<El<HTMLElement, ToggleModel, D>>;
|
|
9
|
+
export declare function Toggle<D = unknown>(key: string, setup: Script<El<HTMLElement, ToggleModel, D>>): ReactiveTreeNode<El<HTMLElement, ToggleModel, D>>;
|
|
10
|
+
export declare function Toggle<D = unknown>(mode: Mode, setup: Script<El<HTMLElement, ToggleModel, D>>): ReactiveTreeNode<El<HTMLElement, ToggleModel, D>>;
|
|
11
|
+
export declare function Toggle<D = unknown>(description: ReactiveTreeNodeDesc<El<HTMLElement, ToggleModel, D>>): ReactiveTreeNode<El<HTMLElement, ToggleModel, D>>;
|
|
12
|
+
export declare function Toggle<D = unknown>(key?: string, mode?: Mode, setup?: Script<El<HTMLElement, ToggleModel, D>>, setupTask?: ScriptAsync<El<HTMLElement, ToggleModel, D>>, creation?: Script<El<HTMLElement, ToggleModel, D>>, creationTask?: ScriptAsync<El<HTMLElement, ToggleModel, D>>, mounting?: Script<El<HTMLElement, ToggleModel, D>>, destruction?: Script<El<HTMLElement, ToggleModel, D>>, signalArgs?: unknown, unmounted?: boolean, basis?: ReactiveTreeNodeDesc<El<HTMLElement, ToggleModel, D>>): ReactiveTreeNode<El<HTMLElement, ToggleModel, D>>;
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import { ReactiveTreeNode, Mode, setBasis } from "reactronic";
|
|
1
|
+
import { ReactiveTreeNode, Mode, args2desc, setBasis } from "reactronic";
|
|
2
2
|
import { Element, OnClick } from "verstak";
|
|
3
3
|
import { rxModel } from "./common/Utils.js";
|
|
4
4
|
import { Theme } from "./Theme.js";
|
|
5
5
|
import { Icon } from "./Icon.v.js";
|
|
6
|
-
export function Toggle(
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
export function Toggle(setupOrKeyOrModeDescription, setupOrMode, setup, setupTask, creation, creationTask, mounting, destruction, signalArgs, unmounted, basis) {
|
|
7
|
+
const description = args2desc(setupOrKeyOrModeDescription, setupOrMode, setup, setupTask, creation, creationTask, mounting, destruction, signalArgs, unmounted, basis);
|
|
8
|
+
return (Element(setBasis(description, {
|
|
9
|
+
creation() {
|
|
9
10
|
var _a;
|
|
10
11
|
(_a = this.model) !== null && _a !== void 0 ? _a : (this.model = rxModel({
|
|
11
12
|
label: ReactiveTreeNode.current.key,
|
|
@@ -13,13 +14,13 @@ export function Toggle(declaration) {
|
|
|
13
14
|
color: "green"
|
|
14
15
|
}));
|
|
15
16
|
},
|
|
16
|
-
|
|
17
|
+
setup() {
|
|
17
18
|
const m = this.model;
|
|
18
19
|
const theme = Theme.current;
|
|
19
20
|
const toggleTheme = theme.toggle;
|
|
20
21
|
this.useStylingPreset(toggleTheme.main);
|
|
21
22
|
Icon(`fa-solid fa-toggle-${m.checked ? "on" : "off"}`, {
|
|
22
|
-
|
|
23
|
+
setup(el, base) {
|
|
23
24
|
var _a;
|
|
24
25
|
base();
|
|
25
26
|
this.useStylingPreset(toggleTheme.icon);
|
|
@@ -29,7 +30,7 @@ export function Toggle(declaration) {
|
|
|
29
30
|
if (m.label) {
|
|
30
31
|
Element({
|
|
31
32
|
mode: Mode.primitive,
|
|
32
|
-
|
|
33
|
+
setup(el, base) {
|
|
33
34
|
base();
|
|
34
35
|
this.text = m.label;
|
|
35
36
|
this.useStylingPreset(toggleTheme.label);
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { Handler, ReactiveTreeNode } from "reactronic";
|
|
2
|
-
export type El<T = any, M = any> = {
|
|
3
|
-
readonly node: ReactiveTreeNode<El<T, M>>;
|
|
2
|
+
export type El<T = any, M = any, D = any> = {
|
|
3
|
+
readonly node: ReactiveTreeNode<El<T, M, D>>;
|
|
4
4
|
readonly rank: number;
|
|
5
5
|
native: T;
|
|
6
6
|
model: M;
|
|
7
|
+
data: D;
|
|
7
8
|
kind: ElKind;
|
|
8
9
|
place: ElPlace;
|
|
9
10
|
width: Range;
|
|
@@ -33,7 +34,7 @@ export type El<T = any, M = any> = {
|
|
|
33
34
|
};
|
|
34
35
|
partitionSizeInSplitViewPx: number;
|
|
35
36
|
readonly style: CSSStyleDeclaration;
|
|
36
|
-
action: Handler<El<T, M>, void> | undefined;
|
|
37
|
+
action: Handler<El<T, M, D>, void> | undefined;
|
|
37
38
|
useStylingPreset(stylingPresetName: string, enabled?: boolean): void;
|
|
38
39
|
};
|
|
39
40
|
export declare enum ElKind {
|
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
import { ReactiveTreeNode, Handler, BaseDriver } from "reactronic";
|
|
2
2
|
import { El, ElKind, H, V, Range, ElPlace, Direction } from "./El.js";
|
|
3
|
-
export declare class ElDriver<T extends Element, M = unknown> extends BaseDriver<El<T, M>> {
|
|
4
|
-
create(node: ReactiveTreeNode<El<T, M>>): El<T, M>;
|
|
3
|
+
export declare class ElDriver<T extends Element, M = unknown, D = unknown> extends BaseDriver<El<T, M, D>> {
|
|
4
|
+
create(node: ReactiveTreeNode<El<T, M, D>>): El<T, M, D>;
|
|
5
5
|
}
|
|
6
|
-
export declare class ElImpl<T extends Element = any, M = any> implements El<T, M> {
|
|
7
|
-
readonly node: ReactiveTreeNode<El<T, M>>;
|
|
6
|
+
export declare class ElImpl<T extends Element = any, M = any, D = any> implements El<T, M, D> {
|
|
7
|
+
readonly node: ReactiveTreeNode<El<T, M, D>>;
|
|
8
8
|
maxColumnCount: number;
|
|
9
9
|
maxRowCount: number;
|
|
10
10
|
layoutInfo?: ElLayoutInfo;
|
|
11
11
|
native: T;
|
|
12
12
|
model: M;
|
|
13
|
+
data: D;
|
|
13
14
|
private _kind;
|
|
14
15
|
private _place;
|
|
15
16
|
private _coords;
|
|
@@ -31,7 +32,7 @@ export declare class ElImpl<T extends Element = any, M = any> implements El<T, M
|
|
|
31
32
|
private _sealed;
|
|
32
33
|
private _splitView;
|
|
33
34
|
private _hasStylingPresets;
|
|
34
|
-
constructor(node: ReactiveTreeNode<El<T, M>>);
|
|
35
|
+
constructor(node: ReactiveTreeNode<El<T, M, D>>);
|
|
35
36
|
prepareForUpdate(): void;
|
|
36
37
|
get rank(): number;
|
|
37
38
|
get isElement(): boolean;
|
|
@@ -93,8 +94,8 @@ export declare class ElImpl<T extends Element = any, M = any> implements El<T, M
|
|
|
93
94
|
set splitView(value: Direction | undefined);
|
|
94
95
|
get partitionSizeInSplitViewPx(): number;
|
|
95
96
|
get style(): CSSStyleDeclaration;
|
|
96
|
-
get action(): Handler<El<T, M>, void> | undefined;
|
|
97
|
-
set action(value: Handler<El<T, M>, void> | undefined);
|
|
97
|
+
get action(): Handler<El<T, M, D>, void> | undefined;
|
|
98
|
+
set action(value: Handler<El<T, M, D>, void> | undefined);
|
|
98
99
|
useStylingPreset(stylingPresetName: string, enabled?: boolean): void;
|
|
99
100
|
protected children(onlyAfter?: ElImpl): Generator<ElImpl>;
|
|
100
101
|
static childrenOf(node: ReactiveTreeNode<El>, onlyAfter?: El): Generator<ElImpl>;
|
|
@@ -144,21 +145,7 @@ declare enum ElLayoutInfoFlags {
|
|
|
144
145
|
childrenRelayoutIsNeeded = 8
|
|
145
146
|
}
|
|
146
147
|
export declare const InitialElLayoutInfo: ElLayoutInfo;
|
|
147
|
-
export declare class CursorCommand {
|
|
148
|
-
absolute?: string;
|
|
149
|
-
columnShift?: number;
|
|
150
|
-
rowShift?: number;
|
|
151
|
-
}
|
|
152
|
-
export declare class CursorCommandDriver extends ElDriver<Element, unknown> {
|
|
153
|
-
constructor();
|
|
154
|
-
}
|
|
155
148
|
export declare const Constants: {
|
|
156
|
-
element: string;
|
|
157
|
-
partition: string;
|
|
158
|
-
wrapper: string;
|
|
159
|
-
splitter: string;
|
|
160
|
-
group: string;
|
|
161
|
-
layouts: string[];
|
|
162
149
|
keyAttrName: string;
|
|
163
150
|
kindAttrName: string;
|
|
164
151
|
ownReactiveTreeNodeKey: symbol;
|
|
@@ -23,6 +23,7 @@ export class ElImpl {
|
|
|
23
23
|
this.layoutInfo = undefined;
|
|
24
24
|
this.native = undefined;
|
|
25
25
|
this.model = undefined;
|
|
26
|
+
this.data = undefined;
|
|
26
27
|
this._kind = ElKind.partition;
|
|
27
28
|
this._place = undefined;
|
|
28
29
|
this._coords = UndefinedElCoords;
|
|
@@ -72,7 +73,7 @@ export class ElImpl {
|
|
|
72
73
|
const prevEl = (_a = node.prev) === null || _a === void 0 ? void 0 : _a.element;
|
|
73
74
|
const prevElLayoutInfo = (_b = prevEl === null || prevEl === void 0 ? void 0 : prevEl.layoutInfo) !== null && _b !== void 0 ? _b : InitialElLayoutInfo;
|
|
74
75
|
const layoutInfo = this.layoutInfo = owner.children.isStrictOrder ? new ElLayoutInfo(prevElLayoutInfo) : undefined;
|
|
75
|
-
const isCursorElement =
|
|
76
|
+
const isCursorElement = this.kind === ElKind.cursor;
|
|
76
77
|
const coords = getElCoordsAndAdjustLayoutInfo(!isCursorElement, value, ownerEl.maxColumnCount, ownerEl.maxRowCount, prevElLayoutInfo, layoutInfo);
|
|
77
78
|
if (!equalElCoords(coords, this._coords)) {
|
|
78
79
|
if (this.native !== undefined)
|
|
@@ -352,6 +353,7 @@ export class ElImpl {
|
|
|
352
353
|
el.classList.add(StylingClassNameByAlignmentVerticalRowWise[value]);
|
|
353
354
|
}
|
|
354
355
|
static applySelfAlignmentHorizontal(element, existing, value) {
|
|
356
|
+
var _a;
|
|
355
357
|
const e = element.native;
|
|
356
358
|
if (existing !== undefined) {
|
|
357
359
|
e.classList.remove(StylingClassNameBySelfAlignmentHorizontal[existing]);
|
|
@@ -360,7 +362,7 @@ export class ElImpl {
|
|
|
360
362
|
}
|
|
361
363
|
if (value !== undefined) {
|
|
362
364
|
e.classList.add(StylingClassNameBySelfAlignmentHorizontal[value]);
|
|
363
|
-
const grow = element.selfStretchingStrengthHorizontal;
|
|
365
|
+
const grow = (_a = element.selfStretchingStrengthHorizontal) !== null && _a !== void 0 ? _a : 1;
|
|
364
366
|
if ((value === H.stretch || value === H.stretchAndFix) && grow !== undefined && grow !== 1)
|
|
365
367
|
element.style.flexGrow = `${grow}`;
|
|
366
368
|
else
|
|
@@ -669,20 +671,7 @@ function absolutizePosition(pos, cursor, max) {
|
|
|
669
671
|
pos = Math.min(pos, max);
|
|
670
672
|
return pos;
|
|
671
673
|
}
|
|
672
|
-
export class CursorCommand {
|
|
673
|
-
}
|
|
674
|
-
export class CursorCommandDriver extends ElDriver {
|
|
675
|
-
constructor() {
|
|
676
|
-
super("cursor", false, el => el.kind = ElKind.cursor);
|
|
677
|
-
}
|
|
678
|
-
}
|
|
679
674
|
export const Constants = {
|
|
680
|
-
element: "el",
|
|
681
|
-
partition: "part",
|
|
682
|
-
wrapper: "wrapper",
|
|
683
|
-
splitter: "splitter",
|
|
684
|
-
group: "group",
|
|
685
|
-
layouts: ["element", "table", "group", "", "", ""],
|
|
686
675
|
keyAttrName: "key",
|
|
687
676
|
kindAttrName: "kind",
|
|
688
677
|
ownReactiveTreeNodeKey: Symbol("own-reactive-tree-node"),
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { SymDataForSensor, SymHtmlSensors, SymResizeObserver } from "../core/sensors/DataForSensor.js";
|
|
2
|
-
import { HtmlSensors } from "../core/sensors/
|
|
2
|
+
import { HtmlSensors } from "../core/sensors/api.js";
|
|
3
3
|
const ElementType = Element !== null && Element !== void 0 ? Element : global.Element;
|
|
4
4
|
if (ElementType !== undefined) {
|
|
5
5
|
Object.defineProperty(ElementType.prototype, "sensors", {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Direction } from "./El.js";
|
|
2
2
|
import { clamp } from "./ElUtils.js";
|
|
3
|
-
import {
|
|
3
|
+
import { isSplitViewPartition } from "./elements/Splitter.js";
|
|
4
|
+
import { SplitterDriver } from "./elements/Splitter.js";
|
|
4
5
|
const DEBUG = false;
|
|
5
6
|
const eps = 0.0001;
|
|
6
7
|
export function equal(a, b) {
|
|
@@ -133,7 +134,7 @@ export function layout(splitViewNode) {
|
|
|
133
134
|
}
|
|
134
135
|
}
|
|
135
136
|
}
|
|
136
|
-
else if (child.driver
|
|
137
|
+
else if (child.driver instanceof SplitterDriver) {
|
|
137
138
|
const el = child.element;
|
|
138
139
|
if (el.native !== undefined) {
|
|
139
140
|
el.style.display = isSplitterEnabled ? "block" : "none";
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { ReactiveTreeNode, Handler } from "reactronic";
|
|
2
2
|
import { El } from "./El.js";
|
|
3
3
|
import { ElDriver } from "./ElDriver.js";
|
|
4
|
-
export declare class WebDriver<T extends Element, M = unknown> extends ElDriver<T, M> {
|
|
5
|
-
assignNativeElement(node: ReactiveTreeNode<El<T, M>>): void;
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
runMount(node: ReactiveTreeNode<El<T, M>>): void;
|
|
9
|
-
|
|
4
|
+
export declare class WebDriver<T extends Element, M = unknown, D = unknown> extends ElDriver<T, M, D> {
|
|
5
|
+
assignNativeElement(node: ReactiveTreeNode<El<T, M, D>>): void;
|
|
6
|
+
runCreation(node: ReactiveTreeNode<El<T, M, D>>): void | Promise<void>;
|
|
7
|
+
runDestruction(node: ReactiveTreeNode<El<T, M, D>>, isLeader: boolean): boolean;
|
|
8
|
+
runMount(node: ReactiveTreeNode<El<T, M, D>>): void;
|
|
9
|
+
runSetup(node: ReactiveTreeNode<El<T, M, D>>): void | Promise<void>;
|
|
10
10
|
private assignExtraAttributesAndProperties;
|
|
11
11
|
private clearExtraAttributesAndProperties;
|
|
12
12
|
static getOwnNodeOfNativeElement<T extends Element>(element: T): ReactiveTreeNode<El<T>> | undefined;
|
|
@@ -17,12 +17,12 @@ export declare class WebDriver<T extends Element, M = unknown> extends ElDriver<
|
|
|
17
17
|
}
|
|
18
18
|
export declare class StaticDriver<T extends HTMLElement> extends WebDriver<T> {
|
|
19
19
|
readonly native: T;
|
|
20
|
-
constructor(native: T,
|
|
20
|
+
constructor(native: T, id: string, isPartition: boolean, initialize?: Handler<El<T>>);
|
|
21
21
|
assignNativeElement(node: ReactiveTreeNode<El<T>>): void;
|
|
22
22
|
}
|
|
23
|
-
export declare class HtmlDriver<T extends HTMLElement, M = any> extends WebDriver<T, M> {
|
|
24
|
-
assignNativeElement(node: ReactiveTreeNode<El<T, M>>): void;
|
|
23
|
+
export declare class HtmlDriver<T extends HTMLElement, M = any, D = any> extends WebDriver<T, M, D> {
|
|
24
|
+
assignNativeElement(node: ReactiveTreeNode<El<T, M, D>>): void;
|
|
25
25
|
}
|
|
26
|
-
export declare class SvgDriver<T extends SVGElement, M = any> extends WebDriver<T, M> {
|
|
27
|
-
assignNativeElement(node: ReactiveTreeNode<El<T, M>>): void;
|
|
26
|
+
export declare class SvgDriver<T extends SVGElement, M = any, D = any> extends WebDriver<T, M, D> {
|
|
27
|
+
assignNativeElement(node: ReactiveTreeNode<El<T, M, D>>): void;
|
|
28
28
|
}
|