@rpcbase/ui 0.206.0 → 0.208.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 (232) hide show
  1. package/dist/index.js +7 -7
  2. package/dist/index19.js +1 -1
  3. package/dist/index19.js.map +1 -1
  4. package/dist/index200.js +56 -55
  5. package/dist/index200.js.map +1 -1
  6. package/dist/index201.js +60 -8
  7. package/dist/index201.js.map +1 -1
  8. package/dist/index202.js +7 -15
  9. package/dist/index202.js.map +1 -1
  10. package/dist/index203.js +15 -143
  11. package/dist/index203.js.map +1 -1
  12. package/dist/index204.js +145 -4
  13. package/dist/index204.js.map +1 -1
  14. package/dist/index205.js +4 -11
  15. package/dist/index205.js.map +1 -1
  16. package/dist/index206.js +10 -104
  17. package/dist/index206.js.map +1 -1
  18. package/dist/index207.js +94 -347
  19. package/dist/index207.js.map +1 -1
  20. package/dist/index208.js +349 -87
  21. package/dist/index208.js.map +1 -1
  22. package/dist/index209.js +73 -304
  23. package/dist/index209.js.map +1 -1
  24. package/dist/index210.js +309 -193
  25. package/dist/index210.js.map +1 -1
  26. package/dist/index211.js +211 -19
  27. package/dist/index211.js.map +1 -1
  28. package/dist/index212.js +18 -27
  29. package/dist/index212.js.map +1 -1
  30. package/dist/index213.js +27 -187
  31. package/dist/index213.js.map +1 -1
  32. package/dist/index214.js +186 -16
  33. package/dist/index214.js.map +1 -1
  34. package/dist/index215.js +18 -44
  35. package/dist/index215.js.map +1 -1
  36. package/dist/index216.js +60 -8
  37. package/dist/index216.js.map +1 -1
  38. package/dist/index217.js +42 -23
  39. package/dist/index217.js.map +1 -1
  40. package/dist/index218.js +9 -44
  41. package/dist/index218.js.map +1 -1
  42. package/dist/index219.js +25 -18
  43. package/dist/index219.js.map +1 -1
  44. package/dist/index220.js +45 -3
  45. package/dist/index220.js.map +1 -1
  46. package/dist/index221.js +17 -4
  47. package/dist/index221.js.map +1 -1
  48. package/dist/index222.js +3 -21
  49. package/dist/index222.js.map +1 -1
  50. package/dist/index223.js +4 -24
  51. package/dist/index223.js.map +1 -1
  52. package/dist/index224.js +17 -64
  53. package/dist/index224.js.map +1 -1
  54. package/dist/index225.js +23 -13
  55. package/dist/index225.js.map +1 -1
  56. package/dist/index226.js +68 -4
  57. package/dist/index226.js.map +1 -1
  58. package/dist/index227.js +14 -50
  59. package/dist/index227.js.map +1 -1
  60. package/dist/index228.js +4 -6
  61. package/dist/index228.js.map +1 -1
  62. package/dist/index229.js +50 -26
  63. package/dist/index229.js.map +1 -1
  64. package/dist/index230.js +5 -13
  65. package/dist/index230.js.map +1 -1
  66. package/dist/index231.js +25 -8
  67. package/dist/index231.js.map +1 -1
  68. package/dist/index232.js +17 -3
  69. package/dist/index232.js.map +1 -0
  70. package/dist/index233.js +8 -24
  71. package/dist/index233.js.map +1 -1
  72. package/dist/index234.js +2 -71
  73. package/dist/index235.js +29 -3
  74. package/dist/index235.js.map +1 -0
  75. package/dist/index236.js +69 -12
  76. package/dist/index236.js.map +1 -1
  77. package/dist/index237.js +3 -54
  78. package/dist/index238.js +11 -114
  79. package/dist/index238.js.map +1 -1
  80. package/dist/index239.js +51 -6
  81. package/dist/index239.js.map +1 -1
  82. package/dist/index240.js +115 -13
  83. package/dist/index240.js.map +1 -1
  84. package/dist/index241.js +6 -687
  85. package/dist/index241.js.map +1 -1
  86. package/dist/index242.js +13 -253
  87. package/dist/index242.js.map +1 -1
  88. package/dist/index243.js +662 -676
  89. package/dist/index243.js.map +1 -1
  90. package/dist/index244.js +252 -7430
  91. package/dist/index244.js.map +1 -1
  92. package/dist/index245.js +700 -6
  93. package/dist/index245.js.map +1 -1
  94. package/dist/index246.js +7429 -11
  95. package/dist/index246.js.map +1 -1
  96. package/dist/index247.js +5 -4
  97. package/dist/index247.js.map +1 -1
  98. package/dist/index248.js +11 -458
  99. package/dist/index248.js.map +1 -1
  100. package/dist/index249.js +5 -37
  101. package/dist/index249.js.map +1 -1
  102. package/dist/index250.js +458 -18
  103. package/dist/index250.js.map +1 -1
  104. package/dist/index251.js +34 -24
  105. package/dist/index251.js.map +1 -1
  106. package/dist/index252.js +19 -4
  107. package/dist/index252.js.map +1 -1
  108. package/dist/index253.js +23 -54
  109. package/dist/index253.js.map +1 -1
  110. package/dist/index254.js +4 -7
  111. package/dist/index254.js.map +1 -1
  112. package/dist/index255.js +57 -11
  113. package/dist/index255.js.map +1 -1
  114. package/dist/index256.js +8 -3
  115. package/dist/index256.js.map +1 -1
  116. package/dist/index257.js +12 -16
  117. package/dist/index257.js.map +1 -1
  118. package/dist/index258.js +3 -26
  119. package/dist/index258.js.map +1 -1
  120. package/dist/index259.js +15 -42
  121. package/dist/index259.js.map +1 -1
  122. package/dist/index260.js +25 -13
  123. package/dist/index260.js.map +1 -1
  124. package/dist/index261.js +40 -22
  125. package/dist/index261.js.map +1 -1
  126. package/dist/index262.js +13 -17
  127. package/dist/index262.js.map +1 -1
  128. package/dist/index263.js +24 -34
  129. package/dist/index263.js.map +1 -1
  130. package/dist/index264.js +17 -5
  131. package/dist/index264.js.map +1 -1
  132. package/dist/index265.js +35 -9
  133. package/dist/index265.js.map +1 -1
  134. package/dist/index266.js +5 -8
  135. package/dist/index266.js.map +1 -1
  136. package/dist/index267.js +9 -9
  137. package/dist/index267.js.map +1 -1
  138. package/dist/index268.js +8 -10
  139. package/dist/index268.js.map +1 -1
  140. package/dist/index269.js +9 -7
  141. package/dist/index269.js.map +1 -1
  142. package/dist/index270.js +9 -72
  143. package/dist/index270.js.map +1 -1
  144. package/dist/index271.js +7 -171
  145. package/dist/index271.js.map +1 -1
  146. package/dist/index272.js +63 -104
  147. package/dist/index272.js.map +1 -1
  148. package/dist/index273.js +169 -12
  149. package/dist/index273.js.map +1 -1
  150. package/dist/index274.js +109 -75
  151. package/dist/index274.js.map +1 -1
  152. package/dist/index275.js +12 -44
  153. package/dist/index275.js.map +1 -1
  154. package/dist/index276.js +79 -12
  155. package/dist/index276.js.map +1 -1
  156. package/dist/index277.js +45 -15
  157. package/dist/index277.js.map +1 -1
  158. package/dist/index278.js +12 -98
  159. package/dist/index278.js.map +1 -1
  160. package/dist/index279.js +15 -55
  161. package/dist/index279.js.map +1 -1
  162. package/dist/index280.js +89 -98
  163. package/dist/index280.js.map +1 -1
  164. package/dist/index281.js +27 -42
  165. package/dist/index281.js.map +1 -1
  166. package/dist/index282.js +92 -97
  167. package/dist/index282.js.map +1 -1
  168. package/dist/index283.js +62 -46
  169. package/dist/index283.js.map +1 -1
  170. package/dist/index284.js +108 -38
  171. package/dist/index284.js.map +1 -1
  172. package/dist/index285.js +48 -135
  173. package/dist/index285.js.map +1 -1
  174. package/dist/index286.js +43 -139
  175. package/dist/index286.js.map +1 -1
  176. package/dist/index287.js +105 -217
  177. package/dist/index287.js.map +1 -1
  178. package/dist/index288.js +109 -210
  179. package/dist/index288.js.map +1 -1
  180. package/dist/index289.js +168 -212
  181. package/dist/index289.js.map +1 -1
  182. package/dist/index290.js +240 -5
  183. package/dist/index290.js.map +1 -1
  184. package/dist/index291.js +298 -6
  185. package/dist/index291.js.map +1 -1
  186. package/dist/index292.js +5 -7
  187. package/dist/index292.js.map +1 -1
  188. package/dist/index293.js +4 -4
  189. package/dist/index293.js.map +1 -1
  190. package/dist/index294.js +7 -6
  191. package/dist/index294.js.map +1 -1
  192. package/dist/index295.js +6 -21
  193. package/dist/index295.js.map +1 -1
  194. package/dist/index296.js +6 -10
  195. package/dist/index296.js.map +1 -1
  196. package/dist/index297.js +18 -123
  197. package/dist/index297.js.map +1 -1
  198. package/dist/index298.js +10 -164
  199. package/dist/index298.js.map +1 -1
  200. package/dist/index299.js +116 -58
  201. package/dist/index299.js.map +1 -1
  202. package/dist/index300.js +161 -106
  203. package/dist/index300.js.map +1 -1
  204. package/dist/index301.js +66 -489
  205. package/dist/index301.js.map +1 -1
  206. package/dist/index302.js +106 -59
  207. package/dist/index302.js.map +1 -1
  208. package/dist/index303.js +492 -4
  209. package/dist/index303.js.map +1 -1
  210. package/dist/index304.js +62 -27
  211. package/dist/index304.js.map +1 -1
  212. package/dist/index305.js +4 -66
  213. package/dist/index305.js.map +1 -1
  214. package/dist/index306.js +27 -152
  215. package/dist/index306.js.map +1 -1
  216. package/dist/index307.js +59 -555
  217. package/dist/index307.js.map +1 -1
  218. package/dist/index308.js +143 -201
  219. package/dist/index308.js.map +1 -1
  220. package/dist/index309.js +56 -326
  221. package/dist/index309.js.map +1 -1
  222. package/dist/index310.js +553 -260
  223. package/dist/index310.js.map +1 -1
  224. package/dist/index311.js +214 -0
  225. package/dist/index311.js.map +1 -0
  226. package/dist/index312.js +335 -0
  227. package/dist/index312.js.map +1 -0
  228. package/dist/index313.js +272 -0
  229. package/dist/index313.js.map +1 -0
  230. package/package.json +2 -2
  231. package/dist/index234.js.map +0 -1
  232. package/dist/index237.js.map +0 -1
