@yselimcan/ui 0.0.7 → 0.0.8

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 (233) hide show
  1. package/dist/index100.js +5 -4
  2. package/dist/index101.js +7 -66
  3. package/dist/index102.js +87 -8
  4. package/dist/index103.js +11 -12
  5. package/dist/index104.js +62 -3
  6. package/dist/index105.js +38 -4
  7. package/dist/index106.js +14 -6
  8. package/dist/index107.js +32 -29
  9. package/dist/index108.js +19 -12
  10. package/dist/index109.js +4 -65
  11. package/dist/index110.js +3 -53
  12. package/dist/index111.js +5 -13
  13. package/dist/index112.js +11 -5
  14. package/dist/index113.js +19 -13
  15. package/dist/index114.js +13 -13
  16. package/dist/index115.js +296 -32
  17. package/dist/index116.js +5 -19
  18. package/dist/index117.js +38 -40
  19. package/dist/index118.js +123 -16
  20. package/dist/index119.js +21 -12
  21. package/dist/index120.js +77 -38
  22. package/dist/index121.js +65 -14
  23. package/dist/index122.js +45 -8
  24. package/dist/index123.js +14 -13
  25. package/dist/index124.js +5 -5
  26. package/dist/index125.js +29 -87
  27. package/dist/index126.js +4 -296
  28. package/dist/index127.js +26 -10
  29. package/dist/index128.js +14 -122
  30. package/dist/index129.js +21 -4
  31. package/dist/index130.js +54 -259
  32. package/dist/index131.js +16 -78
  33. package/dist/index132.js +26 -37
  34. package/dist/index133.js +41 -21
  35. package/dist/index134.js +43 -12
  36. package/dist/index135.js +20 -55
  37. package/dist/index136.js +48 -11
  38. package/dist/index137.js +51 -11
  39. package/dist/index138.js +16 -29
  40. package/dist/index139.js +11 -18
  41. package/dist/index140.js +21 -65
  42. package/dist/index141.js +34 -103
  43. package/dist/index142.js +230 -8
  44. package/dist/index143.js +283 -8
  45. package/dist/index144.js +52 -21
  46. package/dist/index145.js +14 -102
  47. package/dist/index146.js +79 -7
  48. package/dist/index147.js +3 -32
  49. package/dist/index148.js +28 -228
  50. package/dist/index149.js +23 -74
  51. package/dist/index150.js +15 -283
  52. package/dist/index151.js +68 -52
  53. package/dist/index152.js +4 -46
  54. package/dist/index153.js +98 -70
  55. package/dist/index154.js +79 -3
  56. package/dist/index155.js +262 -13
  57. package/dist/index156.js +11 -15
  58. package/dist/index157.js +10 -28
  59. package/dist/index158.js +40 -7
  60. package/dist/index159.js +4 -22
  61. package/dist/index160.js +66 -24
  62. package/dist/index161.js +9 -160
  63. package/dist/index162.js +8 -113
  64. package/dist/index163.js +5 -64
  65. package/dist/index164.js +132 -74
  66. package/dist/index165.js +53 -64
  67. package/dist/index166.js +10 -68
  68. package/dist/index167.js +118 -14
  69. package/dist/index168.js +11 -7
  70. package/dist/index169.js +10 -4
  71. package/dist/index17.js +4 -4
  72. package/dist/index170.js +64 -15
  73. package/dist/index171.js +12 -21
  74. package/dist/index172.js +12 -58
  75. package/dist/index173.js +11 -16
  76. package/dist/index174.js +11 -27
  77. package/dist/index175.js +88 -43
  78. package/dist/index176.js +11 -21
  79. package/dist/index177.js +11 -48
  80. package/dist/index178.js +53 -48
  81. package/dist/index179.js +11 -17
  82. package/dist/index18.js +4 -4
  83. package/dist/index180.js +11 -11
  84. package/dist/index181.js +17 -34
  85. package/dist/index182.js +8 -15
  86. package/dist/index183.js +8 -79
  87. package/dist/index184.js +103 -23
  88. package/dist/index185.js +6 -2
  89. package/dist/index186.js +32 -11
  90. package/dist/index187.js +74 -10
  91. package/dist/index188.js +13 -39
  92. package/dist/index189.js +28 -4
  93. package/dist/index19.js +9 -9
  94. package/dist/index190.js +13 -10
  95. package/dist/index191.js +7 -11
  96. package/dist/index192.js +21 -116
  97. package/dist/index193.js +25 -12
  98. package/dist/index194.js +158 -85
  99. package/dist/index195.js +113 -12
  100. package/dist/index196.js +72 -59
  101. package/dist/index197.js +65 -4
  102. package/dist/index198.js +9 -5
  103. package/dist/index199.js +22 -11
  104. package/dist/index20.js +2 -2
  105. package/dist/index201.js +4 -22
  106. package/dist/index202.js +10 -4
  107. package/dist/index203.js +38 -26
  108. package/dist/index204.js +56 -127
  109. package/dist/index205.js +28 -45
  110. package/dist/index206.js +8 -18
  111. package/dist/index207.js +13 -5
  112. package/dist/index208.js +11 -180
  113. package/dist/index209.js +11 -75
  114. package/dist/index21.js +3 -3
  115. package/dist/index210.js +19 -396
  116. package/dist/index211.js +11 -199
  117. package/dist/index212.js +7 -47
  118. package/dist/index213.js +43 -20
  119. package/dist/index214.js +593 -44
  120. package/dist/index215.js +11 -6
  121. package/dist/index216.js +17 -5
  122. package/dist/index217.js +45 -14
  123. package/dist/index218.js +197 -12
  124. package/dist/index219.js +47 -32
  125. package/dist/index22.js +5 -5
  126. package/dist/index220.js +20 -4
  127. package/dist/index221.js +32 -11
  128. package/dist/index222.js +6 -9
  129. package/dist/index223.js +26 -38
  130. package/dist/index224.js +12 -57
  131. package/dist/index225.js +21 -27
  132. package/dist/index226.js +127 -7
  133. package/dist/index227.js +45 -13
  134. package/dist/index228.js +18 -12
  135. package/dist/index229.js +5 -12
  136. package/dist/index23.js +2 -2
  137. package/dist/index230.js +178 -19
  138. package/dist/index231.js +75 -11
  139. package/dist/index232.js +398 -7
  140. package/dist/index233.js +4 -43
  141. package/dist/index234.js +5 -597
  142. package/dist/index235.js +14 -11
  143. package/dist/index236.js +20 -3
  144. package/dist/index237.js +5 -208
  145. package/dist/index238.js +209 -4
  146. package/dist/index239.js +3 -13
  147. package/dist/index24.js +9 -9
  148. package/dist/index240.js +13 -47
  149. package/dist/index241.js +45 -10
  150. package/dist/index242.js +3 -57
  151. package/dist/index243.js +11 -28
  152. package/dist/index244.js +56 -12
  153. package/dist/index245.js +30 -9
  154. package/dist/index246.js +12 -205
  155. package/dist/index247.js +9 -15
  156. package/dist/index248.js +189 -304
  157. package/dist/index249.js +15 -3
  158. package/dist/index250.js +322 -3
  159. package/dist/index251.js +3 -21
  160. package/dist/index252.js +3 -6
  161. package/dist/index253.js +1 -1
  162. package/dist/index27.js +1 -1
  163. package/dist/index28.js +1 -1
  164. package/dist/index29.js +1 -1
  165. package/dist/index30.js +1 -1
  166. package/dist/index31.js +1 -1
  167. package/dist/index32.js +1 -1
  168. package/dist/index33.js +16 -16
  169. package/dist/index34.js +5 -5
  170. package/dist/index35.js +13 -13
  171. package/dist/index36.js +10 -10
  172. package/dist/index37.js +7 -7
  173. package/dist/index38.js +9 -9
  174. package/dist/index39.js +4 -4
  175. package/dist/index40.js +2 -2
  176. package/dist/index41.js +3 -3
  177. package/dist/index42.js +2 -2
  178. package/dist/index43.js +1 -1
  179. package/dist/index45.js +5 -5
  180. package/dist/index46.js +9 -9
  181. package/dist/index47.js +9 -9
  182. package/dist/index48.js +18 -18
  183. package/dist/index49.js +4 -4
  184. package/dist/index50.js +11 -11
  185. package/dist/index51.js +1 -1
  186. package/dist/index52.js +25 -25
  187. package/dist/index53.js +3 -3
  188. package/dist/index54.js +31 -31
  189. package/dist/index55.js +13 -13
  190. package/dist/index56.js +12 -12
  191. package/dist/index57.js +1 -1
  192. package/dist/index58.js +3 -3
  193. package/dist/index59.js +5 -5
  194. package/dist/index60.js +11 -11
  195. package/dist/index61.js +4 -4
  196. package/dist/index62.js +3 -3
  197. package/dist/index63.js +11 -11
  198. package/dist/index64.js +4 -4
  199. package/dist/index65.js +3 -3
  200. package/dist/index66.js +13 -13
  201. package/dist/index67.js +1 -1
  202. package/dist/index68.js +1 -1
  203. package/dist/index69.js +32 -32
  204. package/dist/index70.js +5 -5
  205. package/dist/index71.js +17 -17
  206. package/dist/index72.js +23 -23
  207. package/dist/index73.js +7 -7
  208. package/dist/index74.js +1 -1
  209. package/dist/index75.js +13 -13
  210. package/dist/index76.js +2 -2
  211. package/dist/index77.js +4 -4
  212. package/dist/index78.js +3 -3
  213. package/dist/index79.js +1 -1
  214. package/dist/index80.js +1 -1
  215. package/dist/index81.js +17 -17
  216. package/dist/index82.js +4 -4
  217. package/dist/index83.js +4 -4
  218. package/dist/index86.js +11 -89
  219. package/dist/index87.js +8 -8
  220. package/dist/index88.js +96 -12
  221. package/dist/index89.js +19 -96
  222. package/dist/index90.js +15 -18
  223. package/dist/index91.js +33 -16
  224. package/dist/index92.js +12 -33
  225. package/dist/index93.js +90 -12
  226. package/dist/index94.js +4 -133
  227. package/dist/index95.js +63 -24
  228. package/dist/index96.js +8 -8
  229. package/dist/index97.js +14 -5
  230. package/dist/index98.js +3 -12
  231. package/dist/index99.js +3 -22
  232. package/dist/styles.css +1 -1
  233. package/package.json +3 -3
