@oscarpalmer/oui 0.39.0 → 0.40.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 (182) hide show
  1. package/README.md +1 -1
  2. package/dist/js/color-picker/color-picker.constants.d.mts +2 -0
  3. package/dist/js/color-picker/{constants.color-picker.mjs → color-picker.constants.mjs} +5 -4
  4. package/dist/js/color-picker/{dom.color-picker.d.mts → color-picker.dom.d.mts} +2 -2
  5. package/dist/js/color-picker/{dom.color-picker.mjs → color-picker.dom.mjs} +3 -3
  6. package/dist/js/color-picker/{event.color-picker.d.mts → color-picker.event.d.mts} +2 -2
  7. package/dist/js/color-picker/{event.color-picker.mjs → color-picker.event.mjs} +1 -1
  8. package/dist/js/color-picker/{form.color-picker.d.mts → color-picker.form.d.mts} +2 -2
  9. package/dist/js/color-picker/{form.color-picker.mjs → color-picker.form.mjs} +9 -6
  10. package/dist/js/color-picker/color-picker.misc.d.mts +2 -0
  11. package/dist/js/color-picker/{misc.color-picker.mjs → color-picker.misc.mjs} +1 -1
  12. package/dist/js/color-picker/color-picker.model.d.mts +2 -0
  13. package/dist/js/color-picker/{models.color-picker.mjs → color-picker.model.mjs} +1 -1
  14. package/dist/js/color-picker/{output.color-picker.d.mts → color-picker.output.d.mts} +2 -2
  15. package/dist/js/color-picker/{output.color-picker.mjs → color-picker.output.mjs} +13 -11
  16. package/dist/js/color-picker/color-picker.state.d.mts +8 -0
  17. package/dist/js/color-picker/color-picker.state.mjs +2 -0
  18. package/dist/js/color-picker/index.d.mts +180 -2
  19. package/dist/js/color-picker/index.mjs +59 -57
  20. package/dist/js/color-picker.constants-D1mxw_Le.d.mts +179 -0
  21. package/dist/js/{event.color-picker-BEpq0Adu.mjs → color-picker.event-Cksj5TvS.mjs} +105 -90
  22. package/dist/js/color-picker.misc-CtsXGrOe.d.mts +27 -0
  23. package/dist/js/combobox/combobox.constants.d.mts +2 -0
  24. package/dist/js/combobox/{constants.combobox.mjs → combobox.constants.mjs} +21 -21
  25. package/dist/js/combobox/{dom.combobox.d.mts → combobox.dom.d.mts} +3 -3
  26. package/dist/js/combobox/{dom.combobox.mjs → combobox.dom.mjs} +40 -36
  27. package/dist/js/combobox/{event.combobox.d.mts → combobox.event.d.mts} +3 -3
  28. package/dist/js/combobox/{event.combobox.mjs → combobox.event.mjs} +1 -1
  29. package/dist/js/combobox/combobox.misc.d.mts +2 -0
  30. package/dist/js/combobox/{misc.combobox.mjs → combobox.misc.mjs} +1 -1
  31. package/dist/js/combobox/combobox.model.d.mts +2 -0
  32. package/dist/js/combobox/combobox.state.d.mts +10 -0
  33. package/dist/js/combobox/combobox.state.mjs +2 -0
  34. package/dist/js/combobox/index.d.mts +163 -2
  35. package/dist/js/combobox/index.mjs +53 -52
  36. package/dist/js/combobox.constants-DZVkMP5g.d.mts +19 -0
  37. package/dist/js/combobox.misc-C1tPZZDi.d.mts +22 -0
  38. package/dist/js/combobox.model-oDV06XCN.d.mts +44 -0
  39. package/dist/js/{state.combobox-BWDFHwoi.mjs → combobox.state-BfJ3Hxg8.mjs} +94 -80
  40. package/dist/js/constants.listbox-C5Ap6Ag_.d.mts +9 -0
  41. package/dist/js/dialog/dialog.model.d.mts +2 -0
  42. package/dist/js/dialog/dialog.model.mjs +11 -0
  43. package/dist/js/dialog/index.d.mts +12 -0
  44. package/dist/js/dialog/index.mjs +123 -0
  45. package/dist/js/dialog.model-DX2mndMh.d.mts +45 -0
  46. package/dist/js/floatable/floatable.embedded.d.mts +2 -2
  47. package/dist/js/floatable/floatable.embedded.mjs +64 -92
  48. package/dist/js/floatable/floatable.model.d.mts +2 -0
  49. package/dist/js/floatable/floatable.model.mjs +23 -0
  50. package/dist/js/floatable/floatable.standalone.d.mts +2 -1
  51. package/dist/js/floatable.embedded-MeTyXjFn.d.mts +17 -0
  52. package/dist/js/{floatable.embedded-DQYkXt8X.d.mts → floatable.model-DXsQgoU7.d.mts} +13 -20
  53. package/dist/js/focus-trap/focus-trap.embedded.d.mts +2 -2
  54. package/dist/js/focus-trap/focus-trap.embedded.mjs +113 -135
  55. package/dist/js/focus-trap/focus-trap.model.d.mts +2 -0
  56. package/dist/js/focus-trap/focus-trap.model.mjs +15 -0
  57. package/dist/js/focus-trap/focus-trap.standalone.d.mts +2 -1
  58. package/dist/js/focus-trap.embedded-DIU05m1z.d.mts +13 -0
  59. package/dist/js/{focus-trap.embedded-CjyFQYow.d.mts → focus-trap.model-BeX6UYlw.d.mts} +16 -18
  60. package/dist/js/index.d.mts +26 -14
  61. package/dist/js/index.mjs +18 -17
  62. package/dist/js/internal/attributable.mjs +3 -2
  63. package/dist/js/internal/draggable/draggable.model.d.mts +2 -0
  64. package/dist/js/internal/draggable/draggable.model.mjs +37 -0
  65. package/dist/js/internal/draggable/index.d.mts +13 -0
  66. package/dist/js/internal/{draggable.mjs → draggable/index.mjs} +82 -113
  67. package/dist/js/internal/listbox/listbox.constants.d.mts +1 -1
  68. package/dist/js/internal/listbox/listbox.data.d.mts +1 -1
  69. package/dist/js/internal/listbox/listbox.data.mjs +1 -1
  70. package/dist/js/internal/listbox/listbox.dom.d.mts +1 -1
  71. package/dist/js/internal/listbox/listbox.dom.mjs +1 -1
  72. package/dist/js/internal/listbox/listbox.event.d.mts +1 -1
  73. package/dist/js/internal/listbox/listbox.event.mjs +20 -17
  74. package/dist/js/internal/listbox/listbox.form.d.mts +1 -1
  75. package/dist/js/internal/listbox/listbox.form.mjs +15 -12
  76. package/dist/js/internal/listbox/listbox.misc.d.mts +1 -1
  77. package/dist/js/internal/listbox/listbox.misc.mjs +1 -1
  78. package/dist/js/internal/listbox/listbox.model.d.mts +2 -2
  79. package/dist/js/internal/listbox/listbox.state.d.mts +4 -4
  80. package/dist/js/internal/listbox/listbox.state.mjs +19 -20
  81. package/dist/js/internal/misc.d.mts +1 -0
  82. package/dist/js/internal/misc.mjs +4 -6
  83. package/dist/js/internal/navigable/index.d.mts +6 -0
  84. package/dist/js/internal/navigable/index.mjs +125 -0
  85. package/dist/js/internal/navigable/navigable.model.d.mts +2 -0
  86. package/dist/js/internal/navigable/navigable.model.mjs +18 -0
  87. package/dist/js/l10n/index.d.mts +9 -0
  88. package/dist/js/{l10n.mjs → l10n/index.mjs} +50 -23
  89. package/dist/js/l10n/l10n.model.d.mts +2 -0
  90. package/dist/js/l10n/l10n.model.mjs +9 -0
  91. package/dist/js/l10n.model-D6a9frgl.d.mts +26 -0
  92. package/dist/js/listbox/constants.listbox.d.mts +2 -2
  93. package/dist/js/listbox/constants.listbox.mjs +10 -14
  94. package/dist/js/listbox/event.listbox.d.mts +1 -1
  95. package/dist/js/listbox/event.listbox.mjs +47 -1
  96. package/dist/js/listbox/index.d.mts +6 -4
  97. package/dist/js/listbox/index.mjs +47 -49
  98. package/dist/js/listbox/misc.listbox.d.mts +1 -1
  99. package/dist/js/listbox/misc.listbox.mjs +1 -1
  100. package/dist/js/listbox/state.listbox.d.mts +4 -5
  101. package/dist/js/listbox/state.listbox.mjs +2 -2
  102. package/dist/js/{listbox.data-DQ7-x2uY.mjs → listbox.data-BQyZGKgr.mjs} +87 -70
  103. package/dist/js/{listbox.model-BHPA7GM4.d.mts → listbox.model-CuBOj4qe.d.mts} +12 -8
  104. package/dist/js/menu/index.mjs +167 -0
  105. package/dist/js/menu/menu.model.d.mts +33 -0
  106. package/dist/js/menu/menu.model.mjs +15 -0
  107. package/dist/js/{misc.listbox-DKB-j0UK.mjs → misc.listbox-CjfBUbHD.mjs} +25 -67
  108. package/dist/js/{misc.listbox-mZMuYOxg.d.mts → misc.listbox-CtoGvXQo.d.mts} +2 -2
  109. package/dist/js/movable/movable.embedded.d.mts +2 -2
  110. package/dist/js/movable/movable.embedded.mjs +60 -72
  111. package/dist/js/movable/movable.model.d.mts +2 -0
  112. package/dist/js/movable/movable.model.mjs +12 -0
  113. package/dist/js/movable/movable.standalone.d.mts +2 -1
  114. package/dist/js/movable.embedded-DoyXLegc.d.mts +11 -0
  115. package/dist/js/{draggable-B5-70SZm.d.mts → movable.model-BHaK_mKw.d.mts} +81 -50
  116. package/dist/js/navigable.model-BPOM8DZk.d.mts +44 -0
  117. package/dist/js/popover/index.d.mts +12 -0
  118. package/dist/js/{popover.mjs → popover/index.mjs} +41 -51
  119. package/dist/js/popover/popover.model.d.mts +2 -0
  120. package/dist/js/popover/popover.model.mjs +12 -0
  121. package/dist/js/popover.model-ubKNG612.d.mts +38 -0
  122. package/dist/js/resizable/resizable.embedded.d.mts +2 -2
  123. package/dist/js/resizable/resizable.embedded.mjs +43 -58
  124. package/dist/js/resizable/resizable.model.d.mts +2 -0
  125. package/dist/js/resizable/resizable.model.mjs +21 -0
  126. package/dist/js/resizable/resizable.standalone.d.mts +2 -1
  127. package/dist/js/resizable.embedded-Bf1qBUdt.d.mts +11 -0
  128. package/dist/js/resizable.model-BwzJcTVJ.d.mts +46 -0
  129. package/dist/js/sortable/sortable.embedded.d.mts +2 -2
  130. package/dist/js/sortable/sortable.embedded.mjs +69 -82
  131. package/dist/js/sortable/sortable.model.d.mts +2 -0
  132. package/dist/js/sortable/sortable.model.mjs +24 -0
  133. package/dist/js/sortable/sortable.standalone.d.mts +2 -1
  134. package/dist/js/sortable.embedded-DzBKAwSG.d.mts +11 -0
  135. package/dist/js/{splitter.d.mts → splitter/index.d.mts} +6 -4
  136. package/dist/js/{splitter.mjs → splitter/index.mjs} +90 -128
  137. package/dist/js/splitter/splitter.model.d.mts +2 -0
  138. package/dist/js/splitter/splitter.model.mjs +37 -0
  139. package/dist/js/splitter.model-DOLNjLVS.d.mts +57 -0
  140. package/dist/js/{tabs.d.mts → tabs/index.d.mts} +7 -7
  141. package/dist/js/{tabs.mjs → tabs/index.mjs} +58 -58
  142. package/dist/js/tabs/tabs.model.d.mts +2 -0
  143. package/dist/js/tabs/tabs.model.mjs +18 -0
  144. package/dist/js/tabs.model-DRBX_JtI.d.mts +40 -0
  145. package/dist/js/toolbar/index.mjs +27 -0
  146. package/dist/js/toolbar/toolbar.model.d.mts +11 -0
  147. package/dist/js/toolbar/toolbar.model.mjs +7 -0
  148. package/dist/js/tooltip/index.d.mts +19 -0
  149. package/dist/js/{tooltip.mjs → tooltip/index.mjs} +61 -86
  150. package/dist/js/tooltip/tooltip.model.d.mts +2 -0
  151. package/dist/js/tooltip/tooltip.model.mjs +15 -0
  152. package/dist/js/tooltip.model-DRkY_BsL.d.mts +37 -0
  153. package/package.json +30 -24
  154. package/dist/js/color-picker/constants.color-picker.d.mts +0 -2
  155. package/dist/js/color-picker/misc.color-picker.d.mts +0 -2
  156. package/dist/js/color-picker/models.color-picker.d.mts +0 -2
  157. package/dist/js/color-picker/state.color-picker.d.mts +0 -8
  158. package/dist/js/color-picker/state.color-picker.mjs +0 -2
  159. package/dist/js/combobox/constants.combobox.d.mts +0 -2
  160. package/dist/js/combobox/misc.combobox.d.mts +0 -2
  161. package/dist/js/combobox/models.combobox.d.mts +0 -43
  162. package/dist/js/combobox/state.combobox.d.mts +0 -11
  163. package/dist/js/combobox/state.combobox.mjs +0 -2
  164. package/dist/js/constants.color-picker-B-gFjL8m.d.mts +0 -364
  165. package/dist/js/constants.combobox-8EMRmv09.d.mts +0 -18
  166. package/dist/js/constants.listbox-DGnX32kv.d.mts +0 -8
  167. package/dist/js/dialog.d.mts +0 -47
  168. package/dist/js/dialog.mjs +0 -131
  169. package/dist/js/index-C5D3-oiI.d.mts +0 -177
  170. package/dist/js/internal/draggable.d.mts +0 -2
  171. package/dist/js/internal/navigable.d.mts +0 -36
  172. package/dist/js/internal/navigable.mjs +0 -135
  173. package/dist/js/l10n-Bn-7RcwR.d.mts +0 -20
  174. package/dist/js/l10n.d.mts +0 -2
  175. package/dist/js/menu.mjs +0 -172
  176. package/dist/js/popover.d.mts +0 -38
  177. package/dist/js/resizable.embedded-dvhdfQgt.d.mts +0 -34
  178. package/dist/js/toolbar.mjs +0 -31
  179. package/dist/js/tooltip.d.mts +0 -45
  180. /package/dist/js/combobox/{models.combobox.mjs → combobox.model.mjs} +0 -0
  181. /package/dist/js/{menu.d.mts → menu/index.d.mts} +0 -0
  182. /package/dist/js/{toolbar.d.mts → toolbar/index.d.mts} +0 -0