package/dist/index304.js CHANGED
@@ -1,31 +1,66 @@
1
- import { cn as e } from "./index12.js";
1
+ import e from "./index10.js";
2
2
  import { c as t } from "react/compiler-runtime";
3
- import { jsx as n, jsxs as r } from "react/jsx-runtime";
4
- import { Bell as i } from "lucide-react";
5
- //#region src/components/Notifications/NotificationsButton.tsx
6
- function a(a) {
7
- let o = t(12), { unseenCount: s, unreadCount: c, onClick: l, className: u } = a, d = Number.isFinite(s) ? s : c, f;
8
- o[0] === d ? f = o[1] : (f = Number.isFinite(d) ? Math.max(0, Math.floor(d ?? 0)) : 0, o[0] = d, o[1] = f);
9
- let p = f, m;
10
- o[2] === u ? m = o[3] : (m = e("relative inline-flex h-9 w-9 items-center justify-center rounded-md border bg-background text-foreground hover:bg-accent", u), o[2] = u, o[3] = m);
11
- let h = p > 0 ? `Notifications (${p} new)` : "Notifications", g;
12
- o[4] === Symbol.for("react.memo_cache_sentinel") ? (g = /* @__PURE__ */ n(i, { className: "h-4 w-4" }), o[4] = g) : g = o[4];
13
- let _;
14
- o[5] === p ? _ = o[6] : (_ = p > 0 ? /* @__PURE__ */ n("span", {
15
- className: "absolute -right-1 -top-1 inline-flex min-w-4 items-center justify-center rounded-full bg-primary px-1 text-[10px] font-semibold leading-4 text-primary-foreground",
16
- "aria-hidden": "true",
17
- children: p > 99 ? "99+" : String(p)
18
- }) : null, o[5] = p, o[6] = _);
19
- let v;
20
- return o[7] !== l || o[8] !== m || o[9] !== h || o[10] !== _ ? (v = /* @__PURE__ */ r("button", {
21
- type: "button",
22
- onClick: l,
23
- className: m,
24
- "aria-label": h,
25
- children: [g, _]
26
- }), o[7] = l, o[8] = m, o[9] = h, o[10] = _, o[11] = v) : v = o[11], v;
27
- }
3
+ import { useEffect as n, useRef as r, useState as i } from "react";
4
+ import { jsx as a, jsxs as o } from "react/jsx-runtime";
5
+ import { Link as s } from "react-router";
6
+ //#region src/components/header/MenuPopover/index.tsx
7
+ var c = (c) => {
8
+ let l = t(18), { href: u, labelClassName: d, labelActiveClassName: f, labelElement: p, isActive: m, children: h } = c, [g, _] = i(!1), v = r(null), y = r(null), b;
9
+ l[0] === Symbol.for("react.memo_cache_sentinel") ? (b = () => {
10
+ v.current && clearTimeout(v.current), _(!0);
11
+ }, l[0] = b) : b = l[0];
12
+ let x = b, S;
13
+ l[1] === Symbol.for("react.memo_cache_sentinel") ? (S = () => {
14
+ v.current = setTimeout(() => {
15
+ _(!1);
16
+ }, 120);
17
+ }, l[1] = S) : S = l[1];
18
+ let C = S, w, T;
19
+ l[2] === Symbol.for("react.memo_cache_sentinel") ? (w = () => () => {
20
+ v.current && clearTimeout(v.current);
21
+ }, T = [], l[2] = w, l[3] = T) : (w = l[2], T = l[3]), n(w, T);
22
+ let E;
23
+ l[4] === Symbol.for("react.memo_cache_sentinel") ? (E = () => {
24
+ _(!1);
25
+ }, l[4] = E) : E = l[4];
26
+ let D = g || m ? f : "border-transparent", O;
27
+ l[5] !== d || l[6] !== D ? (O = e("relative z-10 -mb-px flex items-center border-b-2 pt-px text-sm font-medium text-gray-700 cursor-pointer transition-colors duration-200 ease-out hover:text-gray-800", d, D), l[5] = d, l[6] = D, l[7] = O) : O = l[7];
28
+ let k;
29
+ l[8] !== u || l[9] !== p || l[10] !== O ? (k = /* @__PURE__ */ a("div", {
30
+ className: "relative flex",
31
+ children: /* @__PURE__ */ a(s, {
32
+ to: u,
33
+ onClick: E,
34
+ className: O,
35
+ children: p
36
+ })
37
+ }), l[8] = u, l[9] = p, l[10] = O, l[11] = k) : k = l[11];
38
+ let A;
39
+ l[12] !== h || l[13] !== g ? (A = g && /* @__PURE__ */ o("div", {
40
+ className: "absolute left-0 right-0 top-full z-20 text-gray-500 sm:text-sm",
41
+ style: {
42
+ width: "100vw",
43
+ left: "50%",
44
+ transform: "translateX(-50%)"
45
+ },
46
+ children: [/* @__PURE__ */ a("div", {
47
+ "aria-hidden": "true",
48
+ className: "absolute inset-0 top-1/2 bg-white shadow-sm"
49
+ }), /* @__PURE__ */ a("div", {
50
+ className: "relative bg-white",
51
+ children: h({ setIsOpen: _ })
52
+ })]
53
+ }), l[12] = h, l[13] = g, l[14] = A) : A = l[14];
54
+ let j;
55
+ return l[15] !== k || l[16] !== A ? (j = /* @__PURE__ */ o("div", {
56
+ className: "flex",
57
+ ref: y,
58
+ onMouseEnter: x,
59
+ onMouseLeave: C,
60
+ children: [k, A]
61
+ }), l[15] = k, l[16] = A, l[17] = j) : j = l[17], j;
62
+ };
28
63
  //#endregion
