@oscarpalmer/oui 0.40.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.
Files changed (165) hide show
  1. package/dist/css/color-picker.css +80 -69
  2. package/dist/css/listbox.css +169 -0
  3. package/dist/js/color-picker/color-picker.constants.d.mts +2 -2
  4. package/dist/js/color-picker/color-picker.constants.mjs +5 -3
  5. package/dist/js/color-picker/color-picker.dom.d.mts +1 -1
  6. package/dist/js/color-picker/color-picker.dom.mjs +31 -14
  7. package/dist/js/color-picker/color-picker.event.d.mts +2 -2
  8. package/dist/js/color-picker/color-picker.event.mjs +232 -1
  9. package/dist/js/color-picker/color-picker.form.d.mts +1 -1
  10. package/dist/js/color-picker/color-picker.form.mjs +1 -3
  11. package/dist/js/color-picker/color-picker.misc.d.mts +2 -2
  12. package/dist/js/color-picker/color-picker.misc.mjs +104 -2
  13. package/dist/js/color-picker/color-picker.model.d.mts +2 -2
  14. package/dist/js/color-picker/color-picker.output.d.mts +1 -1
  15. package/dist/js/color-picker/color-picker.output.mjs +7 -8
  16. package/dist/js/color-picker/color-picker.state.d.mts +1 -1
  17. package/dist/js/color-picker/color-picker.state.mjs +167 -1
  18. package/dist/js/color-picker/index.d.mts +7 -15
  19. package/dist/js/color-picker/index.mjs +11 -6
  20. package/dist/js/{color-picker.constants-D1mxw_Le.d.mts → color-picker.constants-BZgXQr5o.d.mts} +6 -8
  21. package/dist/js/{color-picker.misc-CtsXGrOe.d.mts → color-picker.misc-BIS3R6jk.d.mts} +8 -4
  22. package/dist/js/combobox/combobox.constants.d.mts +1 -1
  23. package/dist/js/combobox/combobox.dom.d.mts +12 -13
  24. package/dist/js/combobox/combobox.dom.mjs +15 -17
  25. package/dist/js/combobox/combobox.event.d.mts +8 -8
  26. package/dist/js/combobox/combobox.event.mjs +1 -1
  27. package/dist/js/combobox/combobox.misc.d.mts +2 -2
  28. package/dist/js/combobox/combobox.misc.mjs +2 -2
  29. package/dist/js/combobox/combobox.model.d.mts +2 -2
  30. package/dist/js/combobox/combobox.state.d.mts +3 -4
  31. package/dist/js/combobox/combobox.state.mjs +1 -1
  32. package/dist/js/combobox/index.d.mts +8 -19
  33. package/dist/js/combobox/index.mjs +21 -23
  34. package/dist/js/{combobox.constants-DZVkMP5g.d.mts → combobox.constants-Hb3bqqQJ.d.mts} +3 -3
  35. package/dist/js/combobox.misc-DRDFk6X8.d.mts +26 -0
  36. package/dist/js/combobox.model-gjEI2VqZ.d.mts +46 -0
  37. package/dist/js/{combobox.state-BfJ3Hxg8.mjs → combobox.state-AstCICiH.mjs} +30 -41
  38. package/dist/js/dialog/dialog.model.d.mts +1 -1
  39. package/dist/js/dialog/index.d.mts +1 -1
  40. package/dist/js/{dialog.model-DX2mndMh.d.mts → dialog.model-HVzYWoDo.d.mts} +3 -3
  41. package/dist/js/floatable/floatable.embedded.d.mts +1 -1
  42. package/dist/js/floatable/floatable.embedded.mjs +2 -2
  43. package/dist/js/floatable/floatable.standalone.d.mts +1 -1
  44. package/dist/js/{floatable.embedded-MeTyXjFn.d.mts → floatable.embedded-ncshL3Sa.d.mts} +3 -3
  45. package/dist/js/focus-trap/focus-trap.embedded.d.mts +1 -1
  46. package/dist/js/focus-trap/focus-trap.embedded.mjs +10 -9
  47. package/dist/js/focus-trap/focus-trap.model.d.mts +1 -1
  48. package/dist/js/focus-trap/focus-trap.standalone.d.mts +2 -2
  49. package/dist/js/{focus-trap.embedded-DIU05m1z.d.mts → focus-trap.embedded-DpcPkP7c.d.mts} +3 -3
  50. package/dist/js/{focus-trap.model-BeX6UYlw.d.mts → focus-trap.model-CpltX5B5.d.mts} +1 -1
  51. package/dist/js/index.d.mts +16 -16
  52. package/dist/js/index.mjs +3 -3
  53. package/dist/js/internal/attributable.d.mts +1 -1
  54. package/dist/js/internal/draggable/draggable.model.d.mts +1 -1
  55. package/dist/js/internal/draggable/index.d.mts +8 -8
  56. package/dist/js/internal/draggable/index.mjs +27 -18
  57. package/dist/js/internal/l10n/index.d.mts +5 -0
  58. package/dist/js/internal/l10n/index.mjs +147 -0
  59. package/dist/js/internal/l10n/l10n.model.d.mts +2 -0
  60. package/dist/js/{l10n → internal/l10n}/l10n.model.mjs +5 -2
  61. package/dist/js/internal/misc.d.mts +2 -2
  62. package/dist/js/internal/navigable/index.d.mts +3 -3
  63. package/dist/js/internal/navigable/index.mjs +1 -1
  64. package/dist/js/internal/navigable/navigable.model.d.mts +1 -1
  65. package/dist/js/internal/option-list/option-list.constants.d.mts +8 -0
  66. package/dist/js/internal/option-list/option-list.constants.mjs +22 -0
  67. package/dist/js/internal/option-list/option-list.data.d.mts +21 -0
  68. package/dist/js/internal/option-list/option-list.data.mjs +2 -0
  69. package/dist/js/internal/option-list/option-list.dom.d.mts +18 -0
  70. package/dist/js/internal/option-list/option-list.dom.mjs +2 -0
  71. package/dist/js/internal/option-list/option-list.event.d.mts +6 -0
  72. package/dist/js/internal/{listbox/listbox.event.mjs → option-list/option-list.event.mjs} +7 -7
  73. package/dist/js/internal/option-list/option-list.form.d.mts +7 -0
  74. package/dist/js/internal/{listbox/listbox.form.mjs → option-list/option-list.form.mjs} +10 -13
  75. package/dist/js/internal/option-list/option-list.misc.d.mts +13 -0
  76. package/dist/js/internal/option-list/option-list.misc.mjs +2 -0
  77. package/dist/js/internal/option-list/option-list.model.d.mts +2 -0
  78. package/dist/js/internal/option-list/option-list.state.d.mts +8 -0
  79. package/dist/js/internal/option-list/option-list.state.mjs +39 -0
  80. package/dist/js/l10n/index.d.mts +3 -9
  81. package/dist/js/l10n/index.mjs +2 -107
  82. package/dist/js/l10n.model-D1E1u35L.d.mts +54 -0
  83. package/dist/js/listbox/index.d.mts +6 -17
  84. package/dist/js/listbox/index.mjs +22 -23
  85. package/dist/js/listbox/{constants.listbox.d.mts → listbox.constants.d.mts} +1 -1
  86. package/dist/js/listbox/{constants.listbox.mjs → listbox.constants.mjs} +1 -1
  87. package/dist/js/listbox/listbox.dom.d.mts +5 -0
  88. package/dist/js/listbox/listbox.dom.mjs +2 -0
  89. package/dist/js/listbox/listbox.event.d.mts +9 -0
  90. package/dist/js/listbox/listbox.event.mjs +2 -0
  91. package/dist/js/listbox/listbox.misc.d.mts +2 -0
  92. package/dist/js/listbox/listbox.misc.mjs +2 -0
  93. package/dist/js/listbox/listbox.model.d.mts +2 -0
  94. package/dist/js/listbox/listbox.model.mjs +1 -0
  95. package/dist/js/listbox/listbox.state.d.mts +9 -0
  96. package/dist/js/listbox/listbox.state.mjs +2 -0
  97. package/dist/js/{constants.listbox-C5Ap6Ag_.d.mts → listbox.constants-DOBMwKup.d.mts} +3 -3
  98. package/dist/js/listbox.misc-DwfB4Mu_.d.mts +24 -0
  99. package/dist/js/listbox.model-C0MYWXZe.d.mts +20 -0
  100. package/dist/js/listbox.state-BrN296BM.mjs +240 -0
  101. package/dist/js/menu/index.mjs +7 -3
  102. package/dist/js/menu/menu.model.d.mts +7 -7
  103. package/dist/js/movable/movable.embedded.d.mts +1 -1
  104. package/dist/js/movable/movable.embedded.mjs +21 -18
  105. package/dist/js/movable/movable.model.d.mts +1 -1
  106. package/dist/js/movable/movable.standalone.d.mts +2 -2
  107. package/dist/js/{movable.embedded-DoyXLegc.d.mts → movable.embedded-C1bDTLGs.d.mts} +2 -2
  108. package/dist/js/{movable.model-BHaK_mKw.d.mts → movable.model-D9nnPWKk.d.mts} +41 -41
  109. package/dist/js/{navigable.model-BPOM8DZk.d.mts → navigable.model-BqoR6iBv.d.mts} +1 -1
  110. package/dist/js/{listbox.data-BQyZGKgr.mjs → option-list.data-CgMyUwPc.mjs} +70 -71
  111. package/dist/js/option-list.model-CCPUlPeX.d.mts +169 -0
  112. package/dist/js/popover/index.d.mts +2 -2
  113. package/dist/js/popover/index.mjs +1 -1
  114. package/dist/js/popover/popover.model.d.mts +1 -1
  115. package/dist/js/{popover.model-ubKNG612.d.mts → popover.model-DiLdz0Hc.d.mts} +4 -4
  116. package/dist/js/resizable/resizable.embedded.d.mts +1 -1
  117. package/dist/js/resizable/resizable.model.d.mts +1 -1
  118. package/dist/js/resizable/resizable.standalone.d.mts +2 -2
  119. package/dist/js/{resizable.embedded-Bf1qBUdt.d.mts → resizable.embedded-BemH-7Re.d.mts} +2 -2
  120. package/dist/js/{resizable.model-BwzJcTVJ.d.mts → resizable.model-YEtcC9li.d.mts} +3 -3
  121. package/dist/js/sortable/sortable.embedded.d.mts +1 -1
  122. package/dist/js/sortable/sortable.embedded.mjs +46 -38
  123. package/dist/js/sortable/sortable.model.d.mts +1 -1
  124. package/dist/js/sortable/sortable.standalone.d.mts +2 -2
  125. package/dist/js/{sortable.embedded-DzBKAwSG.d.mts → sortable.embedded-CrEGff9k.d.mts} +2 -2
  126. package/dist/js/splitter/index.d.mts +1 -1
  127. package/dist/js/splitter/splitter.model.d.mts +1 -1
  128. package/dist/js/{splitter.model-DOLNjLVS.d.mts → splitter.model-C24W6eZ7.d.mts} +2 -2
  129. package/dist/js/tabs/index.d.mts +2 -2
  130. package/dist/js/tabs/index.mjs +1 -1
  131. package/dist/js/tabs/tabs.model.d.mts +1 -1
  132. package/dist/js/{tabs.model-DRBX_JtI.d.mts → tabs.model-BHPy7fPo.d.mts} +1 -1
  133. package/dist/js/toolbar/toolbar.model.d.mts +2 -2
  134. package/dist/js/tooltip/index.d.mts +2 -2
  135. package/dist/js/tooltip/tooltip.model.d.mts +1 -1
  136. package/dist/js/{tooltip.model-DRkY_BsL.d.mts → tooltip.model-BpNStw5z.d.mts} +3 -3
  137. package/package.json +1 -1
  138. package/dist/js/color-picker.event-Cksj5TvS.mjs +0 -500
  139. package/dist/js/combobox.misc-C1tPZZDi.d.mts +0 -22
  140. package/dist/js/combobox.model-oDV06XCN.d.mts +0 -44
  141. package/dist/js/internal/listbox/listbox.constants.d.mts +0 -8
  142. package/dist/js/internal/listbox/listbox.constants.mjs +0 -22
  143. package/dist/js/internal/listbox/listbox.data.d.mts +0 -19
  144. package/dist/js/internal/listbox/listbox.data.mjs +0 -2
  145. package/dist/js/internal/listbox/listbox.dom.d.mts +0 -65
  146. package/dist/js/internal/listbox/listbox.dom.mjs +0 -2
  147. package/dist/js/internal/listbox/listbox.event.d.mts +0 -4
  148. package/dist/js/internal/listbox/listbox.form.d.mts +0 -5
  149. package/dist/js/internal/listbox/listbox.misc.d.mts +0 -11
  150. package/dist/js/internal/listbox/listbox.misc.mjs +0 -2
  151. package/dist/js/internal/listbox/listbox.model.d.mts +0 -2
  152. package/dist/js/internal/listbox/listbox.state.d.mts +0 -6
  153. package/dist/js/internal/listbox/listbox.state.mjs +0 -39
  154. package/dist/js/l10n/l10n.model.d.mts +0 -2
  155. package/dist/js/l10n.model-D6a9frgl.d.mts +0 -26
  156. package/dist/js/listbox/event.listbox.d.mts +0 -7
  157. package/dist/js/listbox/event.listbox.mjs +0 -48
  158. package/dist/js/listbox/misc.listbox.d.mts +0 -2
  159. package/dist/js/listbox/misc.listbox.mjs +0 -2
  160. package/dist/js/listbox/state.listbox.d.mts +0 -9
  161. package/dist/js/listbox/state.listbox.mjs +0 -2
  162. package/dist/js/listbox.model-CuBOj4qe.d.mts +0 -129
  163. package/dist/js/misc.listbox-CjfBUbHD.mjs +0 -154
  164. package/dist/js/misc.listbox-CtoGvXQo.d.mts +0 -20
  165. /package/dist/js/internal/{listbox/listbox.model.mjs → option-list/option-list.model.mjs} +0 -0
