@edo-w/flatline-solid 0.2.0 → 0.3.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 (501) hide show
  1. package/README.md +16 -0
  2. package/dist/button/index.css +124 -0
  3. package/dist/button/index.d.ts +2 -0
  4. package/dist/button/index.js +51 -0
  5. package/dist/button/index.js.map +1 -0
  6. package/dist/card/index.css +112 -0
  7. package/dist/card/index.d.ts +68 -0
  8. package/dist/card/index.js +181 -0
  9. package/dist/card/index.js.map +1 -0
  10. package/dist/checkbox/index.css +75 -0
  11. package/dist/checkbox/index.d.ts +55 -0
  12. package/dist/checkbox/index.js +156 -0
  13. package/dist/checkbox/index.js.map +1 -0
  14. package/dist/combobox/index.css +184 -0
  15. package/dist/combobox/index.d.ts +145 -0
  16. package/dist/combobox/index.js +894 -0
  17. package/dist/combobox/index.js.map +1 -0
  18. package/dist/dialog/index.css +218 -0
  19. package/dist/dialog/index.d.ts +65 -0
  20. package/dist/dialog/index.js +124 -0
  21. package/dist/dialog/index.js.map +1 -0
  22. package/dist/dropdown-menu/index.css +238 -0
  23. package/dist/dropdown-menu/index.d.ts +122 -0
  24. package/dist/dropdown-menu/index.js +199 -0
  25. package/dist/dropdown-menu/index.js.map +1 -0
  26. package/dist/flatline.css +467 -0
  27. package/dist/icons-CH4ghH8L.js +41 -0
  28. package/dist/icons-CH4ghH8L.js.map +1 -0
  29. package/dist/index-D-CV7Jz5.d.ts +30 -0
  30. package/dist/input/index.css +23 -0
  31. package/dist/input/index.d.ts +14 -0
  32. package/dist/input/index.js +24 -0
  33. package/dist/input/index.js.map +1 -0
  34. package/dist/label/index.css +11 -0
  35. package/dist/label/index.d.ts +14 -0
  36. package/dist/label/index.js +25 -0
  37. package/dist/label/index.js.map +1 -0
  38. package/dist/lite-CiFvU804.js +9 -0
  39. package/dist/lite-CiFvU804.js.map +1 -0
  40. package/dist/progress-bar/index.css +34 -0
  41. package/dist/progress-bar/index.d.ts +19 -0
  42. package/dist/progress-bar/index.js +61 -0
  43. package/dist/progress-bar/index.js.map +1 -0
  44. package/dist/radio/index.css +64 -0
  45. package/dist/radio/index.d.ts +55 -0
  46. package/dist/radio/index.js +143 -0
  47. package/dist/radio/index.js.map +1 -0
  48. package/dist/select/index.css +53 -0
  49. package/dist/select/index.d.ts +16 -0
  50. package/dist/select/index.js +51 -0
  51. package/dist/select/index.js.map +1 -0
  52. package/dist/slider/index.css +59 -0
  53. package/dist/slider/index.d.ts +16 -0
  54. package/dist/slider/index.js +37 -0
  55. package/dist/slider/index.js.map +1 -0
  56. package/dist/spinner/index.css +44 -0
  57. package/dist/spinner/index.d.ts +24 -0
  58. package/dist/spinner/index.js +48 -0
  59. package/dist/spinner/index.js.map +1 -0
  60. package/dist/switch/index.css +69 -0
  61. package/dist/switch/index.d.ts +22 -0
  62. package/dist/switch/index.js +75 -0
  63. package/dist/switch/index.js.map +1 -0
  64. package/dist/table/index.css +50 -0
  65. package/dist/table/index.d.ts +64 -0
  66. package/dist/table/index.js +142 -0
  67. package/dist/table/index.js.map +1 -0
  68. package/dist/tabs/index.css +114 -0
  69. package/dist/tabs/index.d.ts +40 -0
  70. package/dist/tabs/index.js +67 -0
  71. package/dist/tabs/index.js.map +1 -0
  72. package/dist/textarea/index.css +35 -0
  73. package/dist/textarea/index.d.ts +14 -0
  74. package/dist/textarea/index.js +24 -0
  75. package/dist/textarea/index.js.map +1 -0
  76. package/dist/xstack/index.d.ts +1 -0
  77. package/dist/xstack/index.js +0 -0
  78. package/dist/ystack/index.css +26 -0
  79. package/dist/ystack/index.d.ts +25 -0
  80. package/dist/ystack/index.js +47 -0
  81. package/dist/ystack/index.js.map +1 -0
  82. package/package.json +30 -5
  83. package/dist/src/components/button/button.css +0 -155
  84. package/dist/src/components/button/button.d.ts +0 -9
  85. package/dist/src/components/button/button.jsx +0 -21
  86. package/dist/src/components/button/button.jsx.map +0 -1
  87. package/dist/src/components/button/class.d.ts +0 -16
  88. package/dist/src/components/button/class.js +0 -15
  89. package/dist/src/components/button/class.js.map +0 -1
  90. package/dist/src/components/button/index.d.ts +0 -2
  91. package/dist/src/components/button/index.js +0 -3
  92. package/dist/src/components/button/index.js.map +0 -1
  93. package/dist/src/components/card/card-action.css +0 -15
  94. package/dist/src/components/card/card-content.css +0 -13
  95. package/dist/src/components/card/card-footer.css +0 -39
  96. package/dist/src/components/card/card-header.css +0 -13
  97. package/dist/src/components/card/card-root.css +0 -31
  98. package/dist/src/components/card/card-subtitle.css +0 -12
  99. package/dist/src/components/card/card-title.css +0 -33
  100. package/dist/src/components/card/card.d.ts +0 -42
  101. package/dist/src/components/card/card.jsx +0 -86
  102. package/dist/src/components/card/card.jsx.map +0 -1
  103. package/dist/src/components/card/class.d.ts +0 -28
  104. package/dist/src/components/card/class.js +0 -27
  105. package/dist/src/components/card/class.js.map +0 -1
  106. package/dist/src/components/card/index.d.ts +0 -2
  107. package/dist/src/components/card/index.js +0 -3
  108. package/dist/src/components/card/index.js.map +0 -1
  109. package/dist/src/components/checkbox/checkbox-group.css +0 -9
  110. package/dist/src/components/checkbox/checkbox-group.d.ts +0 -3
  111. package/dist/src/components/checkbox/checkbox-group.jsx +0 -43
  112. package/dist/src/components/checkbox/checkbox-group.jsx.map +0 -1
  113. package/dist/src/components/checkbox/checkbox-root.css +0 -85
  114. package/dist/src/components/checkbox/checkbox-root.d.ts +0 -4
  115. package/dist/src/components/checkbox/checkbox-root.jsx +0 -55
  116. package/dist/src/components/checkbox/checkbox-root.jsx.map +0 -1
  117. package/dist/src/components/checkbox/checkbox.d.ts +0 -9
  118. package/dist/src/components/checkbox/checkbox.jsx +0 -6
  119. package/dist/src/components/checkbox/checkbox.jsx.map +0 -1
  120. package/dist/src/components/checkbox/class.d.ts +0 -8
  121. package/dist/src/components/checkbox/class.js +0 -9
  122. package/dist/src/components/checkbox/class.js.map +0 -1
  123. package/dist/src/components/checkbox/context.d.ts +0 -9
  124. package/dist/src/components/checkbox/context.js +0 -6
  125. package/dist/src/components/checkbox/context.js.map +0 -1
  126. package/dist/src/components/checkbox/index.d.ts +0 -6
  127. package/dist/src/components/checkbox/index.js +0 -7
  128. package/dist/src/components/checkbox/index.js.map +0 -1
  129. package/dist/src/components/checkbox/types.d.ts +0 -16
  130. package/dist/src/components/checkbox/types.js +0 -1
  131. package/dist/src/components/checkbox/types.js.map +0 -1
  132. package/dist/src/components/combobox/class.d.ts +0 -13
  133. package/dist/src/components/combobox/class.js +0 -14
  134. package/dist/src/components/combobox/class.js.map +0 -1
  135. package/dist/src/components/combobox/combobox-content.css +0 -20
  136. package/dist/src/components/combobox/combobox-content.d.ts +0 -2
  137. package/dist/src/components/combobox/combobox-content.jsx +0 -15
  138. package/dist/src/components/combobox/combobox-content.jsx.map +0 -1
  139. package/dist/src/components/combobox/combobox-control.css +0 -29
  140. package/dist/src/components/combobox/combobox-control.d.ts +0 -3
  141. package/dist/src/components/combobox/combobox-control.jsx +0 -19
  142. package/dist/src/components/combobox/combobox-control.jsx.map +0 -1
  143. package/dist/src/components/combobox/combobox-group.css +0 -31
  144. package/dist/src/components/combobox/combobox-group.d.ts +0 -2
  145. package/dist/src/components/combobox/combobox-group.jsx +0 -12
  146. package/dist/src/components/combobox/combobox-group.jsx.map +0 -1
  147. package/dist/src/components/combobox/combobox-hidden-select.d.ts +0 -2
  148. package/dist/src/components/combobox/combobox-hidden-select.jsx +0 -8
  149. package/dist/src/components/combobox/combobox-hidden-select.jsx.map +0 -1
  150. package/dist/src/components/combobox/combobox-icon.css +0 -11
  151. package/dist/src/components/combobox/combobox-icon.d.ts +0 -2
  152. package/dist/src/components/combobox/combobox-icon.jsx +0 -12
  153. package/dist/src/components/combobox/combobox-icon.jsx.map +0 -1
  154. package/dist/src/components/combobox/combobox-input.css +0 -32
  155. package/dist/src/components/combobox/combobox-input.d.ts +0 -3
  156. package/dist/src/components/combobox/combobox-input.jsx +0 -90
  157. package/dist/src/components/combobox/combobox-input.jsx.map +0 -1
  158. package/dist/src/components/combobox/combobox-item-indicator.css +0 -11
  159. package/dist/src/components/combobox/combobox-item-indicator.d.ts +0 -2
  160. package/dist/src/components/combobox/combobox-item-indicator.jsx +0 -16
  161. package/dist/src/components/combobox/combobox-item-indicator.jsx.map +0 -1
  162. package/dist/src/components/combobox/combobox-item-label.d.ts +0 -2
  163. package/dist/src/components/combobox/combobox-item-label.jsx +0 -13
  164. package/dist/src/components/combobox/combobox-item-label.jsx.map +0 -1
  165. package/dist/src/components/combobox/combobox-item.css +0 -48
  166. package/dist/src/components/combobox/combobox-item.d.ts +0 -3
  167. package/dist/src/components/combobox/combobox-item.jsx +0 -30
  168. package/dist/src/components/combobox/combobox-item.jsx.map +0 -1
  169. package/dist/src/components/combobox/combobox-listbox.css +0 -18
  170. package/dist/src/components/combobox/combobox-listbox.d.ts +0 -2
  171. package/dist/src/components/combobox/combobox-listbox.jsx +0 -39
  172. package/dist/src/components/combobox/combobox-listbox.jsx.map +0 -1
  173. package/dist/src/components/combobox/combobox-portal.d.ts +0 -2
  174. package/dist/src/components/combobox/combobox-portal.jsx +0 -6
  175. package/dist/src/components/combobox/combobox-portal.jsx.map +0 -1
  176. package/dist/src/components/combobox/combobox-root.css +0 -12
  177. package/dist/src/components/combobox/combobox-root.d.ts +0 -3
  178. package/dist/src/components/combobox/combobox-root.jsx +0 -362
  179. package/dist/src/components/combobox/combobox-root.jsx.map +0 -1
  180. package/dist/src/components/combobox/combobox-trigger.css +0 -31
  181. package/dist/src/components/combobox/combobox-trigger.d.ts +0 -3
  182. package/dist/src/components/combobox/combobox-trigger.jsx +0 -30
  183. package/dist/src/components/combobox/combobox-trigger.jsx.map +0 -1
  184. package/dist/src/components/combobox/combobox.d.ts +0 -43
  185. package/dist/src/components/combobox/combobox.jsx +0 -39
  186. package/dist/src/components/combobox/combobox.jsx.map +0 -1
  187. package/dist/src/components/combobox/context.d.ts +0 -45
  188. package/dist/src/components/combobox/context.js +0 -18
  189. package/dist/src/components/combobox/context.js.map +0 -1
  190. package/dist/src/components/combobox/index.d.ts +0 -2
  191. package/dist/src/components/combobox/index.js +0 -3
  192. package/dist/src/components/combobox/index.js.map +0 -1
  193. package/dist/src/components/combobox/types.d.ts +0 -68
  194. package/dist/src/components/combobox/types.js +0 -1
  195. package/dist/src/components/combobox/types.js.map +0 -1
  196. package/dist/src/components/combobox/util.d.ts +0 -6
  197. package/dist/src/components/combobox/util.js +0 -58
  198. package/dist/src/components/combobox/util.js.map +0 -1
  199. package/dist/src/components/dialog/class.d.ts +0 -18
  200. package/dist/src/components/dialog/class.js +0 -18
  201. package/dist/src/components/dialog/class.js.map +0 -1
  202. package/dist/src/components/dialog/dialog-close-button.css +0 -48
  203. package/dist/src/components/dialog/dialog-content.css +0 -89
  204. package/dist/src/components/dialog/dialog-description.css +0 -6
  205. package/dist/src/components/dialog/dialog-header.css +0 -12
  206. package/dist/src/components/dialog/dialog-overlay.css +0 -43
  207. package/dist/src/components/dialog/dialog-positioner.css +0 -14
  208. package/dist/src/components/dialog/dialog-title.css +0 -6
  209. package/dist/src/components/dialog/dialog-trigger.css +0 -63
  210. package/dist/src/components/dialog/dialog.d.ts +0 -50
  211. package/dist/src/components/dialog/dialog.jsx +0 -89
  212. package/dist/src/components/dialog/dialog.jsx.map +0 -1
  213. package/dist/src/components/dialog/index.d.ts +0 -2
  214. package/dist/src/components/dialog/index.js +0 -3
  215. package/dist/src/components/dialog/index.js.map +0 -1
  216. package/dist/src/components/dropdown-menu/class.d.ts +0 -16
  217. package/dist/src/components/dropdown-menu/class.js +0 -17
  218. package/dist/src/components/dropdown-menu/class.js.map +0 -1
  219. package/dist/src/components/dropdown-menu/dropdown-menu-arrow.css +0 -7
  220. package/dist/src/components/dropdown-menu/dropdown-menu-arrow.d.ts +0 -3
  221. package/dist/src/components/dropdown-menu/dropdown-menu-arrow.jsx +0 -10
  222. package/dist/src/components/dropdown-menu/dropdown-menu-arrow.jsx.map +0 -1
  223. package/dist/src/components/dropdown-menu/dropdown-menu-checkbox-item.css +0 -38
  224. package/dist/src/components/dropdown-menu/dropdown-menu-checkbox-item.d.ts +0 -3
  225. package/dist/src/components/dropdown-menu/dropdown-menu-checkbox-item.jsx +0 -10
  226. package/dist/src/components/dropdown-menu/dropdown-menu-checkbox-item.jsx.map +0 -1
  227. package/dist/src/components/dropdown-menu/dropdown-menu-content.css +0 -50
  228. package/dist/src/components/dropdown-menu/dropdown-menu-content.d.ts +0 -3
  229. package/dist/src/components/dropdown-menu/dropdown-menu-content.jsx +0 -10
  230. package/dist/src/components/dropdown-menu/dropdown-menu-content.jsx.map +0 -1
  231. package/dist/src/components/dropdown-menu/dropdown-menu-group-label.css +0 -15
  232. package/dist/src/components/dropdown-menu/dropdown-menu-group-label.d.ts +0 -3
  233. package/dist/src/components/dropdown-menu/dropdown-menu-group-label.jsx +0 -10
  234. package/dist/src/components/dropdown-menu/dropdown-menu-group-label.jsx.map +0 -1
  235. package/dist/src/components/dropdown-menu/dropdown-menu-group.d.ts +0 -2
  236. package/dist/src/components/dropdown-menu/dropdown-menu-group.jsx +0 -7
  237. package/dist/src/components/dropdown-menu/dropdown-menu-group.jsx.map +0 -1
  238. package/dist/src/components/dropdown-menu/dropdown-menu-icon.css +0 -21
  239. package/dist/src/components/dropdown-menu/dropdown-menu-icon.d.ts +0 -3
  240. package/dist/src/components/dropdown-menu/dropdown-menu-icon.jsx +0 -10
  241. package/dist/src/components/dropdown-menu/dropdown-menu-icon.jsx.map +0 -1
  242. package/dist/src/components/dropdown-menu/dropdown-menu-item-indicator.css +0 -12
  243. package/dist/src/components/dropdown-menu/dropdown-menu-item-indicator.d.ts +0 -3
  244. package/dist/src/components/dropdown-menu/dropdown-menu-item-indicator.jsx +0 -10
  245. package/dist/src/components/dropdown-menu/dropdown-menu-item-indicator.jsx.map +0 -1
  246. package/dist/src/components/dropdown-menu/dropdown-menu-item-right-slot.css +0 -18
  247. package/dist/src/components/dropdown-menu/dropdown-menu-item-right-slot.d.ts +0 -3
  248. package/dist/src/components/dropdown-menu/dropdown-menu-item-right-slot.jsx +0 -11
  249. package/dist/src/components/dropdown-menu/dropdown-menu-item-right-slot.jsx.map +0 -1
  250. package/dist/src/components/dropdown-menu/dropdown-menu-item.css +0 -37
  251. package/dist/src/components/dropdown-menu/dropdown-menu-item.d.ts +0 -3
  252. package/dist/src/components/dropdown-menu/dropdown-menu-item.jsx +0 -10
  253. package/dist/src/components/dropdown-menu/dropdown-menu-item.jsx.map +0 -1
  254. package/dist/src/components/dropdown-menu/dropdown-menu-portal.d.ts +0 -2
  255. package/dist/src/components/dropdown-menu/dropdown-menu-portal.jsx +0 -5
  256. package/dist/src/components/dropdown-menu/dropdown-menu-portal.jsx.map +0 -1
  257. package/dist/src/components/dropdown-menu/dropdown-menu-radio-group.d.ts +0 -2
  258. package/dist/src/components/dropdown-menu/dropdown-menu-radio-group.jsx +0 -7
  259. package/dist/src/components/dropdown-menu/dropdown-menu-radio-group.jsx.map +0 -1
  260. package/dist/src/components/dropdown-menu/dropdown-menu-radio-item.css +0 -38
  261. package/dist/src/components/dropdown-menu/dropdown-menu-radio-item.d.ts +0 -3
  262. package/dist/src/components/dropdown-menu/dropdown-menu-radio-item.jsx +0 -10
  263. package/dist/src/components/dropdown-menu/dropdown-menu-radio-item.jsx.map +0 -1
  264. package/dist/src/components/dropdown-menu/dropdown-menu-root.d.ts +0 -2
  265. package/dist/src/components/dropdown-menu/dropdown-menu-root.jsx +0 -5
  266. package/dist/src/components/dropdown-menu/dropdown-menu-root.jsx.map +0 -1
  267. package/dist/src/components/dropdown-menu/dropdown-menu-separator.css +0 -11
  268. package/dist/src/components/dropdown-menu/dropdown-menu-separator.d.ts +0 -3
  269. package/dist/src/components/dropdown-menu/dropdown-menu-separator.jsx +0 -10
  270. package/dist/src/components/dropdown-menu/dropdown-menu-separator.jsx.map +0 -1
  271. package/dist/src/components/dropdown-menu/dropdown-menu-sub-content.css +0 -26
  272. package/dist/src/components/dropdown-menu/dropdown-menu-sub-content.d.ts +0 -3
  273. package/dist/src/components/dropdown-menu/dropdown-menu-sub-content.jsx +0 -10
  274. package/dist/src/components/dropdown-menu/dropdown-menu-sub-content.jsx.map +0 -1
  275. package/dist/src/components/dropdown-menu/dropdown-menu-sub-trigger.css +0 -43
  276. package/dist/src/components/dropdown-menu/dropdown-menu-sub-trigger.d.ts +0 -3
  277. package/dist/src/components/dropdown-menu/dropdown-menu-sub-trigger.jsx +0 -10
  278. package/dist/src/components/dropdown-menu/dropdown-menu-sub-trigger.jsx.map +0 -1
  279. package/dist/src/components/dropdown-menu/dropdown-menu-sub.d.ts +0 -2
  280. package/dist/src/components/dropdown-menu/dropdown-menu-sub.jsx +0 -5
  281. package/dist/src/components/dropdown-menu/dropdown-menu-sub.jsx.map +0 -1
  282. package/dist/src/components/dropdown-menu/dropdown-menu-trigger.css +0 -6
  283. package/dist/src/components/dropdown-menu/dropdown-menu-trigger.d.ts +0 -3
  284. package/dist/src/components/dropdown-menu/dropdown-menu-trigger.jsx +0 -16
  285. package/dist/src/components/dropdown-menu/dropdown-menu-trigger.jsx.map +0 -1
  286. package/dist/src/components/dropdown-menu/dropdown-menu.d.ts +0 -43
  287. package/dist/src/components/dropdown-menu/dropdown-menu.jsx +0 -39
  288. package/dist/src/components/dropdown-menu/dropdown-menu.jsx.map +0 -1
  289. package/dist/src/components/dropdown-menu/index.d.ts +0 -21
  290. package/dist/src/components/dropdown-menu/index.js +0 -22
  291. package/dist/src/components/dropdown-menu/index.js.map +0 -1
  292. package/dist/src/components/dropdown-menu/types.d.ts +0 -21
  293. package/dist/src/components/dropdown-menu/types.js +0 -1
  294. package/dist/src/components/dropdown-menu/types.js.map +0 -1
  295. package/dist/src/components/input/class.d.ts +0 -3
  296. package/dist/src/components/input/class.js +0 -4
  297. package/dist/src/components/input/class.js.map +0 -1
  298. package/dist/src/components/input/index.d.ts +0 -2
  299. package/dist/src/components/input/index.js +0 -3
  300. package/dist/src/components/input/index.js.map +0 -1
  301. package/dist/src/components/input/input.css +0 -34
  302. package/dist/src/components/input/input.d.ts +0 -6
  303. package/dist/src/components/input/input.jsx +0 -10
  304. package/dist/src/components/input/input.jsx.map +0 -1
  305. package/dist/src/components/label/class.d.ts +0 -3
  306. package/dist/src/components/label/class.js +0 -4
  307. package/dist/src/components/label/class.js.map +0 -1
  308. package/dist/src/components/label/index.d.ts +0 -2
  309. package/dist/src/components/label/index.js +0 -3
  310. package/dist/src/components/label/index.js.map +0 -1
  311. package/dist/src/components/label/label.css +0 -16
  312. package/dist/src/components/label/label.d.ts +0 -6
  313. package/dist/src/components/label/label.jsx +0 -12
  314. package/dist/src/components/label/label.jsx.map +0 -1
  315. package/dist/src/components/progress-bar/class.d.ts +0 -4
  316. package/dist/src/components/progress-bar/class.js +0 -5
  317. package/dist/src/components/progress-bar/class.js.map +0 -1
  318. package/dist/src/components/progress-bar/index.d.ts +0 -2
  319. package/dist/src/components/progress-bar/index.js +0 -3
  320. package/dist/src/components/progress-bar/index.js.map +0 -1
  321. package/dist/src/components/progress-bar/progress-bar.css +0 -43
  322. package/dist/src/components/progress-bar/progress-bar.d.ts +0 -9
  323. package/dist/src/components/progress-bar/progress-bar.jsx +0 -24
  324. package/dist/src/components/progress-bar/progress-bar.jsx.map +0 -1
  325. package/dist/src/components/radio/class.d.ts +0 -8
  326. package/dist/src/components/radio/class.js +0 -9
  327. package/dist/src/components/radio/class.js.map +0 -1
  328. package/dist/src/components/radio/context.d.ts +0 -9
  329. package/dist/src/components/radio/context.js +0 -6
  330. package/dist/src/components/radio/context.js.map +0 -1
  331. package/dist/src/components/radio/index.d.ts +0 -6
  332. package/dist/src/components/radio/index.js +0 -7
  333. package/dist/src/components/radio/index.js.map +0 -1
  334. package/dist/src/components/radio/radio-group.css +0 -9
  335. package/dist/src/components/radio/radio-group.d.ts +0 -3
  336. package/dist/src/components/radio/radio-group.jsx +0 -33
  337. package/dist/src/components/radio/radio-group.jsx.map +0 -1
  338. package/dist/src/components/radio/radio-root.css +0 -75
  339. package/dist/src/components/radio/radio-root.d.ts +0 -4
  340. package/dist/src/components/radio/radio-root.jsx +0 -51
  341. package/dist/src/components/radio/radio-root.jsx.map +0 -1
  342. package/dist/src/components/radio/radio.d.ts +0 -11
  343. package/dist/src/components/radio/radio.jsx +0 -7
  344. package/dist/src/components/radio/radio.jsx.map +0 -1
  345. package/dist/src/components/radio/types.d.ts +0 -16
  346. package/dist/src/components/radio/types.js +0 -1
  347. package/dist/src/components/radio/types.js.map +0 -1
  348. package/dist/src/components/select/class.d.ts +0 -5
  349. package/dist/src/components/select/class.js +0 -6
  350. package/dist/src/components/select/class.js.map +0 -1
  351. package/dist/src/components/select/index.d.ts +0 -2
  352. package/dist/src/components/select/index.js +0 -3
  353. package/dist/src/components/select/index.js.map +0 -1
  354. package/dist/src/components/select/select.css +0 -76
  355. package/dist/src/components/select/select.d.ts +0 -6
  356. package/dist/src/components/select/select.jsx +0 -16
  357. package/dist/src/components/select/select.jsx.map +0 -1
  358. package/dist/src/components/slider/class.d.ts +0 -3
  359. package/dist/src/components/slider/class.js +0 -4
  360. package/dist/src/components/slider/class.js.map +0 -1
  361. package/dist/src/components/slider/index.d.ts +0 -2
  362. package/dist/src/components/slider/index.js +0 -3
  363. package/dist/src/components/slider/index.js.map +0 -1
  364. package/dist/src/components/slider/slider.css +0 -83
  365. package/dist/src/components/slider/slider.d.ts +0 -7
  366. package/dist/src/components/slider/slider.jsx +0 -19
  367. package/dist/src/components/slider/slider.jsx.map +0 -1
  368. package/dist/src/components/spinner/class.d.ts +0 -10
  369. package/dist/src/components/spinner/class.js +0 -10
  370. package/dist/src/components/spinner/class.js.map +0 -1
  371. package/dist/src/components/spinner/index.d.ts +0 -2
  372. package/dist/src/components/spinner/index.js +0 -3
  373. package/dist/src/components/spinner/index.js.map +0 -1
  374. package/dist/src/components/spinner/spinner.css +0 -51
  375. package/dist/src/components/spinner/spinner.d.ts +0 -9
  376. package/dist/src/components/spinner/spinner.jsx +0 -22
  377. package/dist/src/components/spinner/spinner.jsx.map +0 -1
  378. package/dist/src/components/switch/class.d.ts +0 -7
  379. package/dist/src/components/switch/class.js +0 -8
  380. package/dist/src/components/switch/class.js.map +0 -1
  381. package/dist/src/components/switch/index.d.ts +0 -2
  382. package/dist/src/components/switch/index.js +0 -3
  383. package/dist/src/components/switch/index.js.map +0 -1
  384. package/dist/src/components/switch/switch.css +0 -90
  385. package/dist/src/components/switch/switch.d.ts +0 -9
  386. package/dist/src/components/switch/switch.jsx +0 -28
  387. package/dist/src/components/switch/switch.jsx.map +0 -1
  388. package/dist/src/components/table/class.d.ts +0 -10
  389. package/dist/src/components/table/class.js +0 -11
  390. package/dist/src/components/table/class.js.map +0 -1
  391. package/dist/src/components/table/index.d.ts +0 -11
  392. package/dist/src/components/table/index.js +0 -12
  393. package/dist/src/components/table/index.js.map +0 -1
  394. package/dist/src/components/table/table-body.d.ts +0 -2
  395. package/dist/src/components/table/table-body.jsx +0 -10
  396. package/dist/src/components/table/table-body.jsx.map +0 -1
  397. package/dist/src/components/table/table-caption.css +0 -11
  398. package/dist/src/components/table/table-caption.d.ts +0 -3
  399. package/dist/src/components/table/table-caption.jsx +0 -11
  400. package/dist/src/components/table/table-caption.jsx.map +0 -1
  401. package/dist/src/components/table/table-cell.css +0 -12
  402. package/dist/src/components/table/table-cell.d.ts +0 -3
  403. package/dist/src/components/table/table-cell.jsx +0 -11
  404. package/dist/src/components/table/table-cell.jsx.map +0 -1
  405. package/dist/src/components/table/table-footer.css +0 -15
  406. package/dist/src/components/table/table-footer.d.ts +0 -3
  407. package/dist/src/components/table/table-footer.jsx +0 -11
  408. package/dist/src/components/table/table-footer.jsx.map +0 -1
  409. package/dist/src/components/table/table-head.css +0 -16
  410. package/dist/src/components/table/table-head.d.ts +0 -3
  411. package/dist/src/components/table/table-head.jsx +0 -11
  412. package/dist/src/components/table/table-head.jsx.map +0 -1
  413. package/dist/src/components/table/table-header.d.ts +0 -2
  414. package/dist/src/components/table/table-header.jsx +0 -10
  415. package/dist/src/components/table/table-header.jsx.map +0 -1
  416. package/dist/src/components/table/table-root.css +0 -12
  417. package/dist/src/components/table/table-root.d.ts +0 -3
  418. package/dist/src/components/table/table-root.jsx +0 -11
  419. package/dist/src/components/table/table-root.jsx.map +0 -1
  420. package/dist/src/components/table/table-row.css +0 -6
  421. package/dist/src/components/table/table-row.d.ts +0 -3
  422. package/dist/src/components/table/table-row.jsx +0 -11
  423. package/dist/src/components/table/table-row.jsx.map +0 -1
  424. package/dist/src/components/table/table.d.ts +0 -23
  425. package/dist/src/components/table/table.jsx +0 -19
  426. package/dist/src/components/table/table.jsx.map +0 -1
  427. package/dist/src/components/table/types.d.ts +0 -9
  428. package/dist/src/components/table/types.js +0 -1
  429. package/dist/src/components/table/types.js.map +0 -1
  430. package/dist/src/components/tabs/class.d.ts +0 -12
  431. package/dist/src/components/tabs/class.js +0 -12
  432. package/dist/src/components/tabs/class.js.map +0 -1
  433. package/dist/src/components/tabs/index.d.ts +0 -2
  434. package/dist/src/components/tabs/index.js +0 -3
  435. package/dist/src/components/tabs/index.js.map +0 -1
  436. package/dist/src/components/tabs/tabs-content.css +0 -24
  437. package/dist/src/components/tabs/tabs-indicator.css +0 -32
  438. package/dist/src/components/tabs/tabs-list.css +0 -26
  439. package/dist/src/components/tabs/tabs-root.css +0 -34
  440. package/dist/src/components/tabs/tabs-trigger.css +0 -58
  441. package/dist/src/components/tabs/tabs.d.ts +0 -27
  442. package/dist/src/components/tabs/tabs.jsx +0 -47
  443. package/dist/src/components/tabs/tabs.jsx.map +0 -1
  444. package/dist/src/components/textarea/class.d.ts +0 -3
  445. package/dist/src/components/textarea/class.js +0 -4
  446. package/dist/src/components/textarea/class.js.map +0 -1
  447. package/dist/src/components/textarea/index.d.ts +0 -2
  448. package/dist/src/components/textarea/index.js +0 -3
  449. package/dist/src/components/textarea/index.js.map +0 -1
  450. package/dist/src/components/textarea/textarea.css +0 -46
  451. package/dist/src/components/textarea/textarea.d.ts +0 -6
  452. package/dist/src/components/textarea/textarea.jsx +0 -10
  453. package/dist/src/components/textarea/textarea.jsx.map +0 -1
  454. package/dist/src/components/xstack/class.d.ts +0 -12
  455. package/dist/src/components/xstack/class.js +0 -12
  456. package/dist/src/components/xstack/class.js.map +0 -1
  457. package/dist/src/components/xstack/index.d.ts +0 -1
  458. package/dist/src/components/xstack/index.js +0 -1
  459. package/dist/src/components/xstack/index.js.map +0 -1
  460. package/dist/src/components/xstack/xstack.css +0 -34
  461. package/dist/src/components/xstack/xstack.d.ts +0 -9
  462. package/dist/src/components/xstack/xstack.jsx +0 -15
  463. package/dist/src/components/xstack/xstack.jsx.map +0 -1
  464. package/dist/src/components/ystack/class.d.ts +0 -11
  465. package/dist/src/components/ystack/class.js +0 -11
  466. package/dist/src/components/ystack/class.js.map +0 -1
  467. package/dist/src/components/ystack/index.d.ts +0 -2
  468. package/dist/src/components/ystack/index.js +0 -3
  469. package/dist/src/components/ystack/index.js.map +0 -1
  470. package/dist/src/components/ystack/ystack.css +0 -31
  471. package/dist/src/components/ystack/ystack.d.ts +0 -9
  472. package/dist/src/components/ystack/ystack.jsx +0 -15
  473. package/dist/src/components/ystack/ystack.jsx.map +0 -1
  474. package/dist/src/icons/check-icon.d.ts +0 -2
  475. package/dist/src/icons/check-icon.jsx +0 -8
  476. package/dist/src/icons/check-icon.jsx.map +0 -1
  477. package/dist/src/icons/chevron-down-icon.d.ts +0 -2
  478. package/dist/src/icons/chevron-down-icon.jsx +0 -8
  479. package/dist/src/icons/chevron-down-icon.jsx.map +0 -1
  480. package/dist/src/icons/chevron-right-icon.d.ts +0 -2
  481. package/dist/src/icons/chevron-right-icon.jsx +0 -8
  482. package/dist/src/icons/chevron-right-icon.jsx.map +0 -1
  483. package/dist/src/icons/dot-filled-icon.d.ts +0 -2
  484. package/dist/src/icons/dot-filled-icon.jsx +0 -8
  485. package/dist/src/icons/dot-filled-icon.jsx.map +0 -1
  486. package/dist/src/icons/index.d.ts +0 -5
  487. package/dist/src/icons/index.js +0 -6
  488. package/dist/src/icons/index.js.map +0 -1
  489. package/dist/src/icons/types.d.ts +0 -5
  490. package/dist/src/icons/types.js +0 -1
  491. package/dist/src/icons/types.js.map +0 -1
  492. package/dist/src/index.d.ts +0 -19
  493. package/dist/src/index.js +0 -20
  494. package/dist/src/index.js.map +0 -1
  495. package/dist/src/lib/reflect.d.ts +0 -1
  496. package/dist/src/lib/reflect.js +0 -4
  497. package/dist/src/lib/reflect.js.map +0 -1
  498. package/dist/src/style/colors.css +0 -267
  499. package/dist/src/style/flatline.css +0 -12
  500. package/dist/src/style/reset.css +0 -175
  501. package/dist/src/style/tokens.css +0 -139
