@oscarpalmer/oui 0.37.0 → 0.39.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 (183) hide show
  1. package/dist/css/a11y.css +1 -0
  2. package/dist/css/badge.css +12 -8
  3. package/dist/css/button.css +111 -14
  4. package/dist/css/color-picker.css +859 -0
  5. package/dist/css/color.css +86 -87
  6. package/dist/css/combobox.css +105 -4
  7. package/dist/css/content.css +8 -6
  8. package/dist/css/floatable.css +3 -3
  9. package/dist/css/form.css +106 -6
  10. package/dist/css/icon.css +99 -0
  11. package/dist/css/listbox.css +5 -0
  12. package/dist/css/message.css +6 -3
  13. package/dist/css/mixins/badge.mixins.css +2 -0
  14. package/dist/css/mixins/button.mixins.css +3 -0
  15. package/dist/css/mixins/message.mixins.css +1 -0
  16. package/dist/css/mixins/misc.mixins.css +2 -0
  17. package/dist/css/mixins/shadow.mixins.css +1 -0
  18. package/dist/css/reset.css +3 -3
  19. package/dist/css/splitter.css +1 -1
  20. package/dist/css/tabs.css +115 -23
  21. package/dist/css/typography.css +90 -0
  22. package/dist/js/color-picker/constants.color-picker.d.mts +2 -0
  23. package/dist/js/color-picker/constants.color-picker.mjs +59 -0
  24. package/dist/js/color-picker/dom.color-picker.d.mts +8 -0
  25. package/dist/js/color-picker/dom.color-picker.mjs +191 -0
  26. package/dist/js/color-picker/event.color-picker.d.mts +9 -0
  27. package/dist/js/color-picker/event.color-picker.mjs +2 -0
  28. package/dist/js/color-picker/form.color-picker.d.mts +5 -0
  29. package/dist/js/color-picker/form.color-picker.mjs +24 -0
  30. package/dist/js/color-picker/index.d.mts +2 -0
  31. package/dist/js/color-picker/index.mjs +303 -0
  32. package/dist/js/color-picker/misc.color-picker.d.mts +2 -0
  33. package/dist/js/color-picker/misc.color-picker.mjs +2 -0
  34. package/dist/js/color-picker/models.color-picker.d.mts +2 -0
  35. package/dist/js/color-picker/models.color-picker.mjs +24 -0
  36. package/dist/js/color-picker/output.color-picker.d.mts +8 -0
  37. package/dist/js/color-picker/output.color-picker.mjs +233 -0
  38. package/dist/js/color-picker/state.color-picker.d.mts +8 -0
  39. package/dist/js/color-picker/state.color-picker.mjs +2 -0
  40. package/dist/js/combobox/constants.combobox.d.mts +1 -1
  41. package/dist/js/combobox/dom.combobox.d.mts +12 -13
  42. package/dist/js/combobox/dom.combobox.mjs +12 -5
  43. package/dist/js/combobox/event.combobox.d.mts +20 -21
  44. package/dist/js/combobox/event.combobox.mjs +1 -1
  45. package/dist/js/combobox/index.d.mts +1 -1
  46. package/dist/js/combobox/index.mjs +56 -2
  47. package/dist/js/combobox/misc.combobox.d.mts +1 -1
  48. package/dist/js/combobox/misc.combobox.mjs +1 -1
  49. package/dist/js/combobox/models.combobox.d.mts +12 -13
  50. package/dist/js/combobox/state.combobox.d.mts +8 -9
  51. package/dist/js/combobox/state.combobox.mjs +1 -1
  52. package/dist/js/constants.color-picker-B-gFjL8m.d.mts +364 -0
  53. package/dist/js/constants.combobox-8EMRmv09.d.mts +18 -0
  54. package/dist/js/constants.listbox-DGnX32kv.d.mts +8 -0
  55. package/dist/js/dialog.d.mts +2 -2
  56. package/dist/js/dialog.mjs +1 -1
  57. package/dist/js/{draggable-a6w0J1OD.d.mts → draggable-B5-70SZm.d.mts} +5 -4
  58. package/dist/js/event.color-picker-BEpq0Adu.mjs +485 -0
  59. package/dist/js/floatable/floatable.embedded.d.mts +1 -1
  60. package/dist/js/floatable/floatable.embedded.mjs +11 -8
  61. package/dist/js/floatable/floatable.standalone.d.mts +1 -1
  62. package/dist/js/{floatable.embedded-Bct4U5Dm.d.mts → floatable.embedded-DQYkXt8X.d.mts} +1 -1
  63. package/dist/js/focus-trap/focus-trap.embedded.d.mts +1 -1
  64. package/dist/js/focus-trap/focus-trap.standalone.d.mts +1 -1
  65. package/dist/js/{focus-trap.embedded-DR8NpZfr.d.mts → focus-trap.embedded-CjyFQYow.d.mts} +2 -2
  66. package/dist/js/{index-EfkUSals.d.mts → index-C5D3-oiI.d.mts} +41 -3
  67. package/dist/js/index.d.mts +8 -7
  68. package/dist/js/index.mjs +6 -3
  69. package/dist/js/internal/attributable.d.mts +2 -3
  70. package/dist/js/internal/draggable.d.mts +1 -1
  71. package/dist/js/internal/draggable.mjs +1 -1
  72. package/dist/js/internal/listbox/listbox.constants.d.mts +7 -10
  73. package/dist/js/internal/listbox/listbox.constants.mjs +15 -16
  74. package/dist/js/internal/listbox/listbox.data.d.mts +9 -10
  75. package/dist/js/internal/listbox/listbox.data.mjs +1 -1
  76. package/dist/js/internal/listbox/listbox.dom.d.mts +19 -20
  77. package/dist/js/internal/listbox/listbox.dom.mjs +1 -1
  78. package/dist/js/internal/listbox/listbox.event.d.mts +3 -4
  79. package/dist/js/internal/listbox/listbox.event.mjs +4 -4
  80. package/dist/js/internal/listbox/listbox.form.d.mts +4 -5
  81. package/dist/js/internal/listbox/listbox.form.mjs +16 -15
  82. package/dist/js/internal/listbox/listbox.misc.d.mts +10 -11
  83. package/dist/js/internal/listbox/listbox.misc.mjs +1 -1
  84. package/dist/js/internal/listbox/listbox.model.d.mts +1 -1
  85. package/dist/js/internal/listbox/listbox.state.d.mts +5 -6
  86. package/dist/js/internal/listbox/listbox.state.mjs +3 -3
  87. package/dist/js/internal/misc.d.mts +4 -4
  88. package/dist/js/internal/misc.mjs +9 -1
  89. package/dist/js/internal/navigable.d.mts +9 -10
  90. package/dist/js/internal/navigable.mjs +1 -0
  91. package/dist/js/listbox/constants.listbox.d.mts +1 -1
  92. package/dist/js/listbox/event.listbox.d.mts +6 -7
  93. package/dist/js/listbox/event.listbox.mjs +1 -1
  94. package/dist/js/listbox/index.d.mts +43 -5
  95. package/dist/js/listbox/index.mjs +56 -2
  96. package/dist/js/listbox/misc.listbox.d.mts +1 -1
  97. package/dist/js/listbox/misc.listbox.mjs +1 -1
  98. package/dist/js/listbox/state.listbox.d.mts +7 -8
  99. package/dist/js/listbox/state.listbox.mjs +1 -1
  100. package/dist/js/{listbox.data-BWd0PCy7.mjs → listbox.data-DQ7-x2uY.mjs} +8 -7
  101. package/dist/js/{listbox.model-CRReGOmu.d.mts → listbox.model-BHPA7GM4.d.mts} +3 -3
  102. package/dist/js/menu.mjs +1 -1
  103. package/dist/js/{misc.listbox-BI-XsTOf.mjs → misc.listbox-DKB-j0UK.mjs} +4 -5
  104. package/dist/js/{misc.listbox-gnoJhrTr.d.mts → misc.listbox-mZMuYOxg.d.mts} +1 -1
  105. package/dist/js/movable/movable.embedded.d.mts +1 -1
  106. package/dist/js/movable/movable.standalone.d.mts +1 -1
  107. package/dist/js/popover.d.mts +2 -2
  108. package/dist/js/popover.mjs +1 -1
  109. package/dist/js/resizable/resizable.embedded.d.mts +1 -1
  110. package/dist/js/resizable/resizable.embedded.mjs +1 -1
  111. package/dist/js/resizable/resizable.standalone.d.mts +1 -1
  112. package/dist/js/{resizable.embedded-3qoR0Bjm.d.mts → resizable.embedded-dvhdfQgt.d.mts} +1 -1
  113. package/dist/js/sortable/sortable.embedded.d.mts +1 -1
  114. package/dist/js/sortable/sortable.standalone.d.mts +1 -1
  115. package/dist/js/splitter.d.mts +2 -3
  116. package/dist/js/splitter.mjs +2 -2
  117. package/dist/js/{state.combobox-4xq0FPCF.mjs → state.combobox-BWDFHwoi.mjs} +9 -9
  118. package/dist/js/tabs.d.mts +4 -5
  119. package/dist/js/tabs.mjs +4 -7
  120. package/dist/js/tooltip.d.mts +1 -1
  121. package/package.json +24 -22
  122. package/dist/js/constants.combobox-DmRAMC64.d.mts +0 -26
  123. package/dist/js/constants.listbox-DRsXUxd3.d.mts +0 -14
  124. package/src/css/a11y.scss +0 -13
  125. package/src/css/badge.scss +0 -62
  126. package/src/css/button.scss +0 -50
  127. package/src/css/color.scss +0 -115
  128. package/src/css/combobox.scss +0 -252
  129. package/src/css/content.scss +0 -180
  130. package/src/css/flex.scss +0 -107
  131. package/src/css/floatable.scss +0 -152
  132. package/src/css/form.scss +0 -573
  133. package/src/css/listbox.scss +0 -120
  134. package/src/css/message.scss +0 -73
  135. package/src/css/mixins.scss +0 -419
  136. package/src/css/reset.scss +0 -392
  137. package/src/css/splitter.scss +0 -89
  138. package/src/css/table.scss +0 -107
  139. package/src/css/tabs.scss +0 -85
  140. package/src/js/combobox/constants.combobox.ts +0 -83
  141. package/src/js/combobox/dom.combobox.ts +0 -407
  142. package/src/js/combobox/event.combobox.ts +0 -365
  143. package/src/js/combobox/index.ts +0 -320
  144. package/src/js/combobox/misc.combobox.ts +0 -104
  145. package/src/js/combobox/models.combobox.ts +0 -54
  146. package/src/js/combobox/state.combobox.ts +0 -246
  147. package/src/js/dialog.ts +0 -255
  148. package/src/js/floatable/floatable.embedded.ts +0 -332
  149. package/src/js/floatable/floatable.standalone.ts +0 -6
  150. package/src/js/focus-trap/focus-trap.embedded.ts +0 -411
  151. package/src/js/focus-trap/focus-trap.standalone.ts +0 -1
  152. package/src/js/index.ts +0 -15
  153. package/src/js/internal/attributable.ts +0 -73
  154. package/src/js/internal/draggable.ts +0 -657
  155. package/src/js/internal/listbox/listbox.constants.ts +0 -25
  156. package/src/js/internal/listbox/listbox.data.ts +0 -287
  157. package/src/js/internal/listbox/listbox.dom.ts +0 -445
  158. package/src/js/internal/listbox/listbox.event.ts +0 -129
  159. package/src/js/internal/listbox/listbox.form.ts +0 -115
  160. package/src/js/internal/listbox/listbox.misc.ts +0 -135
  161. package/src/js/internal/listbox/listbox.model.ts +0 -169
  162. package/src/js/internal/listbox/listbox.state.ts +0 -82
  163. package/src/js/internal/misc.ts +0 -27
  164. package/src/js/internal/navigable.ts +0 -315
  165. package/src/js/l10n.ts +0 -192
  166. package/src/js/listbox/constants.listbox.ts +0 -61
  167. package/src/js/listbox/event.listbox.ts +0 -106
  168. package/src/js/listbox/index.ts +0 -302
  169. package/src/js/listbox/misc.listbox.ts +0 -70
  170. package/src/js/listbox/state.listbox.ts +0 -196
  171. package/src/js/menu.ts +0 -348
  172. package/src/js/movable/movable.embedded.ts +0 -318
  173. package/src/js/movable/movable.standalone.ts +0 -2
  174. package/src/js/popover.ts +0 -229
  175. package/src/js/resizable/resizable.embedded.ts +0 -413
  176. package/src/js/resizable/resizable.standalone.ts +0 -5
  177. package/src/js/sortable/sortable.embedded.ts +0 -527
  178. package/src/js/sortable/sortable.standalone.ts +0 -2
  179. package/src/js/splitter.ts +0 -583
  180. package/src/js/tabs.ts +0 -447
  181. package/src/js/toolbar.ts +0 -63
  182. package/src/js/tooltip.ts +0 -367
  183. /package/dist/css/{mixins.css → mixins/input.mixins.css} +0 -0