29
- export { a as NotificationsButton };
64
+ export { c as MenuPopover };
30
65
 
31
66
  //# sourceMappingURL=index304.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index304.js","names":["Bell","cn","NotificationsButton","t0","$","_c","unseenCount","unreadCount","onClick","className","rawCount","Number","isFinite","t1","Math","max","floor","count","t2","t3","t4","Symbol","for","t5","String","t6"],"sources":["../src/components/Notifications/NotificationsButton.tsx"],"sourcesContent":["import { Bell } from \"lucide-react\"\n\nimport { cn } from \"@/lib/utils\"\n\n\nexport function NotificationsButton({\n unseenCount,\n unreadCount,\n onClick,\n className,\n}: {\n unseenCount?: number\n unreadCount?: number\n onClick?: () => void\n className?: string\n}) {\n const rawCount = Number.isFinite(unseenCount) ? unseenCount : unreadCount\n const count = Number.isFinite(rawCount) ? Math.max(0, Math.floor(rawCount ?? 0)) : 0\n\n return (\n <button\n type=\"button\"\n onClick={onClick}\n className={cn(\n \"relative inline-flex h-9 w-9 items-center justify-center rounded-md border bg-background text-foreground hover:bg-accent\",\n className,\n )}\n aria-label={count > 0 ? `Notifications (${count} new)` : \"Notifications\"}\n >\n <Bell className=\"h-4 w-4\" />\n {count > 0 ? (\n <span\n className=\"absolute -right-1 -top-1 inline-flex min-w-4 items-center justify-center rounded-full bg-primary px-1 text-[10px] font-semibold leading-4 text-primary-foreground\"\n aria-hidden=\"true\"\n >\n {count > 99 ? \"99+\" : String(count)}\n </span>\n ) : null}\n </button>\n )\n}\n"],"mappings":";;;;;AAKA,SAAOE,EAAAC,GAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EAA6B,EAAAC,gBAAAC,gBAAAC,YAAAC,iBAAAN,GAWlCO,IAAiBC,OAAMC,SAAUN,EAAwC,GAAxDA,IAAAC,GAAwDM;AAAA,CAAAT,EAAA,OAAAM,IACWG,IAAAT,EAAA,MAAtES,IAAAF,OAAMC,SAAUF,EAAsD,GAA1CI,KAAIC,IAAK,GAAGD,KAAIE,MAAON,KAAA,EAAkB,CAAC,GAAtE,GAAsEN,EAAA,KAAAM,GAAAN,EAAA,KAAAS;CAApF,IAAAI,IAAcJ,GAAsEK;AAAA,CAAAd,EAAA,OAAAK,IAS/ES,IAAAd,EAAA,MAHUc,IAAAjB,EACT,4HACAQ,EACD,EAAAL,EAAA,KAAAK,GAAAL,EAAA,KAAAc;CACW,IAAAC,IAAAF,IAAQ,IAAR,kBAA8BA,EAAK,SAAnC,iBAA4DG;AAAA,CAAAhB,EAAA,OAAAiB,OAAAC,IAAA,4BAAA,IAExEF,IAAA,kBAAC,GAAD,EAAgB,WAAA,WAAY,CAAA,EAAAhB,EAAA,KAAAgB,KAAAA,IAAAhB,EAAA;CAAA,IAAAmB;AAAA,CAAAnB,EAAA,OAAAa,IAQpBM,IAAAnB,EAAA,MAPPmB,IAAAN,IAAQ,IACP,kBAAA,QAAA;EACY,WAAA;EACE,eAAA;YAEXA,IAAQ,KAAR,QAAqBO,OAAOP,EAAK;EAE9B,CAAA,GAPP,MAOOb,EAAA,KAAAa,GAAAb,EAAA,KAAAmB;CAAA,IAAAE;AACD,QADCrB,EAAA,OAAAI,KAAAJ,EAAA,OAAAc,KAAAd,EAAA,OAAAe,KAAAf,EAAA,QAAAmB,KAjBVE,IAAA,kBAAA,UAAA;EACO,MAAA;EACIjB;EACE,WAAAU;EAIC,cAAAC;YAPd,CASEC,GACCG,EAQM;KAAAnB,EAAA,KAAAI,GAAAJ,EAAA,KAAAc,GAAAd,EAAA,KAAAe,GAAAf,EAAA,MAAAmB,GAAAnB,EAAA,MAAAqB,KAAAA,IAAArB,EAAA,KAlBTqB"}
