@oscarpalmer/oui 0.39.0 → 0.41.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/README.md +1 -1
- package/dist/css/color-picker.css +80 -69
- package/dist/css/listbox.css +169 -0
- package/dist/js/color-picker/color-picker.constants.d.mts +2 -0
- package/dist/js/color-picker/{constants.color-picker.mjs → color-picker.constants.mjs} +7 -4
- package/dist/js/color-picker/{dom.color-picker.d.mts → color-picker.dom.d.mts} +2 -2
- package/dist/js/color-picker/{dom.color-picker.mjs → color-picker.dom.mjs} +33 -16
- package/dist/js/color-picker/{event.color-picker.d.mts → color-picker.event.d.mts} +3 -3
- package/dist/js/color-picker/color-picker.event.mjs +233 -0
- package/dist/js/color-picker/{form.color-picker.d.mts → color-picker.form.d.mts} +2 -2
- package/dist/js/color-picker/{form.color-picker.mjs → color-picker.form.mjs} +9 -8
- package/dist/js/color-picker/color-picker.misc.d.mts +2 -0
- package/dist/js/color-picker/color-picker.misc.mjs +104 -0
- package/dist/js/color-picker/color-picker.model.d.mts +2 -0
- package/dist/js/color-picker/{models.color-picker.mjs → color-picker.model.mjs} +1 -1
- package/dist/js/color-picker/{output.color-picker.d.mts → color-picker.output.d.mts} +2 -2
- package/dist/js/color-picker/{output.color-picker.mjs → color-picker.output.mjs} +19 -18
- package/dist/js/color-picker/color-picker.state.d.mts +8 -0
- package/dist/js/color-picker/color-picker.state.mjs +168 -0
- package/dist/js/color-picker/index.d.mts +172 -2
- package/dist/js/color-picker/index.mjs +66 -59
- package/dist/js/color-picker.constants-BZgXQr5o.d.mts +177 -0
- package/dist/js/color-picker.misc-BIS3R6jk.d.mts +31 -0
- package/dist/js/combobox/combobox.constants.d.mts +2 -0
- package/dist/js/combobox/{constants.combobox.mjs → combobox.constants.mjs} +21 -21
- package/dist/js/combobox/combobox.dom.d.mts +25 -0
- package/dist/js/combobox/{dom.combobox.mjs → combobox.dom.mjs} +51 -49
- package/dist/js/combobox/{event.combobox.d.mts → combobox.event.d.mts} +9 -9
- package/dist/js/combobox/{event.combobox.mjs → combobox.event.mjs} +1 -1
- package/dist/js/combobox/combobox.misc.d.mts +2 -0
- package/dist/js/combobox/combobox.misc.mjs +2 -0
- package/dist/js/combobox/combobox.model.d.mts +2 -0
- package/dist/js/combobox/combobox.state.d.mts +9 -0
- package/dist/js/combobox/combobox.state.mjs +2 -0
- package/dist/js/combobox/index.d.mts +152 -2
- package/dist/js/combobox/index.mjs +54 -55
- package/dist/js/combobox.constants-Hb3bqqQJ.d.mts +19 -0
- package/dist/js/combobox.misc-DRDFk6X8.d.mts +26 -0
- package/dist/js/combobox.model-gjEI2VqZ.d.mts +46 -0
- package/dist/js/{state.combobox-BWDFHwoi.mjs → combobox.state-AstCICiH.mjs} +109 -106
- package/dist/js/dialog/dialog.model.d.mts +2 -0
- package/dist/js/dialog/dialog.model.mjs +11 -0
- package/dist/js/dialog/index.d.mts +12 -0
- package/dist/js/dialog/index.mjs +123 -0
- package/dist/js/dialog.model-HVzYWoDo.d.mts +45 -0
- package/dist/js/floatable/floatable.embedded.d.mts +2 -2
- package/dist/js/floatable/floatable.embedded.mjs +64 -92
- package/dist/js/floatable/floatable.model.d.mts +2 -0
- package/dist/js/floatable/floatable.model.mjs +23 -0
- package/dist/js/floatable/floatable.standalone.d.mts +2 -1
- package/dist/js/floatable.embedded-ncshL3Sa.d.mts +17 -0
- package/dist/js/{floatable.embedded-DQYkXt8X.d.mts → floatable.model-DXsQgoU7.d.mts} +13 -20
- package/dist/js/focus-trap/focus-trap.embedded.d.mts +2 -2
- package/dist/js/focus-trap/focus-trap.embedded.mjs +117 -138
- package/dist/js/focus-trap/focus-trap.model.d.mts +2 -0
- package/dist/js/focus-trap/focus-trap.model.mjs +15 -0
- package/dist/js/focus-trap/focus-trap.standalone.d.mts +2 -1
- package/dist/js/focus-trap.embedded-DpcPkP7c.d.mts +13 -0
- package/dist/js/{focus-trap.embedded-CjyFQYow.d.mts → focus-trap.model-CpltX5B5.d.mts} +16 -18
- package/dist/js/index.d.mts +26 -14
- package/dist/js/index.mjs +18 -17
- package/dist/js/internal/attributable.d.mts +1 -1
- package/dist/js/internal/attributable.mjs +3 -2
- package/dist/js/internal/draggable/draggable.model.d.mts +2 -0
- package/dist/js/internal/draggable/draggable.model.mjs +37 -0
- package/dist/js/internal/draggable/index.d.mts +13 -0
- package/dist/js/internal/draggable/index.mjs +243 -0
- package/dist/js/internal/l10n/index.d.mts +5 -0
- package/dist/js/internal/l10n/index.mjs +147 -0
- package/dist/js/internal/l10n/l10n.model.d.mts +2 -0
- package/dist/js/internal/l10n/l10n.model.mjs +12 -0
- package/dist/js/internal/misc.d.mts +3 -2
- package/dist/js/internal/misc.mjs +4 -6
- package/dist/js/internal/navigable/index.d.mts +6 -0
- package/dist/js/internal/navigable/index.mjs +125 -0
- package/dist/js/internal/navigable/navigable.model.d.mts +2 -0
- package/dist/js/internal/navigable/navigable.model.mjs +18 -0
- package/dist/js/internal/option-list/option-list.constants.d.mts +8 -0
- package/dist/js/internal/option-list/option-list.constants.mjs +22 -0
- package/dist/js/internal/option-list/option-list.data.d.mts +21 -0
- package/dist/js/internal/option-list/option-list.data.mjs +2 -0
- package/dist/js/internal/option-list/option-list.dom.d.mts +18 -0
- package/dist/js/internal/option-list/option-list.dom.mjs +2 -0
- package/dist/js/internal/option-list/option-list.event.d.mts +6 -0
- package/dist/js/internal/option-list/option-list.event.mjs +66 -0
- package/dist/js/internal/option-list/option-list.form.d.mts +7 -0
- package/dist/js/internal/option-list/option-list.form.mjs +53 -0
- package/dist/js/internal/option-list/option-list.misc.d.mts +13 -0
- package/dist/js/internal/option-list/option-list.misc.mjs +2 -0
- package/dist/js/internal/option-list/option-list.model.d.mts +2 -0
- package/dist/js/internal/option-list/option-list.state.d.mts +8 -0
- package/dist/js/internal/option-list/option-list.state.mjs +39 -0
- package/dist/js/l10n/index.d.mts +3 -0
- package/dist/js/l10n/index.mjs +2 -0
- package/dist/js/l10n.model-D1E1u35L.d.mts +54 -0
- package/dist/js/listbox/index.d.mts +9 -18
- package/dist/js/listbox/index.mjs +49 -52
- package/dist/js/listbox/listbox.constants.d.mts +2 -0
- package/dist/js/listbox/{constants.listbox.mjs → listbox.constants.mjs} +11 -15
- package/dist/js/listbox/listbox.dom.d.mts +5 -0
- package/dist/js/listbox/listbox.dom.mjs +2 -0
- package/dist/js/listbox/listbox.event.d.mts +9 -0
- package/dist/js/listbox/listbox.event.mjs +2 -0
- package/dist/js/listbox/listbox.misc.d.mts +2 -0
- package/dist/js/listbox/listbox.misc.mjs +2 -0
- package/dist/js/listbox/listbox.model.d.mts +2 -0
- package/dist/js/listbox/listbox.model.mjs +1 -0
- package/dist/js/listbox/listbox.state.d.mts +9 -0
- package/dist/js/listbox/listbox.state.mjs +2 -0
- package/dist/js/listbox.constants-DOBMwKup.d.mts +9 -0
- package/dist/js/listbox.misc-DwfB4Mu_.d.mts +24 -0
- package/dist/js/listbox.model-C0MYWXZe.d.mts +20 -0
- package/dist/js/listbox.state-BrN296BM.mjs +240 -0
- package/dist/js/menu/index.mjs +171 -0
- package/dist/js/menu/menu.model.d.mts +33 -0
- package/dist/js/menu/menu.model.mjs +15 -0
- package/dist/js/movable/movable.embedded.d.mts +2 -2
- package/dist/js/movable/movable.embedded.mjs +77 -86
- package/dist/js/movable/movable.model.d.mts +2 -0
- package/dist/js/movable/movable.model.mjs +12 -0
- package/dist/js/movable/movable.standalone.d.mts +2 -1
- package/dist/js/movable.embedded-C1bDTLGs.d.mts +11 -0
- package/dist/js/movable.model-D9nnPWKk.d.mts +186 -0
- package/dist/js/navigable.model-BqoR6iBv.d.mts +44 -0
- package/dist/js/option-list.data-CgMyUwPc.mjs +441 -0
- package/dist/js/option-list.model-CCPUlPeX.d.mts +169 -0
- package/dist/js/popover/index.d.mts +12 -0
- package/dist/js/{popover.mjs → popover/index.mjs} +41 -51
- package/dist/js/popover/popover.model.d.mts +2 -0
- package/dist/js/popover/popover.model.mjs +12 -0
- package/dist/js/popover.model-DiLdz0Hc.d.mts +38 -0
- package/dist/js/resizable/resizable.embedded.d.mts +2 -2
- package/dist/js/resizable/resizable.embedded.mjs +43 -58
- package/dist/js/resizable/resizable.model.d.mts +2 -0
- package/dist/js/resizable/resizable.model.mjs +21 -0
- package/dist/js/resizable/resizable.standalone.d.mts +2 -1
- package/dist/js/resizable.embedded-BemH-7Re.d.mts +11 -0
- package/dist/js/resizable.model-YEtcC9li.d.mts +46 -0
- package/dist/js/sortable/sortable.embedded.d.mts +2 -2
- package/dist/js/sortable/sortable.embedded.mjs +111 -116
- package/dist/js/sortable/sortable.model.d.mts +2 -0
- package/dist/js/sortable/sortable.model.mjs +24 -0
- package/dist/js/sortable/sortable.standalone.d.mts +2 -1
- package/dist/js/sortable.embedded-CrEGff9k.d.mts +11 -0
- package/dist/js/{splitter.d.mts → splitter/index.d.mts} +6 -4
- package/dist/js/{splitter.mjs → splitter/index.mjs} +90 -128
- package/dist/js/splitter/splitter.model.d.mts +2 -0
- package/dist/js/splitter/splitter.model.mjs +37 -0
- package/dist/js/splitter.model-C24W6eZ7.d.mts +57 -0
- package/dist/js/{tabs.d.mts → tabs/index.d.mts} +8 -8
- package/dist/js/{tabs.mjs → tabs/index.mjs} +58 -58
- package/dist/js/tabs/tabs.model.d.mts +2 -0
- package/dist/js/tabs/tabs.model.mjs +18 -0
- package/dist/js/tabs.model-BHPy7fPo.d.mts +40 -0
- package/dist/js/toolbar/index.mjs +27 -0
- package/dist/js/toolbar/toolbar.model.d.mts +11 -0
- package/dist/js/toolbar/toolbar.model.mjs +7 -0
- package/dist/js/tooltip/index.d.mts +19 -0
- package/dist/js/{tooltip.mjs → tooltip/index.mjs} +61 -86
- package/dist/js/tooltip/tooltip.model.d.mts +2 -0
- package/dist/js/tooltip/tooltip.model.mjs +15 -0
- package/dist/js/tooltip.model-BpNStw5z.d.mts +37 -0
- package/package.json +30 -24
- package/dist/js/color-picker/constants.color-picker.d.mts +0 -2
- package/dist/js/color-picker/event.color-picker.mjs +0 -2
- package/dist/js/color-picker/misc.color-picker.d.mts +0 -2
- package/dist/js/color-picker/misc.color-picker.mjs +0 -2
- package/dist/js/color-picker/models.color-picker.d.mts +0 -2
- package/dist/js/color-picker/state.color-picker.d.mts +0 -8
- package/dist/js/color-picker/state.color-picker.mjs +0 -2
- package/dist/js/combobox/constants.combobox.d.mts +0 -2
- package/dist/js/combobox/dom.combobox.d.mts +0 -26
- package/dist/js/combobox/misc.combobox.d.mts +0 -2
- package/dist/js/combobox/misc.combobox.mjs +0 -2
- package/dist/js/combobox/models.combobox.d.mts +0 -43
- package/dist/js/combobox/state.combobox.d.mts +0 -11
- package/dist/js/combobox/state.combobox.mjs +0 -2
- package/dist/js/constants.color-picker-B-gFjL8m.d.mts +0 -364
- package/dist/js/constants.combobox-8EMRmv09.d.mts +0 -18
- package/dist/js/constants.listbox-DGnX32kv.d.mts +0 -8
- package/dist/js/dialog.d.mts +0 -47
- package/dist/js/dialog.mjs +0 -131
- package/dist/js/draggable-B5-70SZm.d.mts +0 -155
- package/dist/js/event.color-picker-BEpq0Adu.mjs +0 -485
- package/dist/js/index-C5D3-oiI.d.mts +0 -177
- package/dist/js/internal/draggable.d.mts +0 -2
- package/dist/js/internal/draggable.mjs +0 -265
- package/dist/js/internal/listbox/listbox.constants.d.mts +0 -8
- package/dist/js/internal/listbox/listbox.constants.mjs +0 -22
- package/dist/js/internal/listbox/listbox.data.d.mts +0 -19
- package/dist/js/internal/listbox/listbox.data.mjs +0 -2
- package/dist/js/internal/listbox/listbox.dom.d.mts +0 -65
- package/dist/js/internal/listbox/listbox.dom.mjs +0 -2
- package/dist/js/internal/listbox/listbox.event.d.mts +0 -4
- package/dist/js/internal/listbox/listbox.event.mjs +0 -63
- package/dist/js/internal/listbox/listbox.form.d.mts +0 -5
- package/dist/js/internal/listbox/listbox.form.mjs +0 -53
- package/dist/js/internal/listbox/listbox.misc.d.mts +0 -11
- package/dist/js/internal/listbox/listbox.misc.mjs +0 -2
- package/dist/js/internal/listbox/listbox.model.d.mts +0 -2
- package/dist/js/internal/listbox/listbox.state.d.mts +0 -6
- package/dist/js/internal/listbox/listbox.state.mjs +0 -40
- package/dist/js/internal/navigable.d.mts +0 -36
- package/dist/js/internal/navigable.mjs +0 -135
- package/dist/js/l10n-Bn-7RcwR.d.mts +0 -20
- package/dist/js/l10n.d.mts +0 -2
- package/dist/js/l10n.mjs +0 -80
- package/dist/js/listbox/constants.listbox.d.mts +0 -2
- package/dist/js/listbox/event.listbox.d.mts +0 -7
- package/dist/js/listbox/event.listbox.mjs +0 -2
- package/dist/js/listbox/misc.listbox.d.mts +0 -2
- package/dist/js/listbox/misc.listbox.mjs +0 -2
- package/dist/js/listbox/state.listbox.d.mts +0 -10
- package/dist/js/listbox/state.listbox.mjs +0 -2
- package/dist/js/listbox.data-DQ7-x2uY.mjs +0 -425
- package/dist/js/listbox.model-BHPA7GM4.d.mts +0 -125
- package/dist/js/menu.mjs +0 -172
- package/dist/js/misc.listbox-DKB-j0UK.mjs +0 -196
- package/dist/js/misc.listbox-mZMuYOxg.d.mts +0 -20
- package/dist/js/popover.d.mts +0 -38
- package/dist/js/resizable.embedded-dvhdfQgt.d.mts +0 -34
- package/dist/js/toolbar.mjs +0 -31
- package/dist/js/tooltip.d.mts +0 -45
- /package/dist/js/combobox/{models.combobox.mjs → combobox.model.mjs} +0 -0
- /package/dist/js/internal/{listbox/listbox.model.mjs → option-list/option-list.model.mjs} +0 -0
- /package/dist/js/{menu.d.mts → menu/index.d.mts} +0 -0
- /package/dist/js/{toolbar.d.mts → toolbar/index.d.mts} +0 -0
|
@@ -1,144 +1,114 @@
|
|
|
1
|
+
import { SPLITTER_ATTRIBUTE_ACTIVE, SPLITTER_ATTRIBUTE_HANDLE, SPLITTER_ATTRIBUTE_HORIZONTAL, SPLITTER_ATTRIBUTE_SEPARATOR, SPLITTER_ATTRIBUTE_SIZE, SPLITTER_ATTRIBUTE_TYPE, SPLITTER_KEYS_ABSOLUTE, SPLITTER_KEYS_ALL, SPLITTER_KEYS_HORIZONTAL, SPLITTER_KEYS_NEGATIVE, SPLITTER_KEYS_VERTICAL, SPLITTER_MESSAGE, SPLITTER_METHODS_OBSERVE, SPLITTER_NAVIGATION_MAXIMUM_PERCENTAGE, SPLITTER_NAVIGATION_MINIMUM_PERCENTAGE, SPLITTER_NAVIGATION_MODIFIER, SPLITTER_SELECTOR_HANDLE, SPLITTER_SYMBOL, SPLITTER_TAGNAME, splitterStyling } from "./splitter.model.mjs";
|
|
1
2
|
import { setAria } from "@oscarpalmer/toretto/aria";
|
|
3
|
+
import { getAttribute, setAttribute } from "@oscarpalmer/toretto/attribute";
|
|
2
4
|
import { getEventPosition, on } from "@oscarpalmer/toretto/event";
|
|
5
|
+
import { findAncestor } from "@oscarpalmer/toretto/find";
|
|
3
6
|
import { isNullableOrWhitespace } from "@oscarpalmer/atoms/is";
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
7
|
+
import { setStyle } from "@oscarpalmer/toretto/style";
|
|
8
|
+
import { filter } from "@oscarpalmer/atoms/array/filter";
|
|
6
9
|
import { clamp } from "@oscarpalmer/atoms/number";
|
|
7
|
-
import { findAncestor } from "@oscarpalmer/toretto/find";
|
|
8
10
|
import { supportsTouch } from "@oscarpalmer/toretto/touch";
|
|
9
|
-
import { round } from "@oscarpalmer/atoms/math";
|
|
10
11
|
import { createElement } from "@oscarpalmer/toretto/create";
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
element;
|
|
18
|
-
handle;
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
separator;
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
this.handle = createHandle();
|
|
30
|
-
this.rectangle = element.getBoundingClientRect();
|
|
31
|
-
this.separator = createSeparator(this);
|
|
32
|
-
this.separator.append(this.handle);
|
|
33
|
-
panels[0].insertAdjacentElement("afterend", this.separator);
|
|
34
|
-
this.updateOrientation();
|
|
35
|
-
this.updateValues();
|
|
36
|
-
}
|
|
37
|
-
updateConnections(add) {
|
|
38
|
-
const method = METHODS_CONNECT[add];
|
|
39
|
-
MAPPED_ELEMENTS[method](this.element, this);
|
|
40
|
-
MAPPED_ELEMENTS[method](this.handle, this);
|
|
41
|
-
MAPPED_ELEMENTS[method](this.separator, this);
|
|
42
|
-
if (this.types.auto) RESIZE_OBSERVER[METHODS_OBSERVE[add]](this.element);
|
|
43
|
-
}
|
|
44
|
-
updateOrientation() {
|
|
45
|
-
this.types = getTypes(this);
|
|
46
|
-
if (this.types.auto) RESIZE_OBSERVER.observe(this.element);
|
|
47
|
-
else RESIZE_OBSERVER.unobserve(this.element);
|
|
48
|
-
setAttribute(this.element, ATTRIBUTE_HORIZONTAL, this.types.horizontal ? "" : void 0);
|
|
49
|
-
setAriaOrientation(this);
|
|
50
|
-
}
|
|
51
|
-
updateValues() {
|
|
52
|
-
this.values = getValues(this.element);
|
|
53
|
-
requestAnimationFrame(() => {
|
|
54
|
-
setSize(this, this.values.now.current);
|
|
55
|
-
setAriaValue(this);
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
|
-
};
|
|
12
|
+
import { round } from "@oscarpalmer/atoms/math";
|
|
13
|
+
//#region src/js/splitter/index.ts
|
|
14
|
+
function OuiSplitter(element, panels) {
|
|
15
|
+
this.element = element;
|
|
16
|
+
this.panels = panels;
|
|
17
|
+
if (isNullableOrWhitespace(element.id)) element.id = `oui_splitter_${++index}`;
|
|
18
|
+
this.values = getValues(element);
|
|
19
|
+
this.handle = createHandle();
|
|
20
|
+
this.rectangle = element.getBoundingClientRect();
|
|
21
|
+
this.separator = createSeparator(this);
|
|
22
|
+
this.separator.append(this.handle);
|
|
23
|
+
panels[0].insertAdjacentElement("afterend", this.separator);
|
|
24
|
+
this.updateOrientation();
|
|
25
|
+
this.updateValues();
|
|
26
|
+
}
|
|
27
|
+
OuiSplitter.prototype.updateObserver = updateObserver;
|
|
28
|
+
OuiSplitter.prototype.updateOrientation = updateOrientation;
|
|
29
|
+
OuiSplitter.prototype.updateValues = updateValues;
|
|
59
30
|
var OuiSplitterElement = class extends HTMLElement {
|
|
60
31
|
static observedAttributes = [
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
32
|
+
"max",
|
|
33
|
+
"min",
|
|
34
|
+
SPLITTER_ATTRIBUTE_SIZE,
|
|
35
|
+
SPLITTER_ATTRIBUTE_TYPE
|
|
65
36
|
];
|
|
66
|
-
#splitter;
|
|
67
37
|
/**
|
|
68
38
|
* Maximum size for the first panel
|
|
69
39
|
*/
|
|
70
40
|
get max() {
|
|
71
|
-
return this
|
|
41
|
+
return this[SPLITTER_SYMBOL].values.max;
|
|
72
42
|
}
|
|
73
43
|
/**
|
|
74
44
|
* Maximum size for the first panel
|
|
75
45
|
*/
|
|
76
46
|
set max(value) {
|
|
77
|
-
if (typeof value === "number") setAttribute(this,
|
|
47
|
+
if (typeof value === "number") setAttribute(this, "max", value.toString());
|
|
78
48
|
}
|
|
79
49
|
/**
|
|
80
50
|
* Minimum size for the first panel
|
|
81
51
|
*/
|
|
82
52
|
get min() {
|
|
83
|
-
return this
|
|
53
|
+
return this[SPLITTER_SYMBOL].values.min;
|
|
84
54
|
}
|
|
85
55
|
/**
|
|
86
56
|
* Minimum size for the first panel
|
|
87
57
|
*/
|
|
88
58
|
set min(value) {
|
|
89
|
-
if (typeof value === "number") setAttribute(this,
|
|
59
|
+
if (typeof value === "number") setAttribute(this, "min", value.toString());
|
|
90
60
|
}
|
|
91
61
|
/**
|
|
92
62
|
* Current size for the first panel
|
|
93
63
|
*/
|
|
94
64
|
get size() {
|
|
95
|
-
return this
|
|
65
|
+
return this[SPLITTER_SYMBOL].values.now.current;
|
|
96
66
|
}
|
|
97
67
|
/**
|
|
98
68
|
* Current size for the first panel
|
|
99
69
|
*/
|
|
100
70
|
set size(value) {
|
|
101
|
-
if (typeof value === "number") setAttribute(this,
|
|
71
|
+
if (typeof value === "number") setAttribute(this, SPLITTER_ATTRIBUTE_SIZE, value.toString());
|
|
102
72
|
}
|
|
103
73
|
/**
|
|
104
74
|
* Orientation of the splitter
|
|
105
75
|
*/
|
|
106
76
|
get type() {
|
|
107
|
-
return getAttribute(this,
|
|
77
|
+
return getAttribute(this, "type") ?? "vertical";
|
|
108
78
|
}
|
|
109
79
|
/**
|
|
110
80
|
* Orientation of the splitter
|
|
111
81
|
*/
|
|
112
82
|
set type(value) {
|
|
113
|
-
setAttribute(this,
|
|
83
|
+
setAttribute(this, SPLITTER_ATTRIBUTE_TYPE, value);
|
|
114
84
|
}
|
|
115
85
|
constructor() {
|
|
116
86
|
super();
|
|
117
|
-
const panels = [...this.children]
|
|
118
|
-
if (panels.length !== 2) throw new Error(
|
|
119
|
-
this
|
|
87
|
+
const panels = filter([...this.children], (child) => child instanceof Element);
|
|
88
|
+
if (panels.length !== 2) throw new Error(SPLITTER_MESSAGE);
|
|
89
|
+
this[SPLITTER_SYMBOL] = new OuiSplitter(this, panels);
|
|
120
90
|
}
|
|
121
91
|
connectedCallback() {
|
|
122
|
-
this
|
|
92
|
+
this[SPLITTER_SYMBOL].updateObserver(1);
|
|
123
93
|
}
|
|
124
94
|
disconnectedCallback() {
|
|
125
|
-
this
|
|
95
|
+
this[SPLITTER_SYMBOL].updateObserver(0);
|
|
126
96
|
}
|
|
127
97
|
attributeChangedCallback(name) {
|
|
128
98
|
switch (name) {
|
|
129
|
-
case
|
|
130
|
-
case
|
|
131
|
-
case
|
|
132
|
-
this
|
|
99
|
+
case "max":
|
|
100
|
+
case "min":
|
|
101
|
+
case SPLITTER_ATTRIBUTE_SIZE:
|
|
102
|
+
this[SPLITTER_SYMBOL].updateValues();
|
|
133
103
|
break;
|
|
134
|
-
case
|
|
104
|
+
case SPLITTER_ATTRIBUTE_TYPE: this[SPLITTER_SYMBOL].updateOrientation();
|
|
135
105
|
}
|
|
136
106
|
}
|
|
137
107
|
};
|
|
138
108
|
function createHandle() {
|
|
139
109
|
return createElement("span", {
|
|
140
110
|
aria: { hidden: true },
|
|
141
|
-
attribute: { [
|
|
111
|
+
attribute: { [SPLITTER_ATTRIBUTE_HANDLE]: "" }
|
|
142
112
|
});
|
|
143
113
|
}
|
|
144
114
|
function createSeparator(splitter) {
|
|
@@ -147,7 +117,7 @@ function createSeparator(splitter) {
|
|
|
147
117
|
controls: splitter.element.id,
|
|
148
118
|
label: "Resize panels"
|
|
149
119
|
},
|
|
150
|
-
attribute: { [
|
|
120
|
+
attribute: { [SPLITTER_ATTRIBUTE_SEPARATOR]: "" },
|
|
151
121
|
property: {
|
|
152
122
|
role: "separator",
|
|
153
123
|
tabIndex: 0
|
|
@@ -155,7 +125,7 @@ function createSeparator(splitter) {
|
|
|
155
125
|
});
|
|
156
126
|
}
|
|
157
127
|
function getContained(min, value, max) {
|
|
158
|
-
return round(clamp(value, min, max),
|
|
128
|
+
return round(clamp(value, min, max), 6);
|
|
159
129
|
}
|
|
160
130
|
function getSize(splitter, value) {
|
|
161
131
|
const { height, left, top, width } = splitter.rectangle;
|
|
@@ -183,59 +153,61 @@ function getValue(element, name, defaultValue) {
|
|
|
183
153
|
const parsed = Number.parseFloat(value);
|
|
184
154
|
if (Number.isNaN(parsed)) return defaultValue;
|
|
185
155
|
if (parsed < 0) return defaultValue;
|
|
186
|
-
return parsed > 1 ? parsed /
|
|
156
|
+
return parsed > 1 ? parsed / 100 : parsed;
|
|
187
157
|
}
|
|
188
158
|
function getValues(element) {
|
|
189
159
|
const values = {
|
|
190
|
-
max: getValue(element,
|
|
191
|
-
min: getValue(element,
|
|
160
|
+
max: getValue(element, "max", SPLITTER_NAVIGATION_MAXIMUM_PERCENTAGE),
|
|
161
|
+
min: getValue(element, "min", SPLITTER_NAVIGATION_MINIMUM_PERCENTAGE),
|
|
192
162
|
now: {
|
|
193
163
|
current: .5,
|
|
194
164
|
previous: .5
|
|
195
165
|
}
|
|
196
166
|
};
|
|
197
|
-
const value = getContained(values.min, getValue(element,
|
|
167
|
+
const value = getContained(values.min, getValue(element, SPLITTER_ATTRIBUTE_SIZE, values.now.current), values.max);
|
|
198
168
|
values.now.current = value;
|
|
199
169
|
values.now.previous = value;
|
|
200
170
|
return values;
|
|
201
171
|
}
|
|
202
172
|
function onEnd(reset) {
|
|
203
173
|
if (splitter == null) return;
|
|
204
|
-
splitter.handle.removeAttribute(
|
|
205
|
-
splitter.separator.removeAttribute(
|
|
174
|
+
splitter.handle.removeAttribute(SPLITTER_ATTRIBUTE_ACTIVE);
|
|
175
|
+
splitter.separator.removeAttribute(SPLITTER_ATTRIBUTE_ACTIVE);
|
|
206
176
|
if (reset) setSize(splitter, splitter.values.now.previous);
|
|
207
177
|
else splitter.values.now.previous = splitter.values.now.current;
|
|
208
178
|
splitter = void 0;
|
|
209
|
-
|
|
179
|
+
splitterStyling.remove();
|
|
210
180
|
}
|
|
211
181
|
function onKeydown(event) {
|
|
212
182
|
switch (true) {
|
|
213
|
-
case
|
|
183
|
+
case SPLITTER_KEYS_ALL.has(event.key):
|
|
214
184
|
onNavigate(event);
|
|
215
185
|
break;
|
|
216
186
|
case event.key === "Escape": onEnd(true);
|
|
217
187
|
}
|
|
218
188
|
}
|
|
219
189
|
function onNavigate(event) {
|
|
220
|
-
const
|
|
190
|
+
const separator = findAncestor(event, "[oui-splitter-separator]");
|
|
191
|
+
if (separator == null) return;
|
|
192
|
+
const splitter = findAncestor(separator, SPLITTER_TAGNAME)?.[SPLITTER_SYMBOL];
|
|
221
193
|
if (splitter == null) return;
|
|
222
194
|
const { types, values } = splitter;
|
|
223
|
-
if (
|
|
195
|
+
if (SPLITTER_KEYS_ABSOLUTE.has(event.key)) {
|
|
224
196
|
setSize(splitter, event.key === "End" ? values.max : values.min, true);
|
|
225
197
|
return;
|
|
226
198
|
}
|
|
227
|
-
if (types.horizontal && !
|
|
228
|
-
const offset =
|
|
229
|
-
setSize(splitter, getContained(values.min, values.now.current + offset *
|
|
199
|
+
if (types.horizontal && !SPLITTER_KEYS_HORIZONTAL.has(event.key) || !(types.horizontal || SPLITTER_KEYS_VERTICAL.has(event.key))) return;
|
|
200
|
+
const offset = SPLITTER_KEYS_NEGATIVE.has(event.key) ? -1 : 1;
|
|
201
|
+
setSize(splitter, getContained(values.min, values.now.current + offset * SPLITTER_NAVIGATION_MODIFIER, values.max), true);
|
|
230
202
|
}
|
|
231
203
|
function onObservation(entries) {
|
|
232
204
|
if (frame != null) cancelAnimationFrame(frame);
|
|
233
205
|
frame = requestAnimationFrame(() => {
|
|
234
206
|
for (const entry of entries) {
|
|
235
|
-
const splitter =
|
|
207
|
+
const splitter = entry.target instanceof OuiSplitterElement || entry.target.hasAttribute(SPLITTER_ATTRIBUTE_HANDLE) || entry.target.hasAttribute(SPLITTER_ATTRIBUTE_SEPARATOR) ? findAncestor(entry.target, SPLITTER_TAGNAME)?.[SPLITTER_SYMBOL] : void 0;
|
|
236
208
|
if (splitter == null) return;
|
|
237
209
|
splitter.types = getTypes(splitter, entry.contentRect.width, entry.contentRect.height);
|
|
238
|
-
setAttribute(splitter.element,
|
|
210
|
+
setAttribute(splitter.element, SPLITTER_ATTRIBUTE_HORIZONTAL, splitter.types.horizontal ? "" : void 0);
|
|
239
211
|
setAriaOrientation(splitter);
|
|
240
212
|
}
|
|
241
213
|
frame = void 0;
|
|
@@ -243,13 +215,15 @@ function onObservation(entries) {
|
|
|
243
215
|
}
|
|
244
216
|
function onPointerdown(event) {
|
|
245
217
|
if (supportsTouch.value ? event.type === "mousedown" : event.type === "touchstart") return;
|
|
246
|
-
|
|
218
|
+
const handle = findAncestor(event, SPLITTER_SELECTOR_HANDLE);
|
|
219
|
+
if (handle == null) return;
|
|
220
|
+
splitter = findAncestor(handle, SPLITTER_TAGNAME)?.[SPLITTER_SYMBOL];
|
|
247
221
|
if (splitter == null) return;
|
|
248
222
|
if (supportsTouch.value) event.preventDefault();
|
|
249
|
-
setAttribute(splitter.handle,
|
|
250
|
-
setAttribute(splitter.separator,
|
|
223
|
+
setAttribute(splitter.handle, SPLITTER_ATTRIBUTE_ACTIVE, "");
|
|
224
|
+
setAttribute(splitter.separator, SPLITTER_ATTRIBUTE_ACTIVE, "");
|
|
251
225
|
splitter.rectangle = splitter.element.getBoundingClientRect();
|
|
252
|
-
|
|
226
|
+
splitterStyling.set();
|
|
253
227
|
}
|
|
254
228
|
function onPointermove(event) {
|
|
255
229
|
if (splitter == null) return;
|
|
@@ -278,36 +252,24 @@ function setSize(splitter, size, previous) {
|
|
|
278
252
|
setStyle(splitter.element, "--oui-splitter-size", `${size}`);
|
|
279
253
|
setAriaValue(splitter);
|
|
280
254
|
}
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
const
|
|
299
|
-
const NAVIGATION_MAXIMUM_PERCENTAGE = .9;
|
|
300
|
-
const NAVIGATION_MAXIMUM_TOTAL = 100;
|
|
301
|
-
const NAVIGATION_MINIMUM_PERCENTAGE = .1;
|
|
302
|
-
const NAVIGATION_MODIFIER = .05;
|
|
303
|
-
const RESIZE_OBSERVER = new ResizeObserver(onObservation);
|
|
304
|
-
const SELECTOR_HANDLE = `[${ATTRIBUTE_HANDLE}]`;
|
|
305
|
-
const STYLING_TOGGLER = toggleStyles(document.body, {
|
|
306
|
-
touchAction: "none",
|
|
307
|
-
userSelect: "none",
|
|
308
|
-
webkitUserSelect: "none"
|
|
309
|
-
});
|
|
310
|
-
const VALUE_DECIMALS = 6;
|
|
255
|
+
function updateObserver(add) {
|
|
256
|
+
if (this.types.auto) observer[SPLITTER_METHODS_OBSERVE[add]](this.element);
|
|
257
|
+
}
|
|
258
|
+
function updateOrientation() {
|
|
259
|
+
this.types = getTypes(this);
|
|
260
|
+
if (this.types.auto) observer.observe(this.element);
|
|
261
|
+
else observer.unobserve(this.element);
|
|
262
|
+
setAttribute(this.element, SPLITTER_ATTRIBUTE_HORIZONTAL, this.types.horizontal ? "" : void 0);
|
|
263
|
+
setAriaOrientation(this);
|
|
264
|
+
}
|
|
265
|
+
function updateValues() {
|
|
266
|
+
this.values = getValues(this.element);
|
|
267
|
+
requestAnimationFrame(() => {
|
|
268
|
+
setSize(this, this.values.now.current);
|
|
269
|
+
setAriaValue(this);
|
|
270
|
+
});
|
|
271
|
+
}
|
|
272
|
+
const observer = new ResizeObserver(onObservation);
|
|
311
273
|
let index = 0;
|
|
312
274
|
let frame;
|
|
313
275
|
let splitter;
|
|
@@ -317,6 +279,6 @@ on(document, "pointermove", onPointermove);
|
|
|
317
279
|
on(document, "pointerup", onPointerup);
|
|
318
280
|
on(document, "touchcancel", onPointerup);
|
|
319
281
|
on(document, "touchstart", onPointerdown, { passive: false });
|
|
320
|
-
customElements.define(
|
|
282
|
+
customElements.define(SPLITTER_TAGNAME, OuiSplitterElement);
|
|
321
283
|
//#endregion
|
|
322
284
|
export { OuiSplitterElement };
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import { A as splitterStyling, C as SPLITTER_NAVIGATION_MAXIMUM_TOTAL, D as SPLITTER_SYMBOL, E as SPLITTER_SELECTOR_HANDLE, O as SPLITTER_TAGNAME, S as SPLITTER_NAVIGATION_MAXIMUM_PERCENTAGE, T as SPLITTER_NAVIGATION_MODIFIER, _ as SPLITTER_KEYS_NEGATIVE, a as OuiSplitterValuesNow, b as SPLITTER_METHODS_CONNECT, c as SPLITTER_ATTRIBUTE_HORIZONTAL, d as SPLITTER_ATTRIBUTE_SEPARATOR, f as SPLITTER_ATTRIBUTE_SIZE, g as SPLITTER_KEYS_HORIZONTAL, h as SPLITTER_KEYS_ALL, i as OuiSplitterValues, k as SPLITTER_VALUE_DECIMALS, l as SPLITTER_ATTRIBUTE_MAX, m as SPLITTER_KEYS_ABSOLUTE, n as OuiSplitter, o as SPLITTER_ATTRIBUTE_ACTIVE, p as SPLITTER_ATTRIBUTE_TYPE, r as OuiSplitterTypes, s as SPLITTER_ATTRIBUTE_HANDLE, t as GenericOuiSplitterElement, u as SPLITTER_ATTRIBUTE_MIN, v as SPLITTER_KEYS_VERTICAL, w as SPLITTER_NAVIGATION_MINIMUM_PERCENTAGE, x as SPLITTER_METHODS_OBSERVE, y as SPLITTER_MESSAGE } from "../splitter.model-C24W6eZ7.mjs";
|
|
2
|
+
export { GenericOuiSplitterElement, OuiSplitter, OuiSplitterTypes, OuiSplitterValues, OuiSplitterValuesNow, SPLITTER_ATTRIBUTE_ACTIVE, SPLITTER_ATTRIBUTE_HANDLE, SPLITTER_ATTRIBUTE_HORIZONTAL, SPLITTER_ATTRIBUTE_MAX, SPLITTER_ATTRIBUTE_MIN, SPLITTER_ATTRIBUTE_SEPARATOR, SPLITTER_ATTRIBUTE_SIZE, SPLITTER_ATTRIBUTE_TYPE, SPLITTER_KEYS_ABSOLUTE, SPLITTER_KEYS_ALL, SPLITTER_KEYS_HORIZONTAL, SPLITTER_KEYS_NEGATIVE, SPLITTER_KEYS_VERTICAL, SPLITTER_MESSAGE, SPLITTER_METHODS_CONNECT, SPLITTER_METHODS_OBSERVE, SPLITTER_NAVIGATION_MAXIMUM_PERCENTAGE, SPLITTER_NAVIGATION_MAXIMUM_TOTAL, SPLITTER_NAVIGATION_MINIMUM_PERCENTAGE, SPLITTER_NAVIGATION_MODIFIER, SPLITTER_SELECTOR_HANDLE, SPLITTER_SYMBOL, SPLITTER_TAGNAME, SPLITTER_VALUE_DECIMALS, splitterStyling };
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { toggleStyles } from "@oscarpalmer/toretto/style";
|
|
2
|
+
//#region src/js/splitter/splitter.model.ts
|
|
3
|
+
const SPLITTER_TAGNAME = "oui-splitter";
|
|
4
|
+
const SPLITTER_ATTRIBUTE_ACTIVE = `${SPLITTER_TAGNAME}-active`;
|
|
5
|
+
const SPLITTER_ATTRIBUTE_HANDLE = `${SPLITTER_TAGNAME}-handle`;
|
|
6
|
+
const SPLITTER_ATTRIBUTE_HORIZONTAL = `${SPLITTER_TAGNAME}-horizontal`;
|
|
7
|
+
const SPLITTER_ATTRIBUTE_MAX = "max";
|
|
8
|
+
const SPLITTER_ATTRIBUTE_MIN = "min";
|
|
9
|
+
const SPLITTER_ATTRIBUTE_SIZE = "size";
|
|
10
|
+
const SPLITTER_ATTRIBUTE_TYPE = "type";
|
|
11
|
+
const SPLITTER_ATTRIBUTE_SEPARATOR = `${SPLITTER_TAGNAME}-separator`;
|
|
12
|
+
const SPLITTER_KEYS_ABSOLUTE = /* @__PURE__ */ new Set(["End", "Home"]);
|
|
13
|
+
const SPLITTER_KEYS_HORIZONTAL = /* @__PURE__ */ new Set(["ArrowDown", "ArrowUp"]);
|
|
14
|
+
const SPLITTER_KEYS_NEGATIVE = /* @__PURE__ */ new Set(["ArrowLeft", "ArrowUp"]);
|
|
15
|
+
const SPLITTER_KEYS_VERTICAL = /* @__PURE__ */ new Set(["ArrowLeft", "ArrowRight"]);
|
|
16
|
+
const SPLITTER_KEYS_ALL = /* @__PURE__ */ new Set([
|
|
17
|
+
...SPLITTER_KEYS_ABSOLUTE,
|
|
18
|
+
...SPLITTER_KEYS_HORIZONTAL,
|
|
19
|
+
...SPLITTER_KEYS_VERTICAL
|
|
20
|
+
]);
|
|
21
|
+
const SPLITTER_MESSAGE = `<${SPLITTER_TAGNAME}> must have exactly two panels.`;
|
|
22
|
+
const SPLITTER_METHODS_CONNECT = ["delete", "set"];
|
|
23
|
+
const SPLITTER_METHODS_OBSERVE = ["unobserve", "observe"];
|
|
24
|
+
const SPLITTER_NAVIGATION_MAXIMUM_PERCENTAGE = .9;
|
|
25
|
+
const SPLITTER_NAVIGATION_MAXIMUM_TOTAL = 100;
|
|
26
|
+
const SPLITTER_NAVIGATION_MINIMUM_PERCENTAGE = .1;
|
|
27
|
+
const SPLITTER_NAVIGATION_MODIFIER = .05;
|
|
28
|
+
const SPLITTER_SELECTOR_HANDLE = `[${SPLITTER_ATTRIBUTE_HANDLE}]`;
|
|
29
|
+
const SPLITTER_SYMBOL = Symbol(SPLITTER_TAGNAME);
|
|
30
|
+
const SPLITTER_VALUE_DECIMALS = 6;
|
|
31
|
+
const splitterStyling = toggleStyles(document.body, {
|
|
32
|
+
touchAction: "none",
|
|
33
|
+
userSelect: "none",
|
|
34
|
+
webkitUserSelect: "none"
|
|
35
|
+
});
|
|
36
|
+
//#endregion
|
|
37
|
+
export { SPLITTER_ATTRIBUTE_ACTIVE, SPLITTER_ATTRIBUTE_HANDLE, SPLITTER_ATTRIBUTE_HORIZONTAL, SPLITTER_ATTRIBUTE_MAX, SPLITTER_ATTRIBUTE_MIN, SPLITTER_ATTRIBUTE_SEPARATOR, SPLITTER_ATTRIBUTE_SIZE, SPLITTER_ATTRIBUTE_TYPE, SPLITTER_KEYS_ABSOLUTE, SPLITTER_KEYS_ALL, SPLITTER_KEYS_HORIZONTAL, SPLITTER_KEYS_NEGATIVE, SPLITTER_KEYS_VERTICAL, SPLITTER_MESSAGE, SPLITTER_METHODS_CONNECT, SPLITTER_METHODS_OBSERVE, SPLITTER_NAVIGATION_MAXIMUM_PERCENTAGE, SPLITTER_NAVIGATION_MAXIMUM_TOTAL, SPLITTER_NAVIGATION_MINIMUM_PERCENTAGE, SPLITTER_NAVIGATION_MODIFIER, SPLITTER_SELECTOR_HANDLE, SPLITTER_SYMBOL, SPLITTER_TAGNAME, SPLITTER_VALUE_DECIMALS, splitterStyling };
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { StyleToggler } from "@oscarpalmer/toretto/style";
|
|
2
|
+
//#region src/js/splitter/splitter.model.d.ts
|
|
3
|
+
type GenericOuiSplitterElement = {
|
|
4
|
+
[SPLITTER_SYMBOL]: OuiSplitter;
|
|
5
|
+
} & HTMLElement;
|
|
6
|
+
type OuiSplitter = {
|
|
7
|
+
element: GenericOuiSplitterElement;
|
|
8
|
+
handle: Element;
|
|
9
|
+
panels: Element[];
|
|
10
|
+
rectangle: DOMRect;
|
|
11
|
+
separator: HTMLDivElement;
|
|
12
|
+
types: OuiSplitterTypes;
|
|
13
|
+
values: OuiSplitterValues;
|
|
14
|
+
updateObserver(add: 0 | 1): void;
|
|
15
|
+
updateOrientation(): void;
|
|
16
|
+
updateValues(): void;
|
|
17
|
+
};
|
|
18
|
+
type OuiSplitterTypes = {
|
|
19
|
+
auto: boolean;
|
|
20
|
+
horizontal: boolean;
|
|
21
|
+
};
|
|
22
|
+
type OuiSplitterValues = {
|
|
23
|
+
max: number;
|
|
24
|
+
min: number;
|
|
25
|
+
now: OuiSplitterValuesNow;
|
|
26
|
+
};
|
|
27
|
+
type OuiSplitterValuesNow = {
|
|
28
|
+
current: number;
|
|
29
|
+
previous: number;
|
|
30
|
+
};
|
|
31
|
+
declare const SPLITTER_TAGNAME = "oui-splitter";
|
|
32
|
+
declare const SPLITTER_ATTRIBUTE_ACTIVE: string;
|
|
33
|
+
declare const SPLITTER_ATTRIBUTE_HANDLE: string;
|
|
34
|
+
declare const SPLITTER_ATTRIBUTE_HORIZONTAL: string;
|
|
35
|
+
declare const SPLITTER_ATTRIBUTE_MAX = "max";
|
|
36
|
+
declare const SPLITTER_ATTRIBUTE_MIN = "min";
|
|
37
|
+
declare const SPLITTER_ATTRIBUTE_SIZE = "size";
|
|
38
|
+
declare const SPLITTER_ATTRIBUTE_TYPE = "type";
|
|
39
|
+
declare const SPLITTER_ATTRIBUTE_SEPARATOR: string;
|
|
40
|
+
declare const SPLITTER_KEYS_ABSOLUTE: Set<string>;
|
|
41
|
+
declare const SPLITTER_KEYS_HORIZONTAL: Set<string>;
|
|
42
|
+
declare const SPLITTER_KEYS_NEGATIVE: Set<string>;
|
|
43
|
+
declare const SPLITTER_KEYS_VERTICAL: Set<string>;
|
|
44
|
+
declare const SPLITTER_KEYS_ALL: Set<string>;
|
|
45
|
+
declare const SPLITTER_MESSAGE: string;
|
|
46
|
+
declare const SPLITTER_METHODS_CONNECT: readonly ["delete", "set"];
|
|
47
|
+
declare const SPLITTER_METHODS_OBSERVE: readonly ["unobserve", "observe"];
|
|
48
|
+
declare const SPLITTER_NAVIGATION_MAXIMUM_PERCENTAGE = .9;
|
|
49
|
+
declare const SPLITTER_NAVIGATION_MAXIMUM_TOTAL = 100;
|
|
50
|
+
declare const SPLITTER_NAVIGATION_MINIMUM_PERCENTAGE = .1;
|
|
51
|
+
declare const SPLITTER_NAVIGATION_MODIFIER = .05;
|
|
52
|
+
declare const SPLITTER_SELECTOR_HANDLE: string;
|
|
53
|
+
declare const SPLITTER_SYMBOL: unique symbol;
|
|
54
|
+
declare const SPLITTER_VALUE_DECIMALS = 6;
|
|
55
|
+
declare const splitterStyling: StyleToggler;
|
|
56
|
+
//#endregion
|
|
57
|
+
export { splitterStyling as A, SPLITTER_NAVIGATION_MAXIMUM_TOTAL as C, SPLITTER_SYMBOL as D, SPLITTER_SELECTOR_HANDLE as E, SPLITTER_TAGNAME as O, SPLITTER_NAVIGATION_MAXIMUM_PERCENTAGE as S, SPLITTER_NAVIGATION_MODIFIER as T, SPLITTER_KEYS_NEGATIVE as _, OuiSplitterValuesNow as a, SPLITTER_METHODS_CONNECT as b, SPLITTER_ATTRIBUTE_HORIZONTAL as c, SPLITTER_ATTRIBUTE_SEPARATOR as d, SPLITTER_ATTRIBUTE_SIZE as f, SPLITTER_KEYS_HORIZONTAL as g, SPLITTER_KEYS_ALL as h, OuiSplitterValues as i, SPLITTER_VALUE_DECIMALS as k, SPLITTER_ATTRIBUTE_MAX as l, SPLITTER_KEYS_ABSOLUTE as m, OuiSplitter as n, SPLITTER_ATTRIBUTE_ACTIVE as o, SPLITTER_ATTRIBUTE_TYPE as p, OuiSplitterTypes as r, SPLITTER_ATTRIBUTE_HANDLE as s, GenericOuiSplitterElement as t, SPLITTER_ATTRIBUTE_MIN as u, SPLITTER_KEYS_VERTICAL as v, SPLITTER_NAVIGATION_MINIMUM_PERCENTAGE as w, SPLITTER_METHODS_OBSERVE as x, SPLITTER_MESSAGE as y };
|
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
|
|
1
|
+
import { a as OuiTabsState, c as TABS_SYMBOL, r as OuiTabsEvent } from "../tabs.model-BHPy7fPo.mjs";
|
|
2
|
+
//#region src/js/tabs/index.d.ts
|
|
2
3
|
declare global {
|
|
3
4
|
interface HTMLElementTagNameMap {
|
|
4
5
|
[TAGNAME]: OuiTabsElement;
|
|
5
6
|
}
|
|
6
7
|
}
|
|
7
|
-
export
|
|
8
|
-
|
|
9
|
-
newIndex: number;
|
|
10
|
-
constructor(name: "oui:beforechange" | "oui:change", oldIndex: number, newIndex: number, cancelable: boolean);
|
|
8
|
+
export interface OuiTabsElement {
|
|
9
|
+
[TABS_SYMBOL]: OuiTabsState;
|
|
11
10
|
}
|
|
12
11
|
export declare class OuiTabsElement extends HTMLElement {
|
|
13
|
-
#private;
|
|
14
12
|
static observedAttributes: string[];
|
|
15
13
|
get active(): number;
|
|
16
14
|
set active(value: number);
|
|
17
|
-
get panel():
|
|
15
|
+
get panel(): Element;
|
|
18
16
|
get tab(): HTMLButtonElement;
|
|
17
|
+
constructor();
|
|
19
18
|
attributeChangedCallback(name: string, _: string | null, value: string | null): void;
|
|
20
19
|
connectedCallback(): void;
|
|
21
20
|
disconnectedCallback(): void;
|
|
22
21
|
}
|
|
23
22
|
declare const TAGNAME = "oui-tabs";
|
|
24
|
-
//#endregion
|
|
23
|
+
//#endregion
|
|
24
|
+
export { OuiTabsEvent };
|