@@ -1,7 +1,7 @@
1
- import { C as setListboxDisabled, D as setListboxReadonly, O as setListboxRequired, T as setListboxLimit, a as setListboxValue, o as setListboxValues, w as setListboxFilter } from "../listbox.data-BWd0PCy7.mjs";
1
+ import { C as setListboxDisabled, D as setListboxReadonly, O as setListboxRequired, T as setListboxLimit, a as setListboxValue, o as setListboxValues, w as setListboxFilter } from "../listbox.data-DQ7-x2uY.mjs";
2
2
  import { attachListbox, detachListbox } from "../internal/listbox/listbox.state.mjs";
3
3
  import { LISTBOX_TAGNAME } from "./constants.listbox.mjs";
4
- import { c as onDetachListbox, i as createListboxState, n as setListboxLocalizations, o as listboxStates, r as updateListboxLocalizations, s as onAttachListbox } from "../misc.listbox-BI-XsTOf.mjs";
4
+ import { c as onDetachListbox, i as createListboxState, n as setListboxLocalizations, o as listboxStates, r as updateListboxLocalizations, s as onAttachListbox } from "../misc.listbox-DKB-j0UK.mjs";
5
5
  import { getAttribute } from "@oscarpalmer/toretto/attribute";
6
6
  import { parse } from "@oscarpalmer/atoms/string";