1
+ {"version":3,"file":"index304.js","names":["clsx","ReactNode","useState","useRef","useEffect","Link","MenuPopover","t0","$","_c","href","labelClassName","labelActiveClassName","labelElement","isActive","children","isOpen","setIsOpen","timeoutRef","popoverRef","t1","Symbol","for","current","clearTimeout","handleMouseEnter","t2","setTimeout","handleMouseLeave","t3","t4","t5","t6","t7","t8","t9","width","left","transform","t10"],"sources":["../src/components/header/MenuPopover/index.tsx"],"sourcesContent":["import clsx from \"clsx\"\nimport { ReactNode, useState, useRef, useEffect } from \"react\"\nimport { Link } from \"react-router\"\n\n\nexport const MenuPopover = ({\n href,\n labelClassName,\n labelActiveClassName,\n labelElement,\n isActive,\n children,\n}: {\n href: string;\n labelClassName: string;\n labelActiveClassName: string;\n labelElement: ReactNode;\n isActive: boolean;\n children: (props: { setIsOpen: (isOpen: boolean) => void }) => ReactNode\n}) => {\n const [isOpen, setIsOpen] = useState(false)\n const timeoutRef = useRef<ReturnType<typeof setTimeout> | null>(null)\n const popoverRef = useRef(null)\n\n const handleMouseEnter = () => {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current)\n }\n setIsOpen(true)\n }\n\n const handleMouseLeave = () => {\n timeoutRef.current = setTimeout(() => {\n setIsOpen(false)\n }, 120)\n }\n\n useEffect(() => {\n return () => {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current)\n }\n }\n }, [])\n\n return (\n <div\n className=\"flex\"\n ref={popoverRef}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n >\n <div className=\"relative flex\">\n <Link\n to={href}\n onClick={() => {\n setIsOpen(false)\n }}\n className={clsx(\n \"relative z-10 -mb-px flex items-center border-b-2 pt-px text-sm font-medium text-gray-700 cursor-pointer transition-colors duration-200 ease-out hover:text-gray-800\",\n labelClassName,\n isOpen || isActive ? labelActiveClassName : \"border-transparent\",\n )}\n >\n {labelElement}\n </Link>\n </div>\n\n {isOpen && (\n <div\n className=\"absolute left-0 right-0 top-full z-20 text-gray-500 sm:text-sm\"\n style={{ width: \"100vw\", left: \"50%\", transform: \"translateX(-50%)\" }}\n >\n <div\n aria-hidden=\"true\"\n className=\"absolute inset-0 top-1/2 bg-white shadow-sm\"\n />\n\n <div className=\"relative bg-white\">\n {children({ setIsOpen })}\n </div>\n </div>\n )}\n </div>\n )\n}\n"],"mappings":";;;;;;AAKA,IAAaM,KAAcC,MAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EAAC,EAAAC,SAAAC,mBAAAC,yBAAAC,iBAAAC,aAAAC,gBAAAR,GAe1B,CAAAS,GAAAC,KAA4Bf,EAAS,GAAM,EAC3CgB,IAAmBf,EAA6C,KAAK,EACrEgB,IAAmBhB,EAAO,KAAK,EAAAiB;AAAA,CAAAZ,EAAA,OAAAa,OAAAC,IAAA,4BAAA,IAENF,UAAA;AAIvBH,EAHIC,EAAUK,WACZC,aAAaN,EAAUK,QAAS,EAElCN,EAAU,GAAK;IAChBT,EAAA,KAAAY,KAAAA,IAAAZ,EAAA;CALD,IAAAiB,IAAyBL,GAKxBM;AAAA,CAAAlB,EAAA,OAAAa,OAAAC,IAAA,4BAAA,IAEwBI,UAAA;AACvBR,IAAUK,UAAWI,iBAAW;AAC9BV,KAAU,GAAM;KACf,IAFe;IAGnBT,EAAA,KAAAkB,KAAAA,IAAAlB,EAAA;CAJD,IAAAoB,IAAyBF,GAIxBG,GAAAC;AAED1B,CAFCI,EAAA,OAAAa,OAAAC,IAAA,4BAAA,IAESO,gBACD;AACL,EAAIX,EAAUK,WACZC,aAAaN,EAAUK,QAAS;IAGnCO,IAAA,EAAE,EAAAtB,EAAA,KAAAqB,GAAArB,EAAA,KAAAsB,MAAAD,IAAArB,EAAA,IAAAsB,IAAAtB,EAAA,KANLJ,EAAUyB,GAMPC,EAAG;CAAA,IAAAC;AAAA,CAAAvB,EAAA,OAAAa,OAAAC,IAAA,4BAAA,IAYWS,UAAA;AACPd,IAAU,GAAM;IACjBT,EAAA,KAAAuB,KAAAA,IAAAvB,EAAA;CAIC,IAAAwB,IAAAhB,KAAAF,IAAAF,IAAA,sBAAgEqB;AAAA,CAAAzB,EAAA,OAAAG,KAAAH,EAAA,OAAAwB,KAHvDC,IAAAjC,EACT,wKACAW,GACAqB,EACD,EAAAxB,EAAA,KAAAG,GAAAH,EAAA,KAAAwB,GAAAxB,EAAA,KAAAyB,KAAAA,IAAAzB,EAAA;CAAA,IAAA0B;AAAA,CAAA1B,EAAA,OAAAE,KAAAF,EAAA,OAAAK,KAAAL,EAAA,QAAAyB,KAVLC,IAAA,kBAAA,OAAA;EAAe,WAAA;YACb,kBAAC,GAAD;GACMxB,IAAAA;GACK,SAAAqB;GAGE,WAAAE;aAMVpB;GAEL,CAAA;EAAM,CAAA,EAAAL,EAAA,KAAAE,GAAAF,EAAA,KAAAK,GAAAL,EAAA,MAAAyB,GAAAzB,EAAA,MAAA0B,KAAAA,IAAA1B,EAAA;CAAA,IAAA2B;AAAA,CAAA3B,EAAA,QAAAO,KAAAP,EAAA,QAAAQ,KAELmB,IAAAnB,KACC,kBAAA,OAAA;EACY,WAAA;EACH,OAAA;GAAAoB,OAAS;GAAOC,MAAQ;GAAKC,WAAa;GAAmB;YAFtE,CAIE,kBAAA,OAAA;GACc,eAAA;GACF,WAAA;GAGZ,CAAA,EAAA,kBAAA,OAAA;GAAe,WAAA;aACZvB,EAAS,EAAAE,cAAa,CAAA;GAE3B,CAAA,CACD;KAAAT,EAAA,MAAAO,GAAAP,EAAA,MAAAQ,GAAAR,EAAA,MAAA2B,KAAAA,IAAA3B,EAAA;CAAA,IAAA+B;AACG,QADH/B,EAAA,QAAA0B,KAAA1B,EAAA,QAAA2B,KApCHI,IAAA,kBAAA,OAAA;EACY,WAAA;EACLpB,KAAAA;EACSM,cAAAA;EACAG,cAAAA;YAJhB,CAMEM,GAgBCC,EAeG;KAAA3B,EAAA,MAAA0B,GAAA1B,EAAA,MAAA2B,GAAA3B,EAAA,MAAA+B,KAAAA,IAAA/B,EAAA,KArCN+B"}
package/dist/index305.js CHANGED
@@ -1,69 +1,7 @@
1
- "use client";
2
- import { useComposedRefs as e } from "./index18.js";
3
- import { useLayoutEffect2 as t } from "./index204.js";
4
- import * as n from "react";
5
- //#region ../../node_modules/@radix-ui/react-presence/dist/index.mjs
6
- function r(e, t) {
7
- return n.useReducer((e, n) => t[e][n] ?? e, e);
8
- }
9
- var i = (t) => {
10
- let { present: r, children: i } = t, o = a(r), c = typeof i == "function" ? i({ present: o.isPresent }) : n.Children.only(i), l = e(o.ref, s(c));
11
- return typeof i == "function" || o.isPresent ? n.cloneElement(c, { ref: l }) : null;
12
- };
13
- i.displayName = "Presence";
14
- function a(e) {
15
- let [i, a] = n.useState(), s = n.useRef(null), c = n.useRef(e), l = n.useRef("none"), [u, d] = r(e ? "mounted" : "unmounted", {
16
- mounted: {
17
- UNMOUNT: "unmounted",
18
- ANIMATION_OUT: "unmountSuspended"
19
- },
20
- unmountSuspended: {
21
- MOUNT: "mounted",
22
- ANIMATION_END: "unmounted"
23
- },
24
- unmounted: { MOUNT: "mounted" }
25
- });
26
- return n.useEffect(() => {
27
- let e = o(s.current);
28
- l.current = u === "mounted" ? e : "none";
29
- }, [u]), t(() => {
30
- let t = s.current, n = c.current;
31
- if (n !== e) {
32
- let r = l.current, i = o(t);
33
- e ? d("MOUNT") : i === "none" || t?.display === "none" ? d("UNMOUNT") : d(n && r !== i ? "ANIMATION_OUT" : "UNMOUNT"), c.current = e;
34
- }
35
- }, [e, d]), t(() => {
36
- if (i) {
37
- let e, t = i.ownerDocument.defaultView ?? window, n = (n) => {
38
- let r = o(s.current).includes(CSS.escape(n.animationName));
39
- if (n.target === i && r && (d("ANIMATION_END"), !c.current)) {
40
- let n = i.style.animationFillMode;
41
- i.style.animationFillMode = "forwards", e = t.setTimeout(() => {
42
- i.style.animationFillMode === "forwards" && (i.style.animationFillMode = n);
43
- });
44
- }
45
- }, r = (e) => {
46
- e.target === i && (l.current = o(s.current));
47
- };
48
- return i.addEventListener("animationstart", r), i.addEventListener("animationcancel", n), i.addEventListener("animationend", n), () => {
49
- t.clearTimeout(e), i.removeEventListener("animationstart", r), i.removeEventListener("animationcancel", n), i.removeEventListener("animationend", n);
50
- };
51
- } else d("ANIMATION_END");
52
- }, [i, d]), {
53
- isPresent: ["mounted", "unmountSuspended"].includes(u),
54
- ref: n.useCallback((e) => {
55
- s.current = e ? getComputedStyle(e) : null, a(e);
56
- }, [])
57
- };
58
- }
59
- function o(e) {
60
- return e?.animationName || "none";
61
- }
62
- function s(e) {
63
- let t = Object.getOwnPropertyDescriptor(e.props, "ref")?.get, n = t && "isReactWarning" in t && t.isReactWarning;
64
- return n ? e.ref : (t = Object.getOwnPropertyDescriptor(e, "ref")?.get, n = t && "isReactWarning" in t && t.isReactWarning, n ? e.props.ref : e.props.ref || e.ref);
65
- }
1
+ import { MenuPopover as e } from "./index304.js";
2
+ //#region src/components/header/index.tsx
3
+ var t = { MenuPopover: e };
66
4
  //#endregion
67
- export { i as Presence };
5
+ export { t as Header };
68
6
 