@@ -1,21 +1,21 @@
1
1
  import { c as OuiFloatable } from "../floatable.model-DXsQgoU7.mjs";
2
- import { d as OuiNavigable, m as OuiNavigableOptions } from "../navigable.model-BPOM8DZk.mjs";
2
+ import { d as OuiNavigable, m as OuiNavigableOptions } from "../navigable.model-BqoR6iBv.mjs";
3
3
  //#region src/js/menu/menu.model.d.ts
4
4
  export type OuiBasicMenu = {
5
5
  destroy(): void;
6
6
  };
7
7
  export type OuiBasicMenuOptions = Pick<OuiNavigableOptions, "role" | "selector" | "vertical">;
8
8
  export type OuiMenu = {
9
- content: HTMLElement;
10
- element: HTMLElement;
9
+ content: Element;
10
+ element: Element;
11
11
  floatable: OuiFloatable;
12
12
  navigable: OuiNavigable;
13
- toggle: HTMLElement;
13
+ toggle: Element;
14
14
  get open(): boolean;
15
15
  destroy(): void;
16
16
  };
17
17
  export type OuiMenubar = {
18
- element: HTMLElement;
18
+ element: Element;
19
19
  navigable: OuiNavigable;
20
20
  destroy(): void;
21
21
  };
@@ -28,6 +28,6 @@ export declare const MENU_SELECTOR_TOGGLE: string;
28
28
  export declare const MENUBAR_SELECTOR: string;