7
7
  //#region src/js/listbox/index.ts
@@ -41,6 +41,18 @@ var OuiListboxElement = class extends HTMLElement {
41
41
  setListboxFilter(this.#state, value);
42
42
  }
43
43
  /**
44
+ * Form element associated with the listbox
45
+ */
46
+ get form() {
47
+ return this.#internals.form;
48
+ }
49
+ /**
50
+ * Label elements associated with the listbox
51
+ */
52
+ get labels() {
53
+ return this.#internals.labels;
54
+ }
55
+ /**
44
56
  * Maximum number of selected options
45
57
  */
46
58
  get max() {
@@ -107,6 +119,18 @@ var OuiListboxElement = class extends HTMLElement {
107
119
  return this.#state.options.selected.slice();
108
120
  }
109
121
  /**
122
+ * Validation message for the listbox
123
+ */
124
+ get validationMessage() {
125
+ return this.#internals.validationMessage;
126
+ }
127
+ /**
128
+ * Validity state for the listbox
129
+ */
130
+ get validity() {
131
+ return this.#internals.validity;
132
+ }
133
+ /**
110
134
  * Current value
111
135
  */
112
136
  get value() {
@@ -130,6 +154,12 @@ var OuiListboxElement = class extends HTMLElement {
130
154
  set values(values) {
131
155
  setListboxValues(this.#state, values);
132
156
  }
157
+ /**
158
+ * Can the listbox be validated?
159
+ */
160
+ get willValidate() {
161
+ return this.#internals.willValidate;
162
+ }
133
163
  constructor() {
134
164
  super();
135
165
  this.#internals = this.attachInternals();
@@ -148,6 +178,14 @@ var OuiListboxElement = class extends HTMLElement {
148
178
  }
149
179
  }
150
180
  /**
181
+ * Check if the listbox is valid
182
+ *
183
+ * @returns `true` if the listbox is valid, otherwise `false`
184
+ */
185
+ checkValidity() {
186
+ return this.#internals.checkValidity();
187
+ }
188
+ /**
151
189
  * Clear all selected options
152
190
  */
153
191
  clear() {
@@ -173,6 +211,22 @@ var OuiListboxElement = class extends HTMLElement {
173
211
  if (this.#state == null) this.#restored = parsed;
174
212
  else setListboxValues(this.#state, parsed);
175
213
  }
214
+ /**
215
+ * Check if the listbox is valid and report any validation errors
216
+ *
217
+ * @returns `true` if the listbox is valid, otherwise `false`
218
+ */
219
+ reportValidity() {
220
+ return this.#internals.reportValidity();
221
+ }
222
+ /**
223
+ * Set a custom validation message for the listbox
224
+ *
225
+ * @param message Validation message
226
+ */
227
+ setCustomValidity(message) {
228
+ this.#internals.setValidity({ customError: message !== "" }, message, this);
229
+ }
176
230
  setLocalizations(first, second) {
177
231
  updateListboxLocalizations(this.#state.localizations.global, this.#state.localizations.component, first, second);
178
232
  }
@@ -1,2 +1,2 @@
1
- import { n as setListboxLocalizations, r as updateListboxLocalizations, t as getListboxId } from "../misc.listbox-gnoJhrTr.mjs";
1
+ import { n as setListboxLocalizations, r as updateListboxLocalizations, t as getListboxId } from "../misc.listbox-mZMuYOxg.mjs";
2
2
  export { getListboxId, setListboxLocalizations, updateListboxLocalizations };
@@ -1,2 +1,2 @@
1
- import { n as setListboxLocalizations, r as updateListboxLocalizations, t as getListboxId } from "../misc.listbox-BI-XsTOf.mjs";
1
+ import { n as setListboxLocalizations, r as updateListboxLocalizations, t as getListboxId } from "../misc.listbox-DKB-j0UK.mjs";
2
2
  export { getListboxId, setListboxLocalizations, updateListboxLocalizations };
@@ -1,11 +1,10 @@
1
1
  import { t as OuiLocalizations } from "../l10n-Bn-7RcwR.mjs";
2
- import { l as OuiListboxState, o as OuiListboxLocalizations, u as OuiListboxStates } from "../listbox.model-CRReGOmu.mjs";
2
+ import { l as OuiListboxState, o as OuiListboxLocalizations, u as OuiListboxStates } from "../listbox.model-BHPA7GM4.mjs";
3
3
  import { OuiListboxElement } from "./index.mjs";
4
4
  //#region src/js/listbox/state.listbox.d.ts
5
- declare function createListboxState(element: OuiListboxElement, internals: ElementInternals): OuiListboxState;
6
- declare function onAttachListbox(state: OuiListboxState): void;
7
- declare function onDetachListbox(state: OuiListboxState): void;
8
- declare const listboxLocalizations: OuiLocalizations<OuiListboxLocalizations>;
9
- declare const listboxStates: OuiListboxStates;
10
- //#endregion
11
- export { createListboxState, listboxLocalizations, listboxStates, onAttachListbox, onDetachListbox };
5
+ export declare function createListboxState(element: OuiListboxElement, internals: ElementInternals): OuiListboxState;
6
+ export declare function onAttachListbox(state: OuiListboxState): void;
7
+ export declare function onDetachListbox(state: OuiListboxState): void;
8
+ export declare const listboxLocalizations: OuiLocalizations<OuiListboxLocalizations>;
9
+ export declare const listboxStates: OuiListboxStates;
10
+ //#endregion
@@ -1,2 +1,2 @@
1
- import { a as listboxLocalizations, c as onDetachListbox, i as createListboxState, o as listboxStates, s as onAttachListbox } from "../misc.listbox-BI-XsTOf.mjs";
1
+ import { a as listboxLocalizations, c as onDetachListbox, i as createListboxState, o as listboxStates, s as onAttachListbox } from "../misc.listbox-DKB-j0UK.mjs";
2
2
  export { createListboxState, listboxLocalizations, listboxStates, onAttachListbox, onDetachListbox };
@@ -5,8 +5,8 @@ import { setAria } from "@oscarpalmer/toretto/aria";
5
5
  import { dispatch } from "@oscarpalmer/toretto/event";
6
6
  import { setAttribute } from "@oscarpalmer/toretto/attribute";
7
7
  import { getString } from "@oscarpalmer/atoms/string";
8
- import { getData } from "@oscarpalmer/toretto/data";
9
8
  import { createElement, setAria as setAria$1, setAttribute as setAttribute$1 } from "@oscarpalmer/toretto";
9
+ import { getData as getData$1 } from "@oscarpalmer/toretto/data";
10
10
  //#region src/js/internal/listbox/listbox.misc.ts
11
11
  function generateListboxIds(prefix, select) {
12
12
  const elements = [...select.children].flatMap((child) => child instanceof HTMLOptGroupElement ? [child, ...[...child.children].filter((groupChild) => groupChild instanceof HTMLOptionElement)] : child instanceof HTMLOptionElement ? [child] : []);
@@ -134,13 +134,14 @@ function createListboxInput(parameters, value) {
134
134
  autocorrect: "off",
135
135
  autocomplete: "off",
136
136
  form: "",
137
- spellcheck: "false",
138
- type: "text"
137
+ inputmode: "text",
138
+ spellcheck: "false"
139
139
  },
140
140
  property: {
141
141
  id,
142
142
  value,
143
- role: isAutocomplete || listbox ? "combobox" : "searchbox"
143
+ role: isAutocomplete || listbox ? "combobox" : "searchbox",
144
+ type: "text"
144
145
  }
145
146
  });
146
147
  if (isAutocomplete || listbox) setAria$1(input, "expanded", listbox);
@@ -299,7 +300,7 @@ function applyListboxSelection(parameters) {
299
300
  const option = state.options.all[index];
300
301
  setAria(option, "selected", (state.type === "select" || !state.autocomplete.none) && (selected ?? state.options.selected).includes(option));
301
302
  }
302
- const values = parameters.values ?? (state.autocomplete.none && !state.listbox ? [state.filter.element.value] : (selected ?? state.options.selected).map((option) => getData(option, "value", false) ?? ""));
303
+ const values = parameters.values ?? (state.autocomplete.none && !state.listbox ? [state.filter.element.value] : (selected ?? state.options.selected).map((option) => getData$1(option, "value", false) ?? ""));
303
304
  if (values.length === 0) values.push("");
304
305
  if (selected != null) state.options.selected = selected;
305
306
  if (!(values.length === state.values.current.length ? values.some((value) => !state.values.current.includes(value)) : true)) return;
@@ -330,7 +331,7 @@ function filterListboxOption(state, value, textContent) {
330
331
  let match;
331
332
  for (let index = 0; index < length; index += 1) {
332
333
  const option = state.options.all[index];
333
- if ((filterTextContent ? option.textContent : getData(option, "value", false) ?? "").toLocaleLowerCase() === filter) {
334
+ if ((filterTextContent ? option.textContent : getData$1(option, "value", false) ?? "").toLocaleLowerCase() === filter) {
334
335
  match = option;
335
336
  break;
336
337
  }
@@ -384,7 +385,7 @@ function setListboxValues(state, value, emit) {
384
385
  const selected = [];
385
386
  for (let index = 0; index < length; index += 1) {
386
387
  const option = state.options.all[index];
387
- if (values.includes(getData(option, "value", false)?.toLocaleLowerCase() ?? "")) selected.push(option);
388
+ if (values.includes(getData$1(option, "value", false)?.toLocaleLowerCase() ?? "")) selected.push(option);
388
389
  }
389
390
  applyListboxSelection({
390
391
  emit,
@@ -17,7 +17,7 @@ type OuiListboxAttributes = {
17
17
  type OuiListboxAutoComplete = Record<OuiListboxAutoCompleteType, boolean> & {
18
18
  value?: OuiListboxAutoCompleteType;
19
19
  };
20
- type OuiListboxAutoCompleteType = 'both' | 'inline' | 'list' | 'none';
20
+ type OuiListboxAutoCompleteType = "both" | "inline" | "list" | "none";
21
21
  type OuiListboxCallbacks<State extends OuiListboxState = OuiListboxState> = {
22
22
  data: OuiListboxCallbacksData<State>;
23
23
  keydown: OuiListboxCallbacksKeydown<State>;
@@ -79,7 +79,7 @@ type OuiListboxOptions = {
79
79
  all: HTMLElement[];
80
80
  selected: HTMLElement[];
81
81
  };
82
- type OuiListboxPreview = 'none' | 'set' | 'typed';
82
+ type OuiListboxPreview = "none" | "set" | "typed";
83
83
  type OuiListboxState = {
84
84
  active?: HTMLElement;
85
85
  attributes: OuiListboxAttributes;
@@ -115,7 +115,7 @@ type OuiListboxStates<State extends OuiListboxState = OuiListboxState> = {
115
115
  map: WeakMap<HTMLElement, State>;
116
116
  set: Set<State>;
117
117
  };
118
- type OuiListboxType = 'autocomplete' | 'select';
118
+ type OuiListboxType = "autocomplete" | "select";
119
119
  type OuiListboxValues = {
120
120
  current: string[];
121
121
  initial: string[];
package/dist/js/menu.mjs CHANGED
@@ -121,7 +121,7 @@ function onDeactivate(_, navigable) {
121
121
  }
122
122
  function onPreventNavigation(_, navigable) {
123
123
  const instance = menubars.get(navigable.element) ?? menus.get(navigable.element);
124
- return findAncestor(instance?.element.parentElement, SELECTORS) != null;
124
+ return instance == null ? false : findAncestor(instance.element.parentElement, SELECTORS) != null;
125
125
  }
126
126
  function onShouldActivate(event, navigable) {
127
127
  let activate = false;
@@ -1,14 +1,14 @@
1
1
  import { getLocalizations, updateLocalizations } from "./l10n.mjs";
2
- import { b as updateListboxValueLabel, c as createListboxContent, n as filterListbox, s as toggleListboxOption, t as applyListboxSelection, v as updateListboxMessage, x as generateListboxIds, y as updateListboxPreview } from "./listbox.data-BWd0PCy7.mjs";
3
- import { initializeListboxState } from "./internal/listbox/listbox.state.mjs";
4
2
  import { getBooleanAriaValue } from "./internal/misc.mjs";
3
+ import { b as updateListboxValueLabel, c as createListboxContent, n as filterListbox, s as toggleListboxOption, t as applyListboxSelection, v as updateListboxMessage, x as generateListboxIds, y as updateListboxPreview } from "./listbox.data-DQ7-x2uY.mjs";
4
+ import { initializeListboxState } from "./internal/listbox/listbox.state.mjs";
5
5
  import { processListboxKeydown } from "./internal/listbox/listbox.event.mjs";
6
6
  import { LISTBOX_ATTRIBUTES, LISTBOX_MESSAGES, LISTBOX_SELECTORS, LISTBOX_TAGNAME } from "./listbox/constants.listbox.mjs";
7
7
  import { on } from "@oscarpalmer/toretto/event";
8
- import { setAttribute, setAttributes } from "@oscarpalmer/toretto/attribute";
8
+ import { setAttributes } from "@oscarpalmer/toretto/attribute";
9
9
  import { findAncestor } from "@oscarpalmer/toretto/find";
10
- import { getData } from "@oscarpalmer/toretto/data";
11
10
  import { noop } from "@oscarpalmer/atoms/function";
11
+ import { getData } from "@oscarpalmer/toretto/data";
12
12
  //#region src/js/listbox/event.listbox.ts
13
13
  function onListboxClick(event) {
14
14
  const listbox = findAncestor(event, LISTBOX_TAGNAME);
@@ -59,7 +59,6 @@ function createListboxState(element, internals) {
59
59
  const label = element.querySelector(`label[for="${select.id}"]`);
60
60
  if (label == null) throw new Error(LISTBOX_MESSAGES.label);
61
61
  element.id = select.id;
62
- setAttribute(element, "name", select.name === "" ? select.id : select.name);
63
62
  const disabled = getBooleanAriaValue(element, "disabled") || select.disabled;
64
63
  const multiple = element.multiple || select.multiple;
65
64
  const readonly = getBooleanAriaValue(element, "readonly");
@@ -1,5 +1,5 @@
1
1
  import { t as OuiLocalizations } from "./l10n-Bn-7RcwR.mjs";
2
- import { o as OuiListboxLocalizations } from "./listbox.model-CRReGOmu.mjs";
2
+ import { o as OuiListboxLocalizations } from "./listbox.model-BHPA7GM4.mjs";
3
3
  //#region src/js/listbox/misc.listbox.d.ts
4
4
  declare function getListboxId(): string;
5
5
  /**
@@ -1,2 +1,2 @@
1
- import { g as createMovable, h as OuiMovable, m as ATTRIBUTE_MOVABLE_HANDLE, p as ATTRIBUTE_MOVABLE } from "../draggable-a6w0J1OD.mjs";
1
+ import { g as createMovable, h as OuiMovable, m as ATTRIBUTE_MOVABLE_HANDLE, p as ATTRIBUTE_MOVABLE } from "../draggable-B5-70SZm.mjs";
2
2
  export { ATTRIBUTE_MOVABLE, ATTRIBUTE_MOVABLE_HANDLE, OuiMovable, createMovable };
@@ -1,2 +1,2 @@
1
- import { g as createMovable, h as OuiMovable, t as CreateOuiDraggableOptions } from "../draggable-a6w0J1OD.mjs";
1
+ import { g as createMovable, h as OuiMovable, t as CreateOuiDraggableOptions } from "../draggable-B5-70SZm.mjs";
2
2
  export { type CreateOuiDraggableOptions as CreateOuiMovableOptions, type OuiMovable, createMovable };
@@ -1,5 +1,5 @@
1
- import { r as OuiFloatable } from "./floatable.embedded-Bct4U5Dm.mjs";
2
- import { i as OuiFocusTrap } from "./focus-trap.embedded-DR8NpZfr.mjs";
1
+ import { r as OuiFloatable } from "./floatable.embedded-DQYkXt8X.mjs";
2
+ import { i as OuiFocusTrap } from "./focus-trap.embedded-CjyFQYow.mjs";
3
3
  import { RemovableEventListener } from "@oscarpalmer/toretto/models";
4
4
  //#region src/js/popover.d.ts
5
5
  declare class OuiPopover {
@@ -74,7 +74,7 @@ function getState(anchor, content) {
74
74
  anchor,
75
75
  content,
76
76
  floatable: createEmbeddedFloatable(anchor, content, options),
77
- focusTrap: getAria(content, "modal") === "true" ? createFocusTrap(content, { noescape: true }) : void 0,
77
+ focusTrap: getAria(content, "modal") === true ? createFocusTrap(content, { noescape: true }) : void 0,
78
78
  listeners: [getOnBeforeToggleListener(content), on(content, "toggle", (event) => {
79
79
  const expanded = event.newState === "open";
80
80
  if (expanded) {
@@ -1,2 +1,2 @@
1
- import { a as createResizable, i as RESIZABLE_ATTRIBUTE_HANDLE, n as OuiResizable, r as RESIZABLE_ATTRIBUTE, t as CreateOuiResizableOptions } from "../resizable.embedded-3qoR0Bjm.mjs";
1
+ import { a as createResizable, i as RESIZABLE_ATTRIBUTE_HANDLE, n as OuiResizable, r as RESIZABLE_ATTRIBUTE, t as CreateOuiResizableOptions } from "../resizable.embedded-dvhdfQgt.mjs";
2
2
  export { CreateOuiResizableOptions, OuiResizable, RESIZABLE_ATTRIBUTE, RESIZABLE_ATTRIBUTE_HANDLE, createResizable };
@@ -6,7 +6,7 @@ import { isHTMLOrSVGElement } from "@oscarpalmer/toretto/is";
6
6
  import { setStyles, toggleStyles } from "@oscarpalmer/toretto/style";
7
7
  import { getNumber } from "@oscarpalmer/atoms/number";
8
8
  import { findAncestor } from "@oscarpalmer/toretto/find";
9
- import supportsTouch from "@oscarpalmer/toretto/touch";
9
+ import { supportsTouch } from "@oscarpalmer/toretto/touch";
10
10
  //#region src/js/resizable/resizable.embedded.ts
11
11
  var OuiResizable = class {
12
12
  #state;
@@ -1,2 +1,2 @@
1
- import { a as createResizable, n as OuiResizable, t as CreateOuiResizableOptions } from "../resizable.embedded-3qoR0Bjm.mjs";
1
+ import { a as createResizable, n as OuiResizable, t as CreateOuiResizableOptions } from "../resizable.embedded-dvhdfQgt.mjs";
2
2
  export { type CreateOuiResizableOptions, type OuiResizable, createResizable as createOuiResizable };
@@ -29,6 +29,6 @@ type OuiResizableState = {
29
29
  */
30
30
  declare function createResizable(element: HTMLElement, options?: CreateOuiResizableOptions): OuiResizable;
31
31
  declare const RESIZABLE_ATTRIBUTE = "oui-resizable";
32
- declare const RESIZABLE_ATTRIBUTE_HANDLE = "oui-resizable-handle";
32
+ declare const RESIZABLE_ATTRIBUTE_HANDLE: string;
33
33
  //#endregion
34
34
  export { createResizable as a, RESIZABLE_ATTRIBUTE_HANDLE as i, OuiResizable as n, RESIZABLE_ATTRIBUTE as r, CreateOuiResizableOptions as t };
@@ -1,2 +1,2 @@
1
- import { d as OuiSortable, f as createSortable } from "../draggable-a6w0J1OD.mjs";
1
+ import { d as OuiSortable, f as createSortable } from "../draggable-B5-70SZm.mjs";
2
2
  export { OuiSortable, createSortable };
@@ -1,2 +1,2 @@
1
- import { d as OuiSortable, f as createSortable, t as CreateOuiDraggableOptions } from "../draggable-a6w0J1OD.mjs";
1
+ import { d as OuiSortable, f as createSortable, t as CreateOuiDraggableOptions } from "../draggable-B5-70SZm.mjs";
2
2
  export { type CreateOuiDraggableOptions as CreateOuiSortableOptions, type OuiSortable, createSortable };
@@ -4,7 +4,7 @@ declare global {
4
4
  [TAGNAME]: OuiSplitterElement;
5
5
  }
6
6
  }
7
- declare class OuiSplitterElement extends HTMLElement {
7
+ export declare class OuiSplitterElement extends HTMLElement {
8
8
  #private;
9
9
  static readonly observedAttributes: string[];
10
10
  /**
@@ -45,5 +45,4 @@ declare class OuiSplitterElement extends HTMLElement {
45
45
  attributeChangedCallback(name: string): void;
46
46
  }
47
47
  declare const TAGNAME = "oui-splitter";
48
- //#endregion
49
- export { OuiSplitterElement };
48
+ //#endregion
@@ -5,9 +5,9 @@ import { getAttribute, setAttribute } from "@oscarpalmer/toretto/attribute";
5
5
  import { setStyle, toggleStyles } from "@oscarpalmer/toretto/style";
6
6
  import { clamp } from "@oscarpalmer/atoms/number";
7
7
  import { findAncestor } from "@oscarpalmer/toretto/find";
8
- import supportsTouch from "@oscarpalmer/toretto/touch";
9
- import { createElement } from "@oscarpalmer/toretto/create";
8
+ import { supportsTouch } from "@oscarpalmer/toretto/touch";
10
9
  import { round } from "@oscarpalmer/atoms/math";
10
+ import { createElement } from "@oscarpalmer/toretto/create";
11
11
  //#region src/js/splitter.ts
12
12
  const ATTRIBUTE_MAX = "max";
13
13
  const ATTRIBUTE_MIN = "min";
@@ -1,19 +1,19 @@
1
1
  import { createEmbeddedFloatable } from "./floatable/floatable.embedded.mjs";
2
2
  import { getLocalizations, updateLocalizations } from "./l10n.mjs";
3
- import { LISTBOX_KEYS, LISTBOX_TYPES } from "./internal/listbox/listbox.constants.mjs";
4
- import { b as updateListboxValueLabel, i as filterListboxOptions, n as filterListbox, r as filterListboxOption, s as toggleListboxOption, t as applyListboxSelection, v as updateListboxMessage, x as generateListboxIds, y as updateListboxPreview } from "./listbox.data-BWd0PCy7.mjs";
3
+ import { getAttributeValue, getBooleanAriaValue } from "./internal/misc.mjs";
4
+ import { LISTBOX_KEYS_ACTIVATION, LISTBOX_TYPES } from "./internal/listbox/listbox.constants.mjs";
5
+ import { b as updateListboxValueLabel, i as filterListboxOptions, n as filterListbox, r as filterListboxOption, s as toggleListboxOption, t as applyListboxSelection, v as updateListboxMessage, x as generateListboxIds, y as updateListboxPreview } from "./listbox.data-DQ7-x2uY.mjs";
5
6
  import { initializeListboxState } from "./internal/listbox/listbox.state.mjs";
6
7
  import { COMBOBOX_ATTRIBUTES, COMBOBOX_ATTRIBUTE_SELECTION_ITEM, COMBOBOX_AUTOCOMPLETES, COMBOBOX_MESSAGES, COMBOBOX_SELECTORS, COMBOBOX_TAGNAME } from "./combobox/constants.combobox.mjs";
7
- import { getAttributeValue, getBooleanAriaValue } from "./internal/misc.mjs";
8
8
  import { createComboboxAnchor, createComboboxContent, updateComboboxAutocomplete, updateComboboxSelection, updateComboboxSelectionItems, updateComboboxTabindices } from "./combobox/dom.combobox.mjs";
9
9
  import { processListboxKeydown } from "./internal/listbox/listbox.event.mjs";
10
10
  import { setAria } from "@oscarpalmer/toretto/aria";
11
11
  import { on } from "@oscarpalmer/toretto/event";
12
12
  import { setAttributes } from "@oscarpalmer/toretto/attribute";
13
13
  import { clamp } from "@oscarpalmer/atoms/number";
14
- import { getData } from "@oscarpalmer/toretto/data";
15
- import { findAncestor, getData as getData$1 } from "@oscarpalmer/toretto";
16
14
  import { noop } from "@oscarpalmer/atoms/function";
15
+ import { findAncestor, getData } from "@oscarpalmer/toretto";
16
+ import { getData as getData$1 } from "@oscarpalmer/toretto/data";
17
17
  //#region src/js/combobox/misc.combobox.ts
18
18
  function getComboboxAutoComplete(element, select) {
19
19
  let value;
@@ -81,7 +81,7 @@ function onComboboxClickDocument(event) {
81
81
  }
82
82
  const selection = findAncestor(event, `[${COMBOBOX_ATTRIBUTE_SELECTION_ITEM}]`);
83
83
  if (selection != null) {
84
- const option = state.options.selected.find((option) => option.id === getData$1(selection, "option", false));
84
+ const option = state.options.selected.find((option) => option.id === getData(selection, "option", false));
85
85
  if (state.disabled) state.anchor.element.focus();
86
86
  else if (state.readonly) updateComboboxTabindices(state, option);
87
87
  else toggleListboxOption(state, option);
@@ -136,7 +136,7 @@ function onComboboxKeydown(event) {
136
136
  else processListboxKeydown(event, state);
137
137
  }
138
138
  function onComboboxKeydownSelection(event, state, item) {
139
- if (LISTBOX_KEYS.activation.has(event.key)) {
139
+ if (LISTBOX_KEYS_ACTIVATION.has(event.key)) {
140
140
  event.preventDefault();
141
141
  onComboboxRemoveSelection(state, item);
142
142
  return;
@@ -173,7 +173,7 @@ function onComboboxPreview(preview, state, active) {
173
173
  }
174
174
  function onComboboxRemoveSelection(state, item) {
175
175
  if (state.disabled || state.readonly) return;
176
- const option = state.options.selected.find((option) => option.id === getData$1(item, "option", false));
176
+ const option = state.options.selected.find((option) => option.id === getData(item, "option", false));
177
177
  if (option != null) toggleListboxOption(state, option);
178
178
  }
179
179
  function onComboboxNavigation(preview, state, active) {
@@ -242,7 +242,7 @@ function createComboboxState(element, internals) {
242
242
  const anchor = createComboboxAnchor(parameters);
243
243
  const content = createComboboxContent(parameters);
244
244
  const { selected } = content.list.options;
245
- const values = selected.length === 0 ? [""] : selected.map((option) => getData(option, "value", false) ?? "");
245
+ const values = selected.length === 0 ? [""] : selected.map((option) => getData$1(option, "value", false) ?? "");
246
246
  const state = {
247
247
  autocomplete,
248
248
  disabled,
@@ -4,12 +4,12 @@ declare global {
4
4
  [TAGNAME]: OuiTabsElement;
5
5
  }
6
6
  }
7
- declare class OuiTabsEvent extends Event {
7
+ export declare class OuiTabsEvent extends Event {
8
8
  oldIndex: number;
9
9
  newIndex: number;
10
- constructor(name: 'oui:beforechange' | 'oui:change', oldIndex: number, newIndex: number, cancelable: boolean);
10
+ constructor(name: "oui:beforechange" | "oui:change", oldIndex: number, newIndex: number, cancelable: boolean);
11
11
  }
12
- declare class OuiTabsElement extends HTMLElement {
12
+ export declare class OuiTabsElement extends HTMLElement {
13
13
  #private;
14
14
  static observedAttributes: string[];
15
15
  get active(): number;
@@ -21,5 +21,4 @@ declare class OuiTabsElement extends HTMLElement {
21
21
  disconnectedCallback(): void;
22
22
  }
23
23
  declare const TAGNAME = "oui-tabs";
24
- //#endregion
25
- export { OuiTabsElement, OuiTabsEvent };
24
+ //#endregion
package/dist/js/tabs.mjs CHANGED
@@ -67,7 +67,7 @@ function attachTabs(state) {
67
67
  }
68
68
  }
69
69
  function createContent(prefix, panels, active) {
70
- const content = createElement("div", { attribute: { [ATTRIBUTE_CONTENT]: "" } });
70
+ const content = createElement("div", { attribute: { [`${TAGNAME}-content`]: "" } });
71
71
  const { length } = panels;
72
72
  const hidden = [];
73
73
  const roles = [];
@@ -93,7 +93,7 @@ function createTab(prefix, index, panel, label, selected) {
93
93
  selected,
94
94
  controls: panel.id
95
95
  },
96
- attribute: { [ATTRIBUTE_TAB]: "" },
96
+ attribute: { [`${TAGNAME}-tab`]: "" },
97
97
  property: {
98
98
  id: `${prefix}_tab_${index}`,
99
99
  role: "tab",
@@ -105,7 +105,7 @@ function createTab(prefix, index, panel, label, selected) {
105
105
  }
106
106
  function createTabList(prefix, panels, labels, active) {
107
107
  const element = createElement("div", {
108
- attribute: { [ATTRIBUTE_TABLIST]: "" },
108
+ attribute: { [`${TAGNAME}-tablist`]: "" },
109
109
  property: { role: "tablist" }
110
110
  });
111
111
  const { length } = panels;
@@ -226,14 +226,11 @@ function setActive(state, value) {
226
226
  }
227
227
  }
228
228
  const TAGNAME = "oui-tabs";
229
- const ATTRIBUTE_CONTENT = `${TAGNAME}-content`;
230
229
  const ATTRIBUTE_PANEL = `${TAGNAME}-panel`;
231
- const ATTRIBUTE_TAB = `${TAGNAME}-tab`;
232
- const ATTRIBUTE_TABLIST = `${TAGNAME}-tablist`;
233
230
  const MESSAGE_EMPTY = `<${TAGNAME}> must contain at least one [${ATTRIBUTE_PANEL}] child element`;
234
231
  const MESSAGE_INVALID = `A [${ATTRIBUTE_PANEL}] child element of <${TAGNAME}> must have a valid 'aria-label' or 'aria-labelledby' attribute`;
235
232
  const SELECTOR_PANEL = `:scope > [${ATTRIBUTE_PANEL}]`;
236
- const SELECTOR_TAB = `[${ATTRIBUTE_TAB}]`;
233
+ const SELECTOR_TAB = `[${TAGNAME}-tab]`;
237
234
  let index = 0;
238
235
  customElements.define(TAGNAME, OuiTabsElement);
239
236
  //#endregion
@@ -1,4 +1,4 @@
1
- import { r as OuiFloatable } from "./floatable.embedded-Bct4U5Dm.mjs";
1
+ import { r as OuiFloatable } from "./floatable.embedded-DQYkXt8X.mjs";
2
2
  //#region src/js/tooltip.d.ts
3
3
  declare class OuiTooltip {
4
4
  #private;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oscarpalmer/oui",
3
- "version": "0.37.0",
3
+ "version": "0.39.0",
4
4
  "description": "Styles, components, and utilities for building websites and applications.",
5
5
  "keywords": [
6
6
  "css",
@@ -22,8 +22,7 @@
22
22
  "url": "git+https://github.com/oscarpalmer/oui.git"
23
23
  },
24
24
  "files": [
25
- "dist",
26
- "src"
25
+ "dist"
27
26
  ],
28
27
  "type": "module",
29
28
  "module": "dist/js/index.mjs",
@@ -90,34 +89,37 @@
90
89
  "build": "vp run clean && vp pack && vp run css:build",
91
90
  "clean": "rm -rf ./dist && rm -rf ./postcss",
92
91
  "css:build": "vp run postcss:build && vpx sass ./postcss:./dist/css --no-source-map",
93
- "css:watch": "vpx sass ./postcss:./dist/css --no-source-map --watch",
94
- "postcss:build": "vpx postcss ./src/css/*.scss -d ./postcss -u autoprefixer postcss-input-range --parser postcss-scss",
95
- "postcss:watch": "vpx postcss ./src/css/*.scss -d ./postcss -u autoprefixer postcss-input-range --parser postcss-scss --watch",
92
+ "css:watch": "concurrently \"vpx sass ./postcss:./demo/public/assets/css --no-source-map --watch\" \"vpx sass ./demo/app/css/styles.scss:./demo/public/assets/css/styles.css --no-source-map --watch\"",
93
+ "postcss:build": "vpx postcss ./src/css/**/*.scss --base ./src/css -d ./postcss -u autoprefixer postcss-input-range --parser postcss-scss",
94
+ "postcss:watch": "vpx postcss ./src/css/**/*.scss --base ./src/css -d ./postcss -u autoprefixer postcss-input-range --parser postcss-scss --watch",
96
95
  "test": "vpx vitest --coverage",
97
96
  "tsdown": "vpx tsdown -c ./tsdown.config.ts --watch",
98
- "watch": "vp run clean && concurrently \"php -S localhost:3000\" \"vp run postcss:watch\" \"vp run css:watch\" \"vp run tsdown\""
97
+ "watch": "concurrently \"cd ./demo/public && php -qS localhost:4567 \" \"vp run postcss:watch\" \"vp run css:watch\" \"vp run tsdown\""
99
98
  },
100
99
  "dependencies": {
101
- "@oscarpalmer/atoms": "^0.188.1",
102
- "@oscarpalmer/toretto": "^0.51"
100
+ "@oscarpalmer/atoms": "^0.216",
101
+ "@oscarpalmer/toretto": "^0.56"
103
102
  },
104
103
  "devDependencies": {
105
- "@oxlint/plugins": "^1.78",
106
- "@vitest/coverage-istanbul": "^4.1",
107
- "autoprefixer": "^10.5",
104
+ "@vitest/coverage-istanbul": "5.0.1",
105
+ "autoprefixer": "^10.6",
108
106
  "concurrently": "^10",
109
- "jsdom": "^30",
110
- "postcss-cli": "^11",
107
+ "jsdom": "^30.1",
108
+ "postcss-cli": "^12",
111
109
  "postcss-input-range": "^6",
112
110
  "postcss-scss": "^4",
113
- "sass": "^1.102",
114
- "stylelint": "^17.14",
111
+ "sass": "^1.105",
112
+ "stylelint": "^17.16",
115
113
  "stylelint-config-standard-scss": "^17",
116
- "tsdown": "^0.22",
117
- "typescript": "^6",
118
- "vite": "npm:@voidzero-dev/vite-plus-core@latest",
119
- "vite-plus": "latest",
120
- "vitest": "npm:@voidzero-dev/vite-plus-test@latest"
114
+ "tsdown": "^0.23",
115
+ "typescript": "^7",
116
+ "vite": "npm:@voidzero-dev/vite-plus-core@1.0.0",
117
+ "vite-plus": "1.0.0",
118
+ "vitest": "5.0.1"
121
119
  },
122
- "packageManager": "npm@11.12.1"
120
+ "packageManager": "npm@11.12.1",
121
+ "overrides": {
122
+ "vite": "npm:@voidzero-dev/vite-plus-core@1.0.0",
123
+ "vitest": "5.0.1"
124
+ }
123
125
  }
@@ -1,26 +0,0 @@
1
- import { r as OuiListboxAutoCompleteType, t as OuiListboxAttributes } from "./listbox.model-CRReGOmu.mjs";
2
- //#region src/js/combobox/constants.combobox.d.ts
3
- declare const COMBOBOX_TAGNAME = "oui-combobox";
4
- declare const COMBOBOX_ATTRIBUTE_ANCHOR = "oui-combobox-anchor";
5
- declare const COMBOBOX_ATTRIBUTE_SELECTION = "oui-combobox-selection";
6
- declare const COMBOBOX_ATTRIBUTE_SELECTION_ITEM = "oui-combobox-selection-item";
7
- declare const COMBOBOX_AUTOCOMPLETES: Set<OuiListboxAutoCompleteType>;
8
- declare const messageLabel = "<oui-combobox> must contain a <label> element for the <select> element";
9
- declare const messageSelect = "<oui-combobox> must contain a valid <select> element";
10
- declare const selectorAnchor = "[oui-combobox-anchor]";
11
- declare const selectorContent = "[oui-combobox-content]";
12
- declare const selectorOption = "[oui-combobox-option]";
13
- declare const selectorSelectionItem = "[oui-combobox-selection-item]";
14
- declare const COMBOBOX_ATTRIBUTES: OuiListboxAttributes;
15
- declare const COMBOBOX_MESSAGES: {
16
- label: string;
17
- select: string;
18
- };
19
- declare const COMBOBOX_SELECTORS: {
20
- anchor: string;
21
- content: string;
22
- selectionItem: string;
23
- option: string;
24
- };
25
- //#endregion
26
- export { COMBOBOX_AUTOCOMPLETES as a, COMBOBOX_TAGNAME as c, selectorAnchor as d, selectorContent as f, COMBOBOX_ATTRIBUTE_SELECTION_ITEM as i, messageLabel as l, selectorSelectionItem as m, COMBOBOX_ATTRIBUTE_ANCHOR as n, COMBOBOX_MESSAGES as o, selectorOption as p, COMBOBOX_ATTRIBUTE_SELECTION as r, COMBOBOX_SELECTORS as s, COMBOBOX_ATTRIBUTES as t, messageSelect as u };
@@ -1,14 +0,0 @@
1
- import { t as OuiListboxAttributes } from "./listbox.model-CRReGOmu.mjs";
2
- //#region src/js/listbox/constants.listbox.d.ts
3
- declare const LISTBOX_TAGNAME = "oui-listbox";
4
- declare const LISTBOX_ATTRIBUTES: OuiListboxAttributes;
5
- declare const LISTBOX_MESSAGES: {
6
- label: string;
7
- select: string;
8
- };
9
- declare const LISTBOX_SELECTORS: {
10
- filter: string;
11
- option: string;
12
- };
13
- //#endregion
14
- export { LISTBOX_TAGNAME as i, LISTBOX_MESSAGES as n, LISTBOX_SELECTORS as r, LISTBOX_ATTRIBUTES as t };
package/src/css/a11y.scss DELETED
@@ -1,13 +0,0 @@
1
- /*! https://github.com/oscarpalmer/oui */
2
-
3
- @use './mixins' as mixins;
4
-
5
- .oui-vh {
6
- :where(&) {
7
- position: absolute !important;
8
- }
9
-
10
- :where(&:not(:active, :focus, :focus-within)) {
11
- @include mixins.visually-hidden;
12
- }
13
- }