@@ -1,16 +0,0 @@
1
- import clsx from 'clsx/lite';
2
- import { Show, splitProps } from 'solid-js';
3
- import { CheckIcon } from '#src/icons';
4
- import { comboboxClass } from './class';
5
- import { useComboboxItemContext } from './context';
6
- export function ComboboxItemIndicator(props) {
7
- const item = useComboboxItemContext();
8
- const [local, rest] = splitProps(props, ['class', 'children']);
9
- const rootClass = () => clsx(comboboxClass.itemIndicator, local.class);
10
- return (<Show when={item.selected}>
11
- <div class={rootClass()} {...rest}>
12
- {local.children ?? <CheckIcon />}
13
- </div>
14
- </Show>);
15
- }
16
- //# sourceMappingURL=combobox-item-indicator.jsx.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"combobox-item-indicator.jsx","sourceRoot":"","sources":["../../../../src/components/combobox/combobox-item-indicator.tsx"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAGnD,MAAM,UAAU,qBAAqB,CAAC,KAAiC;IACtE,MAAM,IAAI,GAAG,sBAAsB,EAAO,CAAC;IAC3C,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,UAAU,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;IAC/D,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAEvE,OAAO,CACN,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CACzB;GAAA,CAAC,GAAG,CACH,KAAK,CAAC,CAAC,SAAS,EAAE,CAAC,CACnB,IAAI,IAAI,CAAC,CAET;IAAA,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,SAAS,CAAC,AAAD,EAAG,CACjC;GAAA,EAAE,GAAG,CACN;EAAA,EAAE,IAAI,CAAC,CACP,CAAC;AACH,CAAC","sourcesContent":["import clsx from 'clsx/lite';\nimport { Show, splitProps } from 'solid-js';\nimport { CheckIcon } from '#src/icons';\nimport { comboboxClass } from './class';\nimport { useComboboxItemContext } from './context';\nimport type { ComboboxItemIndicatorProps } from './types';\n\nexport function ComboboxItemIndicator(props: ComboboxItemIndicatorProps) {\n\tconst item = useComboboxItemContext<any>();\n\tconst [local, rest] = splitProps(props, ['class', 'children']);\n\tconst rootClass = () => clsx(comboboxClass.itemIndicator, local.class);\n\n\treturn (\n\t\t<Show when={item.selected}>\n\t\t\t<div\n\t\t\t\tclass={rootClass()}\n\t\t\t\t{...rest}\n\t\t\t>\n\t\t\t\t{local.children ?? <CheckIcon />}\n\t\t\t</div>\n\t\t</Show>\n\t);\n}\n"]}
@@ -1,2 +0,0 @@
1
- import type { ComboboxItemLabelProps } from './types';
2
- export declare function ComboboxItemLabel(props: ComboboxItemLabelProps): import("solid-js").JSX.Element;
@@ -1,13 +0,0 @@
1
- import clsx from 'clsx/lite';
2
- import { splitProps } from 'solid-js';
3
- import { comboboxClass } from './class';
4
- import { useComboboxItemContext } from './context';
5
- export function ComboboxItemLabel(props) {
6
- const item = useComboboxItemContext();
7
- const [local, rest] = splitProps(props, ['class', 'children']);
8
- const rootClass = () => clsx(comboboxClass.itemLabel, local.class);
9
- return (<div class={rootClass()} {...rest}>
10
- {local.children ?? item.item.textValue}
11
- </div>);
12
- }
13
- //# sourceMappingURL=combobox-item-label.jsx.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"combobox-item-label.jsx","sourceRoot":"","sources":["../../../../src/components/combobox/combobox-item-label.tsx"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAGnD,MAAM,UAAU,iBAAiB,CAAC,KAA6B;IAC9D,MAAM,IAAI,GAAG,sBAAsB,EAAO,CAAC;IAC3C,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,UAAU,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;IAC/D,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAEnE,OAAO,CACN,CAAC,GAAG,CACH,KAAK,CAAC,CAAC,SAAS,EAAE,CAAC,CACnB,IAAI,IAAI,CAAC,CAET;GAAA,CAAC,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CACvC;EAAA,EAAE,GAAG,CAAC,CACN,CAAC;AACH,CAAC","sourcesContent":["import clsx from 'clsx/lite';\nimport { splitProps } from 'solid-js';\nimport { comboboxClass } from './class';\nimport { useComboboxItemContext } from './context';\nimport type { ComboboxItemLabelProps } from './types';\n\nexport function ComboboxItemLabel(props: ComboboxItemLabelProps) {\n\tconst item = useComboboxItemContext<any>();\n\tconst [local, rest] = splitProps(props, ['class', 'children']);\n\tconst rootClass = () => clsx(comboboxClass.itemLabel, local.class);\n\n\treturn (\n\t\t<div\n\t\t\tclass={rootClass()}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{local.children ?? item.item.textValue}\n\t\t</div>\n\t);\n}\n"]}
@@ -1,48 +0,0 @@
1
- @layer components {
2
- .fl-combobox_item {
3
- /* reset */
4
- outline: none;
5
-
6
- /* layout */
7
- display: flex;
8
- align-items: center;
9
- justify-content: space-between;
10
- min-height: var(--fl-size-8);
11
-
12
- /* spacing */
13
- gap: var(--fl-size-2);
14
- padding-inline: var(--fl-size-2);
15
- padding-block: var(--fl-size-1-5);
16
-
17
- /* background */
18
- border-radius: var(--fl-radius-sm);
19
-
20
- /* text */
21
- color: var(--fl-body-text-color);
22
- font: var(--fl-font-body);
23
-
24
- /* pointer */
25
- cursor: pointer;
26
- user-select: none;
27
- }
28
-
29
- .fl-combobox_item[data-disabled] {
30
- cursor: var(--fl-disabled-cursor);
31
- opacity: var(--fl-disabled-opacity);
32
- }
33
-
34
- .fl-combobox_item[data-selected] {
35
- background: color-mix(in srgb, var(--fl-body-bg-color), var(--fl-primary-color) 15%);
36
- }
37
-
38
- .fl-combobox_item[data-highlighted] {
39
- background: var(--fl-primary-color);
40
- color: var(--fl-primary-text-color);
41
- }
42
-
43
- .fl-combobox_item .fl-combobox_item-label {
44
- /* layout */
45
- flex: 1 1 auto;
46
- min-width: 0;
47
- }
48
- }
@@ -1,3 +0,0 @@
1
- import { type JSX } from 'solid-js';
2
- import type { ComboboxItemProps } from './types';
3
- export declare function ComboboxItem<TOption = any>(props: ComboboxItemProps<TOption>): JSX.Element;
@@ -1,30 +0,0 @@
1
- import clsx from 'clsx/lite';
2
- import { splitProps } from 'solid-js';
3
- import { comboboxClass } from './class';
4
- import { ComboboxItemContext, useComboboxContext } from './context';
5
- import { callEventHandler } from './util';
6
- export function ComboboxItem(props) {
7
- const context = useComboboxContext();
8
- const [local, rest] = splitProps(props, ['class', 'item', 'children', 'onMouseEnter', 'onMouseDown', 'onClick']);
9
- const rootClass = () => clsx(comboboxClass.item, local.class);
10
- const selected = () => context.selectedItem()?.key === local.item.key;
11
- const highlighted = () => context.highlightedKey() === local.item.key;
12
- const handleMouseEnter = (event) => {
13
- callEventHandler(local.onMouseEnter, event);
14
- context.setHighlightedKey(local.item.key);
15
- };
16
- const handleMouseDown = (event) => {
17
- callEventHandler(local.onMouseDown, event);
18
- event.preventDefault();
19
- };
20
- const handleClick = (event) => {
21
- callEventHandler(local.onClick, event);
22
- context.selectItem(local.item);
23
- };
24
- return (<ComboboxItemContext.Provider value={{ item: local.item, selected: selected(), highlighted: highlighted() }}>
25
- <li id={context.getItemId(local.item.key)} class={rootClass()} role="option" aria-selected={selected()} data-selected={selected() ? '' : undefined} data-highlighted={highlighted() ? '' : undefined} data-disabled={local.item.disabled ? '' : undefined} onMouseEnter={handleMouseEnter} onMouseDown={handleMouseDown} onClick={handleClick} {...rest}>
26
- {local.children}
27
- </li>
28
- </ComboboxItemContext.Provider>);
29
- }
30
- //# sourceMappingURL=combobox-item.jsx.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"combobox-item.jsx","sourceRoot":"","sources":["../../../../src/components/combobox/combobox-item.tsx"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAY,UAAU,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAEpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AAE1C,MAAM,UAAU,YAAY,CAAgB,KAAiC;IAC5E,MAAM,OAAO,GAAG,kBAAkB,EAAgB,CAAC;IACnD,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,UAAU,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC;IACjH,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAC9D,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,GAAG,KAAK,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;IACtE,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,cAAc,EAAE,KAAK,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;IAEtE,MAAM,gBAAgB,GAAqD,CAAC,KAAK,EAAE,EAAE;QACpF,gBAAgB,CAAC,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;QAC5C,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC3C,CAAC,CAAC;IAEF,MAAM,eAAe,GAAqD,CAAC,KAAK,EAAE,EAAE;QACnF,gBAAgB,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QAC3C,KAAK,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC,CAAC;IAEF,MAAM,WAAW,GAAqD,CAAC,KAAK,EAAE,EAAE;QAC/E,gBAAgB,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACvC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC,CAAC;IAEF,OAAO,CACN,CAAC,mBAAmB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,EAAE,CAAC,CAC3G;GAAA,CAAC,EAAE,CACF,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CACtC,KAAK,CAAC,CAAC,SAAS,EAAE,CAAC,CACnB,IAAI,CAAC,QAAQ,CACb,aAAa,CAAC,CAAC,QAAQ,EAAE,CAAC,CAC1B,aAAa,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAC3C,gBAAgB,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CACjD,aAAa,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CACpD,YAAY,CAAC,CAAC,gBAAgB,CAAC,CAC/B,WAAW,CAAC,CAAC,eAAe,CAAC,CAC7B,OAAO,CAAC,CAAC,WAAW,CAAC,CACrB,IAAI,IAAI,CAAC,CAET;IAAA,CAAC,KAAK,CAAC,QAAQ,CAChB;GAAA,EAAE,EAAE,CACL;EAAA,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAC/B,CAAC;AACH,CAAC","sourcesContent":["import clsx from 'clsx/lite';\nimport { type JSX, splitProps } from 'solid-js';\nimport { comboboxClass } from './class';\nimport { ComboboxItemContext, useComboboxContext } from './context';\nimport type { ComboboxItemProps } from './types';\nimport { callEventHandler } from './util';\n\nexport function ComboboxItem<TOption = any>(props: ComboboxItemProps<TOption>) {\n\tconst context = useComboboxContext<TOption, any>();\n\tconst [local, rest] = splitProps(props, ['class', 'item', 'children', 'onMouseEnter', 'onMouseDown', 'onClick']);\n\tconst rootClass = () => clsx(comboboxClass.item, local.class);\n\tconst selected = () => context.selectedItem()?.key === local.item.key;\n\tconst highlighted = () => context.highlightedKey() === local.item.key;\n\n\tconst handleMouseEnter: JSX.EventHandlerUnion<HTMLLIElement, MouseEvent> = (event) => {\n\t\tcallEventHandler(local.onMouseEnter, event);\n\t\tcontext.setHighlightedKey(local.item.key);\n\t};\n\n\tconst handleMouseDown: JSX.EventHandlerUnion<HTMLLIElement, MouseEvent> = (event) => {\n\t\tcallEventHandler(local.onMouseDown, event);\n\t\tevent.preventDefault();\n\t};\n\n\tconst handleClick: JSX.EventHandlerUnion<HTMLLIElement, MouseEvent> = (event) => {\n\t\tcallEventHandler(local.onClick, event);\n\t\tcontext.selectItem(local.item);\n\t};\n\n\treturn (\n\t\t<ComboboxItemContext.Provider value={{ item: local.item, selected: selected(), highlighted: highlighted() }}>\n\t\t\t<li\n\t\t\t\tid={context.getItemId(local.item.key)}\n\t\t\t\tclass={rootClass()}\n\t\t\t\trole=\"option\"\n\t\t\t\taria-selected={selected()}\n\t\t\t\tdata-selected={selected() ? '' : undefined}\n\t\t\t\tdata-highlighted={highlighted() ? '' : undefined}\n\t\t\t\tdata-disabled={local.item.disabled ? '' : undefined}\n\t\t\t\tonMouseEnter={handleMouseEnter}\n\t\t\t\tonMouseDown={handleMouseDown}\n\t\t\t\tonClick={handleClick}\n\t\t\t\t{...rest}\n\t\t\t>\n\t\t\t\t{local.children}\n\t\t\t</li>\n\t\t</ComboboxItemContext.Provider>\n\t);\n}\n"]}
@@ -1,18 +0,0 @@
1
- @layer components {
2
- .fl-combobox_listbox {
3
- /* reset */
4
- list-style: none;
5
-
6
- /* layout */
7
- max-height: inherit;
8
- overflow-y: auto;
9
-
10
- /* spacing */
11
- margin: 0;
12
- padding: var(--fl-size-2);
13
- }
14
-
15
- .fl-combobox_listbox:focus {
16
- outline: none;
17
- }
18
- }
@@ -1,2 +0,0 @@
1
- import type { ComboboxListboxProps } from './types';
2
- export declare function ComboboxListbox<TOption = any, TOptionGroup = never>(props: ComboboxListboxProps): import("solid-js").JSX.Element;
@@ -1,39 +0,0 @@
1
- import clsx from 'clsx/lite';
2
- import { For, Show, splitProps } from 'solid-js';
3
- import { comboboxClass } from './class';
4
- import { ComboboxGroup } from './combobox-group';
5
- import { ComboboxItem } from './combobox-item';
6
- import { ComboboxItemIndicator } from './combobox-item-indicator';
7
- import { ComboboxItemLabel } from './combobox-item-label';
8
- import { useComboboxContext } from './context';
9
- function DefaultItemComponent(props) {
10
- return (<ComboboxItem item={props.item}>
11
- <ComboboxItemLabel>{props.item.textValue}</ComboboxItemLabel>
12
- <ComboboxItemIndicator />
13
- </ComboboxItem>);
14
- }
15
- function DefaultGroupComponent(props) {
16
- return <ComboboxGroup>{props.group.textValue}</ComboboxGroup>;
17
- }
18
- export function ComboboxListbox(props) {
19
- const context = useComboboxContext();
20
- const [local, rest] = splitProps(props, ['class', 'children']);
21
- const rootClass = () => clsx(comboboxClass.listbox, local.class);
22
- const ItemComponent = () => context.itemComponent ?? DefaultItemComponent;
23
- const GroupComponent = () => context.groupComponent ?? DefaultGroupComponent;
24
- return (<ul id={`${context.rootId}-listbox`} class={rootClass()} role="listbox" {...rest}>
25
- {local.children ?? (<For each={context.visibleGroups()}>
26
- {(group) => {
27
- const GroupRenderer = GroupComponent();
28
- const ItemRenderer = ItemComponent();
29
- return (<>
30
- <Show when={group.rawValue !== undefined}>
31
- <GroupRenderer group={group}/>
32
- </Show>
33
- <For each={group.items}>{(item) => <ItemRenderer item={item}/>}</For>
34
- </>);
35
- }}
36
- </For>)}
37
- </ul>);
38
- }
39
- //# sourceMappingURL=combobox-listbox.jsx.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"combobox-listbox.jsx","sourceRoot":"","sources":["../../../../src/components/combobox/combobox-listbox.tsx"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAG/C,SAAS,oBAAoB,CAAU,KAAuC;IAC7E,OAAO,CACN,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAC9B;GAAA,CAAC,iBAAiB,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,iBAAiB,CAC5D;GAAA,CAAC,qBAAqB,CAAC,AAAD,EACvB;EAAA,EAAE,YAAY,CAAC,CACf,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAAe,KAA6C;IACzF,OAAO,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,aAAa,CAAC,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,eAAe,CAAsC,KAA2B;IAC/F,MAAM,OAAO,GAAG,kBAAkB,EAAyB,CAAC;IAC5D,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,UAAU,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;IAC/D,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IACjE,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,aAAa,IAAI,oBAA6B,CAAC;IACnF,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,cAAc,IAAI,qBAAmC,CAAC;IAE3F,OAAO,CACN,CAAC,EAAE,CACF,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,UAAU,CAAC,CAChC,KAAK,CAAC,CAAC,SAAS,EAAE,CAAC,CACnB,IAAI,CAAC,SAAS,CACd,IAAI,IAAI,CAAC,CAET;GAAA,CAAC,KAAK,CAAC,QAAQ,IAAI,CAClB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,CAClC;KAAA,CAAC,CAAC,KAAK,EAAE,EAAE;gBACV,MAAM,aAAa,GAAG,cAAc,EAAE,CAAC;gBACvC,MAAM,YAAY,GAAG,aAAa,EAAE,CAAC;gBAErC,OAAO,CACN,EACC;QAAA,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CACxC;SAAA,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,EAC7B;QAAA,EAAE,IAAI,CACN;QAAA,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAG,CAAC,EAAE,GAAG,CACtE;OAAA,GAAG,CACH,CAAC;YACH,CAAC,CACF;IAAA,EAAE,GAAG,CAAC,CACN,CACF;EAAA,EAAE,EAAE,CAAC,CACL,CAAC;AACH,CAAC","sourcesContent":["import clsx from 'clsx/lite';\nimport { For, Show, splitProps } from 'solid-js';\nimport { comboboxClass } from './class';\nimport { ComboboxGroup } from './combobox-group';\nimport { ComboboxItem } from './combobox-item';\nimport { ComboboxItemIndicator } from './combobox-item-indicator';\nimport { ComboboxItemLabel } from './combobox-item-label';\nimport { useComboboxContext } from './context';\nimport type { ComboboxListboxProps, ComboboxRenderGroupProps, ComboboxRenderItemProps } from './types';\n\nfunction DefaultItemComponent<TOption>(props: ComboboxRenderItemProps<TOption>) {\n\treturn (\n\t\t<ComboboxItem item={props.item}>\n\t\t\t<ComboboxItemLabel>{props.item.textValue}</ComboboxItemLabel>\n\t\t\t<ComboboxItemIndicator />\n\t\t</ComboboxItem>\n\t);\n}\n\nfunction DefaultGroupComponent<TOptionGroup>(props: ComboboxRenderGroupProps<TOptionGroup>) {\n\treturn <ComboboxGroup>{props.group.textValue}</ComboboxGroup>;\n}\n\nexport function ComboboxListbox<TOption = any, TOptionGroup = never>(props: ComboboxListboxProps) {\n\tconst context = useComboboxContext<TOption, TOptionGroup>();\n\tconst [local, rest] = splitProps(props, ['class', 'children']);\n\tconst rootClass = () => clsx(comboboxClass.listbox, local.class);\n\tconst ItemComponent = () => context.itemComponent ?? DefaultItemComponent<TOption>;\n\tconst GroupComponent = () => context.groupComponent ?? DefaultGroupComponent<TOptionGroup>;\n\n\treturn (\n\t\t<ul\n\t\t\tid={`${context.rootId}-listbox`}\n\t\t\tclass={rootClass()}\n\t\t\trole=\"listbox\"\n\t\t\t{...rest}\n\t\t>\n\t\t\t{local.children ?? (\n\t\t\t\t<For each={context.visibleGroups()}>\n\t\t\t\t\t{(group) => {\n\t\t\t\t\t\tconst GroupRenderer = GroupComponent();\n\t\t\t\t\t\tconst ItemRenderer = ItemComponent();\n\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<Show when={group.rawValue !== undefined}>\n\t\t\t\t\t\t\t\t\t<GroupRenderer group={group} />\n\t\t\t\t\t\t\t\t</Show>\n\t\t\t\t\t\t\t\t<For each={group.items}>{(item) => <ItemRenderer item={item} />}</For>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t);\n\t\t\t\t\t}}\n\t\t\t\t</For>\n\t\t\t)}\n\t\t</ul>\n\t);\n}\n"]}
@@ -1,2 +0,0 @@
1
- import type { ComboboxPortalProps } from './types';
2
- export declare function ComboboxPortal(props: ComboboxPortalProps): import("solid-js").JSX.Element;
@@ -1,6 +0,0 @@
1
- import { children } from 'solid-js';
2
- export function ComboboxPortal(props) {
3
- const resolvedChildren = children(() => props.children);
4
- return <>{resolvedChildren()}</>;
5
- }
6
- //# sourceMappingURL=combobox-portal.jsx.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"combobox-portal.jsx","sourceRoot":"","sources":["../../../../src/components/combobox/combobox-portal.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGpC,MAAM,UAAU,cAAc,CAAC,KAA0B;IACxD,MAAM,gBAAgB,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAExD,OAAO,EAAE,CAAC,gBAAgB,EAAE,CAAC,GAAG,CAAC;AAClC,CAAC","sourcesContent":["import { children } from 'solid-js';\nimport type { ComboboxPortalProps } from './types';\n\nexport function ComboboxPortal(props: ComboboxPortalProps) {\n\tconst resolvedChildren = children(() => props.children);\n\n\treturn <>{resolvedChildren()}</>;\n}\n"]}
@@ -1,12 +0,0 @@
1
- @layer components {
2
- .fl-combobox {
3
- /* layout */
4
- position: relative;
5
- display: inline-flex;
6
- flex-direction: column;
7
- width: 100%;
8
-
9
- /* spacing */
10
- gap: var(--fl-size-1);
11
- }
12
- }
@@ -1,3 +0,0 @@
1
- import { type JSX } from 'solid-js';
2
- import type { ComboboxRootProps } from './types';
3
- export declare function ComboboxRoot<TOption, TOptionGroup = never>(props: ComboboxRootProps<TOption, TOptionGroup>): JSX.Element;
@@ -1,362 +0,0 @@
1
- import clsx from 'clsx/lite';
2
- import { children, createEffect, createMemo, createSignal, createUniqueId, mergeProps, onCleanup, onMount, splitProps, } from 'solid-js';
3
- import { comboboxClass } from './class';
4
- import { ComboboxContent } from './combobox-content';
5
- import { ComboboxControl } from './combobox-control';
6
- import { ComboboxInput } from './combobox-input';
7
- import { ComboboxListbox } from './combobox-listbox';
8
- import { ComboboxPortal } from './combobox-portal';
9
- import { ComboboxTrigger } from './combobox-trigger';
10
- import { ComboboxContext } from './context';
11
- import { callEventHandler, createContainsFilter, defaultTextValue, resolveAccessor, resolveGroupChildren, } from './util';
12
- export function ComboboxRoot(props) {
13
- const merged = mergeProps({
14
- closeOnSelection: true,
15
- }, props);
16
- const [local, rest] = splitProps(merged, [
17
- 'class',
18
- 'children',
19
- 'options',
20
- 'optionValue',
21
- 'optionTextValue',
22
- 'optionLabel',
23
- 'optionDisabled',
24
- 'optionGroupChildren',
25
- 'itemComponent',
26
- 'groupComponent',
27
- 'placeholder',
28
- 'value',
29
- 'defaultValue',
30
- 'inputValue',
31
- 'defaultInputValue',
32
- 'onChange',
33
- 'onInputChange',
34
- 'open',
35
- 'defaultOpen',
36
- 'onOpenChange',
37
- 'disabled',
38
- 'readOnly',
39
- 'required',
40
- 'name',
41
- 'closeOnSelection',
42
- 'onFocusOut',
43
- ]);
44
- const resolvedChildren = children(() => local.children);
45
- const rootId = createUniqueId();
46
- const [rootRef, setRootRef] = createSignal();
47
- const [inputRef, setInputRef] = createSignal();
48
- const [internalValue, setInternalValue] = createSignal(local.defaultValue ?? null);
49
- const [internalOpen, setInternalOpen] = createSignal(Boolean(local.defaultOpen));
50
- const [internalInputValue, setInternalInputValue] = createSignal(local.defaultInputValue ?? '');
51
- const [filterValue, setFilterValue] = createSignal('');
52
- const [highlightedKey, setHighlightedKey] = createSignal(null);
53
- const isControlledValue = () => local.value !== undefined;
54
- const isControlledInputValue = () => local.inputValue !== undefined;
55
- const isControlledOpen = () => local.open !== undefined;
56
- const filter = createMemo(() => createContainsFilter());
57
- const inputValue = createMemo(() => {
58
- if (isControlledInputValue()) {
59
- return local.inputValue ?? '';
60
- }
61
- return internalInputValue();
62
- });
63
- const normalizedGroups = createMemo(() => {
64
- const groups = [];
65
- const looseItems = [];
66
- let itemIndex = 0;
67
- for (let index = 0; index < local.options.length; index += 1) {
68
- const entry = local.options[index];
69
- const groupChildren = resolveGroupChildren(entry, local.optionGroupChildren);
70
- if (groupChildren !== undefined) {
71
- const groupItems = groupChildren.map((option) => {
72
- const value = String(resolveAccessor(option, local.optionValue, defaultTextValue));
73
- const label = resolveAccessor(option, local.optionLabel, defaultTextValue);
74
- const textValue = resolveAccessor(option, local.optionTextValue, () => label);
75
- const disabled = Boolean(resolveAccessor(option, local.optionDisabled, () => false));
76
- const item = {
77
- key: `${value}-${itemIndex}`,
78
- value,
79
- label,
80
- textValue,
81
- disabled,
82
- rawValue: option,
83
- };
84
- itemIndex += 1;
85
- return item;
86
- });
87
- groups.push({
88
- key: `group-${index}`,
89
- textValue: defaultTextValue(entry),
90
- rawValue: entry,
91
- items: groupItems,
92
- });
93
- continue;
94
- }
95
- const option = entry;
96
- const value = String(resolveAccessor(option, local.optionValue, defaultTextValue));
97
- const label = resolveAccessor(option, local.optionLabel, defaultTextValue);
98
- const textValue = resolveAccessor(option, local.optionTextValue, () => label);
99
- const disabled = Boolean(resolveAccessor(option, local.optionDisabled, () => false));
100
- looseItems.push({
101
- key: `${value}-${itemIndex}`,
102
- value,
103
- label,
104
- textValue,
105
- disabled,
106
- rawValue: option,
107
- });
108
- itemIndex += 1;
109
- }
110
- if (looseItems.length > 0) {
111
- groups.unshift({
112
- key: 'group-root',
113
- textValue: '',
114
- items: looseItems,
115
- });
116
- }
117
- return groups;
118
- });
119
- const allItems = createMemo(() => normalizedGroups().flatMap((group) => group.items));
120
- const selectedItem = createMemo(() => {
121
- let selectedOption = internalValue();
122
- if (isControlledValue()) {
123
- selectedOption = local.value ?? null;
124
- }
125
- if (selectedOption == null) {
126
- return null;
127
- }
128
- const selectedValue = String(resolveAccessor(selectedOption, local.optionValue, defaultTextValue));
129
- return allItems().find((item) => item.value === selectedValue) ?? null;
130
- });
131
- const visibleGroups = createMemo(() => {
132
- const currentInput = filterValue().trim();
133
- return normalizedGroups()
134
- .map((group) => ({
135
- ...group,
136
- items: group.items.filter((item) => filter()(item.rawValue, currentInput)),
137
- }))
138
- .filter((group) => group.items.length > 0);
139
- });
140
- const visibleItems = createMemo(() => visibleGroups().flatMap((group) => group.items));
141
- const isOpen = createMemo(() => (isControlledOpen() ? Boolean(local.open) : internalOpen()) && visibleItems().length > 0);
142
- const setOpen = (value) => {
143
- if (!isControlledOpen()) {
144
- setInternalOpen(value);
145
- }
146
- local.onOpenChange?.(value);
147
- };
148
- const setSelectedOption = (value) => {
149
- if (!isControlledValue()) {
150
- setInternalValue(() => value);
151
- }
152
- local.onChange?.(value);
153
- };
154
- const setDisplayedInputValue = (value, emitChange = false) => {
155
- if (!isControlledInputValue()) {
156
- setInternalInputValue(value);
157
- }
158
- if (emitChange) {
159
- local.onInputChange?.(value);
160
- }
161
- };
162
- const restoreInputFromSelection = () => {
163
- setDisplayedInputValue(selectedItem()?.label ?? '');
164
- setFilterValue('');
165
- };
166
- const highlightByIndex = (index) => {
167
- const items = visibleItems();
168
- if (items.length === 0) {
169
- setHighlightedKey(null);
170
- return;
171
- }
172
- const boundedIndex = (index + items.length) % items.length;
173
- setHighlightedKey(items[boundedIndex]?.key ?? null);
174
- };
175
- const highlightFirst = () => highlightByIndex(0);
176
- const highlightLast = () => highlightByIndex(visibleItems().length - 1);
177
- const highlightNext = () => {
178
- const items = visibleItems();
179
- const index = items.findIndex((item) => item.key === highlightedKey());
180
- highlightByIndex(index >= 0 ? index + 1 : 0);
181
- };
182
- const highlightPrevious = () => {
183
- const items = visibleItems();
184
- const index = items.findIndex((item) => item.key === highlightedKey());
185
- highlightByIndex(index >= 0 ? index - 1 : items.length - 1);
186
- };
187
- const openPopup = (strategy = 'first') => {
188
- if (local.disabled || local.readOnly || visibleItems().length === 0) {
189
- return;
190
- }
191
- setOpen(true);
192
- if (strategy === 'last') {
193
- highlightLast();
194
- return;
195
- }
196
- if (strategy === 'preserve') {
197
- if (highlightedKey() !== null) {
198
- return;
199
- }
200
- if (selectedItem()) {
201
- setHighlightedKey(selectedItem().key);
202
- return;
203
- }
204
- }
205
- highlightFirst();
206
- };
207
- const closePopup = (restoreInput = true) => {
208
- setOpen(false);
209
- setHighlightedKey(null);
210
- if (restoreInput) {
211
- restoreInputFromSelection();
212
- }
213
- };
214
- const selectItem = (item) => {
215
- if (item.disabled) {
216
- return;
217
- }
218
- setSelectedOption(item.rawValue);
219
- setDisplayedInputValue(item.label);
220
- setFilterValue('');
221
- setHighlightedKey(item.key);
222
- if (local.closeOnSelection) {
223
- setOpen(false);
224
- }
225
- inputRef()?.focus();
226
- };
227
- const clearPendingInput = () => {
228
- if (selectedItem() === null) {
229
- setDisplayedInputValue('');
230
- setFilterValue('');
231
- return;
232
- }
233
- restoreInputFromSelection();
234
- };
235
- const clearSelectedItem = () => {
236
- setSelectedOption(null);
237
- setDisplayedInputValue('');
238
- setFilterValue('');
239
- setHighlightedKey(null);
240
- setOpen(false);
241
- inputRef()?.focus();
242
- };
243
- createEffect(() => {
244
- if (isControlledValue() && selectedItem() !== null) {
245
- restoreInputFromSelection();
246
- }
247
- });
248
- createEffect(() => {
249
- const items = visibleItems();
250
- const selected = selectedItem();
251
- if (items.length === 0) {
252
- setHighlightedKey(null);
253
- setOpen(false);
254
- return;
255
- }
256
- if (highlightedKey() && items.some((item) => item.key === highlightedKey())) {
257
- return;
258
- }
259
- if (isOpen()) {
260
- if (selected && items.some((item) => item.key === selected.key)) {
261
- setHighlightedKey(selected.key);
262
- return;
263
- }
264
- highlightFirst();
265
- }
266
- });
267
- onMount(() => {
268
- restoreInputFromSelection();
269
- const handlePointerDown = (event) => {
270
- const root = rootRef();
271
- if (!root || root.contains(event.target)) {
272
- return;
273
- }
274
- closePopup(true);
275
- };
276
- document.addEventListener('pointerdown', handlePointerDown);
277
- onCleanup(() => {
278
- document.removeEventListener('pointerdown', handlePointerDown);
279
- });
280
- });
281
- const context = {
282
- rootId,
283
- rootRef,
284
- setRootRef,
285
- inputRef,
286
- setInputRef,
287
- inputValue,
288
- setInputValue: (value) => {
289
- setDisplayedInputValue(value, true);
290
- setFilterValue(value);
291
- if (selectedItem() && value !== selectedItem().label) {
292
- setSelectedOption(null);
293
- }
294
- if (value.trim() === '') {
295
- closePopup(false);
296
- return;
297
- }
298
- openPopup('first');
299
- },
300
- isOpen,
301
- openPopup,
302
- closePopup,
303
- togglePopup: () => {
304
- if (isOpen()) {
305
- closePopup(true);
306
- return;
307
- }
308
- openPopup('first');
309
- },
310
- visibleGroups,
311
- visibleItems,
312
- selectedItem,
313
- highlightedKey,
314
- setHighlightedKey,
315
- highlightNext,
316
- highlightPrevious,
317
- highlightFirst,
318
- highlightLast,
319
- selectItem,
320
- getItemId: (key) => `${rootId}-item-${key}`,
321
- itemComponent: local.itemComponent,
322
- groupComponent: local.groupComponent,
323
- placeholder: () => local.placeholder,
324
- disabled: () => Boolean(local.disabled),
325
- readOnly: () => Boolean(local.readOnly),
326
- required: () => Boolean(local.required),
327
- name: () => local.name,
328
- clearPendingInput,
329
- clearSelectedItem,
330
- };
331
- const rootClass = () => clsx(comboboxClass.root, local.class);
332
- const handleFocusOut = (event) => {
333
- callEventHandler(local.onFocusOut, event);
334
- const nextTarget = event.relatedTarget;
335
- if (nextTarget && rootRef()?.contains(nextTarget)) {
336
- return;
337
- }
338
- queueMicrotask(() => {
339
- const activeElement = document.activeElement;
340
- if (activeElement instanceof Node && rootRef()?.contains(activeElement)) {
341
- return;
342
- }
343
- closePopup(true);
344
- });
345
- };
346
- return (<ComboboxContext.Provider value={context}>
347
- <div class={rootClass()} ref={setRootRef} onFocusOut={handleFocusOut} {...rest}>
348
- {local.children ? (resolvedChildren()) : (<>
349
- <ComboboxControl>
350
- <ComboboxInput aria-label={local.placeholder ?? 'Combobox'}/>
351
- <ComboboxTrigger />
352
- </ComboboxControl>
353
- <ComboboxPortal>
354
- <ComboboxContent>
355
- <ComboboxListbox />
356
- </ComboboxContent>
357
- </ComboboxPortal>
358
- </>)}
359
- </div>
360
- </ComboboxContext.Provider>);
361
- }
362
- //# sourceMappingURL=combobox-root.jsx.map