69
7
  //# sourceMappingURL=index305.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index305.js","names":["React"],"sources":["../../../node_modules/@radix-ui/react-presence/dist/index.mjs"],"sourcesContent":["\"use client\";\n\n// src/presence.tsx\nimport * as React2 from \"react\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { useLayoutEffect } from \"@radix-ui/react-use-layout-effect\";\n\n// src/use-state-machine.tsx\nimport * as React from \"react\";\nfunction useStateMachine(initialState, machine) {\n return React.useReducer((state, event) => {\n const nextState = machine[state][event];\n return nextState ?? state;\n }, initialState);\n}\n\n// src/presence.tsx\nvar Presence = (props) => {\n const { present, children } = props;\n const presence = usePresence(present);\n const child = typeof children === \"function\" ? children({ present: presence.isPresent }) : React2.Children.only(children);\n const ref = useComposedRefs(presence.ref, getElementRef(child));\n const forceMount = typeof children === \"function\";\n return forceMount || presence.isPresent ? React2.cloneElement(child, { ref }) : null;\n};\nPresence.displayName = \"Presence\";\nfunction usePresence(present) {\n const [node, setNode] = React2.useState();\n const stylesRef = React2.useRef(null);\n const prevPresentRef = React2.useRef(present);\n const prevAnimationNameRef = React2.useRef(\"none\");\n const initialState = present ? \"mounted\" : \"unmounted\";\n const [state, send] = useStateMachine(initialState, {\n mounted: {\n UNMOUNT: \"unmounted\",\n ANIMATION_OUT: \"unmountSuspended\"\n },\n unmountSuspended: {\n MOUNT: \"mounted\",\n ANIMATION_END: \"unmounted\"\n },\n unmounted: {\n MOUNT: \"mounted\"\n }\n });\n React2.useEffect(() => {\n const currentAnimationName = getAnimationName(stylesRef.current);\n prevAnimationNameRef.current = state === \"mounted\" ? currentAnimationName : \"none\";\n }, [state]);\n useLayoutEffect(() => {\n const styles = stylesRef.current;\n const wasPresent = prevPresentRef.current;\n const hasPresentChanged = wasPresent !== present;\n if (hasPresentChanged) {\n const prevAnimationName = prevAnimationNameRef.current;\n const currentAnimationName = getAnimationName(styles);\n if (present) {\n send(\"MOUNT\");\n } else if (currentAnimationName === \"none\" || styles?.display === \"none\") {\n send(\"UNMOUNT\");\n } else {\n const isAnimating = prevAnimationName !== currentAnimationName;\n if (wasPresent && isAnimating) {\n send(\"ANIMATION_OUT\");\n } else {\n send(\"UNMOUNT\");\n }\n }\n prevPresentRef.current = present;\n }\n }, [present, send]);\n useLayoutEffect(() => {\n if (node) {\n let timeoutId;\n const ownerWindow = node.ownerDocument.defaultView ?? window;\n const handleAnimationEnd = (event) => {\n const currentAnimationName = getAnimationName(stylesRef.current);\n const isCurrentAnimation = currentAnimationName.includes(CSS.escape(event.animationName));\n if (event.target === node && isCurrentAnimation) {\n send(\"ANIMATION_END\");\n if (!prevPresentRef.current) {\n const currentFillMode = node.style.animationFillMode;\n node.style.animationFillMode = \"forwards\";\n timeoutId = ownerWindow.setTimeout(() => {\n if (node.style.animationFillMode === \"forwards\") {\n node.style.animationFillMode = currentFillMode;\n }\n });\n }\n }\n };\n const handleAnimationStart = (event) => {\n if (event.target === node) {\n prevAnimationNameRef.current = getAnimationName(stylesRef.current);\n }\n };\n node.addEventListener(\"animationstart\", handleAnimationStart);\n node.addEventListener(\"animationcancel\", handleAnimationEnd);\n node.addEventListener(\"animationend\", handleAnimationEnd);\n return () => {\n ownerWindow.clearTimeout(timeoutId);\n node.removeEventListener(\"animationstart\", handleAnimationStart);\n node.removeEventListener(\"animationcancel\", handleAnimationEnd);\n node.removeEventListener(\"animationend\", handleAnimationEnd);\n };\n } else {\n send(\"ANIMATION_END\");\n }\n }, [node, send]);\n return {\n isPresent: [\"mounted\", \"unmountSuspended\"].includes(state),\n ref: React2.useCallback((node2) => {\n stylesRef.current = node2 ? getComputedStyle(node2) : null;\n setNode(node2);\n }, [])\n };\n}\nfunction getAnimationName(styles) {\n return styles?.animationName || \"none\";\n}\nfunction getElementRef(element) {\n let getter = Object.getOwnPropertyDescriptor(element.props, \"ref\")?.get;\n let mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.ref;\n }\n getter = Object.getOwnPropertyDescriptor(element, \"ref\")?.get;\n mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.props.ref;\n }\n return element.props.ref || element.ref;\n}\nvar Root = Presence;\nexport {\n Presence,\n Root\n};\n//# sourceMappingURL=index.mjs.map\n"],"x_google_ignoreList":[0],"mappings":";;;;;AASA,SAAS,EAAgB,GAAc,GAAS;AAC9C,QAAOA,EAAM,YAAY,GAAO,MACZ,EAAQ,GAAO,MACb,GACnB,EAAa;;AAIlB,IAAI,KAAY,MAAU;CACxB,IAAM,EAAE,YAAS,gBAAa,GACxB,IAAW,EAAY,EAAQ,EAC/B,IAAQ,OAAO,KAAa,aAAa,EAAS,EAAE,SAAS,EAAS,WAAW,CAAC,GAAG,EAAO,SAAS,KAAK,EAAS,EACnH,IAAM,EAAgB,EAAS,KAAK,EAAc,EAAM,CAAC;AAE/D,QADmB,OAAO,KAAa,cAClB,EAAS,YAAY,EAAO,aAAa,GAAO,EAAE,QAAK,CAAC,GAAG;;AAElF,EAAS,cAAc;AACvB,SAAS,EAAY,GAAS;CAC5B,IAAM,CAAC,GAAM,KAAW,EAAO,UAAU,EACnC,IAAY,EAAO,OAAO,KAAK,EAC/B,IAAiB,EAAO,OAAO,EAAQ,EACvC,IAAuB,EAAO,OAAO,OAAO,EAE5C,CAAC,GAAO,KAAQ,EADD,IAAU,YAAY,aACS;EAClD,SAAS;GACP,SAAS;GACT,eAAe;GAChB;EACD,kBAAkB;GAChB,OAAO;GACP,eAAe;GAChB;EACD,WAAW,EACT,OAAO,WACR;EACF,CAAC;AAiEF,QAhEA,EAAO,gBAAgB;EACrB,IAAM,IAAuB,EAAiB,EAAU,QAAQ;AAChE,IAAqB,UAAU,MAAU,YAAY,IAAuB;IAC3E,CAAC,EAAM,CAAC,EACX,QAAsB;EACpB,IAAM,IAAS,EAAU,SACnB,IAAa,EAAe;AAElC,MAD0B,MAAe,GAClB;GACrB,IAAM,IAAoB,EAAqB,SACzC,IAAuB,EAAiB,EAAO;AAarD,GAZI,IACF,EAAK,QAAQ,GACJ,MAAyB,UAAU,GAAQ,YAAY,SAChE,EAAK,UAAU,GAIb,EADE,KADgB,MAAsB,IAEnC,kBAEA,UAAU,EAGnB,EAAe,UAAU;;IAE1B,CAAC,GAAS,EAAK,CAAC,EACnB,QAAsB;AACpB,MAAI,GAAM;GACR,IAAI,GACE,IAAc,EAAK,cAAc,eAAe,QAChD,KAAsB,MAAU;IAEpC,IAAM,IADuB,EAAiB,EAAU,QAAQ,CAChB,SAAS,IAAI,OAAO,EAAM,cAAc,CAAC;AACzF,QAAI,EAAM,WAAW,KAAQ,MAC3B,EAAK,gBAAgB,EACjB,CAAC,EAAe,UAAS;KAC3B,IAAM,IAAkB,EAAK,MAAM;AAEnC,KADA,EAAK,MAAM,oBAAoB,YAC/B,IAAY,EAAY,iBAAiB;AACvC,MAAI,EAAK,MAAM,sBAAsB,eACnC,EAAK,MAAM,oBAAoB;OAEjC;;MAIF,KAAwB,MAAU;AACtC,IAAI,EAAM,WAAW,MACnB,EAAqB,UAAU,EAAiB,EAAU,QAAQ;;AAMtE,UAHA,EAAK,iBAAiB,kBAAkB,EAAqB,EAC7D,EAAK,iBAAiB,mBAAmB,EAAmB,EAC5D,EAAK,iBAAiB,gBAAgB,EAAmB,QAC5C;AAIX,IAHA,EAAY,aAAa,EAAU,EACnC,EAAK,oBAAoB,kBAAkB,EAAqB,EAChE,EAAK,oBAAoB,mBAAmB,EAAmB,EAC/D,EAAK,oBAAoB,gBAAgB,EAAmB;;QAG9D,GAAK,gBAAgB;IAEtB,CAAC,GAAM,EAAK,CAAC,EACT;EACL,WAAW,CAAC,WAAW,mBAAmB,CAAC,SAAS,EAAM;EAC1D,KAAK,EAAO,aAAa,MAAU;AAEjC,GADA,EAAU,UAAU,IAAQ,iBAAiB,EAAM,GAAG,MACtD,EAAQ,EAAM;KACb,EAAE,CAAC;EACP;;AAEH,SAAS,EAAiB,GAAQ;AAChC,QAAO,GAAQ,iBAAiB;;AAElC,SAAS,EAAc,GAAS;CAC9B,IAAI,IAAS,OAAO,yBAAyB,EAAQ,OAAO,MAAM,EAAE,KAChE,IAAU,KAAU,oBAAoB,KAAU,EAAO;AAS7D,QARI,IACK,EAAQ,OAEjB,IAAS,OAAO,yBAAyB,GAAS,MAAM,EAAE,KAC1D,IAAU,KAAU,oBAAoB,KAAU,EAAO,gBACrD,IACK,EAAQ,MAAM,MAEhB,EAAQ,MAAM,OAAO,EAAQ"}
