@sreedev/my3dui 0.1.5 → 0.1.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.
package/dist/index.cjs CHANGED
@@ -650,7 +650,7 @@ function Grid3D({
650
650
  cellSize,
651
651
  cellThickness: 0.5,
652
652
  cellColor,
653
- sectionSize: (0, import_react9.useMemo)(() => cellSize * 10, [cellSize]),
653
+ sectionSize: cellSize * 10,
654
654
  sectionThickness: 1,
655
655
  sectionColor: cellColor,
656
656
  fadeDistance,
@@ -1587,32 +1587,72 @@ function Modal3D({
1587
1587
  }
1588
1588
 
1589
1589
  // src/components/ui/menu3d.tsx
1590
- var import_react19 = __toESM(require("react"), 1);
1590
+ var React18 = __toESM(require("react"), 1);
1591
1591
  var DropdownMenuPrimitive = __toESM(require("@radix-ui/react-dropdown-menu"), 1);
1592
1592
  var import_jsx_runtime21 = require("react/jsx-runtime");
1593
- var Menu3DContext = import_react19.default.createContext({});
1594
- function Menu3D({ children, trigger, align = "end" }) {
1593
+ function Menu3D({
1594
+ trigger,
1595
+ align = "end",
1596
+ items,
1597
+ children
1598
+ }) {
1599
+ if (process.env.NODE_ENV !== "production") {
1600
+ if (items && children) {
1601
+ console.warn(
1602
+ "Menu3D: Use either `items` or `children`, not both."
1603
+ );
1604
+ }
1605
+ }
1595
1606
  return /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(DropdownMenuPrimitive.Root, { children: [
1596
1607
  /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(DropdownMenuPrimitive.Trigger, { asChild: true, children: trigger }),
1597
1608
  /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
1598
1609
  DropdownMenuPrimitive.Content,
1599
1610
  {
1600
1611
  align,
1612
+ sideOffset: 6,
1601
1613
  className: cn(
1602
- "z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
1603
- "bg-white/90 dark:bg-slate-900/90 backdrop-blur-xl border-white/20 shadow-xl"
1614
+ "z-50 min-w-[180px] overflow-hidden rounded-xl border p-1",
1615
+ "bg-white/90 dark:bg-slate-900/90 backdrop-blur-xl",
1616
+ "border-white/20 shadow-xl",
1617
+ "animate-in fade-in zoom-in-95",
1618
+ "data-[side=bottom]:slide-in-from-top-2",
1619
+ "data-[side=top]:slide-in-from-bottom-2",
1620
+ "data-[side=left]:slide-in-from-right-2",
1621
+ "data-[side=right]:slide-in-from-left-2"
1604
1622
  ),
1605
- children
1623
+ children: items?.length ? items.map((item, i) => /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(
1624
+ DropdownMenuPrimitive.Item,
1625
+ {
1626
+ disabled: item.disabled,
1627
+ onSelect: item.onClick,
1628
+ className: cn(
1629
+ "relative flex items-center gap-2",
1630
+ "cursor-pointer select-none rounded-md px-3 py-2 text-sm",
1631
+ "outline-none transition-colors",
1632
+ "focus:bg-accent focus:text-accent-foreground",
1633
+ "data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
1634
+ item.danger && "text-red-500"
1635
+ ),
1636
+ children: [
1637
+ item.icon && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("span", { className: "text-muted-foreground", children: item.icon }),
1638
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("span", { children: item.label })
1639
+ ]
1640
+ },
1641
+ i
1642
+ )) : children
1606
1643
  }
1607
1644
  ) })
1608
1645
  ] });
1609
1646
  }
1610
- var Menu3DItem = import_react19.default.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
1647
+ var Menu3DItem = React18.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
1611
1648
  DropdownMenuPrimitive.Item,
1612
1649
  {
1613
1650
  ref,
1614
1651
  className: cn(
1615
- "relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
1652
+ "relative flex cursor-pointer select-none items-center",
1653
+ "rounded-md px-3 py-2 text-sm outline-none transition-colors",
1654
+ "focus:bg-accent focus:text-accent-foreground",
1655
+ "data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
1616
1656
  inset && "pl-8",
1617
1657
  className
1618
1658
  ),
@@ -1620,12 +1660,12 @@ var Menu3DItem = import_react19.default.forwardRef(({ className, inset, ...props
1620
1660
  }
1621
1661
  ));
1622
1662
  Menu3DItem.displayName = DropdownMenuPrimitive.Item.displayName;
1623
- var Menu3DLabel = import_react19.default.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
1663
+ var Menu3DLabel = React18.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
1624
1664
  DropdownMenuPrimitive.Label,
1625
1665
  {
1626
1666
  ref,
1627
1667
  className: cn(
1628
- "px-2 py-1.5 text-sm font-semibold",
1668
+ "px-3 py-2 text-xs font-semibold uppercase tracking-wider text-muted-foreground",
1629
1669
  inset && "pl-8",
1630
1670
  className
1631
1671
  ),
@@ -1633,11 +1673,14 @@ var Menu3DLabel = import_react19.default.forwardRef(({ className, inset, ...prop
1633
1673
  }
1634
1674
  ));
1635
1675
  Menu3DLabel.displayName = DropdownMenuPrimitive.Label.displayName;
1636
- var Menu3DSeparator = import_react19.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
1676
+ var Menu3DSeparator = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
1637
1677
  DropdownMenuPrimitive.Separator,
1638
1678
  {
1639
1679
  ref,
1640
- className: cn("-mx-1 my-1 h-px bg-muted", className),
1680
+ className: cn(
1681
+ "-mx-1 my-1 h-px bg-border",
1682
+ className
1683
+ ),
1641
1684
  ...props
1642
1685
  }
1643
1686
  ));
@@ -1786,7 +1829,7 @@ function Select3D({
1786
1829
  }
1787
1830
 
1788
1831
  // src/components/ui/spinner3d.tsx
1789
- var import_react20 = require("react");
1832
+ var import_react19 = require("react");
1790
1833
  var import_fiber2 = require("@react-three/fiber");
1791
1834
  var import_jsx_runtime26 = require("react/jsx-runtime");
1792
1835
  function Spinner3D({
@@ -1794,7 +1837,7 @@ function Spinner3D({
1794
1837
  color = "#22d3ee",
1795
1838
  speed = 1
1796
1839
  }) {
1797
- const ref = (0, import_react20.useRef)(null);
1840
+ const ref = (0, import_react19.useRef)(null);
1798
1841
  const scale = size === "sm" ? 0.5 : size === "lg" ? 1.5 : 1;
1799
1842
  (0, import_fiber2.useFrame)((state, delta) => {
1800
1843
  if (ref.current) {
@@ -1862,7 +1905,7 @@ function Stepper3D({
1862
1905
  }
1863
1906
 
1864
1907
  // src/components/ui/navbar3d.tsx
1865
- var import_react21 = require("react");
1908
+ var import_react20 = require("react");
1866
1909
  var import_drei6 = require("@react-three/drei");
1867
1910
  var import_jsx_runtime28 = require("react/jsx-runtime");
1868
1911
  function NavBar3D({ items, activeHref = "/" }) {
@@ -1879,7 +1922,7 @@ function NavBar3D({ items, activeHref = "/" }) {
1879
1922
  ] });
1880
1923
  }
1881
1924
  function NavBarItemMesh({ item, x, isActive }) {
1882
- const [hovered, setHover] = (0, import_react21.useState)(false);
1925
+ const [hovered, setHover] = (0, import_react20.useState)(false);
1883
1926
  return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("group", { position: [x, 0, 0], children: [
1884
1927
  /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
1885
1928
  "mesh",
@@ -4731,7 +4774,7 @@ var InputOTPSeparator = React58.forwardRef(
4731
4774
  InputOTPSeparator.displayName = "InputOTPSeparator";
4732
4775
 
4733
4776
  // src/components/ui/barchart3d.tsx
4734
- var import_react22 = require("react");
4777
+ var import_react21 = require("react");
4735
4778
  var import_fiber3 = require("@react-three/fiber");
4736
4779
  var import_drei8 = require("@react-three/drei");
4737
4780
  var import_jsx_runtime72 = require("react/jsx-runtime");
@@ -4742,7 +4785,7 @@ function BarChart3D({
4742
4785
  gap = 0.2,
4743
4786
  animated = true
4744
4787
  }) {
4745
- const maxValue = (0, import_react22.useMemo)(() => Math.max(...data.map((d) => d.value)), [data]);
4788
+ const maxValue = (0, import_react21.useMemo)(() => Math.max(...data.map((d) => d.value)), [data]);
4746
4789
  return /* @__PURE__ */ (0, import_jsx_runtime72.jsxs)("group", { children: [
4747
4790
  /* @__PURE__ */ (0, import_jsx_runtime72.jsx)("gridHelper", { args: [data.length * (barSize + gap) + 2, 10], position: [0, 0, 0] }),
4748
4791
  /* @__PURE__ */ (0, import_jsx_runtime72.jsxs)(import_drei8.Instances, { range: data.length, children: [
@@ -4777,8 +4820,8 @@ function BarChart3D({
4777
4820
  ] });
4778
4821
  }
4779
4822
  function BarInstance({ height, color, animated }) {
4780
- const ref = (0, import_react22.useRef)(null);
4781
- const [hovered, setHover] = (0, import_react22.useState)(false);
4823
+ const ref = (0, import_react21.useRef)(null);
4824
+ const [hovered, setHover] = (0, import_react21.useState)(false);
4782
4825
  (0, import_fiber3.useFrame)((state, delta) => {
4783
4826
  if (ref.current) {
4784
4827
  const targetHeight = height;
@@ -4806,7 +4849,7 @@ function BarInstance({ height, color, animated }) {
4806
4849
  }
4807
4850
 
4808
4851
  // src/components/ui/linechart3d.tsx
4809
- var import_react23 = require("react");
4852
+ var import_react22 = require("react");
4810
4853
  var import_drei9 = require("@react-three/drei");
4811
4854
  var import_three3 = require("three");
4812
4855
  var import_jsx_runtime73 = (
@@ -4820,7 +4863,7 @@ function LineChart3D({
4820
4863
  lineWidth = 3,
4821
4864
  showPoints = true
4822
4865
  }) {
4823
- const points = (0, import_react23.useMemo)(() => {
4866
+ const points = (0, import_react22.useMemo)(() => {
4824
4867
  if (data.length === 0) return [];
4825
4868
  const maxX = Math.max(...data.map((d) => d.x));
4826
4869
  const maxY = Math.max(...data.map((d) => d.y));
@@ -4832,7 +4875,7 @@ function LineChart3D({
4832
4875
  0
4833
4876
  ));
4834
4877
  }, [data]);
4835
- const curve = (0, import_react23.useMemo)(() => {
4878
+ const curve = (0, import_react22.useMemo)(() => {
4836
4879
  if (points.length < 2 || !smooth) return null;
4837
4880
  return new import_three3.CatmullRomCurve3(points);
4838
4881
  }, [points, smooth]);
@@ -4858,7 +4901,7 @@ function LineChart3D({
4858
4901
  }
4859
4902
 
4860
4903
  // src/components/ui/piechart3d.tsx
4861
- var import_react24 = __toESM(require("react"), 1);
4904
+ var import_react23 = __toESM(require("react"), 1);
4862
4905
  var import_three4 = require("three");
4863
4906
  var import_fiber4 = require("@react-three/fiber");
4864
4907
  var import_drei10 = require("@react-three/drei");
@@ -4870,7 +4913,7 @@ function PieChart3D({
4870
4913
  explode = true,
4871
4914
  donut = false
4872
4915
  }) {
4873
- const total = (0, import_react24.useMemo)(() => data.reduce((acc, cur) => acc + cur.value, 0), [data]);
4916
+ const total = (0, import_react23.useMemo)(() => data.reduce((acc, cur) => acc + cur.value, 0), [data]);
4874
4917
  let startAngle = 0;
4875
4918
  return /* @__PURE__ */ (0, import_jsx_runtime74.jsxs)("group", { rotation: [-Math.PI / 2, 0, 0], children: [
4876
4919
  " ",
@@ -4893,7 +4936,7 @@ function PieChart3D({
4893
4936
  ] });
4894
4937
  }
4895
4938
  function PieSegment({ startAngle, endAngle, radius, color, depth, explode, innerRadius, label }) {
4896
- const shape = (0, import_react24.useMemo)(() => {
4939
+ const shape = (0, import_react23.useMemo)(() => {
4897
4940
  const s = new import_three4.Shape();
4898
4941
  if (innerRadius > 0) {
4899
4942
  s.moveTo(Math.cos(startAngle) * radius, Math.sin(startAngle) * radius);
@@ -4908,8 +4951,8 @@ function PieSegment({ startAngle, endAngle, radius, color, depth, explode, inner
4908
4951
  }
4909
4952
  return s;
4910
4953
  }, [startAngle, endAngle, radius, innerRadius]);
4911
- const [hovered, setHover] = (0, import_react24.useState)(false);
4912
- const ref = import_react24.default.useRef(null);
4954
+ const [hovered, setHover] = (0, import_react23.useState)(false);
4955
+ const ref = import_react23.default.useRef(null);
4913
4956
  const midAngle = (startAngle + endAngle) / 2;
4914
4957
  const explodeDir = [Math.cos(midAngle), Math.sin(midAngle), 0];
4915
4958
  (0, import_fiber4.useFrame)((state, delta) => {
@@ -4944,7 +4987,7 @@ function PieSegment({ startAngle, endAngle, radius, color, depth, explode, inner
4944
4987
  }
4945
4988
 
4946
4989
  // src/components/ui/scatterplot3d.tsx
4947
- var import_react25 = require("react");
4990
+ var import_react24 = require("react");
4948
4991
  var import_drei11 = require("@react-three/drei");
4949
4992
  var import_three5 = require("three");
4950
4993
  var import_fiber5 = require("@react-three/fiber");
@@ -4973,8 +5016,8 @@ function ScatterPlot3D({
4973
5016
  ] });
4974
5017
  }
4975
5018
  function ScatterPointInstance({ position, scale, color }) {
4976
- const ref = (0, import_react25.useRef)(null);
4977
- const [hovered, setHover] = (0, import_react25.useState)(false);
5019
+ const ref = (0, import_react24.useRef)(null);
5020
+ const [hovered, setHover] = (0, import_react24.useState)(false);
4978
5021
  (0, import_fiber5.useFrame)((state) => {
4979
5022
  if (ref.current) {
4980
5023
  const s = hovered ? scale * 1.5 : scale;
@@ -4996,12 +5039,12 @@ function ScatterPointInstance({ position, scale, color }) {
4996
5039
  }
4997
5040
 
4998
5041
  // src/components/ui/graph3d.tsx
4999
- var import_react26 = require("react");
5042
+ var import_react25 = require("react");
5000
5043
  var import_drei12 = require("@react-three/drei");
5001
5044
  var import_three6 = require("three");
5002
5045
  var import_jsx_runtime76 = require("react/jsx-runtime");
5003
5046
  function Graph3D({ nodes, edges, physics = false }) {
5004
- const positionedNodes = (0, import_react26.useMemo)(() => {
5047
+ const positionedNodes = (0, import_react25.useMemo)(() => {
5005
5048
  return nodes.map((node, i) => ({
5006
5049
  ...node,
5007
5050
  vec: new import_three6.Vector3(
@@ -5011,7 +5054,7 @@ function Graph3D({ nodes, edges, physics = false }) {
5011
5054
  )
5012
5055
  }));
5013
5056
  }, [nodes]);
5014
- const nodeMap = (0, import_react26.useMemo)(() => {
5057
+ const nodeMap = (0, import_react25.useMemo)(() => {
5015
5058
  const map = /* @__PURE__ */ new Map();
5016
5059
  positionedNodes.forEach((n) => map.set(n.id, n.vec));
5017
5060
  return map;
@@ -5080,11 +5123,11 @@ function Map3D({
5080
5123
  }
5081
5124
 
5082
5125
  // src/components/ui/gallery3d.tsx
5083
- var import_react28 = require("react");
5126
+ var import_react27 = require("react");
5084
5127
  var import_fiber6 = require("@react-three/fiber");
5085
5128
 
5086
5129
  // src/components/ui/imageplane.tsx
5087
- var import_react27 = require("react");
5130
+ var import_react26 = require("react");
5088
5131
  var import_drei14 = require("@react-three/drei");
5089
5132
  var import_three7 = require("three");
5090
5133
  var import_jsx_runtime78 = require("react/jsx-runtime");
@@ -5097,7 +5140,7 @@ function ImagePlane({
5097
5140
  transparent = true,
5098
5141
  parallax = false
5099
5142
  }) {
5100
- return /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(import_react27.Suspense, { fallback: /* @__PURE__ */ (0, import_jsx_runtime78.jsxs)("mesh", { children: [
5143
+ return /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(import_react26.Suspense, { fallback: /* @__PURE__ */ (0, import_jsx_runtime78.jsxs)("mesh", { children: [
5101
5144
  /* @__PURE__ */ (0, import_jsx_runtime78.jsx)("planeGeometry", { args: [width, width] }),
5102
5145
  /* @__PURE__ */ (0, import_jsx_runtime78.jsx)("meshBasicMaterial", { wireframe: true, color: "gray" })
5103
5146
  ] }), children: /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(
@@ -5139,7 +5182,7 @@ function Gallery3D({
5139
5182
  radius = 5,
5140
5183
  gap = 1.5
5141
5184
  }) {
5142
- const ref = (0, import_react28.useRef)(null);
5185
+ const ref = (0, import_react27.useRef)(null);
5143
5186
  (0, import_fiber6.useFrame)((state, delta) => {
5144
5187
  if (ref.current && layout === "carousel") {
5145
5188
  ref.current.rotation.y += delta * 0.1;
@@ -5168,7 +5211,7 @@ function Gallery3D({
5168
5211
  }
5169
5212
 
5170
5213
  // src/components/ui/modelviewer.tsx
5171
- var import_react29 = require("react");
5214
+ var import_react28 = require("react");
5172
5215
  var import_drei15 = require("@react-three/drei");
5173
5216
  var import_fiber7 = require("@react-three/fiber");
5174
5217
  var import_jsx_runtime80 = require("react/jsx-runtime");
@@ -5179,14 +5222,14 @@ function ModelViewer({
5179
5222
  environment = "studio",
5180
5223
  position = [0, 0, 0]
5181
5224
  }) {
5182
- return /* @__PURE__ */ (0, import_jsx_runtime80.jsx)("group", { position, children: /* @__PURE__ */ (0, import_jsx_runtime80.jsxs)(import_react29.Suspense, { fallback: null, children: [
5225
+ return /* @__PURE__ */ (0, import_jsx_runtime80.jsx)("group", { position, children: /* @__PURE__ */ (0, import_jsx_runtime80.jsxs)(import_react28.Suspense, { fallback: null, children: [
5183
5226
  /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(Model, { src, scale, autoRotate }),
5184
5227
  /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(import_drei15.Environment, { preset: environment })
5185
5228
  ] }) });
5186
5229
  }
5187
5230
  function Model({ src, scale, autoRotate }) {
5188
5231
  const { scene } = (0, import_drei15.useGLTF)(src);
5189
- const ref = (0, import_react29.useRef)(null);
5232
+ const ref = (0, import_react28.useRef)(null);
5190
5233
  (0, import_fiber7.useFrame)((state, delta) => {
5191
5234
  if (ref.current && autoRotate) {
5192
5235
  ref.current.rotation.y += delta * 0.5;
@@ -5196,7 +5239,7 @@ function Model({ src, scale, autoRotate }) {
5196
5239
  }
5197
5240
 
5198
5241
  // src/components/ui/videoplane.tsx
5199
- var import_react30 = require("react");
5242
+ var import_react29 = require("react");
5200
5243
  var import_drei16 = require("@react-three/drei");
5201
5244
  var THREE = __toESM(require("three"), 1);
5202
5245
  var import_jsx_runtime81 = require("react/jsx-runtime");
@@ -5211,7 +5254,7 @@ function VideoPlane({
5211
5254
  side = "double"
5212
5255
  }) {
5213
5256
  return /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(
5214
- import_react30.Suspense,
5257
+ import_react29.Suspense,
5215
5258
  {
5216
5259
  fallback: /* @__PURE__ */ (0, import_jsx_runtime81.jsxs)("mesh", { children: [
5217
5260
  /* @__PURE__ */ (0, import_jsx_runtime81.jsx)("planeGeometry", { args: [width, width * 0.56] }),
@@ -5270,7 +5313,7 @@ function VideoPlaneContent({
5270
5313
  }
5271
5314
 
5272
5315
  // src/components/ui/audiovisualizer.tsx
5273
- var import_react31 = require("react");
5316
+ var import_react30 = require("react");
5274
5317
  var import_fiber8 = require("@react-three/fiber");
5275
5318
  var THREE2 = __toESM(require("three"), 1);
5276
5319
  var import_jsx_runtime82 = require("react/jsx-runtime");
@@ -5280,10 +5323,10 @@ function AudioVisualizer({
5280
5323
  barColor = "#22d3ee",
5281
5324
  width = 10
5282
5325
  }) {
5283
- const analyserRef = (0, import_react31.useRef)(null);
5284
- const meshRef = (0, import_react31.useRef)(null);
5285
- const [ready, setReady] = (0, import_react31.useState)(false);
5286
- (0, import_react31.useEffect)(() => {
5326
+ const analyserRef = (0, import_react30.useRef)(null);
5327
+ const meshRef = (0, import_react30.useRef)(null);
5328
+ const [ready, setReady] = (0, import_react30.useState)(false);
5329
+ (0, import_react30.useEffect)(() => {
5287
5330
  const listener = new THREE2.AudioListener();
5288
5331
  const sound = new THREE2.Audio(listener);
5289
5332
  const audioLoader = new THREE2.AudioLoader();
@@ -5325,7 +5368,7 @@ function AudioVisualizer({
5325
5368
  }
5326
5369
 
5327
5370
  // src/components/ui/particles.tsx
5328
- var import_react32 = require("react");
5371
+ var import_react31 = require("react");
5329
5372
  var import_fiber9 = require("@react-three/fiber");
5330
5373
  var import_three8 = require("three");
5331
5374
  var import_jsx_runtime83 = require("react/jsx-runtime");
@@ -5335,8 +5378,8 @@ function Particles({
5335
5378
  color = "#a78bfa",
5336
5379
  speed = 0.1
5337
5380
  }) {
5338
- const points = (0, import_react32.useRef)(null);
5339
- const particlesPosition = (0, import_react32.useMemo)(() => {
5381
+ const points = (0, import_react31.useRef)(null);
5382
+ const particlesPosition = (0, import_react31.useMemo)(() => {
5340
5383
  const positions = new Float32Array(count2 * 3);
5341
5384
  for (let i = 0; i < count2; i++) {
5342
5385
  positions[i * 3] = (Math.random() - 0.5) * 10;
@@ -5375,7 +5418,7 @@ function Particles({
5375
5418
  }
5376
5419
 
5377
5420
  // src/components/ui/bloom.tsx
5378
- var import_react33 = require("react");
5421
+ var import_react32 = require("react");
5379
5422
  var import_fiber10 = require("@react-three/fiber");
5380
5423
 
5381
5424
  // node_modules/three-stdlib/postprocessing/ShaderPass.js
@@ -6133,8 +6176,8 @@ var import_jsx_runtime84 = require("react/jsx-runtime");
6133
6176
  (0, import_fiber10.extend)({ EffectComposer, RenderPass, UnrealBloomPass });
6134
6177
  function Bloom({ intensity = 1, radius = 0.4, threshold = 0 }) {
6135
6178
  const { gl, scene, camera, size } = (0, import_fiber10.useThree)();
6136
- const composer = (0, import_react33.useRef)(null);
6137
- (0, import_react33.useEffect)(() => {
6179
+ const composer = (0, import_react32.useRef)(null);
6180
+ (0, import_react32.useEffect)(() => {
6138
6181
  if (composer.current) {
6139
6182
  composer.current.setSize(size.width, size.height);
6140
6183
  }
@@ -6209,7 +6252,7 @@ function ShadowSystem({ type = "soft", bias = -1e-4, mapSize = 1024 }) {
6209
6252
  }
6210
6253
 
6211
6254
  // src/components/ui/gloweffect.tsx
6212
- var import_react34 = __toESM(require("react"), 1);
6255
+ var import_react33 = __toESM(require("react"), 1);
6213
6256
  var THREE3 = __toESM(require("three"), 1);
6214
6257
  var import_jsx_runtime88 = require("react/jsx-runtime");
6215
6258
  function GlowEffect({
@@ -6218,7 +6261,7 @@ function GlowEffect({
6218
6261
  intensity = 1,
6219
6262
  scale = 1.2
6220
6263
  }) {
6221
- const glowMaterial = import_react34.default.useMemo(() => {
6264
+ const glowMaterial = import_react33.default.useMemo(() => {
6222
6265
  return new THREE3.MeshBasicMaterial({
6223
6266
  color,
6224
6267
  transparent: true,
@@ -6230,9 +6273,9 @@ function GlowEffect({
6230
6273
  }, [color, intensity]);
6231
6274
  return /* @__PURE__ */ (0, import_jsx_runtime88.jsxs)("group", { children: [
6232
6275
  children,
6233
- /* @__PURE__ */ (0, import_jsx_runtime88.jsx)("group", { scale: [scale, scale, scale], children: import_react34.Children.map(children, (child) => {
6234
- if (import_react34.default.isValidElement(child)) {
6235
- return (0, import_react34.cloneElement)(child, {
6276
+ /* @__PURE__ */ (0, import_jsx_runtime88.jsx)("group", { scale: [scale, scale, scale], children: import_react33.Children.map(children, (child) => {
6277
+ if (import_react33.default.isValidElement(child)) {
6278
+ return (0, import_react33.cloneElement)(child, {
6236
6279
  material: glowMaterial
6237
6280
  });
6238
6281
  }
@@ -6242,7 +6285,7 @@ function GlowEffect({
6242
6285
  }
6243
6286
 
6244
6287
  // src/components/ui/waveeffect.tsx
6245
- var import_react35 = __toESM(require("react"), 1);
6288
+ var import_react34 = __toESM(require("react"), 1);
6246
6289
  var import_drei19 = require("@react-three/drei");
6247
6290
  var import_fiber11 = require("@react-three/fiber");
6248
6291
  var THREE4 = __toESM(require("three"), 1);
@@ -6271,14 +6314,14 @@ var WaveMaterial = (0, import_drei19.shaderMaterial)(
6271
6314
  );
6272
6315
  (0, import_fiber11.extend)({ WaveMaterial });
6273
6316
  function WaveEffect({ children, amplitude = 0.3, frequency = 2, speed = 1 }) {
6274
- const group = import_react35.default.useRef(null);
6275
- const material = (0, import_react35.useMemo)(() => new WaveMaterial(), []);
6317
+ const group = import_react34.default.useRef(null);
6318
+ const material = (0, import_react34.useMemo)(() => new WaveMaterial(), []);
6276
6319
  (0, import_fiber11.useFrame)((state, delta) => {
6277
6320
  if (material) {
6278
6321
  material.time += delta * speed;
6279
6322
  }
6280
6323
  });
6281
- import_react35.default.useEffect(() => {
6324
+ import_react34.default.useEffect(() => {
6282
6325
  if (group.current) {
6283
6326
  group.current.traverse((obj) => {
6284
6327
  if (obj.isMesh) {
@@ -6291,7 +6334,7 @@ function WaveEffect({ children, amplitude = 0.3, frequency = 2, speed = 1 }) {
6291
6334
  }
6292
6335
 
6293
6336
  // src/components/ui/noisefield.tsx
6294
- var import_react36 = require("react");
6337
+ var import_react35 = require("react");
6295
6338
  var import_drei20 = require("@react-three/drei");
6296
6339
  var import_fiber12 = require("@react-three/fiber");
6297
6340
  var THREE5 = __toESM(require("three"), 1);
@@ -6326,7 +6369,7 @@ var NoiseMaterial = (0, import_drei20.shaderMaterial)(
6326
6369
  );
6327
6370
  (0, import_fiber12.extend)({ NoiseMaterial });
6328
6371
  function NoiseField({ scale = 1, speed = 0.5, mode = "color" }) {
6329
- const material = (0, import_react36.useMemo)(() => new NoiseMaterial(), []);
6372
+ const material = (0, import_react35.useMemo)(() => new NoiseMaterial(), []);
6330
6373
  (0, import_fiber12.useFrame)((state, delta) => {
6331
6374
  if (material) {
6332
6375
  material.time += delta * speed;