@bodyhc/blazeui 0.2.1 → 0.2.3
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.
- package/dist/blaze-ui.es.js +70 -72
- package/dist/blaze-ui.umd.js +1 -1
- package/package.json +3 -2
package/dist/blaze-ui.es.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as p, jsxs as H, Fragment as Me } from "react/jsx-runtime";
|
|
2
2
|
import * as d from "react";
|
|
3
|
-
import ae, { createContext as Rt, useContext as be, useState as le, useEffect as ce, forwardRef as Gi, createElement as to, useLayoutEffect as rd, useId as To, useRef as te, useInsertionEffect as Ro, useCallback as
|
|
3
|
+
import ae, { createContext as Rt, useContext as be, useState as le, useEffect as ce, forwardRef as Gi, createElement as to, useLayoutEffect as rd, useId as To, useRef as te, useInsertionEffect as Ro, useCallback as pe, useMemo as bt, Children as Wy, isValidElement as jy, Fragment as od, Component as Hy } from "react";
|
|
4
4
|
import * as ar from "react-dom";
|
|
5
5
|
import Uy from "react-dom";
|
|
6
6
|
function sd(e) {
|
|
@@ -3302,7 +3302,7 @@ function ve(e) {
|
|
|
3302
3302
|
n((r) => r ?? String(y0++));
|
|
3303
3303
|
}, [e]), t ? `radix-${t}` : "";
|
|
3304
3304
|
}
|
|
3305
|
-
function
|
|
3305
|
+
function he(e) {
|
|
3306
3306
|
const t = d.useRef(e);
|
|
3307
3307
|
return d.useEffect(() => {
|
|
3308
3308
|
t.current = e;
|
|
@@ -3340,7 +3340,7 @@ var P0 = d.forwardRef((e, t) => {
|
|
|
3340
3340
|
defaultProp: a ?? null,
|
|
3341
3341
|
onChange: l,
|
|
3342
3342
|
caller: dr
|
|
3343
|
-
}), [b, w] = d.useState(!1), x =
|
|
3343
|
+
}), [b, w] = d.useState(!1), x = he(c), S = Nd(n), C = d.useRef(!1), [E, P] = d.useState(0);
|
|
3344
3344
|
return d.useEffect(() => {
|
|
3345
3345
|
const T = h.current;
|
|
3346
3346
|
if (T)
|
|
@@ -3861,7 +3861,7 @@ function qn(e, [t, n]) {
|
|
|
3861
3861
|
return Math.min(n, Math.max(t, e));
|
|
3862
3862
|
}
|
|
3863
3863
|
function Y0(e, t = globalThis == null ? void 0 : globalThis.document) {
|
|
3864
|
-
const n =
|
|
3864
|
+
const n = he(e);
|
|
3865
3865
|
d.useEffect(() => {
|
|
3866
3866
|
const r = (o) => {
|
|
3867
3867
|
o.key === "Escape" && n(o);
|
|
@@ -3934,7 +3934,7 @@ var J0 = "DismissableLayerBranch", tf = d.forwardRef((e, t) => {
|
|
|
3934
3934
|
});
|
|
3935
3935
|
tf.displayName = J0;
|
|
3936
3936
|
function Q0(e, t = globalThis == null ? void 0 : globalThis.document) {
|
|
3937
|
-
const n =
|
|
3937
|
+
const n = he(e), r = d.useRef(!1), o = d.useRef(() => {
|
|
3938
3938
|
});
|
|
3939
3939
|
return d.useEffect(() => {
|
|
3940
3940
|
const s = (a) => {
|
|
@@ -3964,7 +3964,7 @@ function Q0(e, t = globalThis == null ? void 0 : globalThis.document) {
|
|
|
3964
3964
|
};
|
|
3965
3965
|
}
|
|
3966
3966
|
function ew(e, t = globalThis == null ? void 0 : globalThis.document) {
|
|
3967
|
-
const n =
|
|
3967
|
+
const n = he(e), r = d.useRef(!1);
|
|
3968
3968
|
return d.useEffect(() => {
|
|
3969
3969
|
const o = (s) => {
|
|
3970
3970
|
s.target && !r.current && nf(Z0, n, { originalEvent: s }, {
|
|
@@ -4005,7 +4005,7 @@ var Cs = "focusScope.autoFocusOnMount", Es = "focusScope.autoFocusOnUnmount", Kl
|
|
|
4005
4005
|
onMountAutoFocus: o,
|
|
4006
4006
|
onUnmountAutoFocus: s,
|
|
4007
4007
|
...i
|
|
4008
|
-
} = e, [a, l] = d.useState(null), c =
|
|
4008
|
+
} = e, [a, l] = d.useState(null), c = he(o), u = he(s), f = d.useRef(null), h = Z(t, (g) => l(g)), m = d.useRef({
|
|
4009
4009
|
paused: !1,
|
|
4010
4010
|
pause() {
|
|
4011
4011
|
this.paused = !0;
|
|
@@ -5521,7 +5521,7 @@ var ua = "PopperContent", [Cx, Ex] = vf(ua), Sf = d.forwardRef(
|
|
|
5521
5521
|
Rx({ arrowWidth: P, arrowHeight: T }),
|
|
5522
5522
|
h && yx({ strategy: "referenceHidden", ...B })
|
|
5523
5523
|
]
|
|
5524
|
-
}), [$, Q] = Pf(W), ee =
|
|
5524
|
+
}), [$, Q] = Pf(W), ee = he(y);
|
|
5525
5525
|
ye(() => {
|
|
5526
5526
|
z && (ee == null || ee());
|
|
5527
5527
|
}, [z, ee]);
|
|
@@ -7028,7 +7028,7 @@ function sp(e) {
|
|
|
7028
7028
|
return e === "" || e === void 0;
|
|
7029
7029
|
}
|
|
7030
7030
|
function ip(e) {
|
|
7031
|
-
const t =
|
|
7031
|
+
const t = he(e), n = d.useRef(""), r = d.useRef(0), o = d.useCallback(
|
|
7032
7032
|
(i) => {
|
|
7033
7033
|
const a = n.current + i;
|
|
7034
7034
|
t(a), function l(c) {
|
|
@@ -8013,7 +8013,7 @@ var bi = ["Enter", " "], QC = ["ArrowDown", "PageUp", "Home"], Kp = ["ArrowUp",
|
|
|
8013
8013
|
at,
|
|
8014
8014
|
Sn
|
|
8015
8015
|
]), wr = at(), Xp = Sn(), [qp, Dt] = Yt(br), [sE, xr] = Yt(br), Zp = (e) => {
|
|
8016
|
-
const { __scopeMenu: t, open: n = !1, children: r, dir: o, onOpenChange: s, modal: i = !0 } = e, a = wr(t), [l, c] = d.useState(null), u = d.useRef(!1), f =
|
|
8016
|
+
const { __scopeMenu: t, open: n = !1, children: r, dir: o, onOpenChange: s, modal: i = !0 } = e, a = wr(t), [l, c] = d.useState(null), u = d.useRef(!1), f = he(s), h = Nt(o);
|
|
8017
8017
|
return d.useEffect(() => {
|
|
8018
8018
|
const m = () => {
|
|
8019
8019
|
u.current = !0, document.addEventListener("pointerdown", y, { capture: !0, once: !0 }), document.addEventListener("pointermove", y, { capture: !0, once: !0 });
|
|
@@ -8349,7 +8349,7 @@ var oh = "MenuRadioGroup", [mE, gE] = Yt(
|
|
|
8349
8349
|
} }
|
|
8350
8350
|
), sh = d.forwardRef(
|
|
8351
8351
|
(e, t) => {
|
|
8352
|
-
const { value: n, onValueChange: r, ...o } = e, s =
|
|
8352
|
+
const { value: n, onValueChange: r, ...o } = e, s = he(r);
|
|
8353
8353
|
return /* @__PURE__ */ p(mE, { scope: e.__scopeMenu, value: n, onValueChange: s, children: /* @__PURE__ */ p(Sa, { ...o, ref: t }) });
|
|
8354
8354
|
}
|
|
8355
8355
|
);
|
|
@@ -8424,7 +8424,7 @@ var bE = "MenuArrow", dh = d.forwardRef(
|
|
|
8424
8424
|
);
|
|
8425
8425
|
dh.displayName = bE;
|
|
8426
8426
|
var Ea = "MenuSub", [wE, fh] = Yt(Ea), ph = (e) => {
|
|
8427
|
-
const { __scopeMenu: t, children: n, open: r = !1, onOpenChange: o } = e, s = Dt(Ea, t), i = wr(t), [a, l] = d.useState(null), [c, u] = d.useState(null), f =
|
|
8427
|
+
const { __scopeMenu: t, children: n, open: r = !1, onOpenChange: o } = e, s = Dt(Ea, t), i = wr(t), [a, l] = d.useState(null), [c, u] = d.useState(null), f = he(o);
|
|
8428
8428
|
return d.useEffect(() => (s.open === !1 && f(!1), () => f(!1)), [s.open, f]), /* @__PURE__ */ p(Pn, { ...i, children: /* @__PURE__ */ p(
|
|
8429
8429
|
qp,
|
|
8430
8430
|
{
|
|
@@ -9670,8 +9670,8 @@ var Cr = "Toast", uT = "toast.swipeStart", dT = "toast.swipeMove", fT = "toast.s
|
|
|
9670
9670
|
...i,
|
|
9671
9671
|
ref: t,
|
|
9672
9672
|
onClose: () => l(!1),
|
|
9673
|
-
onPause:
|
|
9674
|
-
onResume:
|
|
9673
|
+
onPause: he(e.onPause),
|
|
9674
|
+
onResume: he(e.onResume),
|
|
9675
9675
|
onSwipeStart: M(e.onSwipeStart, (c) => {
|
|
9676
9676
|
c.currentTarget.setAttribute("data-swipe", "start");
|
|
9677
9677
|
}),
|
|
@@ -9710,7 +9710,7 @@ var [hT, mT] = um(Cr, {
|
|
|
9710
9710
|
onSwipeCancel: h,
|
|
9711
9711
|
onSwipeEnd: m,
|
|
9712
9712
|
...y
|
|
9713
|
-
} = e, g = Qo(Cr, n), [v, b] = d.useState(null), w = Z(t, (L) => b(L)), x = d.useRef(null), S = d.useRef(null), C = o || g.duration, E = d.useRef(0), P = d.useRef(C), T = d.useRef(0), { onToastAdd: R, onToastRemove: _ } = g, I =
|
|
9713
|
+
} = e, g = Qo(Cr, n), [v, b] = d.useState(null), w = Z(t, (L) => b(L)), x = d.useRef(null), S = d.useRef(null), C = o || g.duration, E = d.useRef(0), P = d.useRef(C), T = d.useRef(0), { onToastAdd: R, onToastRemove: _ } = g, I = he(() => {
|
|
9714
9714
|
var K;
|
|
9715
9715
|
(v == null ? void 0 : v.contains(document.activeElement)) && ((K = g.viewport) == null || K.focus()), i();
|
|
9716
9716
|
}), D = d.useCallback(
|
|
@@ -9888,7 +9888,7 @@ var hc = (e, t, n = 0) => {
|
|
|
9888
9888
|
};
|
|
9889
9889
|
function wT(e = () => {
|
|
9890
9890
|
}) {
|
|
9891
|
-
const t =
|
|
9891
|
+
const t = he(e);
|
|
9892
9892
|
ye(() => {
|
|
9893
9893
|
let n = 0, r = 0;
|
|
9894
9894
|
return n = window.requestAnimationFrame(() => r = window.requestAnimationFrame(t)), () => {
|
|
@@ -11093,7 +11093,7 @@ var NR = d.forwardRef((e, t) => {
|
|
|
11093
11093
|
onWheelScroll: u,
|
|
11094
11094
|
onResize: f,
|
|
11095
11095
|
...h
|
|
11096
|
-
} = e, m = Fe(lt, n), [y, g] = d.useState(null), v = Z(t, (R) => g(R)), b = d.useRef(null), w = d.useRef(""), x = m.viewport, S = r.content - r.viewport, C =
|
|
11096
|
+
} = e, m = Fe(lt, n), [y, g] = d.useState(null), v = Z(t, (R) => g(R)), b = d.useRef(null), w = d.useRef(""), x = m.viewport, S = r.content - r.viewport, C = he(u), E = he(l), P = os(f, 10);
|
|
11097
11097
|
function T(R) {
|
|
11098
11098
|
if (b.current) {
|
|
11099
11099
|
const _ = R.clientX - b.current.left, I = R.clientY - b.current.top;
|
|
@@ -11112,10 +11112,10 @@ var NR = d.forwardRef((e, t) => {
|
|
|
11112
11112
|
scope: n,
|
|
11113
11113
|
scrollbar: y,
|
|
11114
11114
|
hasThumb: o,
|
|
11115
|
-
onThumbChange:
|
|
11116
|
-
onThumbPointerUp:
|
|
11115
|
+
onThumbChange: he(s),
|
|
11116
|
+
onThumbPointerUp: he(i),
|
|
11117
11117
|
onThumbPositionChange: E,
|
|
11118
|
-
onThumbPointerDown:
|
|
11118
|
+
onThumbPointerDown: he(a),
|
|
11119
11119
|
children: /* @__PURE__ */ p(
|
|
11120
11120
|
j.div,
|
|
11121
11121
|
{
|
|
@@ -11251,13 +11251,13 @@ var VR = (e, t = () => {
|
|
|
11251
11251
|
}(), () => window.cancelAnimationFrame(r);
|
|
11252
11252
|
};
|
|
11253
11253
|
function os(e, t) {
|
|
11254
|
-
const n =
|
|
11254
|
+
const n = he(e), r = d.useRef(0);
|
|
11255
11255
|
return d.useEffect(() => () => window.clearTimeout(r.current), []), d.useCallback(() => {
|
|
11256
11256
|
window.clearTimeout(r.current), r.current = window.setTimeout(n, t);
|
|
11257
11257
|
}, [n, t]);
|
|
11258
11258
|
}
|
|
11259
11259
|
function mn(e, t) {
|
|
11260
|
-
const n =
|
|
11260
|
+
const n = he(t);
|
|
11261
11261
|
ye(() => {
|
|
11262
11262
|
let r = 0;
|
|
11263
11263
|
if (e) {
|
|
@@ -12380,7 +12380,7 @@ Fg.displayName = Ka;
|
|
|
12380
12380
|
var Bg = "AvatarImage", zg = d.forwardRef(
|
|
12381
12381
|
(e, t) => {
|
|
12382
12382
|
const { __scopeAvatar: n, src: r, onLoadingStatusChange: o = () => {
|
|
12383
|
-
}, ...s } = e, i = $g(Bg, n), a = iN(r, s), l =
|
|
12383
|
+
}, ...s } = e, i = $g(Bg, n), a = iN(r, s), l = he((c) => {
|
|
12384
12384
|
o(c), i.onImageLoadingStatusChange(c);
|
|
12385
12385
|
});
|
|
12386
12386
|
return ye(() => {
|
|
@@ -12529,7 +12529,7 @@ function fN({ children: e, isPresent: t }) {
|
|
|
12529
12529
|
}, [t]), p(dN, { isPresent: t, childRef: r, sizeRef: o, children: d.cloneElement(e, { ref: r }) });
|
|
12530
12530
|
}
|
|
12531
12531
|
const pN = ({ children: e, initial: t, isPresent: n, onExitComplete: r, custom: o, presenceAffectsLayout: s, mode: i }) => {
|
|
12532
|
-
const a = Ct(hN), l = To(), c =
|
|
12532
|
+
const a = Ct(hN), l = To(), c = pe((f) => {
|
|
12533
12533
|
a.set(f, !0);
|
|
12534
12534
|
for (const h of a.values())
|
|
12535
12535
|
if (!h)
|
|
@@ -12568,7 +12568,7 @@ function Kg(e = !0) {
|
|
|
12568
12568
|
ce(() => {
|
|
12569
12569
|
e && o(s);
|
|
12570
12570
|
}, [e]);
|
|
12571
|
-
const i =
|
|
12571
|
+
const i = pe(() => e && r && r(s), [s, r, e]);
|
|
12572
12572
|
return !n && r ? [!1, i] : [!0];
|
|
12573
12573
|
}
|
|
12574
12574
|
const Br = (e) => e.key || "";
|
|
@@ -12845,7 +12845,7 @@ function rn(e) {
|
|
|
12845
12845
|
return e && typeof e == "object" && Object.prototype.hasOwnProperty.call(e, "current");
|
|
12846
12846
|
}
|
|
12847
12847
|
function TN(e, t, n) {
|
|
12848
|
-
return
|
|
12848
|
+
return pe(
|
|
12849
12849
|
(r) => {
|
|
12850
12850
|
r && e.onMount && e.onMount(r), t && (r ? t.mount(r) : t.unmount()), n && (typeof n == "function" ? n(r) : rn(n) && (n.current = r));
|
|
12851
12851
|
},
|
|
@@ -15621,7 +15621,7 @@ const lu = () => ({
|
|
|
15621
15621
|
}), sn = () => ({
|
|
15622
15622
|
x: lu(),
|
|
15623
15623
|
y: lu()
|
|
15624
|
-
}), cu = () => ({ min: 0, max: 0 }),
|
|
15624
|
+
}), cu = () => ({ min: 0, max: 0 }), me = () => ({
|
|
15625
15625
|
x: cu(),
|
|
15626
15626
|
y: cu()
|
|
15627
15627
|
});
|
|
@@ -15713,7 +15713,7 @@ function wI(e, t, n) {
|
|
|
15713
15713
|
const ly = ({ current: e }) => e ? e.ownerDocument.defaultView : null, xI = /* @__PURE__ */ new WeakMap();
|
|
15714
15714
|
class SI {
|
|
15715
15715
|
constructor(t) {
|
|
15716
|
-
this.openDragLock = null, this.isDragging = !1, this.currentDirection = null, this.originPoint = { x: 0, y: 0 }, this.constraints = !1, this.hasMutatedConstraints = !1, this.elastic =
|
|
15716
|
+
this.openDragLock = null, this.isDragging = !1, this.currentDirection = null, this.originPoint = { x: 0, y: 0 }, this.constraints = !1, this.hasMutatedConstraints = !1, this.elastic = me(), this.visualElement = t;
|
|
15717
15717
|
}
|
|
15718
15718
|
start(t, { snapToCursor: n = !1 } = {}) {
|
|
15719
15719
|
const { presenceContext: r } = this.visualElement;
|
|
@@ -16414,7 +16414,7 @@ function vy({ attachResizeListener: e, defaultParent: t, measureScroll: n, check
|
|
|
16414
16414
|
for (let l = 0; l < this.path.length; l++)
|
|
16415
16415
|
this.path[l].updateScroll();
|
|
16416
16416
|
const i = this.layout;
|
|
16417
|
-
this.layout = this.measure(!1), this.layoutCorrected =
|
|
16417
|
+
this.layout = this.measure(!1), this.layoutCorrected = me(), this.isLayoutDirty = !1, this.projectionDelta = void 0, this.notifyListeners("measure", this.layout.layoutBox);
|
|
16418
16418
|
const { visualElement: a } = this.options;
|
|
16419
16419
|
a && a.notify("LayoutMeasure", this.layout.layoutBox, i ? i.layoutBox : void 0);
|
|
16420
16420
|
}
|
|
@@ -16452,7 +16452,7 @@ function vy({ attachResizeListener: e, defaultParent: t, measureScroll: n, check
|
|
|
16452
16452
|
var i;
|
|
16453
16453
|
const { visualElement: a } = this.options;
|
|
16454
16454
|
if (!a)
|
|
16455
|
-
return
|
|
16455
|
+
return me();
|
|
16456
16456
|
const l = a.measureViewportBox();
|
|
16457
16457
|
if (!(((i = this.scroll) === null || i === void 0 ? void 0 : i.wasRoot) || this.path.some(s_))) {
|
|
16458
16458
|
const { scroll: u } = this.root;
|
|
@@ -16462,7 +16462,7 @@ function vy({ attachResizeListener: e, defaultParent: t, measureScroll: n, check
|
|
|
16462
16462
|
}
|
|
16463
16463
|
removeElementScroll(i) {
|
|
16464
16464
|
var a;
|
|
16465
|
-
const l =
|
|
16465
|
+
const l = me();
|
|
16466
16466
|
if (Oe(l, i), !((a = this.scroll) === null || a === void 0) && a.wasRoot)
|
|
16467
16467
|
return l;
|
|
16468
16468
|
for (let c = 0; c < this.path.length; c++) {
|
|
@@ -16472,7 +16472,7 @@ function vy({ attachResizeListener: e, defaultParent: t, measureScroll: n, check
|
|
|
16472
16472
|
return l;
|
|
16473
16473
|
}
|
|
16474
16474
|
applyTransform(i, a = !1) {
|
|
16475
|
-
const l =
|
|
16475
|
+
const l = me();
|
|
16476
16476
|
Oe(l, i);
|
|
16477
16477
|
for (let c = 0; c < this.path.length; c++) {
|
|
16478
16478
|
const u = this.path[c];
|
|
@@ -16484,14 +16484,14 @@ function vy({ attachResizeListener: e, defaultParent: t, measureScroll: n, check
|
|
|
16484
16484
|
return $t(this.latestValues) && ln(l, this.latestValues), l;
|
|
16485
16485
|
}
|
|
16486
16486
|
removeTransform(i) {
|
|
16487
|
-
const a =
|
|
16487
|
+
const a = me();
|
|
16488
16488
|
Oe(a, i);
|
|
16489
16489
|
for (let l = 0; l < this.path.length; l++) {
|
|
16490
16490
|
const c = this.path[l];
|
|
16491
16491
|
if (!c.instance || !$t(c.latestValues))
|
|
16492
16492
|
continue;
|
|
16493
16493
|
zi(c.latestValues) && c.updateSnapshot();
|
|
16494
|
-
const u =
|
|
16494
|
+
const u = me(), f = c.measurePageBox();
|
|
16495
16495
|
Oe(u, f), Eu(a, c.latestValues, c.snapshot ? c.snapshot.layoutBox : void 0, u);
|
|
16496
16496
|
}
|
|
16497
16497
|
return $t(this.latestValues) && Eu(a, this.latestValues), a;
|
|
@@ -16523,13 +16523,13 @@ function vy({ attachResizeListener: e, defaultParent: t, measureScroll: n, check
|
|
|
16523
16523
|
if (!(!this.layout || !(f || h))) {
|
|
16524
16524
|
if (this.resolvedRelativeTargetAt = Se.timestamp, !this.targetDelta && !this.relativeTarget) {
|
|
16525
16525
|
const m = this.getClosestProjectingParent();
|
|
16526
|
-
m && m.layout && this.animationProgress !== 1 ? (this.relativeParent = m, this.forceRelativeParentToResolveTarget(), this.relativeTarget =
|
|
16526
|
+
m && m.layout && this.animationProgress !== 1 ? (this.relativeParent = m, this.forceRelativeParentToResolveTarget(), this.relativeTarget = me(), this.relativeTargetOrigin = me(), Yn(this.relativeTargetOrigin, this.layout.layoutBox, m.layout.layoutBox), Oe(this.relativeTarget, this.relativeTargetOrigin)) : this.relativeParent = this.relativeTarget = void 0;
|
|
16527
16527
|
}
|
|
16528
16528
|
if (!(!this.relativeTarget && !this.targetDelta)) {
|
|
16529
|
-
if (this.target || (this.target =
|
|
16529
|
+
if (this.target || (this.target = me(), this.targetWithTransforms = me()), this.relativeTarget && this.relativeTargetOrigin && this.relativeParent && this.relativeParent.target ? (this.forceRelativeParentToResolveTarget(), uI(this.target, this.relativeTarget, this.relativeParent.target)) : this.targetDelta ? (this.resumingFrom ? this.target = this.applyTransform(this.layout.layoutBox) : Oe(this.target, this.layout.layoutBox), iy(this.target, this.targetDelta)) : Oe(this.target, this.layout.layoutBox), this.attemptToResolveRelativeTarget) {
|
|
16530
16530
|
this.attemptToResolveRelativeTarget = !1;
|
|
16531
16531
|
const m = this.getClosestProjectingParent();
|
|
16532
|
-
m && !!m.resumingFrom == !!this.resumingFrom && !m.options.layoutScroll && m.target && this.animationProgress !== 1 ? (this.relativeParent = m, this.forceRelativeParentToResolveTarget(), this.relativeTarget =
|
|
16532
|
+
m && !!m.resumingFrom == !!this.resumingFrom && !m.options.layoutScroll && m.target && this.animationProgress !== 1 ? (this.relativeParent = m, this.forceRelativeParentToResolveTarget(), this.relativeTarget = me(), this.relativeTargetOrigin = me(), Yn(this.relativeTargetOrigin, this.target, m.target), Oe(this.relativeTarget, this.relativeTargetOrigin)) : this.relativeParent = this.relativeTarget = void 0;
|
|
16533
16533
|
}
|
|
16534
16534
|
Wn && Ft.resolvedTargetDeltas++;
|
|
16535
16535
|
}
|
|
@@ -16553,7 +16553,7 @@ function vy({ attachResizeListener: e, defaultParent: t, measureScroll: n, check
|
|
|
16553
16553
|
return;
|
|
16554
16554
|
Oe(this.layoutCorrected, this.layout.layoutBox);
|
|
16555
16555
|
const h = this.treeScale.x, m = this.treeScale.y;
|
|
16556
|
-
bI(this.layoutCorrected, this.treeScale, this.path, l), a.layout && !a.target && (this.treeScale.x !== 1 || this.treeScale.y !== 1) && (a.target = a.layout.layoutBox, a.targetWithTransforms =
|
|
16556
|
+
bI(this.layoutCorrected, this.treeScale, this.path, l), a.layout && !a.target && (this.treeScale.x !== 1 || this.treeScale.y !== 1) && (a.target = a.layout.layoutBox, a.targetWithTransforms = me());
|
|
16557
16557
|
const { target: y } = a;
|
|
16558
16558
|
if (!y) {
|
|
16559
16559
|
this.prevProjectionDelta && (this.createProjectionDeltas(), this.scheduleRender());
|
|
@@ -16581,12 +16581,12 @@ function vy({ attachResizeListener: e, defaultParent: t, measureScroll: n, check
|
|
|
16581
16581
|
setAnimationOrigin(i, a = !1) {
|
|
16582
16582
|
const l = this.snapshot, c = l ? l.latestValues : {}, u = { ...this.latestValues }, f = sn();
|
|
16583
16583
|
(!this.relativeParent || !this.relativeParent.options.layoutRoot) && (this.relativeTarget = this.relativeTargetOrigin = void 0), this.attemptToResolveRelativeTarget = !a;
|
|
16584
|
-
const h =
|
|
16584
|
+
const h = me(), m = l ? l.source : void 0, y = this.layout ? this.layout.source : void 0, g = m !== y, v = this.getStack(), b = !v || v.members.length <= 1, w = !!(g && !b && this.options.crossfade === !0 && !this.path.some(n_));
|
|
16585
16585
|
this.animationProgress = 0;
|
|
16586
16586
|
let x;
|
|
16587
16587
|
this.mixTargetDelta = (S) => {
|
|
16588
16588
|
const C = S / 1e3;
|
|
16589
|
-
Du(f.x, i.x, C), Du(f.y, i.y, C), this.setTargetDelta(f), this.relativeTarget && this.relativeTargetOrigin && this.layout && this.relativeParent && this.relativeParent.layout && (Yn(h, this.layout.layoutBox, this.relativeParent.layout.layoutBox), t_(this.relativeTarget, this.relativeTargetOrigin, h, C), x && FI(this.relativeTarget, x) && (this.isProjectionDirty = !1), x || (x =
|
|
16589
|
+
Du(f.x, i.x, C), Du(f.y, i.y, C), this.setTargetDelta(f), this.relativeTarget && this.relativeTargetOrigin && this.layout && this.relativeParent && this.relativeParent.layout && (Yn(h, this.layout.layoutBox, this.relativeParent.layout.layoutBox), t_(this.relativeTarget, this.relativeTargetOrigin, h, C), x && FI(this.relativeTarget, x) && (this.isProjectionDirty = !1), x || (x = me()), Oe(x, this.relativeTarget)), g && (this.animationValues = u, DI(u, c, this.latestValues, C, w, b)), this.root.scheduleUpdateProjection(), this.scheduleRender(), this.animationProgress = C;
|
|
16590
16590
|
}, this.mixTargetDelta(this.options.layoutRoot ? 1e3 : 0);
|
|
16591
16591
|
}
|
|
16592
16592
|
startAnimation(i) {
|
|
@@ -16615,7 +16615,7 @@ function vy({ attachResizeListener: e, defaultParent: t, measureScroll: n, check
|
|
|
16615
16615
|
let { targetWithTransforms: a, target: l, layout: c, latestValues: u } = i;
|
|
16616
16616
|
if (!(!a || !l || !c)) {
|
|
16617
16617
|
if (this !== i && this.layout && c && yy(this.options.animationType, this.layout.layoutBox, c.layoutBox)) {
|
|
16618
|
-
l = this.target ||
|
|
16618
|
+
l = this.target || me();
|
|
16619
16619
|
const f = ke(this.layout.layoutBox.x);
|
|
16620
16620
|
l.x.min = i.target.x.min, l.x.max = l.x.min + f;
|
|
16621
16621
|
const h = ke(this.layout.layoutBox.y);
|
|
@@ -16747,9 +16747,9 @@ function UI(e) {
|
|
|
16747
16747
|
if (f && !f.resumeFrom) {
|
|
16748
16748
|
const { snapshot: h, layout: m } = f;
|
|
16749
16749
|
if (h && m) {
|
|
16750
|
-
const y =
|
|
16750
|
+
const y = me();
|
|
16751
16751
|
Yn(y, n.layoutBox, h.layoutBox);
|
|
16752
|
-
const g =
|
|
16752
|
+
const g = me();
|
|
16753
16753
|
Yn(g, r, m.layoutBox), my(y, g) || (u = !0), f.options.layoutRoot && (e.relativeTarget = g, e.relativeTargetOrigin = y, e.relativeParent = f);
|
|
16754
16754
|
}
|
|
16755
16755
|
}
|
|
@@ -17104,7 +17104,7 @@ class xy {
|
|
|
17104
17104
|
* removed with a re-render to work.
|
|
17105
17105
|
*/
|
|
17106
17106
|
measureViewportBox() {
|
|
17107
|
-
return this.current ? this.measureInstanceViewportBox(this.current, this.props) :
|
|
17107
|
+
return this.current ? this.measureInstanceViewportBox(this.current, this.props) : me();
|
|
17108
17108
|
}
|
|
17109
17109
|
getStaticValue(t) {
|
|
17110
17110
|
return this.latestValues[t];
|
|
@@ -17272,7 +17272,7 @@ class Cy extends Sy {
|
|
|
17272
17272
|
}
|
|
17273
17273
|
class Ey extends Sy {
|
|
17274
17274
|
constructor() {
|
|
17275
|
-
super(...arguments), this.type = "svg", this.isSVGTag = !1, this.measureInstanceViewportBox =
|
|
17275
|
+
super(...arguments), this.type = "svg", this.isSVGTag = !1, this.measureInstanceViewportBox = me;
|
|
17276
17276
|
}
|
|
17277
17277
|
getBaseTargetFromProps(t, n) {
|
|
17278
17278
|
return t[n];
|
|
@@ -17848,7 +17848,7 @@ class xD extends xy {
|
|
|
17848
17848
|
delete n.output[t];
|
|
17849
17849
|
}
|
|
17850
17850
|
measureInstanceViewportBox() {
|
|
17851
|
-
return
|
|
17851
|
+
return me();
|
|
17852
17852
|
}
|
|
17853
17853
|
build(t, n) {
|
|
17854
17854
|
Object.assign(t.output, n);
|
|
@@ -18459,7 +18459,7 @@ const Qu = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789", ed
|
|
|
18459
18459
|
duration: t = 3e3,
|
|
18460
18460
|
className: n
|
|
18461
18461
|
}) => {
|
|
18462
|
-
const [r, o] = le(e[0]), [s, i] = le(!1), a =
|
|
18462
|
+
const [r, o] = le(e[0]), [s, i] = le(!1), a = pe(() => {
|
|
18463
18463
|
const l = e[e.indexOf(r) + 1] || e[0];
|
|
18464
18464
|
o(l), i(!0);
|
|
18465
18465
|
}, [r, e]);
|
|
@@ -18729,7 +18729,7 @@ const Qk = ({
|
|
|
18729
18729
|
pauseOnHover: r = !0,
|
|
18730
18730
|
className: o
|
|
18731
18731
|
}) => {
|
|
18732
|
-
const s = te(null), i = te(null), [a, l] = le(!1), c =
|
|
18732
|
+
const s = te(null), i = te(null), [a, l] = le(!1), c = pe(() => {
|
|
18733
18733
|
s.current && (t === "left" ? s.current.style.setProperty(
|
|
18734
18734
|
"--animation-direction",
|
|
18735
18735
|
"forwards"
|
|
@@ -18737,9 +18737,9 @@ const Qk = ({
|
|
|
18737
18737
|
"--animation-direction",
|
|
18738
18738
|
"reverse"
|
|
18739
18739
|
));
|
|
18740
|
-
}, [t]), u =
|
|
18740
|
+
}, [t]), u = pe(() => {
|
|
18741
18741
|
s.current && (n === "fast" ? s.current.style.setProperty("--animation-duration", "20s") : n === "normal" ? s.current.style.setProperty("--animation-duration", "40s") : s.current.style.setProperty("--animation-duration", "80s"));
|
|
18742
|
-
}, [n]), f =
|
|
18742
|
+
}, [n]), f = pe(() => {
|
|
18743
18743
|
s.current && i.current && (Array.from(i.current.children).forEach((m) => {
|
|
18744
18744
|
const y = m.cloneNode(!0);
|
|
18745
18745
|
i.current && i.current.appendChild(y);
|
|
@@ -19401,7 +19401,7 @@ const YD = ({
|
|
|
19401
19401
|
particleDensity: o = 100,
|
|
19402
19402
|
particleColor: s = "#FFFFFF",
|
|
19403
19403
|
speed: i = 4
|
|
19404
|
-
} = e, a = te(null), [l, c] = le(null), [u, f] = le([]), h = te(), m =
|
|
19404
|
+
} = e, a = te(null), [l, c] = le(null), [u, f] = le([]), h = te(), m = pe((v, b) => {
|
|
19405
19405
|
const w = o, x = [];
|
|
19406
19406
|
for (let S = 0; S < w; S++)
|
|
19407
19407
|
x.push({
|
|
@@ -19412,7 +19412,7 @@ const YD = ({
|
|
|
19412
19412
|
speedY: (Math.random() - 0.5) * i
|
|
19413
19413
|
});
|
|
19414
19414
|
f(x);
|
|
19415
|
-
}, [r, n, o, i]), y =
|
|
19415
|
+
}, [r, n, o, i]), y = pe(() => {
|
|
19416
19416
|
if (a.current) {
|
|
19417
19417
|
const v = a.current, { width: b, height: w } = v.getBoundingClientRect();
|
|
19418
19418
|
v.width = b, v.height = w, m(b, w);
|
|
@@ -19426,7 +19426,7 @@ const YD = ({
|
|
|
19426
19426
|
m(v, b);
|
|
19427
19427
|
}
|
|
19428
19428
|
}, [l, m]);
|
|
19429
|
-
const g =
|
|
19429
|
+
const g = pe(() => {
|
|
19430
19430
|
if (l && a.current) {
|
|
19431
19431
|
const v = a.current;
|
|
19432
19432
|
l.clearRect(0, 0, v.width, v.height), u.forEach((b) => {
|
|
@@ -19890,33 +19890,33 @@ const ZD = $y(), JD = Math.PI * 2, nn = (e) => e * Math.random(), QD = (e) => e
|
|
|
19890
19890
|
rangeRadius: l = 2,
|
|
19891
19891
|
backgroundColor: c = "#000000"
|
|
19892
19892
|
}) => {
|
|
19893
|
-
const u = te(null), f = te(null), h = 9, m = r * h, y = 100, g = 50, v = 150, b = s, w = i, x = a, S = l, C = o, E = 20, P = 3, T = 125e-5, R = 125e-5, _ = 5e-4, I = te(c), D = te(0), B = te(new Float32Array(m)), L = te([0, 0]), K = te(), W =
|
|
19893
|
+
const u = te(null), f = te(null), h = 9, m = r * h, y = 100, g = 50, v = 150, b = s, w = i, x = a, S = l, C = o, E = 20, P = 3, T = 125e-5, R = 125e-5, _ = 5e-4, I = te(c), D = te(0), B = te(new Float32Array(m)), L = te([0, 0]), K = te(), W = pe((V) => {
|
|
19894
19894
|
const O = u.current;
|
|
19895
19895
|
if (!O) return;
|
|
19896
19896
|
const G = nn(O.width), F = L.current[1] + QD(y), Y = 0, X = 0, q = 0, se = g + nn(v), ne = b + nn(w), Ee = x + nn(S), Ne = C + nn(E);
|
|
19897
19897
|
B.current.set([G, F, Y, X, q, se, ne, Ee, Ne], V);
|
|
19898
|
-
}, [y, g, v, b, w, x, S, C, E]), z =
|
|
19898
|
+
}, [y, g, v, b, w, x, S, C, E]), z = pe(() => {
|
|
19899
19899
|
D.current = 0, B.current = new Float32Array(m);
|
|
19900
19900
|
for (let V = 0; V < m; V += h)
|
|
19901
19901
|
W(V);
|
|
19902
|
-
}, [W, m]), k =
|
|
19902
|
+
}, [W, m]), k = pe((V, O, G, F, Y, X, q, se, ne) => {
|
|
19903
19903
|
ne.save(), ne.lineCap = "round", ne.lineWidth = q, ne.strokeStyle = `hsla(${se},100%,60%,${ek(Y, X)})`, ne.beginPath(), ne.moveTo(V, O), ne.lineTo(G, F), ne.stroke(), ne.closePath(), ne.restore();
|
|
19904
|
-
}, []), $ =
|
|
19904
|
+
}, []), $ = pe((V, O) => {
|
|
19905
19905
|
const G = u.current;
|
|
19906
19906
|
if (!G) return;
|
|
19907
19907
|
const F = 1 + V, Y = 2 + V, X = 3 + V, q = 4 + V, se = 5 + V, ne = 6 + V, Ee = 7 + V, Ne = 8 + V, Ke = B.current[V], Ye = B.current[F], ft = ZD(Ke * T, Ye * R, D.current * _) * P * JD, Ir = nd(B.current[Y], Math.cos(ft), 0.5), Lt = nd(B.current[X], Math.sin(ft), 0.5);
|
|
19908
19908
|
let _r = B.current[q];
|
|
19909
19909
|
const kl = B.current[se], Ol = B.current[ne], Ll = Ke + Ir * Ol, Vl = Ye + Lt * Ol, By = B.current[Ee], zy = B.current[Ne];
|
|
19910
19910
|
k(Ke, Ye, Ll, Vl, _r, kl, By, zy, O), _r++, B.current[V] = Ll, B.current[F] = Vl, B.current[Y] = Ir, B.current[X] = Lt, B.current[q] = _r, (tk(Ke, Ye, G) || _r > kl) && W(V);
|
|
19911
|
-
}, [k, W]), Q =
|
|
19911
|
+
}, [k, W]), Q = pe((V) => {
|
|
19912
19912
|
for (let O = 0; O < m; O += h)
|
|
19913
19913
|
$(O, V);
|
|
19914
|
-
}, [$, m]), ee =
|
|
19914
|
+
}, [$, m]), ee = pe((V, O) => {
|
|
19915
19915
|
D.current++, O.clearRect(0, 0, V.width, V.height), O.fillStyle = I.current, O.fillRect(0, 0, V.width, V.height), Q(O), nk(V, O), rk(V, O), K.current = window.requestAnimationFrame(() => ee(V, O));
|
|
19916
|
-
}, [Q]), N =
|
|
19916
|
+
}, [Q]), N = pe((V) => {
|
|
19917
19917
|
const { innerWidth: O, innerHeight: G } = window;
|
|
19918
19918
|
V.width = O, V.height = G, L.current[0] = 0.5 * V.width, L.current[1] = 0.5 * V.height;
|
|
19919
|
-
}, []), U =
|
|
19919
|
+
}, []), U = pe(() => {
|
|
19920
19920
|
const V = u.current, O = f.current;
|
|
19921
19921
|
if (V && O) {
|
|
19922
19922
|
const G = V.getContext("2d");
|
|
@@ -19959,7 +19959,7 @@ const ZD = $y(), JD = Math.PI * 2, nn = (e) => e * Math.random(), QD = (e) => e
|
|
|
19959
19959
|
waveOpacity: l = 0.5,
|
|
19960
19960
|
...c
|
|
19961
19961
|
}) => {
|
|
19962
|
-
const u = $y(), f = te(null), h = te(), m = te(null), y = te(0), g = te(0), v = te(0), b =
|
|
19962
|
+
const u = $y(), f = te(null), h = te(), m = te(null), y = te(0), g = te(0), v = te(0), b = pe(() => {
|
|
19963
19963
|
switch (a) {
|
|
19964
19964
|
case "slow":
|
|
19965
19965
|
return 1e-3;
|
|
@@ -19974,7 +19974,7 @@ const ZD = $y(), JD = Math.PI * 2, nn = (e) => e * Math.random(), QD = (e) => e
|
|
|
19974
19974
|
"#c084fc",
|
|
19975
19975
|
"#e879f9",
|
|
19976
19976
|
"#22d3ee"
|
|
19977
|
-
], [r]), x =
|
|
19977
|
+
], [r]), x = pe((T) => {
|
|
19978
19978
|
const R = m.current;
|
|
19979
19979
|
if (R) {
|
|
19980
19980
|
v.current += b();
|
|
@@ -19987,10 +19987,10 @@ const ZD = $y(), JD = Math.PI * 2, nn = (e) => e * Math.random(), QD = (e) => e
|
|
|
19987
19987
|
R.stroke(), R.closePath();
|
|
19988
19988
|
}
|
|
19989
19989
|
}
|
|
19990
|
-
}, [b, u, w, o]), S =
|
|
19990
|
+
}, [b, u, w, o]), S = pe(() => {
|
|
19991
19991
|
const T = m.current;
|
|
19992
19992
|
T && (T.fillStyle = s || "black", T.globalAlpha = l || 0.5, T.fillRect(0, 0, y.current, g.current), x(5), h.current = requestAnimationFrame(S));
|
|
19993
|
-
}, [s, x, l]), C =
|
|
19993
|
+
}, [s, x, l]), C = pe(() => {
|
|
19994
19994
|
const T = f.current;
|
|
19995
19995
|
if (!T) return;
|
|
19996
19996
|
const R = T.getContext("2d");
|
|
@@ -20101,14 +20101,12 @@ const ZD = $y(), JD = Math.PI * 2, nn = (e) => e * Math.random(), QD = (e) => e
|
|
|
20101
20101
|
rotateZ: l = 0,
|
|
20102
20102
|
...c
|
|
20103
20103
|
}) => {
|
|
20104
|
-
const u = te(null), [f] = ok()
|
|
20105
|
-
ae.useEffect(() => {
|
|
20106
|
-
h();
|
|
20107
|
-
}, [f]);
|
|
20108
|
-
const h = () => {
|
|
20104
|
+
const u = te(null), [f] = ok(), h = pe(() => {
|
|
20109
20105
|
u.current && (f ? u.current.style.transform = `translateX(${r}px) translateY(${o}px) translateZ(${s}px) rotateX(${i}deg) rotateY(${a}deg) rotateZ(${l}deg)` : u.current.style.transform = "translateX(0px) translateY(0px) translateZ(0px) rotateX(0deg) rotateY(0deg) rotateZ(0deg)");
|
|
20110
|
-
};
|
|
20111
|
-
return
|
|
20106
|
+
}, [f, r, o, s, i, a, l]);
|
|
20107
|
+
return ae.useEffect(() => {
|
|
20108
|
+
h();
|
|
20109
|
+
}, [h]), /* @__PURE__ */ p(
|
|
20112
20110
|
e,
|
|
20113
20111
|
{
|
|
20114
20112
|
ref: u,
|
package/dist/blaze-ui.umd.js
CHANGED
|
@@ -137,7 +137,7 @@ Defaulting to \`null\`.`}var Ph=bh,qA=xh;const Th=d.forwardRef(({className:e,val
|
|
|
137
137
|
${r},
|
|
138
138
|
transparent 80%
|
|
139
139
|
)
|
|
140
|
-
`,opacity:o}})]})}const xO=({children:e,className:t,...n})=>{const r=E.useRef(null),[o,s]=E.useState({x:0,y:0}),i=l=>{const{clientX:c,clientY:u}=l,{left:f,top:h,width:m,height:y}=l.currentTarget.getBoundingClientRect(),g=(c-(f+m/2))*.35,v=(u-(h+y/2))*.35;s({x:g,y:v})},a=()=>{s({x:0,y:0})};return p.jsxs(oe.button,{ref:r,onMouseMove:i,onMouseLeave:a,animate:{x:o.x,y:o.y},transition:{type:"spring",stiffness:150,damping:15,mass:.1},className:M("relative inline-flex h-12 overflow-hidden rounded-full p-[1px] focus:outline-none focus:ring-2 focus:ring-slate-400 focus:ring-offset-2 focus:ring-offset-slate-50",t),...n,children:[p.jsx("span",{className:"absolute inset-[-1000%] animate-[spin_2s_linear_infinite] bg-[conic-gradient(from_90deg_at_50%_50%,#E2CBFF_0%,#393BB2_50%,#E2CBFF_100%)]"}),p.jsx("span",{className:"inline-flex h-full w-full cursor-pointer items-center justify-center rounded-full bg-slate-950 px-6 py-1 text-sm font-medium text-white backdrop-blur-3xl",children:e})]})};function SO({borderRadius:e="1.75rem",children:t,as:n="button",containerClassName:r,borderClassName:o,duration:s,className:i,...a}){return p.jsxs(n,{className:M("bg-transparent relative text-xl h-16 w-40 p-[1px] overflow-hidden ",r),style:{borderRadius:e},...a,children:[p.jsx("div",{className:"absolute inset-0",style:{borderRadius:`calc(${e} * 0.96)`},children:p.jsx(u0,{duration:s,rx:"30%",ry:"30%",children:p.jsx("div",{className:M("h-20 w-20 opacity-[0.8] bg-[radial-gradient(#0ea5e9_40%,transparent_60%)]",o)})})}),p.jsx("div",{className:M("relative bg-slate-900/[0.8] border border-slate-800 backdrop-blur-xl text-white flex items-center justify-center w-full h-full text-sm antialiased",i),style:{borderRadius:`calc(${e} * 0.96)`},children:t})]})}const u0=({children:e,duration:t=2e3,rx:n,ry:r,...o})=>{const s=E.useRef(null),i=Tt(0);pk(u=>{var h;const f=(h=s.current)==null?void 0:h.getTotalLength();if(f){const m=f/t;i.set(u*m%f)}});const a=zt(i,u=>{var f;return(f=s.current)==null?void 0:f.getPointAtLength(u).x}),l=zt(i,u=>{var f;return(f=s.current)==null?void 0:f.getPointAtLength(u).y}),c=Cl`translateX(${a}px) translateY(${l}px) translateX(-50%) translateY(-50%)`;return p.jsxs(p.Fragment,{children:[p.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"none",className:"absolute h-full w-full",width:"100%",height:"100%",...o,children:p.jsx("rect",{fill:"none",width:"100%",height:"100%",rx:n,ry:r,ref:s})}),p.jsx(oe.div,{style:{position:"absolute",top:0,left:0,display:"inline-block",transform:c},children:e})]})},CO=({className:e,children:t,borderSize:n=2,borderRadius:r=20,neonColors:o={firstColor:"#ff00aa",secondColor:"#00FFF1"},...s})=>p.jsxs("div",{className:M("relative overflow-hidden z-0",e),style:{borderRadius:r,...s.style},...s,children:[p.jsx("div",{className:"absolute top-0 left-0 w-full h-full -z-10 animate-[spin_4s_linear_infinite]",style:{background:`conic-gradient(from 0deg, transparent 0 340deg, ${o.firstColor} 360deg)`,top:"-50%",left:"-50%",width:"200%",height:"200%"}}),p.jsx("div",{className:"absolute top-0 left-0 w-full h-full -z-10 animate-[spin_4s_linear_infinite]",style:{background:`conic-gradient(from 180deg, transparent 0 340deg, ${o.secondColor} 360deg)`,top:"-50%",left:"-50%",width:"200%",height:"200%",animationDelay:"-2s"}}),p.jsx("div",{className:"relative bg-background z-10 w-[calc(100%-4px)] h-[calc(100%-4px)] m-[2px]",style:{borderRadius:r-n},children:t})]}),EO=({className:e,particleCount:t=50,particleColor:n})=>{const r=E.useRef(null),o=E.useRef(null),{theme:s}=hs();return E.useEffect(()=>{const i=r.current;if(!i)return;const a=i.getContext("2d");if(!a)return;let l=[],c;const u=()=>{var m,y;i.width=((m=o.current)==null?void 0:m.offsetWidth)||window.innerWidth,i.height=((y=o.current)==null?void 0:y.offsetHeight)||window.innerHeight,f()},f=()=>{l=[];for(let m=0;m<t;m++)l.push({x:Math.random()*i.width,y:Math.random()*i.height,vx:(Math.random()-.5)*.5,vy:(Math.random()-.5)*.5,size:Math.random()*2+.5})},h=()=>{a.clearRect(0,0,i.width,i.height);const m=n||(s==="dark"?"rgba(255, 255, 255, 0.5)":"rgba(0, 0, 0, 0.7)"),y=n||(s==="dark"?"rgba(255, 255, 255, 0.15)":"rgba(0, 0, 0, 0.3)");l.forEach((g,v)=>{g.x+=g.vx,g.y+=g.vy,(g.x<0||g.x>i.width)&&(g.vx*=-1),(g.y<0||g.y>i.height)&&(g.vy*=-1),a.beginPath(),a.arc(g.x,g.y,g.size,0,Math.PI*2),a.fillStyle=m,a.fill();for(let b=v+1;b<l.length;b++){const w=l[b],x=g.x-w.x,S=g.y-w.y;Math.sqrt(x*x+S*S)<100&&(a.beginPath(),a.strokeStyle=y,a.lineWidth=.5,a.moveTo(g.x,g.y),a.lineTo(w.x,w.y),a.stroke())}}),c=requestAnimationFrame(h)};return u(),h(),window.addEventListener("resize",u),()=>{window.removeEventListener("resize",u),cancelAnimationFrame(c)}},[t,n,s]),p.jsx("div",{ref:o,className:e,style:{position:"relative",overflow:"hidden"},children:p.jsx("canvas",{ref:r,style:{display:"block",width:"100%",height:"100%"}})})},PO=({children:e,className:t,variant:n="blue",...r})=>{const[o,s]=E.useState([]),i=E.useRef(null),a=5;E.useEffect(()=>{if(!i.current)return;const u=()=>{if(!i.current)return;const f=i.current.getBoundingClientRect(),h=f.width,m=f.height,y=[];for(let g=0;g<h;g+=a)for(let v=0;v<m;v+=a)Math.random()>.9&&y.push({x:g,y:v});s(y)};return u(),window.addEventListener("resize",u),()=>window.removeEventListener("resize",u)},[]);const l={default:"bg-neutral-900 border-neutral-800",blue:"bg-slate-900 border-slate-800",pink:"bg-pink-900/20 border-pink-800/50"},c={default:"bg-neutral-500",blue:"bg-blue-500",pink:"bg-pink-500"};return p.jsxs("div",{ref:i,className:M("relative overflow-hidden rounded-xl border p-6 group",l[n],t),...r,children:[p.jsx("div",{className:"absolute inset-0 z-0 opacity-10 pointer-events-none",style:{backgroundImage:`radial-gradient(${n==="pink"?"#ec4899":"#3b82f6"} 1px, transparent 1px)`,backgroundSize:`${a*2}px ${a*2}px`}}),p.jsx("div",{className:"absolute inset-0 z-0 opacity-0 group-hover:opacity-100 transition-opacity duration-500",children:o.map((u,f)=>p.jsx("span",{className:M("absolute w-1 h-1 rounded-full animate-pulse",c[n]),style:{left:u.x,top:u.y,animationDelay:`${Math.random()*2}s`}},f))}),p.jsx("div",{className:"relative z-10",children:e})]})},TO=e=>{const{className:t,minSize:n=1,maxSize:r=3,particleDensity:o=100,particleColor:s="#FFFFFF",speed:i=4}=e,a=E.useRef(null),[l,c]=E.useState(null),[u,f]=E.useState([]),h=E.useRef(),m=E.useCallback((v,b)=>{const w=o,x=[];for(let S=0;S<w;S++)x.push({x:Math.random()*v,y:Math.random()*b,size:Math.random()*(r-n)+n,speedX:(Math.random()-.5)*i,speedY:(Math.random()-.5)*i});f(x)},[r,n,o,i]),y=E.useCallback(()=>{if(a.current){const v=a.current,{width:b,height:w}=v.getBoundingClientRect();v.width=b,v.height=w,m(b,w)}},[m]);E.useEffect(()=>(a.current&&(c(a.current.getContext("2d")),y(),window.addEventListener("resize",y)),()=>{window.removeEventListener("resize",y)}),[y]),E.useEffect(()=>{if(l&&a.current){const{width:v,height:b}=a.current;m(v,b)}},[l,m]);const g=E.useCallback(()=>{if(l&&a.current){const v=a.current;l.clearRect(0,0,v.width,v.height),u.forEach(b=>{b.x+=b.speedX,b.y+=b.speedY,b.x>v.width&&(b.x=0),b.x<0&&(b.x=v.width),b.y>v.height&&(b.y=0),b.y<0&&(b.y=v.height),l.fillStyle=s,l.beginPath(),l.arc(b.x,b.y,b.size,0,Math.PI*2),l.fill()}),h.current=requestAnimationFrame(g)}},[l,u,s]);return E.useEffect(()=>{if(l)return g(),()=>{h.current&&cancelAnimationFrame(h.current)}},[l,g]),p.jsx("div",{className:M("relative h-full w-full overflow-hidden",t),children:p.jsx("canvas",{ref:a,className:"absolute inset-0 h-full w-full"})})},AO=({children:e,className:t,spotlightColor:n})=>{const r=E.useRef(null),[o,s]=E.useState({x:0,y:0}),[i,a]=E.useState(0),{theme:l}=hs(),c=n||(l==="dark"?"rgba(255, 255, 255, 0.25)":"rgba(37, 99, 235, 0.3)"),u=g=>{if(!r.current)return;const b=r.current.getBoundingClientRect();s({x:g.clientX-b.left,y:g.clientY-b.top})},f=()=>{a(1)},h=()=>{a(0)},m=()=>{a(1)},y=()=>{a(0)};return p.jsxs("div",{ref:r,onMouseMove:u,onMouseEnter:m,onMouseLeave:y,onFocus:f,onBlur:h,className:M("relative overflow-hidden rounded-xl border border-border bg-card text-card-foreground shadow",t),children:[p.jsx("div",{className:"pointer-events-none absolute -inset-px transition duration-300",style:{opacity:i,background:`radial-gradient(600px circle at ${o.x}px ${o.y}px, ${c}, transparent 40%)`}}),p.jsx("div",{className:"relative h-full",children:e})]})},d0=["#0f172a","#000000","#171717"],Nl=["linear-gradient(to bottom right, #06b6d4, #10b981)","linear-gradient(to bottom right, #ec4899, #6366f1)","linear-gradient(to bottom right, #f97316, #eab308)"],NO=({content:e,contentClassName:t})=>{const[n,r]=E.useState(0),o=E.useRef(null),{scrollYProgress:s}=Hb({container:o,offset:["start start","end start"],layoutEffect:!1}),i=e.length;R_(s,"change",c=>{const u=e.map((h,m)=>m/i),f=u.reduce((h,m,y)=>Math.abs(c-m)<Math.abs(c-u[h])?y:h,0);r(f)});const[a,l]=E.useState(Nl[0]);return E.useEffect(()=>{l(Nl[n%Nl.length])},[n]),p.jsxs(oe.div,{animate:{backgroundColor:d0[n%d0.length]},className:"h-[30rem] overflow-y-auto flex justify-center relative space-x-10 rounded-md p-10",ref:o,children:[p.jsx("div",{className:"div relative flex items-start px-4",children:p.jsxs("div",{className:"max-w-2xl",children:[e.map((c,u)=>p.jsxs("div",{className:"my-20",children:[p.jsx(oe.h2,{initial:{opacity:0},animate:{opacity:n===u?1:.3},className:"text-2xl font-bold text-slate-100",children:c.title}),p.jsx(oe.p,{initial:{opacity:0},animate:{opacity:n===u?1:.3},className:"text-kg text-slate-300 max-w-sm mt-10",children:c.description})]},c.title+u)),p.jsx("div",{className:"h-40"})]})}),p.jsx("div",{style:{background:a},className:M("hidden lg:block h-60 w-80 rounded-md bg-white sticky top-10 overflow-hidden",t),children:e[n].content??null})]})},MO=({words:e,className:t})=>{const[n,r]=Bk(),o=e.split(" ");E.useEffect(()=>{r("span",{opacity:1},{duration:2,delay:Uk(.2)})},[r]);const s=()=>p.jsx(oe.div,{ref:n,children:o.map((i,a)=>p.jsxs(oe.span,{className:"dark:text-white text-black opacity-0",children:[i," "]},i+a))});return p.jsx("div",{className:M("font-bold",t),children:p.jsx("div",{className:"mt-4",children:p.jsx("div",{className:" dark:text-white text-black text-2xl leading-snug tracking-wide",children:s()})})})},IO=({text:e,className:t,delay:n=0,duration:r=.5})=>{const o=E.useRef(null),s=Hk(o,{once:!0,margin:"-10%"}),i=e.split(" "),a={hidden:{opacity:0},visible:(c=1)=>({opacity:1,transition:{staggerChildren:.12,delayChildren:.04*c+n}})},l={visible:{opacity:1,y:0,transition:{type:"spring",damping:12,stiffness:100,duration:r,filter:{type:"tween",duration:r}},filter:"blur(0px)"},hidden:{opacity:0,y:20,filter:"blur(2px)"}};return p.jsx(oe.div,{ref:o,style:{overflow:"hidden",display:"flex",flexWrap:"wrap"},variants:a,initial:"hidden",animate:s?"visible":"hidden",className:M("text-4xl font-bold text-black dark:text-white",t),children:i.map((c,u)=>p.jsx(oe.span,{variants:l,style:{marginRight:"0.25em"},className:"inline-block",children:c},u))})},DO=({children:e,className:t,container:n})=>{const r=E.useRef(null),{scrollYProgress:o}=Hb({target:r,container:n,offset:["start start","end start"],layoutEffect:!1}),s=E.useRef(null),[i,a]=E.useState(0);E.useEffect(()=>{if(!s.current)return;const u=()=>{s.current&&a(s.current.offsetHeight)};u();const f=new ResizeObserver(u);return f.observe(s.current),()=>f.disconnect()},[]);const l=Sr(zt(o,[0,.8],[50,i]),{stiffness:500,damping:90}),c=Sr(zt(o,[0,1],[50,i-200]),{stiffness:500,damping:90});return p.jsxs(oe.div,{ref:r,className:M("relative w-full max-w-4xl mx-auto h-full",t),children:[p.jsxs("div",{className:"absolute left-0 top-3",children:[p.jsx(oe.div,{transition:{duration:.2,delay:.5},animate:{boxShadow:o.get()>0?"none":"rgba(0, 0, 0, 0.24) 0px 3px 8px"},className:"ml-[27px] h-4 w-4 rounded-full border border-netural-200 shadow-sm flex items-center justify-center",children:p.jsx(oe.div,{transition:{duration:.2,delay:.5},animate:{backgroundColor:o.get()>0?"#ffffff":"#10b981",borderColor:o.get()>0?"#ffffff":"#059669"},className:"h-2 w-2 rounded-full border border-neutral-300 bg-white"})}),p.jsxs("svg",{viewBox:`0 0 20 ${i}`,width:"20",height:i,className:" ml-4 block","aria-hidden":"true",children:[p.jsx(oe.path,{d:`M 1 0V -36 l 18 24 V ${i*.8} l -18 24V ${i}`,fill:"none",stroke:"#9091A0",strokeOpacity:"0.16",transition:{duration:10}}),p.jsx(oe.path,{d:`M 1 0V -36 l 18 24 V ${i*.8} l -18 24V ${i}`,fill:"none",stroke:"url(#gradient)",strokeWidth:"1.25",className:"motion-reduce:hidden",transition:{duration:10}}),p.jsx("defs",{children:p.jsxs(oe.linearGradient,{id:"gradient",gradientUnits:"userSpaceOnUse",x1:"0",x2:"0",y1:l,y2:c,children:[p.jsx("stop",{stopColor:"#18CCFC",stopOpacity:"0"}),p.jsx("stop",{stopColor:"#18CCFC"}),p.jsx("stop",{offset:"0.325",stopColor:"#6344F5"}),p.jsx("stop",{offset:"1",stopColor:"#AE48FF",stopOpacity:"0"})]})})]})]}),p.jsx("div",{ref:s,className:"ml-10",children:e})]})},_O=1/3,et=1/6,Ml=e=>Math.floor(e)|0,Il=new Float64Array([1,1,0,-1,1,0,1,-1,0,-1,-1,0,1,0,1,-1,0,1,1,0,-1,-1,0,-1,0,1,1,0,-1,1,0,1,-1,0,-1,-1]);function f0(e=Math.random){const t=kO(e),n=new Float64Array(t).map(s=>Il[s%12*3]),r=new Float64Array(t).map(s=>Il[s%12*3+1]),o=new Float64Array(t).map(s=>Il[s%12*3+2]);return function(i,a,l){let c,u,f,h;const m=(i+a+l)*_O,y=Ml(i+m),g=Ml(a+m),v=Ml(l+m),b=(y+g+v)*et,w=y-b,x=g-b,S=v-b,C=i-w,T=a-x,A=l-S;let N,I,O,k,L,W;C>=T?T>=A?(N=1,I=0,O=0,k=1,L=1,W=0):C>=A?(N=1,I=0,O=0,k=1,L=0,W=1):(N=0,I=0,O=1,k=1,L=0,W=1):T<A?(N=0,I=0,O=1,k=0,L=1,W=1):C<A?(N=0,I=1,O=0,k=0,L=1,W=1):(N=0,I=1,O=0,k=1,L=1,W=0);const F=C-N+et,Y=T-I+et,U=A-O+et,H=C-k+2*et,V=T-L+2*et,B=A-W+2*et,ee=C-1+3*et,te=T-1+3*et,D=A-1+3*et,G=y&255,R=g&255,$=v&255;let K=.6-C*C-T*T-A*A;if(K<0)c=0;else{const Z=G+t[R+t[$]];K*=K,c=K*K*(n[Z]*C+r[Z]*T+o[Z]*A)}let z=.6-F*F-Y*Y-U*U;if(z<0)u=0;else{const Z=G+N+t[R+I+t[$+O]];z*=z,u=z*z*(n[Z]*F+r[Z]*Y+o[Z]*U)}let X=.6-H*H-V*V-B*B;if(X<0)f=0;else{const Z=G+k+t[R+L+t[$+W]];X*=X,f=X*X*(n[Z]*H+r[Z]*V+o[Z]*B)}let q=.6-ee*ee-te*te-D*D;if(q<0)h=0;else{const Z=G+1+t[R+1+t[$+1]];q*=q,h=q*q*(n[Z]*ee+r[Z]*te+o[Z]*D)}return 32*(c+u+f+h)}}function kO(e){const n=new Uint8Array(512);for(let r=0;r<512/2;r++)n[r]=r;for(let r=0;r<512/2-1;r++){const o=r+~~(e()*(256-r)),s=n[r];n[r]=n[o],n[o]=s}for(let r=256;r<512;r++)n[r]=n[r-256];return n}const OO=f0(),LO=Math.PI*2,En=e=>e*Math.random(),VO=e=>e-En(2*e),$O=(e,t)=>{const n=.5*t;return Math.abs((e+n)%t-n)/n},p0=(e,t,n)=>(1-n)*e+n*t,FO=(e,t,n)=>e>n.width||e<0||t>n.height||t<0,RO=(e,t)=>{t.save(),t.filter="blur(8px) brightness(200%)",t.globalCompositeOperation="lighter",t.drawImage(e,0,0),t.restore(),t.save(),t.filter="blur(4px) brightness(200%)",t.globalCompositeOperation="lighter",t.drawImage(e,0,0),t.restore()},BO=(e,t)=>{t.save(),t.globalCompositeOperation="lighter",t.drawImage(e,0,0),t.restore()},zO=({children:e,className:t,containerClassName:n,particleCount:r=700,baseHue:o=220,baseSpeed:s=0,rangeSpeed:i=1.5,baseRadius:a=1,rangeRadius:l=2,backgroundColor:c="#000000"})=>{const u=E.useRef(null),f=E.useRef(null),h=9,m=r*h,y=100,g=50,v=150,b=s,w=i,x=a,S=l,C=o,T=20,A=3,N=.00125,I=.00125,O=5e-4,k=E.useRef(c),L=E.useRef(0),W=E.useRef(new Float32Array(m)),F=E.useRef([0,0]),Y=E.useRef(),U=E.useCallback(R=>{const $=u.current;if(!$)return;const K=En($.width),z=F.current[1]+VO(y),X=0,q=0,Z=0,se=g+En(v),ne=b+En(w),be=x+En(S),Pe=C+En(T);W.current.set([K,z,X,q,Z,se,ne,be,Pe],R)},[y,g,v,b,w,x,S,C,T]),H=E.useCallback(()=>{L.current=0,W.current=new Float32Array(m);for(let R=0;R<m;R+=h)U(R)},[U,m]),V=E.useCallback((R,$,K,z,X,q,Z,se,ne)=>{ne.save(),ne.lineCap="round",ne.lineWidth=Z,ne.strokeStyle=`hsla(${se},100%,60%,${$O(X,q)})`,ne.beginPath(),ne.moveTo(R,$),ne.lineTo(K,z),ne.stroke(),ne.closePath(),ne.restore()},[]),B=E.useCallback((R,$)=>{const K=u.current;if(!K)return;const z=1+R,X=2+R,q=3+R,Z=4+R,se=5+R,ne=6+R,be=7+R,Pe=8+R,tt=W.current[R],nt=W.current[z],At=OO(tt*N,nt*I,L.current*O)*A*LO,ls=p0(W.current[X],Math.cos(At),.5),Wt=p0(W.current[q],Math.sin(At),.5);let cs=W.current[Z];const g0=W.current[se],v0=W.current[ne],y0=tt+ls*v0,b0=nt+Wt*v0,KO=W.current[be],YO=W.current[Pe];V(tt,nt,y0,b0,cs,g0,KO,YO,$),cs++,W.current[R]=y0,W.current[z]=b0,W.current[X]=ls,W.current[q]=Wt,W.current[Z]=cs,(FO(tt,nt,K)||cs>g0)&&U(R)},[V,U]),ee=E.useCallback(R=>{for(let $=0;$<m;$+=h)B($,R)},[B,m]),te=E.useCallback((R,$)=>{L.current++,$.clearRect(0,0,R.width,R.height),$.fillStyle=k.current,$.fillRect(0,0,R.width,R.height),ee($),RO(R,$),BO(R,$),Y.current=window.requestAnimationFrame(()=>te(R,$))},[ee]),D=E.useCallback(R=>{const{innerWidth:$,innerHeight:K}=window;R.width=$,R.height=K,F.current[0]=.5*R.width,F.current[1]=.5*R.height},[]),G=E.useCallback(()=>{const R=u.current,$=f.current;if(R&&$){const K=R.getContext("2d");K&&(D(R),H(),te(R,K))}},[te,H,D]);return E.useEffect(()=>{k.current=c},[c]),E.useEffect(()=>{G();const R=()=>{const $=u.current,K=$==null?void 0:$.getContext("2d");$&&K&&D($)};return window.addEventListener("resize",R),()=>{window.removeEventListener("resize",R),Y.current&&window.cancelAnimationFrame(Y.current)}},[G,D]),p.jsxs("div",{className:M("relative h-full w-full",n),children:[p.jsx(oe.div,{initial:{opacity:0},animate:{opacity:1},ref:f,className:"absolute h-full w-full inset-0 z-0 bg-transparent flex items-center justify-center",children:p.jsx("canvas",{ref:u})}),p.jsx("div",{className:M("relative z-10",t),children:e})]})},WO=({children:e,className:t,containerClassName:n,colors:r,waveWidth:o,backgroundFill:s,blur:i=10,speed:a="fast",waveOpacity:l=.5,...c})=>{const u=f0(),f=E.useRef(null),h=E.useRef(),m=E.useRef(null),y=E.useRef(0),g=E.useRef(0),v=E.useRef(0),b=E.useCallback(()=>{switch(a){case"slow":return .001;case"fast":return .002;default:return .001}},[a]),w=E.useMemo(()=>r??["#38bdf8","#818cf8","#c084fc","#e879f9","#22d3ee"],[r]),x=E.useCallback(N=>{const I=m.current;if(I){v.current+=b();for(let O=0;O<N;O++){I.beginPath(),I.lineWidth=o||50,I.strokeStyle=w[O%w.length];for(let k=0;k<y.current;k+=5){const L=u(k/800,.3*O,v.current)*100;I.lineTo(k,L+g.current*.5)}I.stroke(),I.closePath()}}},[b,u,w,o]),S=E.useCallback(()=>{const N=m.current;N&&(N.fillStyle=s||"black",N.globalAlpha=l||.5,N.fillRect(0,0,y.current,g.current),x(5),h.current=requestAnimationFrame(S))},[s,x,l]),C=E.useCallback(()=>{const N=f.current;if(!N)return;const I=N.getContext("2d");I&&(m.current=I,y.current=I.canvas.width=window.innerWidth,g.current=I.canvas.height=window.innerHeight,I.filter=`blur(${i}px)`,v.current=0,S())},[i,S]);E.useEffect(()=>{C();const N=()=>{const I=m.current;I&&(y.current=I.canvas.width=window.innerWidth,g.current=I.canvas.height=window.innerHeight,I.filter=`blur(${i}px)`)};return window.addEventListener("resize",N),()=>{window.removeEventListener("resize",N),h.current&&cancelAnimationFrame(h.current)}},[i,C]);const[T,A]=E.useState(!1);return E.useEffect(()=>{A(typeof window<"u"&&navigator.userAgent.includes("Safari")&&!navigator.userAgent.includes("Chrome"))},[]),p.jsxs("div",{className:M("h-screen flex flex-col items-center justify-center",n),children:[p.jsx("canvas",{className:"absolute inset-0 z-0",ref:f,id:"canvas",style:{...T?{filter:`blur(${i}px)`}:{}}}),p.jsx("div",{className:M("relative z-10",t),...c,children:e})]})},h0=E.createContext(void 0),HO=({children:e,className:t,containerClassName:n})=>{const r=E.useRef(null),[o,s]=E.useState(!1),i=c=>{if(!r.current)return;const{left:u,top:f,width:h,height:m}=r.current.getBoundingClientRect(),y=(c.clientX-u-h/2)/25,g=(c.clientY-f-m/2)/25;r.current.style.transform=`rotateY(${y}deg) rotateX(${g*-1}deg)`},a=()=>{s(!0),r.current},l=()=>{r.current&&(s(!1),r.current.style.transform="rotateY(0deg) rotateX(0deg)")};return p.jsx(h0.Provider,{value:[o,s],children:p.jsx("div",{className:M("py-20 flex items-center justify-center",n),style:{perspective:"1000px"},children:p.jsx("div",{ref:r,onMouseEnter:a,onMouseMove:i,onMouseLeave:l,className:M("flex items-center justify-center relative transition-all duration-200 ease-linear",t),style:{transformStyle:"preserve-3d"},children:e})})})},jO=({children:e,className:t})=>p.jsx("div",{className:M("h-96 w-96 [transform-style:preserve-3d] [&>*]:[transform-style:preserve-3d]",t),children:e}),UO=({as:e="div",children:t,className:n,translateX:r=0,translateY:o=0,translateZ:s=0,rotateX:i=0,rotateY:a=0,rotateZ:l=0,...c})=>{const u=E.useRef(null),[f]=m0();E.useEffect(()=>{h()},[f]);const h=()=>{u.current&&(f?u.current.style.transform=`translateX(${r}px) translateY(${o}px) translateZ(${s}px) rotateX(${i}deg) rotateY(${a}deg) rotateZ(${l}deg)`:u.current.style.transform="translateX(0px) translateY(0px) translateZ(0px) rotateX(0deg) rotateY(0deg) rotateZ(0deg)")};return p.jsx(e,{ref:u,className:M("w-fit transition-all duration-200 ease-linear",n),...c,children:t})},m0=()=>{const e=E.useContext(h0);if(e===void 0)throw new Error("useMouseEnter must be used within a MouseEnterProvider");return e},GO=({className:e,children:t,showRadialGradient:n=!0,...r})=>p.jsxs("div",{className:M("relative flex flex-col h-[100vh] items-center justify-center bg-zinc-50 dark:bg-zinc-900 text-slate-950 transition-bg",e),...r,children:[p.jsx("div",{className:"absolute inset-0 overflow-hidden",children:p.jsx("div",{className:M(`
|
|
140
|
+
`,opacity:o}})]})}const xO=({children:e,className:t,...n})=>{const r=E.useRef(null),[o,s]=E.useState({x:0,y:0}),i=l=>{const{clientX:c,clientY:u}=l,{left:f,top:h,width:m,height:y}=l.currentTarget.getBoundingClientRect(),g=(c-(f+m/2))*.35,v=(u-(h+y/2))*.35;s({x:g,y:v})},a=()=>{s({x:0,y:0})};return p.jsxs(oe.button,{ref:r,onMouseMove:i,onMouseLeave:a,animate:{x:o.x,y:o.y},transition:{type:"spring",stiffness:150,damping:15,mass:.1},className:M("relative inline-flex h-12 overflow-hidden rounded-full p-[1px] focus:outline-none focus:ring-2 focus:ring-slate-400 focus:ring-offset-2 focus:ring-offset-slate-50",t),...n,children:[p.jsx("span",{className:"absolute inset-[-1000%] animate-[spin_2s_linear_infinite] bg-[conic-gradient(from_90deg_at_50%_50%,#E2CBFF_0%,#393BB2_50%,#E2CBFF_100%)]"}),p.jsx("span",{className:"inline-flex h-full w-full cursor-pointer items-center justify-center rounded-full bg-slate-950 px-6 py-1 text-sm font-medium text-white backdrop-blur-3xl",children:e})]})};function SO({borderRadius:e="1.75rem",children:t,as:n="button",containerClassName:r,borderClassName:o,duration:s,className:i,...a}){return p.jsxs(n,{className:M("bg-transparent relative text-xl h-16 w-40 p-[1px] overflow-hidden ",r),style:{borderRadius:e},...a,children:[p.jsx("div",{className:"absolute inset-0",style:{borderRadius:`calc(${e} * 0.96)`},children:p.jsx(u0,{duration:s,rx:"30%",ry:"30%",children:p.jsx("div",{className:M("h-20 w-20 opacity-[0.8] bg-[radial-gradient(#0ea5e9_40%,transparent_60%)]",o)})})}),p.jsx("div",{className:M("relative bg-slate-900/[0.8] border border-slate-800 backdrop-blur-xl text-white flex items-center justify-center w-full h-full text-sm antialiased",i),style:{borderRadius:`calc(${e} * 0.96)`},children:t})]})}const u0=({children:e,duration:t=2e3,rx:n,ry:r,...o})=>{const s=E.useRef(null),i=Tt(0);pk(u=>{var h;const f=(h=s.current)==null?void 0:h.getTotalLength();if(f){const m=f/t;i.set(u*m%f)}});const a=zt(i,u=>{var f;return(f=s.current)==null?void 0:f.getPointAtLength(u).x}),l=zt(i,u=>{var f;return(f=s.current)==null?void 0:f.getPointAtLength(u).y}),c=Cl`translateX(${a}px) translateY(${l}px) translateX(-50%) translateY(-50%)`;return p.jsxs(p.Fragment,{children:[p.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"none",className:"absolute h-full w-full",width:"100%",height:"100%",...o,children:p.jsx("rect",{fill:"none",width:"100%",height:"100%",rx:n,ry:r,ref:s})}),p.jsx(oe.div,{style:{position:"absolute",top:0,left:0,display:"inline-block",transform:c},children:e})]})},CO=({className:e,children:t,borderSize:n=2,borderRadius:r=20,neonColors:o={firstColor:"#ff00aa",secondColor:"#00FFF1"},...s})=>p.jsxs("div",{className:M("relative overflow-hidden z-0",e),style:{borderRadius:r,...s.style},...s,children:[p.jsx("div",{className:"absolute top-0 left-0 w-full h-full -z-10 animate-[spin_4s_linear_infinite]",style:{background:`conic-gradient(from 0deg, transparent 0 340deg, ${o.firstColor} 360deg)`,top:"-50%",left:"-50%",width:"200%",height:"200%"}}),p.jsx("div",{className:"absolute top-0 left-0 w-full h-full -z-10 animate-[spin_4s_linear_infinite]",style:{background:`conic-gradient(from 180deg, transparent 0 340deg, ${o.secondColor} 360deg)`,top:"-50%",left:"-50%",width:"200%",height:"200%",animationDelay:"-2s"}}),p.jsx("div",{className:"relative bg-background z-10 w-[calc(100%-4px)] h-[calc(100%-4px)] m-[2px]",style:{borderRadius:r-n},children:t})]}),EO=({className:e,particleCount:t=50,particleColor:n})=>{const r=E.useRef(null),o=E.useRef(null),{theme:s}=hs();return E.useEffect(()=>{const i=r.current;if(!i)return;const a=i.getContext("2d");if(!a)return;let l=[],c;const u=()=>{var m,y;i.width=((m=o.current)==null?void 0:m.offsetWidth)||window.innerWidth,i.height=((y=o.current)==null?void 0:y.offsetHeight)||window.innerHeight,f()},f=()=>{l=[];for(let m=0;m<t;m++)l.push({x:Math.random()*i.width,y:Math.random()*i.height,vx:(Math.random()-.5)*.5,vy:(Math.random()-.5)*.5,size:Math.random()*2+.5})},h=()=>{a.clearRect(0,0,i.width,i.height);const m=n||(s==="dark"?"rgba(255, 255, 255, 0.5)":"rgba(0, 0, 0, 0.7)"),y=n||(s==="dark"?"rgba(255, 255, 255, 0.15)":"rgba(0, 0, 0, 0.3)");l.forEach((g,v)=>{g.x+=g.vx,g.y+=g.vy,(g.x<0||g.x>i.width)&&(g.vx*=-1),(g.y<0||g.y>i.height)&&(g.vy*=-1),a.beginPath(),a.arc(g.x,g.y,g.size,0,Math.PI*2),a.fillStyle=m,a.fill();for(let b=v+1;b<l.length;b++){const w=l[b],x=g.x-w.x,S=g.y-w.y;Math.sqrt(x*x+S*S)<100&&(a.beginPath(),a.strokeStyle=y,a.lineWidth=.5,a.moveTo(g.x,g.y),a.lineTo(w.x,w.y),a.stroke())}}),c=requestAnimationFrame(h)};return u(),h(),window.addEventListener("resize",u),()=>{window.removeEventListener("resize",u),cancelAnimationFrame(c)}},[t,n,s]),p.jsx("div",{ref:o,className:e,style:{position:"relative",overflow:"hidden"},children:p.jsx("canvas",{ref:r,style:{display:"block",width:"100%",height:"100%"}})})},PO=({children:e,className:t,variant:n="blue",...r})=>{const[o,s]=E.useState([]),i=E.useRef(null),a=5;E.useEffect(()=>{if(!i.current)return;const u=()=>{if(!i.current)return;const f=i.current.getBoundingClientRect(),h=f.width,m=f.height,y=[];for(let g=0;g<h;g+=a)for(let v=0;v<m;v+=a)Math.random()>.9&&y.push({x:g,y:v});s(y)};return u(),window.addEventListener("resize",u),()=>window.removeEventListener("resize",u)},[]);const l={default:"bg-neutral-900 border-neutral-800",blue:"bg-slate-900 border-slate-800",pink:"bg-pink-900/20 border-pink-800/50"},c={default:"bg-neutral-500",blue:"bg-blue-500",pink:"bg-pink-500"};return p.jsxs("div",{ref:i,className:M("relative overflow-hidden rounded-xl border p-6 group",l[n],t),...r,children:[p.jsx("div",{className:"absolute inset-0 z-0 opacity-10 pointer-events-none",style:{backgroundImage:`radial-gradient(${n==="pink"?"#ec4899":"#3b82f6"} 1px, transparent 1px)`,backgroundSize:`${a*2}px ${a*2}px`}}),p.jsx("div",{className:"absolute inset-0 z-0 opacity-0 group-hover:opacity-100 transition-opacity duration-500",children:o.map((u,f)=>p.jsx("span",{className:M("absolute w-1 h-1 rounded-full animate-pulse",c[n]),style:{left:u.x,top:u.y,animationDelay:`${Math.random()*2}s`}},f))}),p.jsx("div",{className:"relative z-10",children:e})]})},TO=e=>{const{className:t,minSize:n=1,maxSize:r=3,particleDensity:o=100,particleColor:s="#FFFFFF",speed:i=4}=e,a=E.useRef(null),[l,c]=E.useState(null),[u,f]=E.useState([]),h=E.useRef(),m=E.useCallback((v,b)=>{const w=o,x=[];for(let S=0;S<w;S++)x.push({x:Math.random()*v,y:Math.random()*b,size:Math.random()*(r-n)+n,speedX:(Math.random()-.5)*i,speedY:(Math.random()-.5)*i});f(x)},[r,n,o,i]),y=E.useCallback(()=>{if(a.current){const v=a.current,{width:b,height:w}=v.getBoundingClientRect();v.width=b,v.height=w,m(b,w)}},[m]);E.useEffect(()=>(a.current&&(c(a.current.getContext("2d")),y(),window.addEventListener("resize",y)),()=>{window.removeEventListener("resize",y)}),[y]),E.useEffect(()=>{if(l&&a.current){const{width:v,height:b}=a.current;m(v,b)}},[l,m]);const g=E.useCallback(()=>{if(l&&a.current){const v=a.current;l.clearRect(0,0,v.width,v.height),u.forEach(b=>{b.x+=b.speedX,b.y+=b.speedY,b.x>v.width&&(b.x=0),b.x<0&&(b.x=v.width),b.y>v.height&&(b.y=0),b.y<0&&(b.y=v.height),l.fillStyle=s,l.beginPath(),l.arc(b.x,b.y,b.size,0,Math.PI*2),l.fill()}),h.current=requestAnimationFrame(g)}},[l,u,s]);return E.useEffect(()=>{if(l)return g(),()=>{h.current&&cancelAnimationFrame(h.current)}},[l,g]),p.jsx("div",{className:M("relative h-full w-full overflow-hidden",t),children:p.jsx("canvas",{ref:a,className:"absolute inset-0 h-full w-full"})})},AO=({children:e,className:t,spotlightColor:n})=>{const r=E.useRef(null),[o,s]=E.useState({x:0,y:0}),[i,a]=E.useState(0),{theme:l}=hs(),c=n||(l==="dark"?"rgba(255, 255, 255, 0.25)":"rgba(37, 99, 235, 0.3)"),u=g=>{if(!r.current)return;const b=r.current.getBoundingClientRect();s({x:g.clientX-b.left,y:g.clientY-b.top})},f=()=>{a(1)},h=()=>{a(0)},m=()=>{a(1)},y=()=>{a(0)};return p.jsxs("div",{ref:r,onMouseMove:u,onMouseEnter:m,onMouseLeave:y,onFocus:f,onBlur:h,className:M("relative overflow-hidden rounded-xl border border-border bg-card text-card-foreground shadow",t),children:[p.jsx("div",{className:"pointer-events-none absolute -inset-px transition duration-300",style:{opacity:i,background:`radial-gradient(600px circle at ${o.x}px ${o.y}px, ${c}, transparent 40%)`}}),p.jsx("div",{className:"relative h-full",children:e})]})},d0=["#0f172a","#000000","#171717"],Nl=["linear-gradient(to bottom right, #06b6d4, #10b981)","linear-gradient(to bottom right, #ec4899, #6366f1)","linear-gradient(to bottom right, #f97316, #eab308)"],NO=({content:e,contentClassName:t})=>{const[n,r]=E.useState(0),o=E.useRef(null),{scrollYProgress:s}=Hb({container:o,offset:["start start","end start"],layoutEffect:!1}),i=e.length;R_(s,"change",c=>{const u=e.map((h,m)=>m/i),f=u.reduce((h,m,y)=>Math.abs(c-m)<Math.abs(c-u[h])?y:h,0);r(f)});const[a,l]=E.useState(Nl[0]);return E.useEffect(()=>{l(Nl[n%Nl.length])},[n]),p.jsxs(oe.div,{animate:{backgroundColor:d0[n%d0.length]},className:"h-[30rem] overflow-y-auto flex justify-center relative space-x-10 rounded-md p-10",ref:o,children:[p.jsx("div",{className:"div relative flex items-start px-4",children:p.jsxs("div",{className:"max-w-2xl",children:[e.map((c,u)=>p.jsxs("div",{className:"my-20",children:[p.jsx(oe.h2,{initial:{opacity:0},animate:{opacity:n===u?1:.3},className:"text-2xl font-bold text-slate-100",children:c.title}),p.jsx(oe.p,{initial:{opacity:0},animate:{opacity:n===u?1:.3},className:"text-kg text-slate-300 max-w-sm mt-10",children:c.description})]},c.title+u)),p.jsx("div",{className:"h-40"})]})}),p.jsx("div",{style:{background:a},className:M("hidden lg:block h-60 w-80 rounded-md bg-white sticky top-10 overflow-hidden",t),children:e[n].content??null})]})},MO=({words:e,className:t})=>{const[n,r]=Bk(),o=e.split(" ");E.useEffect(()=>{r("span",{opacity:1},{duration:2,delay:Uk(.2)})},[r]);const s=()=>p.jsx(oe.div,{ref:n,children:o.map((i,a)=>p.jsxs(oe.span,{className:"dark:text-white text-black opacity-0",children:[i," "]},i+a))});return p.jsx("div",{className:M("font-bold",t),children:p.jsx("div",{className:"mt-4",children:p.jsx("div",{className:" dark:text-white text-black text-2xl leading-snug tracking-wide",children:s()})})})},IO=({text:e,className:t,delay:n=0,duration:r=.5})=>{const o=E.useRef(null),s=Hk(o,{once:!0,margin:"-10%"}),i=e.split(" "),a={hidden:{opacity:0},visible:(c=1)=>({opacity:1,transition:{staggerChildren:.12,delayChildren:.04*c+n}})},l={visible:{opacity:1,y:0,transition:{type:"spring",damping:12,stiffness:100,duration:r,filter:{type:"tween",duration:r}},filter:"blur(0px)"},hidden:{opacity:0,y:20,filter:"blur(2px)"}};return p.jsx(oe.div,{ref:o,style:{overflow:"hidden",display:"flex",flexWrap:"wrap"},variants:a,initial:"hidden",animate:s?"visible":"hidden",className:M("text-4xl font-bold text-black dark:text-white",t),children:i.map((c,u)=>p.jsx(oe.span,{variants:l,style:{marginRight:"0.25em"},className:"inline-block",children:c},u))})},DO=({children:e,className:t,container:n})=>{const r=E.useRef(null),{scrollYProgress:o}=Hb({target:r,container:n,offset:["start start","end start"],layoutEffect:!1}),s=E.useRef(null),[i,a]=E.useState(0);E.useEffect(()=>{if(!s.current)return;const u=()=>{s.current&&a(s.current.offsetHeight)};u();const f=new ResizeObserver(u);return f.observe(s.current),()=>f.disconnect()},[]);const l=Sr(zt(o,[0,.8],[50,i]),{stiffness:500,damping:90}),c=Sr(zt(o,[0,1],[50,i-200]),{stiffness:500,damping:90});return p.jsxs(oe.div,{ref:r,className:M("relative w-full max-w-4xl mx-auto h-full",t),children:[p.jsxs("div",{className:"absolute left-0 top-3",children:[p.jsx(oe.div,{transition:{duration:.2,delay:.5},animate:{boxShadow:o.get()>0?"none":"rgba(0, 0, 0, 0.24) 0px 3px 8px"},className:"ml-[27px] h-4 w-4 rounded-full border border-netural-200 shadow-sm flex items-center justify-center",children:p.jsx(oe.div,{transition:{duration:.2,delay:.5},animate:{backgroundColor:o.get()>0?"#ffffff":"#10b981",borderColor:o.get()>0?"#ffffff":"#059669"},className:"h-2 w-2 rounded-full border border-neutral-300 bg-white"})}),p.jsxs("svg",{viewBox:`0 0 20 ${i}`,width:"20",height:i,className:" ml-4 block","aria-hidden":"true",children:[p.jsx(oe.path,{d:`M 1 0V -36 l 18 24 V ${i*.8} l -18 24V ${i}`,fill:"none",stroke:"#9091A0",strokeOpacity:"0.16",transition:{duration:10}}),p.jsx(oe.path,{d:`M 1 0V -36 l 18 24 V ${i*.8} l -18 24V ${i}`,fill:"none",stroke:"url(#gradient)",strokeWidth:"1.25",className:"motion-reduce:hidden",transition:{duration:10}}),p.jsx("defs",{children:p.jsxs(oe.linearGradient,{id:"gradient",gradientUnits:"userSpaceOnUse",x1:"0",x2:"0",y1:l,y2:c,children:[p.jsx("stop",{stopColor:"#18CCFC",stopOpacity:"0"}),p.jsx("stop",{stopColor:"#18CCFC"}),p.jsx("stop",{offset:"0.325",stopColor:"#6344F5"}),p.jsx("stop",{offset:"1",stopColor:"#AE48FF",stopOpacity:"0"})]})})]})]}),p.jsx("div",{ref:s,className:"ml-10",children:e})]})},_O=1/3,et=1/6,Ml=e=>Math.floor(e)|0,Il=new Float64Array([1,1,0,-1,1,0,1,-1,0,-1,-1,0,1,0,1,-1,0,1,1,0,-1,-1,0,-1,0,1,1,0,-1,1,0,1,-1,0,-1,-1]);function f0(e=Math.random){const t=kO(e),n=new Float64Array(t).map(s=>Il[s%12*3]),r=new Float64Array(t).map(s=>Il[s%12*3+1]),o=new Float64Array(t).map(s=>Il[s%12*3+2]);return function(i,a,l){let c,u,f,h;const m=(i+a+l)*_O,y=Ml(i+m),g=Ml(a+m),v=Ml(l+m),b=(y+g+v)*et,w=y-b,x=g-b,S=v-b,C=i-w,T=a-x,A=l-S;let N,I,O,k,L,W;C>=T?T>=A?(N=1,I=0,O=0,k=1,L=1,W=0):C>=A?(N=1,I=0,O=0,k=1,L=0,W=1):(N=0,I=0,O=1,k=1,L=0,W=1):T<A?(N=0,I=0,O=1,k=0,L=1,W=1):C<A?(N=0,I=1,O=0,k=0,L=1,W=1):(N=0,I=1,O=0,k=1,L=1,W=0);const F=C-N+et,Y=T-I+et,U=A-O+et,H=C-k+2*et,V=T-L+2*et,B=A-W+2*et,ee=C-1+3*et,te=T-1+3*et,D=A-1+3*et,G=y&255,R=g&255,$=v&255;let K=.6-C*C-T*T-A*A;if(K<0)c=0;else{const Z=G+t[R+t[$]];K*=K,c=K*K*(n[Z]*C+r[Z]*T+o[Z]*A)}let z=.6-F*F-Y*Y-U*U;if(z<0)u=0;else{const Z=G+N+t[R+I+t[$+O]];z*=z,u=z*z*(n[Z]*F+r[Z]*Y+o[Z]*U)}let X=.6-H*H-V*V-B*B;if(X<0)f=0;else{const Z=G+k+t[R+L+t[$+W]];X*=X,f=X*X*(n[Z]*H+r[Z]*V+o[Z]*B)}let q=.6-ee*ee-te*te-D*D;if(q<0)h=0;else{const Z=G+1+t[R+1+t[$+1]];q*=q,h=q*q*(n[Z]*ee+r[Z]*te+o[Z]*D)}return 32*(c+u+f+h)}}function kO(e){const n=new Uint8Array(512);for(let r=0;r<512/2;r++)n[r]=r;for(let r=0;r<512/2-1;r++){const o=r+~~(e()*(256-r)),s=n[r];n[r]=n[o],n[o]=s}for(let r=256;r<512;r++)n[r]=n[r-256];return n}const OO=f0(),LO=Math.PI*2,En=e=>e*Math.random(),VO=e=>e-En(2*e),$O=(e,t)=>{const n=.5*t;return Math.abs((e+n)%t-n)/n},p0=(e,t,n)=>(1-n)*e+n*t,FO=(e,t,n)=>e>n.width||e<0||t>n.height||t<0,RO=(e,t)=>{t.save(),t.filter="blur(8px) brightness(200%)",t.globalCompositeOperation="lighter",t.drawImage(e,0,0),t.restore(),t.save(),t.filter="blur(4px) brightness(200%)",t.globalCompositeOperation="lighter",t.drawImage(e,0,0),t.restore()},BO=(e,t)=>{t.save(),t.globalCompositeOperation="lighter",t.drawImage(e,0,0),t.restore()},zO=({children:e,className:t,containerClassName:n,particleCount:r=700,baseHue:o=220,baseSpeed:s=0,rangeSpeed:i=1.5,baseRadius:a=1,rangeRadius:l=2,backgroundColor:c="#000000"})=>{const u=E.useRef(null),f=E.useRef(null),h=9,m=r*h,y=100,g=50,v=150,b=s,w=i,x=a,S=l,C=o,T=20,A=3,N=.00125,I=.00125,O=5e-4,k=E.useRef(c),L=E.useRef(0),W=E.useRef(new Float32Array(m)),F=E.useRef([0,0]),Y=E.useRef(),U=E.useCallback(R=>{const $=u.current;if(!$)return;const K=En($.width),z=F.current[1]+VO(y),X=0,q=0,Z=0,se=g+En(v),ne=b+En(w),be=x+En(S),Pe=C+En(T);W.current.set([K,z,X,q,Z,se,ne,be,Pe],R)},[y,g,v,b,w,x,S,C,T]),H=E.useCallback(()=>{L.current=0,W.current=new Float32Array(m);for(let R=0;R<m;R+=h)U(R)},[U,m]),V=E.useCallback((R,$,K,z,X,q,Z,se,ne)=>{ne.save(),ne.lineCap="round",ne.lineWidth=Z,ne.strokeStyle=`hsla(${se},100%,60%,${$O(X,q)})`,ne.beginPath(),ne.moveTo(R,$),ne.lineTo(K,z),ne.stroke(),ne.closePath(),ne.restore()},[]),B=E.useCallback((R,$)=>{const K=u.current;if(!K)return;const z=1+R,X=2+R,q=3+R,Z=4+R,se=5+R,ne=6+R,be=7+R,Pe=8+R,tt=W.current[R],nt=W.current[z],At=OO(tt*N,nt*I,L.current*O)*A*LO,ls=p0(W.current[X],Math.cos(At),.5),Wt=p0(W.current[q],Math.sin(At),.5);let cs=W.current[Z];const g0=W.current[se],v0=W.current[ne],y0=tt+ls*v0,b0=nt+Wt*v0,KO=W.current[be],YO=W.current[Pe];V(tt,nt,y0,b0,cs,g0,KO,YO,$),cs++,W.current[R]=y0,W.current[z]=b0,W.current[X]=ls,W.current[q]=Wt,W.current[Z]=cs,(FO(tt,nt,K)||cs>g0)&&U(R)},[V,U]),ee=E.useCallback(R=>{for(let $=0;$<m;$+=h)B($,R)},[B,m]),te=E.useCallback((R,$)=>{L.current++,$.clearRect(0,0,R.width,R.height),$.fillStyle=k.current,$.fillRect(0,0,R.width,R.height),ee($),RO(R,$),BO(R,$),Y.current=window.requestAnimationFrame(()=>te(R,$))},[ee]),D=E.useCallback(R=>{const{innerWidth:$,innerHeight:K}=window;R.width=$,R.height=K,F.current[0]=.5*R.width,F.current[1]=.5*R.height},[]),G=E.useCallback(()=>{const R=u.current,$=f.current;if(R&&$){const K=R.getContext("2d");K&&(D(R),H(),te(R,K))}},[te,H,D]);return E.useEffect(()=>{k.current=c},[c]),E.useEffect(()=>{G();const R=()=>{const $=u.current,K=$==null?void 0:$.getContext("2d");$&&K&&D($)};return window.addEventListener("resize",R),()=>{window.removeEventListener("resize",R),Y.current&&window.cancelAnimationFrame(Y.current)}},[G,D]),p.jsxs("div",{className:M("relative h-full w-full",n),children:[p.jsx(oe.div,{initial:{opacity:0},animate:{opacity:1},ref:f,className:"absolute h-full w-full inset-0 z-0 bg-transparent flex items-center justify-center",children:p.jsx("canvas",{ref:u})}),p.jsx("div",{className:M("relative z-10",t),children:e})]})},WO=({children:e,className:t,containerClassName:n,colors:r,waveWidth:o,backgroundFill:s,blur:i=10,speed:a="fast",waveOpacity:l=.5,...c})=>{const u=f0(),f=E.useRef(null),h=E.useRef(),m=E.useRef(null),y=E.useRef(0),g=E.useRef(0),v=E.useRef(0),b=E.useCallback(()=>{switch(a){case"slow":return .001;case"fast":return .002;default:return .001}},[a]),w=E.useMemo(()=>r??["#38bdf8","#818cf8","#c084fc","#e879f9","#22d3ee"],[r]),x=E.useCallback(N=>{const I=m.current;if(I){v.current+=b();for(let O=0;O<N;O++){I.beginPath(),I.lineWidth=o||50,I.strokeStyle=w[O%w.length];for(let k=0;k<y.current;k+=5){const L=u(k/800,.3*O,v.current)*100;I.lineTo(k,L+g.current*.5)}I.stroke(),I.closePath()}}},[b,u,w,o]),S=E.useCallback(()=>{const N=m.current;N&&(N.fillStyle=s||"black",N.globalAlpha=l||.5,N.fillRect(0,0,y.current,g.current),x(5),h.current=requestAnimationFrame(S))},[s,x,l]),C=E.useCallback(()=>{const N=f.current;if(!N)return;const I=N.getContext("2d");I&&(m.current=I,y.current=I.canvas.width=window.innerWidth,g.current=I.canvas.height=window.innerHeight,I.filter=`blur(${i}px)`,v.current=0,S())},[i,S]);E.useEffect(()=>{C();const N=()=>{const I=m.current;I&&(y.current=I.canvas.width=window.innerWidth,g.current=I.canvas.height=window.innerHeight,I.filter=`blur(${i}px)`)};return window.addEventListener("resize",N),()=>{window.removeEventListener("resize",N),h.current&&cancelAnimationFrame(h.current)}},[i,C]);const[T,A]=E.useState(!1);return E.useEffect(()=>{A(typeof window<"u"&&navigator.userAgent.includes("Safari")&&!navigator.userAgent.includes("Chrome"))},[]),p.jsxs("div",{className:M("h-screen flex flex-col items-center justify-center",n),children:[p.jsx("canvas",{className:"absolute inset-0 z-0",ref:f,id:"canvas",style:{...T?{filter:`blur(${i}px)`}:{}}}),p.jsx("div",{className:M("relative z-10",t),...c,children:e})]})},h0=E.createContext(void 0),HO=({children:e,className:t,containerClassName:n})=>{const r=E.useRef(null),[o,s]=E.useState(!1),i=c=>{if(!r.current)return;const{left:u,top:f,width:h,height:m}=r.current.getBoundingClientRect(),y=(c.clientX-u-h/2)/25,g=(c.clientY-f-m/2)/25;r.current.style.transform=`rotateY(${y}deg) rotateX(${g*-1}deg)`},a=()=>{s(!0),r.current},l=()=>{r.current&&(s(!1),r.current.style.transform="rotateY(0deg) rotateX(0deg)")};return p.jsx(h0.Provider,{value:[o,s],children:p.jsx("div",{className:M("py-20 flex items-center justify-center",n),style:{perspective:"1000px"},children:p.jsx("div",{ref:r,onMouseEnter:a,onMouseMove:i,onMouseLeave:l,className:M("flex items-center justify-center relative transition-all duration-200 ease-linear",t),style:{transformStyle:"preserve-3d"},children:e})})})},jO=({children:e,className:t})=>p.jsx("div",{className:M("h-96 w-96 [transform-style:preserve-3d] [&>*]:[transform-style:preserve-3d]",t),children:e}),UO=({as:e="div",children:t,className:n,translateX:r=0,translateY:o=0,translateZ:s=0,rotateX:i=0,rotateY:a=0,rotateZ:l=0,...c})=>{const u=E.useRef(null),[f]=m0(),h=E.useCallback(()=>{u.current&&(f?u.current.style.transform=`translateX(${r}px) translateY(${o}px) translateZ(${s}px) rotateX(${i}deg) rotateY(${a}deg) rotateZ(${l}deg)`:u.current.style.transform="translateX(0px) translateY(0px) translateZ(0px) rotateX(0deg) rotateY(0deg) rotateZ(0deg)")},[f,r,o,s,i,a,l]);return E.useEffect(()=>{h()},[h]),p.jsx(e,{ref:u,className:M("w-fit transition-all duration-200 ease-linear",n),...c,children:t})},m0=()=>{const e=E.useContext(h0);if(e===void 0)throw new Error("useMouseEnter must be used within a MouseEnterProvider");return e},GO=({className:e,children:t,showRadialGradient:n=!0,...r})=>p.jsxs("div",{className:M("relative flex flex-col h-[100vh] items-center justify-center bg-zinc-50 dark:bg-zinc-900 text-slate-950 transition-bg",e),...r,children:[p.jsx("div",{className:"absolute inset-0 overflow-hidden",children:p.jsx("div",{className:M(`
|
|
141
141
|
[--white-gradient:repeating-linear-gradient(100deg,#ffffff_0%,#ffffff_7%,transparent_10%,transparent_12%,#ffffff_16%)]
|
|
142
142
|
[--dark-gradient:repeating-linear-gradient(100deg,#000000_0%,#000000_7%,transparent_10%,transparent_12%,#000000_16%)]
|
|
143
143
|
[--aurora:repeating-linear-gradient(100deg,#3b82f6_10%,#6366f1_15%,#93c5fd_20%,#ddd6fe_25%,#60a5fa_30%)]
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bodyhc/blazeui",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "0.2.
|
|
4
|
+
"version": "0.2.3",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"scripts": {
|
|
7
7
|
"dev": "vite",
|
|
@@ -19,7 +19,8 @@
|
|
|
19
19
|
"types": "./dist/types/index.d.ts",
|
|
20
20
|
"import": "./dist/blaze-ui.es.js",
|
|
21
21
|
"require": "./dist/blaze-ui.umd.js"
|
|
22
|
-
}
|
|
22
|
+
},
|
|
23
|
+
"./dist/style.css": "./dist/style.css"
|
|
23
24
|
},
|
|
24
25
|
"files": [
|
|
25
26
|
"dist",
|