@@ -1,6 +1,6 @@
1
- import { COLOR_PICKER_TAGNAME, colorPickerLocalizations } from "./constants.color-picker.mjs";
2
- import { OuiColorPickerEvent } from "./models.color-picker.mjs";
3
- import { _ as attachColorPicker, b as detachColorPicker, d as setColorPickerLocalizations, f as setColorPickerRequired, g as updateColorPickerLocalizations, p as setColorPickerValue, r as onColorPickerInput, u as setColorPickerDisabled, x as initializeColorPicker } from "../event.color-picker-BEpq0Adu.mjs";
1
+ import { COLOR_PICKER_SYMBOL, COLOR_PICKER_TAGNAME, colorPickerLocalizations } from "./color-picker.constants.mjs";
2
+ import { OuiColorPickerEvent } from "./color-picker.model.mjs";
3
+ import { _ as attachColorPicker, d as setColorPickerLocalizations, f as setColorPickerRequired, g as updateColorPickerLocalizations, p as setColorPickerValue, r as onColorPickerInput, u as setColorPickerDisabled, x as initializeColorPickerComponent, y as detachColorPicker } from "../color-picker.event-Cksj5TvS.mjs";
4
4
  import "@oscarpalmer/atoms/color";
5
5
  //#region src/js/color-picker/index.ts
