@gearbox-protocol/permissionless-ui 1.22.5 → 1.22.7
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),k=require("@fortawesome/free-solid-svg-icons"),o=require("react"),C=require("../app-bar/app-bar.cjs"),_=require("./navbar-indicator-context.cjs"),I=require("../navitem/navitem.cjs"),D=require("../simple-dropdown/simple-dropdown.cjs");require("@gearbox-protocol/sdk");const E=require("../../utils/cn.cjs");require("sonner");require("luxon");require("../../utils/z-index.cjs");const A=require("../icons/fa-icon.cjs"),x=
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),k=require("@fortawesome/free-solid-svg-icons"),o=require("react"),C=require("../app-bar/app-bar.cjs"),_=require("./navbar-indicator-context.cjs"),I=require("../navitem/navitem.cjs"),D=require("../simple-dropdown/simple-dropdown.cjs");require("@gearbox-protocol/sdk");const E=require("../../utils/cn.cjs");require("sonner");require("luxon");require("../../utils/z-index.cjs");const A=require("../icons/fa-icon.cjs"),x=40;function B({visibleItems:t,overflowItems:i,showMore:h,moreOpen:a,setMoreOpen:l,moreLabel:u,measured:d}){const p=_.useNavbarIndicator();return e.jsxs("div",{ref:p?.containerRef,className:"relative flex items-center gap-10 max-xs:gap-8 h-full",style:{opacity:d?1:0},children:[t.map(r=>e.jsx(I.NavItem,{active:r.active,onClick:r.onClick,style:{cursor:"pointer"},children:r.label},r.id)),h&&e.jsx(D.SimpleDropdown,{open:a,onOpenChange:l,title:e.jsx(I.NavItem,{active:i.some(r=>r.active),badge:e.jsx(A.FaIcon,{icon:k.faChevronDown,className:"size-3 text-foreground ml-1 transition-transform duration-200",style:{transform:a?"rotate(180deg)":void 0}}),children:u}),asChild:!0,align:"end",className:"p-0 border-0 bg-transparent shadow-none",children:e.jsx(C.AppBarDropdownMenu,{children:i.map(r=>e.jsx(C.AppBarMenuItem,{onClick:r.onClick,children:r.label},r.id))})}),e.jsx("div",{ref:p?.indicatorRef,className:"absolute bottom-0 h-0.5 bg-accent transition-all duration-300 ease-out pointer-events-none",style:{left:0,width:0,opacity:0,transform:"translateX(0)"}})]})}function P({items:t,moreLabel:i="More",className:h}){const a=o.useRef(null),l=o.useRef(null),[u,d]=o.useState(t.length),[p,r]=o.useState(!1),[M,b]=o.useState(!1),f=o.useCallback(()=>{const s=a.current,c=l.current;if(!s||!c||t.length===0)return;const v=s.clientWidth;if(v<=0)return;const w=Array.from(c.children),m=w.slice(0,t.length).map(n=>n.offsetWidth),W=w[t.length]?.offsetWidth??60;if(m.every(n=>n===0))return;let j=0;for(let n=0;n<t.length;n++)j+=(n===0?0:x)+m[n];if(j<=v){d(t.length),b(!0);return}let N=0,q=0;for(let n=0;n<t.length;n++){const O=m[n],y=N+(n===0?0:x)+O;if(y+x+W>v)break;N=y,q=n+1}d(q),b(!0)},[t]);o.useEffect(()=>{f()},[f]),o.useEffect(()=>{const s=a.current;if(!s)return;const c=new ResizeObserver(f);return c.observe(s),()=>c.disconnect()},[f]);const R=t.slice(0,u),g=t.slice(u),S=g.length>0;return e.jsxs("div",{ref:a,className:E.cn("relative flex-1 min-w-0 h-full flex items-center justify-center",h),children:[e.jsxs("div",{ref:l,"aria-hidden":!0,style:{position:"absolute",visibility:"hidden",height:0,overflow:"hidden",whiteSpace:"nowrap",pointerEvents:"none"},className:"flex items-center gap-10 max-xs:gap-8",children:[t.map(s=>e.jsx("span",{className:"inline-flex items-center whitespace-nowrap text-[15px] leading-[125%]",children:s.label},s.id)),e.jsxs("span",{className:"inline-flex items-center whitespace-nowrap text-[15px] leading-[125%] gap-2",children:[i,e.jsx("span",{className:"size-3"})]})]}),e.jsx(_.NavbarIndicatorProvider,{children:e.jsx(B,{visibleItems:R,overflowItems:g,showMore:S,moreOpen:p,setMoreOpen:r,moreLabel:i,measured:M})})]})}exports.NavbarWithOverflow=P;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),O=require("@gearbox-protocol/static"),l=require("react"),V=require("../checkbox/checkbox.cjs");require("../checkbox/checkbox-labeled.cjs");const o=require("../select/select.cjs");function P({items:i,defaultItem:n,onSelected:S,multiple:s=!1,graphsWithNoData:_,loadingGraphs:f,onNoDataSelected:x}){const w=()=>{if(s){const r=Array.isArray(n)?n:[n];return r.length===0?"":String(r[0].value)}const e=Array.isArray(n)?n[0]:n;return String(e?.value||"")},C=()=>{if(s){const r=Array.isArray(n)?n:[n];return new Set(r.map(a=>a.value))}const e=Array.isArray(n)?n[0]:n;return new Set([e?.value].filter(Boolean))},[u,j]=l.useState(C),[h,y]=l.useState(w()),[k,p]=l.useState(!1),A=l.useRef(!1);l.useEffect(()=>{if(s){const e=Array.isArray(n)?n:[n],r=new Set(e.map(a=>a.value));j(r),e.length>0&&y(String(e[0].value))}else{const e=Array.isArray(n)?n[0]:n;e?.value&&y(String(e.value))}},[n,s]);const q=l.useCallback(e=>{if(!e&&s&&A.current){A.current=!1;return}p(e)},[s]),d=l.useCallback(e=>{const r=i.find(a=>String(a.value)===e);if(r&&!f?.has(r.value)){if(_?.has(r.value)&&!(s&&u.has(r.value))){x&&x(r.value,r.label);return}s?(A.current=!0,j(a=>{const c=new Set(a);if(c.has(r.value)){if(c.size<=1)return a;c.delete(r.value)}else c.add(r.value);return S(Array.from(c)),c})):(y(e),S(r.value))}},[s,S,i,_,f,x,u]),b=l.useMemo(()=>{if(!s){const a=i.find(g=>String(g.value)===h),c=Array.isArray(n)?n[0]:n;return a||c}const e=Array.from(u).map(a=>i.find(c=>c.value===a)).filter(a=>!!a);return e.length===0?(Array.isArray(n)?n:[n])[0]:e.length===1?e[0]:{value:e[0].value,label:`${e.length} selected`}},[s,n,i,u,h]),N=l.useMemo(()=>s?"__multiple_placeholder__":h,[s,h]);return!i.length||i.length===1&&!s?t.jsx("div",{className:"flex items-center",style:{width:"max-content"},children:t.jsx("div",{className:"text-xl leading-6",children:b.label})}):t.jsxs(o.Select,{value:N,onValueChange:d,open:k,onOpenChange:q,children:[t.jsx(o.SelectTrigger,{className:"w-auto min-w-[16rem]",children:t.jsx(o.SelectValue,{children:b.label})}),t.jsxs(o.SelectContent,{className:"min-w-[16rem]",children:[s&&t.jsx(o.SelectItem,{value:"__multiple_placeholder__",className:"hidden",disabled:!0,children:b.label}),i.map((e,r)=>{const a=s&&u.has(e.value),c=f?.has(e.value),g=c;return t.jsx(o.SelectItem,{value:String(e.value),disabled:g,onSelect:v=>{s&&v.preventDefault(),d(String(e.value))},className:g?"opacity-50 cursor-not-allowed":"",children:t.jsxs("div",{className:"flex items-center gap-2",children:[s&&t.jsx("span",{className:"shrink-0 inline-flex",onPointerDownCapture:v=>{v.stopPropagation(),v.preventDefault(),d(String(e.value))},children:t.jsx(V.Checkbox,{checked:a,onCheckedChange:()=>d(String(e.value)),"aria-hidden":!0,tabIndex:-1})}),e.label,c&&t.jsx(O.IconPending,{size:16,className:"ml-1 size-4 animate-spin text-muted-foreground"})]})},`graph-item-${r}-${String(e.value)}`)})]})]})}exports.GraphDropdown=P;
|
|
@@ -1,132 +1,143 @@
|
|
|
1
|
-
import { jsx as i, jsxs as
|
|
2
|
-
import { IconPending as
|
|
3
|
-
import { useState as
|
|
4
|
-
import {
|
|
5
|
-
import
|
|
6
|
-
import { Select as
|
|
7
|
-
function
|
|
1
|
+
import { jsx as i, jsxs as b } from "react/jsx-runtime";
|
|
2
|
+
import { IconPending as j } from "@gearbox-protocol/static";
|
|
3
|
+
import { useState as x, useRef as D, useEffect as F, useCallback as C, useMemo as _ } from "react";
|
|
4
|
+
import { Checkbox as R } from "../checkbox/checkbox.js";
|
|
5
|
+
import "../checkbox/checkbox-labeled.js";
|
|
6
|
+
import { Select as B, SelectTrigger as E, SelectValue as L, SelectContent as M, SelectItem as k } from "../select/select.js";
|
|
7
|
+
function X({
|
|
8
8
|
items: l,
|
|
9
9
|
defaultItem: r,
|
|
10
|
-
onSelected:
|
|
11
|
-
multiple:
|
|
12
|
-
graphsWithNoData:
|
|
13
|
-
loadingGraphs:
|
|
14
|
-
onNoDataSelected:
|
|
10
|
+
onSelected: g,
|
|
11
|
+
multiple: s = !1,
|
|
12
|
+
graphsWithNoData: p,
|
|
13
|
+
loadingGraphs: v,
|
|
14
|
+
onNoDataSelected: f
|
|
15
15
|
}) {
|
|
16
16
|
const N = () => {
|
|
17
|
-
if (
|
|
17
|
+
if (s) {
|
|
18
18
|
const n = Array.isArray(r) ? r : [r];
|
|
19
19
|
return n.length === 0 ? "" : String(n[0].value);
|
|
20
20
|
}
|
|
21
21
|
const e = Array.isArray(r) ? r[0] : r;
|
|
22
22
|
return String(e?.value || "");
|
|
23
23
|
}, V = () => {
|
|
24
|
-
if (
|
|
24
|
+
if (s) {
|
|
25
25
|
const n = Array.isArray(r) ? r : [r];
|
|
26
|
-
return new Set(n.map((
|
|
26
|
+
return new Set(n.map((a) => a.value));
|
|
27
27
|
}
|
|
28
28
|
const e = Array.isArray(r) ? r[0] : r;
|
|
29
29
|
return new Set([e?.value].filter(Boolean));
|
|
30
|
-
}, [t, w] =
|
|
31
|
-
|
|
32
|
-
if (
|
|
33
|
-
const e = Array.isArray(r) ? r : [r], n = new Set(e.map((
|
|
34
|
-
w(n), e.length > 0 &&
|
|
30
|
+
}, [t, w] = x(V), [o, S] = x(N()), [O, z] = x(!1), y = D(!1);
|
|
31
|
+
F(() => {
|
|
32
|
+
if (s) {
|
|
33
|
+
const e = Array.isArray(r) ? r : [r], n = new Set(e.map((a) => a.value));
|
|
34
|
+
w(n), e.length > 0 && S(String(e[0].value));
|
|
35
35
|
} else {
|
|
36
36
|
const e = Array.isArray(r) ? r[0] : r;
|
|
37
|
-
e?.value &&
|
|
37
|
+
e?.value && S(String(e.value));
|
|
38
38
|
}
|
|
39
|
-
}, [r,
|
|
40
|
-
const
|
|
39
|
+
}, [r, s]);
|
|
40
|
+
const P = C(
|
|
41
41
|
(e) => {
|
|
42
|
-
if (!e &&
|
|
43
|
-
|
|
42
|
+
if (!e && s && y.current) {
|
|
43
|
+
y.current = !1;
|
|
44
44
|
return;
|
|
45
45
|
}
|
|
46
|
-
|
|
46
|
+
z(e);
|
|
47
47
|
},
|
|
48
|
-
[
|
|
49
|
-
),
|
|
48
|
+
[s]
|
|
49
|
+
), u = C(
|
|
50
50
|
(e) => {
|
|
51
|
-
const n = l.find((
|
|
52
|
-
if (n && !
|
|
53
|
-
if (
|
|
54
|
-
|
|
51
|
+
const n = l.find((a) => String(a.value) === e);
|
|
52
|
+
if (n && !v?.has(n.value)) {
|
|
53
|
+
if (p?.has(n.value) && !(s && t.has(n.value))) {
|
|
54
|
+
f && f(n.value, n.label);
|
|
55
55
|
return;
|
|
56
56
|
}
|
|
57
|
-
|
|
58
|
-
const c = new Set(
|
|
57
|
+
s ? (y.current = !0, w((a) => {
|
|
58
|
+
const c = new Set(a);
|
|
59
59
|
if (c.has(n.value)) {
|
|
60
60
|
if (c.size <= 1)
|
|
61
|
-
return
|
|
61
|
+
return a;
|
|
62
62
|
c.delete(n.value);
|
|
63
63
|
} else
|
|
64
64
|
c.add(n.value);
|
|
65
|
-
return
|
|
66
|
-
})) : (
|
|
65
|
+
return g(Array.from(c)), c;
|
|
66
|
+
})) : (S(e), g(n.value));
|
|
67
67
|
}
|
|
68
68
|
},
|
|
69
69
|
[
|
|
70
|
-
|
|
71
|
-
d,
|
|
72
|
-
l,
|
|
73
|
-
b,
|
|
74
|
-
h,
|
|
70
|
+
s,
|
|
75
71
|
g,
|
|
72
|
+
l,
|
|
73
|
+
p,
|
|
74
|
+
v,
|
|
75
|
+
f,
|
|
76
76
|
t
|
|
77
77
|
]
|
|
78
|
-
),
|
|
79
|
-
if (!
|
|
80
|
-
const
|
|
81
|
-
return
|
|
78
|
+
), A = _(() => {
|
|
79
|
+
if (!s) {
|
|
80
|
+
const a = l.find((h) => String(h.value) === o), c = Array.isArray(r) ? r[0] : r;
|
|
81
|
+
return a || c;
|
|
82
82
|
}
|
|
83
|
-
const e = Array.from(t).map((
|
|
83
|
+
const e = Array.from(t).map((a) => l.find((c) => c.value === a)).filter((a) => !!a);
|
|
84
84
|
return e.length === 0 ? (Array.isArray(r) ? r : [r])[0] : e.length === 1 ? e[0] : {
|
|
85
85
|
value: e[0].value,
|
|
86
86
|
label: `${e.length} selected`
|
|
87
87
|
};
|
|
88
|
-
}, [
|
|
89
|
-
return !l.length || l.length === 1 && !
|
|
90
|
-
|
|
88
|
+
}, [s, r, l, t, o]), $ = _(() => s ? "__multiple_placeholder__" : o, [s, o]);
|
|
89
|
+
return !l.length || l.length === 1 && !s ? /* @__PURE__ */ i("div", { className: "flex items-center", style: { width: "max-content" }, children: /* @__PURE__ */ i("div", { className: "text-xl leading-6", children: A.label }) }) : /* @__PURE__ */ b(
|
|
90
|
+
B,
|
|
91
91
|
{
|
|
92
|
-
value:
|
|
93
|
-
onValueChange:
|
|
94
|
-
open:
|
|
95
|
-
onOpenChange:
|
|
92
|
+
value: $,
|
|
93
|
+
onValueChange: u,
|
|
94
|
+
open: O,
|
|
95
|
+
onOpenChange: P,
|
|
96
96
|
children: [
|
|
97
|
-
/* @__PURE__ */ i(
|
|
98
|
-
/* @__PURE__ */
|
|
99
|
-
|
|
100
|
-
|
|
97
|
+
/* @__PURE__ */ i(E, { className: "w-auto min-w-[16rem]", children: /* @__PURE__ */ i(L, { children: A.label }) }),
|
|
98
|
+
/* @__PURE__ */ b(M, { className: "min-w-[16rem]", children: [
|
|
99
|
+
s && /* @__PURE__ */ i(
|
|
100
|
+
k,
|
|
101
101
|
{
|
|
102
102
|
value: "__multiple_placeholder__",
|
|
103
103
|
className: "hidden",
|
|
104
104
|
disabled: !0,
|
|
105
|
-
children:
|
|
105
|
+
children: A.label
|
|
106
106
|
}
|
|
107
107
|
),
|
|
108
108
|
l.map((e, n) => {
|
|
109
|
-
const
|
|
109
|
+
const a = s && t.has(e.value), c = v?.has(e.value), h = c;
|
|
110
110
|
return /* @__PURE__ */ i(
|
|
111
|
-
|
|
111
|
+
k,
|
|
112
112
|
{
|
|
113
113
|
value: String(e.value),
|
|
114
|
-
disabled:
|
|
115
|
-
onSelect: (
|
|
116
|
-
|
|
114
|
+
disabled: h,
|
|
115
|
+
onSelect: (d) => {
|
|
116
|
+
s && d.preventDefault(), u(String(e.value));
|
|
117
117
|
},
|
|
118
|
-
className:
|
|
119
|
-
children: /* @__PURE__ */
|
|
120
|
-
|
|
118
|
+
className: h ? "opacity-50 cursor-not-allowed" : "",
|
|
119
|
+
children: /* @__PURE__ */ b("div", { className: "flex items-center gap-2", children: [
|
|
120
|
+
s && /* @__PURE__ */ i(
|
|
121
121
|
"span",
|
|
122
122
|
{
|
|
123
|
-
className:
|
|
124
|
-
|
|
123
|
+
className: "shrink-0 inline-flex",
|
|
124
|
+
onPointerDownCapture: (d) => {
|
|
125
|
+
d.stopPropagation(), d.preventDefault(), u(String(e.value));
|
|
126
|
+
},
|
|
127
|
+
children: /* @__PURE__ */ i(
|
|
128
|
+
R,
|
|
129
|
+
{
|
|
130
|
+
checked: a,
|
|
131
|
+
onCheckedChange: () => u(String(e.value)),
|
|
132
|
+
"aria-hidden": !0,
|
|
133
|
+
tabIndex: -1
|
|
134
|
+
}
|
|
135
|
+
)
|
|
125
136
|
}
|
|
126
137
|
),
|
|
127
138
|
e.label,
|
|
128
139
|
c && /* @__PURE__ */ i(
|
|
129
|
-
|
|
140
|
+
j,
|
|
130
141
|
{
|
|
131
142
|
size: 16,
|
|
132
143
|
className: "ml-1 size-4 animate-spin text-muted-foreground"
|
|
@@ -143,5 +154,5 @@ function Y({
|
|
|
143
154
|
);
|
|
144
155
|
}
|
|
145
156
|
export {
|
|
146
|
-
|
|
157
|
+
X as GraphDropdown
|
|
147
158
|
};
|