29
29
  export declare const MENUBAR_SELECTOR_ITEM: string;
30
30
  export declare const MENU_MENUBAR_SELECTORS: string;
31
- export declare const menubars: WeakMap<HTMLElement, OuiMenubar>;
32
- export declare const menus: WeakMap<HTMLElement, OuiMenu>;
31
+ export declare const menubars: WeakMap<Element, OuiMenubar>;
32
+ export declare const menus: WeakMap<Element, OuiMenu>;
33
33
  //#endregion
@@ -1,2 +1,2 @@
1
- import { t as createMovable } from "../movable.embedded-DoyXLegc.mjs";
1
+ import { t as createMovable } from "../movable.embedded-C1bDTLGs.mjs";
2
2
  export { createMovable };
@@ -1,11 +1,12 @@
1
1
  import { attributable } from "../internal/attributable.mjs";
2
- import { DRAGGABLE_SYMBOL } from "../internal/draggable/draggable.model.mjs";
2
+ import { DRAGGABLE_SYMBOL, draggableGlobals } from "../internal/draggable/draggable.model.mjs";
3
3
  import { MOVABLE_ATTRIBUTE, MOVABLE_ATTRIBUTE_CONTAINER, MOVABLE_ATTRIBUTE_DIRECTION, MOVABLE_ATTRIBUTE_MOVING, MOVABLE_CONTAINERS, MOVABLE_MESSAGE, MOVABLE_MOVED, MOVABLE_SELECTOR_HANDLE } from "./movable.model.mjs";