package/dist/index174.js CHANGED
@@ -1,30 +1,14 @@
1
- "use client";
2
- import { useIsoLayoutEffect as s } from "./index97.js";
3
- import { isElement as u } from "./index94.js";
4
- import { useBaseUiId as m } from "./index112.js";
5
- import { useLabelableContext as c } from "./index173.js";
6
- import { NOOP as d } from "./index106.js";
7
- function x(f = {}) {
8
- const {
9
- id: e,
10
- implicit: o = !1,
11
- controlRef: r
12
- } = f, {
13
- controlId: l,
14
- setControlId: t
15
- } = c(), n = m(e);
16
- return s(() => {
17
- if (!(!o && !e || t === d)) {
18
- if (o) {
19
- const i = r?.current;
20
- u(i) && i.closest("label") != null ? t(e ?? null) : t(l ?? n);
21
- } else e && t(e);
22
- return () => {
23
- e && t(void 0);
24
- };
25
- }
26
- }, [e, r, l, t, o, n]), l ?? n;
1
+ import n from "./index94.js";
2
+ import * as o from "react";
3
+ const t = /* @__PURE__ */ o.createContext(void 0);
4
+ process.env.NODE_ENV !== "production" && (t.displayName = "MenuGroupContext");
5
+ function u() {
6
+ const e = o.useContext(t);
7
+ if (e === void 0)
8
+ throw new Error(process.env.NODE_ENV !== "production" ? "Base UI: MenuGroupRootContext is missing. Menu group parts must be used within <Menu.Group>." : n(31));
9
+ return e;
27
10
  }
28
11
  export {
29
- x as useLabelableId
12
+ t as MenuGroupContext,
13
+ u as useMenuGroupRootContext
30
14
  };
package/dist/index175.js CHANGED
@@ -1,45 +1,90 @@
1
- import { compareItemEquality as n } from "./index179.js";
2
- import { stringifyAsValue as u } from "./index178.js";
3
- import { createSelector as r } from "./index213.js";
4
- const p = {
5
- id: r((e) => e.id),
6
- modal: r((e) => e.modal),
7
- multiple: r((e) => e.multiple),
8
- items: r((e) => e.items),
9
- itemToStringLabel: r((e) => e.itemToStringLabel),
10
- itemToStringValue: r((e) => e.itemToStringValue),
11
- isItemEqualToValue: r((e) => e.isItemEqualToValue),
12
- value: r((e) => e.value),
13
- open: r((e) => e.open),
14
- mounted: r((e) => e.mounted),
15
- forceMount: r((e) => e.forceMount),
16
- transitionStatus: r((e) => e.transitionStatus),
17
- openMethod: r((e) => e.openMethod),
18
- activeIndex: r((e) => e.activeIndex),
19
- selectedIndex: r((e) => e.selectedIndex),
20
- isActive: r((e, t) => e.activeIndex === t),
21
- isSelected: r((e, t, l) => {
22
- const o = e.isItemEqualToValue, i = e.value;
23
- return e.multiple ? Array.isArray(i) && i.some((s) => n(s, l, o)) : e.selectedIndex === t && e.selectedIndex !== null ? !0 : n(i, l, o);
24
- }),
25
- isSelectedByFocus: r((e, t) => e.selectedIndex === t),
26
- popupProps: r((e) => e.popupProps),
27
- triggerProps: r((e) => e.triggerProps),
28
- triggerElement: r((e) => e.triggerElement),
29
- positionerElement: r((e) => e.positionerElement),
30
- listElement: r((e) => e.listElement),
31
- scrollUpArrowVisible: r((e) => e.scrollUpArrowVisible),
32
- scrollDownArrowVisible: r((e) => e.scrollDownArrowVisible),
33
- hasScrollArrows: r((e) => e.hasScrollArrows),
34
- serializedValue: r((e) => {
35
- const {
36
- multiple: t,
37
- value: l,
38
- itemToStringValue: o
39
- } = e;
40
- return t && Array.isArray(l) && l.length === 0 ? "" : u(l, o);
41
- })
42
- };
1
+ import * as L from "react";
2
+ import { isElement as j } from "./index164.js";
3
+ import { useStableCallback as f } from "./index127.js";
4
+ import { useIsoLayoutEffect as F } from "./index126.js";
5
+ import { createChangeEventDetails as w } from "./index107.js";
6
+ import { useFloatingTree as q, useFloatingParentNodeId as z } from "./index178.js";
7
+ import { useHoverInteractionSharedState as B, safePolygonIdentifier as H, isInteractiveElement as G } from "./index245.js";
8
+ import { triggerHover as O } from "./index108.js";
9
+ import { getDocument as x, getTarget as J } from "./index151.js";
10
+ import { isMouseLikePointerType as K } from "./index205.js";
11
+ const Q = /* @__PURE__ */ new Set(["click", "mousedown"]);
12
+ function re(i, d = {}) {
13
+ const n = "rootStore" in i ? i.rootStore : i, m = n.useState("open"), u = n.useState("floatingElement"), b = n.useState("domReferenceElement"), {
14
+ dataRef: p
15
+ } = n.context, {
16
+ enabled: R = !0,
17
+ closeDelay: I = 0,
18
+ externalTree: A
19
+ } = d, {
20
+ pointerTypeRef: E,
21
+ interactedInsideRef: l,
22
+ handlerRef: v,
23
+ performedPointerEventsMutationRef: g,
24
+ unbindMouseMoveRef: N,
25
+ restTimeoutPendingRef: S,
26
+ openChangeTimeout: y,
27
+ handleCloseOptionsRef: k
28
+ } = B(n), M = q(A), T = z(), h = f(() => l.current ? !0 : p.current.openEvent ? Q.has(p.current.openEvent.type) : !1), C = f(() => {
29
+ const e = p.current.openEvent?.type;
30
+ return e?.includes("mouse") && e !== "mousedown";
31
+ }), P = L.useCallback((e, r = !0) => {
32
+ const s = U(I, E.current);
33
+ s && !v.current ? y.start(s, () => n.setOpen(!1, w(O, e))) : r && (y.clear(), n.setOpen(!1, w(O, e)));
34
+ }, [I, v, n, E, y]), c = f(() => {
35
+ N.current(), v.current = void 0;
36
+ }), a = f(() => {
37
+ if (g.current) {
38
+ const e = x(u).body;
39
+ e.style.pointerEvents = "", e.removeAttribute(H), g.current = !1;
40
+ }
41
+ }), D = f((e) => {
42
+ const r = J(e);
43
+ if (!G(r)) {
44
+ l.current = !1;
45
+ return;
46
+ }
47
+ l.current = !0;
48
+ });
49
+ F(() => {
50
+ m || (E.current = void 0, S.current = !1, l.current = !1, c(), a());
51
+ }, [m, E, S, l, c, a]), L.useEffect(() => () => {
52
+ c();
53
+ }, [c]), L.useEffect(() => a, [a]), F(() => {
54
+ if (R && m && k.current?.blockPointerEvents && C() && j(b) && u) {
55
+ g.current = !0;
56
+ const e = x(u).body;
57
+ e.setAttribute(H, "");
58
+ const r = b, s = u, t = M?.nodesRef.current.find((o) => o.id === T)?.context?.elements.floating;
59
+ return t && (t.style.pointerEvents = ""), e.style.pointerEvents = "none", r.style.pointerEvents = "auto", s.style.pointerEvents = "auto", () => {
60
+ e.style.pointerEvents = "", r.style.pointerEvents = "", s.style.pointerEvents = "";
61
+ };
62
+ }
63
+ }, [R, m, b, u, k, C, M, T, g]), L.useEffect(() => {
64
+ if (!R)
65
+ return;
66
+ function e(o) {
67
+ if (h() || !p.current.floatingContext || !n.select("open"))
68
+ return;
69
+ const W = n.context.triggerElements;
70
+ o.relatedTarget && W.hasElement(o.relatedTarget) || (a(), c(), h() || P(o));
71
+ }
72
+ function r(o) {
73
+ y.clear(), a(), v.current?.(o), c();
74
+ }
75
+ function s(o) {
76
+ h() || P(o, !1);
77
+ }
78
+ const t = u;
79
+ return t && (t.addEventListener("mouseleave", e), t.addEventListener("mouseenter", r), t.addEventListener("mouseleave", s), t.addEventListener("pointerdown", D, !0)), () => {
80
+ t && (t.removeEventListener("mouseleave", e), t.removeEventListener("mouseenter", r), t.removeEventListener("mouseleave", s), t.removeEventListener("pointerdown", D, !0));
81
+ };
82
+ });
83
+ }
84
+ function U(i, d) {
85
+ return d && !K(d) ? 0 : typeof i == "function" ? i() : i;
86
+ }
43
87
  export {
44
- p as selectors
88
+ U as getDelay,
89
+ re as useHoverFloatingInteraction
45
90
  };
package/dist/index176.js CHANGED
@@ -1,24 +1,14 @@
1
- "use client";
2
- import * as e from "react";
3
- import { NOOP as r } from "./index106.js";
4
- const t = /* @__PURE__ */ e.createContext({
5
- formRef: {
6
- current: {
7
- fields: /* @__PURE__ */ new Map()
8
- }
9
- },
10
- errors: {},
11
- clearErrors: r,
12
- validationMode: "onSubmit",
13
- submitAttemptedRef: {
14
- current: !1
15
- }
16
- });
17
- process.env.NODE_ENV !== "production" && (t.displayName = "FormContext");
18
- function n() {
19
- return e.useContext(t);
1
+ import n from "./index94.js";
2
+ import * as o from "react";
3
+ const t = /* @__PURE__ */ o.createContext(void 0);
4
+ process.env.NODE_ENV !== "production" && (t.displayName = "MenuPortalContext");
5
+ function s() {
6
+ const e = o.useContext(t);
7
+ if (e === void 0)
8
+ throw new Error(process.env.NODE_ENV !== "production" ? "Base UI: <Menu.Portal> is missing." : n(32));
9
+ return e;
20
10
  }
21
11
  export {
22
- t as FormContext,
23
- n as useFormContext
12
+ t as MenuPortalContext,
13
+ s as useMenuPortalContext
24
14
  };
package/dist/index177.js CHANGED
@@ -1,51 +1,14 @@
1
- import * as p from "react-dom";
2
- import { useIsoLayoutEffect as r } from "./index97.js";
3
- import { useStableCallback as D } from "./index95.js";
4
- import { getCombinedFieldValidityData as v } from "./index222.js";
5
- import { useFormContext as R } from "./index176.js";
6
- import { useFieldRootContext as b } from "./index172.js";
7
- function S(u) {
8
- const {
9
- enabled: l = !0,
10
- value: a,
11
- id: t,
12
- name: f,
13
- controlRef: d,
14
- commit: m
15
- } = u, {
16
- formRef: n
17
- } = R(), {
18
- invalid: s,
19
- markedDirtyRef: c,
20
- validityData: o,
21
- setValidityData: V
22
- } = b(), i = D(u.getValue);
23
- r(() => {
24
- if (!l)
25
- return;
26
- let e = a;
27
- e === void 0 && (e = i()), o.initialValue === null && e !== null && V((y) => ({
28
- ...y,
29
- initialValue: e
30
- }));
31
- }, [l, V, a, o.initialValue, i]), r(() => {
32
- !l || !t || n.current.fields.set(t, {
33
- getValue: i,
34
- name: f,
35
- controlRef: d,
36
- validityData: v(o, s),
37
- validate() {
38
- let e = a;
39
- e === void 0 && (e = i()), c.current = !0, p.flushSync(() => m(e));
40
- }
41
- });
42
- }, [m, d, l, n, i, t, s, c, f, o, a]), r(() => {
43
- const e = n.current.fields;
44
- return () => {
45
- t && e.delete(t);
46
- };
47
- }, [n, t]);
1
+ import r from "./index94.js";
2
+ import * as e from "react";
3
+ const o = /* @__PURE__ */ e.createContext(void 0);
4
+ process.env.NODE_ENV !== "production" && (o.displayName = "ContextMenuRootContext");
5
+ function u(n = !0) {
6
+ const t = e.useContext(o);
7
+ if (t === void 0 && !n)
8
+ throw new Error(process.env.NODE_ENV !== "production" ? "Base UI: ContextMenuRootContext is missing. ContextMenu parts must be placed within <ContextMenu.Root>." : r(25));
9
+ return t;
48
10
  }
49
11
  export {
50
- S as useField
12
+ o as ContextMenuRootContext,
13
+ u as useContextMenuRootContext
51
14
  };
package/dist/index178.js CHANGED
@@ -1,54 +1,59 @@
1
1
  "use client";
2
- import { serializeValue as c } from "./index221.js";
3
- function t(n) {
4
- return n != null && n.length > 0 && typeof n[0] == "object" && n[0] != null && "items" in n[0];
5
- }
6
- function e(n, r) {
7
- if (r && n != null)
8
- return r(n) ?? "";
9
- if (n && typeof n == "object") {
10
- if ("label" in n && n.label != null)
11
- return String(n.label);
12
- if ("value" in n)
13
- return String(n.value);
14
- }
15
- return c(n);
16
- }
17
- function b(n, r) {
18
- return r && n != null ? r(n) ?? "" : n && typeof n == "object" && "value" in n && "label" in n ? c(n.value) : c(n);
2
+ import * as r from "react";
3
+ import { useId as a } from "./index181.js";
4
+ import { useIsoLayoutEffect as l } from "./index126.js";
5
+ import { useRefWithInit as f } from "./index101.js";
6
+ import { FloatingTreeStore as m } from "./index188.js";
7
+ import { jsx as d } from "react/jsx-runtime";
8
+ const i = /* @__PURE__ */ r.createContext(null);
9
+ process.env.NODE_ENV !== "production" && (i.displayName = "FloatingNodeContext");
10
+ const s = /* @__PURE__ */ r.createContext(null);
11
+ process.env.NODE_ENV !== "production" && (s.displayName = "FloatingTreeContext");
12
+ const u = () => r.useContext(i)?.id || null, p = (o) => {
13
+ const e = r.useContext(s);
14
+ return o ?? e;
15
+ };
16
+ function v(o) {
17
+ const e = a(), t = p(o), n = u();
18
+ return l(() => {
19
+ if (!e)
20
+ return;
21
+ const c = {
22
+ id: e,
23
+ parentId: n
24
+ };
25
+ return t?.addNode(c), () => {
26
+ t?.removeNode(c);
27
+ };
28
+ }, [t, e, n]), e;
19
29
  }
20
- function y(n, r, f) {
21
- if (f && n != null)
22
- return f(n);
23
- if (n && typeof n == "object" && "label" in n && n.label != null)
24
- return n.label;
25
- if (r && !Array.isArray(r))
26
- return r[n] ?? e(n, f);
27
- if (Array.isArray(r)) {
28
- const o = t(r) ? r.flatMap((l) => l.items) : r;
29
- if (n == null) {
30
- const l = o.find((u) => u.value == null);
31
- return l && l.label != null ? l.label : e(n, f);
32
- }
33
- if (typeof n != "object") {
34
- const l = o.find((u) => u && u.value === n);
35
- return l && l.label != null ? l.label : e(n, f);
36
- }
37
- if ("value" in n) {
38
- const l = o.find((u) => u && u.value === n.value);
39
- if (l && l.label != null)
40
- return l.label;
41
- }
42
- }
43
- return e(n, f);
30
+ function I(o) {
31
+ const {
32
+ children: e,
33
+ id: t
34
+ } = o, n = u();
35
+ return /* @__PURE__ */ d(i.Provider, {
36
+ value: r.useMemo(() => ({
37
+ id: t,
38
+ parentId: n
39
+ }), [t, n]),
40
+ children: e
41
+ });
44
42
  }
45
- function p(n, r) {
46
- return !Array.isArray(n) || n.length === 0 ? "" : n.map((f) => e(f, r)).join(", ");
43
+ function T(o) {
44
+ const {
45
+ children: e,
46
+ externalTree: t
47
+ } = o, n = f(() => t ?? new m()).current;
48
+ return /* @__PURE__ */ d(s.Provider, {
49
+ value: n,
50
+ children: e
51
+ });
47
52
  }
48
53
  export {
49
- t as isGroupedItems,
50
- p as resolveMultipleLabels,
51
- y as resolveSelectedLabel,
52
- e as stringifyAsLabel,
53
- b as stringifyAsValue
54
+ I as FloatingNode,
55
+ T as FloatingTree,
56
+ v as useFloatingNodeId,
57
+ u as useFloatingParentNodeId,
58
+ p as useFloatingTree
54
59
  };
package/dist/index179.js CHANGED
@@ -1,20 +1,14 @@
1
- const f = (n, e) => Object.is(n, e);
2
- function u(n, e, r) {
3
- return n == null || e == null ? Object.is(n, e) : r(n, e);
4
- }
5
- function i(n, e, r) {
6
- return !n || n.length === 0 ? !1 : n.some((t) => t === void 0 ? !1 : u(t, e, r));
7
- }
8
- function d(n, e, r) {
9
- return !n || n.length === 0 ? -1 : n.findIndex((t) => t === void 0 ? !1 : u(t, e, r));
10
- }
11
- function s(n, e, r) {
12
- return n.filter((t) => !u(t, e, r));
1
+ import n from "./index94.js";
2
+ import * as e from "react";
3
+ const t = /* @__PURE__ */ e.createContext(void 0);
4
+ process.env.NODE_ENV !== "production" && (t.displayName = "MenuRadioGroupContext");
5
+ function i() {
6
+ const o = e.useContext(t);
7
+ if (o === void 0)
8
+ throw new Error(process.env.NODE_ENV !== "production" ? "Base UI: MenuRadioGroupContext is missing. MenuRadioGroup parts must be placed within <Menu.RadioGroup>." : n(34));
9
+ return o;
13
10
  }
14
11
  export {
15
- u as compareItemEquality,
16
- f as defaultItemEquality,
17
- d as findItemIndex,
18
- i as itemIncludes,
19
- s as removeItem
12
+ t as MenuRadioGroupContext,
13
+ i as useMenuRadioGroupContext
20
14
  };
package/dist/index18.js CHANGED
@@ -1,10 +1,10 @@
1
1
  "use client";
2
2
  import * as n from "react";
3
- import { useDialogRootContext as p } from "./index195.js";
3
+ import { useDialogRootContext as p } from "./index103.js";
4
4
  import { useRenderElement as d } from "./index87.js";
5
- import { createChangeEventDetails as C } from "./index115.js";
6
- import { useButton as g } from "./index86.js";
7
- import { closePress as v } from "./index116.js";
5
+ import { createChangeEventDetails as C } from "./index107.js";
6
+ import { useButton as g } from "./index93.js";
7
+ import { closePress as v } from "./index108.js";
8
8
  const D = /* @__PURE__ */ n.forwardRef(function(t, s) {
9
9
  const {
10
10
  render: R,
package/dist/index180.js CHANGED
@@ -1,14 +1,14 @@
1
- import * as c from "react";
2
- import { useIsoLayoutEffect as o } from "./index97.js";
3
- import { useStableCallback as f } from "./index95.js";
4
- function u(r, n) {
5
- const t = c.useRef(r), e = f(n);
6
- o(() => {
7
- t.current !== r && e(t.current);
8
- }, [r, e]), o(() => {
9
- t.current = r;
10
- }, [r]);
1
+ import n from "./index94.js";
2
+ import * as t from "react";
3
+ const o = /* @__PURE__ */ t.createContext(void 0);
4
+ process.env.NODE_ENV !== "production" && (o.displayName = "MenuRadioItemContext");
5
+ function r() {
6
+ const e = t.useContext(o);
7
+ if (e === void 0)
8
+ throw new Error(process.env.NODE_ENV !== "production" ? "Base UI: MenuRadioItemContext is missing. MenuRadioItem parts must be placed within <Menu.RadioItem>." : n(35));
9
+ return e;
11
10
  }
12
11
  export {
13
- u as useValueChanged
12
+ o as MenuRadioItemContext,
13
+ r as useMenuRadioItemContext
14
14
  };
package/dist/index181.js CHANGED
@@ -1,38 +1,21 @@
1
- import { isElement as s } from "./index94.js";
2
- import { useId as m } from "./index139.js";
3
- import { useRefWithInit as c } from "./index168.js";
4
- import { useIsoLayoutEffect as a } from "./index97.js";
5
- import { useFloatingParentNodeId as u } from "./index135.js";
6
- import { FloatingRootStore as g } from "./index242.js";
7
- import { PopupTriggerMap as p } from "./index212.js";
8
- function O(o) {
9
- const {
10
- open: r = !1,
11
- onOpenChange: i,
12
- elements: e = {}
13
- } = o, f = m(), l = u() != null;
14
- if (process.env.NODE_ENV !== "production") {
15
- const n = e.reference;
16
- n && !s(n) && console.error("Cannot pass a virtual element to the `elements.reference` option,", "as it must be a real DOM element. Use `context.setPositionReference()`", "instead.");
1
+ "use client";
2
+ import * as n from "react";
3
+ import { SafeReact as l } from "./index234.js";
4
+ let o = 0;
5
+ function f(u, t = "mui") {
6
+ const [e, a] = n.useState(u), c = u || e;
7
+ return n.useEffect(() => {
8
+ e == null && (o += 1, a(`${t}-${o}`));
9
+ }, [e, t]), c;
10
+ }
11
+ const s = l.useId;
12
+ function I(u, t) {
13
+ if (s !== void 0) {
14
+ const e = s();
15
+ return u ?? (t ? `${t}-${e}` : e);
17
16
  }
18
- const t = c(() => new g({
19
- open: r,
20
- onOpenChange: i,
21
- referenceElement: e.reference ?? null,
22
- floatingElement: e.floating ?? null,
23
- triggerElements: e.triggers ?? new p(),
24
- floatingId: f,
25
- nested: l,
26
- noEmit: o.noEmit || !1
27
- })).current;
28
- return a(() => {
29
- const n = {
30
- open: r,
31
- floatingId: f
32
- };
33
- e.reference !== void 0 && (n.referenceElement = e.reference, n.domReferenceElement = s(e.reference) ? e.reference : null), e.floating !== void 0 && (n.floatingElement = e.floating), t.update(n);
34
- }, [r, f, e.reference, e.floating, t]), t.context.onOpenChange = i, t.context.nested = l, t.context.noEmit = o.noEmit || !1, t;
17
+ return f(u, t);
35
18
  }
36
19
  export {
37
- O as useFloatingRootContext
20
+ I as useId
38
21
  };
package/dist/index182.js CHANGED
@@ -1,18 +1,11 @@
1
- import * as c from "react";
2
- import { s as i } from "./index249.js";
3
- import { w as S } from "./index250.js";
4
- import { isReactVersionAtLeast as a } from "./index200.js";
5
- const u = a(19), m = u ? p : l;
6
- function b(t, e, o, r, n) {
7
- return m(t, e, o, r, n);
8
- }
9
- function p(t, e, o, r, n) {
10
- const s = c.useCallback(() => e(t.getSnapshot(), o, r, n), [t, e, o, r, n]);
11
- return i.useSyncExternalStore(t.subscribe, s, s);
12
- }
13
- function l(t, e, o, r, n) {
14
- return S.useSyncExternalStoreWithSelector(t.subscribe, t.getSnapshot, t.getSnapshot, (s) => e(s, o, r, n));
1
+ "use client";
2
+ import * as t from "react";
3
+ const e = /* @__PURE__ */ t.createContext(null);
4
+ process.env.NODE_ENV !== "production" && (e.displayName = "MenubarContext");
5
+ function r(n) {
6
+ return t.useContext(e);
15
7
  }
16
8
  export {
17
- b as useStore
9
+ e as MenubarContext,
10
+ r as useMenubarContext
18
11
  };
package/dist/index183.js CHANGED
@@ -1,82 +1,11 @@
1
- class e {
2
- /**
3
- * The current state of the store.
4
- * This property is updated immediately when the state changes as a result of calling {@link setState}, {@link update}, or {@link set}.
5
- * To subscribe to state changes, use the {@link useState} method. The value returned by {@link useState} is updated after the component renders (similarly to React's useState).
6
- * The values can be used directly (to avoid subscribing to the store) in effects or event handlers.
7
- *
8
- * Do not modify properties in state directly. Instead, use the provided methods to ensure proper state management and listener notification.
9
- */
10
- // Internal state to handle recursive `setState()` calls
11
- constructor(t) {
12
- this.state = t, this.listeners = /* @__PURE__ */ new Set(), this.updateTick = 0;
13
- }
14
- /**
15
- * Registers a listener that will be called whenever the store's state changes.
16
- *
17
- * @param fn The listener function to be called on state changes.
18
- * @returns A function to unsubscribe the listener.
19
- */
20
- subscribe = (t) => (this.listeners.add(t), () => {
21
- this.listeners.delete(t);
22
- });
23
- /**
24
- * Returns the current state of the store.
25
- */
26
- getSnapshot = () => this.state;
27
- /**
28
- * Updates the entire store's state and notifies all registered listeners.
29
- *
30
- * @param newState The new state to set for the store.
31
- */
32
- setState(t) {
33
- if (this.state === t)
34
- return;
35
- this.state = t, this.updateTick += 1;
36
- const s = this.updateTick;
37
- for (const i of this.listeners) {
38
- if (s !== this.updateTick)
39
- return;
40
- i(t);
41
- }
42
- }
43
- /**
44
- * Merges the provided changes into the current state and notifies listeners if there are changes.
45
- *
46
- * @param changes An object containing the changes to apply to the current state.
47
- */
48
- update(t) {
49
- for (const s in t)
50
- if (!Object.is(this.state[s], t[s])) {
51
- e.prototype.setState.call(this, {
52
- ...this.state,
53
- ...t
54
- });
55
- return;
56
- }
57
- }
58
- /**
59
- * Sets a specific key in the store's state to a new value and notifies listeners if the value has changed.
60
- *
61
- * @param key The key in the store's state to update.
62
- * @param value The new value to set for the specified key.
63
- */
64
- set(t, s) {
65
- Object.is(this.state[t], s) || e.prototype.setState.call(this, {
66
- ...this.state,
67
- [t]: s
68
- });
69
- }
70
- /**
71
- * Gives the state a new reference and updates all registered listeners.
72
- */
73
- notifyAll() {
74
- const t = {
75
- ...this.state
76
- };
77
- e.prototype.setState.call(this, t);
78
- }
1
+ "use client";
2
+ import * as t from "react";
3
+ const e = /* @__PURE__ */ t.createContext(void 0);
4
+ process.env.NODE_ENV !== "production" && (e.displayName = "DirectionContext");
5
+ function o() {
6
+ return t.useContext(e)?.direction ?? "ltr";
79
7
  }
80
8
  export {
81
- e as Store
9
+ e as DirectionContext,
10
+ o as useDirection
82
11
  };