6
6
  var OuiColorPickerElement = class extends HTMLElement {
@@ -10,56 +10,54 @@ var OuiColorPickerElement = class extends HTMLElement {
10
10
  "required",
11
11
  "value"
12
12
  ];
13
- #internals;
14
- #restored;
15
- #state;
16
13
  /**
17
14
  * Is the color picker disabled?
18
15
  */
19
16
  get disabled() {
20
- return this.#state?.disabled ?? false;
17
+ return this[COLOR_PICKER_SYMBOL]?.component.disabled ?? false;
21
18
  }
22
19
  /**
23
20
  * Should the color picker be disabled?
24
21
  */
25
22
  set disabled(value) {
26
- if (this.#state != null && typeof value === "boolean" && value !== this.#state.disabled) setColorPickerDisabled(this.#state, "disabled", value);
23
+ const state = this[COLOR_PICKER_SYMBOL];
24
+ if (state.component != null && typeof value === "boolean" && value !== state.component.disabled) setColorPickerDisabled(state, "disabled", value);
27
25
  }
28
26
  /**
29
27
  * Form element associated with the color picker
30
28
  */
31
29
  get form() {
32
- return this.#internals.form;
30
+ return this[COLOR_PICKER_SYMBOL].form.internals.form;
33
31
  }
34
32
  /**
35
33
  * Color value as hexadecimal string
36
34
  */
37
35
  get hex() {
38
- return this.#state?.color.value.hex ?? "";
36
+ return this[COLOR_PICKER_SYMBOL]?.component.color.value.hex ?? "";
39
37
  }
40
38
  /**
41
39
  * Set color value from a hexadecimal string
42
40
  */
43
41
  set hex(value) {
44
- setColorPickerValue(this.#state, value, "hex");
42
+ setColorPickerValue(this[COLOR_PICKER_SYMBOL], value, "hex");
45
43
  }
46
44
  /**
47
45
  * Color value as hexadecimal string with alpha channel
48
46
  */
49
47
  get hexa() {
50
- return this.#state?.color.value.hexa ?? "";
48
+ return this[COLOR_PICKER_SYMBOL]?.component.color.value.hexa ?? "";
51
49
  }
52
50
  /**
53
51
  * Set color value from a hexadecimal string with alpha channel
54
52
  */
55
53
  set hexa(value) {
56
- setColorPickerValue(this.#state, value, "hexa");
54
+ setColorPickerValue(this[COLOR_PICKER_SYMBOL], value, "hexa");
57
55
  }
58
56
  /**
59
57
  * Color value as an _HSL_ color object
60
58
  */
61
59
  get hsl() {
62
- return this.#state?.color.value.hsl ?? {
60
+ return this[COLOR_PICKER_SYMBOL]?.component.color.value.hsl ?? {
63
61
  hue: 0,
64
62
  lightness: 0,
65
63
  saturation: 0
@@ -69,13 +67,13 @@ var OuiColorPickerElement = class extends HTMLElement {
69
67
  * Set color value from an _HSL_ color object
70
68
  */
71
69
  set hsl(value) {
72
- setColorPickerValue(this.#state, value, "hsl");
70
+ setColorPickerValue(this[COLOR_PICKER_SYMBOL], value, "hsl");
73
71
  }
74
72
  /**
75
73
  * Color value as an _HSLA_ color object _(HSL with alpha channel)_
76
74
  */
77
75
  get hsla() {
78
- return this.#state?.color.value.hsla ?? {
76
+ return this[COLOR_PICKER_SYMBOL]?.component.color.value.hsla ?? {
79
77
  hue: 0,
80
78
  lightness: 0,
81
79
  saturation: 0,
@@ -86,13 +84,13 @@ var OuiColorPickerElement = class extends HTMLElement {
86
84
  * Set color value from an _HSLA_ color object _(HSL with alpha channel)_
87
85
  */
88
86
  set hsla(value) {
89
- setColorPickerValue(this.#state, value, "hsla");
87
+ setColorPickerValue(this[COLOR_PICKER_SYMBOL], value, "hsla");
90
88
  }
91
89
  /**
92
90
  * Color value as an _HWB_ color object
93
91
  */
94
92
  get hwb() {
95
- return this.#state?.color.value.hwb ?? {
93
+ return this[COLOR_PICKER_SYMBOL]?.component.color.value.hwb ?? {
96
94
  hue: 0,
97
95
  whiteness: 0,
98
96
  blackness: 0
@@ -102,13 +100,13 @@ var OuiColorPickerElement = class extends HTMLElement {
102
100
  * Set color value from an _HWB_ color object
103
101
  */
104
102
  set hwb(value) {
105
- setColorPickerValue(this.#state, value, "hwb");
103
+ setColorPickerValue(this[COLOR_PICKER_SYMBOL], value, "hwb");
106
104
  }
107
105
  /**
108
106
  * Color value as an _HWBA_ color object _(HWB with alpha channel)_
109
107
  */
110
108
  get hwba() {
111
- return this.#state?.color.value.hwba ?? {
109
+ return this[COLOR_PICKER_SYMBOL]?.component.color.value.hwba ?? {
112
110
  hue: 0,
113
111
  whiteness: 0,
114
112
  blackness: 0,
@@ -119,49 +117,51 @@ var OuiColorPickerElement = class extends HTMLElement {
119
117
  * Set color value from an _HWBA_ color object _(HWB with alpha channel)_
120
118
  */
121
119
  set hwba(value) {
122
- setColorPickerValue(this.#state, value, "hwba");
120
+ setColorPickerValue(this[COLOR_PICKER_SYMBOL], value, "hwba");
123
121
  }
124
122
  /**
125
123
  * Text input value
126
124
  */
127
125
  get input() {
128
- return this.#state?.anchor.input.value ?? "";
126
+ return this[COLOR_PICKER_SYMBOL]?.component.anchor.input.value ?? "";
129
127
  }
130
128
  /**
131
129
  * Label elements associated with the color picker
132
130
  */
133
131
  get labels() {
134
- return this.#internals.labels;
132
+ return this[COLOR_PICKER_SYMBOL].form.internals.labels;
135
133
  }
136
134
  /**
137
135
  * Is the color picker readonly?
138
136
  */
139
137
  get readonly() {
140
- return this.#state?.readonly ?? false;
138
+ return this[COLOR_PICKER_SYMBOL]?.component.readonly ?? false;
141
139
  }
142
140
  /**
143
141
  * Should the color picker be readonly?
144
142
  */
145
143
  set readonly(value) {
146
- if (this.#state != null && typeof value === "boolean" && value !== this.#state.readonly) setColorPickerDisabled(this.#state, "readonly", value);
144
+ const state = this[COLOR_PICKER_SYMBOL];
145
+ if (state.component != null && typeof value === "boolean" && value !== state.component.readonly) setColorPickerDisabled(state, "readonly", value);
147
146
  }
148
147
  /**
149
148
  * Is the color picker required?
150
149
  */
151
150
  get required() {
152
- return this.#state?.required ?? false;
151
+ return this[COLOR_PICKER_SYMBOL]?.component.required ?? false;
153
152
  }
154
153
  /**
155
154
  * Should the color picker be required?
156
155
  */
157
156
  set required(value) {
158
- if (this.#state != null && typeof value === "boolean" && value !== this.#state.required) setColorPickerRequired(this.#state, value);
157
+ const state = this[COLOR_PICKER_SYMBOL];
158
+ if (state.component != null && typeof value === "boolean" && value !== state.component.required) setColorPickerRequired(state, value);
159
159
  }
160
160
  /**
161
161
  * Color value as an _RGB_ color object
162
162
  */
163
163
  get rgb() {
164
- return this.#state?.color.value.rgb ?? {
164
+ return this[COLOR_PICKER_SYMBOL]?.component.color.value.rgb ?? {
165
165
  red: 0,
166
166
  green: 0,
167
167
  blue: 0
@@ -171,13 +171,13 @@ var OuiColorPickerElement = class extends HTMLElement {
171
171
  * Set color value from an _RGB_ color object
172
172
  */
173
173
  set rgb(value) {
174
- setColorPickerValue(this.#state, value, "rgb");
174
+ setColorPickerValue(this[COLOR_PICKER_SYMBOL], value, "rgb");
175
175
  }
176
176
  /**
177
177
  * Color value as an _RGBA_ color object _(RGB with alpha channel)_
178
178
  */
179
179
  get rgba() {
180
- return this.#state?.color.value.rgba ?? {
180
+ return this[COLOR_PICKER_SYMBOL]?.component.color.value.rgba ?? {
181
181
  red: 0,
182
182
  green: 0,
183
183
  blue: 0,
@@ -188,47 +188,52 @@ var OuiColorPickerElement = class extends HTMLElement {
188
188
  * Set color value from an _RGBA_ color object _(RGB with alpha channel)_
189
189
  */
190
190
  set rgba(value) {
191
- setColorPickerValue(this.#state, value, "rgba");
191
+ setColorPickerValue(this[COLOR_PICKER_SYMBOL], value, "rgba");
192
192
  }
193
193
  /**
194
194
  * Validation message for the color picker
195
195
  */
196
196
  get validationMessage() {
197
- return this.#internals.validationMessage;
197
+ return this[COLOR_PICKER_SYMBOL].form.internals.validationMessage;
198
198
  }
199
199
  /**
200
200
  * Validity state for the color picker
201
201
  */
202
202
  get validity() {
203
- return this.#internals.validity;
203
+ return this[COLOR_PICKER_SYMBOL].form.internals.validity;
204
204
  }
205
205
  /**
206
206
  * Current color value
207
207
  */
208
208
  get value() {
209
- return this.#state?.value.current ?? "";
209
+ return this[COLOR_PICKER_SYMBOL]?.component.value.current ?? "";
210
210
  }
211
211
  /**
212
212
  * Set color value from a string, _HSL(A)_, _HWB(A)_, or _RGB(A)_ color object
213
213
  */
214
214
  set value(value) {
215
+ const state = this[COLOR_PICKER_SYMBOL];
216
+ if (state.component == null) return;
215
217
  if (typeof value === "string") {
216
- this.#state.anchor.input.value = value;
217
- onColorPickerInput(this.#state);
218
- } else setColorPickerValue(this.#state, value);
218
+ state.component.anchor.input.value = value;
219
+ onColorPickerInput(state);
220
+ } else setColorPickerValue(state, value);
219
221
  }
220
222
  /**
221
223
  * Can the color picker be validated?
222
224
  */
223
225
  get willValidate() {
224
- return this.#internals.willValidate;
226
+ return this[COLOR_PICKER_SYMBOL].form.internals.willValidate;
225
227
  }
226
228
  constructor() {
227
229
  super();
228
- this.#internals = this.attachInternals();
230
+ this[COLOR_PICKER_SYMBOL] = {
231
+ component: null,
232
+ form: { internals: this.attachInternals() }
233
+ };
229
234
  }
230
235
  attributeChangedCallback(name, _, value) {
231
- if (this.#state == null) return;
236
+ if (this[COLOR_PICKER_SYMBOL].component == null) return;
232
237
  switch (name) {
233
238
  case "disabled":
234
239
  this.disabled = value != null;
@@ -245,7 +250,7 @@ var OuiColorPickerElement = class extends HTMLElement {
245
250
  * @returns `true` if the color picker is valid, otherwise `false`
246
251
  */
247
252
  checkValidity() {
248
- return this.#internals.checkValidity();
253
+ return this[COLOR_PICKER_SYMBOL].form.internals.checkValidity();
249
254
  }
250
255
  /**
251
256
  * Clear the color picker's value
@@ -254,21 +259,25 @@ var OuiColorPickerElement = class extends HTMLElement {
254
259
  this.value = "";
255
260
  }
256
261
  connectedCallback() {
257
- if (this.#state == null) this.#initialize();
258
- else attachColorPicker(this.#state);
262
+ const state = this[COLOR_PICKER_SYMBOL];
263
+ const { component } = state;
264
+ if (component == null) initializeColorPickerComponent(this, state);
265
+ else attachColorPicker(state);
259
266
  }
260
267
  disconnectedCallback() {
261
- if (this.#state != null) detachColorPicker(this.#state);
268
+ const state = this[COLOR_PICKER_SYMBOL];
269
+ if (state.component != null) detachColorPicker(state);
262
270
  }
263
271
  formDisabledCallback(disabled) {
264
272
  this.disabled = disabled;
265
273
  }
266
274
  formResetCallback() {
267
- this.value = this.#state?.value.initial ?? "";
275
+ this.value = this[COLOR_PICKER_SYMBOL]?.component.value.initial ?? "";
268
276
  }
269
277
  formStateRestoreCallback(state, reason) {
270
- if (reason !== "restore" || typeof state !== "string" || this.#state == null) return;
271
- if (this.#state == null) this.#restored = state;
278
+ const { component, form } = this[COLOR_PICKER_SYMBOL];
279
+ if (reason !== "restore" || typeof state !== "string" || component == null) return;
280
+ if (component == null) form.restored = state;
272
281
  else this.value = state;
273
282
  }
274
283
  /**
@@ -277,7 +286,7 @@ var OuiColorPickerElement = class extends HTMLElement {
277
286
  * @returns `true` if the color picker is valid, otherwise `false`
278
287
  */
279
288
  reportValidity() {
280
- return this.#internals.reportValidity();
289
+ return this[COLOR_PICKER_SYMBOL].form.internals.reportValidity();
281
290
  }
282
291
  /**
283
292
  * Set a custom validation message for the color picker
@@ -285,17 +294,10 @@ var OuiColorPickerElement = class extends HTMLElement {
285
294
  * @param message Validation message
286
295
  */
287
296
  setCustomValidity(message) {
288
- this.#internals.setValidity({ customError: message !== "" }, message, this);
297
+ this[COLOR_PICKER_SYMBOL].form.internals.setValidity({ customError: message !== "" }, message, this);
289
298
  }
290
299
  setLocalizations(first, second) {
291
- updateColorPickerLocalizations(colorPickerLocalizations, this.#state.localizations.component, first, second);
292
- }
293
- #initialize() {
294
- this.#state = initializeColorPicker(this, this.#internals);
295
- if (this.#restored != null) {
296
- this.value = this.#restored;
297
- this.#restored = void 0;
298
- }
300
+ updateColorPickerLocalizations(colorPickerLocalizations, this[COLOR_PICKER_SYMBOL].component.localizations.component, first, second);
299
301
  }
300
302
  };
301
303
  customElements.define(COLOR_PICKER_TAGNAME, OuiColorPickerElement);
@@ -0,0 +1,179 @@
1
+ import { c as OuiLocalizations } from "./l10n.model-D6a9frgl.mjs";
2
+ import { c as OuiFloatable } from "./floatable.model-DXsQgoU7.mjs";
3
+ import { Color, HSLAColor, HSLColor, HWBAColor, HWBColor, RGBAColor, RGBColor } from "@oscarpalmer/atoms/color";
4
+ import { RemovableEventListener } from "@oscarpalmer/toretto/models";
5
+ //#region src/js/color-picker/color-picker.model.d.ts
6
+ type GenericOuiColorPickerElement = {
7
+ [COLOR_PICKER_SYMBOL]: OuiColorPickerState;
8
+ get value(): string;
9
+ set value(value: string);
10
+ } & HTMLElement;
11
+ type OuiColorPickerAnchor = {
12
+ copy?: OuiColorPickerCopy;
13
+ toggle?: HTMLButtonElement;
14
+ container: HTMLDivElement;
15
+ input: HTMLInputElement;
16
+ };
17
+ type OuiColorPickerColor = {
18
+ foreground: string;
19
+ value: Color;
20
+ };
21
+ type OuiColorPickerContent = {
22
+ element: HTMLDivElement;
23
+ hue: OuiColorPickerContentHue;
24
+ opacity?: OuiColorPickerContentOpacity;
25
+ output?: OuiColorPickerContentOutput;
26
+ well: OuiColorPickerContentWell;
27
+ };
28
+ type OuiColorPickerContentHue = {
29
+ container: HTMLDivElement;
30
+ input: HTMLInputElement;
31
+ label: HTMLLabelElement;
32
+ knob: HTMLSpanElement;
33
+ track: HTMLDivElement;
34
+ };
35
+ type OuiColorPickerContentOpacity = {
36
+ container: HTMLDivElement;
37
+ input: HTMLInputElement;
38
+ label: HTMLLabelElement;
39
+ };
40
+ type OuiColorPickerContentOutput = {
41
+ container: HTMLDivElement;
42
+ copy?: OuiColorPickerCopy;
43
+ inputs: HTMLInputElement[];
44
+ items: HTMLDivElement[];
45
+ toggle?: HTMLSelectElement;
46
+ };
47
+ type OuiColorPickerContentWell = {
48
+ element: HTMLDivElement;
49
+ knob: HTMLSpanElement;
50
+ label: HTMLSpanElement;
51
+ };
52
+ type OuiColorPickerCopy = {
53
+ button: HTMLButtonElement;
54
+ timer?: number;
55
+ };
56
+ type OuiColorPickerCreateParameters = {
57
+ alpha: boolean;
58
+ color: Color;
59
+ copy: boolean;
60
+ id: string;
61
+ inline: boolean;
62
+ input: HTMLInputElement;
63
+ output: OuiColorPickerOutputType;
64
+ };
65
+ declare class OuiColorPickerEvent extends Event {
66
+ readonly valid: boolean;
67
+ readonly value: OuiColorPickerEventValue;
68
+ constructor(type: OuiColorPickerEventType, color: Color, valid: boolean);
69
+ }
70
+ type OuiColorPickerEventType = "oui:change" | "oui:input";
71
+ type OuiColorPickerEventValue = {
72
+ hex: string;
73
+ hexa: string;
74
+ hsl: HSLColor;
75
+ hsla: HSLAColor;
76
+ hwb: HWBColor;
77
+ hwba: HWBAColor;
78
+ rgb: RGBColor;
79
+ rgba: RGBAColor;
80
+ };
81
+ type OuiColorPickerLabel = {
82
+ element: HTMLLabelElement;
83
+ id: string;
84
+ };
85
+ type OuiColorPickerLocalizations = {
86
+ blackness: string;
87
+ blue: string;
88
+ copy: string;
89
+ green: string;
90
+ hex: string;
91
+ hsl: string;
92
+ hue: string;
93
+ hwb: string;
94
+ invalid: string;
95
+ lightness: string;
96
+ opacity: string;
97
+ output: string;
98
+ red: string;
99
+ rgb: string;
100
+ saturation: string;
101
+ toggle: string;
102
+ wellLabel: string;
103
+ wellValue: string | ((lightness: number, saturation: number) => string);
104
+ whiteness: string;
105
+ };
106
+ type OuiColorPickerMovement = {
107
+ parameters?: OuiColorPickerMovementParameters;
108
+ };
109
+ type OuiColorPickerMovementParameters = {
110
+ rectangle: DOMRect;
111
+ state: OuiColorPickerState;
112
+ value: string;
113
+ };
114
+ type OuiColorPickerOutputColor = "hsl" | "hwb" | "rgb";
115
+ type OuiColorPickerOutputColorProperty = "blackness" | "blue" | "green" | "hue" | "lightness" | "red" | "saturation" | "whiteness";
116
+ type OuiColorPickerOutputType = "all" | "none" | OuiColorPickerOutputColor;
117
+ type OuiColorPickerState = {
118
+ component: OuiColorPickerStateComponent;
119
+ form: OuiColorPickerStateForm;
120
+ };
121
+ type OuiColorPickerStateComponent = {
122
+ alpha: boolean;
123
+ anchor: OuiColorPickerAnchor;
124
+ color: OuiColorPickerColor;
125
+ copy: boolean;
126
+ content: OuiColorPickerContent;
127
+ disabled: boolean;
128
+ floatable?: OuiFloatable;
129
+ host: GenericOuiColorPickerElement;
130
+ id: string;
131
+ inline: boolean;
132
+ input: HTMLInputElement;
133
+ label: OuiColorPickerLabel;
134
+ listeners: RemovableEventListener[];
135
+ localizations: OuiColorPickerStateLocalizations;
136
+ output: OuiColorPickerOutputType;
137
+ readonly: boolean;
138
+ required: boolean;
139
+ style: HTMLStyleElement;
140
+ value: OuiColorPickerValue;
141
+ };
142
+ type OuiColorPickerStateForm = {
143
+ internals: ElementInternals;
144
+ restored?: string;
145
+ };
146
+ type OuiColorPickerStateLocalizations = {
147
+ component: Record<string, Partial<OuiColorPickerLocalizations>>;
148
+ global: OuiLocalizations<OuiColorPickerLocalizations>;
149
+ };
150
+ type OuiColorPickerValue = {
151
+ current: string;
152
+ initial: string;
153
+ };
154
+ type OuiColorPickerValueType = "hex" | "hexa" | "hsl" | "hsla" | "hwb" | "hwba" | "rgb" | "rgba";
155
+ //#endregion
156
+ //#region src/js/color-picker/color-picker.constants.d.ts
157
+ declare const COLOR_PICKER_TAGNAME = "oui-color-picker";
158
+ declare const COLOR_PICKER_ATTRIBUTE_COPY: string;
159
+ declare const COLOR_PICKER_ATTRIBUTE_COPY_ERROR: string;
160
+ declare const COLOR_PICKER_ATTRIBUTE_COPY_SUCCESS: string;
161
+ declare const COLOR_PICKER_ATTRIBUTE_INPUT: string;
162
+ declare const COLOR_PICKER_ATTRIBUTE_OUTPUT_INPUT: string;
163
+ declare const COLOR_PICKER_ATTRIBUTE_WELL: string;
164
+ declare const COLOR_PICKER_ATTRIBUTE_WELL_KNOB: string;
165
+ declare const COLOR_PICKER_EXPRESSION_HEX_PREFIX: RegExp;
166
+ declare const COLOR_PICKER_INPUT_TYPES: Set<string>;
167
+ declare const COLOR_PICKER_KEYS: Set<string>;
168
+ declare const COLOR_PICKER_MESSAGE_INPUT: string;
169
+ declare const COLOR_PICKER_MESSAGE_LABEL: string;
170
+ declare const COLOR_PICKER_OUTPUTS: Set<OuiColorPickerOutputType>;
171
+ declare const COLOR_PICKER_SELECTOR_COPY: string;
172
+ declare const COLOR_PICKER_SELECTOR_INPUT: string;
173
+ declare const COLOR_PICKER_SELECTOR_OUTPUT_INPUT: string;
174
+ declare const COLOR_PICKER_SELECTOR_WELL: string;
175
+ declare const COLOR_PICKER_SELECTOR_WELL_KNOB: string;
176
+ declare const COLOR_PICKER_SYMBOL: unique symbol;
177
+ declare const colorPickerLocalizations: OuiLocalizations<OuiColorPickerLocalizations>;
178
+ //#endregion
179
+ export { OuiColorPickerCopy as A, OuiColorPickerStateComponent as B, OuiColorPickerAnchor as C, OuiColorPickerContentOpacity as D, OuiColorPickerContentHue as E, OuiColorPickerMovementParameters as F, OuiColorPickerValueType as H, OuiColorPickerOutputColor as I, OuiColorPickerOutputColorProperty as L, OuiColorPickerEvent as M, OuiColorPickerLocalizations as N, OuiColorPickerContentOutput as O, OuiColorPickerMovement as P, OuiColorPickerOutputType as R, GenericOuiColorPickerElement as S, OuiColorPickerContent as T, OuiColorPickerStateLocalizations as V, COLOR_PICKER_SELECTOR_WELL as _, COLOR_PICKER_ATTRIBUTE_OUTPUT_INPUT as a, COLOR_PICKER_TAGNAME as b, COLOR_PICKER_EXPRESSION_HEX_PREFIX as c, COLOR_PICKER_MESSAGE_INPUT as d, COLOR_PICKER_MESSAGE_LABEL as f, COLOR_PICKER_SELECTOR_OUTPUT_INPUT as g, COLOR_PICKER_SELECTOR_INPUT as h, COLOR_PICKER_ATTRIBUTE_INPUT as i, OuiColorPickerCreateParameters as j, OuiColorPickerContentWell as k, COLOR_PICKER_INPUT_TYPES as l, COLOR_PICKER_SELECTOR_COPY as m, COLOR_PICKER_ATTRIBUTE_COPY_ERROR as n, COLOR_PICKER_ATTRIBUTE_WELL as o, COLOR_PICKER_OUTPUTS as p, COLOR_PICKER_ATTRIBUTE_COPY_SUCCESS as r, COLOR_PICKER_ATTRIBUTE_WELL_KNOB as s, COLOR_PICKER_ATTRIBUTE_COPY as t, COLOR_PICKER_KEYS as u, COLOR_PICKER_SELECTOR_WELL_KNOB as v, OuiColorPickerColor as w, colorPickerLocalizations as x, COLOR_PICKER_SYMBOL as y, OuiColorPickerState as z };