solid-ui 3.1.0 → 3.1.1

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 (242) hide show
  1. package/README.md +22 -4
  2. package/dist/components/button/index.d.ts +1 -0
  3. package/dist/components/button/index.esm.js +546 -0
  4. package/dist/components/button/index.esm.js.map +1 -0
  5. package/dist/components/button/index.esm.min.js +268 -0
  6. package/dist/components/button/index.esm.min.js.map +1 -0
  7. package/dist/components/button/index.js +428 -0
  8. package/dist/components/button/index.js.map +1 -0
  9. package/dist/components/button/index.min.js +257 -0
  10. package/dist/components/button/index.min.js.map +1 -0
  11. package/dist/components/combobox/index.d.ts +1 -0
  12. package/dist/components/combobox/index.esm.js +953 -0
  13. package/dist/components/combobox/index.esm.js.map +1 -0
  14. package/dist/components/combobox/index.esm.min.js +339 -0
  15. package/dist/components/combobox/index.esm.min.js.map +1 -0
  16. package/dist/components/combobox/index.js +782 -0
  17. package/dist/components/combobox/index.js.map +1 -0
  18. package/dist/components/combobox/index.min.js +328 -0
  19. package/dist/components/combobox/index.min.js.map +1 -0
  20. package/dist/components/footer/index.d.ts +1 -1
  21. package/dist/components/footer/index.esm.js +105 -63
  22. package/dist/components/footer/index.esm.js.map +1 -1
  23. package/dist/components/footer/index.esm.min.js +4 -4
  24. package/dist/components/footer/index.esm.min.js.map +1 -1
  25. package/dist/components/footer/index.js +103 -52
  26. package/dist/components/footer/index.js.map +1 -1
  27. package/dist/components/footer/index.min.js +8 -8
  28. package/dist/components/footer/index.min.js.map +1 -1
  29. package/dist/components/header/index.d.ts +1 -1
  30. package/dist/components/header/index.esm.js +1405 -1363
  31. package/dist/components/header/index.esm.js.map +1 -1
  32. package/dist/components/header/index.esm.min.js +857 -815
  33. package/dist/components/header/index.esm.min.js.map +1 -1
  34. package/dist/components/header/index.js +61 -19
  35. package/dist/components/header/index.js.map +1 -1
  36. package/dist/components/header/index.min.js +53 -11
  37. package/dist/components/header/index.min.js.map +1 -1
  38. package/dist/components/loginButton/index.d.ts +1 -1
  39. package/dist/components/loginButton/index.esm.js +50 -8
  40. package/dist/components/loginButton/index.esm.js.map +1 -1
  41. package/dist/components/loginButton/index.esm.min.js +60 -18
  42. package/dist/components/loginButton/index.esm.min.js.map +1 -1
  43. package/dist/components/loginButton/index.js +49 -7
  44. package/dist/components/loginButton/index.js.map +1 -1
  45. package/dist/components/loginButton/index.min.js +58 -16
  46. package/dist/components/loginButton/index.min.js.map +1 -1
  47. package/dist/components/photoCapture/index.d.ts +1 -0
  48. package/dist/components/photoCapture/index.esm.js +966 -0
  49. package/dist/components/photoCapture/index.esm.js.map +1 -0
  50. package/dist/components/photoCapture/index.esm.min.js +304 -0
  51. package/dist/components/photoCapture/index.esm.min.js.map +1 -0
  52. package/dist/components/photoCapture/index.js +848 -0
  53. package/dist/components/photoCapture/index.js.map +1 -0
  54. package/dist/components/photoCapture/index.min.js +293 -0
  55. package/dist/components/photoCapture/index.min.js.map +1 -0
  56. package/dist/components/select/index.d.ts +1 -0
  57. package/dist/components/select/index.esm.js +939 -0
  58. package/dist/components/select/index.esm.js.map +1 -0
  59. package/dist/components/select/index.esm.min.js +370 -0
  60. package/dist/components/select/index.esm.min.js.map +1 -0
  61. package/dist/components/select/index.js +771 -0
  62. package/dist/components/select/index.js.map +1 -0
  63. package/dist/components/select/index.min.js +359 -0
  64. package/dist/components/select/index.min.js.map +1 -0
  65. package/dist/components/signupButton/index.d.ts +1 -1
  66. package/dist/components/signupButton/index.esm.js +2 -2
  67. package/dist/components/signupButton/index.esm.js.map +1 -1
  68. package/dist/components/signupButton/index.esm.min.js +2 -2
  69. package/dist/components/signupButton/index.esm.min.js.map +1 -1
  70. package/dist/components/signupButton/index.js +2 -2
  71. package/dist/components/signupButton/index.js.map +1 -1
  72. package/dist/components/signupButton/index.min.js.map +1 -1
  73. package/dist/login/login.d.ts.map +1 -1
  74. package/dist/login/login.js +12 -2
  75. package/dist/login/login.js.map +1 -1
  76. package/dist/matrix/matrix.js.map +1 -1
  77. package/dist/solid-ui.esm.js +103 -61
  78. package/dist/solid-ui.esm.js.map +1 -1
  79. package/dist/solid-ui.esm.min.js +6 -6
  80. package/dist/solid-ui.esm.min.js.map +1 -1
  81. package/dist/solid-ui.js +102 -51
  82. package/dist/solid-ui.js.map +1 -1
  83. package/dist/solid-ui.min.js +9 -9
  84. package/dist/solid-ui.min.js.map +1 -1
  85. package/dist/tabs.js +2 -2
  86. package/dist/tabs.js.map +1 -1
  87. package/dist/v2/components/actions/button/Button.d.ts +97 -0
  88. package/dist/v2/components/actions/button/Button.d.ts.map +1 -0
  89. package/dist/v2/components/actions/button/Button.js +325 -0
  90. package/dist/v2/components/actions/button/Button.js.map +1 -0
  91. package/dist/v2/components/actions/button/Button.test.d.ts +2 -0
  92. package/dist/v2/components/actions/button/Button.test.d.ts.map +1 -0
  93. package/dist/v2/components/actions/button/Button.test.js +117 -0
  94. package/dist/v2/components/actions/button/Button.test.js.map +1 -0
  95. package/dist/v2/components/actions/button/index.d.ts +8 -0
  96. package/dist/v2/components/actions/button/index.d.ts.map +1 -0
  97. package/dist/v2/components/actions/button/index.js +7 -0
  98. package/dist/v2/components/actions/button/index.js.map +1 -0
  99. package/dist/v2/components/auth/loginButton/LoginButton.d.ts.map +1 -0
  100. package/dist/v2/components/{loginButton → auth/loginButton}/LoginButton.js +46 -4
  101. package/dist/v2/components/auth/loginButton/LoginButton.js.map +1 -0
  102. package/dist/v2/components/auth/loginButton/LoginButton.test.d.ts.map +1 -0
  103. package/dist/v2/components/auth/loginButton/LoginButton.test.js.map +1 -0
  104. package/dist/v2/components/auth/loginButton/downArrow.d.ts.map +1 -0
  105. package/dist/v2/components/auth/loginButton/downArrow.js.map +1 -0
  106. package/dist/v2/components/auth/loginButton/index.d.ts.map +1 -0
  107. package/dist/v2/components/auth/loginButton/index.js.map +1 -0
  108. package/dist/v2/components/auth/signupButton/SignupButton.d.ts.map +1 -0
  109. package/dist/v2/components/auth/signupButton/SignupButton.js.map +1 -0
  110. package/dist/v2/components/auth/signupButton/SignupButton.test.d.ts.map +1 -0
  111. package/dist/v2/components/auth/signupButton/SignupButton.test.js.map +1 -0
  112. package/dist/v2/components/auth/signupButton/index.d.ts.map +1 -0
  113. package/dist/v2/components/auth/signupButton/index.js.map +1 -0
  114. package/dist/v2/components/forms/combobox/Combobox.d.ts +82 -0
  115. package/dist/v2/components/forms/combobox/Combobox.d.ts.map +1 -0
  116. package/dist/v2/components/forms/combobox/Combobox.js +506 -0
  117. package/dist/v2/components/forms/combobox/Combobox.js.map +1 -0
  118. package/dist/v2/components/forms/combobox/Combobox.test.d.ts +2 -0
  119. package/dist/v2/components/forms/combobox/Combobox.test.d.ts.map +1 -0
  120. package/dist/v2/components/forms/combobox/Combobox.test.js +201 -0
  121. package/dist/v2/components/forms/combobox/Combobox.test.js.map +1 -0
  122. package/dist/v2/components/forms/combobox/comboboxTypes.d.ts +6 -0
  123. package/dist/v2/components/forms/combobox/comboboxTypes.d.ts.map +1 -0
  124. package/dist/v2/components/forms/combobox/comboboxTypes.js +2 -0
  125. package/dist/v2/components/forms/combobox/comboboxTypes.js.map +1 -0
  126. package/dist/v2/components/forms/combobox/index.d.ts +3 -0
  127. package/dist/v2/components/forms/combobox/index.d.ts.map +1 -0
  128. package/dist/v2/components/forms/combobox/index.js +7 -0
  129. package/dist/v2/components/forms/combobox/index.js.map +1 -0
  130. package/dist/v2/components/forms/select/Select.d.ts +68 -0
  131. package/dist/v2/components/forms/select/Select.d.ts.map +1 -0
  132. package/dist/v2/components/forms/select/Select.js +499 -0
  133. package/dist/v2/components/forms/select/Select.js.map +1 -0
  134. package/dist/v2/components/forms/select/Select.test.d.ts +2 -0
  135. package/dist/v2/components/forms/select/Select.test.d.ts.map +1 -0
  136. package/dist/v2/components/forms/select/Select.test.js +168 -0
  137. package/dist/v2/components/forms/select/Select.test.js.map +1 -0
  138. package/dist/v2/components/forms/select/index.d.ts +3 -0
  139. package/dist/v2/components/forms/select/index.d.ts.map +1 -0
  140. package/dist/v2/components/forms/select/index.js +7 -0
  141. package/dist/v2/components/forms/select/index.js.map +1 -0
  142. package/dist/v2/components/forms/shared/downArrow.d.ts +2 -0
  143. package/dist/v2/components/forms/shared/downArrow.d.ts.map +1 -0
  144. package/dist/v2/components/forms/shared/downArrow.js +10 -0
  145. package/dist/v2/components/forms/shared/downArrow.js.map +1 -0
  146. package/dist/v2/components/forms/shared/keyboard.d.ts +7 -0
  147. package/dist/v2/components/forms/shared/keyboard.d.ts.map +1 -0
  148. package/dist/v2/components/forms/shared/keyboard.js +56 -0
  149. package/dist/v2/components/forms/shared/keyboard.js.map +1 -0
  150. package/dist/v2/components/forms/shared/listboxStyles.d.ts +2 -0
  151. package/dist/v2/components/forms/shared/listboxStyles.d.ts.map +1 -0
  152. package/dist/v2/components/forms/shared/listboxStyles.js +96 -0
  153. package/dist/v2/components/forms/shared/listboxStyles.js.map +1 -0
  154. package/dist/v2/components/forms/shared/listboxTemplate.d.ts +11 -0
  155. package/dist/v2/components/forms/shared/listboxTemplate.d.ts.map +1 -0
  156. package/dist/v2/components/forms/shared/listboxTemplate.js +37 -0
  157. package/dist/v2/components/forms/shared/listboxTemplate.js.map +1 -0
  158. package/dist/v2/components/forms/shared/optionTypes.d.ts +6 -0
  159. package/dist/v2/components/forms/shared/optionTypes.d.ts.map +1 -0
  160. package/dist/v2/components/forms/shared/optionTypes.js +2 -0
  161. package/dist/v2/components/forms/shared/optionTypes.js.map +1 -0
  162. package/dist/v2/components/layout/footer/Footer.d.ts.map +1 -0
  163. package/dist/v2/components/{footer → layout/footer}/Footer.js +1 -1
  164. package/dist/v2/components/layout/footer/Footer.js.map +1 -0
  165. package/dist/v2/components/layout/footer/Footer.test.d.ts.map +1 -0
  166. package/dist/v2/components/layout/footer/Footer.test.js.map +1 -0
  167. package/dist/v2/components/layout/footer/index.d.ts.map +1 -0
  168. package/dist/v2/components/layout/footer/index.js.map +1 -0
  169. package/dist/v2/components/{header → layout/header}/Header.d.ts +2 -2
  170. package/dist/v2/components/layout/header/Header.d.ts.map +1 -0
  171. package/dist/v2/components/{header → layout/header}/Header.js +5 -5
  172. package/dist/v2/components/layout/header/Header.js.map +1 -0
  173. package/dist/v2/components/layout/header/header.test.d.ts.map +1 -0
  174. package/dist/v2/components/layout/header/header.test.js.map +1 -0
  175. package/dist/v2/components/layout/header/index.d.ts.map +1 -0
  176. package/dist/v2/components/layout/header/index.js.map +1 -0
  177. package/dist/v2/components/media/photoCapture/PhotoCapture.d.ts +200 -0
  178. package/dist/v2/components/media/photoCapture/PhotoCapture.d.ts.map +1 -0
  179. package/dist/v2/components/media/photoCapture/PhotoCapture.js +723 -0
  180. package/dist/v2/components/media/photoCapture/PhotoCapture.js.map +1 -0
  181. package/dist/v2/components/media/photoCapture/PhotoCapture.test.d.ts +2 -0
  182. package/dist/v2/components/media/photoCapture/PhotoCapture.test.d.ts.map +1 -0
  183. package/dist/v2/components/media/photoCapture/PhotoCapture.test.js +157 -0
  184. package/dist/v2/components/media/photoCapture/PhotoCapture.test.js.map +1 -0
  185. package/dist/v2/components/media/photoCapture/index.d.ts +3 -0
  186. package/dist/v2/components/media/photoCapture/index.d.ts.map +1 -0
  187. package/dist/v2/components/media/photoCapture/index.js +7 -0
  188. package/dist/v2/components/media/photoCapture/index.js.map +1 -0
  189. package/dist/versionInfo.js +14 -14
  190. package/dist/widgets/buttons.d.ts +1 -0
  191. package/dist/widgets/buttons.d.ts.map +1 -1
  192. package/dist/widgets/buttons.js +15 -2
  193. package/dist/widgets/buttons.js.map +1 -1
  194. package/package.json +223 -157
  195. package/dist/v2/components/footer/Footer.d.ts.map +0 -1
  196. package/dist/v2/components/footer/Footer.js.map +0 -1
  197. package/dist/v2/components/footer/Footer.test.d.ts.map +0 -1
  198. package/dist/v2/components/footer/Footer.test.js.map +0 -1
  199. package/dist/v2/components/footer/index.d.ts.map +0 -1
  200. package/dist/v2/components/footer/index.js.map +0 -1
  201. package/dist/v2/components/header/Header.d.ts.map +0 -1
  202. package/dist/v2/components/header/Header.js.map +0 -1
  203. package/dist/v2/components/header/header.test.d.ts.map +0 -1
  204. package/dist/v2/components/header/header.test.js.map +0 -1
  205. package/dist/v2/components/header/index.d.ts.map +0 -1
  206. package/dist/v2/components/header/index.js.map +0 -1
  207. package/dist/v2/components/loginButton/LoginButton.d.ts.map +0 -1
  208. package/dist/v2/components/loginButton/LoginButton.js.map +0 -1
  209. package/dist/v2/components/loginButton/LoginButton.test.d.ts.map +0 -1
  210. package/dist/v2/components/loginButton/LoginButton.test.js.map +0 -1
  211. package/dist/v2/components/loginButton/downArrow.d.ts.map +0 -1
  212. package/dist/v2/components/loginButton/downArrow.js.map +0 -1
  213. package/dist/v2/components/loginButton/index.d.ts.map +0 -1
  214. package/dist/v2/components/loginButton/index.js.map +0 -1
  215. package/dist/v2/components/signupButton/SignupButton.d.ts.map +0 -1
  216. package/dist/v2/components/signupButton/SignupButton.js.map +0 -1
  217. package/dist/v2/components/signupButton/SignupButton.test.d.ts.map +0 -1
  218. package/dist/v2/components/signupButton/SignupButton.test.js.map +0 -1
  219. package/dist/v2/components/signupButton/index.d.ts.map +0 -1
  220. package/dist/v2/components/signupButton/index.js.map +0 -1
  221. /package/dist/v2/components/{loginButton → auth/loginButton}/LoginButton.d.ts +0 -0
  222. /package/dist/v2/components/{loginButton → auth/loginButton}/LoginButton.test.d.ts +0 -0
  223. /package/dist/v2/components/{loginButton → auth/loginButton}/LoginButton.test.js +0 -0
  224. /package/dist/v2/components/{loginButton → auth/loginButton}/downArrow.d.ts +0 -0
  225. /package/dist/v2/components/{loginButton → auth/loginButton}/downArrow.js +0 -0
  226. /package/dist/v2/components/{loginButton → auth/loginButton}/index.d.ts +0 -0
  227. /package/dist/v2/components/{loginButton → auth/loginButton}/index.js +0 -0
  228. /package/dist/v2/components/{signupButton → auth/signupButton}/SignupButton.d.ts +0 -0
  229. /package/dist/v2/components/{signupButton → auth/signupButton}/SignupButton.js +0 -0
  230. /package/dist/v2/components/{signupButton → auth/signupButton}/SignupButton.test.d.ts +0 -0
  231. /package/dist/v2/components/{signupButton → auth/signupButton}/SignupButton.test.js +0 -0
  232. /package/dist/v2/components/{signupButton → auth/signupButton}/index.d.ts +0 -0
  233. /package/dist/v2/components/{signupButton → auth/signupButton}/index.js +0 -0
  234. /package/dist/v2/components/{footer → layout/footer}/Footer.d.ts +0 -0
  235. /package/dist/v2/components/{footer → layout/footer}/Footer.test.d.ts +0 -0
  236. /package/dist/v2/components/{footer → layout/footer}/Footer.test.js +0 -0
  237. /package/dist/v2/components/{footer → layout/footer}/index.d.ts +0 -0
  238. /package/dist/v2/components/{footer → layout/footer}/index.js +0 -0
  239. /package/dist/v2/components/{header → layout/header}/header.test.d.ts +0 -0
  240. /package/dist/v2/components/{header → layout/header}/header.test.js +0 -0
  241. /package/dist/v2/components/{header → layout/header}/index.d.ts +0 -0
  242. /package/dist/v2/components/{header → layout/header}/index.js +0 -0
