@rpcbase/ui 0.252.0 → 0.254.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 (353) hide show
  1. package/dist/components/Notifications/types.d.ts +2 -0
  2. package/dist/components/Notifications/types.d.ts.map +1 -1
  3. package/dist/index10.js +2 -2
  4. package/dist/index106.js +1 -1
  5. package/dist/index11.js +2 -2
  6. package/dist/index12.js +3 -3
  7. package/dist/index120.js +10 -10
  8. package/dist/index122.js +2 -2
  9. package/dist/index123.js +3 -3
  10. package/dist/index13.js +2 -2
  11. package/dist/index14.js +2 -2
  12. package/dist/index15.js +2 -2
  13. package/dist/index16.js +8 -8
  14. package/dist/index167.js +3 -3
  15. package/dist/index17.js +1 -1
  16. package/dist/index172.js +3 -3
  17. package/dist/index175.js +1 -1
  18. package/dist/index176.js +4 -4
  19. package/dist/index18.js +7 -7
  20. package/dist/index182.js +2 -2
  21. package/dist/index184.js +4 -4
  22. package/dist/index185.js +14 -14
  23. package/dist/index186.js +1 -1
  24. package/dist/index187.js +1 -1
  25. package/dist/index188.js +6 -6
  26. package/dist/index189.js +2 -2
  27. package/dist/index19.js +16 -16
  28. package/dist/index192.js +2 -2
  29. package/dist/index193.js +6 -6
  30. package/dist/index21.js +1 -1
  31. package/dist/index22.js +2 -2
  32. package/dist/index23.js +1 -1
  33. package/dist/index235.js +27 -14
  34. package/dist/index235.js.map +1 -1
  35. package/dist/index236.js +12 -7
  36. package/dist/index236.js.map +1 -1
  37. package/dist/index237.js +24 -9
  38. package/dist/index237.js.map +1 -1
  39. package/dist/index238.js +5 -10
  40. package/dist/index238.js.map +1 -1
  41. package/dist/index239.js +15 -20
  42. package/dist/index239.js.map +1 -1
  43. package/dist/index24.js +1 -1
  44. package/dist/index240.js +7 -8
  45. package/dist/index240.js.map +1 -1
  46. package/dist/index241.js +10 -9
  47. package/dist/index241.js.map +1 -1
  48. package/dist/index242.js +10 -9
  49. package/dist/index242.js.map +1 -1
  50. package/dist/index243.js +21 -4
  51. package/dist/index243.js.map +1 -1
  52. package/dist/index244.js +8 -5
  53. package/dist/index244.js.map +1 -1
  54. package/dist/index245.js +9 -16
  55. package/dist/index245.js.map +1 -1
  56. package/dist/index246.js +8 -8
  57. package/dist/index246.js.map +1 -1
  58. package/dist/index247.js +4 -18
  59. package/dist/index247.js.map +1 -1
  60. package/dist/index248.js +5 -20
  61. package/dist/index248.js.map +1 -1
  62. package/dist/index249.js +16 -12
  63. package/dist/index249.js.map +1 -1
  64. package/dist/index25.js +1 -1
  65. package/dist/index250.js +9 -29
  66. package/dist/index250.js.map +1 -1
  67. package/dist/index251.js +18 -12
  68. package/dist/index251.js.map +1 -1
  69. package/dist/index252.js +20 -25
  70. package/dist/index252.js.map +1 -1
  71. package/dist/index253.js +12 -5
  72. package/dist/index253.js.map +1 -1
  73. package/dist/index260.js +2 -2
  74. package/dist/index273.js +1 -1
  75. package/dist/index277.js +25 -20
  76. package/dist/index277.js.map +1 -1
  77. package/dist/index278.js +24 -62
  78. package/dist/index278.js.map +1 -1
  79. package/dist/index279.js +16 -6
  80. package/dist/index279.js.map +1 -1
  81. package/dist/index28.js +1 -1
  82. package/dist/index280.js +20 -6
  83. package/dist/index280.js.map +1 -1
  84. package/dist/index281.js +66 -11
  85. package/dist/index281.js.map +1 -1
  86. package/dist/index282.js +6 -3
  87. package/dist/index282.js.map +1 -1
  88. package/dist/index283.js +5 -50
  89. package/dist/index283.js.map +1 -1
  90. package/dist/index284.js +12 -4
  91. package/dist/index284.js.map +1 -1
  92. package/dist/index285.js +3 -29
  93. package/dist/index285.js.map +1 -1
  94. package/dist/index286.js +49 -15
  95. package/dist/index286.js.map +1 -1
  96. package/dist/index287.js +4 -6
  97. package/dist/index287.js.map +1 -1
  98. package/dist/index288.js +28 -20
  99. package/dist/index288.js.map +1 -1
  100. package/dist/index289.js +15 -52
  101. package/dist/index289.js.map +1 -1
  102. package/dist/index29.js +3 -56
  103. package/dist/index29.js.map +1 -1
  104. package/dist/index290.js +5 -20
  105. package/dist/index290.js.map +1 -1
  106. package/dist/index291.js +21 -41
  107. package/dist/index291.js.map +1 -1
  108. package/dist/index292.js +53 -39
  109. package/dist/index292.js.map +1 -1
  110. package/dist/index293.js +21 -46
  111. package/dist/index293.js.map +1 -1
  112. package/dist/index294.js +40 -19
  113. package/dist/index294.js.map +1 -1
  114. package/dist/index295.js +38 -69
  115. package/dist/index295.js.map +1 -1
  116. package/dist/index296.js +46 -18
  117. package/dist/index296.js.map +1 -1
  118. package/dist/index297.js +20 -3
  119. package/dist/index297.js.map +1 -1
  120. package/dist/index298.js +69 -10
  121. package/dist/index298.js.map +1 -1
  122. package/dist/index299.js +16 -12
  123. package/dist/index299.js.map +1 -1
  124. package/dist/index3.js +2 -2
  125. package/dist/index30.js +242 -3
  126. package/dist/index30.js.map +1 -1
  127. package/dist/index300.js +3 -18
  128. package/dist/index300.js.map +1 -1
  129. package/dist/index301.js +11 -36
  130. package/dist/index301.js.map +1 -1
  131. package/dist/index302.js +12 -238
  132. package/dist/index302.js.map +1 -1
  133. package/dist/index303.js +15 -249
  134. package/dist/index303.js.map +1 -1
  135. package/dist/index304.js +35 -67
  136. package/dist/index304.js.map +1 -1
  137. package/dist/index305.js +233 -93
  138. package/dist/index305.js.map +1 -1
  139. package/dist/index306.js +243 -74
  140. package/dist/index306.js.map +1 -1
  141. package/dist/index307.js +68 -3
  142. package/dist/index307.js.map +1 -1
  143. package/dist/index308.js +96 -26
  144. package/dist/index308.js.map +1 -1
  145. package/dist/index309.js +83 -16
  146. package/dist/index309.js.map +1 -1
  147. package/dist/index31.js +21 -239
  148. package/dist/index31.js.map +1 -1
  149. package/dist/index310.js +4 -35
  150. package/dist/index310.js.map +1 -1
  151. package/dist/index311.js +28 -16
  152. package/dist/index311.js.map +1 -1
  153. package/dist/index312.js +16 -3
  154. package/dist/index312.js.map +1 -1
  155. package/dist/index313.js +35 -27
  156. package/dist/index313.js.map +1 -1
  157. package/dist/index314.js +17 -28
  158. package/dist/index314.js.map +1 -1
  159. package/dist/index315.js +4 -4
  160. package/dist/index315.js.map +1 -1
  161. package/dist/index316.js +23 -75
  162. package/dist/index316.js.map +1 -1
  163. package/dist/index317.js +25 -269
  164. package/dist/index317.js.map +1 -1
  165. package/dist/index318.js +4 -12
  166. package/dist/index318.js.map +1 -1
  167. package/dist/index319.js +79 -11
  168. package/dist/index319.js.map +1 -1
  169. package/dist/index32.js +4 -23
  170. package/dist/index32.js.map +1 -1
  171. package/dist/index320.js +270 -23
  172. package/dist/index320.js.map +1 -1
  173. package/dist/index321.js +11 -16
  174. package/dist/index321.js.map +1 -1
  175. package/dist/index322.js +10 -125
  176. package/dist/index322.js.map +1 -1
  177. package/dist/index323.js +24 -4
  178. package/dist/index323.js.map +1 -1
  179. package/dist/index324.js +16 -65
  180. package/dist/index324.js.map +1 -1
  181. package/dist/index325.js +125 -13
  182. package/dist/index325.js.map +1 -1
  183. package/dist/index326.js +5 -7
  184. package/dist/index326.js.map +1 -1
  185. package/dist/index327.js +65 -5
  186. package/dist/index327.js.map +1 -1
  187. package/dist/index328.js +14 -4
  188. package/dist/index328.js.map +1 -1
  189. package/dist/index329.js +7 -10
  190. package/dist/index329.js.map +1 -1
  191. package/dist/index33.js +6 -3
  192. package/dist/index33.js.map +1 -1
  193. package/dist/index330.js +5 -7
  194. package/dist/index330.js.map +1 -1
  195. package/dist/index331.js +3 -133
  196. package/dist/index331.js.map +1 -1
  197. package/dist/index332.js +9 -398
  198. package/dist/index332.js.map +1 -1
  199. package/dist/index333.js +8 -5
  200. package/dist/index333.js.map +1 -1
  201. package/dist/index334.js +131 -50
  202. package/dist/index334.js.map +1 -1
  203. package/dist/index335.js +399 -11
  204. package/dist/index335.js.map +1 -1
  205. package/dist/index336.js +5 -28
  206. package/dist/index336.js.map +1 -1
  207. package/dist/index337.js +52 -11
  208. package/dist/index337.js.map +1 -1
  209. package/dist/index338.js +11 -24
  210. package/dist/index338.js.map +1 -1
  211. package/dist/index339.js +27 -28
  212. package/dist/index339.js.map +1 -1
  213. package/dist/index34.js +38 -8
  214. package/dist/index34.js.map +1 -1
  215. package/dist/index340.js +11 -16
  216. package/dist/index340.js.map +1 -1
  217. package/dist/index341.js +1 -1
  218. package/dist/index348.js +5 -51
  219. package/dist/index348.js.map +1 -1
  220. package/dist/index349.js +51 -5
  221. package/dist/index349.js.map +1 -1
  222. package/dist/index35.js +74 -35
  223. package/dist/index35.js.map +1 -1
  224. package/dist/index350.js +3 -3
  225. package/dist/index358.js +5 -5
  226. package/dist/index359.js +1 -1
  227. package/dist/index36.js +20 -74
  228. package/dist/index36.js.map +1 -1
  229. package/dist/index363.js +5 -5
  230. package/dist/index368.js +11 -5
  231. package/dist/index368.js.map +1 -1
  232. package/dist/index369.js +6 -3
  233. package/dist/index369.js.map +1 -1
  234. package/dist/index37.js +33 -18
  235. package/dist/index37.js.map +1 -1
  236. package/dist/index370.js +3 -12
  237. package/dist/index370.js.map +1 -1
  238. package/dist/index372.js +1 -1
  239. package/dist/index375.js +2 -2
  240. package/dist/index376.js +3 -3
  241. package/dist/index377.js +8 -8
  242. package/dist/index379.js +5 -5
  243. package/dist/index38.js +26 -36
  244. package/dist/index38.js.map +1 -1
  245. package/dist/index380.js +3 -3
  246. package/dist/index382.js +1 -1
  247. package/dist/index384.js +1 -1
  248. package/dist/index385.js +2 -2
  249. package/dist/index386.js +1 -1
  250. package/dist/index388.js +2 -2
  251. package/dist/index389.js +2 -2
  252. package/dist/index39.js +21 -26
  253. package/dist/index39.js.map +1 -1
  254. package/dist/index399.js +2 -2
  255. package/dist/index4.js +2 -2
  256. package/dist/index40.js +56 -20
  257. package/dist/index40.js.map +1 -1
  258. package/dist/index41.js +51 -59
  259. package/dist/index41.js.map +1 -1
  260. package/dist/index411.js +3 -15
  261. package/dist/index411.js.map +1 -1
  262. package/dist/index412.js +15 -3
  263. package/dist/index412.js.map +1 -1
  264. package/dist/index413.js +1 -1
  265. package/dist/index414.js +68 -5
  266. package/dist/index414.js.map +1 -1
  267. package/dist/index415.js +30 -55
  268. package/dist/index415.js.map +1 -1
  269. package/dist/index416.js +9 -68
  270. package/dist/index416.js.map +1 -1
  271. package/dist/index417.js +148 -26
  272. package/dist/index417.js.map +1 -1
  273. package/dist/index418.js +108 -9
  274. package/dist/index418.js.map +1 -1
  275. package/dist/index419.js +5 -153
  276. package/dist/index419.js.map +1 -1
  277. package/dist/index42.js +21 -50
  278. package/dist/index42.js.map +1 -1
  279. package/dist/index420.js +54 -106
  280. package/dist/index420.js.map +1 -1
  281. package/dist/index43.js +127 -18
  282. package/dist/index43.js.map +1 -1
  283. package/dist/index44.js +39 -122
  284. package/dist/index44.js.map +1 -1
  285. package/dist/index45.js +85 -42
  286. package/dist/index45.js.map +1 -1
  287. package/dist/index46.js +123 -87
  288. package/dist/index46.js.map +1 -1
  289. package/dist/index47.js +5 -126
  290. package/dist/index47.js.map +1 -1
  291. package/dist/index48.js +332 -5
  292. package/dist/index48.js.map +1 -1
  293. package/dist/index49.js +245 -320
  294. package/dist/index49.js.map +1 -1
  295. package/dist/index5.js +2 -2
  296. package/dist/index50.js +23 -254
  297. package/dist/index50.js.map +1 -1
  298. package/dist/index51.js +129 -25
  299. package/dist/index51.js.map +1 -1
  300. package/dist/index52.js +24 -129
  301. package/dist/index52.js.map +1 -1
  302. package/dist/index53.js +19 -22
  303. package/dist/index53.js.map +1 -1
  304. package/dist/index54.js +134 -19
  305. package/dist/index54.js.map +1 -1
  306. package/dist/index55.js +30 -133
  307. package/dist/index55.js.map +1 -1
  308. package/dist/index56.js +24 -30
  309. package/dist/index56.js.map +1 -1
  310. package/dist/index57.js +38 -26
  311. package/dist/index57.js.map +1 -1
  312. package/dist/index58.js +19 -39
  313. package/dist/index58.js.map +1 -1
  314. package/dist/index59.js +133 -18
  315. package/dist/index59.js.map +1 -1
  316. package/dist/index6.js +4 -4
  317. package/dist/index60.js +49 -134
  318. package/dist/index60.js.map +1 -1
  319. package/dist/index61.js +25 -48
  320. package/dist/index61.js.map +1 -1
  321. package/dist/index62.js +57 -28
  322. package/dist/index62.js.map +1 -1
  323. package/dist/index63.js +56 -57
  324. package/dist/index63.js.map +1 -1
  325. package/dist/index64.js +5 -5
  326. package/dist/index64.js.map +1 -1
  327. package/dist/index66.js +23 -11
  328. package/dist/index66.js.map +1 -1
  329. package/dist/index67.js +232 -17
  330. package/dist/index67.js.map +1 -1
  331. package/dist/index68.js +5 -5
  332. package/dist/index68.js.map +1 -1
  333. package/dist/index7.js +11 -11
  334. package/dist/index70.js +11 -23
  335. package/dist/index70.js.map +1 -1
  336. package/dist/index71.js +17 -232
  337. package/dist/index71.js.map +1 -1
  338. package/dist/index72.js +6 -2
  339. package/dist/index72.js.map +1 -1
  340. package/dist/index73.js +8 -2
  341. package/dist/index73.js.map +1 -1
  342. package/dist/index74.js +6 -2
  343. package/dist/index74.js.map +1 -1
  344. package/dist/index75.js +2 -2
  345. package/dist/index76.js +2 -6
  346. package/dist/index76.js.map +1 -1
  347. package/dist/index77.js +2 -8
  348. package/dist/index77.js.map +1 -1
  349. package/dist/index78.js +2 -6
  350. package/dist/index78.js.map +1 -1
  351. package/dist/index8.js +2 -2
  352. package/dist/index9.js +1 -1
  353. package/package.json +1 -1
