@frequencyads/components 0.1.6 → 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.
Files changed (154) hide show
  1. package/dist/brand/BrandLogos/BrandLogos.d.ts.map +1 -0
  2. package/dist/brand/BrandLogos/index.d.ts.map +1 -0
  3. package/dist/brand/BrandedAppName/BrandedAppName.d.ts +15 -0
  4. package/dist/brand/BrandedAppName/BrandedAppName.d.ts.map +1 -0
  5. package/dist/brand/BrandedAppName/index.d.ts +2 -0
  6. package/dist/brand/BrandedAppName/index.d.ts.map +1 -0
  7. package/dist/components.css +1 -1
  8. package/dist/content/DosDonts/DosDonts.d.ts.map +1 -0
  9. package/dist/content/DosDonts/index.d.ts.map +1 -0
  10. package/dist/content/ExpandableCard/ExpandableCard.d.ts.map +1 -0
  11. package/dist/content/ExpandableCard/index.d.ts.map +1 -0
  12. package/dist/content/HintBadge/HintBadge.d.ts.map +1 -0
  13. package/dist/content/HintBadge/index.d.ts.map +1 -0
  14. package/dist/content/PrincipleCard/PrincipleCard.d.ts.map +1 -0
  15. package/dist/content/PrincipleCard/index.d.ts.map +1 -0
  16. package/dist/content/TestimonialCard/TestimonialCard.d.ts.map +1 -0
  17. package/dist/content/TestimonialCard/index.d.ts.map +1 -0
  18. package/dist/data-display/DonutChart/DonutChart.d.ts.map +1 -0
  19. package/dist/data-display/DonutChart/index.d.ts.map +1 -0
  20. package/dist/decorations/AnimatedWaveform/AnimatedWaveform.d.ts.map +1 -0
  21. package/dist/decorations/AnimatedWaveform/index.d.ts.map +1 -0
  22. package/dist/decorations/AudioWaveform/AudioWaveform.d.ts.map +1 -0
  23. package/dist/decorations/AudioWaveform/index.d.ts.map +1 -0
  24. package/dist/decorations/FrequencyWave/FrequencyWave.d.ts.map +1 -0
  25. package/dist/decorations/FrequencyWave/index.d.ts.map +1 -0
  26. package/dist/decorations/VideoBackground/VideoBackground.d.ts.map +1 -0
  27. package/dist/decorations/VideoBackground/index.d.ts.map +1 -0
  28. package/dist/design-tokens/ColorPalette/ColorPalette.d.ts.map +1 -0
  29. package/dist/design-tokens/ColorPalette/index.d.ts.map +1 -0
  30. package/dist/design-tokens/ColorSwatch/ColorSwatch.d.ts.map +1 -0
  31. package/dist/design-tokens/ColorSwatch/index.d.ts.map +1 -0
  32. package/dist/design-tokens/GradientSwatch/GradientSwatch.d.ts.map +1 -0
  33. package/dist/design-tokens/GradientSwatch/index.d.ts.map +1 -0
  34. package/dist/design-tokens/TypographyColors/TypographyColors.d.ts.map +1 -0
  35. package/dist/design-tokens/TypographyColors/index.d.ts.map +1 -0
  36. package/dist/index.d.ts +25 -24
  37. package/dist/index.d.ts.map +1 -1
  38. package/dist/index.js +1 -1
  39. package/dist/index.mjs +1231 -1260
  40. package/dist/media/AudioPlayer/AudioPlayer.d.ts.map +1 -0
  41. package/dist/media/AudioPlayer/index.d.ts.map +1 -0
  42. package/dist/media/MiniAudioPlayer/MiniAudioPlayer.d.ts.map +1 -0
  43. package/dist/media/MiniAudioPlayer/index.d.ts.map +1 -0
  44. package/dist/navigation/SpeedDial/SpeedDial.d.ts.map +1 -0
  45. package/dist/navigation/SpeedDial/index.d.ts.map +1 -0
  46. package/dist/sections/Hero/Hero.d.ts.map +1 -0
  47. package/dist/sections/Hero/index.d.ts.map +1 -0
  48. package/dist/sections/SplitSection/SplitSection.d.ts.map +1 -0
  49. package/dist/sections/SplitSection/index.d.ts.map +1 -0
  50. package/dist/utilities/AnimatedCounter/AnimatedCounter.d.ts.map +1 -0
  51. package/dist/utilities/AnimatedCounter/index.d.ts.map +1 -0
  52. package/dist/utilities/CodeBlock/CodeBlock.d.ts.map +1 -0
  53. package/dist/utilities/CodeBlock/index.d.ts.map +1 -0
  54. package/dist/utilities/Copyable/Copyable.d.ts.map +1 -0
  55. package/dist/utilities/Copyable/index.d.ts.map +1 -0
  56. package/dist/utilities/FadeInSection/FadeInSection.d.ts.map +1 -0
  57. package/dist/utilities/FadeInSection/index.d.ts.map +1 -0
  58. package/package.json +1 -1
  59. package/dist/AnimatedCounter/AnimatedCounter.d.ts.map +0 -1
  60. package/dist/AnimatedCounter/index.d.ts.map +0 -1
  61. package/dist/AnimatedWaveform/AnimatedWaveform.d.ts.map +0 -1
  62. package/dist/AnimatedWaveform/index.d.ts.map +0 -1
  63. package/dist/AudioPlayer/AudioPlayer.d.ts.map +0 -1
  64. package/dist/AudioPlayer/index.d.ts.map +0 -1
  65. package/dist/AudioWaveform/AudioWaveform.d.ts.map +0 -1
  66. package/dist/AudioWaveform/index.d.ts.map +0 -1
  67. package/dist/BrandLogos/BrandLogos.d.ts.map +0 -1
  68. package/dist/BrandLogos/index.d.ts.map +0 -1
  69. package/dist/CodeBlock/CodeBlock.d.ts.map +0 -1
  70. package/dist/CodeBlock/index.d.ts.map +0 -1
  71. package/dist/ColorPalette/ColorPalette.d.ts.map +0 -1
  72. package/dist/ColorPalette/index.d.ts.map +0 -1
  73. package/dist/ColorSwatch/ColorSwatch.d.ts.map +0 -1
  74. package/dist/ColorSwatch/index.d.ts.map +0 -1
  75. package/dist/Copyable/Copyable.d.ts.map +0 -1
  76. package/dist/Copyable/index.d.ts.map +0 -1
  77. package/dist/DonutChart/DonutChart.d.ts.map +0 -1
  78. package/dist/DonutChart/index.d.ts.map +0 -1
  79. package/dist/DosDonts/DosDonts.d.ts.map +0 -1
  80. package/dist/DosDonts/index.d.ts.map +0 -1
  81. package/dist/ExpandableCard/ExpandableCard.d.ts.map +0 -1
  82. package/dist/ExpandableCard/index.d.ts.map +0 -1
  83. package/dist/FadeInSection/FadeInSection.d.ts.map +0 -1
  84. package/dist/FadeInSection/index.d.ts.map +0 -1
  85. package/dist/FrequencyWave/FrequencyWave.d.ts.map +0 -1
  86. package/dist/FrequencyWave/index.d.ts.map +0 -1
  87. package/dist/GradientSwatch/GradientSwatch.d.ts.map +0 -1
  88. package/dist/GradientSwatch/index.d.ts.map +0 -1
  89. package/dist/Hero/Hero.d.ts.map +0 -1
  90. package/dist/Hero/index.d.ts.map +0 -1
  91. package/dist/HintBadge/HintBadge.d.ts.map +0 -1
  92. package/dist/HintBadge/index.d.ts.map +0 -1
  93. package/dist/MiniAudioPlayer/MiniAudioPlayer.d.ts.map +0 -1
  94. package/dist/MiniAudioPlayer/index.d.ts.map +0 -1
  95. package/dist/PrincipleCard/PrincipleCard.d.ts.map +0 -1
  96. package/dist/PrincipleCard/index.d.ts.map +0 -1
  97. package/dist/SpeedDial/SpeedDial.d.ts.map +0 -1
  98. package/dist/SpeedDial/index.d.ts.map +0 -1
  99. package/dist/SplitSection/SplitSection.d.ts.map +0 -1
  100. package/dist/SplitSection/index.d.ts.map +0 -1
  101. package/dist/TestimonialCard/TestimonialCard.d.ts.map +0 -1
  102. package/dist/TestimonialCard/index.d.ts.map +0 -1
  103. package/dist/TypographyColors/TypographyColors.d.ts.map +0 -1
  104. package/dist/TypographyColors/index.d.ts.map +0 -1
  105. package/dist/VideoBackground/VideoBackground.d.ts.map +0 -1
  106. package/dist/VideoBackground/index.d.ts.map +0 -1
  107. /package/dist/{BrandLogos → brand/BrandLogos}/BrandLogos.d.ts +0 -0
  108. /package/dist/{BrandLogos → brand/BrandLogos}/index.d.ts +0 -0
  109. /package/dist/{DosDonts → content/DosDonts}/DosDonts.d.ts +0 -0
  110. /package/dist/{DosDonts → content/DosDonts}/index.d.ts +0 -0
  111. /package/dist/{ExpandableCard → content/ExpandableCard}/ExpandableCard.d.ts +0 -0
  112. /package/dist/{ExpandableCard → content/ExpandableCard}/index.d.ts +0 -0
  113. /package/dist/{HintBadge → content/HintBadge}/HintBadge.d.ts +0 -0
  114. /package/dist/{HintBadge → content/HintBadge}/index.d.ts +0 -0
  115. /package/dist/{PrincipleCard → content/PrincipleCard}/PrincipleCard.d.ts +0 -0
  116. /package/dist/{PrincipleCard → content/PrincipleCard}/index.d.ts +0 -0
  117. /package/dist/{TestimonialCard → content/TestimonialCard}/TestimonialCard.d.ts +0 -0
  118. /package/dist/{TestimonialCard → content/TestimonialCard}/index.d.ts +0 -0
  119. /package/dist/{DonutChart → data-display/DonutChart}/DonutChart.d.ts +0 -0
  120. /package/dist/{DonutChart → data-display/DonutChart}/index.d.ts +0 -0
  121. /package/dist/{AnimatedWaveform → decorations/AnimatedWaveform}/AnimatedWaveform.d.ts +0 -0
  122. /package/dist/{AnimatedWaveform → decorations/AnimatedWaveform}/index.d.ts +0 -0
  123. /package/dist/{AudioWaveform → decorations/AudioWaveform}/AudioWaveform.d.ts +0 -0
  124. /package/dist/{AudioWaveform → decorations/AudioWaveform}/index.d.ts +0 -0
  125. /package/dist/{FrequencyWave → decorations/FrequencyWave}/FrequencyWave.d.ts +0 -0
  126. /package/dist/{FrequencyWave → decorations/FrequencyWave}/index.d.ts +0 -0
  127. /package/dist/{VideoBackground → decorations/VideoBackground}/VideoBackground.d.ts +0 -0
  128. /package/dist/{VideoBackground → decorations/VideoBackground}/index.d.ts +0 -0
  129. /package/dist/{ColorPalette → design-tokens/ColorPalette}/ColorPalette.d.ts +0 -0
  130. /package/dist/{ColorPalette → design-tokens/ColorPalette}/index.d.ts +0 -0
  131. /package/dist/{ColorSwatch → design-tokens/ColorSwatch}/ColorSwatch.d.ts +0 -0
  132. /package/dist/{ColorSwatch → design-tokens/ColorSwatch}/index.d.ts +0 -0
  133. /package/dist/{GradientSwatch → design-tokens/GradientSwatch}/GradientSwatch.d.ts +0 -0
  134. /package/dist/{GradientSwatch → design-tokens/GradientSwatch}/index.d.ts +0 -0
  135. /package/dist/{TypographyColors → design-tokens/TypographyColors}/TypographyColors.d.ts +0 -0
  136. /package/dist/{TypographyColors → design-tokens/TypographyColors}/index.d.ts +0 -0
  137. /package/dist/{AudioPlayer → media/AudioPlayer}/AudioPlayer.d.ts +0 -0
  138. /package/dist/{AudioPlayer → media/AudioPlayer}/index.d.ts +0 -0
  139. /package/dist/{MiniAudioPlayer → media/MiniAudioPlayer}/MiniAudioPlayer.d.ts +0 -0
  140. /package/dist/{MiniAudioPlayer → media/MiniAudioPlayer}/index.d.ts +0 -0
  141. /package/dist/{SpeedDial → navigation/SpeedDial}/SpeedDial.d.ts +0 -0
  142. /package/dist/{SpeedDial → navigation/SpeedDial}/index.d.ts +0 -0
  143. /package/dist/{Hero → sections/Hero}/Hero.d.ts +0 -0
  144. /package/dist/{Hero → sections/Hero}/index.d.ts +0 -0
  145. /package/dist/{SplitSection → sections/SplitSection}/SplitSection.d.ts +0 -0
  146. /package/dist/{SplitSection → sections/SplitSection}/index.d.ts +0 -0
  147. /package/dist/{AnimatedCounter → utilities/AnimatedCounter}/AnimatedCounter.d.ts +0 -0
  148. /package/dist/{AnimatedCounter → utilities/AnimatedCounter}/index.d.ts +0 -0
  149. /package/dist/{CodeBlock → utilities/CodeBlock}/CodeBlock.d.ts +0 -0
  150. /package/dist/{CodeBlock → utilities/CodeBlock}/index.d.ts +0 -0
  151. /package/dist/{Copyable → utilities/Copyable}/Copyable.d.ts +0 -0
  152. /package/dist/{Copyable → utilities/Copyable}/index.d.ts +0 -0
  153. /package/dist/{FadeInSection → utilities/FadeInSection}/FadeInSection.d.ts +0 -0
  154. /package/dist/{FadeInSection → utilities/FadeInSection}/index.d.ts +0 -0
package/dist/index.mjs CHANGED
@@ -1,82 +1,486 @@
1
1
  'use client';