4
4
  import { addDraggable, destroyDraggable, getDraggableElement, getDraggableStates, initializeDraggable, removeDraggable } from "../internal/draggable/index.mjs";
5
5
  import { setAttribute } from "@oscarpalmer/toretto/attribute";
6
6
  import { dispatch, getEventPosition, on } from "@oscarpalmer/toretto/event";
7
7
  import { isHTMLOrSVGElement } from "@oscarpalmer/toretto/is";
8
8
  import { getStyles, setStyle, setStyles } from "@oscarpalmer/toretto/style";
9
+ import { noop } from "@oscarpalmer/atoms/function";
9
10
  //#region src/js/movable/movable.embedded.ts
10
11
  function OuiMovable(element, options) {
11
12
  const style = getStyles(element, ["inset", "position"]);
@@ -21,10 +22,10 @@ function OuiMovable(element, options) {
21
22
  onAfter: afterDirection
22
23
  },
23
24
  drag: {
24
- onBegin,
25
25
  onCancel,
26
26
  onEnd,
27
- onMove
27
+ onMove,
28
+ onBegin: noop
28
29
  },
29
30
  input: options,
30
31
  position: {
@@ -71,25 +72,26 @@ function destroyMovable() {
71
72
  setStyles(element, style);
72
73
  destroyDraggable(this);
73
74
  }
74
- function getOffsetPosition(globals, _, __, position) {
75
+ function getOffsetPosition(_, __, position) {
76
+ const { element } = draggableGlobals;
75
77
  return {
76
- x: position.x - (globals.element?.rectangle.left ?? 0),
77
- y: position.y - (globals.element?.rectangle.top ?? 0)
78
+ x: position.x - (element?.rectangle.left ?? 0),
79
+ y: position.y - (element?.rectangle.top ?? 0)
78
80
  };
79
81
  }
80
- function getOriginalPosition(globals) {
82
+ function getOriginalPosition() {
83
+ const { element } = draggableGlobals;
81
84
  return {
82
- x: globals.element?.rectangle.left ?? 0,
83
- y: globals.element?.rectangle.top ?? 0
85
+ x: element?.rectangle.left ?? 0,
86
+ y: element?.rectangle.top ?? 0
84
87
  };
85
88
  }
86
89
  function initializeContainer(item) {
87
90
  resizer.observe(item.state.container);
88
91
  }
89
- function onBegin() {}
90
- function onCancel(globals, item) {
92
+ function onCancel(item) {
91
93
  const { element, moved, style } = item.state;
92
- const { x, y } = globals.original ?? {
94
+ const { x, y } = draggableGlobals.original ?? {
93
95
  x: 0,
94
96
  y: 0
95
97
  };
@@ -97,7 +99,7 @@ function onCancel(globals, item) {
97
99
  else setStyles(element, style);
98
100
  element.removeAttribute(MOVABLE_ATTRIBUTE_MOVING);
99
101
  }
100
- function onEnd(event, globals, item, reset) {
102
+ function onEnd(event, item, reset) {
101
103
  const movable = item.instance;
102
104
  const state = item.state;
103
105
  state.element.removeAttribute(MOVABLE_ATTRIBUTE_MOVING);
@@ -108,15 +110,16 @@ function onEnd(event, globals, item, reset) {
108
110
  const container = state.container?.getBoundingClientRect();
109
111
  if (container != null) setOffset(state, container);
110
112
  if (dispatch(state.element, "oui:movable:end", { detail: {
111
- from: { ...globals.original },
113
+ from: { ...draggableGlobals.original },
112
114
  to: getEventPosition(event)
113
- } }).defaultPrevented) onCancel(globals, item);
115
+ } }).defaultPrevented) onCancel(item);
114
116
  reset();
115
117
  }
116
- function onMove(_, globals, __, position) {
117
- setAttribute(globals.element?.node, MOVABLE_ATTRIBUTE_MOVING, "");
118
+ function onMove(_, __, position) {
119
+ const { element, original } = draggableGlobals;
120
+ setAttribute(element?.node, MOVABLE_ATTRIBUTE_MOVING, "");
118
121
  return {
119
- from: { ...globals.original },
122
+ from: { ...original },
120
123
  to: { ...position.calculated }
121
124
  };
122
125
  }
@@ -1,2 +1,2 @@
1
- import { a as MOVABLE_ATTRIBUTE_MOVING, c as MOVABLE_MOVED, d as OuiMovableState, f as OuiMovableStyle, i as MOVABLE_ATTRIBUTE_HANDLE, l as MOVABLE_SELECTOR_HANDLE, n as MOVABLE_ATTRIBUTE_CONTAINER, o as MOVABLE_CONTAINERS, r as MOVABLE_ATTRIBUTE_DIRECTION, s as MOVABLE_MESSAGE, t as MOVABLE_ATTRIBUTE, u as OuiMovable } from "../movable.model-BHaK_mKw.mjs";
1
+ import { a as MOVABLE_ATTRIBUTE_MOVING, c as MOVABLE_MOVED, d as OuiMovableState, f as OuiMovableStyle, i as MOVABLE_ATTRIBUTE_HANDLE, l as MOVABLE_SELECTOR_HANDLE, n as MOVABLE_ATTRIBUTE_CONTAINER, o as MOVABLE_CONTAINERS, r as MOVABLE_ATTRIBUTE_DIRECTION, s as MOVABLE_MESSAGE, t as MOVABLE_ATTRIBUTE, u as OuiMovable } from "../movable.model-D9nnPWKk.mjs";
2
2
  export { MOVABLE_ATTRIBUTE, MOVABLE_ATTRIBUTE_CONTAINER, MOVABLE_ATTRIBUTE_DIRECTION, MOVABLE_ATTRIBUTE_HANDLE, MOVABLE_ATTRIBUTE_MOVING, MOVABLE_CONTAINERS, MOVABLE_MESSAGE, MOVABLE_MOVED, MOVABLE_SELECTOR_HANDLE, OuiMovable, OuiMovableState, OuiMovableStyle };
@@ -1,3 +1,3 @@
1
- import { p as CreateOuiDraggableOptions, u as OuiMovable } from "../movable.model-BHaK_mKw.mjs";
2
- import { t as createMovable } from "../movable.embedded-DoyXLegc.mjs";
1
+ import { p as CreateOuiDraggableOptions, u as OuiMovable } from "../movable.model-D9nnPWKk.mjs";
2
+ import { t as createMovable } from "../movable.embedded-C1bDTLGs.mjs";
3
3
  export { type CreateOuiDraggableOptions as CreateOuiMovableOptions, type OuiMovable, createMovable };
@@ -1,4 +1,4 @@
1
- import { p as CreateOuiDraggableOptions, u as OuiMovable } from "./movable.model-BHaK_mKw.mjs";
1
+ import { p as CreateOuiDraggableOptions, u as OuiMovable } from "./movable.model-D9nnPWKk.mjs";
2
2
  //#region src/js/movable/movable.embedded.d.ts
3
3
  /**
4
4
  * Creates _(or retrieves)_ a _OuiMovable_ instance for an element
@@ -6,6 +6,6 @@ import { p as CreateOuiDraggableOptions, u as OuiMovable } from "./movable.model
6
6
  * @param element Element to make movable
7
7
  * @returns _OuiMovable_ instance
8
8
  */
9
- declare function createMovable(element: HTMLElement, options?: CreateOuiDraggableOptions): OuiMovable;
9
+ declare function createMovable(element: Element, options?: CreateOuiDraggableOptions): OuiMovable;
10
10
  //#endregion
11
11
  export { createMovable as t };
@@ -7,15 +7,15 @@ type OuiSortable = {
7
7
  } & OuiDraggable<OuiSortableState>;
8
8
  type OuiSortablePlaceholder = {
9
9
  drag: OuiSortablePlaceholderDrag;
10
- position: HTMLElement | undefined;
10
+ position: Element | undefined;
11
11
  };
12
12
  type OuiSortablePlaceholderDrag = {
13
- custom: HTMLElement | undefined;
14
- default: HTMLElement | undefined;
13
+ custom: Element | SVGElement | undefined;
14
+ default: Element | undefined;
15
15
  };
16
16
  type OuiSortableState = {
17
17
  connections: string | null | undefined;
18
- origin?: HTMLElement;
18
+ origin?: Element;
19
19
  };
20
20
  declare const SORTABLE_ATTRIBUTE = "oui-sortable";
21
21
  declare const SORTABLE_ATTRIBUTE_ACTIVE: string;
@@ -38,99 +38,99 @@ type CreateOuiDraggableOptions = {
38
38
  /**
39
39
  * Container to hold the draggable element and restrict its movement within. Can be `body`, `document`, `window`, a _CSS_ selector, or an element. _(If not provided, the draggable element will not have any constraints)_
40
40
  */
41
- container?: string | HTMLElement;
41
+ container?: string | Element;
42
42
  /**
43
43
  * Direction in which the element can be dragged. _(If not provided, the element can be dragged in any direction)_
44
44
  */
45
45
  direction?: OuiDraggableDirection;
46
46
  };
47
47
  type OuiDraggableDirection = "horizontal" | "vertical" | "x" | "y";
48
- interface OuiDraggable<ExtraState extends PlainObject = PlainObject> {
49
- [DRAGGABLE_SYMBOL]: OuiDraggableState & ExtraState;
50
- get element(): HTMLElement;
48
+ interface OuiDraggable<ExtraState extends PlainObject> {
49
+ [DRAGGABLE_SYMBOL]: OuiDraggableState<ExtraState>;
50
+ get element(): Element;
51
51
  destroy(): void;
52
52
  }
53
- type OuiDragBegin<State extends PlainObject = PlainObject> = (event: MouseEvent | TouchEvent, globals: OuiDraggableGlobals, item: OuiDraggableItem<State>, element: HTMLElement, handle: HTMLElement, position: EventPosition) => void;
54
- type OuiDragCancel<State extends PlainObject = PlainObject> = (globals: OuiDraggableGlobals, item: OuiDraggableItem<State>) => void;
55
- type OuiDragEnd<State extends PlainObject = PlainObject> = (event: MouseEvent | TouchEvent, globals: OuiDraggableGlobals, item: OuiDraggableItem<State>, reset: () => void) => void;
56
- type OuiDragMove<State extends PlainObject = PlainObject> = (event: MouseEvent | TouchEvent, globals: OuiDraggableGlobals, item: OuiDraggableItem<State>, position: OuiDragMovePosition) => PlainObject | undefined;
53
+ type OuiDragBegin<State extends PlainObject> = (event: MouseEvent | TouchEvent, item: OuiDraggableItem<State>, element: Element, handle: Element, position: EventPosition) => void;
54
+ type OuiDragCancel<State extends PlainObject> = (item: OuiDraggableItem<State>) => void;
55
+ type OuiDragEnd<State extends PlainObject> = (event: MouseEvent | TouchEvent, item: OuiDraggableItem<State>, reset: () => void) => void;
56
+ type OuiDragMove<State extends PlainObject> = (event: MouseEvent | TouchEvent, item: OuiDraggableItem<State>, position: OuiDragMovePosition) => PlainObject | undefined;
57
57
  type OuiDragMovePosition = {
58
58
  calculated: EventPosition;
59
59
  original: EventPosition;
60
60
  };
61
61
  type OuiDraggableBound<Property extends keyof OuiDraggableInstances = keyof OuiDraggableInstances, Instance extends OuiDraggableInstances[Property] = OuiDraggableInstances[Property]> = {
62
- constructor: new (element: HTMLElement, options?: CreateOuiDraggableOptions) => Instance;
62
+ constructor: new (element: Element, options?: CreateOuiDraggableOptions) => Instance;
63
63
  property: Property;
64
64
  };
65
65
  type OuiDraggableGlobals = {
66
66
  container?: DOMRect;
67
67
  element?: OuiDraggableGlobalsElement;
68
- instances: WeakMap<HTMLElement, OuiDraggableInstances>;
68
+ instances: WeakMap<Element, OuiDraggableInstances>;
69
69
  offset?: EventPosition;
70
70
  original?: EventPosition;
71
- states: WeakMap<HTMLElement, OuiDraggableStates>;
71
+ states: WeakMap<Element, OuiDraggableStates>;
72
72
  };
73
73
  type OuiDraggableGlobalsElement = {
74
- node: HTMLElement;
74
+ node: Element;
75
75
  rectangle: DOMRect;
76
76
  };
77
77
  type OuiDraggableInstances = {
78
78
  movable?: OuiMovable;
79
79
  sortable?: OuiSortable;
80
80
  };
81
- type OuiDraggableItem<ExtraState extends PlainObject = PlainObject> = {
81
+ type OuiDraggableItem<ExtraState extends PlainObject> = {
82
82
  instance: OuiDraggable<ExtraState>;
83
- state: OuiDraggableState & ExtraState;
83
+ state: OuiDraggableState<ExtraState>;
84
84
  };
85
- type OuiDraggableOptions<ExtraState extends PlainObject = PlainObject> = {
85
+ type OuiDraggableOptions<ExtraState extends PlainObject> = {
86
86
  container: OuiDraggableOptionsContainer<ExtraState>;
87
87
  direction: OuiDraggableOptionsDirection<ExtraState>;
88
88
  drag: OuiDraggableOptionsDrag<ExtraState>;
89
89
  input?: CreateOuiDraggableOptions;
90
90
  position: OuiDraggableOptionsPosition<ExtraState>;
91
- getDragged(): HTMLElement;
92
- getOrigin(): HTMLElement | undefined;
91
+ getDragged(): Element;
92
+ getOrigin(): Element | undefined;
93
93
  };
94
- type OuiDraggableOptionsContainer<ExtraState extends PlainObject = PlainObject> = {
94
+ type OuiDraggableOptionsContainer<ExtraState extends PlainObject> = {
95
95
  attribute: string;
96
- map: Map<HTMLElement, Set<OuiDraggable>>;
96
+ map: Map<Element, Set<OuiDraggable<ExtraState>>>;
97
97
  onDestroy?: OuiDraggableOptionsContainerOnDestroy<ExtraState>;
98
- onInitialize?: OuiDraggableOptionsContainerOnInitialize;
98
+ onInitialize?: OuiDraggableOptionsContainerOnInitialize<ExtraState>;
99
99
  };
100
- type OuiDraggableOptionsContainerOnDestroy<ExtraState extends PlainObject = PlainObject> = (item: OuiDraggableItem<ExtraState>, container: HTMLElement, empty: boolean) => void;
101
- type OuiDraggableOptionsContainerOnInitialize<ExtraState extends PlainObject = PlainObject> = (item: OuiDraggableItem<ExtraState>) => void;
102
- type OuiDraggableOptionsDirection<ExtraState extends PlainObject = PlainObject> = {
100
+ type OuiDraggableOptionsContainerOnDestroy<ExtraState extends PlainObject> = (item: OuiDraggableItem<ExtraState>, container: Element, empty: boolean) => void;
101
+ type OuiDraggableOptionsContainerOnInitialize<ExtraState extends PlainObject> = (item: OuiDraggableItem<ExtraState>) => void;
102
+ type OuiDraggableOptionsDirection<ExtraState extends PlainObject> = {
103
103
  attribute: string;
104
104
  onAfter?: OuiDraggableOptionsDirectionOnAfter<ExtraState>;
105
105
  };
106
- type OuiDraggableOptionsDirectionOnAfter<ExtraState extends PlainObject = PlainObject> = (item: OuiDraggableItem<ExtraState>) => void;
107
- type OuiDraggableOptionsDrag<ExtraState extends PlainObject = PlainObject> = {
106
+ type OuiDraggableOptionsDirectionOnAfter<ExtraState extends PlainObject> = (item: OuiDraggableItem<ExtraState>) => void;
107
+ type OuiDraggableOptionsDrag<ExtraState extends PlainObject> = {
108
108
  onBegin: OuiDragBegin<ExtraState>;
109
109
  onCancel: OuiDragCancel<ExtraState>;
110
110
  onEnd: OuiDragEnd<ExtraState>;
111
111
  onMove: OuiDragMove<ExtraState>;
112
112
  };
113
- type OuiDraggableOptionsPosition<ExtraState extends PlainObject = PlainObject> = {
113
+ type OuiDraggableOptionsPosition<ExtraState extends PlainObject> = {
114
114
  getOffset: OuiDraggableOptionsPositionGetOffset<ExtraState>;
115
115
  getOriginal: OuiDraggableOptionsPositionGetOriginal<ExtraState>;
116
116
  };
117
- type OuiDraggableOptionsPositionGetOffset<ExtraState extends PlainObject = PlainObject> = (globals: OuiDraggableGlobals, item: OuiDraggableItem<ExtraState>, element: HTMLElement, position: EventPosition) => EventPosition;
118
- type OuiDraggableOptionsPositionGetOriginal<ExtraState extends PlainObject = PlainObject> = (globals: OuiDraggableGlobals, item: OuiDraggableItem<ExtraState>, position: EventPosition) => EventPosition;
119
- type OuiDraggableState = {
117
+ type OuiDraggableOptionsPositionGetOffset<ExtraState extends PlainObject> = (item: OuiDraggableItem<ExtraState>, element: Element, position: EventPosition) => EventPosition;
118
+ type OuiDraggableOptionsPositionGetOriginal<ExtraState extends PlainObject> = (item: OuiDraggableItem<ExtraState>, position: EventPosition) => EventPosition;
119
+ type OuiDraggableState<ExtraState extends PlainObject> = {
120
120
  attribute: string;
121
- container?: HTMLElement;
121
+ container?: Element;
122
122
  destroyed: boolean;
123
- element: HTMLElement;
123
+ element: Element;
124
124
  hasHandles?: boolean;
125
125
  horizontal: boolean;
126
126
  name: keyof OuiDraggableStates;
127
- options: OuiDraggableOptions;
127
+ options: OuiDraggableOptions<ExtraState>;
128
128
  styling: StyleToggler;
129
129
  vertical: boolean;
130
- };
130
+ } & ExtraState;
131
131
  type OuiDraggableStates = {
132
- movable?: OuiDraggableState;
133
- sortable?: OuiDraggableState;
132
+ movable?: OuiDraggableState<{}>;
133
+ sortable?: OuiDraggableState<{}>;
134
134
  };
135
135
  declare const DRAGGABLE_ATTRIBUTE_MOVABLE = "oui-movable";
136
136
  declare const DRAGGABLE_ATTRIBUTE_SORTABLE = "oui-sortable";
@@ -157,7 +157,7 @@ type OuiMovable = {
157
157
  /**
158
158
  * The movable element
159
159
  */
160
- get element(): HTMLElement;
160
+ get element(): Element;
161
161
  /**
162
162
  * Destroy the movable
163
163
  */
@@ -178,7 +178,7 @@ declare const MOVABLE_ATTRIBUTE_CONTAINER: string;
178
178
  declare const MOVABLE_ATTRIBUTE_DIRECTION: string;
179
179
  declare const MOVABLE_ATTRIBUTE_HANDLE: string;
180
180
  declare const MOVABLE_ATTRIBUTE_MOVING: string;
181
- declare const MOVABLE_CONTAINERS: Map<HTMLElement, Set<OuiMovable>>;
181
+ declare const MOVABLE_CONTAINERS: Map<Element, Set<OuiMovable>>;
182
182
  declare const MOVABLE_MESSAGE = "The element must be an instance of HTMLElement or SVGElement";
183
183
  declare const MOVABLE_MOVED: Set<OuiMovable>;
184
184
  declare const MOVABLE_SELECTOR_HANDLE: string;
@@ -25,7 +25,7 @@ type OuiNavigableOptions = {
25
25
  type OuiNavigableOrientation = "horizontal" | "vertical";
26
26
  type OuiNavigableState = {
27
27
  active: OuiNavigableActive;
28
- element: HTMLElement;
28
+ element: Element;
29
29
  listeners: RemovableEventListener[];
30
30
  options: OuiNavigableOptions;
31
31
  orientation: OuiNavigableOrientation;