package/dist/index51.js CHANGED
@@ -1,30 +1,134 @@
1
- import * as r from "react";
2
- import { SelectGroupContext as c } from "./index337.js";
3
- import { useRenderElement as p } from "./index172.js";
4
- import { j as m } from "./index30.js";
5
- const u = /* @__PURE__ */ r.forwardRef(function(t, s) {
1
+ import * as s from "react";
2
+ import { useIsoLayoutEffect as U } from "./index287.js";
3
+ import { useSelectRootContext as Q } from "./index291.js";
4
+ import { useCompositeListItem as X, IndexGuessBehavior as Z } from "./index337.js";
5
+ import { useRenderElement as $ } from "./index172.js";
6
+ import { SelectItemContext as ee } from "./index338.js";
7
+ import { selectors as a } from "./index296.js";
8
+ import { createChangeEventDetails as M } from "./index175.js";
9
+ import { compareItemEquality as te, removeItem as re } from "./index299.js";
10
+ import { isVirtualClick as oe } from "./index339.js";
11
+ import { j as ne } from "./index28.js";
12
+ import { useStore as f } from "./index303.js";
13
+ import { useButton as se } from "./index176.js";
14
+ import { itemPress as g } from "./index177.js";
15
+ const ie = /* @__PURE__ */ s.memo(/* @__PURE__ */ s.forwardRef(function(k, D) {
6
16
  const {
7
- render: d,
8
- className: f,
9
- style: x,
10
- ...l
11
- } = t, [e, o] = r.useState(), n = r.useMemo(() => ({
12
- labelId: e,
13
- setLabelId: o
14
- }), [e, o]), a = p("div", t, {
15
- ref: s,
16
- props: [{
17
- role: "group",
18
- "aria-labelledby": e
19
- }, l]
17
+ render: ce,
18
+ className: le,
19
+ style: ae,
20
+ value: n = null,
21
+ label: B,
22
+ disabled: m = !1,
23
+ nativeButton: A = !1,
24
+ ...N
25
+ } = k, l = s.useRef(null), d = X({
26
+ label: B,
27
+ textRef: l,
28
+ indexGuessBehavior: Z.GuessFromOrder
29
+ }), {
30
+ store: r,
31
+ itemProps: O,
32
+ setOpen: Y,
33
+ setValue: S,
34
+ selectionRef: p,
35
+ typingRef: V,
36
+ valuesRef: w,
37
+ multiple: v,
38
+ selectedItemTextRef: C,
39
+ disabled: j,
40
+ readOnly: q
41
+ } = Q(), I = f(r, a.isActive, d.index), F = f(r, a.open), i = f(r, a.isSelected, n), b = f(r, a.isSelectedByFocus, d.index), h = f(r, a.isItemEqualToValue), o = d.index, u = o !== -1, P = s.useRef(null);
42
+ U(() => {
43
+ if (!u)
44
+ return;
45
+ const e = w.current;
46
+ return e[o] = n, () => {
47
+ delete e[o];
48
+ };
49
+ }, [u, o, n, w]), U(() => {
50
+ if (!u)
51
+ return;
52
+ const e = r.state.value;
53
+ let t = e;
54
+ v && Array.isArray(e) && (t = e.length > 0 ? e[e.length - 1] : void 0), t !== void 0 && te(n, t, h) && (r.set("selectedIndex", o), l.current && (C.current = l.current));
55
+ }, [u, o, v, h, r, n, C]);
56
+ const y = s.useRef(null), R = s.useRef("mouse"), c = s.useRef(!1), {
57
+ getButtonProps: G,
58
+ buttonRef: K
59
+ } = se({
60
+ disabled: m,
61
+ focusableWhenDisabled: !0,
62
+ native: A,
63
+ composite: !0
64
+ }), L = {
65
+ disabled: m,
66
+ selected: i,
67
+ highlighted: I
68
+ };
69
+ function W(e) {
70
+ if (j || q)
71
+ return;
72
+ const t = r.state.value;
73
+ if (v) {
74
+ const x = Array.isArray(t) ? t : [], E = i ? re(x, n, h) : [...x, n];
75
+ S(E, M(g, e));
76
+ } else
77
+ S(n, M(g, e)), Y(!1, M(g, e));
78
+ }
79
+ function T() {
80
+ p.current.dragY = 0;
81
+ }
82
+ const _ = {
83
+ role: "option",
84
+ "aria-selected": i,
85
+ tabIndex: F && I ? 0 : -1,
86
+ onKeyDown(e) {
87
+ y.current = e.key, r.set("activeIndex", o), e.key === " " && V.current && e.preventDefault();
88
+ },
89
+ onClick(e) {
90
+ const t = e.type === "click" && R.current !== "touch", x = e.nativeEvent.pointerType, E = t && oe(e.nativeEvent) && // Generic no-pointer `detail === 0` clicks stay tied to highlight state. Virtual
91
+ // clicks that carry browser pointer data, including an empty string from assistive
92
+ // technology, can activate unhighlighted items.
93
+ (x !== void 0 || I), J = t && !E && !c.current;
94
+ c.current = !1, !(e.type === "keydown" && y.current === null) && (m || e.type === "keydown" && y.current === " " && V.current || J || (y.current = null, W(e.nativeEvent)));
95
+ },
96
+ onPointerEnter(e) {
97
+ R.current = e.pointerType;
98
+ },
99
+ onPointerMove(e) {
100
+ if (e.pointerType === "mouse" && e.buttons === 1) {
101
+ const t = p.current;
102
+ t.dragY += e.movementY, t.dragY ** 2 >= 64 && (t.allowUnselectedMouseUp = !0);
103
+ }
104
+ },
105
+ onPointerDown(e) {
106
+ R.current = e.pointerType, c.current = !0, T();
107
+ },
108
+ onMouseUp() {
109
+ if (T(), m || R.current === "touch" || c.current)
110
+ return;
111
+ const e = !p.current.allowSelectedMouseUp && i, t = !p.current.allowUnselectedMouseUp && !i;
112
+ e || t || (c.current = !0, P.current?.click(), c.current = !1);
113
+ }
114
+ }, z = $("div", k, {
115
+ ref: [K, D, d.ref, P],
116
+ state: L,
117
+ props: [O, _, N, G]
118
+ }), H = s.useMemo(() => ({
119
+ selected: i,
120
+ index: o,
121
+ textRef: l,
122
+ selectedByFocus: b,
123
+ hasRegistered: u
124
+ }), [i, o, l, b, u]);
125
+ return /* @__PURE__ */ ne.jsx(ee.Provider, {
126
+ value: H,
127
+ children: z
20
128
  });
21
- return /* @__PURE__ */ m.jsx(c.Provider, {
22
- value: n,
23
- children: a
24
- });
25
- });
26
- process.env.NODE_ENV !== "production" && (u.displayName = "SelectGroup");
129
+ }));
130
+ process.env.NODE_ENV !== "production" && (ie.displayName = "SelectItem");
27
131
  export {
28
- u as SelectGroup
132
+ ie as SelectItem
29
133
  };
30
134
  //# sourceMappingURL=index51.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index51.js","sources":["../../../node_modules/@base-ui/react/select/group/SelectGroup.mjs"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { SelectGroupContext } from \"./SelectGroupContext.mjs\";\nimport { useRenderElement } from \"../../internals/useRenderElement.mjs\";\n\n/**\n * Groups related select items with the corresponding label.\n * Renders a `<div>` element.\n *\n * Documentation: [Base UI Select](https://base-ui.com/react/components/select)\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport const SelectGroup = /*#__PURE__*/React.forwardRef(function SelectGroup(componentProps, forwardedRef) {\n const {\n render,\n className,\n style,\n ...elementProps\n } = componentProps;\n const [labelId, setLabelId] = React.useState();\n const contextValue = React.useMemo(() => ({\n labelId,\n setLabelId\n }), [labelId, setLabelId]);\n const element = useRenderElement('div', componentProps, {\n ref: forwardedRef,\n props: [{\n role: 'group',\n 'aria-labelledby': labelId\n }, elementProps]\n });\n return /*#__PURE__*/_jsx(SelectGroupContext.Provider, {\n value: contextValue,\n children: element\n });\n});\nif (process.env.NODE_ENV !== \"production\") SelectGroup.displayName = \"SelectGroup\";"],"names":["SelectGroup","React","componentProps","forwardedRef","render","className","style","elementProps","labelId","setLabelId","contextValue","element","useRenderElement","_jsx","SelectGroupContext"],"mappings":";;;;AAaY,MAACA,IAA2B,gBAAAC,EAAM,WAAW,SAAqBC,GAAgBC,GAAc;AAC1G,QAAM;AAAA,IACJ,QAAAC;AAAA,IACA,WAAAC;AAAA,IACA,OAAAC;AAAA,IACA,GAAGC;AAAA,EACP,IAAML,GACE,CAACM,GAASC,CAAU,IAAIR,EAAM,SAAQ,GACtCS,IAAeT,EAAM,QAAQ,OAAO;AAAA,IACxC,SAAAO;AAAA,IACA,YAAAC;AAAA,EACJ,IAAM,CAACD,GAASC,CAAU,CAAC,GACnBE,IAAUC,EAAiB,OAAOV,GAAgB;AAAA,IACtD,KAAKC;AAAA,IACL,OAAO,CAAC;AAAA,MACN,MAAM;AAAA,MACN,mBAAmBK;AAAA,IACzB,GAAOD,CAAY;AAAA,EACnB,CAAG;AACD,SAAoBM,gBAAAA,EAAAA,IAAKC,EAAmB,UAAU;AAAA,IACpD,OAAOJ;AAAA,IACP,UAAUC;AAAA,EACd,CAAG;AACH,CAAC;AACG,QAAQ,IAAI,aAAa,iBAAcX,EAAY,cAAc;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index51.js","sources":["../../../node_modules/@base-ui/react/select/item/SelectItem.mjs"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { useIsoLayoutEffect } from '@base-ui/utils/useIsoLayoutEffect';\nimport { useStore } from '@base-ui/utils/store';\nimport { useSelectRootContext } from \"../root/SelectRootContext.mjs\";\nimport { useCompositeListItem, IndexGuessBehavior } from \"../../internals/composite/list/useCompositeListItem.mjs\";\nimport { useRenderElement } from \"../../internals/useRenderElement.mjs\";\nimport { SelectItemContext } from \"./SelectItemContext.mjs\";\nimport { selectors } from \"../store.mjs\";\nimport { useButton } from \"../../internals/use-button/index.mjs\";\nimport { createChangeEventDetails } from \"../../internals/createBaseUIEventDetails.mjs\";\nimport { REASONS } from \"../../internals/reasons.mjs\";\nimport { compareItemEquality, removeItem } from \"../../internals/itemEquality.mjs\";\nimport { isVirtualClick } from \"../../floating-ui-react/utils/event.mjs\";\n\n/**\n * An individual option in the select popup.\n * Renders a `<div>` element.\n *\n * Documentation: [Base UI Select](https://base-ui.com/react/components/select)\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport const SelectItem = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function SelectItem(componentProps, forwardedRef) {\n const {\n render,\n className,\n style,\n value: itemValue = null,\n label,\n disabled = false,\n nativeButton = false,\n ...elementProps\n } = componentProps;\n const textRef = React.useRef(null);\n const listItem = useCompositeListItem({\n label,\n textRef,\n indexGuessBehavior: IndexGuessBehavior.GuessFromOrder\n });\n const {\n store,\n itemProps,\n setOpen,\n setValue,\n selectionRef,\n typingRef,\n valuesRef,\n multiple,\n selectedItemTextRef,\n disabled: selectDisabled,\n readOnly\n } = useSelectRootContext();\n const highlighted = useStore(store, selectors.isActive, listItem.index);\n const open = useStore(store, selectors.open);\n const selected = useStore(store, selectors.isSelected, itemValue);\n const selectedByFocus = useStore(store, selectors.isSelectedByFocus, listItem.index);\n const isItemEqualToValue = useStore(store, selectors.isItemEqualToValue);\n const index = listItem.index;\n const hasRegistered = index !== -1;\n const itemRef = React.useRef(null);\n useIsoLayoutEffect(() => {\n if (!hasRegistered) {\n return undefined;\n }\n const values = valuesRef.current;\n values[index] = itemValue;\n return () => {\n delete values[index];\n };\n }, [hasRegistered, index, itemValue, valuesRef]);\n useIsoLayoutEffect(() => {\n if (!hasRegistered) {\n return;\n }\n const selectedValue = store.state.value;\n let selectedCandidate = selectedValue;\n if (multiple && Array.isArray(selectedValue)) {\n // Compare against the last selected item, or `undefined` when nothing is selected — never\n // the raw array, which a custom `isItemEqualToValue` isn't expected to receive.\n selectedCandidate = selectedValue.length > 0 ? selectedValue[selectedValue.length - 1] : undefined;\n }\n if (selectedCandidate !== undefined && compareItemEquality(itemValue, selectedCandidate, isItemEqualToValue)) {\n store.set('selectedIndex', index);\n // Make sure SelectPopup can measure the selected item on first open.\n // SelectItemText can still update this ref later when focus moves.\n if (textRef.current) {\n selectedItemTextRef.current = textRef.current;\n }\n }\n }, [hasRegistered, index, multiple, isItemEqualToValue, store, itemValue, selectedItemTextRef]);\n const lastKeyRef = React.useRef(null);\n const pointerTypeRef = React.useRef('mouse');\n const allowMouseSelectionRef = React.useRef(false);\n const {\n getButtonProps,\n buttonRef\n } = useButton({\n disabled,\n focusableWhenDisabled: true,\n native: nativeButton,\n composite: true\n });\n const state = {\n disabled,\n selected,\n highlighted\n };\n function commitSelection(event) {\n // A forced-open select (`open`/`defaultOpen`) can still receive item activations even\n // when the root is disabled or read-only, so guard the commit here too.\n if (selectDisabled || readOnly) {\n return;\n }\n const selectedValue = store.state.value;\n if (multiple) {\n const currentValue = Array.isArray(selectedValue) ? selectedValue : [];\n const nextValue = selected ? removeItem(currentValue, itemValue, isItemEqualToValue) : [...currentValue, itemValue];\n setValue(nextValue, createChangeEventDetails(REASONS.itemPress, event));\n } else {\n setValue(itemValue, createChangeEventDetails(REASONS.itemPress, event));\n setOpen(false, createChangeEventDetails(REASONS.itemPress, event));\n }\n }\n function resetDragMovement() {\n selectionRef.current.dragY = 0;\n }\n const defaultProps = {\n role: 'option',\n 'aria-selected': selected,\n tabIndex: open && highlighted ? 0 : -1,\n onKeyDown(event) {\n lastKeyRef.current = event.key;\n store.set('activeIndex', index);\n if (event.key === ' ' && typingRef.current) {\n event.preventDefault();\n }\n },\n onClick(event) {\n const isMouseClick = event.type === 'click' && pointerTypeRef.current !== 'touch';\n const clickPointerType = event.nativeEvent.pointerType;\n const isVirtualMouseClick = isMouseClick && isVirtualClick(event.nativeEvent) && (\n // Generic no-pointer `detail === 0` clicks stay tied to highlight state. Virtual\n // clicks that carry browser pointer data, including an empty string from assistive\n // technology, can activate unhighlighted items.\n clickPointerType !== undefined || highlighted);\n // With alignItemWithTrigger, opening can place an item under the cursor. Real mouse\n // clicks must start on the item, while virtual clicks represent explicit keyboard or\n // assistive technology activation.\n const isInvalidMouseClick = isMouseClick && !isVirtualMouseClick && !allowMouseSelectionRef.current;\n allowMouseSelectionRef.current = false;\n\n // Prevent double commit on {Enter}\n if (event.type === 'keydown' && lastKeyRef.current === null) {\n return;\n }\n if (disabled || event.type === 'keydown' && lastKeyRef.current === ' ' && typingRef.current || isInvalidMouseClick) {\n return;\n }\n lastKeyRef.current = null;\n commitSelection(event.nativeEvent);\n },\n onPointerEnter(event) {\n pointerTypeRef.current = event.pointerType;\n },\n onPointerMove(event) {\n if (event.pointerType === 'mouse' && event.buttons === 1) {\n const selection = selectionRef.current;\n selection.dragY += event.movementY;\n if (selection.dragY ** 2 >= 64) {\n selection.allowUnselectedMouseUp = true;\n }\n }\n },\n onPointerDown(event) {\n pointerTypeRef.current = event.pointerType;\n allowMouseSelectionRef.current = true;\n resetDragMovement();\n },\n onMouseUp() {\n resetDragMovement();\n if (disabled || pointerTypeRef.current === 'touch') {\n return;\n }\n\n // Regular clicks are committed by the click event.\n if (allowMouseSelectionRef.current) {\n return;\n }\n const disallowSelectedMouseUp = !selectionRef.current.allowSelectedMouseUp && selected;\n const disallowUnselectedMouseUp = !selectionRef.current.allowUnselectedMouseUp && !selected;\n if (disallowSelectedMouseUp || disallowUnselectedMouseUp) {\n return;\n }\n allowMouseSelectionRef.current = true;\n itemRef.current?.click();\n allowMouseSelectionRef.current = false;\n }\n };\n const element = useRenderElement('div', componentProps, {\n ref: [buttonRef, forwardedRef, listItem.ref, itemRef],\n state,\n props: [itemProps, defaultProps, elementProps, getButtonProps]\n });\n const contextValue = React.useMemo(() => ({\n selected,\n index,\n textRef,\n selectedByFocus,\n hasRegistered\n }), [selected, index, textRef, selectedByFocus, hasRegistered]);\n return /*#__PURE__*/_jsx(SelectItemContext.Provider, {\n value: contextValue,\n children: element\n });\n}));\nif (process.env.NODE_ENV !== \"production\") SelectItem.displayName = \"SelectItem\";"],"names":["SelectItem","React","componentProps","forwardedRef","render","className","style","itemValue","label","disabled","nativeButton","elementProps","textRef","listItem","useCompositeListItem","IndexGuessBehavior","store","itemProps","setOpen","setValue","selectionRef","typingRef","valuesRef","multiple","selectedItemTextRef","selectDisabled","readOnly","useSelectRootContext","highlighted","useStore","selectors","open","selected","selectedByFocus","isItemEqualToValue","index","hasRegistered","itemRef","useIsoLayoutEffect","values","selectedValue","selectedCandidate","compareItemEquality","lastKeyRef","pointerTypeRef","allowMouseSelectionRef","getButtonProps","buttonRef","useButton","state","commitSelection","event","currentValue","nextValue","removeItem","createChangeEventDetails","REASONS.itemPress","resetDragMovement","defaultProps","isMouseClick","clickPointerType","isVirtualMouseClick","isVirtualClick","isInvalidMouseClick","selection","disallowSelectedMouseUp","disallowUnselectedMouseUp","element","useRenderElement","contextValue","_jsx","SelectItemContext"],"mappings":"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","x_google_ignoreList":[0]}
package/dist/index52.js CHANGED
@@ -1,134 +1,29 @@
1
- import * as s from "react";
2
- import { useIsoLayoutEffect as U } from "./index284.js";
3
- import { useSelectRootContext as Q } from "./index288.js";
4
- import { useCompositeListItem as X, IndexGuessBehavior as Z } from "./index334.js";
5
- import { useRenderElement as $ } from "./index172.js";
6
- import { SelectItemContext as ee } from "./index335.js";
7
- import { selectors as a } from "./index293.js";
8
- import { createChangeEventDetails as M } from "./index175.js";
9
- import { compareItemEquality as te, removeItem as re } from "./index296.js";
10
- import { isVirtualClick as oe } from "./index336.js";
11
- import { j as ne } from "./index30.js";
12
- import { useStore as f } from "./index300.js";
13
- import { useButton as se } from "./index176.js";
14
- import { itemPress as g } from "./index177.js";
15
- const ie = /* @__PURE__ */ s.memo(/* @__PURE__ */ s.forwardRef(function(k, D) {
1
+ import * as m from "react";
2
+ import { useIsoLayoutEffect as n } from "./index287.js";
3
+ import { useBaseUiId as p } from "./index178.js";
4
+ import { useSelectGroupContext as c } from "./index340.js";
5
+ import { useRenderElement as i } from "./index172.js";
6
+ const a = /* @__PURE__ */ m.forwardRef(function(o, r) {
16
7
  const {
17
- render: ce,
18
- className: le,
19
- style: ae,
20
- value: n = null,
21
- label: B,
22
- disabled: m = !1,
23
- nativeButton: A = !1,
24
- ...N
25
- } = k, l = s.useRef(null), d = X({
26
- label: B,
27
- textRef: l,
28
- indexGuessBehavior: Z.GuessFromOrder
29
- }), {
30
- store: r,
31
- itemProps: O,
32
- setOpen: Y,
33
- setValue: S,
34
- selectionRef: p,
35
- typingRef: V,
36
- valuesRef: w,
37
- multiple: v,
38
- selectedItemTextRef: C,
39
- disabled: j,
40
- readOnly: q
41
- } = Q(), I = f(r, a.isActive, d.index), F = f(r, a.open), i = f(r, a.isSelected, n), b = f(r, a.isSelectedByFocus, d.index), h = f(r, a.isItemEqualToValue), o = d.index, u = o !== -1, P = s.useRef(null);
42
- U(() => {
43
- if (!u)
44
- return;
45
- const e = w.current;
46
- return e[o] = n, () => {
47
- delete e[o];
48
- };
49
- }, [u, o, n, w]), U(() => {
50
- if (!u)
51
- return;
52
- const e = r.state.value;
53
- let t = e;
54
- v && Array.isArray(e) && (t = e.length > 0 ? e[e.length - 1] : void 0), t !== void 0 && te(n, t, h) && (r.set("selectedIndex", o), l.current && (C.current = l.current));
55
- }, [u, o, v, h, r, n, C]);
56
- const y = s.useRef(null), R = s.useRef("mouse"), c = s.useRef(!1), {
57
- getButtonProps: G,
58
- buttonRef: K
59
- } = se({
60
- disabled: m,
61
- focusableWhenDisabled: !0,
62
- native: A,
63
- composite: !0
64
- }), L = {
65
- disabled: m,
66
- selected: i,
67
- highlighted: I
68
- };
69
- function W(e) {
70
- if (j || q)
71
- return;
72
- const t = r.state.value;
73
- if (v) {
74
- const x = Array.isArray(t) ? t : [], E = i ? re(x, n, h) : [...x, n];
75
- S(E, M(g, e));
76
- } else
77
- S(n, M(g, e)), Y(!1, M(g, e));
78
- }
79
- function T() {
80
- p.current.dragY = 0;
81
- }
82
- const _ = {
83
- role: "option",
84
- "aria-selected": i,
85
- tabIndex: F && I ? 0 : -1,
86
- onKeyDown(e) {
87
- y.current = e.key, r.set("activeIndex", o), e.key === " " && V.current && e.preventDefault();
88
- },
89
- onClick(e) {
90
- const t = e.type === "click" && R.current !== "touch", x = e.nativeEvent.pointerType, E = t && oe(e.nativeEvent) && // Generic no-pointer `detail === 0` clicks stay tied to highlight state. Virtual
91
- // clicks that carry browser pointer data, including an empty string from assistive
92
- // technology, can activate unhighlighted items.
93
- (x !== void 0 || I), J = t && !E && !c.current;
94
- c.current = !1, !(e.type === "keydown" && y.current === null) && (m || e.type === "keydown" && y.current === " " && V.current || J || (y.current = null, W(e.nativeEvent)));
95
- },
96
- onPointerEnter(e) {
97
- R.current = e.pointerType;
98
- },
99
- onPointerMove(e) {
100
- if (e.pointerType === "mouse" && e.buttons === 1) {
101
- const t = p.current;
102
- t.dragY += e.movementY, t.dragY ** 2 >= 64 && (t.allowUnselectedMouseUp = !0);
103
- }
104
- },
105
- onPointerDown(e) {
106
- R.current = e.pointerType, c.current = !0, T();
107
- },
108
- onMouseUp() {
109
- if (T(), m || R.current === "touch" || c.current)
110
- return;
111
- const e = !p.current.allowSelectedMouseUp && i, t = !p.current.allowUnselectedMouseUp && !i;
112
- e || t || (c.current = !0, P.current?.click(), c.current = !1);
113
- }
114
- }, z = $("div", k, {
115
- ref: [K, D, d.ref, P],
116
- state: L,
117
- props: [O, _, N, G]
118
- }), H = s.useMemo(() => ({
119
- selected: i,
120
- index: o,
121
- textRef: l,
122
- selectedByFocus: b,
123
- hasRegistered: u
124
- }), [i, o, l, b, u]);
125
- return /* @__PURE__ */ ne.jsx(ee.Provider, {
126
- value: H,
127
- children: z
8
+ render: u,
9
+ className: d,
10
+ style: L,
11
+ id: s,
12
+ ...l
13
+ } = o, {
14
+ setLabelId: t
15
+ } = c(), e = p(s);
16
+ return n(() => {
17
+ t(e);
18
+ }, [e, t]), i("div", o, {
19
+ ref: r,
20
+ props: [{
21
+ id: e
22
+ }, l]
128
23
  });
129
- }));
130
- process.env.NODE_ENV !== "production" && (ie.displayName = "SelectItem");
24
+ });
25
+ process.env.NODE_ENV !== "production" && (a.displayName = "SelectGroupLabel");
131
26
  export {
132
- ie as SelectItem
27
+ a as SelectGroupLabel
133
28
  };
134
29
  //# sourceMappingURL=index52.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index52.js","sources":["../../../node_modules/@base-ui/react/select/item/SelectItem.mjs"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { useIsoLayoutEffect } from '@base-ui/utils/useIsoLayoutEffect';\nimport { useStore } from '@base-ui/utils/store';\nimport { useSelectRootContext } from \"../root/SelectRootContext.mjs\";\nimport { useCompositeListItem, IndexGuessBehavior } from \"../../internals/composite/list/useCompositeListItem.mjs\";\nimport { useRenderElement } from \"../../internals/useRenderElement.mjs\";\nimport { SelectItemContext } from \"./SelectItemContext.mjs\";\nimport { selectors } from \"../store.mjs\";\nimport { useButton } from \"../../internals/use-button/index.mjs\";\nimport { createChangeEventDetails } from \"../../internals/createBaseUIEventDetails.mjs\";\nimport { REASONS } from \"../../internals/reasons.mjs\";\nimport { compareItemEquality, removeItem } from \"../../internals/itemEquality.mjs\";\nimport { isVirtualClick } from \"../../floating-ui-react/utils/event.mjs\";\n\n/**\n * An individual option in the select popup.\n * Renders a `<div>` element.\n *\n * Documentation: [Base UI Select](https://base-ui.com/react/components/select)\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport const SelectItem = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function SelectItem(componentProps, forwardedRef) {\n const {\n render,\n className,\n style,\n value: itemValue = null,\n label,\n disabled = false,\n nativeButton = false,\n ...elementProps\n } = componentProps;\n const textRef = React.useRef(null);\n const listItem = useCompositeListItem({\n label,\n textRef,\n indexGuessBehavior: IndexGuessBehavior.GuessFromOrder\n });\n const {\n store,\n itemProps,\n setOpen,\n setValue,\n selectionRef,\n typingRef,\n valuesRef,\n multiple,\n selectedItemTextRef,\n disabled: selectDisabled,\n readOnly\n } = useSelectRootContext();\n const highlighted = useStore(store, selectors.isActive, listItem.index);\n const open = useStore(store, selectors.open);\n const selected = useStore(store, selectors.isSelected, itemValue);\n const selectedByFocus = useStore(store, selectors.isSelectedByFocus, listItem.index);\n const isItemEqualToValue = useStore(store, selectors.isItemEqualToValue);\n const index = listItem.index;\n const hasRegistered = index !== -1;\n const itemRef = React.useRef(null);\n useIsoLayoutEffect(() => {\n if (!hasRegistered) {\n return undefined;\n }\n const values = valuesRef.current;\n values[index] = itemValue;\n return () => {\n delete values[index];\n };\n }, [hasRegistered, index, itemValue, valuesRef]);\n useIsoLayoutEffect(() => {\n if (!hasRegistered) {\n return;\n }\n const selectedValue = store.state.value;\n let selectedCandidate = selectedValue;\n if (multiple && Array.isArray(selectedValue)) {\n // Compare against the last selected item, or `undefined` when nothing is selected — never\n // the raw array, which a custom `isItemEqualToValue` isn't expected to receive.\n selectedCandidate = selectedValue.length > 0 ? selectedValue[selectedValue.length - 1] : undefined;\n }\n if (selectedCandidate !== undefined && compareItemEquality(itemValue, selectedCandidate, isItemEqualToValue)) {\n store.set('selectedIndex', index);\n // Make sure SelectPopup can measure the selected item on first open.\n // SelectItemText can still update this ref later when focus moves.\n if (textRef.current) {\n selectedItemTextRef.current = textRef.current;\n }\n }\n }, [hasRegistered, index, multiple, isItemEqualToValue, store, itemValue, selectedItemTextRef]);\n const lastKeyRef = React.useRef(null);\n const pointerTypeRef = React.useRef('mouse');\n const allowMouseSelectionRef = React.useRef(false);\n const {\n getButtonProps,\n buttonRef\n } = useButton({\n disabled,\n focusableWhenDisabled: true,\n native: nativeButton,\n composite: true\n });\n const state = {\n disabled,\n selected,\n highlighted\n };\n function commitSelection(event) {\n // A forced-open select (`open`/`defaultOpen`) can still receive item activations even\n // when the root is disabled or read-only, so guard the commit here too.\n if (selectDisabled || readOnly) {\n return;\n }\n const selectedValue = store.state.value;\n if (multiple) {\n const currentValue = Array.isArray(selectedValue) ? selectedValue : [];\n const nextValue = selected ? removeItem(currentValue, itemValue, isItemEqualToValue) : [...currentValue, itemValue];\n setValue(nextValue, createChangeEventDetails(REASONS.itemPress, event));\n } else {\n setValue(itemValue, createChangeEventDetails(REASONS.itemPress, event));\n setOpen(false, createChangeEventDetails(REASONS.itemPress, event));\n }\n }\n function resetDragMovement() {\n selectionRef.current.dragY = 0;\n }\n const defaultProps = {\n role: 'option',\n 'aria-selected': selected,\n tabIndex: open && highlighted ? 0 : -1,\n onKeyDown(event) {\n lastKeyRef.current = event.key;\n store.set('activeIndex', index);\n if (event.key === ' ' && typingRef.current) {\n event.preventDefault();\n }\n },\n onClick(event) {\n const isMouseClick = event.type === 'click' && pointerTypeRef.current !== 'touch';\n const clickPointerType = event.nativeEvent.pointerType;\n const isVirtualMouseClick = isMouseClick && isVirtualClick(event.nativeEvent) && (\n // Generic no-pointer `detail === 0` clicks stay tied to highlight state. Virtual\n // clicks that carry browser pointer data, including an empty string from assistive\n // technology, can activate unhighlighted items.\n clickPointerType !== undefined || highlighted);\n // With alignItemWithTrigger, opening can place an item under the cursor. Real mouse\n // clicks must start on the item, while virtual clicks represent explicit keyboard or\n // assistive technology activation.\n const isInvalidMouseClick = isMouseClick && !isVirtualMouseClick && !allowMouseSelectionRef.current;\n allowMouseSelectionRef.current = false;\n\n // Prevent double commit on {Enter}\n if (event.type === 'keydown' && lastKeyRef.current === null) {\n return;\n }\n if (disabled || event.type === 'keydown' && lastKeyRef.current === ' ' && typingRef.current || isInvalidMouseClick) {\n return;\n }\n lastKeyRef.current = null;\n commitSelection(event.nativeEvent);\n },\n onPointerEnter(event) {\n pointerTypeRef.current = event.pointerType;\n },\n onPointerMove(event) {\n if (event.pointerType === 'mouse' && event.buttons === 1) {\n const selection = selectionRef.current;\n selection.dragY += event.movementY;\n if (selection.dragY ** 2 >= 64) {\n selection.allowUnselectedMouseUp = true;\n }\n }\n },\n onPointerDown(event) {\n pointerTypeRef.current = event.pointerType;\n allowMouseSelectionRef.current = true;\n resetDragMovement();\n },\n onMouseUp() {\n resetDragMovement();\n if (disabled || pointerTypeRef.current === 'touch') {\n return;\n }\n\n // Regular clicks are committed by the click event.\n if (allowMouseSelectionRef.current) {\n return;\n }\n const disallowSelectedMouseUp = !selectionRef.current.allowSelectedMouseUp && selected;\n const disallowUnselectedMouseUp = !selectionRef.current.allowUnselectedMouseUp && !selected;\n if (disallowSelectedMouseUp || disallowUnselectedMouseUp) {\n return;\n }\n allowMouseSelectionRef.current = true;\n itemRef.current?.click();\n allowMouseSelectionRef.current = false;\n }\n };\n const element = useRenderElement('div', componentProps, {\n ref: [buttonRef, forwardedRef, listItem.ref, itemRef],\n state,\n props: [itemProps, defaultProps, elementProps, getButtonProps]\n });\n const contextValue = React.useMemo(() => ({\n selected,\n index,\n textRef,\n selectedByFocus,\n hasRegistered\n }), [selected, index, textRef, selectedByFocus, hasRegistered]);\n return /*#__PURE__*/_jsx(SelectItemContext.Provider, {\n value: contextValue,\n children: element\n });\n}));\nif (process.env.NODE_ENV !== \"production\") SelectItem.displayName = \"SelectItem\";"],"names":["SelectItem","React","componentProps","forwardedRef","render","className","style","itemValue","label","disabled","nativeButton","elementProps","textRef","listItem","useCompositeListItem","IndexGuessBehavior","store","itemProps","setOpen","setValue","selectionRef","typingRef","valuesRef","multiple","selectedItemTextRef","selectDisabled","readOnly","useSelectRootContext","highlighted","useStore","selectors","open","selected","selectedByFocus","isItemEqualToValue","index","hasRegistered","itemRef","useIsoLayoutEffect","values","selectedValue","selectedCandidate","compareItemEquality","lastKeyRef","pointerTypeRef","allowMouseSelectionRef","getButtonProps","buttonRef","useButton","state","commitSelection","event","currentValue","nextValue","removeItem","createChangeEventDetails","REASONS.itemPress","resetDragMovement","defaultProps","isMouseClick","clickPointerType","isVirtualMouseClick","isVirtualClick","isInvalidMouseClick","selection","disallowSelectedMouseUp","disallowUnselectedMouseUp","element","useRenderElement","contextValue","_jsx","SelectItemContext"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index52.js","sources":["../../../node_modules/@base-ui/react/select/group-label/SelectGroupLabel.mjs"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { useIsoLayoutEffect } from '@base-ui/utils/useIsoLayoutEffect';\nimport { useBaseUiId } from \"../../internals/useBaseUiId.mjs\";\nimport { useSelectGroupContext } from \"../group/SelectGroupContext.mjs\";\nimport { useRenderElement } from \"../../internals/useRenderElement.mjs\";\n\n/**\n * An accessible label that is automatically associated with its parent group.\n * Renders a `<div>` element.\n *\n * Documentation: [Base UI Select](https://base-ui.com/react/components/select)\n */\nexport const SelectGroupLabel = /*#__PURE__*/React.forwardRef(function SelectGroupLabel(componentProps, forwardedRef) {\n const {\n render,\n className,\n style,\n id: idProp,\n ...elementProps\n } = componentProps;\n const {\n setLabelId\n } = useSelectGroupContext();\n const id = useBaseUiId(idProp);\n useIsoLayoutEffect(() => {\n setLabelId(id);\n }, [id, setLabelId]);\n const element = useRenderElement('div', componentProps, {\n ref: forwardedRef,\n props: [{\n id\n }, elementProps]\n });\n return element;\n});\nif (process.env.NODE_ENV !== \"production\") SelectGroupLabel.displayName = \"SelectGroupLabel\";"],"names":["SelectGroupLabel","React","componentProps","forwardedRef","render","className","style","idProp","elementProps","setLabelId","useSelectGroupContext","id","useBaseUiId","useIsoLayoutEffect","useRenderElement"],"mappings":";;;;;AAcY,MAACA,IAAgC,gBAAAC,EAAM,WAAW,SAA0BC,GAAgBC,GAAc;AACpH,QAAM;AAAA,IACJ,QAAAC;AAAA,IACA,WAAAC;AAAA,IACA,OAAAC;AAAA,IACA,IAAIC;AAAA,IACJ,GAAGC;AAAA,EACP,IAAMN,GACE;AAAA,IACJ,YAAAO;AAAA,EACJ,IAAMC,EAAqB,GACnBC,IAAKC,EAAYL,CAAM;AAC7B,SAAAM,EAAmB,MAAM;AACvB,IAAAJ,EAAWE,CAAE;AAAA,EACf,GAAG,CAACA,GAAIF,CAAU,CAAC,GACHK,EAAiB,OAAOZ,GAAgB;AAAA,IACtD,KAAKC;AAAA,IACL,OAAO,CAAC;AAAA,MACN,IAAAQ;AAAA,IACN,GAAOH,CAAY;AAAA,EACnB,CAAG;AAEH,CAAC;AACG,QAAQ,IAAI,aAAa,iBAAcR,EAAiB,cAAc;","x_google_ignoreList":[0]}
package/dist/index53.js CHANGED
@@ -1,29 +1,26 @@
1
- import * as m from "react";
2
- import { useIsoLayoutEffect as n } from "./index284.js";
3
- import { useBaseUiId as p } from "./index178.js";
4
- import { useSelectGroupContext as c } from "./index337.js";
5
- import { useRenderElement as i } from "./index172.js";
6
- const a = /* @__PURE__ */ m.forwardRef(function(o, r) {
1
+ import * as a from "react";
2
+ import { useRenderElement as n } from "./index172.js";
3
+ const s = /* @__PURE__ */ a.forwardRef(function(e, t) {
7
4
  const {
8
- render: u,
9
- className: d,
10
- style: L,
11
- id: s,
12
- ...l
13
- } = o, {
14
- setLabelId: t
15
- } = c(), e = p(s);
16
- return n(() => {
17
- t(e);
18
- }, [e, t]), i("div", o, {
19
- ref: r,
5
+ className: p,
6
+ render: m,
7
+ orientation: r = "horizontal",
8
+ style: l,
9
+ ...o
10
+ } = e;
11
+ return n("div", e, {
12
+ state: {
13
+ orientation: r
14
+ },
15
+ ref: t,
20
16
  props: [{
21
- id: e
22
- }, l]
17
+ role: "separator",
18
+ "aria-orientation": r
19
+ }, o]
23
20
  });
24
21
  });
25
- process.env.NODE_ENV !== "production" && (a.displayName = "SelectGroupLabel");
22
+ process.env.NODE_ENV !== "production" && (s.displayName = "Separator");
26
23
  export {
27
- a as SelectGroupLabel
24
+ s as Separator
28
25
  };
29
26
  //# sourceMappingURL=index53.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index53.js","sources":["../../../node_modules/@base-ui/react/select/group-label/SelectGroupLabel.mjs"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { useIsoLayoutEffect } from '@base-ui/utils/useIsoLayoutEffect';\nimport { useBaseUiId } from \"../../internals/useBaseUiId.mjs\";\nimport { useSelectGroupContext } from \"../group/SelectGroupContext.mjs\";\nimport { useRenderElement } from \"../../internals/useRenderElement.mjs\";\n\n/**\n * An accessible label that is automatically associated with its parent group.\n * Renders a `<div>` element.\n *\n * Documentation: [Base UI Select](https://base-ui.com/react/components/select)\n */\nexport const SelectGroupLabel = /*#__PURE__*/React.forwardRef(function SelectGroupLabel(componentProps, forwardedRef) {\n const {\n render,\n className,\n style,\n id: idProp,\n ...elementProps\n } = componentProps;\n const {\n setLabelId\n } = useSelectGroupContext();\n const id = useBaseUiId(idProp);\n useIsoLayoutEffect(() => {\n setLabelId(id);\n }, [id, setLabelId]);\n const element = useRenderElement('div', componentProps, {\n ref: forwardedRef,\n props: [{\n id\n }, elementProps]\n });\n return element;\n});\nif (process.env.NODE_ENV !== \"production\") SelectGroupLabel.displayName = \"SelectGroupLabel\";"],"names":["SelectGroupLabel","React","componentProps","forwardedRef","render","className","style","idProp","elementProps","setLabelId","useSelectGroupContext","id","useBaseUiId","useIsoLayoutEffect","useRenderElement"],"mappings":";;;;;AAcY,MAACA,IAAgC,gBAAAC,EAAM,WAAW,SAA0BC,GAAgBC,GAAc;AACpH,QAAM;AAAA,IACJ,QAAAC;AAAA,IACA,WAAAC;AAAA,IACA,OAAAC;AAAA,IACA,IAAIC;AAAA,IACJ,GAAGC;AAAA,EACP,IAAMN,GACE;AAAA,IACJ,YAAAO;AAAA,EACJ,IAAMC,EAAqB,GACnBC,IAAKC,EAAYL,CAAM;AAC7B,SAAAM,EAAmB,MAAM;AACvB,IAAAJ,EAAWE,CAAE;AAAA,EACf,GAAG,CAACA,GAAIF,CAAU,CAAC,GACHK,EAAiB,OAAOZ,GAAgB;AAAA,IACtD,KAAKC;AAAA,IACL,OAAO,CAAC;AAAA,MACN,IAAAQ;AAAA,IACN,GAAOH,CAAY;AAAA,EACnB,CAAG;AAEH,CAAC;AACG,QAAQ,IAAI,aAAa,iBAAcR,EAAiB,cAAc;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index53.js","sources":["../../../node_modules/@base-ui/react/separator/Separator.mjs"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { useRenderElement } from \"../internals/useRenderElement.mjs\";\n\n/**\n * A separator element accessible to screen readers.\n * Renders a `<div>` element.\n *\n * Documentation: [Base UI Separator](https://base-ui.com/react/components/separator)\n */\nexport const Separator = /*#__PURE__*/React.forwardRef(function SeparatorComponent(componentProps, forwardedRef) {\n const {\n className,\n render,\n orientation = 'horizontal',\n style,\n ...elementProps\n } = componentProps;\n const state = {\n orientation\n };\n const element = useRenderElement('div', componentProps, {\n state,\n ref: forwardedRef,\n props: [{\n role: 'separator',\n 'aria-orientation': orientation\n }, elementProps]\n });\n return element;\n});\nif (process.env.NODE_ENV !== \"production\") Separator.displayName = \"Separator\";"],"names":["Separator","React","componentProps","forwardedRef","className","render","orientation","style","elementProps","useRenderElement"],"mappings":";;AAWY,MAACA,IAAyB,gBAAAC,EAAM,WAAW,SAA4BC,GAAgBC,GAAc;AAC/G,QAAM;AAAA,IACJ,WAAAC;AAAA,IACA,QAAAC;AAAA,IACA,aAAAC,IAAc;AAAA,IACd,OAAAC;AAAA,IACA,GAAGC;AAAA,EACP,IAAMN;AAYJ,SARgBO,EAAiB,OAAOP,GAAgB;AAAA,IACtD,OAJY;AAAA,MACZ,aAAAI;AAAA,IACJ;AAAA,IAGI,KAAKH;AAAA,IACL,OAAO,CAAC;AAAA,MACN,MAAM;AAAA,MACN,oBAAoBG;AAAA,IAC1B,GAAOE,CAAY;AAAA,EACnB,CAAG;AAEH,CAAC;AACG,QAAQ,IAAI,aAAa,iBAAcR,EAAU,cAAc;","x_google_ignoreList":[0]}
package/dist/index54.js CHANGED
@@ -1,26 +1,141 @@
1
- import * as a from "react";
2
- import { useRenderElement as n } from "./index172.js";
3
- const s = /* @__PURE__ */ a.forwardRef(function(e, t) {
1
+ import * as g from "react";
2
+ import { ownerDocument as se } from "./index310.js";
3
+ import { useTimeout as b } from "./index311.js";
4
+ import { useStableCallback as ie } from "./index288.js";
5
+ import { useValueAsRef as le } from "./index289.js";
6
+ import { useSelectRootContext as ae } from "./index291.js";
7
+ import { useFieldRootContext as ue } from "./index292.js";
8
+ import { useLabelableContext as ce } from "./index312.js";
9
+ import { pressableTriggerOpenStateMapping as de } from "./index173.js";
10
+ import { fieldValidityMapping as pe } from "./index313.js";
11
+ import { useRenderElement as me } from "./index172.js";
12
+ import { selectors as t } from "./index296.js";
13
+ import { getPseudoElementBounds as fe } from "./index314.js";
14
+ import { createChangeEventDetails as B } from "./index175.js";
15
+ import { useLabelableId as ge } from "./index294.js";
16
+ import { resolveAriaLabelledBy as be } from "./index315.js";
17
+ import { useStore as o } from "./index303.js";
18
+ import { useButton as Se } from "./index176.js";
19
+ import { mergeProps as Ee } from "./index308.js";
20
+ import { getFloatingFocusElement as Te } from "./index316.js";
21
+ import { contains as S } from "./index317.js";
22
+ import { none as Re, cancelOpen as Me } from "./index177.js";
23
+ const d = 2, De = 400, he = {
24
+ ...de,
25
+ ...pe,
26
+ popupSide: (p) => p ? {
27
+ "data-popup-side": p
28
+ } : null,
29
+ value: () => null
30
+ }, ve = /* @__PURE__ */ g.forwardRef(function(E, L) {
4
31
  const {
5
- className: p,
6
- render: m,
7
- orientation: r = "horizontal",
8
- style: l,
9
- ...o
10
- } = e;
11
- return n("div", e, {
12
- state: {
13
- orientation: r
32
+ render: xe,
33
+ className: ye,
34
+ id: P,
35
+ disabled: U = !1,
36
+ nativeButton: w = !0,
37
+ style: Be,
38
+ ...F
39
+ } = E, {
40
+ setTouched: I,
41
+ setFocused: T,
42
+ validationMode: O,
43
+ state: V,
44
+ disabled: A
45
+ } = ue(), {
46
+ labelId: C
47
+ } = ce(), {
48
+ store: e,
49
+ setOpen: R,
50
+ selectionRef: i,
51
+ validation: M,
52
+ readOnly: D,
53
+ required: N,
54
+ alignItemWithTriggerActiveRef: Y,
55
+ disabled: _
56
+ } = ae(), l = A || _ || U, r = o(e, t.open), q = o(e, t.mounted), h = o(e, t.value), X = o(e, t.triggerProps), a = o(e, t.positionerElement), k = o(e, t.listElement), W = o(e, t.popupSide), j = o(e, t.id), z = o(e, t.labelId), G = o(e, t.hasSelectedValue), H = q && a ? W : null, v = P ?? j, J = be(C, z);
57
+ ge({
58
+ id: v
59
+ });
60
+ const K = le(a), u = g.useRef(null), {
61
+ getButtonProps: Q,
62
+ buttonRef: Z
63
+ } = Se({
64
+ disabled: l,
65
+ native: w
66
+ }), $ = ie((n) => {
67
+ e.set("triggerElement", n);
68
+ }), ee = b(), m = b(), f = b();
69
+ g.useEffect(() => {
70
+ if (r)
71
+ return f.start(De, () => {
72
+ i.current.allowUnselectedMouseUp = !0, i.current.allowSelectedMouseUp = !0;
73
+ }), () => {
74
+ f.clear();
75
+ };
76
+ i.current = {
77
+ allowSelectedMouseUp: !1,
78
+ allowUnselectedMouseUp: !1,
79
+ dragY: 0
80
+ }, m.clear();
81
+ }, [r, i, m, f]);
82
+ const te = Ee(X, {
83
+ id: v,
84
+ role: "combobox",
85
+ "aria-expanded": r ? "true" : "false",
86
+ "aria-haspopup": "listbox",
87
+ "aria-controls": r ? k?.id ?? Te(a)?.id : void 0,
88
+ "aria-labelledby": J,
89
+ "aria-readonly": D || void 0,
90
+ "aria-required": N || void 0,
91
+ tabIndex: l ? -1 : 0,
92
+ onFocus(n) {
93
+ T(!0), r && Y.current && R(!1, B(Re, n.nativeEvent)), ee.start(0, () => {
94
+ e.set("forceMount", !0);
95
+ });
96
+ },
97
+ onBlur(n) {
98
+ S(a, n.relatedTarget) || (I(!0), T(!1), O === "onBlur" && M.commit(h));
14
99
  },
15
- ref: t,
16
- props: [{
17
- role: "separator",
18
- "aria-orientation": r
19
- }, o]
100
+ onMouseDown(n) {
101
+ if (r)
102
+ return;
103
+ const re = se(n.currentTarget);
104
+ function ne(s) {
105
+ if (!u.current)
106
+ return;
107
+ const y = s.target;
108
+ if (S(u.current, y) || S(K.current, y))
109
+ return;
110
+ const c = fe(u.current);
111
+ s.clientX >= c.left - d && s.clientX <= c.right + d && s.clientY >= c.top - d && s.clientY <= c.bottom + d || R(!1, B(Me, s));
112
+ }
113
+ m.start(0, () => {
114
+ re.addEventListener("mouseup", ne, {
115
+ once: !0
116
+ });
117
+ });
118
+ }
119
+ }, F, Q), x = M.getValidationProps(l, te);
120
+ x.role = "combobox";
121
+ const oe = {
122
+ ...V,
123
+ open: r,
124
+ disabled: l,
125
+ value: h,
126
+ readOnly: D,
127
+ popupSide: H,
128
+ placeholder: !G
129
+ };
130
+ return me("button", E, {
131
+ ref: [L, u, Z, $],
132
+ state: oe,
133
+ stateAttributesMapping: he,
134
+ props: x
20
135
  });
21
136
  });
22
- process.env.NODE_ENV !== "production" && (s.displayName = "Separator");
137
+ process.env.NODE_ENV !== "production" && (ve.displayName = "SelectTrigger");
23
138
  export {
24
- s as Separator
139
+ ve as SelectTrigger
25
140
  };
26
141
  //# sourceMappingURL=index54.js.map