2
- import { Text as v, Box as x, Group as z, ActionIcon as Z, Slider as Fe, Button as re, Portal as We, Notification as je, Title as se, SimpleGrid as ae, Paper as Y, Stack as K, ThemeIcon as Ae, useMantineColorScheme as Ge, Badge as Be, Transition as Re, Tooltip as qe, Avatar as Oe, Container as Ve, Card as _e, Image as te, Anchor as He, useComputedColorScheme as Ue } from "@mantine/core";
3
- import { Anchor as Io, Badge as Co, Box as zo, Button as Mo, Card as Bo, Container as Lo, Divider as Do, Flex as So, Grid as Po, Group as Eo, Image as Fo, SimpleGrid as Wo, Stack as jo, Text as Ao, Title as Go } from "@mantine/core";
4
- import { jsxs as l, jsx as e, Fragment as Le } from "react/jsx-runtime";
5
- import { useState as T, useRef as j, useEffect as S, forwardRef as De, useImperativeHandle as Xe, useCallback as D } from "react";
6
- import { motion as L } from "framer-motion";
7
- import { IconPlayerPauseFilled as Se, IconPlayerPlayFilled as Pe, IconVolumeOff as Ye, IconVolume as Ke, IconDownload as Je, IconX as Qe, IconCheck as Ze, IconPlus as be, IconQuote as et } from "@tabler/icons-react";
8
- import tt from "@frequencyads/brand/assets/frequency-mark-white.svg";
9
- import { gradients as nt } from "@frequencyads/brand/colors";
10
- function io({
11
- value: t,
12
- suffix: o = "",
13
- prefix: a = "",
14
- duration: r = 2e3,
15
- threshold: s = 0.5,
16
- abbreviate: h = !0,
17
- decimals: y,
18
- ..._
2
+ import { useMantineColorScheme as De, Anchor as Pe, Group as I, Image as Z, Box as x, Text as v, Container as He, Title as se, SimpleGrid as re, Card as be, Stack as X, Paper as Y, ThemeIcon as Ue, Badge as We, Avatar as Ke, Button as ae, Portal as Xe, Notification as Ye, useComputedColorScheme as Je, ActionIcon as ee, Slider as Qe, Transition as Ze, Tooltip as et } from "@mantine/core";
3
+ import { Anchor as Xo, Badge as Yo, Box as Jo, Button as Qo, Card as Zo, Container as er, Divider as tr, Flex as nr, Grid as or, Group as rr, Image as ar, SimpleGrid as sr, Stack as ir, Text as lr, Title as cr } from "@mantine/core";
4
+ import { jsx as e, jsxs as l, Fragment as Fe } from "react/jsx-runtime";
5
+ import { textmarkWhite as Ee, textmark as Ae, markWhite as je, mark as qe } from "@frequencyads/brand/logos";
6
+ import { fonts as ve } from "@frequencyads/brand/typography";
7
+ import tt from "@frequencyads/brand/assets/frequency-mark.svg?url";
8
+ import nt from "@frequencyads/brand/assets/frequency-mark-white.svg?url";
9
+ import ot from "@frequencyads/brand/assets/frequency-textmark.png";
10
+ import rt from "@frequencyads/brand/assets/frequency-textmark-white.png";
11
+ import { useRef as A, useState as T, useEffect as D, forwardRef as Ge, useImperativeHandle as at, useCallback as L } from "react";
12
+ import { IconX as st, IconCheck as it, IconQuote as lt, IconPlayerPauseFilled as Re, IconPlayerPlayFilled as Oe, IconVolumeOff as ct, IconVolume as dt, IconDownload as mt, IconPlus as ye } from "@tabler/icons-react";
13
+ import { motion as S } from "framer-motion";
14
+ import ht from "@frequencyads/brand/assets/frequency-mark-white.svg";
15
+ import { gradients as ut } from "@frequencyads/brand/colors";
16
+ const gt = "_container_pj3iu_1", pt = "_logo_pj3iu_7", ft = "_divider_pj3iu_11", _t = "_appName_pj3iu_16", ce = {
17
+ container: gt,
18
+ logo: pt,
19
+ divider: ft,
20
+ appName: _t
21
+ }, ke = {
22
+ [qe.svg]: tt,
23
+ [je.svg]: nt,
24
+ [Ae.png]: ot,
25
+ [Ee.png]: rt
26
+ };
27
+ function zo({
28
+ appName: t,
29
+ variant: o = "circle",
30
+ logoHeight: r = 28,
31
+ textColor: a,
32
+ href: s = "/",
33
+ ...u
19
34
  }) {
20
- const [g, m] = T(0), [u, k] = T(!1), i = j(null);
21
- return S(() => {
22
- const c = i.current;
23
- if (!c) return;
24
- const d = new IntersectionObserver(
25
- ([w]) => {
26
- w.isIntersecting && !u && k(!0);
35
+ const { colorScheme: y } = De(), g = y === "dark", m = (() => {
36
+ if (o === "circle") {
37
+ const _ = g ? je.svg : qe.svg;
38
+ return ke[_];
39
+ }
40
+ const i = g ? Ee.png : Ae.png;
41
+ return ke[i];
42
+ })(), h = g ? "dark.0" : "gray.9", k = g ? "dark.3" : "gray.3";
43
+ return /* @__PURE__ */ e(
44
+ Pe,
45
+ {
46
+ href: s,
47
+ className: ce.container,
48
+ underline: "never",
49
+ style: {
50
+ // @ts-ignore - CSS custom properties
51
+ "--heading-font-family": ve.heading.family,
52
+ "--heading-font-weight-semibold": ve.heading.weights.semibold
27
53
  },
28
- { threshold: s }
54
+ ...u,
55
+ children: /* @__PURE__ */ l(I, { gap: "md", wrap: "nowrap", children: [
56
+ /* @__PURE__ */ e(Z, { src: m, alt: "Frequency", h: r, w: "auto", className: ce.logo }),
57
+ /* @__PURE__ */ e(
58
+ x,
59
+ {
60
+ className: ce.divider,
61
+ bg: k,
62
+ style: {
63
+ height: r
64
+ }
65
+ }
66
+ ),
67
+ /* @__PURE__ */ e(v, { className: ce.appName, c: a ?? h, children: t })
68
+ ] })
69
+ }
70
+ );
71
+ }
72
+ const bt = "_root_6irix_1", vt = "_visible_6irix_9", we = {
73
+ root: bt,
74
+ visible: vt
75
+ };
76
+ function de({
77
+ children: t,
78
+ delay: o = 0,
79
+ threshold: r = 0.1,
80
+ className: a,
81
+ ...s
82
+ }) {
83
+ const u = A(null), [y, g] = T(!1);
84
+ return D(() => {
85
+ const p = u.current;
86
+ if (!p) return;
87
+ const m = new IntersectionObserver(
88
+ ([h]) => {
89
+ h.isIntersecting && (o > 0 ? setTimeout(() => g(!0), o) : g(!0));
90
+ },
91
+ { threshold: r }
29
92
  );
30
- return d.observe(c), () => d.disconnect();
31
- }, [u, s]), S(() => {
32
- if (!u) return;
33
- let c, d;
34
- const w = (n) => {
35
- c || (c = n);
36
- const f = Math.min((n - c) / r, 1), N = 1 - Math.pow(1 - f, 3);
37
- m(N * t), f < 1 && (d = requestAnimationFrame(w));
38
- };
39
- return d = requestAnimationFrame(w), () => cancelAnimationFrame(d);
40
- }, [u, t, r]), /* @__PURE__ */ l(
41
- v,
93
+ return m.observe(p), () => m.disconnect();
94
+ }, [o, r]), /* @__PURE__ */ e(
95
+ x,
42
96
  {
43
- component: "span",
44
- ref: i,
45
- style: { fontVariantNumeric: "tabular-nums" },
46
- ..._,
47
- children: [
48
- a,
49
- (() => {
50
- if (h && t >= 1e3) {
51
- const c = g / 1e3;
52
- return c % 1 === 0 ? `${Math.round(c)}K` : `${c.toFixed(1)}K`;
97
+ ref: u,
98
+ className: `${we.root} ${y ? we.visible : ""} ${a ?? ""}`,
99
+ ...s,
100
+ children: t
101
+ }
102
+ );
103
+ }
104
+ const yt = "_root_1bo86_1", kt = "_label_1bo86_6", wt = "_title_1bo86_11", xt = "_description_1bo86_17", Nt = "_logoCard_1bo86_22", Q = {
105
+ root: yt,
106
+ label: kt,
107
+ title: wt,
108
+ description: xt,
109
+ logoCard: Nt
110
+ };
111
+ function Mo({
112
+ title: t = "Our Logos",
113
+ label: o = "Identity",
114
+ description: r = "The Frequency identity comes in two forms — the horizontal textmark for standard use and the circular brand mark for compact spaces and hero moments."
115
+ }) {
116
+ return /* @__PURE__ */ e("section", { className: Q.root, children: /* @__PURE__ */ l(He, { size: "xl", children: [
117
+ /* @__PURE__ */ l(de, { children: [
118
+ /* @__PURE__ */ e(v, { className: Q.label, size: "xs", tt: "uppercase", c: "blue.5", mb: "xs", children: o }),
119
+ /* @__PURE__ */ e(se, { order: 2, className: Q.title, mb: "lg", children: t }),
120
+ /* @__PURE__ */ e(v, { className: Q.description, size: "lg", c: "gray.6", mb: 60, maw: 600, children: r })
121
+ ] }),
122
+ /* @__PURE__ */ l(re, { cols: { base: 1, lg: 2 }, spacing: 32, mb: 48, children: [
123
+ /* @__PURE__ */ e(de, { delay: 100, children: /* @__PURE__ */ e(be, { padding: 0, radius: "lg", className: Q.logoCard, children: /* @__PURE__ */ l(X, { gap: 0, children: [
124
+ /* @__PURE__ */ e(I, { justify: "center", align: "center", bg: "white", h: 240, children: /* @__PURE__ */ e(
125
+ Z,
126
+ {
127
+ src: "/images/Frequency_logo-light.png",
128
+ alt: "Frequency textmark on light",
129
+ h: 48,
130
+ fit: "contain"
53
131
  }
54
- return y !== void 0 ? g.toFixed(y) : t !== Math.floor(t) ? g.toFixed(1) : Math.round(g).toString();
55
- })(),
132
+ ) }),
133
+ /* @__PURE__ */ e(I, { justify: "center", align: "center", bg: "gray.9", h: 240, children: /* @__PURE__ */ e(
134
+ Z,
135
+ {
136
+ src: "/images/Frequency_logo-dark.png",
137
+ alt: "Frequency textmark on dark",
138
+ h: 48,
139
+ fit: "contain"
140
+ }
141
+ ) }),
142
+ /* @__PURE__ */ e(x, { p: "md", bg: "gray.1", children: /* @__PURE__ */ e(v, { size: "sm", c: "gray.6", fw: 600, ff: "Montserrat, sans-serif", children: "Primary Textmark" }) })
143
+ ] }) }) }),
144
+ /* @__PURE__ */ e(de, { delay: 200, children: /* @__PURE__ */ e(be, { padding: 0, radius: "lg", className: Q.logoCard, children: /* @__PURE__ */ l(X, { gap: 0, children: [
145
+ /* @__PURE__ */ l(re, { cols: 3, children: [
146
+ /* @__PURE__ */ e(I, { justify: "center", align: "center", bg: "white", style: { aspectRatio: "1/1" }, children: /* @__PURE__ */ e(
147
+ Z,
148
+ {
149
+ src: "/images/new-frequency-logo.png",
150
+ alt: "Brand mark on light",
151
+ w: 80,
152
+ h: 80,
153
+ fit: "contain"
154
+ }
155
+ ) }),
156
+ /* @__PURE__ */ e(I, { justify: "center", align: "center", bg: "gray.9", style: { aspectRatio: "1/1" }, children: /* @__PURE__ */ e(
157
+ Z,
158
+ {
159
+ src: "/images/frequency-mark-white.svg",
160
+ alt: "Brand mark on dark",
161
+ w: 80,
162
+ h: 80,
163
+ fit: "contain"
164
+ }
165
+ ) }),
166
+ /* @__PURE__ */ e(
167
+ I,
168
+ {
169
+ justify: "center",
170
+ align: "center",
171
+ style: {
172
+ aspectRatio: "1/1",
173
+ background: "linear-gradient(135deg, #169BDE 0%, #7E57C2 100%)"
174
+ },
175
+ children: /* @__PURE__ */ e(
176
+ Z,
177
+ {
178
+ src: "/images/frequency-mark-white.svg",
179
+ alt: "Brand mark on gradient",
180
+ w: 80,
181
+ h: 80,
182
+ fit: "contain"
183
+ }
184
+ )
185
+ }
186
+ )
187
+ ] }),
188
+ /* @__PURE__ */ e(x, { p: "md", bg: "gray.1", children: /* @__PURE__ */ e(v, { size: "sm", c: "gray.6", fw: 600, ff: "Montserrat, sans-serif", children: "Circular Brand Mark" }) })
189
+ ] }) }) })
190
+ ] }),
191
+ /* @__PURE__ */ e(de, { delay: 300, children: /* @__PURE__ */ l(
192
+ Pe,
193
+ {
194
+ href: "/logos",
195
+ fw: 600,
196
+ c: "blue.5",
197
+ underline: "hover",
198
+ style: { display: "flex", alignItems: "center", gap: 8 },
199
+ children: [
200
+ "View all logo variants and usage rules",
201
+ /* @__PURE__ */ e(
202
+ "svg",
203
+ {
204
+ className: "w-4 h-4",
205
+ fill: "none",
206
+ stroke: "currentColor",
207
+ strokeWidth: "2",
208
+ viewBox: "0 0 24 24",
209
+ children: /* @__PURE__ */ e("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M17 8l4 4m0 0l-4 4m4-4H3" })
210
+ }
211
+ )
212
+ ]
213
+ }
214
+ ) })
215
+ ] }) });
216
+ }
217
+ const Tt = "_root_dzed6_1", $t = "_dont_dzed6_7", Ct = "_dontIcon_dzed6_12", It = "_dontLabel_dzed6_13", zt = "_doIcon_dzed6_22", Mt = "_doLabel_dzed6_23", U = {
218
+ root: Tt,
219
+ dont: $t,
220
+ dontIcon: Ct,
221
+ dontLabel: It,
222
+ do: "_do_dzed6_7",
223
+ doIcon: zt,
224
+ doLabel: Mt
225
+ };
226
+ function Bo({ items: t }) {
227
+ return /* @__PURE__ */ e("div", { className: U.root, children: t.map((o, r) => /* @__PURE__ */ l(re, { cols: { base: 1, sm: 2 }, spacing: "md", children: [
228
+ /* @__PURE__ */ l(Y, { className: U.dont, p: "md", radius: "md", children: [
229
+ /* @__PURE__ */ l(I, { gap: 6, mb: 6, children: [
230
+ /* @__PURE__ */ e(st, { size: 16, className: U.dontIcon }),
231
+ /* @__PURE__ */ e(v, { size: "sm", fw: 600, className: U.dontLabel, children: "Don't" })
232
+ ] }),
233
+ /* @__PURE__ */ e(v, { size: "sm", children: o.dont })
234
+ ] }),
235
+ /* @__PURE__ */ l(Y, { className: U.do, p: "md", radius: "md", children: [
236
+ /* @__PURE__ */ l(I, { gap: 6, mb: 6, children: [
237
+ /* @__PURE__ */ e(it, { size: 16, className: U.doIcon }),
238
+ /* @__PURE__ */ e(v, { size: "sm", fw: 600, className: U.doLabel, children: "Do" })
239
+ ] }),
240
+ /* @__PURE__ */ e(v, { size: "sm", children: o.do })
241
+ ] })
242
+ ] }, r)) });
243
+ }
244
+ const Bt = "_root_xi08i_1", St = "_inner_xi08i_6", xe = {
245
+ root: Bt,
246
+ inner: St
247
+ };
248
+ function So({
249
+ title: t,
250
+ description: o,
251
+ expandedContent: r,
252
+ icon: a,
253
+ color: s = "blue",
254
+ iconSize: u = "lg",
255
+ collapsedHeight: y = 120,
256
+ threshold: g = 0.5,
257
+ delay: p = 300,
258
+ expanded: m,
259
+ onExpandedChange: h
260
+ }) {
261
+ const k = A(null), [i, _] = T(!1), c = m !== void 0, d = c ? m : i;
262
+ return D(() => {
263
+ if (c) return;
264
+ const w = k.current;
265
+ if (!w) return;
266
+ const n = new IntersectionObserver(
267
+ ([b]) => {
268
+ b.isIntersecting && setTimeout(() => {
269
+ _(!0), h == null || h(!0);
270
+ }, p);
271
+ },
272
+ { threshold: g }
273
+ );
274
+ return n.observe(w), () => n.disconnect();
275
+ }, [c, g, p, h]), /* @__PURE__ */ e(
276
+ Y,
277
+ {
278
+ ref: k,
279
+ radius: 4,
280
+ className: xe.root,
281
+ component: S.div,
282
+ animate: { height: d ? "auto" : y },
283
+ transition: { duration: 0.5, ease: "easeOut" },
284
+ children: /* @__PURE__ */ e("div", { className: xe.inner, children: /* @__PURE__ */ l(I, { align: "flex-start", justify: "space-between", gap: "lg", wrap: "nowrap", children: [
285
+ /* @__PURE__ */ l(X, { gap: "xs", style: { flex: 1 }, children: [
286
+ /* @__PURE__ */ e(v, { fw: 700, size: "xl", lh: 1.3, children: t }),
287
+ /* @__PURE__ */ e(v, { size: "md", c: "dimmed", children: o }),
288
+ /* @__PURE__ */ e(
289
+ S.div,
290
+ {
291
+ initial: { opacity: 0, height: 0 },
292
+ animate: {
293
+ opacity: d ? 1 : 0,
294
+ height: d ? "auto" : 0
295
+ },
296
+ transition: { duration: 0.4, delay: 0.2 },
297
+ style: { overflow: "hidden" },
298
+ children: typeof r == "string" ? /* @__PURE__ */ e(v, { size: "sm", c: "dimmed", mt: "sm", children: r }) : r
299
+ }
300
+ )
301
+ ] }),
302
+ /* @__PURE__ */ e(S.div, { animate: { scale: d ? 1.1 : 1 }, transition: { duration: 0.3 }, children: /* @__PURE__ */ e(Ue, { size: u, radius: 4, color: s, variant: "filled", children: /* @__PURE__ */ e(a, { size: 20, stroke: 1.5 }) }) })
303
+ ] }) })
304
+ }
305
+ );
306
+ }
307
+ function Ne({ variant: t, children: o }) {
308
+ const r = t === "do";
309
+ return /* @__PURE__ */ l(
310
+ We,
311
+ {
312
+ variant: "light",
313
+ color: r ? "green" : "red",
314
+ size: "lg",
315
+ radius: "sm",
316
+ styles: {
317
+ root: { textTransform: "none", fontWeight: 400 },
318
+ label: { whiteSpace: "normal", lineHeight: 1.4 }
319
+ },
320
+ children: [
321
+ /* @__PURE__ */ l("strong", { children: [
322
+ r ? "Do" : "Don't",
323
+ ":"
324
+ ] }),
325
+ " ",
56
326
  o
57
327
  ]
58
328
  }
59
329
  );
60
330
  }
61
- const ot = "_root_1bq7s_1", rt = "_svg_1bq7s_12", ve = {
62
- root: ot,
63
- svg: rt
64
- }, at = 140, ye = 3, ke = 10, Ee = 150, U = Ee / 2;
65
- function we({
66
- barCount: t = at,
331
+ const Lt = "_root_1bah1_1", Dt = {
332
+ root: Lt
333
+ };
334
+ function Lo({
335
+ accentColor: t,
336
+ title: o,
337
+ description: r,
338
+ doHint: a,
339
+ dontHint: s
340
+ }) {
341
+ return /* @__PURE__ */ l(Y, { className: Dt.root, p: "lg", radius: "md", style: { borderLeftColor: t }, children: [
342
+ /* @__PURE__ */ e(se, { order: 3, size: "h4", mb: "xs", children: o }),
343
+ /* @__PURE__ */ e(v, { c: "dimmed", children: r }),
344
+ (a || s) && /* @__PURE__ */ l(I, { gap: "sm", mt: "md", wrap: "wrap", children: [
345
+ a && /* @__PURE__ */ e(Ne, { variant: "do", children: a }),
346
+ s && /* @__PURE__ */ e(Ne, { variant: "dont", children: s })
347
+ ] })
348
+ ] });
349
+ }
350
+ const Pt = "_root_ioshc_1", Wt = "_quoteIcon_ioshc_6", Te = {
351
+ root: Pt,
352
+ quoteIcon: Wt
353
+ };
354
+ function Ft(t) {
355
+ return t.split(" ").map((o) => o[0]).join("").toUpperCase().slice(0, 2);
356
+ }
357
+ function Do({
358
+ quote: t,
359
+ name: o,
360
+ role: r,
361
+ company: a,
362
+ avatarSrc: s,
363
+ accentColor: u = "blue"
364
+ }) {
365
+ const y = `var(--mantine-color-${u}-filled)`;
366
+ return /* @__PURE__ */ l(Y, { className: Te.root, p: "lg", radius: "md", style: { borderLeftColor: y }, children: [
367
+ /* @__PURE__ */ e(lt, { size: 32, className: Te.quoteIcon, color: y }),
368
+ /* @__PURE__ */ e(v, { fs: "italic", mt: "xs", mb: "md", children: t }),
369
+ /* @__PURE__ */ l(I, { gap: "sm", children: [
370
+ /* @__PURE__ */ e(Ke, { src: s, alt: o, color: u, radius: "xl", size: "md", children: Ft(o) }),
371
+ /* @__PURE__ */ l(X, { gap: 0, children: [
372
+ /* @__PURE__ */ e(v, { fw: 600, size: "sm", children: o }),
373
+ (r || a) && /* @__PURE__ */ e(v, { size: "xs", c: "dimmed", children: [r, a].filter(Boolean).join(", ") })
374
+ ] })
375
+ ] })
376
+ ] });
377
+ }
378
+ const Et = "_root_1r7u3_1", At = "_chartWrapper_1r7u3_5", jt = "_circle_1r7u3_9", qt = "_centerText_1r7u3_13", Gt = "_toggle_1r7u3_20", Rt = "_toggleTrack_1r7u3_26", Ot = "_toggleTrackDark_1r7u3_35", Vt = "_toggleThumb_1r7u3_39", Ht = "_toggleThumbDark_1r7u3_51", Ut = "_swatch_1r7u3_55", E = {
379
+ root: Et,
380
+ chartWrapper: At,
381
+ circle: jt,
382
+ centerText: qt,
383
+ toggle: Gt,
384
+ toggleTrack: Rt,
385
+ toggleTrackDark: Ot,
386
+ toggleThumb: Vt,
387
+ toggleThumbDark: Ht,
388
+ swatch: Ut
389
+ };
390
+ function Po() {
391
+ const [t, o] = T(!1), [r, a] = T(0), s = [
392
+ { color: "#5AB267", label: "Success" },
393
+ { color: "#E63459", label: "Error" },
394
+ { color: "#E79E26", label: "Warning" }
395
+ ];
396
+ D(() => {
397
+ const c = setInterval(() => a((d) => (d + 1) % 3), 2e3);
398
+ return () => clearInterval(c);
399
+ }, []);
400
+ const u = s[r], y = [
401
+ t ? { label: "Dark Backgrounds", pct: 50, color: "#1A1A1A", border: "1px solid #424242" } : { label: "White Backgrounds", pct: 50, color: "#ffffff", border: "1px solid #e3e3e3" },
402
+ { label: "Primary Blue", pct: 20, color: "#169BDE" },
403
+ t ? { label: "Light Text & UI", pct: 15, color: "#f0f0f0", border: "1px solid #bdbdbd" } : { label: "Dark Text & UI", pct: 15, color: "#212121" },
404
+ { label: "Secondary Violet", pct: 10, color: "#7E57C2" },
405
+ { label: `Semantic (${u.label})`, pct: 5, color: u.color }
406
+ ], g = 80, p = 120, m = 120, h = 36, k = 2 * Math.PI * g;
407
+ let i = 0;
408
+ const _ = y.map((c) => {
409
+ const d = c.pct / 100 * k, w = { ...c, dasharray: `${d} ${k - d}`, dashoffset: -i };
410
+ return i += d, w;
411
+ });
412
+ return /* @__PURE__ */ l(I, { gap: 40, align: "center", my: "xl", className: E.root, children: [
413
+ /* @__PURE__ */ e(x, { className: E.chartWrapper, children: /* @__PURE__ */ l("svg", { width: 240, height: 240, viewBox: "0 0 240 240", children: [
414
+ _.map((c, d) => /* @__PURE__ */ e(
415
+ "circle",
416
+ {
417
+ cx: p,
418
+ cy: m,
419
+ r: g,
420
+ fill: "none",
421
+ stroke: c.color,
422
+ strokeWidth: h,
423
+ strokeDasharray: c.dasharray,
424
+ strokeDashoffset: c.dashoffset,
425
+ transform: `rotate(-90 ${p} ${m})`,
426
+ className: E.circle
427
+ },
428
+ d
429
+ )),
430
+ /* @__PURE__ */ l("text", { x: p, y: m + 6, textAnchor: "middle", className: E.centerText, children: [
431
+ t ? "Dark" : "Light",
432
+ " Mode"
433
+ ] })
434
+ ] }) }),
435
+ /* @__PURE__ */ l(X, { gap: "lg", children: [
436
+ /* @__PURE__ */ e(
437
+ ae,
438
+ {
439
+ onClick: () => o(!t),
440
+ variant: "default",
441
+ radius: "xl",
442
+ size: "sm",
443
+ className: E.toggle,
444
+ leftSection: /* @__PURE__ */ e(x, { className: `${E.toggleTrack} ${t ? E.toggleTrackDark : ""}`, children: /* @__PURE__ */ e(x, { className: `${E.toggleThumb} ${t ? E.toggleThumbDark : ""}` }) }),
445
+ children: t ? "Dark Mode" : "Light Mode"
446
+ }
447
+ ),
448
+ /* @__PURE__ */ e(X, { gap: 8, children: y.map((c, d) => /* @__PURE__ */ l(I, { gap: 8, wrap: "nowrap", children: [
449
+ /* @__PURE__ */ e(
450
+ x,
451
+ {
452
+ className: E.swatch,
453
+ style: { backgroundColor: c.color, border: c.border || "none" }
454
+ }
455
+ ),
456
+ /* @__PURE__ */ l(v, { size: "sm", fw: 600, w: 36, children: [
457
+ c.pct,
458
+ "%"
459
+ ] }),
460
+ /* @__PURE__ */ e(v, { size: "sm", c: "dimmed", children: c.label })
461
+ ] }, d)) })
462
+ ] })
463
+ ] });
464
+ }
465
+ const Kt = "_root_1bq7s_1", Xt = "_svg_1bq7s_12", $e = {
466
+ root: Kt,
467
+ svg: Xt
468
+ }, Yt = 140, Ce = 3, Ie = 10, Ve = 150, K = Ve / 2;
469
+ function ze({
470
+ barCount: t = Yt,
67
471
  duration: o = 3,
68
- repeatDelay: a = 3
472
+ repeatDelay: r = 3
69
473
  }) {
70
- const [r, s] = T(!1);
71
- if (S(() => {
474
+ const [a, s] = T(!1);
475
+ if (D(() => {
72
476
  s(!0);
73
- }, []), !r) return null;
74
- const h = t * ke;
75
- return /* @__PURE__ */ e("div", { className: ve.root, children: /* @__PURE__ */ l(
477
+ }, []), !a) return null;
478
+ const u = t * Ie;
479
+ return /* @__PURE__ */ e("div", { className: $e.root, children: /* @__PURE__ */ l(
76
480
  "svg",
77
481
  {
78
- className: ve.svg,
79
- viewBox: `0 0 ${h} ${Ee}`,
482
+ className: $e.svg,
483
+ viewBox: `0 0 ${u} ${Ve}`,
80
484
  preserveAspectRatio: "none",
81
485
  children: [
82
486
  /* @__PURE__ */ e("defs", { children: /* @__PURE__ */ l("linearGradient", { id: "waveformBarGradient", x1: "0%", y1: "0%", x2: "100%", y2: "0%", children: [
@@ -86,726 +490,760 @@ function we({
86
490
  /* @__PURE__ */ e("stop", { offset: "85%", stopColor: "white", stopOpacity: "0.15" }),
87
491
  /* @__PURE__ */ e("stop", { offset: "100%", stopColor: "white", stopOpacity: "0" })
88
492
  ] }) }),
89
- [...Array(t)].map((y, _) => {
90
- const g = _ * ke, m = 18 + Math.sin(_ * 0.4) * 6 + Math.cos(_ * 0.7) * 4, u = Math.min(_, t - 1 - _) * 0.04;
493
+ [...Array(t)].map((y, g) => {
494
+ const p = g * Ie, m = 18 + Math.sin(g * 0.4) * 6 + Math.cos(g * 0.7) * 4, h = Math.min(g, t - 1 - g) * 0.04;
91
495
  return /* @__PURE__ */ l("g", { children: [
92
496
  /* @__PURE__ */ e(
93
- L.rect,
497
+ S.rect,
94
498
  {
95
- x: g,
96
- width: ye,
499
+ x: p,
500
+ width: Ce,
97
501
  rx: "1.5",
98
502
  fill: "url(#waveformBarGradient)",
99
- initial: { height: m / 2, y: U - m / 4 },
503
+ initial: { height: m / 2, y: K - m / 4 },
100
504
  animate: {
101
- height: [m / 2, m * 2, m / 2, m * 1.2, m / 2],
505
+ height: [
506
+ m / 2,
507
+ m * 2,
508
+ m / 2,
509
+ m * 1.2,
510
+ m / 2
511
+ ],
102
512
  y: [
103
- U - m / 4,
104
- U - m,
105
- U - m / 4,
106
- U - m * 0.6,
107
- U - m / 4
513
+ K - m / 4,
514
+ K - m,
515
+ K - m / 4,
516
+ K - m * 0.6,
517
+ K - m / 4
108
518
  ]
109
519
  },
110
520
  transition: {
111
521
  duration: o,
112
522
  repeat: 1 / 0,
113
523
  ease: "easeInOut",
114
- delay: u,
115
- repeatDelay: a
524
+ delay: h,
525
+ repeatDelay: r
116
526
  }
117
527
  }
118
528
  ),
119
529
  /* @__PURE__ */ e(
120
- L.rect,
530
+ S.rect,
121
531
  {
122
- x: g,
123
- y: U,
124
- width: ye,
532
+ x: p,
533
+ y: K,
534
+ width: Ce,
125
535
  rx: "1.5",
126
536
  fill: "url(#waveformBarGradient)",
127
537
  initial: { height: m / 2 },
128
538
  animate: {
129
- height: [m / 2, m * 2, m / 2, m * 1.2, m / 2]
539
+ height: [
540
+ m / 2,
541
+ m * 2,
542
+ m / 2,
543
+ m * 1.2,
544
+ m / 2
545
+ ]
130
546
  },
131
547
  transition: {
132
548
  duration: o,
133
549
  repeat: 1 / 0,
134
550
  ease: "easeInOut",
135
- delay: u,
136
- repeatDelay: a
551
+ delay: h,
552
+ repeatDelay: r
137
553
  }
138
554
  }
139
555
  )
140
- ] }, _);
556
+ ] }, g);
141
557
  })
142
558
  ]
143
559
  }
144
560
  ) });
145
561
  }
146
- const st = "_root_1pkxe_1", it = "_progressOverlay_1pkxe_9", lt = "_bars_1pkxe_19", ct = "_bar_1pkxe_19", dt = "_loading_1pkxe_34", ne = {
147
- root: st,
148
- progressOverlay: it,
149
- bars: lt,
150
- bar: ct,
151
- loading: dt
562
+ const Jt = "_root_1pkxe_1", Qt = "_progressOverlay_1pkxe_9", Zt = "_bars_1pkxe_19", en = "_bar_1pkxe_19", tn = "_loading_1pkxe_34", ne = {
563
+ root: Jt,
564
+ progressOverlay: Qt,
565
+ bars: Zt,
566
+ bar: en,
567
+ loading: tn
152
568
  };
153
- function mt(t = 100) {
569
+ function nn(t = 100) {
154
570
  const o = [];
155
- for (let a = 0; a < t; a++) {
156
- const r = a / (t - 1), s = 20 + Math.sin(a * 0.1) * 15, h = (Math.random() - 0.5) * 20, y = Math.sin(r * Math.PI) * 30, _ = r > 0.2 && r < 0.8 ? Math.random() * 10 : 0, g = r < 0.05 || r > 0.95 ? Math.min(r / 0.05, (1 - r) / 0.05) : 1;
157
- o.push(Math.max(5, Math.min(90, (s + h + y + _) * g)));
571
+ for (let r = 0; r < t; r++) {
572
+ const a = r / (t - 1), s = 20 + Math.sin(r * 0.1) * 15, u = (Math.random() - 0.5) * 20, y = Math.sin(a * Math.PI) * 30, g = a > 0.2 && a < 0.8 ? Math.random() * 10 : 0, p = a < 0.05 || a > 0.95 ? Math.min(a / 0.05, (1 - a) / 0.05) : 1;
573
+ o.push(Math.max(5, Math.min(90, (s + u + y + g) * p)));
158
574
  }
159
575
  return o;
160
576
  }
161
- const fe = De(
577
+ const _e = Ge(
162
578
  ({
163
579
  audioRef: t,
164
580
  currentTime: o = 0,
165
- onSeek: a,
166
- loading: r = !1,
581
+ onSeek: r,
582
+ loading: a = !1,
167
583
  waveColor: s = "#CCCCCC",
168
- progressColor: h = "#169bde",
584
+ progressColor: u = "#169bde",
169
585
  height: y = 60,
170
- barWidth: _ = 2,
171
- barGap: g = 1
586
+ barWidth: g = 2,
587
+ barGap: p = 1
172
588
  }, m) => {
173
- const u = j(null), [k] = T(() => mt()), [i, b] = T(0), [c, d] = T(0);
174
- Xe(m, () => ({
589
+ const h = A(null), [k] = T(() => nn()), [i, _] = T(0), [c, d] = T(0);
590
+ at(m, () => ({
175
591
  seekTo: (n) => {
176
592
  i > 0 && d(Math.max(0, Math.min(100, n / i * 100)));
177
593
  },
178
594
  getCurrentTime: () => c / 100 * i,
179
595
  getDuration: () => i
180
- })), S(() => {
596
+ })), D(() => {
181
597
  const n = t.current;
182
598
  if (!n) return;
183
- const f = () => {
184
- n.duration && !isNaN(n.duration) && b(n.duration);
599
+ const b = () => {
600
+ n.duration && !isNaN(n.duration) && _(n.duration);
185
601
  }, N = () => {
186
602
  n.duration > 0 && d(n.currentTime / n.duration * 100);
187
603
  };
188
- return n.duration && !isNaN(n.duration) && b(n.duration), n.addEventListener("loadedmetadata", f), n.addEventListener("timeupdate", N), () => {
189
- n.removeEventListener("loadedmetadata", f), n.removeEventListener("timeupdate", N);
604
+ return n.duration && !isNaN(n.duration) && _(n.duration), n.addEventListener("loadedmetadata", b), n.addEventListener("timeupdate", N), () => {
605
+ n.removeEventListener("loadedmetadata", b), n.removeEventListener("timeupdate", N);
190
606
  };
191
- }, [t]), S(() => {
607
+ }, [t]), D(() => {
192
608
  i > 0 && typeof o == "number" && d(o / i * 100);
193
609
  }, [o, i]);
194
- const w = D(
610
+ const w = L(
195
611
  (n) => {
196
- if (!u.current || !a || i === 0) return;
197
- const f = u.current.getBoundingClientRect(), N = (n.clientX - f.left) / f.width * i;
198
- a(N);
612
+ if (!h.current || !r || i === 0) return;
613
+ const b = h.current.getBoundingClientRect(), N = (n.clientX - b.left) / b.width * i;
614
+ r(N);
199
615
  },
200
- [a, i]
616
+ [r, i]
201
617
  );
202
- return /* @__PURE__ */ l(
203
- x,
204
- {
205
- ref: u,
206
- className: ne.root,
207
- style: { height: y },
208
- onClick: w,
209
- children: [
210
- /* @__PURE__ */ e(
211
- "div",
212
- {
213
- className: ne.progressOverlay,
214
- style: { width: `${c}%`, backgroundColor: `${h}15` }
618
+ return /* @__PURE__ */ l(x, { ref: h, className: ne.root, style: { height: y }, onClick: w, children: [
619
+ /* @__PURE__ */ e(
620
+ "div",
621
+ {
622
+ className: ne.progressOverlay,
623
+ style: { width: `${c}%`, backgroundColor: `${u}15` }
624
+ }
625
+ ),
626
+ /* @__PURE__ */ e("div", { className: ne.bars, style: { gap: p }, children: k.map((n, b) => {
627
+ const N = b / k.length * 100 <= c;
628
+ return /* @__PURE__ */ e(
629
+ "div",
630
+ {
631
+ className: ne.bar,
632
+ style: {
633
+ width: g,
634
+ height: `${n}%`,
635
+ backgroundColor: N ? u : s
215
636
  }
216
- ),
217
- /* @__PURE__ */ e("div", { className: ne.bars, style: { gap: g }, children: k.map((n, f) => {
218
- const N = f / k.length * 100 <= c;
219
- return /* @__PURE__ */ e(
220
- "div",
221
- {
222
- className: ne.bar,
223
- style: {
224
- width: _,
225
- height: `${n}%`,
226
- backgroundColor: N ? h : s
227
- }
228
- },
229
- f
230
- );
231
- }) }),
232
- r && /* @__PURE__ */ e("div", { className: ne.loading, children: "Loading waveform..." })
233
- ]
234
- }
235
- );
637
+ },
638
+ b
639
+ );
640
+ }) }),
641
+ a && /* @__PURE__ */ e("div", { className: ne.loading, children: "Loading waveform..." })
642
+ ] });
236
643
  }
237
644
  );
238
- fe.displayName = "AudioWaveform";
239
- const ut = "_root_n9zxy_1", ht = "_playButton_n9zxy_8", gt = "_time_n9zxy_22", pt = "_volumeGroup_n9zxy_28", oe = {
240
- root: ut,
241
- playButton: ht,
242
- time: gt,
243
- volumeGroup: pt
244
- };
245
- function he(t) {
246
- const o = Math.floor(t / 60), a = Math.floor(t % 60);
247
- return `${o.toString().padStart(2, "0")}:${a.toString().padStart(2, "0")}`;
248
- }
249
- function lo({
250
- src: t,
251
- filename: o = "audio",
252
- playButtonColor: a,
253
- playButtonSize: r = 32,
254
- waveColor: s = "#D0D0D0",
255
- progressColor: h = "#a8a8a8",
256
- waveHeight: y = 64,
257
- barWidth: _ = 3,
258
- barGap: g = 2,
259
- showVolume: m = !0,
260
- showDownload: u = !0
261
- }) {
262
- const k = j(null), [i, b] = T(!1), [c, d] = T(0), [w, n] = T("00:00"), [f, N] = T("00:00"), [P, q] = T(50), [O, A] = T(50), [M, I] = T(!1);
263
- S(() => {
264
- const p = k.current;
265
- if (!p) return;
266
- p.volume = P / 100;
267
- const $ = () => {
268
- d(p.currentTime), n(he(p.currentTime));
269
- }, B = () => N(he(p.duration)), J = () => {
270
- setTimeout(() => {
271
- d(0), n("00:00"), b(!1);
272
- }, 500);
273
- }, ie = () => b(!0), le = () => b(!1);
274
- return p.addEventListener("timeupdate", $), p.addEventListener("loadedmetadata", B), p.addEventListener("ended", J), p.addEventListener("play", ie), p.addEventListener("pause", le), () => {
275
- p.removeEventListener("timeupdate", $), p.removeEventListener("loadedmetadata", B), p.removeEventListener("ended", J), p.removeEventListener("play", ie), p.removeEventListener("pause", le);
276
- };
277
- }, [t]);
278
- const F = D(() => {
279
- const p = k.current;
280
- p && (i ? p.pause() : p.play().catch(() => {
281
- }));
282
- }, [i]), G = D((p) => {
283
- const $ = k.current;
284
- $ && !isNaN(p) && isFinite(p) && ($.currentTime = p, d(p), n(he(p)));
285
- }, []), V = D(
286
- (p) => {
287
- const $ = k.current;
288
- $ && ($.volume = p / 100, q(p), p > 0 ? (A(p), I(!1)) : I(!0));
289
- },
290
- []
291
- ), H = D(() => {
292
- const p = k.current;
293
- if (p)
294
- if (M) {
295
- const $ = O || 50;
296
- p.volume = $ / 100, q($), I(!1);
297
- } else
298
- A(P), p.volume = 0, q(0), I(!0);
299
- }, [M, P, O]), ee = D(() => {
300
- fetch(t).then((p) => p.blob()).then((p) => {
301
- const $ = URL.createObjectURL(p), B = document.createElement("a");
302
- B.href = $, B.download = o, document.body.appendChild(B), B.click(), document.body.removeChild(B), URL.revokeObjectURL($);
303
- }).catch(() => window.open(t, "_blank"));
304
- }, [t, o]);
305
- return /* @__PURE__ */ l(z, { gap: "sm", wrap: "nowrap", className: oe.root, children: [
306
- /* @__PURE__ */ e("audio", { ref: k, src: t, preload: "metadata" }),
307
- /* @__PURE__ */ e(
308
- Z,
309
- {
310
- variant: "filled",
311
- radius: "xl",
312
- size: r,
313
- color: a,
314
- onClick: F,
315
- "aria-label": i ? "Pause" : "Play",
316
- className: oe.playButton,
317
- children: i ? /* @__PURE__ */ e(Se, { size: r * 0.5 }) : /* @__PURE__ */ e(Pe, { size: r * 0.5 })
318
- }
319
- ),
320
- /* @__PURE__ */ e(v, { size: "xs", ff: "monospace", c: "dimmed", className: oe.time, children: w }),
321
- /* @__PURE__ */ e(x, { style: { flex: 1, minWidth: 0 }, children: /* @__PURE__ */ e(
322
- fe,
323
- {
324
- audioRef: k,
325
- currentTime: c,
326
- onSeek: G,
327
- waveColor: s,
328
- progressColor: h,
329
- height: y,
330
- barWidth: _,
331
- barGap: g
645
+ _e.displayName = "AudioWaveform";
646
+ function Wo({ isActive: t = !1, height: o = 60 }) {
647
+ const r = A(null), a = A(void 0), [s, u] = T(!1), y = A(null), g = A(null), { colorScheme: p } = De(), m = p === "dark", h = {
648
+ start: m ? "#7950F2" : "#9775FA",
649
+ mid: m ? "#BE4BDB" : "#DA77F2",
650
+ end: m ? "#15AABF" : "#22B8CF"
651
+ }, k = L(
652
+ (i, _, c, d) => {
653
+ i.clearRect(0, 0, _, c);
654
+ const w = t || s, n = c * 0.65, b = t ? 5 : s ? 7 : 1.5;
655
+ w && (g.current === null && (g.current = Math.random()), Math.floor(d / 500) !== Math.floor((d - 16) / 500) && (g.current = Math.random()));
656
+ const N = i.createLinearGradient(0, 0, _, 0);
657
+ N.addColorStop(0, h.start), N.addColorStop(0.5, h.mid), N.addColorStop(1, h.end), i.strokeStyle = N, i.lineWidth = w ? 2.5 : 1.5, i.lineCap = "round", i.lineJoin = "round", w ? (i.shadowColor = h.mid, i.shadowBlur = s ? 12 : 8) : i.shadowBlur = 0, i.beginPath();
658
+ const P = 300, R = _ / P, O = t ? 0.02 : s ? 0.025 : 3e-3;
659
+ for (let j = 0; j <= P; j++) {
660
+ const M = j * R, C = M / _;
661
+ let F = n;
662
+ if (w) {
663
+ const q = Math.sin(C * Math.PI * 6 + d * O) * b, V = Math.sin(C * Math.PI * 12 + d * O * 1.3) * (b * 0.4), H = Math.sin(C * Math.PI * 18 + d * O * 0.8) * (b * 0.2), te = g.current ?? 0.5, f = Math.abs(C - te), $ = f < 0.15 ? (1 - f / 0.15) * b * 1 : 0, B = Math.sin(C * Math.PI * 20 + d * O * 2) * $;
664
+ let J = 0;
665
+ s && (J = Math.sin(C * Math.PI * 30 + d * 0.03) * b * 0.4, J += Math.sin(C * Math.PI * 8 + d * 0.015) * b * 0.5);
666
+ const ie = q + V + H + B + J, le = Math.sin(C * Math.PI);
667
+ F = n + ie * le;
668
+ } else
669
+ F += Math.sin(C * Math.PI * 2 + d * O) * b;
670
+ j === 0 ? i.moveTo(M, F) : i.lineTo(M, F);
332
671
  }
333
- ) }),
334
- /* @__PURE__ */ e(v, { size: "xs", ff: "monospace", c: "dimmed", className: oe.time, children: f }),
335
- m && /* @__PURE__ */ l(z, { gap: 4, wrap: "nowrap", className: oe.volumeGroup, children: [
336
- /* @__PURE__ */ e(
337
- Z,
338
- {
339
- variant: "subtle",
340
- size: "sm",
341
- onClick: H,
342
- "aria-label": M ? "Unmute" : "Mute",
343
- children: M ? /* @__PURE__ */ e(Ye, { size: 16 }) : /* @__PURE__ */ e(Ke, { size: 16 })
672
+ if (i.stroke(), t) {
673
+ const C = _ / 80, F = 16;
674
+ i.shadowBlur = 3;
675
+ for (let q = 0; q < 80; q++) {
676
+ const V = q * C + C / 2, H = V / _, te = Math.sin(H * Math.PI * 8 + d * 0.025) * 0.5 + Math.sin(H * Math.PI * 14 + d * 0.018) * 0.3 + Math.sin(H * Math.PI * 4 + d * 0.03) * 0.2, f = Math.sin(H * Math.PI), $ = Math.abs(te) * F * f, B = i.createLinearGradient(
677
+ V,
678
+ n - $ / 2,
679
+ V,
680
+ n + $ / 2
681
+ );
682
+ B.addColorStop(0, h.start + "90"), B.addColorStop(0.5, h.mid + "70"), B.addColorStop(1, h.end + "50"), i.fillStyle = B, i.fillRect(V - 2 / 2, n - $ / 2, 2, $);
344
683
  }
345
- ),
346
- /* @__PURE__ */ e(
347
- Fe,
348
- {
349
- value: P,
350
- onChange: V,
351
- size: "xs",
352
- w: 80,
353
- "aria-label": "Volume"
684
+ }
685
+ if (s)
686
+ for (let M = 0; M < 15; M++) {
687
+ const C = (Math.sin(d * 1e-3 + M * 1.5) * 0.5 + 0.5) * _, F = n + Math.sin(d * 2e-3 + M) * 8, q = 1.5 + Math.sin(d * 3e-3 + M * 2) * 0.5;
688
+ i.beginPath(), i.arc(C, F, q, 0, Math.PI * 2), i.fillStyle = M % 2 === 0 ? h.start + "80" : h.end + "80", i.fill();
354
689
  }
355
- )
356
- ] }),
357
- u && /* @__PURE__ */ e(Z, { variant: "subtle", size: "sm", onClick: ee, "aria-label": "Download", children: /* @__PURE__ */ e(Je, { size: 16 }) })
358
- ] });
359
- }
360
- const ft = "_root_ujac8_1", _t = "_textarea_ujac8_5", xe = {
361
- root: ft,
362
- textarea: _t
363
- };
364
- function co({ code: t, filename: o, height: a = 384 }) {
365
- const [r, s] = T(!1), h = D(async () => {
366
- try {
367
- await navigator.clipboard.writeText(t), s(!0), setTimeout(() => s(!1), 2e3);
368
- } catch {
690
+ },
691
+ [t, s, h.start, h.mid, h.end]
692
+ );
693
+ return D(() => {
694
+ const i = r.current;
695
+ if (!i) return;
696
+ const _ = i.getContext("2d");
697
+ if (!_) return;
698
+ const c = () => {
699
+ const n = window.devicePixelRatio || 1, b = i.getBoundingClientRect();
700
+ i.width = b.width * n, i.height = b.height * n, _.scale(n, n);
701
+ };
702
+ c(), window.addEventListener("resize", c);
703
+ const d = performance.now(), w = (n) => {
704
+ const b = n - d, N = i.getBoundingClientRect();
705
+ k(_, N.width, N.height, b), a.current = requestAnimationFrame(w);
706
+ };
707
+ return a.current = requestAnimationFrame(w), () => {
708
+ window.removeEventListener("resize", c), a.current && cancelAnimationFrame(a.current);
709
+ };
710
+ }, [k]), D(() => {
711
+ if (t) {
712
+ queueMicrotask(() => u(!1)), y.current = Date.now();
713
+ return;
369
714
  }
370
- }, [t]);
371
- return /* @__PURE__ */ l(x, { className: xe.root, children: [
372
- /* @__PURE__ */ l(z, { justify: "space-between", mb: "xs", children: [
373
- o && /* @__PURE__ */ e(v, { size: "sm", fw: 500, c: "dimmed", children: o }),
374
- /* @__PURE__ */ e(
375
- re,
715
+ const _ = setInterval(() => {
716
+ const c = Date.now();
717
+ y.current === null && (y.current = c);
718
+ const d = c - y.current, w = 12e4 + Math.random() * 6e4;
719
+ d >= w && !s && (u(!0), y.current = c, setTimeout(() => u(!1), 4e3));
720
+ }, 5e3);
721
+ return () => clearInterval(_);
722
+ }, [t, s]), /* @__PURE__ */ e(
723
+ x,
724
+ {
725
+ style: {
726
+ position: "relative",
727
+ width: "100%",
728
+ height: o,
729
+ overflow: "hidden",
730
+ pointerEvents: "none",
731
+ opacity: m ? 1 : 0.8
732
+ },
733
+ children: /* @__PURE__ */ e(
734
+ "canvas",
376
735
  {
377
- size: "xs",
378
- radius: "md",
379
- color: r ? "green" : "blue",
380
- onClick: h,
381
- children: r ? "Copied!" : "Copy"
736
+ ref: r,
737
+ style: {
738
+ width: "100%",
739
+ height: "100%",
740
+ display: "block"
741
+ }
382
742
  }
383
743
  )
384
- ] }),
385
- /* @__PURE__ */ e(
386
- "textarea",
387
- {
388
- readOnly: !0,
389
- value: t,
390
- className: xe.textarea,
391
- style: { height: a }
392
- }
393
- )
394
- ] });
744
+ }
745
+ );
395
746
  }
396
- const bt = "_root_ix1b2_1", vt = "_toast_ix1b2_5", Ne = {
397
- root: bt,
398
- toast: vt
747
+ const on = "_root_1vlvy_1", rn = "_video_1vlvy_9", Me = {
748
+ root: on,
749
+ video: rn
750
+ };
751
+ function an({ src: t, opacity: o = 0.3 }) {
752
+ return /* @__PURE__ */ e("div", { className: Me.root, style: { opacity: o }, children: /* @__PURE__ */ e("video", { autoPlay: !0, muted: !0, loop: !0, playsInline: !0, className: Me.video, children: /* @__PURE__ */ e("source", { src: t, type: "video/mp4" }) }) });
753
+ }
754
+ const sn = "_root_ix1b2_1", ln = "_toast_ix1b2_5", Be = {
755
+ root: sn,
756
+ toast: ln
399
757
  };
400
758
  function ue({ value: t, children: o }) {
401
- const [a, r] = T(null), s = D(() => {
759
+ const [r, a] = T(null), s = L(() => {
402
760
  navigator.clipboard.writeText(t).then(() => {
403
- r(`Copied ${t}`), setTimeout(() => r(null), 1800);
761
+ a(`Copied ${t}`), setTimeout(() => a(null), 1800);
404
762
  });
405
763
  }, [t]);
406
- return /* @__PURE__ */ l(Le, { children: [
407
- /* @__PURE__ */ e(
408
- "span",
409
- {
410
- onClick: s,
411
- className: Ne.root,
412
- title: `Click to copy ${t}`,
413
- children: o
414
- }
415
- ),
416
- a && /* @__PURE__ */ e(We, { children: /* @__PURE__ */ e(
417
- je,
418
- {
419
- withCloseButton: !1,
420
- className: Ne.toast,
421
- color: "blue",
422
- children: a
423
- }
424
- ) })
764
+ return /* @__PURE__ */ l(Fe, { children: [
765
+ /* @__PURE__ */ e("span", { onClick: s, className: Be.root, title: `Click to copy ${t}`, children: o }),
766
+ r && /* @__PURE__ */ e(Xe, { children: /* @__PURE__ */ e(Ye, { withCloseButton: !1, className: Be.toast, color: "blue", children: r }) })
425
767
  ] });
426
768
  }
427
- const yt = "_root_3ht5s_1", kt = "_shade_3ht5s_5", wt = "_color_3ht5s_10", xt = "_main_3ht5s_20", ce = {
428
- root: yt,
429
- shade: kt,
430
- color: wt,
431
- main: xt
769
+ const cn = "_root_3ht5s_1", dn = "_shade_3ht5s_5", mn = "_color_3ht5s_10", hn = "_main_3ht5s_20", me = {
770
+ root: cn,
771
+ shade: dn,
772
+ color: mn,
773
+ main: hn
432
774
  };
433
- function mo({ name: t, shades: o, mainIndex: a = 5 }) {
434
- return /* @__PURE__ */ l("div", { className: ce.root, children: [
775
+ function Fo({ name: t, shades: o, mainIndex: r = 5 }) {
776
+ return /* @__PURE__ */ l("div", { className: me.root, children: [
435
777
  /* @__PURE__ */ e(se, { order: 4, size: "lg", tt: "capitalize", mb: "xs", children: t }),
436
- /* @__PURE__ */ e(ae, { cols: 10, spacing: 4, children: o.map((r, s) => /* @__PURE__ */ e(ue, { value: r, children: /* @__PURE__ */ l("div", { className: ce.shade, children: [
778
+ /* @__PURE__ */ e(re, { cols: 10, spacing: 4, children: o.map((a, s) => /* @__PURE__ */ e(ue, { value: a, children: /* @__PURE__ */ l("div", { className: me.shade, children: [
437
779
  /* @__PURE__ */ e(
438
780
  "div",
439
781
  {
440
- className: `${ce.color} ${s === a ? ce.main : ""}`,
441
- style: { backgroundColor: r }
782
+ className: `${me.color} ${s === r ? me.main : ""}`,
783
+ style: { backgroundColor: a }
442
784
  }
443
785
  ),
444
786
  /* @__PURE__ */ e(v, { size: "xs", c: "dimmed", ta: "center", mt: 4, children: s }),
445
- /* @__PURE__ */ e(v, { size: "xs", c: "dimmed", ta: "center", ff: "monospace", children: r })
787
+ /* @__PURE__ */ e(v, { size: "xs", c: "dimmed", ta: "center", ff: "monospace", children: a })
446
788
  ] }) }, s)) })
447
789
  ] });
448
790
  }
449
- const Nt = "_root_1vxkx_1", Tt = "_preview_1vxkx_11", $t = "_info_1vxkx_15", ge = {
450
- root: Nt,
451
- preview: Tt,
452
- info: $t
791
+ const un = "_root_1vxkx_1", gn = "_preview_1vxkx_11", pn = "_info_1vxkx_15", ge = {
792
+ root: un,
793
+ preview: gn,
794
+ info: pn
453
795
  };
454
- function uo({ name: t, hex: o, label: a }) {
796
+ function Eo({ name: t, hex: o, label: r }) {
455
797
  return /* @__PURE__ */ e(ue, { value: o, children: /* @__PURE__ */ l(Y, { className: ge.root, shadow: "lg", radius: "md", withBorder: !1, children: [
456
798
  /* @__PURE__ */ e("div", { className: ge.preview, style: { backgroundColor: o } }),
457
799
  /* @__PURE__ */ l("div", { className: ge.info, children: [
458
800
  /* @__PURE__ */ e(v, { fw: 600, size: "sm", children: t }),
459
801
  /* @__PURE__ */ e(v, { size: "xs", c: "dimmed", ff: "monospace", children: o }),
460
- a && /* @__PURE__ */ e(v, { size: "xs", c: "dimmed", children: a })
802
+ r && /* @__PURE__ */ e(v, { size: "xs", c: "dimmed", children: r })
461
803
  ] })
462
804
  ] }) });
463
805
  }
464
- const It = "_root_dzed6_1", Ct = "_dont_dzed6_7", zt = "_dontIcon_dzed6_12", Mt = "_dontLabel_dzed6_13", Bt = "_doIcon_dzed6_22", Lt = "_doLabel_dzed6_23", X = {
465
- root: It,
466
- dont: Ct,
467
- dontIcon: zt,
468
- dontLabel: Mt,
469
- do: "_do_dzed6_7",
470
- doIcon: Bt,
471
- doLabel: Lt
806
+ const fn = "_root_9li00_1", _n = "_preview_9li00_11", bn = "_info_9li00_15", pe = {
807
+ root: fn,
808
+ preview: _n,
809
+ info: bn
472
810
  };
473
- function ho({ items: t }) {
474
- return /* @__PURE__ */ e("div", { className: X.root, children: t.map((o, a) => /* @__PURE__ */ l(ae, { cols: { base: 1, sm: 2 }, spacing: "md", children: [
475
- /* @__PURE__ */ l(Y, { className: X.dont, p: "md", radius: "md", children: [
476
- /* @__PURE__ */ l(z, { gap: 6, mb: 6, children: [
477
- /* @__PURE__ */ e(Qe, { size: 16, className: X.dontIcon }),
478
- /* @__PURE__ */ e(v, { size: "sm", fw: 600, className: X.dontLabel, children: "Don't" })
479
- ] }),
480
- /* @__PURE__ */ e(v, { size: "sm", children: o.dont })
481
- ] }),
482
- /* @__PURE__ */ l(Y, { className: X.do, p: "md", radius: "md", children: [
483
- /* @__PURE__ */ l(z, { gap: 6, mb: 6, children: [
484
- /* @__PURE__ */ e(Ze, { size: 16, className: X.doIcon }),
485
- /* @__PURE__ */ e(v, { size: "sm", fw: 600, className: X.doLabel, children: "Do" })
486
- ] }),
487
- /* @__PURE__ */ e(v, { size: "sm", children: o.do })
811
+ function Ao({ name: t, colors: o, description: r }) {
812
+ const a = `linear-gradient(135deg, ${o[0]} 0%, ${o[1]} 100%)`;
813
+ return /* @__PURE__ */ e(ue, { value: a, children: /* @__PURE__ */ l(Y, { className: pe.root, shadow: "lg", radius: "md", children: [
814
+ /* @__PURE__ */ e("div", { className: pe.preview, style: { background: a } }),
815
+ /* @__PURE__ */ l("div", { className: pe.info, children: [
816
+ /* @__PURE__ */ e(v, { fw: 600, size: "sm", children: t }),
817
+ r && /* @__PURE__ */ e(v, { size: "xs", c: "dimmed", children: r }),
818
+ /* @__PURE__ */ l(v, { size: "xs", c: "dimmed", ff: "monospace", children: [
819
+ o[0],
820
+ " ",
821
+ o[1]
822
+ ] })
488
823
  ] })
489
- ] }, a)) });
824
+ ] }) });
490
825
  }
491
- const Dt = "_root_xi08i_1", St = "_inner_xi08i_6", Te = {
492
- root: Dt,
493
- inner: St
826
+ const vn = "_toggle_1nlbe_1", yn = "_toggleTrack_1nlbe_7", kn = "_toggleTrackDark_1nlbe_16", wn = "_toggleThumb_1nlbe_20", xn = "_toggleThumbDark_1nlbe_32", Nn = "_card_1nlbe_36", Tn = "_preview_1nlbe_49", $n = "_sampleText_1nlbe_58", Cn = "_details_1nlbe_65", G = {
827
+ toggle: vn,
828
+ toggleTrack: yn,
829
+ toggleTrackDark: kn,
830
+ toggleThumb: wn,
831
+ toggleThumbDark: xn,
832
+ card: Nn,
833
+ preview: Tn,
834
+ sampleText: $n,
835
+ details: Cn
494
836
  };
495
- function go({
496
- title: t,
497
- description: o,
498
- expandedContent: a,
499
- icon: r,
500
- color: s = "blue",
501
- iconSize: h = "lg",
502
- collapsedHeight: y = 120,
503
- threshold: _ = 0.5,
504
- delay: g = 300,
505
- expanded: m,
506
- onExpandedChange: u
507
- }) {
508
- const k = j(null), [i, b] = T(!1), c = m !== void 0, d = c ? m : i;
509
- return S(() => {
510
- if (c) return;
511
- const w = k.current;
512
- if (!w) return;
513
- const n = new IntersectionObserver(
514
- ([f]) => {
515
- f.isIntersecting && setTimeout(() => {
516
- b(!0), u == null || u(!0);
517
- }, g);
518
- },
519
- { threshold: _ }
520
- );
521
- return n.observe(w), () => n.disconnect();
522
- }, [c, _, g, u]), /* @__PURE__ */ e(
523
- Y,
524
- {
525
- ref: k,
526
- radius: 4,
527
- className: Te.root,
528
- component: L.div,
529
- animate: { height: d ? "auto" : y },
530
- transition: { duration: 0.5, ease: "easeOut" },
531
- children: /* @__PURE__ */ e("div", { className: Te.inner, children: /* @__PURE__ */ l(z, { align: "flex-start", justify: "space-between", gap: "lg", wrap: "nowrap", children: [
532
- /* @__PURE__ */ l(K, { gap: "xs", style: { flex: 1 }, children: [
533
- /* @__PURE__ */ e(v, { fw: 700, size: "xl", lh: 1.3, children: t }),
534
- /* @__PURE__ */ e(v, { size: "md", c: "dimmed", children: o }),
535
- /* @__PURE__ */ e(
536
- L.div,
537
- {
538
- initial: { opacity: 0, height: 0 },
539
- animate: {
540
- opacity: d ? 1 : 0,
541
- height: d ? "auto" : 0
542
- },
543
- transition: { duration: 0.4, delay: 0.2 },
544
- style: { overflow: "hidden" },
545
- children: typeof a == "string" ? /* @__PURE__ */ e(v, { size: "sm", c: "dimmed", mt: "sm", children: a }) : a
546
- }
547
- )
548
- ] }),
549
- /* @__PURE__ */ e(
550
- L.div,
551
- {
552
- animate: { scale: d ? 1.1 : 1 },
553
- transition: { duration: 0.3 },
554
- children: /* @__PURE__ */ e(Ae, { size: h, radius: 4, color: s, variant: "filled", children: /* @__PURE__ */ e(r, { size: 20, stroke: 1.5 }) })
555
- }
556
- )
557
- ] }) })
837
+ function jo() {
838
+ const [t, o] = T(!1);
839
+ Je("light");
840
+ const r = {
841
+ light: {
842
+ bg: "#FFFFFF",
843
+ border: "1px solid #e3e3e3",
844
+ colors: [
845
+ { name: "Primary Text", hex: "#212121", label: "gray[9]" },
846
+ { name: "Secondary Text", hex: "#808080", label: "gray[6]" },
847
+ { name: "Disabled Text", hex: "#CCCCCC", label: "" }
848
+ ]
849
+ },
850
+ dark: {
851
+ bg: "#1A1A1A",
852
+ border: "1px solid #424242",
853
+ colors: [
854
+ { name: "Primary Text", hex: "#FAFAFA", label: "gray[0]" },
855
+ { name: "Secondary Text", hex: "#9E9E9E", label: "gray[5]" },
856
+ { name: "Disabled Text", hex: "#424242", label: "gray[8]" }
857
+ ]
558
858
  }
559
- );
859
+ }, a = t ? r.dark : r.light;
860
+ return /* @__PURE__ */ l(x, { my: "xl", children: [
861
+ /* @__PURE__ */ e(x, { mb: "lg", style: { display: "flex", alignItems: "center" }, children: /* @__PURE__ */ e(
862
+ ae,
863
+ {
864
+ onClick: () => o(!t),
865
+ variant: "default",
866
+ radius: "xl",
867
+ size: "sm",
868
+ className: G.toggle,
869
+ leftSection: /* @__PURE__ */ e(x, { className: `${G.toggleTrack} ${t ? G.toggleTrackDark : ""}`, children: /* @__PURE__ */ e(x, { className: `${G.toggleThumb} ${t ? G.toggleThumbDark : ""}` }) }),
870
+ children: t ? "Dark Mode" : "Light Mode"
871
+ }
872
+ ) }),
873
+ /* @__PURE__ */ e(re, { cols: { base: 1, md: 3 }, spacing: "lg", children: a.colors.map((s) => /* @__PURE__ */ e(ue, { value: s.hex, children: /* @__PURE__ */ l(x, { className: G.card, children: [
874
+ /* @__PURE__ */ e(
875
+ x,
876
+ {
877
+ className: G.preview,
878
+ style: { backgroundColor: a.bg, border: a.border },
879
+ children: /* @__PURE__ */ e(v, { style: { color: s.hex }, className: G.sampleText, children: "Aa" })
880
+ }
881
+ ),
882
+ /* @__PURE__ */ l(x, { p: "md", className: G.details, children: [
883
+ /* @__PURE__ */ e(v, { fw: 600, children: s.name }),
884
+ /* @__PURE__ */ e(v, { size: "sm", c: "dimmed", ff: "monospace", children: s.hex }),
885
+ s.label && /* @__PURE__ */ e(v, { size: "xs", c: "dimmed", children: s.label })
886
+ ] })
887
+ ] }) }, s.name + s.hex)) })
888
+ ] });
560
889
  }
561
- const Pt = "_root_ho0ln_1", Et = "_visible_ho0ln_7", $e = {
562
- root: Pt,
563
- visible: Et
890
+ const In = "_root_n9zxy_1", zn = "_playButton_n9zxy_8", Mn = "_time_n9zxy_22", Bn = "_volumeGroup_n9zxy_28", oe = {
891
+ root: In,
892
+ playButton: zn,
893
+ time: Mn,
894
+ volumeGroup: Bn
564
895
  };
565
- function de({
566
- children: t,
567
- delay: o = 0,
568
- threshold: a = 0.1,
569
- className: r,
570
- ...s
571
- }) {
572
- const h = j(null), [y, _] = T(!1);
573
- return S(() => {
574
- const g = h.current;
575
- if (!g) return;
576
- const m = new IntersectionObserver(
577
- ([u]) => {
578
- u.isIntersecting && (o > 0 ? setTimeout(() => _(!0), o) : _(!0));
579
- },
580
- { threshold: a }
581
- );
582
- return m.observe(g), () => m.disconnect();
583
- }, [o, a]), /* @__PURE__ */ e(
584
- x,
585
- {
586
- ref: h,
587
- className: `${$e.root} ${y ? $e.visible : ""} ${r ?? ""}`,
588
- ...s,
589
- children: t
590
- }
591
- );
896
+ function fe(t) {
897
+ const o = Math.floor(t / 60), r = Math.floor(t % 60);
898
+ return `${o.toString().padStart(2, "0")}:${r.toString().padStart(2, "0")}`;
592
899
  }
593
- function po({ isActive: t = !1, height: o = 60 }) {
594
- const a = j(null), r = j(void 0), [s, h] = T(!1), y = j(null), _ = j(null), { colorScheme: g } = Ge(), m = g === "dark", u = {
595
- start: m ? "#7950F2" : "#9775FA",
596
- mid: m ? "#BE4BDB" : "#DA77F2",
597
- end: m ? "#15AABF" : "#22B8CF"
598
- }, k = D(
599
- (i, b, c, d) => {
600
- i.clearRect(0, 0, b, c);
601
- const w = t || s, n = c * 0.65, f = t ? 5 : s ? 7 : 1.5;
602
- w && (_.current === null && (_.current = Math.random()), Math.floor(d / 500) !== Math.floor((d - 16) / 500) && (_.current = Math.random()));
603
- const N = i.createLinearGradient(0, 0, b, 0);
604
- N.addColorStop(0, u.start), N.addColorStop(0.5, u.mid), N.addColorStop(1, u.end), i.strokeStyle = N, i.lineWidth = w ? 2.5 : 1.5, i.lineCap = "round", i.lineJoin = "round", w ? (i.shadowColor = u.mid, i.shadowBlur = s ? 12 : 8) : i.shadowBlur = 0, i.beginPath();
605
- const P = 300, q = b / P, O = t ? 0.02 : s ? 0.025 : 3e-3;
606
- for (let A = 0; A <= P; A++) {
607
- const M = A * q, I = M / b;
608
- let F = n;
609
- if (w) {
610
- const G = Math.sin(I * Math.PI * 6 + d * O) * f, V = Math.sin(I * Math.PI * 12 + d * O * 1.3) * (f * 0.4), H = Math.sin(I * Math.PI * 18 + d * O * 0.8) * (f * 0.2), ee = _.current ?? 0.5, p = Math.abs(I - ee), $ = p < 0.15 ? (1 - p / 0.15) * f * 1 : 0, B = Math.sin(I * Math.PI * 20 + d * O * 2) * $;
611
- let J = 0;
612
- s && (J = Math.sin(I * Math.PI * 30 + d * 0.03) * f * 0.4, J += Math.sin(I * Math.PI * 8 + d * 0.015) * f * 0.5);
613
- const ie = G + V + H + B + J, le = Math.sin(I * Math.PI);
614
- F = n + ie * le;
615
- } else
616
- F += Math.sin(I * Math.PI * 2 + d * O) * f;
617
- A === 0 ? i.moveTo(M, F) : i.lineTo(M, F);
618
- }
619
- if (i.stroke(), t) {
620
- const I = b / 80, F = 16;
621
- i.shadowBlur = 3;
622
- for (let G = 0; G < 80; G++) {
623
- const V = G * I + I / 2, H = V / b, ee = Math.sin(H * Math.PI * 8 + d * 0.025) * 0.5 + Math.sin(H * Math.PI * 14 + d * 0.018) * 0.3 + Math.sin(H * Math.PI * 4 + d * 0.03) * 0.2, p = Math.sin(H * Math.PI), $ = Math.abs(ee) * F * p, B = i.createLinearGradient(
624
- V,
625
- n - $ / 2,
626
- V,
627
- n + $ / 2
628
- );
629
- B.addColorStop(0, u.start + "90"), B.addColorStop(0.5, u.mid + "70"), B.addColorStop(1, u.end + "50"), i.fillStyle = B, i.fillRect(V - 2 / 2, n - $ / 2, 2, $);
630
- }
900
+ function qo({
901
+ src: t,
902
+ filename: o = "audio",
903
+ playButtonColor: r,
904
+ playButtonSize: a = 32,
905
+ waveColor: s = "#D0D0D0",
906
+ progressColor: u = "#a8a8a8",
907
+ waveHeight: y = 64,
908
+ barWidth: g = 3,
909
+ barGap: p = 2,
910
+ showVolume: m = !0,
911
+ showDownload: h = !0
912
+ }) {
913
+ const k = A(null), [i, _] = T(!1), [c, d] = T(0), [w, n] = T("00:00"), [b, N] = T("00:00"), [P, R] = T(50), [O, j] = T(50), [M, C] = T(!1);
914
+ D(() => {
915
+ const f = k.current;
916
+ if (!f) return;
917
+ f.volume = P / 100;
918
+ const $ = () => {
919
+ d(f.currentTime), n(fe(f.currentTime));
920
+ }, B = () => N(fe(f.duration)), J = () => {
921
+ setTimeout(() => {
922
+ d(0), n("00:00"), _(!1);
923
+ }, 500);
924
+ }, ie = () => _(!0), le = () => _(!1);
925
+ return f.addEventListener("timeupdate", $), f.addEventListener("loadedmetadata", B), f.addEventListener("ended", J), f.addEventListener("play", ie), f.addEventListener("pause", le), () => {
926
+ f.removeEventListener("timeupdate", $), f.removeEventListener("loadedmetadata", B), f.removeEventListener("ended", J), f.removeEventListener("play", ie), f.removeEventListener("pause", le);
927
+ };
928
+ }, [t]);
929
+ const F = L(() => {
930
+ const f = k.current;
931
+ f && (i ? f.pause() : f.play().catch(() => {
932
+ }));
933
+ }, [i]), q = L((f) => {
934
+ const $ = k.current;
935
+ $ && !isNaN(f) && isFinite(f) && ($.currentTime = f, d(f), n(fe(f)));
936
+ }, []), V = L((f) => {
937
+ const $ = k.current;
938
+ $ && ($.volume = f / 100, R(f), f > 0 ? (j(f), C(!1)) : C(!0));
939
+ }, []), H = L(() => {
940
+ const f = k.current;
941
+ if (f)
942
+ if (M) {
943
+ const $ = O || 50;
944
+ f.volume = $ / 100, R($), C(!1);
945
+ } else
946
+ j(P), f.volume = 0, R(0), C(!0);
947
+ }, [M, P, O]), te = L(() => {
948
+ fetch(t).then((f) => f.blob()).then((f) => {
949
+ const $ = URL.createObjectURL(f), B = document.createElement("a");
950
+ B.href = $, B.download = o, document.body.appendChild(B), B.click(), document.body.removeChild(B), URL.revokeObjectURL($);
951
+ }).catch(() => window.open(t, "_blank"));
952
+ }, [t, o]);
953
+ return /* @__PURE__ */ l(I, { gap: "sm", wrap: "nowrap", className: oe.root, children: [
954
+ /* @__PURE__ */ e("audio", { ref: k, src: t, preload: "metadata" }),
955
+ /* @__PURE__ */ e(
956
+ ee,
957
+ {
958
+ variant: "filled",
959
+ radius: "xl",
960
+ size: a,
961
+ color: r,
962
+ onClick: F,
963
+ "aria-label": i ? "Pause" : "Play",
964
+ className: oe.playButton,
965
+ children: i ? /* @__PURE__ */ e(Re, { size: a * 0.5 }) : /* @__PURE__ */ e(Oe, { size: a * 0.5 })
631
966
  }
632
- if (s)
633
- for (let M = 0; M < 15; M++) {
634
- const I = (Math.sin(d * 1e-3 + M * 1.5) * 0.5 + 0.5) * b, F = n + Math.sin(d * 2e-3 + M) * 8, G = 1.5 + Math.sin(d * 3e-3 + M * 2) * 0.5;
635
- i.beginPath(), i.arc(I, F, G, 0, Math.PI * 2), i.fillStyle = M % 2 === 0 ? u.start + "80" : u.end + "80", i.fill();
967
+ ),
968
+ /* @__PURE__ */ e(v, { size: "xs", ff: "monospace", c: "dimmed", className: oe.time, children: w }),
969
+ /* @__PURE__ */ e(x, { style: { flex: 1, minWidth: 0 }, children: /* @__PURE__ */ e(
970
+ _e,
971
+ {
972
+ audioRef: k,
973
+ currentTime: c,
974
+ onSeek: q,
975
+ waveColor: s,
976
+ progressColor: u,
977
+ height: y,
978
+ barWidth: g,
979
+ barGap: p
980
+ }
981
+ ) }),
982
+ /* @__PURE__ */ e(v, { size: "xs", ff: "monospace", c: "dimmed", className: oe.time, children: b }),
983
+ m && /* @__PURE__ */ l(I, { gap: 4, wrap: "nowrap", className: oe.volumeGroup, children: [
984
+ /* @__PURE__ */ e(
985
+ ee,
986
+ {
987
+ variant: "subtle",
988
+ size: "sm",
989
+ onClick: H,
990
+ "aria-label": M ? "Unmute" : "Mute",
991
+ children: M ? /* @__PURE__ */ e(ct, { size: 16 }) : /* @__PURE__ */ e(dt, { size: 16 })
636
992
  }
637
- },
638
- [t, s, u.start, u.mid, u.end]
639
- );
640
- return S(() => {
641
- const i = a.current;
642
- if (!i) return;
643
- const b = i.getContext("2d");
644
- if (!b) return;
645
- const c = () => {
646
- const n = window.devicePixelRatio || 1, f = i.getBoundingClientRect();
647
- i.width = f.width * n, i.height = f.height * n, b.scale(n, n);
648
- };
649
- c(), window.addEventListener("resize", c);
650
- const d = performance.now(), w = (n) => {
651
- const f = n - d, N = i.getBoundingClientRect();
652
- k(b, N.width, N.height, f), r.current = requestAnimationFrame(w);
653
- };
654
- return r.current = requestAnimationFrame(w), () => {
655
- window.removeEventListener("resize", c), r.current && cancelAnimationFrame(r.current);
656
- };
657
- }, [k]), S(() => {
658
- if (t) {
659
- queueMicrotask(() => h(!1)), y.current = Date.now();
660
- return;
661
- }
662
- const b = setInterval(() => {
663
- const c = Date.now();
664
- y.current === null && (y.current = c);
665
- const d = c - y.current, w = 12e4 + Math.random() * 6e4;
666
- d >= w && !s && (h(!0), y.current = c, setTimeout(() => h(!1), 4e3));
667
- }, 5e3);
668
- return () => clearInterval(b);
669
- }, [t, s]), /* @__PURE__ */ e(
670
- x,
671
- {
672
- style: {
673
- position: "relative",
674
- width: "100%",
675
- height: o,
676
- overflow: "hidden",
677
- pointerEvents: "none",
678
- opacity: m ? 1 : 0.8
679
- },
680
- children: /* @__PURE__ */ e(
681
- "canvas",
993
+ ),
994
+ /* @__PURE__ */ e(
995
+ Qe,
682
996
  {
683
- ref: a,
684
- style: {
685
- width: "100%",
686
- height: "100%",
687
- display: "block"
688
- }
997
+ value: P,
998
+ onChange: V,
999
+ size: "xs",
1000
+ w: 80,
1001
+ "aria-label": "Volume"
689
1002
  }
690
1003
  )
691
- }
692
- );
693
- }
694
- const Ft = "_root_9li00_1", Wt = "_preview_9li00_11", jt = "_info_9li00_15", pe = {
695
- root: Ft,
696
- preview: Wt,
697
- info: jt
698
- };
699
- function fo({ name: t, colors: o, description: a }) {
700
- const r = `linear-gradient(135deg, ${o[0]} 0%, ${o[1]} 100%)`;
701
- return /* @__PURE__ */ e(ue, { value: r, children: /* @__PURE__ */ l(Y, { className: pe.root, shadow: "lg", radius: "md", children: [
702
- /* @__PURE__ */ e("div", { className: pe.preview, style: { background: r } }),
703
- /* @__PURE__ */ l("div", { className: pe.info, children: [
704
- /* @__PURE__ */ e(v, { fw: 600, size: "sm", children: t }),
705
- a && /* @__PURE__ */ e(v, { size: "xs", c: "dimmed", children: a }),
706
- /* @__PURE__ */ l(v, { size: "xs", c: "dimmed", ff: "monospace", children: [
707
- o[0],
708
- " → ",
709
- o[1]
710
- ] })
711
- ] })
712
- ] }) });
1004
+ ] }),
1005
+ h && /* @__PURE__ */ e(ee, { variant: "subtle", size: "sm", onClick: te, "aria-label": "Download", children: /* @__PURE__ */ e(mt, { size: 16 }) })
1006
+ ] });
713
1007
  }
714
- const At = "_root_1vlvy_1", Gt = "_video_1vlvy_9", Ie = {
715
- root: At,
716
- video: Gt
1008
+ const Sn = "_root_13w21_1", Ln = "_playButton_13w21_11", Se = {
1009
+ root: Sn,
1010
+ playButton: Ln
1011
+ }, Dn = {
1012
+ mini: { height: 24, buttonSize: 20, iconSize: 14, waveHeight: 16, barWidth: 1, barGap: 0 },
1013
+ small: { height: 32, buttonSize: 28, iconSize: 16, waveHeight: 20, barWidth: 1, barGap: 0 },
1014
+ compact: { height: 40, buttonSize: 32, iconSize: 18, waveHeight: 24, barWidth: 2, barGap: 1 }
1015
+ }, Pn = Ge(
1016
+ ({
1017
+ audioUrl: t,
1018
+ size: o = "mini",
1019
+ waveColor: r = "#CCCCCC",
1020
+ progressColor: a = "#169bde",
1021
+ onPlay: s,
1022
+ onPause: u,
1023
+ className: y,
1024
+ style: g
1025
+ }, p) => {
1026
+ const m = A(null), [h, k] = T(!1), [i, _] = T(0), c = Dn[o];
1027
+ D(() => {
1028
+ const n = m.current;
1029
+ if (!n) return;
1030
+ const b = () => _(n.currentTime), N = () => {
1031
+ k(!1), _(0);
1032
+ }, P = () => k(!1), R = () => k(!0);
1033
+ return n.addEventListener("timeupdate", b), n.addEventListener("ended", N), n.addEventListener("pause", P), n.addEventListener("play", R), () => {
1034
+ n.removeEventListener("timeupdate", b), n.removeEventListener("ended", N), n.removeEventListener("pause", P), n.removeEventListener("play", R);
1035
+ };
1036
+ }, [t]);
1037
+ const d = L(() => {
1038
+ const n = m.current;
1039
+ n && (h ? (n.pause(), u == null || u()) : (n.play().catch(() => {
1040
+ }), s == null || s()));
1041
+ }, [h, s, u]), w = L((n) => {
1042
+ const b = m.current;
1043
+ b && !isNaN(n) && isFinite(n) && (b.currentTime = n, _(n));
1044
+ }, []);
1045
+ return /* @__PURE__ */ l(
1046
+ I,
1047
+ {
1048
+ ref: p,
1049
+ gap: o === "mini" ? 6 : o === "small" ? 8 : 10,
1050
+ wrap: "nowrap",
1051
+ className: `${Se.root} ${y ?? ""}`,
1052
+ style: { height: c.height, ...g },
1053
+ children: [
1054
+ /* @__PURE__ */ e("audio", { ref: m, src: t, preload: "metadata" }),
1055
+ /* @__PURE__ */ e(
1056
+ ee,
1057
+ {
1058
+ variant: "filled",
1059
+ color: "blue",
1060
+ radius: "xl",
1061
+ size: c.buttonSize,
1062
+ onClick: d,
1063
+ "aria-label": h ? "Pause" : "Play",
1064
+ className: Se.playButton,
1065
+ children: h ? /* @__PURE__ */ e(Re, { size: c.iconSize }) : /* @__PURE__ */ e(Oe, { size: c.iconSize })
1066
+ }
1067
+ ),
1068
+ /* @__PURE__ */ e(x, { style: { flex: 1, minWidth: 80 }, children: /* @__PURE__ */ e(
1069
+ _e,
1070
+ {
1071
+ audioRef: m,
1072
+ currentTime: i,
1073
+ onSeek: w,
1074
+ waveColor: r,
1075
+ progressColor: a,
1076
+ height: c.waveHeight,
1077
+ barWidth: c.barWidth,
1078
+ barGap: c.barGap
1079
+ }
1080
+ ) })
1081
+ ]
1082
+ }
1083
+ );
1084
+ }
1085
+ );
1086
+ Pn.displayName = "MiniAudioPlayer";
1087
+ const Wn = "_root_4fblk_1", Fn = "_actions_4fblk_22", En = "_fab_4fblk_43", An = "_actionButton_4fblk_63", he = {
1088
+ root: Wn,
1089
+ actions: Fn,
1090
+ fab: En,
1091
+ actionButton: An
717
1092
  };
718
- function Rt({ src: t, opacity: o = 0.3 }) {
719
- return /* @__PURE__ */ e("div", { className: Ie.root, style: { opacity: o }, children: /* @__PURE__ */ e("video", { autoPlay: !0, muted: !0, loop: !0, playsInline: !0, className: Ie.video, children: /* @__PURE__ */ e("source", { src: t, type: "video/mp4" }) }) });
1093
+ function Go({
1094
+ actions: t,
1095
+ icon: o,
1096
+ openIcon: r,
1097
+ direction: a = "up",
1098
+ color: s = "blue",
1099
+ size: u = 56,
1100
+ defaultOpen: y = !1,
1101
+ open: g,
1102
+ onOpenChange: p,
1103
+ style: m,
1104
+ className: h
1105
+ }) {
1106
+ const [k, i] = T(y), _ = g ?? k, c = L(() => {
1107
+ const n = !_;
1108
+ i(n), p == null || p(n);
1109
+ }, [_, p]), d = L(() => {
1110
+ i(!1), p == null || p(!1);
1111
+ }, [p]), w = a === "up" || a === "down";
1112
+ return /* @__PURE__ */ l(x, { className: `${he.root} ${h ?? ""}`, style: m, "data-direction": a, children: [
1113
+ /* @__PURE__ */ e("div", { className: he.actions, "data-direction": a, children: t.map((n, b) => {
1114
+ const N = a === "up" || a === "left" ? t.length - 1 - b : b;
1115
+ return /* @__PURE__ */ e(
1116
+ Ze,
1117
+ {
1118
+ mounted: _,
1119
+ transition: w ? "slide-up" : "slide-right",
1120
+ duration: 200,
1121
+ timingFunction: "ease",
1122
+ enterDelay: N * 40,
1123
+ children: (P) => /* @__PURE__ */ e(et, { label: n.label, position: w ? "left" : "top", children: /* @__PURE__ */ e(
1124
+ ee,
1125
+ {
1126
+ variant: "filled",
1127
+ color: "gray",
1128
+ radius: "xl",
1129
+ size: u * 0.7,
1130
+ style: P,
1131
+ className: he.actionButton,
1132
+ onClick: () => {
1133
+ n.onClick(), d();
1134
+ },
1135
+ "aria-label": n.label,
1136
+ children: n.icon
1137
+ }
1138
+ ) })
1139
+ },
1140
+ n.label
1141
+ );
1142
+ }) }),
1143
+ /* @__PURE__ */ e(
1144
+ ee,
1145
+ {
1146
+ variant: "filled",
1147
+ color: s,
1148
+ radius: "xl",
1149
+ size: u,
1150
+ onClick: c,
1151
+ className: he.fab,
1152
+ "data-open": _ || void 0,
1153
+ "aria-label": _ ? "Close actions" : "Open actions",
1154
+ children: _ ? r ?? o ?? /* @__PURE__ */ e(ye, { size: u * 0.45 }) : o ?? /* @__PURE__ */ e(ye, { size: u * 0.45 })
1155
+ }
1156
+ )
1157
+ ] });
720
1158
  }
721
- const qt = "_root_h15rs_1", Ot = "_content_h15rs_8", Vt = "_label_h15rs_21", Ht = "_vignette_h15rs_38", Ut = "_logoWrapper_h15rs_51", Xt = "_logo_h15rs_51", Yt = "_glow_h15rs_74", Kt = "_textWrapper_h15rs_86", Jt = "_heading_h15rs_92", Qt = "_shimmer_h15rs_126", Zt = "_tagline_h15rs_130", en = "_primaryButton_h15rs_146", tn = "_secondaryButton_h15rs_157", nn = "_scrollIndicator_h15rs_173", on = "_scrollLabel_h15rs_184", rn = "_scrollLine_h15rs_192", C = {
722
- root: qt,
723
- content: Ot,
724
- label: Vt,
725
- vignette: Ht,
726
- logoWrapper: Ut,
727
- logo: Xt,
728
- glow: Yt,
729
- textWrapper: Kt,
730
- heading: Jt,
731
- shimmer: Qt,
732
- tagline: Zt,
733
- primaryButton: en,
734
- secondaryButton: tn,
735
- scrollIndicator: nn,
736
- scrollLabel: on,
737
- scrollLine: rn
1159
+ const jn = "_root_h15rs_1", qn = "_content_h15rs_8", Gn = "_label_h15rs_21", Rn = "_vignette_h15rs_38", On = "_logoWrapper_h15rs_51", Vn = "_logo_h15rs_51", Hn = "_glow_h15rs_74", Un = "_textWrapper_h15rs_86", Kn = "_heading_h15rs_92", Xn = "_shimmer_h15rs_126", Yn = "_tagline_h15rs_130", Jn = "_primaryButton_h15rs_146", Qn = "_secondaryButton_h15rs_157", Zn = "_scrollIndicator_h15rs_173", eo = "_scrollLabel_h15rs_184", to = "_scrollLine_h15rs_192", z = {
1160
+ root: jn,
1161
+ content: qn,
1162
+ label: Gn,
1163
+ vignette: Rn,
1164
+ logoWrapper: On,
1165
+ logo: Vn,
1166
+ glow: Hn,
1167
+ textWrapper: Un,
1168
+ heading: Kn,
1169
+ shimmer: Xn,
1170
+ tagline: Yn,
1171
+ primaryButton: Jn,
1172
+ secondaryButton: Qn,
1173
+ scrollIndicator: Zn,
1174
+ scrollLabel: eo,
1175
+ scrollLine: to
738
1176
  };
739
- function _o({
1177
+ function Ro({
740
1178
  variant: t = "logo",
741
1179
  heading: o,
742
- label: a,
743
- tagline: r,
744
- logoSrc: s = tt,
745
- gradient: h = "frequencyAlive",
1180
+ label: r,
1181
+ tagline: a,
1182
+ logoSrc: s = ht,
1183
+ gradient: u = "frequencyAlive",
746
1184
  shimmer: y = !0,
747
- primaryAction: _,
748
- secondaryAction: g,
1185
+ primaryAction: g,
1186
+ secondaryAction: p,
749
1187
  backgroundVideoSrc: m,
750
- showWaveform: u,
1188
+ showWaveform: h,
751
1189
  showScrollIndicator: k = !1
752
1190
  }) {
753
- const [i, b] = T(!1), c = typeof s == "string" ? s : s == null ? void 0 : s.src, d = o ?? (t === "text" ? "Your Message" : void 0), w = a || (t === "logo" ? "Welcome" : void 0), n = _ || g, f = u ?? !0, N = nt[h];
754
- return S(() => {
755
- b(!0);
756
- }, []), /* @__PURE__ */ l(x, { component: "section", className: C.root, children: [
757
- m && /* @__PURE__ */ e(Rt, { src: m }),
758
- /* @__PURE__ */ l("div", { className: C.content, children: [
759
- i && /* @__PURE__ */ l(Le, { children: [
1191
+ const [i, _] = T(!1), c = typeof s == "string" ? s : s == null ? void 0 : s.src, d = o ?? (t === "text" ? "Your Message" : void 0), w = r || (t === "logo" ? "Welcome" : void 0), n = g || p, b = h ?? !0, N = ut[u];
1192
+ return D(() => {
1193
+ _(!0);
1194
+ }, []), /* @__PURE__ */ l(x, { component: "section", className: z.root, children: [
1195
+ m && /* @__PURE__ */ e(an, { src: m }),
1196
+ /* @__PURE__ */ l("div", { className: z.content, children: [
1197
+ i && /* @__PURE__ */ l(Fe, { children: [
760
1198
  w && /* @__PURE__ */ e(
761
- L.p,
1199
+ S.p,
762
1200
  {
763
1201
  initial: { opacity: 0 },
764
1202
  animate: { opacity: 1 },
765
1203
  transition: { duration: 0.8, delay: 0.2 },
766
- className: C.label,
1204
+ className: z.label,
767
1205
  children: w
768
1206
  }
769
1207
  ),
770
1208
  t === "logo" && /* @__PURE__ */ l(
771
- L.div,
1209
+ S.div,
772
1210
  {
773
1211
  initial: { opacity: 0, scale: 0.8 },
774
1212
  animate: { opacity: 1, scale: 1 },
775
1213
  transition: { duration: 1.2, delay: 0.3, ease: "easeOut" },
776
- className: C.logoWrapper,
1214
+ className: z.logoWrapper,
777
1215
  children: [
778
- f && /* @__PURE__ */ e(we, {}),
779
- f && /* @__PURE__ */ e("div", { className: C.vignette }),
1216
+ b && /* @__PURE__ */ e(ze, {}),
1217
+ b && /* @__PURE__ */ e("div", { className: z.vignette }),
780
1218
  /* @__PURE__ */ e(
781
- L.img,
1219
+ S.img,
782
1220
  {
783
1221
  src: c,
784
1222
  alt: d ?? "Frequency",
785
- className: C.logo,
1223
+ className: z.logo,
786
1224
  animate: { rotate: [0, 0.5, -0.5, 0] },
787
1225
  transition: { duration: 8, repeat: 1 / 0, ease: "easeInOut" }
788
1226
  }
789
1227
  ),
790
- /* @__PURE__ */ e("div", { className: C.glow })
1228
+ /* @__PURE__ */ e("div", { className: z.glow })
791
1229
  ]
792
1230
  }
793
1231
  ),
794
1232
  t === "text" && d && /* @__PURE__ */ l(
795
- L.div,
1233
+ S.div,
796
1234
  {
797
1235
  initial: { opacity: 0, scale: 0.8 },
798
1236
  animate: { opacity: 1, scale: 1 },
799
1237
  transition: { duration: 1.2, delay: 0.3, ease: "easeOut" },
800
- className: C.textWrapper,
1238
+ className: z.textWrapper,
801
1239
  children: [
802
- f && /* @__PURE__ */ e(we, {}),
803
- f && /* @__PURE__ */ e("div", { className: C.vignette }),
1240
+ b && /* @__PURE__ */ e(ze, {}),
1241
+ b && /* @__PURE__ */ e("div", { className: z.vignette }),
804
1242
  /* @__PURE__ */ e(
805
1243
  se,
806
1244
  {
807
1245
  order: 1,
808
- className: `${C.heading} ${y ? C.shimmer : ""}`,
1246
+ className: `${z.heading} ${y ? z.shimmer : ""}`,
809
1247
  style: {
810
1248
  backgroundImage: `linear-gradient(135deg, ${N.from}, ${N.to}, ${N.from})`,
811
1249
  backgroundSize: y ? "200% 100%" : void 0
@@ -816,346 +1254,115 @@ function _o({
816
1254
  ]
817
1255
  }
818
1256
  ),
819
- r && /* @__PURE__ */ e(
820
- L.div,
1257
+ a && /* @__PURE__ */ e(
1258
+ S.div,
821
1259
  {
822
1260
  initial: { opacity: 0, y: 20 },
823
1261
  animate: { opacity: 1, y: 0 },
824
1262
  transition: { duration: 0.8, delay: 0.7 },
825
- children: /* @__PURE__ */ e(v, { className: C.tagline, children: r })
1263
+ children: /* @__PURE__ */ e(v, { className: z.tagline, children: a })
826
1264
  }
827
1265
  ),
828
1266
  n && /* @__PURE__ */ e(
829
- L.div,
1267
+ S.div,
830
1268
  {
831
1269
  initial: { opacity: 0, y: 20 },
832
1270
  animate: { opacity: 1, y: 0 },
833
1271
  transition: { duration: 0.8, delay: 0.9 },
834
- children: /* @__PURE__ */ l(z, { gap: "xl", justify: "center", wrap: "wrap", children: [
835
- _ && /* @__PURE__ */ e(
836
- re,
837
- {
838
- component: "a",
839
- href: _.href,
840
- size: "lg",
841
- radius: 4,
842
- className: C.primaryButton,
843
- children: _.label
844
- }
845
- ),
1272
+ children: /* @__PURE__ */ l(I, { gap: "xl", justify: "center", wrap: "wrap", children: [
846
1273
  g && /* @__PURE__ */ e(
847
- re,
1274
+ ae,
848
1275
  {
849
1276
  component: "a",
850
1277
  href: g.href,
851
1278
  size: "lg",
852
1279
  radius: 4,
853
- variant: "outline",
854
- className: C.secondaryButton,
1280
+ className: z.primaryButton,
855
1281
  children: g.label
856
1282
  }
857
- )
858
- ] })
859
- }
860
- )
861
- ] }),
862
- i && k && /* @__PURE__ */ l(
863
- L.div,
864
- {
865
- className: C.scrollIndicator,
866
- initial: { opacity: 0 },
867
- animate: { opacity: 1 },
868
- transition: { duration: 1, delay: 1.4 },
869
- children: [
870
- /* @__PURE__ */ e("span", { className: C.scrollLabel, children: "Scroll" }),
871
- /* @__PURE__ */ e(
872
- L.div,
873
- {
874
- className: C.scrollLine,
875
- animate: { scaleY: [1, 1.5, 1] },
876
- transition: { duration: 1.5, repeat: 1 / 0 }
877
- }
878
- )
879
- ]
880
- }
881
- )
882
- ] })
883
- ] });
884
- }
885
- function Ce({ variant: t, children: o }) {
886
- const a = t === "do";
887
- return /* @__PURE__ */ l(
888
- Be,
889
- {
890
- variant: "light",
891
- color: a ? "green" : "red",
892
- size: "lg",
893
- radius: "sm",
894
- styles: {
895
- root: { textTransform: "none", fontWeight: 400 },
896
- label: { whiteSpace: "normal", lineHeight: 1.4 }
897
- },
898
- children: [
899
- /* @__PURE__ */ l("strong", { children: [
900
- a ? "Do" : "Don't",
901
- ":"
902
- ] }),
903
- " ",
904
- o
905
- ]
906
- }
907
- );
908
- }
909
- const an = "_root_13w21_1", sn = "_playButton_13w21_11", ze = {
910
- root: an,
911
- playButton: sn
912
- }, ln = {
913
- mini: { height: 24, buttonSize: 20, iconSize: 14, waveHeight: 16, barWidth: 1, barGap: 0 },
914
- small: { height: 32, buttonSize: 28, iconSize: 16, waveHeight: 20, barWidth: 1, barGap: 0 },
915
- compact: { height: 40, buttonSize: 32, iconSize: 18, waveHeight: 24, barWidth: 2, barGap: 1 }
916
- }, cn = De(
917
- ({
918
- audioUrl: t,
919
- size: o = "mini",
920
- waveColor: a = "#CCCCCC",
921
- progressColor: r = "#169bde",
922
- onPlay: s,
923
- onPause: h,
924
- className: y,
925
- style: _
926
- }, g) => {
927
- const m = j(null), [u, k] = T(!1), [i, b] = T(0), c = ln[o];
928
- S(() => {
929
- const n = m.current;
930
- if (!n) return;
931
- const f = () => b(n.currentTime), N = () => {
932
- k(!1), b(0);
933
- }, P = () => k(!1), q = () => k(!0);
934
- return n.addEventListener("timeupdate", f), n.addEventListener("ended", N), n.addEventListener("pause", P), n.addEventListener("play", q), () => {
935
- n.removeEventListener("timeupdate", f), n.removeEventListener("ended", N), n.removeEventListener("pause", P), n.removeEventListener("play", q);
936
- };
937
- }, [t]);
938
- const d = D(() => {
939
- const n = m.current;
940
- n && (u ? (n.pause(), h == null || h()) : (n.play().catch(() => {
941
- }), s == null || s()));
942
- }, [u, s, h]), w = D((n) => {
943
- const f = m.current;
944
- f && !isNaN(n) && isFinite(n) && (f.currentTime = n, b(n));
945
- }, []);
946
- return /* @__PURE__ */ l(
947
- z,
948
- {
949
- ref: g,
950
- gap: o === "mini" ? 6 : o === "small" ? 8 : 10,
951
- wrap: "nowrap",
952
- className: `${ze.root} ${y ?? ""}`,
953
- style: { height: c.height, ..._ },
954
- children: [
955
- /* @__PURE__ */ e("audio", { ref: m, src: t, preload: "metadata" }),
956
- /* @__PURE__ */ e(
957
- Z,
958
- {
959
- variant: "filled",
960
- color: "blue",
961
- radius: "xl",
962
- size: c.buttonSize,
963
- onClick: d,
964
- "aria-label": u ? "Pause" : "Play",
965
- className: ze.playButton,
966
- children: u ? /* @__PURE__ */ e(Se, { size: c.iconSize }) : /* @__PURE__ */ e(Pe, { size: c.iconSize })
967
- }
968
- ),
969
- /* @__PURE__ */ e(x, { style: { flex: 1, minWidth: 80 }, children: /* @__PURE__ */ e(
970
- fe,
971
- {
972
- audioRef: m,
973
- currentTime: i,
974
- onSeek: w,
975
- waveColor: a,
976
- progressColor: r,
977
- height: c.waveHeight,
978
- barWidth: c.barWidth,
979
- barGap: c.barGap
980
- }
981
- ) })
982
- ]
983
- }
984
- );
985
- }
986
- );
987
- cn.displayName = "MiniAudioPlayer";
988
- const dn = "_root_1bah1_1", mn = {
989
- root: dn
990
- };
991
- function bo({
992
- accentColor: t,
993
- title: o,
994
- description: a,
995
- doHint: r,
996
- dontHint: s
997
- }) {
998
- return /* @__PURE__ */ l(
999
- Y,
1000
- {
1001
- className: mn.root,
1002
- p: "lg",
1003
- radius: "md",
1004
- style: { borderLeftColor: t },
1005
- children: [
1006
- /* @__PURE__ */ e(se, { order: 3, size: "h4", mb: "xs", children: o }),
1007
- /* @__PURE__ */ e(v, { c: "dimmed", children: a }),
1008
- (r || s) && /* @__PURE__ */ l(z, { gap: "sm", mt: "md", wrap: "wrap", children: [
1009
- r && /* @__PURE__ */ e(Ce, { variant: "do", children: r }),
1010
- s && /* @__PURE__ */ e(Ce, { variant: "dont", children: s })
1011
- ] })
1012
- ]
1013
- }
1014
- );
1015
- }
1016
- const un = "_root_ydu7j_1", hn = "_actions_ydu7j_22", gn = "_fab_ydu7j_43", pn = "_actionButton_ydu7j_61", me = {
1017
- root: un,
1018
- actions: hn,
1019
- fab: gn,
1020
- actionButton: pn
1021
- };
1022
- function vo({
1023
- actions: t,
1024
- icon: o,
1025
- openIcon: a,
1026
- direction: r = "up",
1027
- color: s = "blue",
1028
- size: h = 56,
1029
- defaultOpen: y = !1,
1030
- open: _,
1031
- onOpenChange: g,
1032
- style: m,
1033
- className: u
1034
- }) {
1035
- const [k, i] = T(y), b = _ ?? k, c = D(() => {
1036
- const n = !b;
1037
- i(n), g == null || g(n);
1038
- }, [b, g]), d = D(() => {
1039
- i(!1), g == null || g(!1);
1040
- }, [g]), w = r === "up" || r === "down";
1041
- return /* @__PURE__ */ l(
1042
- x,
1043
- {
1044
- className: `${me.root} ${u ?? ""}`,
1045
- style: m,
1046
- "data-direction": r,
1047
- children: [
1048
- /* @__PURE__ */ e("div", { className: me.actions, "data-direction": r, children: t.map((n, f) => {
1049
- const N = r === "up" || r === "left" ? t.length - 1 - f : f;
1050
- return /* @__PURE__ */ e(
1051
- Re,
1052
- {
1053
- mounted: b,
1054
- transition: w ? "slide-up" : "slide-right",
1055
- duration: 200,
1056
- timingFunction: "ease",
1057
- enterDelay: N * 40,
1058
- children: (P) => /* @__PURE__ */ e(qe, { label: n.label, position: w ? "left" : "top", children: /* @__PURE__ */ e(
1059
- Z,
1283
+ ),
1284
+ p && /* @__PURE__ */ e(
1285
+ ae,
1060
1286
  {
1061
- variant: "filled",
1062
- color: "gray",
1063
- radius: "xl",
1064
- size: h * 0.7,
1065
- style: P,
1066
- className: me.actionButton,
1067
- onClick: () => {
1068
- n.onClick(), d();
1069
- },
1070
- "aria-label": n.label,
1071
- children: n.icon
1287
+ component: "a",
1288
+ href: p.href,
1289
+ size: "lg",
1290
+ radius: 4,
1291
+ variant: "outline",
1292
+ className: z.secondaryButton,
1293
+ children: p.label
1072
1294
  }
1073
- ) })
1074
- },
1075
- n.label
1076
- );
1077
- }) }),
1078
- /* @__PURE__ */ e(
1079
- Z,
1080
- {
1081
- variant: "filled",
1082
- color: s,
1083
- radius: "xl",
1084
- size: h,
1085
- onClick: c,
1086
- className: me.fab,
1087
- "data-open": b || void 0,
1088
- "aria-label": b ? "Close actions" : "Open actions",
1089
- children: b ? a ?? o ?? /* @__PURE__ */ e(be, { size: h * 0.45 }) : o ?? /* @__PURE__ */ e(be, { size: h * 0.45 })
1295
+ )
1296
+ ] })
1090
1297
  }
1091
1298
  )
1092
- ]
1093
- }
1094
- );
1299
+ ] }),
1300
+ i && k && /* @__PURE__ */ l(
1301
+ S.div,
1302
+ {
1303
+ className: z.scrollIndicator,
1304
+ initial: { opacity: 0 },
1305
+ animate: { opacity: 1 },
1306
+ transition: { duration: 1, delay: 1.4 },
1307
+ children: [
1308
+ /* @__PURE__ */ e("span", { className: z.scrollLabel, children: "Scroll" }),
1309
+ /* @__PURE__ */ e(
1310
+ S.div,
1311
+ {
1312
+ className: z.scrollLine,
1313
+ animate: { scaleY: [1, 1.5, 1] },
1314
+ transition: { duration: 1.5, repeat: 1 / 0 }
1315
+ }
1316
+ )
1317
+ ]
1318
+ }
1319
+ )
1320
+ ] })
1321
+ ] });
1095
1322
  }
1096
- const fn = "_container_9xj91_1", _n = "_layout_9xj91_16", bn = "_reversed_9xj91_29", vn = "_headingSide_9xj91_39", yn = "_sticky_9xj91_49", kn = "_stickyInner_9xj91_54", wn = "_contentSide_9xj91_65", xn = "_title_9xj91_76", Nn = "_preTitle_9xj91_82", Tn = "_titleHighlight_9xj91_88", $n = "_description_9xj91_95", E = {
1097
- container: fn,
1098
- layout: _n,
1099
- reversed: bn,
1100
- headingSide: vn,
1101
- sticky: yn,
1102
- stickyInner: kn,
1103
- contentSide: wn,
1104
- title: xn,
1105
- preTitle: Nn,
1106
- titleHighlight: Tn,
1107
- description: $n
1323
+ const no = "_container_9xj91_1", oo = "_layout_9xj91_16", ro = "_reversed_9xj91_29", ao = "_headingSide_9xj91_39", so = "_sticky_9xj91_49", io = "_stickyInner_9xj91_54", lo = "_contentSide_9xj91_65", co = "_title_9xj91_76", mo = "_preTitle_9xj91_82", ho = "_titleHighlight_9xj91_88", uo = "_description_9xj91_95", W = {
1324
+ container: no,
1325
+ layout: oo,
1326
+ reversed: ro,
1327
+ headingSide: ao,
1328
+ sticky: so,
1329
+ stickyInner: io,
1330
+ contentSide: lo,
1331
+ title: co,
1332
+ preTitle: mo,
1333
+ titleHighlight: ho,
1334
+ description: uo
1108
1335
  };
1109
- function yo({
1336
+ function Oo({
1110
1337
  badge: t,
1111
1338
  badgeColor: o = "violet",
1112
- subtitle: a,
1113
- title: r,
1339
+ subtitle: r,
1340
+ title: a,
1114
1341
  titleColor: s = "blue",
1115
- preTitle: h,
1342
+ preTitle: u,
1116
1343
  description: y,
1117
- actions: _,
1118
- heading: g,
1344
+ actions: g,
1345
+ heading: p,
1119
1346
  children: m,
1120
- stickyHeading: u = !1,
1347
+ stickyHeading: h = !1,
1121
1348
  py: k,
1122
1349
  reversed: i = !1,
1123
- id: b,
1350
+ id: _,
1124
1351
  className: c
1125
1352
  }) {
1126
- const d = g ?? /* @__PURE__ */ l(K, { gap: "sm", children: [
1353
+ const d = p ?? /* @__PURE__ */ l(X, { gap: "sm", children: [
1127
1354
  t && /* @__PURE__ */ l(x, { children: [
1128
- /* @__PURE__ */ e(
1129
- Be,
1130
- {
1131
- color: o,
1132
- variant: "filled",
1133
- size: "sm",
1134
- radius: 4,
1135
- tt: "uppercase",
1136
- fw: 700,
1137
- children: t
1138
- }
1139
- ),
1140
- a && /* @__PURE__ */ e(v, { size: "sm", c: "dimmed", mt: "xs", tt: "uppercase", style: { letterSpacing: "0.05em" }, children: a })
1355
+ /* @__PURE__ */ e(We, { color: o, variant: "filled", size: "sm", radius: 4, tt: "uppercase", fw: 700, children: t }),
1356
+ r && /* @__PURE__ */ e(v, { size: "sm", c: "dimmed", mt: "xs", tt: "uppercase", style: { letterSpacing: "0.05em" }, children: r })
1141
1357
  ] }),
1142
- !t && a && /* @__PURE__ */ e(v, { size: "sm", c: "dimmed", tt: "uppercase", style: { letterSpacing: "0.05em" }, children: a }),
1143
- (h || r) && /* @__PURE__ */ l(se, { order: 2, className: E.title, children: [
1144
- h && /* @__PURE__ */ e("span", { className: E.preTitle, children: h }),
1145
- h && /* @__PURE__ */ e("br", {}),
1146
- r && /* @__PURE__ */ e(
1147
- v,
1148
- {
1149
- component: "span",
1150
- inherit: !0,
1151
- className: E.titleHighlight,
1152
- c: s,
1153
- children: r
1154
- }
1155
- )
1358
+ !t && r && /* @__PURE__ */ e(v, { size: "sm", c: "dimmed", tt: "uppercase", style: { letterSpacing: "0.05em" }, children: r }),
1359
+ (u || a) && /* @__PURE__ */ l(se, { order: 2, className: W.title, children: [
1360
+ u && /* @__PURE__ */ e("span", { className: W.preTitle, children: u }),
1361
+ u && /* @__PURE__ */ e("br", {}),
1362
+ a && /* @__PURE__ */ e(v, { component: "span", inherit: !0, className: W.titleHighlight, c: s, children: a })
1156
1363
  ] }),
1157
- y && /* @__PURE__ */ e(v, { size: "lg", c: "dimmed", lh: 1.7, className: E.description, children: y }),
1158
- _ && /* @__PURE__ */ e(x, { mt: "md", children: _ })
1364
+ y && /* @__PURE__ */ e(v, { size: "lg", c: "dimmed", lh: 1.7, className: W.description, children: y }),
1365
+ g && /* @__PURE__ */ e(x, { mt: "md", children: g })
1159
1366
  ] });
1160
1367
  return /* @__PURE__ */ e(
1161
1368
  x,
@@ -1163,351 +1370,115 @@ function yo({
1163
1370
  component: "section",
1164
1371
  py: k ?? "calc(var(--mantine-spacing-xl) * 3)",
1165
1372
  pos: "relative",
1166
- id: b,
1373
+ id: _,
1167
1374
  className: c,
1168
- children: /* @__PURE__ */ e(x, { className: E.container, children: /* @__PURE__ */ l(x, { className: `${E.layout} ${i ? E.reversed : ""}`, children: [
1169
- /* @__PURE__ */ e(
1170
- x,
1171
- {
1172
- className: `${E.headingSide} ${u ? E.sticky : ""}`,
1173
- children: /* @__PURE__ */ e(x, { className: u ? E.stickyInner : void 0, children: d })
1174
- }
1175
- ),
1176
- /* @__PURE__ */ e(x, { className: E.contentSide, children: m })
1375
+ children: /* @__PURE__ */ e(x, { className: W.container, children: /* @__PURE__ */ l(x, { className: `${W.layout} ${i ? W.reversed : ""}`, children: [
1376
+ /* @__PURE__ */ e(x, { className: `${W.headingSide} ${h ? W.sticky : ""}`, children: /* @__PURE__ */ e(x, { className: h ? W.stickyInner : void 0, children: d }) }),
1377
+ /* @__PURE__ */ e(x, { className: W.contentSide, children: m })
1177
1378
  ] }) })
1178
1379
  }
1179
1380
  );
1180
1381
  }
1181
- const In = "_root_ioshc_1", Cn = "_quoteIcon_ioshc_6", Me = {
1182
- root: In,
1183
- quoteIcon: Cn
1184
- };
1185
- function zn(t) {
1186
- return t.split(" ").map((o) => o[0]).join("").toUpperCase().slice(0, 2);
1187
- }
1188
- function ko({
1189
- quote: t,
1190
- name: o,
1191
- role: a,
1192
- company: r,
1193
- avatarSrc: s,
1194
- accentColor: h = "blue"
1195
- }) {
1196
- const y = `var(--mantine-color-${h}-filled)`;
1197
- return /* @__PURE__ */ l(Y, { className: Me.root, p: "lg", radius: "md", style: { borderLeftColor: y }, children: [
1198
- /* @__PURE__ */ e(et, { size: 32, className: Me.quoteIcon, color: y }),
1199
- /* @__PURE__ */ e(v, { fs: "italic", mt: "xs", mb: "md", children: t }),
1200
- /* @__PURE__ */ l(z, { gap: "sm", children: [
1201
- /* @__PURE__ */ e(Oe, { src: s, alt: o, color: h, radius: "xl", size: "md", children: zn(o) }),
1202
- /* @__PURE__ */ l(K, { gap: 0, children: [
1203
- /* @__PURE__ */ e(v, { fw: 600, size: "sm", children: o }),
1204
- (a || r) && /* @__PURE__ */ e(v, { size: "xs", c: "dimmed", children: [a, r].filter(Boolean).join(", ") })
1205
- ] })
1206
- ] })
1207
- ] });
1208
- }
1209
- const Mn = "_root_1bo86_1", Bn = "_label_1bo86_6", Ln = "_title_1bo86_11", Dn = "_description_1bo86_17", Sn = "_logoCard_1bo86_22", Q = {
1210
- root: Mn,
1211
- label: Bn,
1212
- title: Ln,
1213
- description: Dn,
1214
- logoCard: Sn
1215
- };
1216
- function wo({
1217
- title: t = "Our Logos",
1218
- label: o = "Identity",
1219
- description: a = "The Frequency identity comes in two forms — the horizontal textmark for standard use and the circular brand mark for compact spaces and hero moments."
1382
+ function Vo({
1383
+ value: t,
1384
+ suffix: o = "",
1385
+ prefix: r = "",
1386
+ duration: a = 2e3,
1387
+ threshold: s = 0.5,
1388
+ abbreviate: u = !0,
1389
+ decimals: y,
1390
+ ...g
1220
1391
  }) {
1221
- return /* @__PURE__ */ e("section", { className: Q.root, children: /* @__PURE__ */ l(Ve, { size: "xl", children: [
1222
- /* @__PURE__ */ l(de, { children: [
1223
- /* @__PURE__ */ e(v, { className: Q.label, size: "xs", tt: "uppercase", c: "blue.5", mb: "xs", children: o }),
1224
- /* @__PURE__ */ e(se, { order: 2, className: Q.title, mb: "lg", children: t }),
1225
- /* @__PURE__ */ e(v, { className: Q.description, size: "lg", c: "gray.6", mb: 60, maw: 600, children: a })
1226
- ] }),
1227
- /* @__PURE__ */ l(ae, { cols: { base: 1, lg: 2 }, spacing: 32, mb: 48, children: [
1228
- /* @__PURE__ */ e(de, { delay: 100, children: /* @__PURE__ */ e(_e, { padding: 0, radius: "lg", className: Q.logoCard, children: /* @__PURE__ */ l(K, { gap: 0, children: [
1229
- /* @__PURE__ */ e(z, { justify: "center", align: "center", bg: "white", h: 240, children: /* @__PURE__ */ e(
1230
- te,
1231
- {
1232
- src: "/images/Frequency_logo-light.png",
1233
- alt: "Frequency textmark on light",
1234
- h: 48,
1235
- fit: "contain"
1236
- }
1237
- ) }),
1238
- /* @__PURE__ */ e(z, { justify: "center", align: "center", bg: "gray.9", h: 240, children: /* @__PURE__ */ e(
1239
- te,
1240
- {
1241
- src: "/images/Frequency_logo-dark.png",
1242
- alt: "Frequency textmark on dark",
1243
- h: 48,
1244
- fit: "contain"
1245
- }
1246
- ) }),
1247
- /* @__PURE__ */ e(x, { p: "md", bg: "gray.1", children: /* @__PURE__ */ e(v, { size: "sm", c: "gray.6", fw: 600, ff: "Montserrat, sans-serif", children: "Primary Textmark" }) })
1248
- ] }) }) }),
1249
- /* @__PURE__ */ e(de, { delay: 200, children: /* @__PURE__ */ e(_e, { padding: 0, radius: "lg", className: Q.logoCard, children: /* @__PURE__ */ l(K, { gap: 0, children: [
1250
- /* @__PURE__ */ l(ae, { cols: 3, children: [
1251
- /* @__PURE__ */ e(z, { justify: "center", align: "center", bg: "white", style: { aspectRatio: "1/1" }, children: /* @__PURE__ */ e(
1252
- te,
1253
- {
1254
- src: "/images/new-frequency-logo.png",
1255
- alt: "Brand mark on light",
1256
- w: 80,
1257
- h: 80,
1258
- fit: "contain"
1259
- }
1260
- ) }),
1261
- /* @__PURE__ */ e(z, { justify: "center", align: "center", bg: "gray.9", style: { aspectRatio: "1/1" }, children: /* @__PURE__ */ e(
1262
- te,
1263
- {
1264
- src: "/images/frequency-mark-white.svg",
1265
- alt: "Brand mark on dark",
1266
- w: 80,
1267
- h: 80,
1268
- fit: "contain"
1269
- }
1270
- ) }),
1271
- /* @__PURE__ */ e(
1272
- z,
1273
- {
1274
- justify: "center",
1275
- align: "center",
1276
- style: {
1277
- aspectRatio: "1/1",
1278
- background: "linear-gradient(135deg, #169BDE 0%, #7E57C2 100%)"
1279
- },
1280
- children: /* @__PURE__ */ e(
1281
- te,
1282
- {
1283
- src: "/images/frequency-mark-white.svg",
1284
- alt: "Brand mark on gradient",
1285
- w: 80,
1286
- h: 80,
1287
- fit: "contain"
1288
- }
1289
- )
1290
- }
1291
- )
1292
- ] }),
1293
- /* @__PURE__ */ e(x, { p: "md", bg: "gray.1", children: /* @__PURE__ */ e(v, { size: "sm", c: "gray.6", fw: 600, ff: "Montserrat, sans-serif", children: "Circular Brand Mark" }) })
1294
- ] }) }) })
1295
- ] }),
1296
- /* @__PURE__ */ e(de, { delay: 300, children: /* @__PURE__ */ l(
1297
- He,
1298
- {
1299
- href: "/logos",
1300
- fw: 600,
1301
- c: "blue.5",
1302
- underline: "hover",
1303
- style: { display: "flex", alignItems: "center", gap: 8 },
1304
- children: [
1305
- "View all logo variants and usage rules",
1306
- /* @__PURE__ */ e(
1307
- "svg",
1308
- {
1309
- className: "w-4 h-4",
1310
- fill: "none",
1311
- stroke: "currentColor",
1312
- strokeWidth: "2",
1313
- viewBox: "0 0 24 24",
1314
- children: /* @__PURE__ */ e("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M17 8l4 4m0 0l-4 4m4-4H3" })
1315
- }
1316
- )
1317
- ]
1318
- }
1319
- ) })
1320
- ] }) });
1321
- }
1322
- const Pn = "_toggle_1nlbe_1", En = "_toggleTrack_1nlbe_7", Fn = "_toggleTrackDark_1nlbe_16", Wn = "_toggleThumb_1nlbe_20", jn = "_toggleThumbDark_1nlbe_32", An = "_card_1nlbe_36", Gn = "_preview_1nlbe_49", Rn = "_sampleText_1nlbe_58", qn = "_details_1nlbe_65", R = {
1323
- toggle: Pn,
1324
- toggleTrack: En,
1325
- toggleTrackDark: Fn,
1326
- toggleThumb: Wn,
1327
- toggleThumbDark: jn,
1328
- card: An,
1329
- preview: Gn,
1330
- sampleText: Rn,
1331
- details: qn
1332
- };
1333
- function xo() {
1334
- const [t, o] = T(!1);
1335
- Ue("light");
1336
- const a = {
1337
- light: {
1338
- bg: "#FFFFFF",
1339
- border: "1px solid #e3e3e3",
1340
- colors: [
1341
- { name: "Primary Text", hex: "#212121", label: "gray[9]" },
1342
- { name: "Secondary Text", hex: "#808080", label: "gray[6]" },
1343
- { name: "Disabled Text", hex: "#CCCCCC", label: "" }
1344
- ]
1345
- },
1346
- dark: {
1347
- bg: "#1A1A1A",
1348
- border: "1px solid #424242",
1349
- colors: [
1350
- { name: "Primary Text", hex: "#FAFAFA", label: "gray[0]" },
1351
- { name: "Secondary Text", hex: "#9E9E9E", label: "gray[5]" },
1352
- { name: "Disabled Text", hex: "#424242", label: "gray[8]" }
1353
- ]
1354
- }
1355
- }, r = t ? a.dark : a.light;
1356
- return /* @__PURE__ */ l(x, { my: "xl", children: [
1357
- /* @__PURE__ */ e(x, { mb: "lg", style: { display: "flex", alignItems: "center" }, children: /* @__PURE__ */ e(
1358
- re,
1359
- {
1360
- onClick: () => o(!t),
1361
- variant: "default",
1362
- radius: "xl",
1363
- size: "sm",
1364
- className: R.toggle,
1365
- leftSection: /* @__PURE__ */ e(x, { className: `${R.toggleTrack} ${t ? R.toggleTrackDark : ""}`, children: /* @__PURE__ */ e(x, { className: `${R.toggleThumb} ${t ? R.toggleThumbDark : ""}` }) }),
1366
- children: t ? "Dark Mode" : "Light Mode"
1392
+ const [p, m] = T(0), [h, k] = T(!1), i = A(null);
1393
+ return D(() => {
1394
+ const c = i.current;
1395
+ if (!c) return;
1396
+ const d = new IntersectionObserver(
1397
+ ([w]) => {
1398
+ w.isIntersecting && !h && k(!0);
1399
+ },
1400
+ { threshold: s }
1401
+ );
1402
+ return d.observe(c), () => d.disconnect();
1403
+ }, [h, s]), D(() => {
1404
+ if (!h) return;
1405
+ let c, d;
1406
+ const w = (n) => {
1407
+ c || (c = n);
1408
+ const b = Math.min((n - c) / a, 1), N = 1 - Math.pow(1 - b, 3);
1409
+ m(N * t), b < 1 && (d = requestAnimationFrame(w));
1410
+ };
1411
+ return d = requestAnimationFrame(w), () => cancelAnimationFrame(d);
1412
+ }, [h, t, a]), /* @__PURE__ */ l(v, { component: "span", ref: i, style: { fontVariantNumeric: "tabular-nums" }, ...g, children: [
1413
+ r,
1414
+ (() => {
1415
+ if (u && t >= 1e3) {
1416
+ const c = p / 1e3;
1417
+ return c % 1 === 0 ? `${Math.round(c)}K` : `${c.toFixed(1)}K`;
1367
1418
  }
1368
- ) }),
1369
- /* @__PURE__ */ e(ae, { cols: { base: 1, md: 3 }, spacing: "lg", children: r.colors.map((s) => /* @__PURE__ */ e(ue, { value: s.hex, children: /* @__PURE__ */ l(x, { className: R.card, children: [
1370
- /* @__PURE__ */ e(
1371
- x,
1372
- {
1373
- className: R.preview,
1374
- style: { backgroundColor: r.bg, border: r.border },
1375
- children: /* @__PURE__ */ e(v, { style: { color: s.hex }, className: R.sampleText, children: "Aa" })
1376
- }
1377
- ),
1378
- /* @__PURE__ */ l(x, { p: "md", className: R.details, children: [
1379
- /* @__PURE__ */ e(v, { fw: 600, children: s.name }),
1380
- /* @__PURE__ */ e(v, { size: "sm", c: "dimmed", ff: "monospace", children: s.hex }),
1381
- s.label && /* @__PURE__ */ e(v, { size: "xs", c: "dimmed", children: s.label })
1382
- ] })
1383
- ] }) }, s.name + s.hex)) })
1419
+ return y !== void 0 ? p.toFixed(y) : t !== Math.floor(t) ? p.toFixed(1) : Math.round(p).toString();
1420
+ })(),
1421
+ o
1384
1422
  ] });
1385
1423
  }
1386
- const On = "_root_1r7u3_1", Vn = "_chartWrapper_1r7u3_5", Hn = "_circle_1r7u3_9", Un = "_centerText_1r7u3_13", Xn = "_toggle_1r7u3_20", Yn = "_toggleTrack_1r7u3_26", Kn = "_toggleTrackDark_1r7u3_35", Jn = "_toggleThumb_1r7u3_39", Qn = "_toggleThumbDark_1r7u3_51", Zn = "_swatch_1r7u3_55", W = {
1387
- root: On,
1388
- chartWrapper: Vn,
1389
- circle: Hn,
1390
- centerText: Un,
1391
- toggle: Xn,
1392
- toggleTrack: Yn,
1393
- toggleTrackDark: Kn,
1394
- toggleThumb: Jn,
1395
- toggleThumbDark: Qn,
1396
- swatch: Zn
1424
+ const go = "_root_ujac8_1", po = "_textarea_ujac8_5", Le = {
1425
+ root: go,
1426
+ textarea: po
1397
1427
  };
1398
- function No() {
1399
- const [t, o] = T(!1), [a, r] = T(0), s = [
1400
- { color: "#5AB267", label: "Success" },
1401
- { color: "#E63459", label: "Error" },
1402
- { color: "#E79E26", label: "Warning" }
1403
- ];
1404
- S(() => {
1405
- const c = setInterval(() => r((d) => (d + 1) % 3), 2e3);
1406
- return () => clearInterval(c);
1407
- }, []);
1408
- const h = s[a], y = [
1409
- t ? { label: "Dark Backgrounds", pct: 50, color: "#1A1A1A", border: "1px solid #424242" } : { label: "White Backgrounds", pct: 50, color: "#ffffff", border: "1px solid #e3e3e3" },
1410
- { label: "Primary Blue", pct: 20, color: "#169BDE" },
1411
- t ? { label: "Light Text & UI", pct: 15, color: "#f0f0f0", border: "1px solid #bdbdbd" } : { label: "Dark Text & UI", pct: 15, color: "#212121" },
1412
- { label: "Secondary Violet", pct: 10, color: "#7E57C2" },
1413
- { label: `Semantic (${h.label})`, pct: 5, color: h.color }
1414
- ], _ = 80, g = 120, m = 120, u = 36, k = 2 * Math.PI * _;
1415
- let i = 0;
1416
- const b = y.map((c) => {
1417
- const d = c.pct / 100 * k, w = { ...c, dasharray: `${d} ${k - d}`, dashoffset: -i };
1418
- return i += d, w;
1419
- });
1420
- return /* @__PURE__ */ l(z, { gap: 40, align: "center", my: "xl", className: W.root, children: [
1421
- /* @__PURE__ */ e(x, { className: W.chartWrapper, children: /* @__PURE__ */ l("svg", { width: 240, height: 240, viewBox: "0 0 240 240", children: [
1422
- b.map((c, d) => /* @__PURE__ */ e(
1423
- "circle",
1424
- {
1425
- cx: g,
1426
- cy: m,
1427
- r: _,
1428
- fill: "none",
1429
- stroke: c.color,
1430
- strokeWidth: u,
1431
- strokeDasharray: c.dasharray,
1432
- strokeDashoffset: c.dashoffset,
1433
- transform: `rotate(-90 ${g} ${m})`,
1434
- className: W.circle
1435
- },
1436
- d
1437
- )),
1438
- /* @__PURE__ */ l("text", { x: g, y: m + 6, textAnchor: "middle", className: W.centerText, children: [
1439
- t ? "Dark" : "Light",
1440
- " Mode"
1441
- ] })
1442
- ] }) }),
1443
- /* @__PURE__ */ l(K, { gap: "lg", children: [
1444
- /* @__PURE__ */ e(
1445
- re,
1446
- {
1447
- onClick: () => o(!t),
1448
- variant: "default",
1449
- radius: "xl",
1450
- size: "sm",
1451
- className: W.toggle,
1452
- leftSection: /* @__PURE__ */ e(x, { className: `${W.toggleTrack} ${t ? W.toggleTrackDark : ""}`, children: /* @__PURE__ */ e(x, { className: `${W.toggleThumb} ${t ? W.toggleThumbDark : ""}` }) }),
1453
- children: t ? "Dark Mode" : "Light Mode"
1454
- }
1455
- ),
1456
- /* @__PURE__ */ e(K, { gap: 8, children: y.map((c, d) => /* @__PURE__ */ l(z, { gap: 8, wrap: "nowrap", children: [
1457
- /* @__PURE__ */ e(
1458
- x,
1459
- {
1460
- className: W.swatch,
1461
- style: { backgroundColor: c.color, border: c.border || "none" }
1462
- }
1463
- ),
1464
- /* @__PURE__ */ l(v, { size: "sm", fw: 600, w: 36, children: [
1465
- c.pct,
1466
- "%"
1467
- ] }),
1468
- /* @__PURE__ */ e(v, { size: "sm", c: "dimmed", children: c.label })
1469
- ] }, d)) })
1470
- ] })
1428
+ function Ho({ code: t, filename: o, height: r = 384 }) {
1429
+ const [a, s] = T(!1), u = L(async () => {
1430
+ try {
1431
+ await navigator.clipboard.writeText(t), s(!0), setTimeout(() => s(!1), 2e3);
1432
+ } catch {
1433
+ }
1434
+ }, [t]);
1435
+ return /* @__PURE__ */ l(x, { className: Le.root, children: [
1436
+ /* @__PURE__ */ l(I, { justify: "space-between", mb: "xs", children: [
1437
+ o && /* @__PURE__ */ e(v, { size: "sm", fw: 500, c: "dimmed", children: o }),
1438
+ /* @__PURE__ */ e(ae, { size: "xs", radius: "md", color: a ? "green" : "blue", onClick: u, children: a ? "Copied!" : "Copy" })
1439
+ ] }),
1440
+ /* @__PURE__ */ e("textarea", { readOnly: !0, value: t, className: Le.textarea, style: { height: r } })
1471
1441
  ] });
1472
1442
  }
1473
1443
  export {
1474
- Io as Anchor,
1475
- io as AnimatedCounter,
1476
- we as AnimatedWaveform,
1477
- lo as AudioPlayer,
1478
- fe as AudioWaveform,
1479
- Co as Badge,
1480
- zo as Box,
1481
- wo as BrandLogos,
1482
- Mo as Button,
1483
- Bo as Card,
1484
- co as CodeBlock,
1485
- mo as ColorPalette,
1486
- uo as ColorSwatch,
1487
- Lo as Container,
1444
+ Xo as Anchor,
1445
+ Vo as AnimatedCounter,
1446
+ ze as AnimatedWaveform,
1447
+ qo as AudioPlayer,
1448
+ _e as AudioWaveform,
1449
+ Yo as Badge,
1450
+ Jo as Box,
1451
+ Mo as BrandLogos,
1452
+ zo as BrandedAppName,
1453
+ Qo as Button,
1454
+ Zo as Card,
1455
+ Ho as CodeBlock,
1456
+ Fo as ColorPalette,
1457
+ Eo as ColorSwatch,
1458
+ er as Container,
1488
1459
  ue as Copyable,
1489
- Do as Divider,
1490
- No as DonutChart,
1491
- ho as DosDonts,
1492
- go as ExpandableCard,
1460
+ tr as Divider,
1461
+ Po as DonutChart,
1462
+ Bo as DosDonts,
1463
+ So as ExpandableCard,
1493
1464
  de as FadeInSection,
1494
- So as Flex,
1495
- po as FrequencyWave,
1496
- fo as GradientSwatch,
1497
- Po as Grid,
1498
- Eo as Group,
1499
- _o as Hero,
1500
- Ce as HintBadge,
1501
- Fo as Image,
1502
- cn as MiniAudioPlayer,
1503
- bo as PrincipleCard,
1504
- Wo as SimpleGrid,
1505
- vo as SpeedDial,
1506
- yo as SplitSection,
1507
- jo as Stack,
1508
- ko as TestimonialCard,
1509
- Ao as Text,
1510
- Go as Title,
1511
- xo as TypographyColors,
1512
- Rt as VideoBackground
1465
+ nr as Flex,
1466
+ Wo as FrequencyWave,
1467
+ Ao as GradientSwatch,
1468
+ or as Grid,
1469
+ rr as Group,
1470
+ Ro as Hero,
1471
+ Ne as HintBadge,
1472
+ ar as Image,
1473
+ Pn as MiniAudioPlayer,
1474
+ Lo as PrincipleCard,
1475
+ sr as SimpleGrid,
1476
+ Go as SpeedDial,
1477
+ Oo as SplitSection,
1478
+ ir as Stack,
1479
+ Do as TestimonialCard,
1480
+ lr as Text,
1481
+ cr as Title,
1482
+ jo as TypographyColors,
1483
+ an as VideoBackground
1513
1484
  };