1
+ {"version":3,"file":"index305.js","names":["MenuPopover","Header"],"sources":["../src/components/header/index.tsx"],"sourcesContent":["import { MenuPopover } from \"./MenuPopover\"\n\n\nexport const Header = {\n MenuPopover\n}\n"],"mappings":";;AAGA,IAAaC,IAAS,EACpBD,gBACD"}
package/dist/index306.js CHANGED
@@ -1,156 +1,31 @@
1
- "use client";
2
- import { composeEventHandlers as e } from "./index17.js";
3
- import { useComposedRefs as t } from "./index18.js";
4
- import { Primitive as n } from "./index20.js";
5
- import { useCallbackRef as r } from "./index21.js";
6
- import { createContextScope as i } from "./index199.js";
7
- import { createCollection as a } from "./index200.js";
8
- import { useDirection as o } from "./index201.js";
9
- import { useId as s } from "./index205.js";
10
- import { useControllableState as c } from "./index215.js";
11
- import * as l from "react";
12
- import { jsx as u } from "react/jsx-runtime";
13
- //#region ../../node_modules/@radix-ui/react-roving-focus/dist/index.mjs
14
- var d = "rovingFocusGroup.onEntryFocus", f = {
15
- bubbles: !1,
16
- cancelable: !0
17
- }, p = "RovingFocusGroup", [m, h, g] = a(p), [_, v] = i(p, [g]), [y, b] = _(p), x = l.forwardRef((e, t) => /* @__PURE__ */ u(m.Provider, {
18
- scope: e.__scopeRovingFocusGroup,
19
- children: /* @__PURE__ */ u(m.Slot, {
20
- scope: e.__scopeRovingFocusGroup,
21
- children: /* @__PURE__ */ u(S, {
22
- ...e,
23
- ref: t
24
- })
25
- })
26
- }));
27
- x.displayName = p;
28
- var S = l.forwardRef((i, a) => {
29
- let { __scopeRovingFocusGroup: s, orientation: m, loop: g = !1, dir: _, currentTabStopId: v, defaultCurrentTabStopId: b, onCurrentTabStopIdChange: x, onEntryFocus: S, preventScrollOnEntryFocus: C = !1, ...w } = i, T = l.useRef(null), E = t(a, T), D = o(_), [k, A] = c({
30
- prop: v,
31
- defaultProp: b ?? null,
32
- onChange: x,
33
- caller: p
34
- }), [j, M] = l.useState(!1), N = r(S), P = h(s), F = l.useRef(!1), [I, L] = l.useState(0);
35
- return l.useEffect(() => {
36
- let e = T.current;
37
- if (e) return e.addEventListener(d, N), () => e.removeEventListener(d, N);
38
- }, [N]), /* @__PURE__ */ u(y, {
39
- scope: s,
40
- orientation: m,
41
- dir: D,
42
- loop: g,
43
- currentTabStopId: k,
44
- onItemFocus: l.useCallback((e) => A(e), [A]),
45
- onItemShiftTab: l.useCallback(() => M(!0), []),
46
- onFocusableItemAdd: l.useCallback(() => L((e) => e + 1), []),
47
- onFocusableItemRemove: l.useCallback(() => L((e) => e - 1), []),
48
- children: /* @__PURE__ */ u(n.div, {
49
- tabIndex: j || I === 0 ? -1 : 0,
50
- "data-orientation": m,
51
- ...w,
52
- ref: E,
53
- style: {
54
- outline: "none",
55
- ...i.style
56
- },
57
- onMouseDown: e(i.onMouseDown, () => {
58
- F.current = !0;
59
- }),
60
- onFocus: e(i.onFocus, (e) => {
61
- let t = !F.current;
62
- if (e.target === e.currentTarget && t && !j) {
63
- let t = new CustomEvent(d, f);
64
- if (e.currentTarget.dispatchEvent(t), !t.defaultPrevented) {
65
- let e = P().filter((e) => e.focusable);
66
- O([
67
- e.find((e) => e.active),
68
- e.find((e) => e.id === k),
69
- ...e
70
- ].filter(Boolean).map((e) => e.ref.current), C);
71
- }
72
- }
73
- F.current = !1;
74
- }),
75
- onBlur: e(i.onBlur, () => M(!1))
76
- })
77
- });
78
- }), C = "RovingFocusGroupItem", w = l.forwardRef((t, r) => {
79
- let { __scopeRovingFocusGroup: i, focusable: a = !0, active: o = !1, tabStopId: c, children: d, ...f } = t, p = s(), g = c || p, _ = b(C, i), v = _.currentTabStopId === g, y = h(i), { onFocusableItemAdd: x, onFocusableItemRemove: S, currentTabStopId: w } = _;
80
- return l.useEffect(() => {
81
- if (a) return x(), () => S();
82
- }, [
83
- a,
84
- x,
85
- S
86
- ]), /* @__PURE__ */ u(m.ItemSlot, {
87
- scope: i,
88
- id: g,
89
- focusable: a,
90
- active: o,
91
- children: /* @__PURE__ */ u(n.span, {
92
- tabIndex: v ? 0 : -1,
93
- "data-orientation": _.orientation,
94
- ...f,
95
- ref: r,
96
- onMouseDown: e(t.onMouseDown, (e) => {
97
- a ? _.onItemFocus(g) : e.preventDefault();
98
- }),
99
- onFocus: e(t.onFocus, () => _.onItemFocus(g)),
100
- onKeyDown: e(t.onKeyDown, (e) => {
101
- if (e.key === "Tab" && e.shiftKey) {
102
- _.onItemShiftTab();
103
- return;
104
- }
105
- if (e.target !== e.currentTarget) return;
106
- let t = D(e, _.orientation, _.dir);
107
- if (t !== void 0) {
108
- if (e.metaKey || e.ctrlKey || e.altKey || e.shiftKey) return;
109
- e.preventDefault();
110
- let n = y().filter((e) => e.focusable).map((e) => e.ref.current);
111
- if (t === "last") n.reverse();
112
- else if (t === "prev" || t === "next") {
113
- t === "prev" && n.reverse();
114
- let r = n.indexOf(e.currentTarget);
115
- n = _.loop ? k(n, r + 1) : n.slice(r + 1);
116
- }
117
- setTimeout(() => O(n));
118
- }
119
- }),
120
- children: typeof d == "function" ? d({
121
- isCurrentTabStop: v,
122
- hasTabStop: w != null
123
- }) : d
124
- })
125
- });
126
- });
127
- w.displayName = C;
128
- var T = {
129
- ArrowLeft: "prev",
130
- ArrowUp: "prev",
131
- ArrowRight: "next",
132
- ArrowDown: "next",
133
- PageUp: "first",
134
- Home: "first",
135
- PageDown: "last",
136
- End: "last"
137
- };
138
- function E(e, t) {
139
- return t === "rtl" ? e === "ArrowLeft" ? "ArrowRight" : e === "ArrowRight" ? "ArrowLeft" : e : e;
1
+ import { cn as e } from "./index12.js";
2
+ import { c as t } from "react/compiler-runtime";
3
+ import { jsx as n, jsxs as r } from "react/jsx-runtime";
4
+ import { Bell as i } from "lucide-react";
5
+ //#region src/components/Notifications/NotificationsButton.tsx
6
+ function a(a) {
7
+ let o = t(12), { unseenCount: s, unreadCount: c, onClick: l, className: u } = a, d = Number.isFinite(s) ? s : c, f;
8
+ o[0] === d ? f = o[1] : (f = Number.isFinite(d) ? Math.max(0, Math.floor(d ?? 0)) : 0, o[0] = d, o[1] = f);
9
+ let p = f, m;
10
+ o[2] === u ? m = o[3] : (m = e("relative inline-flex h-9 w-9 items-center justify-center rounded-md border bg-background text-foreground hover:bg-accent", u), o[2] = u, o[3] = m);
11
+ let h = p > 0 ? `Notifications (${p} new)` : "Notifications", g;
12
+ o[4] === Symbol.for("react.memo_cache_sentinel") ? (g = /* @__PURE__ */ n(i, { className: "h-4 w-4" }), o[4] = g) : g = o[4];
13
+ let _;
14
+ o[5] === p ? _ = o[6] : (_ = p > 0 ? /* @__PURE__ */ n("span", {
15
+ className: "absolute -right-1 -top-1 inline-flex min-w-4 items-center justify-center rounded-full bg-primary px-1 text-[10px] font-semibold leading-4 text-primary-foreground",
16
+ "aria-hidden": "true",
17
+ children: p > 99 ? "99+" : String(p)
18
+ }) : null, o[5] = p, o[6] = _);
19
+ let v;
20
+ return o[7] !== l || o[8] !== m || o[9] !== h || o[10] !== _ ? (v = /* @__PURE__ */ r("button", {
21
+ type: "button",
22
+ onClick: l,
23
+ className: m,
24
+ "aria-label": h,
25
+ children: [g, _]
26
+ }), o[7] = l, o[8] = m, o[9] = h, o[10] = _, o[11] = v) : v = o[11], v;
140
27
  }
141
- function D(e, t, n) {
142
- let r = E(e.key, n);
143
- if (!(t === "vertical" && ["ArrowLeft", "ArrowRight"].includes(r)) && !(t === "horizontal" && ["ArrowUp", "ArrowDown"].includes(r))) return T[r];
144
- }
145
- function O(e, t = !1) {
146
- let n = document.activeElement;
147
- for (let r of e) if (r === n || (r.focus({ preventScroll: t }), document.activeElement !== n)) return;
148
- }
149
- function k(e, t) {
150
- return e.map((n, r) => e[(t + r) % e.length]);
151
- }
152
- var A = x, j = w;
153
28
  //#endregion
154
- export { j as Item, A as Root, v as createRovingFocusGroupScope };
29
+ export { a as NotificationsButton };
155
30
 
156
31
  //# sourceMappingURL=index306.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index306.js","names":["React"],"sources":["../../../node_modules/@radix-ui/react-roving-focus/dist/index.mjs"],"sourcesContent":["\"use client\";\n\n// src/roving-focus-group.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createCollection } from \"@radix-ui/react-collection\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { jsx } from \"react/jsx-runtime\";\nvar ENTRY_FOCUS = \"rovingFocusGroup.onEntryFocus\";\nvar EVENT_OPTIONS = { bubbles: false, cancelable: true };\nvar GROUP_NAME = \"RovingFocusGroup\";\nvar [Collection, useCollection, createCollectionScope] = createCollection(GROUP_NAME);\nvar [createRovingFocusGroupContext, createRovingFocusGroupScope] = createContextScope(\n GROUP_NAME,\n [createCollectionScope]\n);\nvar [RovingFocusProvider, useRovingFocusContext] = createRovingFocusGroupContext(GROUP_NAME);\nvar RovingFocusGroup = React.forwardRef(\n (props, forwardedRef) => {\n return /* @__PURE__ */ jsx(Collection.Provider, { scope: props.__scopeRovingFocusGroup, children: /* @__PURE__ */ jsx(Collection.Slot, { scope: props.__scopeRovingFocusGroup, children: /* @__PURE__ */ jsx(RovingFocusGroupImpl, { ...props, ref: forwardedRef }) }) });\n }\n);\nRovingFocusGroup.displayName = GROUP_NAME;\nvar RovingFocusGroupImpl = React.forwardRef((props, forwardedRef) => {\n const {\n __scopeRovingFocusGroup,\n orientation,\n loop = false,\n dir,\n currentTabStopId: currentTabStopIdProp,\n defaultCurrentTabStopId,\n onCurrentTabStopIdChange,\n onEntryFocus,\n preventScrollOnEntryFocus = false,\n ...groupProps\n } = props;\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const direction = useDirection(dir);\n const [currentTabStopId, setCurrentTabStopId] = useControllableState({\n prop: currentTabStopIdProp,\n defaultProp: defaultCurrentTabStopId ?? null,\n onChange: onCurrentTabStopIdChange,\n caller: GROUP_NAME\n });\n const [isTabbingBackOut, setIsTabbingBackOut] = React.useState(false);\n const handleEntryFocus = useCallbackRef(onEntryFocus);\n const getItems = useCollection(__scopeRovingFocusGroup);\n const isClickFocusRef = React.useRef(false);\n const [focusableItemsCount, setFocusableItemsCount] = React.useState(0);\n React.useEffect(() => {\n const node = ref.current;\n if (node) {\n node.addEventListener(ENTRY_FOCUS, handleEntryFocus);\n return () => node.removeEventListener(ENTRY_FOCUS, handleEntryFocus);\n }\n }, [handleEntryFocus]);\n return /* @__PURE__ */ jsx(\n RovingFocusProvider,\n {\n scope: __scopeRovingFocusGroup,\n orientation,\n dir: direction,\n loop,\n currentTabStopId,\n onItemFocus: React.useCallback(\n (tabStopId) => setCurrentTabStopId(tabStopId),\n [setCurrentTabStopId]\n ),\n onItemShiftTab: React.useCallback(() => setIsTabbingBackOut(true), []),\n onFocusableItemAdd: React.useCallback(\n () => setFocusableItemsCount((prevCount) => prevCount + 1),\n []\n ),\n onFocusableItemRemove: React.useCallback(\n () => setFocusableItemsCount((prevCount) => prevCount - 1),\n []\n ),\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n tabIndex: isTabbingBackOut || focusableItemsCount === 0 ? -1 : 0,\n \"data-orientation\": orientation,\n ...groupProps,\n ref: composedRefs,\n style: { outline: \"none\", ...props.style },\n onMouseDown: composeEventHandlers(props.onMouseDown, () => {\n isClickFocusRef.current = true;\n }),\n onFocus: composeEventHandlers(props.onFocus, (event) => {\n const isKeyboardFocus = !isClickFocusRef.current;\n if (event.target === event.currentTarget && isKeyboardFocus && !isTabbingBackOut) {\n const entryFocusEvent = new CustomEvent(ENTRY_FOCUS, EVENT_OPTIONS);\n event.currentTarget.dispatchEvent(entryFocusEvent);\n if (!entryFocusEvent.defaultPrevented) {\n const items = getItems().filter((item) => item.focusable);\n const activeItem = items.find((item) => item.active);\n const currentItem = items.find((item) => item.id === currentTabStopId);\n const candidateItems = [activeItem, currentItem, ...items].filter(\n Boolean\n );\n const candidateNodes = candidateItems.map((item) => item.ref.current);\n focusFirst(candidateNodes, preventScrollOnEntryFocus);\n }\n }\n isClickFocusRef.current = false;\n }),\n onBlur: composeEventHandlers(props.onBlur, () => setIsTabbingBackOut(false))\n }\n )\n }\n );\n});\nvar ITEM_NAME = \"RovingFocusGroupItem\";\nvar RovingFocusGroupItem = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeRovingFocusGroup,\n focusable = true,\n active = false,\n tabStopId,\n children,\n ...itemProps\n } = props;\n const autoId = useId();\n const id = tabStopId || autoId;\n const context = useRovingFocusContext(ITEM_NAME, __scopeRovingFocusGroup);\n const isCurrentTabStop = context.currentTabStopId === id;\n const getItems = useCollection(__scopeRovingFocusGroup);\n const { onFocusableItemAdd, onFocusableItemRemove, currentTabStopId } = context;\n React.useEffect(() => {\n if (focusable) {\n onFocusableItemAdd();\n return () => onFocusableItemRemove();\n }\n }, [focusable, onFocusableItemAdd, onFocusableItemRemove]);\n return /* @__PURE__ */ jsx(\n Collection.ItemSlot,\n {\n scope: __scopeRovingFocusGroup,\n id,\n focusable,\n active,\n children: /* @__PURE__ */ jsx(\n Primitive.span,\n {\n tabIndex: isCurrentTabStop ? 0 : -1,\n \"data-orientation\": context.orientation,\n ...itemProps,\n ref: forwardedRef,\n onMouseDown: composeEventHandlers(props.onMouseDown, (event) => {\n if (!focusable) event.preventDefault();\n else context.onItemFocus(id);\n }),\n onFocus: composeEventHandlers(props.onFocus, () => context.onItemFocus(id)),\n onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {\n if (event.key === \"Tab\" && event.shiftKey) {\n context.onItemShiftTab();\n return;\n }\n if (event.target !== event.currentTarget) return;\n const focusIntent = getFocusIntent(event, context.orientation, context.dir);\n if (focusIntent !== void 0) {\n if (event.metaKey || event.ctrlKey || event.altKey || event.shiftKey) return;\n event.preventDefault();\n const items = getItems().filter((item) => item.focusable);\n let candidateNodes = items.map((item) => item.ref.current);\n if (focusIntent === \"last\") candidateNodes.reverse();\n else if (focusIntent === \"prev\" || focusIntent === \"next\") {\n if (focusIntent === \"prev\") candidateNodes.reverse();\n const currentIndex = candidateNodes.indexOf(event.currentTarget);\n candidateNodes = context.loop ? wrapArray(candidateNodes, currentIndex + 1) : candidateNodes.slice(currentIndex + 1);\n }\n setTimeout(() => focusFirst(candidateNodes));\n }\n }),\n children: typeof children === \"function\" ? children({ isCurrentTabStop, hasTabStop: currentTabStopId != null }) : children\n }\n )\n }\n );\n }\n);\nRovingFocusGroupItem.displayName = ITEM_NAME;\nvar MAP_KEY_TO_FOCUS_INTENT = {\n ArrowLeft: \"prev\",\n ArrowUp: \"prev\",\n ArrowRight: \"next\",\n ArrowDown: \"next\",\n PageUp: \"first\",\n Home: \"first\",\n PageDown: \"last\",\n End: \"last\"\n};\nfunction getDirectionAwareKey(key, dir) {\n if (dir !== \"rtl\") return key;\n return key === \"ArrowLeft\" ? \"ArrowRight\" : key === \"ArrowRight\" ? \"ArrowLeft\" : key;\n}\nfunction getFocusIntent(event, orientation, dir) {\n const key = getDirectionAwareKey(event.key, dir);\n if (orientation === \"vertical\" && [\"ArrowLeft\", \"ArrowRight\"].includes(key)) return void 0;\n if (orientation === \"horizontal\" && [\"ArrowUp\", \"ArrowDown\"].includes(key)) return void 0;\n return MAP_KEY_TO_FOCUS_INTENT[key];\n}\nfunction focusFirst(candidates, preventScroll = false) {\n const PREVIOUSLY_FOCUSED_ELEMENT = document.activeElement;\n for (const candidate of candidates) {\n if (candidate === PREVIOUSLY_FOCUSED_ELEMENT) return;\n candidate.focus({ preventScroll });\n if (document.activeElement !== PREVIOUSLY_FOCUSED_ELEMENT) return;\n }\n}\nfunction wrapArray(array, startIndex) {\n return array.map((_, index) => array[(startIndex + index) % array.length]);\n}\nvar Root = RovingFocusGroup;\nvar Item = RovingFocusGroupItem;\nexport {\n Item,\n Root,\n RovingFocusGroup,\n RovingFocusGroupItem,\n createRovingFocusGroupScope\n};\n//# sourceMappingURL=index.mjs.map\n"],"x_google_ignoreList":[0],"mappings":"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"}
1
+ {"version":3,"file":"index306.js","names":["Bell","cn","NotificationsButton","t0","$","_c","unseenCount","unreadCount","onClick","className","rawCount","Number","isFinite","t1","Math","max","floor","count","t2","t3","t4","Symbol","for","t5","String","t6"],"sources":["../src/components/Notifications/NotificationsButton.tsx"],"sourcesContent":["import { Bell } from \"lucide-react\"\n\nimport { cn } from \"@/lib/utils\"\n\n\nexport function NotificationsButton({\n unseenCount,\n unreadCount,\n onClick,\n className,\n}: {\n unseenCount?: number\n unreadCount?: number\n onClick?: () => void\n className?: string\n}) {\n const rawCount = Number.isFinite(unseenCount) ? unseenCount : unreadCount\n const count = Number.isFinite(rawCount) ? Math.max(0, Math.floor(rawCount ?? 0)) : 0\n\n return (\n <button\n type=\"button\"\n onClick={onClick}\n className={cn(\n \"relative inline-flex h-9 w-9 items-center justify-center rounded-md border bg-background text-foreground hover:bg-accent\",\n className,\n )}\n aria-label={count > 0 ? `Notifications (${count} new)` : \"Notifications\"}\n >\n <Bell className=\"h-4 w-4\" />\n {count > 0 ? (\n <span\n className=\"absolute -right-1 -top-1 inline-flex min-w-4 items-center justify-center rounded-full bg-primary px-1 text-[10px] font-semibold leading-4 text-primary-foreground\"\n aria-hidden=\"true\"\n >\n {count > 99 ? \"99+\" : String(count)}\n </span>\n ) : null}\n </button>\n )\n}\n"],"mappings":";;;;;AAKA,SAAOE,EAAAC,GAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EAA6B,EAAAC,gBAAAC,gBAAAC,YAAAC,iBAAAN,GAWlCO,IAAiBC,OAAMC,SAAUN,EAAwC,GAAxDA,IAAAC,GAAwDM;AAAA,CAAAT,EAAA,OAAAM,IACWG,IAAAT,EAAA,MAAtES,IAAAF,OAAMC,SAAUF,EAAsD,GAA1CI,KAAIC,IAAK,GAAGD,KAAIE,MAAON,KAAA,EAAkB,CAAC,GAAtE,GAAsEN,EAAA,KAAAM,GAAAN,EAAA,KAAAS;CAApF,IAAAI,IAAcJ,GAAsEK;AAAA,CAAAd,EAAA,OAAAK,IAS/ES,IAAAd,EAAA,MAHUc,IAAAjB,EACT,4HACAQ,EACD,EAAAL,EAAA,KAAAK,GAAAL,EAAA,KAAAc;CACW,IAAAC,IAAAF,IAAQ,IAAR,kBAA8BA,EAAK,SAAnC,iBAA4DG;AAAA,CAAAhB,EAAA,OAAAiB,OAAAC,IAAA,4BAAA,IAExEF,IAAA,kBAAC,GAAD,EAAgB,WAAA,WAAY,CAAA,EAAAhB,EAAA,KAAAgB,KAAAA,IAAAhB,EAAA;CAAA,IAAAmB;AAAA,CAAAnB,EAAA,OAAAa,IAQpBM,IAAAnB,EAAA,MAPPmB,IAAAN,IAAQ,IACP,kBAAA,QAAA;EACY,WAAA;EACE,eAAA;YAEXA,IAAQ,KAAR,QAAqBO,OAAOP,EAAK;EAE9B,CAAA,GAPP,MAOOb,EAAA,KAAAa,GAAAb,EAAA,KAAAmB;CAAA,IAAAE;AACD,QADCrB,EAAA,OAAAI,KAAAJ,EAAA,OAAAc,KAAAd,EAAA,OAAAe,KAAAf,EAAA,QAAAmB,KAjBVE,IAAA,kBAAA,UAAA;EACO,MAAA;EACIjB;EACE,WAAAU;EAIC,cAAAC;YAPd,CASEC,GACCG,EAQM;KAAAnB,EAAA,KAAAI,GAAAJ,EAAA,KAAAc,GAAAd,EAAA,KAAAe,GAAAf,EAAA,MAAAmB,GAAAnB,EAAA,MAAAqB,KAAAA,IAAArB,EAAA,KAlBTqB"}