@@ -0,0 +1,506 @@
1
+ import { LitElement, html, css, nothing } from 'lit';
2
+ import { render as renderPortal } from 'lit/html.js';
3
+ import { downArrowIcon } from '../shared/downArrow';
4
+ import { listboxStyles } from '../shared/listboxStyles';
5
+ import { findOptionIndexByValue, getFirstEnabledIndex, getLastEnabledIndex, getListboxActionFromKey, getNextEnabledIndex } from '../shared/keyboard';
6
+ import { renderListbox } from '../shared/listboxTemplate';
7
+ export class Combobox extends LitElement {
8
+ constructor() {
9
+ super();
10
+ this._popupPortalHost = null;
11
+ this._popupPortalRoot = null;
12
+ this._popupPortalContainer = null;
13
+ this._handleDocumentPointerDown = (event) => {
14
+ const eventTarget = event.target;
15
+ if (!this._popupOpen || !(eventTarget instanceof Node)) {
16
+ return;
17
+ }
18
+ const eventPath = 'composedPath' in event
19
+ ? event.composedPath()
20
+ : [];
21
+ if (eventPath.includes(this)) {
22
+ return;
23
+ }
24
+ if ((this._popupPortalHost && eventPath.includes(this._popupPortalHost)) ||
25
+ (this._popupPortalRoot && eventPath.includes(this._popupPortalRoot))) {
26
+ return;
27
+ }
28
+ if (!this.contains(eventTarget)) {
29
+ this._closePopup();
30
+ }
31
+ };
32
+ this._handleViewportChange = () => {
33
+ if (!this._popupOpen)
34
+ return;
35
+ this._updatePopupPosition();
36
+ };
37
+ this._inputId = `solid-ui-combobox-input-${Combobox._nextId++}`;
38
+ this._listboxId = `solid-ui-combobox-listbox-${Combobox._nextId++}`;
39
+ this._suggestionRequestId = 0;
40
+ this.label = 'Select an option';
41
+ this.placeholder = 'Type to search';
42
+ this.theme = 'light';
43
+ this.layout = 'desktop';
44
+ this.options = [];
45
+ this.value = '';
46
+ this.inputValue = '';
47
+ this._popupOpen = false;
48
+ this._activeIndex = -1;
49
+ }
50
+ connectedCallback() {
51
+ super.connectedCallback();
52
+ document.addEventListener('pointerdown', this._handleDocumentPointerDown);
53
+ window.addEventListener('resize', this._handleViewportChange);
54
+ window.addEventListener('scroll', this._handleViewportChange, true);
55
+ }
56
+ disconnectedCallback() {
57
+ this._detachPopupPortal();
58
+ document.removeEventListener('pointerdown', this._handleDocumentPointerDown);
59
+ window.removeEventListener('resize', this._handleViewportChange);
60
+ window.removeEventListener('scroll', this._handleViewportChange, true);
61
+ super.disconnectedCallback();
62
+ }
63
+ _getPopupPortalContainer() {
64
+ return this.closest('dialog[open]') || document.body;
65
+ }
66
+ _ensurePopupPortal() {
67
+ const nextContainer = this._getPopupPortalContainer();
68
+ if (this._popupPortalHost &&
69
+ this._popupPortalRoot &&
70
+ this._popupPortalContainer === nextContainer) {
71
+ return;
72
+ }
73
+ this._detachPopupPortal();
74
+ this._popupPortalHost = document.createElement('div');
75
+ this._popupPortalHost.setAttribute('data-solid-ui-combobox-portal', '');
76
+ this._popupPortalHost.style.position = 'fixed';
77
+ this._popupPortalHost.style.inset = '0 auto auto 0';
78
+ this._popupPortalHost.style.zIndex = '2147483647';
79
+ this._popupPortalHost.style.pointerEvents = 'none';
80
+ this._popupPortalHost.style.boxSizing = 'border-box';
81
+ this._popupPortalRoot = this._popupPortalHost.attachShadow({ mode: 'open' });
82
+ const styleSheets = (Array.isArray(Combobox.styles) ? Combobox.styles : [Combobox.styles])
83
+ .map((style) => style === null || style === void 0 ? void 0 : style.styleSheet)
84
+ .filter((styleSheet) => Boolean(styleSheet));
85
+ if (styleSheets.length > 0) {
86
+ this._popupPortalRoot.adoptedStyleSheets = styleSheets;
87
+ }
88
+ nextContainer.appendChild(this._popupPortalHost);
89
+ this._popupPortalContainer = nextContainer;
90
+ }
91
+ _detachPopupPortal() {
92
+ var _a;
93
+ if (this._popupPortalRoot) {
94
+ renderPortal(null, this._popupPortalRoot);
95
+ }
96
+ if ((_a = this._popupPortalHost) === null || _a === void 0 ? void 0 : _a.parentNode) {
97
+ this._popupPortalHost.parentNode.removeChild(this._popupPortalHost);
98
+ }
99
+ this._popupPortalHost = null;
100
+ this._popupPortalRoot = null;
101
+ this._popupPortalContainer = null;
102
+ }
103
+ _updatePopupPosition() {
104
+ this._ensurePopupPortal();
105
+ const rect = this.getBoundingClientRect();
106
+ const maxHeight = Math.min(288, Math.max(120, window.innerHeight - rect.bottom - 12));
107
+ if (this._popupPortalHost) {
108
+ this._popupPortalHost.style.top = `${Math.round(rect.bottom + 2)}px`;
109
+ this._popupPortalHost.style.left = `${Math.round(rect.left)}px`;
110
+ this._popupPortalHost.style.width = `${Math.round(rect.width)}px`;
111
+ this._popupPortalHost.style.maxHeight = `${Math.round(maxHeight)}px`;
112
+ this._popupPortalHost.style.height = '0px';
113
+ }
114
+ }
115
+ _openPopup() {
116
+ const popupOptions = this._getDisplayedOptions();
117
+ this._popupOpen = true;
118
+ this._updatePopupPosition();
119
+ this._activeIndex = findOptionIndexByValue(popupOptions, this.value);
120
+ if (this._activeIndex < 0) {
121
+ this._activeIndex = getFirstEnabledIndex(popupOptions);
122
+ }
123
+ }
124
+ _closePopup() {
125
+ this._popupOpen = false;
126
+ if (this._popupPortalRoot) {
127
+ renderPortal(null, this._popupPortalRoot);
128
+ }
129
+ }
130
+ updated(changedProperties) {
131
+ if (this._popupOpen) {
132
+ this._updatePopupPosition();
133
+ if (this._popupPortalRoot) {
134
+ renderPortal(this._renderPopup(), this._popupPortalRoot);
135
+ }
136
+ }
137
+ else if (this._popupPortalRoot) {
138
+ renderPortal(null, this._popupPortalRoot);
139
+ }
140
+ if ((changedProperties.has('value') || changedProperties.has('options')) && this.value) {
141
+ const selectedOption = this.options.find((option) => option.value === this.value);
142
+ if (selectedOption && this.inputValue !== selectedOption.label) {
143
+ this.inputValue = selectedOption.label;
144
+ }
145
+ }
146
+ }
147
+ _getSelectedIndex() {
148
+ return findOptionIndexByValue(this.options, this.value);
149
+ }
150
+ _getSelectedOption() {
151
+ const selectedIndex = this._getSelectedIndex();
152
+ if (selectedIndex >= 0) {
153
+ return this.options[selectedIndex];
154
+ }
155
+ return this.options[0];
156
+ }
157
+ _getDisplayedOptions() {
158
+ const selectedOption = this._getSelectedOption();
159
+ if (!selectedOption) {
160
+ return this.options;
161
+ }
162
+ return [
163
+ selectedOption,
164
+ ...this.options.filter((option) => option.value !== selectedOption.value)
165
+ ];
166
+ }
167
+ _getActiveOption() {
168
+ const popupOptions = this._getDisplayedOptions();
169
+ if (this._activeIndex < 0) {
170
+ return undefined;
171
+ }
172
+ return popupOptions[this._activeIndex];
173
+ }
174
+ async _loadSuggestions(query) {
175
+ if (!this.suggestionProvider) {
176
+ this._openPopup();
177
+ return;
178
+ }
179
+ const requestId = ++this._suggestionRequestId;
180
+ const suggestions = await this.suggestionProvider(query);
181
+ if (requestId !== this._suggestionRequestId) {
182
+ return;
183
+ }
184
+ this.options = suggestions;
185
+ this._openPopup();
186
+ }
187
+ async _handleInputChange(e) {
188
+ const query = e.target.value;
189
+ this.inputValue = query;
190
+ this.value = '';
191
+ this.dispatchEvent(new CustomEvent('input', {
192
+ detail: { value: query },
193
+ bubbles: true,
194
+ composed: true
195
+ }));
196
+ await this._loadSuggestions(query);
197
+ }
198
+ _handleInputKeydown(e) {
199
+ if (e.key === ' ' || e.key === 'Spacebar') {
200
+ return;
201
+ }
202
+ const popupOptions = this._getDisplayedOptions();
203
+ const action = getListboxActionFromKey(e.key);
204
+ if (action === 'none') {
205
+ return;
206
+ }
207
+ e.preventDefault();
208
+ switch (action) {
209
+ case 'close':
210
+ this._closePopup();
211
+ break;
212
+ case 'first':
213
+ if (!this._popupOpen) {
214
+ this._openPopup();
215
+ }
216
+ this._activeIndex = getFirstEnabledIndex(popupOptions);
217
+ break;
218
+ case 'last':
219
+ if (!this._popupOpen) {
220
+ this._openPopup();
221
+ }
222
+ this._activeIndex = getLastEnabledIndex(popupOptions);
223
+ break;
224
+ case 'next':
225
+ if (!this._popupOpen) {
226
+ this._openPopup();
227
+ break;
228
+ }
229
+ this._activeIndex = getNextEnabledIndex(this._activeIndex, popupOptions, 1);
230
+ break;
231
+ case 'previous':
232
+ if (!this._popupOpen) {
233
+ this._openPopup();
234
+ break;
235
+ }
236
+ this._activeIndex = getNextEnabledIndex(this._activeIndex, popupOptions, -1);
237
+ break;
238
+ case 'select':
239
+ if (!this._popupOpen) {
240
+ this._openPopup();
241
+ break;
242
+ }
243
+ this._selectActiveOption();
244
+ break;
245
+ default:
246
+ break;
247
+ }
248
+ }
249
+ _getOptionId(option, index) {
250
+ return `${this._listboxId}-option-${index}-${option.value}`;
251
+ }
252
+ _selectValueFromDropdown(value) {
253
+ var _a;
254
+ const selectedOption = this.options.find(option => option.value === value);
255
+ this.value = value;
256
+ this.inputValue = (_a = selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.label) !== null && _a !== void 0 ? _a : value;
257
+ this.dispatchEvent(new CustomEvent('change', {
258
+ detail: {
259
+ value,
260
+ label: this.inputValue,
261
+ option: selectedOption
262
+ },
263
+ bubbles: true,
264
+ composed: true
265
+ }));
266
+ this._closePopup();
267
+ }
268
+ _selectActiveOption() {
269
+ const activeOption = this._getActiveOption();
270
+ if (activeOption && !activeOption.disabled) {
271
+ this._selectValueFromDropdown(activeOption.value);
272
+ }
273
+ }
274
+ _renderPopup() {
275
+ const popupOptions = this._getDisplayedOptions();
276
+ const selectedOption = this._getSelectedOption();
277
+ const activeOption = this._activeIndex >= 0 ? popupOptions[this._activeIndex] : undefined;
278
+ return html `
279
+ <div class="popup-box" style="pointer-events: auto; max-height: inherit; overflow: auto;">
280
+ <div class="select-options-section">
281
+ ${renderListbox({
282
+ selectedOption,
283
+ activeOption,
284
+ options: popupOptions,
285
+ listboxId: this._listboxId,
286
+ getOptionId: (option, index) => this._getOptionId(option, index),
287
+ onOptionSelect: (option) => this._selectValueFromDropdown(option.value)
288
+ })}
289
+ </div>
290
+ </div>
291
+ `;
292
+ }
293
+ render() {
294
+ const activeOption = this._getActiveOption();
295
+ const activeDescendant = this._popupOpen && activeOption
296
+ ? this._getOptionId(activeOption, this._activeIndex)
297
+ : undefined;
298
+ const ariaLabel = this.label ? nothing : (this.getAttribute('aria-label') || this.placeholder || 'Combobox');
299
+ return html `
300
+ <div class="combobox-root">
301
+ ${this.label
302
+ ? html `<label class="text-label" for="${this._inputId}">${this.label}</label>`
303
+ : null}
304
+ <div class="input-field-row">
305
+ <input
306
+ id="${this._inputId}"
307
+ class="text-input"
308
+ part="input"
309
+ type="text"
310
+ role="combobox"
311
+ aria-autocomplete="list"
312
+ aria-label="${ariaLabel}"
313
+ aria-expanded="${this._popupOpen}"
314
+ aria-controls="${this._listboxId}"
315
+ aria-activedescendant="${activeDescendant !== null && activeDescendant !== void 0 ? activeDescendant : ''}"
316
+ placeholder="${this.placeholder}"
317
+ .value="${this.inputValue}"
318
+ @focus="${() => this._openPopup()}"
319
+ @input="${this._handleInputChange}"
320
+ @keydown="${this._handleInputKeydown}"
321
+ />
322
+ <button
323
+ class="dropdown-toggle"
324
+ type="button"
325
+ aria-label="Show options"
326
+ aria-expanded="${this._popupOpen}"
327
+ @click="${() => this._popupOpen ? this._closePopup() : this._openPopup()}"
328
+ >
329
+ ${downArrowIcon}
330
+ </button>
331
+ </div>
332
+ </div>
333
+ `;
334
+ }
335
+ }
336
+ Combobox._nextId = 0;
337
+ Combobox.properties = {
338
+ label: { type: String, reflect: true },
339
+ placeholder: { type: String, reflect: true },
340
+ theme: { type: String, reflect: true },
341
+ layout: { type: String, reflect: true },
342
+ value: { type: String, reflect: true },
343
+ inputValue: { type: String },
344
+ options: { type: Array, attribute: false },
345
+ _popupOpen: { state: true },
346
+ _activeIndex: { state: true }
347
+ };
348
+ Combobox.styles = [
349
+ listboxStyles,
350
+ css `
351
+ :host {
352
+ /* default theme */
353
+ display: block;
354
+ width: 100%;
355
+ min-width: 0;
356
+ max-width: 100%;
357
+ position: relative;
358
+ box-sizing: border-box;
359
+ --popup-background: var(--color-background, #F8F9FB);
360
+ --popup-text: var(--color-text, #1A1A1A);
361
+ --popup-border: var(--color-border, #E5E7EB);
362
+ --popup-shadow: var(--box-shadow-sm, 0 1px 4px rgba(124,77,255,0.12));
363
+ --input-background: var(--color-background, #F8F9FB);
364
+ --input-text: var(--color-text, #1A1A1A);
365
+ --input-border: var(--color-border-button-hover, var(--gray-400, #99A1AF));
366
+ --label-color: var(--grey-purple-700, #1A1A1A);
367
+ --placeholder-color: var(--grey-purple-700, #5e546d);
368
+ --combobox-input-height: var(--select-trigger-height, var(--min-touch-target, 44px));
369
+ --combobox-input-inline-padding: var(--select-trigger-inline-padding, var(--spacing-2xs, 0.625rem));
370
+ --combobox-input-block-padding: var(--spacing-xxs, 0.3125rem);
371
+ }
372
+
373
+ :host([theme='dark']) {
374
+ display: block;
375
+ width: 100%;
376
+ min-width: 0;
377
+ max-width: 100%;
378
+ position: relative;
379
+ box-sizing: border-box;
380
+ --popup-background: var(--color-background, #F8F9FB);
381
+ --popup-text: var(--color-text, #1A1A1A);
382
+ --popup-border: var(--color-border, #E5E7EB);
383
+ --popup-shadow: var(--box-shadow-sm, 0 1px 4px rgba(124,77,255,0.12));
384
+ --input-background: var(--color-background, #F8F9FB);
385
+ --input-text: var(--color-text, #1A1A1A);
386
+ --input-border: var(--color-border-button-hover, var(--gray-400, #99A1AF));
387
+ --label-color: var(--grey-purple-700, #1A1A1A);
388
+ --placeholder-color: var(--grey-purple-700, #5e546d);
389
+ --combobox-input-height: var(--select-trigger-height, var(--min-touch-target, 44px));
390
+ --combobox-input-inline-padding: var(--select-trigger-inline-padding, var(--spacing-2xs, 0.625rem));
391
+ --combobox-input-block-padding: var(--spacing-xxs, 0.3125rem);
392
+ }
393
+
394
+ .popup-box {
395
+ position: absolute;
396
+ top: 0;
397
+ left: 0;
398
+ width: 100%;
399
+ background: var(--popup-background);
400
+ color: var(--popup-text);
401
+ box-shadow: var(--popup-shadow);
402
+ border: 1px solid var(--popup-border);
403
+ border-radius: var(--border-radius-md, 0.5rem);
404
+ min-width: 100%;
405
+ overflow: hidden;
406
+ box-sizing: border-box;
407
+ isolation: isolate;
408
+ }
409
+
410
+ .select-options-section {
411
+ position: relative;
412
+ background: var(--popup-background);
413
+ border-radius: inherit;
414
+ isolation: isolate;
415
+ }
416
+
417
+ .combobox-root {
418
+ display: flex;
419
+ flex-direction: column;
420
+ gap: 6px;
421
+ }
422
+
423
+ .text-label {
424
+ color: var(--label-color);
425
+ margin-bottom: 6px;
426
+ }
427
+
428
+ .input-field-row {
429
+ display: flex;
430
+ flex-direction: row;
431
+ position: relative;
432
+ width: 100%;
433
+ min-width: 0;
434
+ }
435
+
436
+ .text-input {
437
+ display: block;
438
+ flex: 1;
439
+ width: 100%;
440
+ min-width: 0;
441
+ min-height: var(--combobox-input-height);
442
+ height: var(--combobox-input-height);
443
+ padding: var(--combobox-input-block-padding) calc(26px + (var(--combobox-input-inline-padding) * 2) + 6px) var(--combobox-input-block-padding) var(--combobox-input-inline-padding);
444
+ border: 1px solid var(--input-border);
445
+ border-radius: var(--border-radius-base, 0.3125rem);
446
+ background: var(--input-background);
447
+ color: var(--input-text);
448
+ font: inherit;
449
+ font-size: var(--font-size-sm, 0.875rem);
450
+ font-weight: var(--font-weight-md, 500);
451
+ line-height: normal;
452
+ appearance: none;
453
+ -webkit-appearance: none;
454
+ box-sizing: border-box;
455
+ }
456
+
457
+ .text-input::placeholder {
458
+ color: var(--placeholder-color);
459
+ }
460
+
461
+ .text-input:focus-visible {
462
+ outline: 2px solid var(--color-focus-ring, var(--color-primary, #7C4DFF));
463
+ outline-offset: 2px;
464
+ }
465
+
466
+ .dropdown-toggle {
467
+ position: absolute;
468
+ right: 6px;
469
+ top: 50%;
470
+ transform: translateY(-50%);
471
+ width: 26px;
472
+ height: 26px;
473
+ padding: 0;
474
+ border: none;
475
+ background: transparent;
476
+ cursor: pointer;
477
+ display: flex;
478
+ align-items: center;
479
+ justify-content: center;
480
+ flex-shrink: 0;
481
+ border-radius: var(--border-radius-base, 0.3125rem);
482
+ }
483
+
484
+ .dropdown-toggle:hover {
485
+ background: var(--color-header-menu-item-hover, #e6dcff);
486
+ }
487
+
488
+ .input-field-row:focus-within .dropdown-toggle {
489
+ background: var(--color-header-menu-item-hover, #e6dcff);
490
+ }
491
+
492
+ .dropdown-toggle:focus-visible {
493
+ outline: 2px solid var(--color-focus-ring, var(--color-primary, #7C4DFF));
494
+ outline-offset: 2px;
495
+ background: var(--color-header-menu-item-hover, #e6dcff);
496
+ }
497
+
498
+ .dropdown-toggle svg {
499
+ width: 14px;
500
+ height: 14px;
501
+ display: block;
502
+ }
503
+ }
504
+ `
505
+ ];
506
+ //# sourceMappingURL=Combobox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Combobox.js","sourceRoot":"","sources":["../../../../../src/v2/components/forms/combobox/Combobox.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import './index';
2
+ //# sourceMappingURL=Combobox.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Combobox.test.d.ts","sourceRoot":"","sources":["../../../../../src/v2/components/forms/combobox/Combobox.test.ts"],"names":[],"mappings":"AAEA,OAAO,SAAS,CAAA"}