@jfrader/ui 0.6.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. package/README.md +10 -6
  2. package/dist/{avatar-group-DvP8mAE-.js → avatar-group-BlMLNw4J.js} +1 -1
  3. package/dist/avatar-group.js +1 -1
  4. package/dist/avatar-sPxDqFiZ.js +133 -0
  5. package/dist/avatar.js +1 -1
  6. package/dist/{chat-thread-DVa17BRC.js → chat-thread-DkB-WMWJ.js} +1 -1
  7. package/dist/chat-thread.js +1 -1
  8. package/dist/{comment-thread-BnUHxviq.js → comment-thread-DXfqgRNI.js} +1 -1
  9. package/dist/comment-thread.js +1 -1
  10. package/dist/emblem-DnXmpZCh.js +166 -0
  11. package/dist/emblem.js +2 -0
  12. package/dist/game-card-Oeu74giK.js +194 -0
  13. package/dist/game-card.js +2 -0
  14. package/dist/{hover-card-DN1EAlQA.js → hover-card-Dgu2CwMD.js} +1 -1
  15. package/dist/hover-card.js +1 -1
  16. package/dist/in-view-title-BUZCMqge.js +225 -0
  17. package/dist/in-view-title.js +2 -0
  18. package/dist/index.js +69 -65
  19. package/dist/initials-DEdwNe9_.js +18 -0
  20. package/dist/locale-switcher-DTkySKsM.js +375 -0
  21. package/dist/locale-switcher.js +1 -1
  22. package/dist/{thread-parts-DfZNz70v.js → thread-parts-Cpktor6D.js} +1 -1
  23. package/dist/{timeline-DaldDMX7.js → timeline-BcF46lG9.js} +1 -1
  24. package/dist/timeline.js +1 -1
  25. package/dist/types/components/activity-rings/activity-rings.d.ts +7 -9
  26. package/dist/types/components/avatar-group/avatar-group.d.ts +3 -3
  27. package/dist/types/components/button/button.d.ts +7 -7
  28. package/dist/types/components/card/card.d.ts +4 -1
  29. package/dist/types/components/chip-group/chip-group.d.ts +2 -2
  30. package/dist/types/components/combobox/combobox.d.ts +2 -2
  31. package/dist/types/components/command-palette/command-palette.d.ts +1 -1
  32. package/dist/types/components/comment-thread/comment-thread.d.ts +4 -4
  33. package/dist/types/components/copy-button/copy-button.d.ts +6 -6
  34. package/dist/types/components/countdown/countdown.d.ts +2 -2
  35. package/dist/types/components/dialog/dialog.d.ts +18 -20
  36. package/dist/types/components/drawer/drawer.d.ts +2 -2
  37. package/dist/types/components/emblem/emblem.d.ts +59 -0
  38. package/dist/types/components/emblem/index.d.ts +2 -0
  39. package/dist/types/components/empty-state/empty-state.d.ts +2 -2
  40. package/dist/types/components/file-dropzone/file-dropzone.d.ts +3 -4
  41. package/dist/types/components/filter-toolbar/filter-toolbar.d.ts +2 -2
  42. package/dist/types/components/game-card/card-frame.d.ts +16 -0
  43. package/dist/types/components/game-card/decks.d.ts +27 -0
  44. package/dist/types/components/game-card/game-card.d.ts +37 -0
  45. package/dist/types/components/game-card/index.d.ts +4 -0
  46. package/dist/types/components/hold-to-confirm/hold-to-confirm.d.ts +1 -1
  47. package/dist/types/components/hover-card/hover-card.d.ts +5 -5
  48. package/dist/types/components/in-view-title/in-view-title.d.ts +23 -0
  49. package/dist/types/components/in-view-title/index.d.ts +1 -0
  50. package/dist/types/components/inline-edit/inline-edit.d.ts +6 -6
  51. package/dist/types/components/json-viewer/json-viewer.d.ts +7 -9
  52. package/dist/types/components/keycap-keyboard/keycap-keyboard.d.ts +1 -1
  53. package/dist/types/components/link-unfurl/link-unfurl.d.ts +17 -7
  54. package/dist/types/components/locale-switcher/locale-switcher.d.ts +17 -11
  55. package/dist/types/components/mention-input/mention-input.d.ts +7 -7
  56. package/dist/types/components/metric-card/metric-card.d.ts +2 -2
  57. package/dist/types/components/navigation/navigation.d.ts +1 -1
  58. package/dist/types/components/next/emotion-registry.d.ts +3 -5
  59. package/dist/types/components/now-playing/now-playing.d.ts +2 -2
  60. package/dist/types/components/password-field/password-field.d.ts +1 -1
  61. package/dist/types/components/progress/progress.d.ts +1 -1
  62. package/dist/types/components/select/select.d.ts +1 -1
  63. package/dist/types/components/sheet-stack/sheet-stack.d.ts +19 -16
  64. package/dist/types/components/signature-pad/signature-pad.d.ts +2 -2
  65. package/dist/types/components/split-button/split-button.d.ts +3 -4
  66. package/dist/types/components/swipe-actions/swipe-actions.d.ts +1 -2
  67. package/dist/types/components/tag-input/tag-input.d.ts +2 -3
  68. package/dist/types/components/theme-root/theme-root.d.ts +5 -6
  69. package/dist/types/components/theme-switch/theme-switch.d.ts +3 -3
  70. package/dist/types/components/time-picker/time-picker.d.ts +2 -2
  71. package/dist/types/components/timeline/timeline.d.ts +4 -4
  72. package/dist/types/components/toast/toast.d.ts +3 -3
  73. package/dist/types/components/tree-view/tree-view.d.ts +4 -3
  74. package/dist/types/components/typewriter-terminal/index.d.ts +2 -0
  75. package/dist/types/components/typewriter-terminal/typewriter-terminal.d.ts +87 -0
  76. package/dist/types/components/usage-meter/usage-meter.d.ts +4 -4
  77. package/dist/types/components/usage-meter/usage-model.d.ts +1 -1
  78. package/dist/types/components/user-menu/user-menu.d.ts +3 -4
  79. package/dist/types/index.d.ts +4 -0
  80. package/dist/types/styling/motion-timings.d.ts +5 -0
  81. package/dist/types/styling/sx.d.ts +1 -1
  82. package/dist/types/styling/theme.d.ts +10 -0
  83. package/dist/types/utils/initials.d.ts +2 -0
  84. package/dist/typewriter-terminal-BUEsMzo3.js +588 -0
  85. package/dist/typewriter-terminal.js +2 -0
  86. package/dist/{user-menu-DzELTg1x.js → user-menu-MctRu_Lh.js} +1 -1
  87. package/dist/user-menu.js +1 -1
  88. package/package.json +18 -2
  89. package/dist/avatar-B6idYC59.js +0 -146
  90. package/dist/locale-switcher-CZF7XNYG.js +0 -295
@@ -0,0 +1,225 @@
1
+ 'use client';
2
+ import { a as e, i as t } from "./css-BYJhdGh-.js";
3
+ import { n, r } from "./media-8yrN85VT.js";
4
+ import { t as i } from "./sx-BJXJ2xJK.js";
5
+ import { t as a } from "./visually-hidden-DgVO3NaB.js";
6
+ import { useCallback as o, useEffect as s, useMemo as c, useState as l } from "react";
7
+ import { vars as u } from "@jfrader/tokens/vars";
8
+ import { jsx as d, jsxs as f } from "@emotion/react/jsx-runtime";
9
+ //#region src/components/in-view-title/in-view-title.tsx
10
+ var p = {
11
+ 1: "h1",
12
+ 2: "h2",
13
+ 3: "h3",
14
+ 4: "h4",
15
+ 5: "h5",
16
+ 6: "h6"
17
+ }, m = .45, h = "0.15em", g = e({
18
+ from: { transform: "translateY(0.6em)" },
19
+ to: { transform: "none" }
20
+ }), _ = e({
21
+ from: { opacity: 0 },
22
+ to: { opacity: 1 }
23
+ }), v = e({
24
+ from: { filter: "blur(0.12em)" },
25
+ to: { filter: "none" }
26
+ }), y = e({
27
+ from: { letterSpacing: "-0.04em" },
28
+ to: { letterSpacing: "inherit" }
29
+ }), b = e({
30
+ from: {
31
+ maskImage: `linear-gradient(to right, ${u.color.text} 50%, transparent 50%)`,
32
+ maskSize: "200% 100%",
33
+ maskPosition: "100% 0"
34
+ },
35
+ to: {
36
+ maskImage: `linear-gradient(to right, ${u.color.text} 50%, transparent 50%)`,
37
+ maskSize: "200% 100%",
38
+ maskPosition: "0% 0"
39
+ }
40
+ }), x = e({
41
+ from: {
42
+ maskImage: `linear-gradient(to left, ${u.color.text} 50%, transparent 50%)`,
43
+ maskSize: "200% 100%",
44
+ maskPosition: "0% 0"
45
+ },
46
+ to: {
47
+ maskImage: `linear-gradient(to left, ${u.color.text} 50%, transparent 50%)`,
48
+ maskSize: "200% 100%",
49
+ maskPosition: "100% 0"
50
+ }
51
+ }), S = (e, t) => `${e} ${t} ${u.motion.easeStandard} var(--in-view-delay, 0ms) backwards`, C = {
52
+ word: t({ animation: `${S(g, u.motion.duration.slow)}, ${S(_, u.motion.duration.fast)}` }),
53
+ line: t({ animation: `${S(g, u.motion.duration.slow)}, ${S(_, u.motion.duration.fast)}` }),
54
+ blur: t({ animation: `${S(g, u.motion.duration.base)}, ${S(v, u.motion.duration.base)}, ${S(_, u.motion.duration.fast)}` }),
55
+ tracking: t({ animation: `${S(y, u.motion.duration.base)}, ${S(_, u.motion.duration.fast)}` }),
56
+ wipe: t({
57
+ animation: S(b, u.motion.duration.slow),
58
+ "&:dir(rtl)": { animation: S(x, u.motion.duration.slow) }
59
+ })
60
+ }, w = t({
61
+ position: "relative",
62
+ margin: 0,
63
+ minInlineSize: 0,
64
+ maxInlineSize: "100%",
65
+ color: u.color.text,
66
+ font: "inherit",
67
+ "& [data-in-view-plain]": { display: "none" },
68
+ "&:not([data-state=\"revealing\"]) [data-in-view-segment]": { animation: "none" },
69
+ [r]: {
70
+ "& [data-in-view-parts]": { display: "none" },
71
+ "& [data-in-view-plain]": {
72
+ display: "inline",
73
+ whiteSpace: "pre-wrap"
74
+ },
75
+ "& [data-in-view-segment]": {
76
+ animation: "none",
77
+ transform: "none",
78
+ filter: "none",
79
+ maskImage: "none",
80
+ opacity: 1
81
+ }
82
+ },
83
+ [n]: {
84
+ color: "CanvasText",
85
+ "& [data-in-view-parts]": { display: "none" },
86
+ "& [data-in-view-plain]": {
87
+ display: "inline",
88
+ whiteSpace: "pre-wrap"
89
+ },
90
+ "& [data-in-view-segment]": {
91
+ animation: "none",
92
+ transform: "none",
93
+ filter: "none",
94
+ maskImage: "none",
95
+ opacity: 1
96
+ }
97
+ }
98
+ }), T = t({
99
+ whiteSpace: "pre-wrap",
100
+ overflowWrap: "anywhere"
101
+ }), E = t({
102
+ display: "block",
103
+ minInlineSize: 0,
104
+ maxInlineSize: "100%"
105
+ }), D = {
106
+ word: !0,
107
+ line: !0,
108
+ blur: !0,
109
+ tracking: !1,
110
+ wipe: !1
111
+ }, O = t({
112
+ display: "inline-block",
113
+ verticalAlign: "bottom",
114
+ maxInlineSize: "100%",
115
+ overflowX: "visible",
116
+ overflowY: "clip",
117
+ paddingBlock: h,
118
+ marginBlock: `-${h}`
119
+ }), k = t({
120
+ display: "inline-block",
121
+ maxInlineSize: "100%",
122
+ verticalAlign: "bottom"
123
+ });
124
+ function A({ text: e, level: t = 2, variant: n = "blur", once: r = !0, locale: h, slotProps: g, ref: v, className: y, sx: b, ...x }) {
125
+ let [S, A] = l(null), j = o((e) => {
126
+ A(e);
127
+ let t = typeof v == "function" ? v(e) : void 0;
128
+ return v && typeof v != "function" && (v.current = e), () => {
129
+ A(null), typeof t == "function" ? t() : typeof v == "function" ? v(null) : v && (v.current = null);
130
+ };
131
+ }, [v]);
132
+ s(() => {
133
+ if (!S) return;
134
+ let t = S.ownerDocument.defaultView;
135
+ if (S.dataset.state = "settled", !t) return;
136
+ let n = !0, i = !1, a, o = !1, s = S.getBoundingClientRect().top > t.innerHeight, c = !s, l, u, d = () => {
137
+ n && (S.dataset.state = "settled");
138
+ }, f = () => {
139
+ d(), a?.disconnect(), s = !1, i = !0;
140
+ }, p = (e) => {
141
+ let n = e.target;
142
+ n instanceof t.HTMLElement && n.hasAttribute("data-in-view-last") && S.dataset.state === "revealing" && e.animationName !== _.name && (d(), r && a?.disconnect());
143
+ }, h = () => {
144
+ (l?.matches || u?.matches) && f();
145
+ }, g = () => {
146
+ S.id && t.location.hash.slice(1) === S.id && f();
147
+ }, v = () => {
148
+ let e = S.ownerDocument.getSelection();
149
+ e?.anchorNode && S.contains(e.anchorNode) && f();
150
+ };
151
+ try {
152
+ if (l = t.matchMedia("(prefers-reduced-motion: reduce)"), u = t.matchMedia("(forced-colors: active)"), !e.trim() || !t.IntersectionObserver || !t.CSS?.supports("animation-name", "none") || l.matches || u.matches || (g(), i || !s && r)) return;
153
+ a = new t.IntersectionObserver((e) => {
154
+ if (n && !i) for (let t of e) t.target === S && (!t.isIntersecting || t.intersectionRatio === 0 ? (c && (d(), r ? o && a?.disconnect() : s = !0), o = !1) : (c = !0, t.intersectionRatio >= m && !o && (o = !0, s &&= (S.dataset.state = "revealing", !1))));
155
+ }, { threshold: [0, m] }), s && (S.dataset.state = "idle"), a.observe(S), S.addEventListener("animationend", p), S.addEventListener("focusin", f), S.ownerDocument.addEventListener("selectionchange", v), t.addEventListener("hashchange", g), l.addEventListener("change", h), u.addEventListener("change", h);
156
+ } catch {
157
+ f();
158
+ }
159
+ return () => {
160
+ n = !1, a?.disconnect(), S.removeEventListener("animationend", p), S.removeEventListener("focusin", f), S.ownerDocument.removeEventListener("selectionchange", v), t.removeEventListener("hashchange", g), l?.removeEventListener("change", h), u?.removeEventListener("change", h);
161
+ };
162
+ }, [
163
+ S,
164
+ e,
165
+ n,
166
+ r,
167
+ h
168
+ ]);
169
+ let M = p[t], N = n === "tracking" || n === "wipe", P = c(() => typeof Intl.Segmenter == "function" ? new Intl.Segmenter(h, { granularity: "word" }) : void 0, [h]), F = (N ? [e] : e.split("\n")).map((e) => n === "line" || N || !P ? [e] : Array.from(P.segment(e), ({ segment: e }) => e)), I = F.flat().filter((e) => e.trim()).length;
170
+ return /* @__PURE__ */ d(i, {
171
+ className: y,
172
+ styles: w,
173
+ sx: b,
174
+ children: (t) => {
175
+ let r = 0;
176
+ return /* @__PURE__ */ f(M, {
177
+ ...x,
178
+ ref: j,
179
+ "data-ui": "in-view-title",
180
+ "data-state": "settled",
181
+ className: t,
182
+ children: [/* @__PURE__ */ d("span", {
183
+ css: a,
184
+ children: e.replace(/\s+/gu, " ").trim()
185
+ }), /* @__PURE__ */ f("span", {
186
+ "data-ui": "in-view-title-visual",
187
+ "aria-hidden": "true",
188
+ className: g?.visual?.className,
189
+ css: [T, g?.visual?.css],
190
+ children: [/* @__PURE__ */ d("span", {
191
+ "data-in-view-plain": "",
192
+ children: e
193
+ }), /* @__PURE__ */ d("span", {
194
+ "data-in-view-parts": "",
195
+ children: F.map((e, t) => /* @__PURE__ */ d("span", {
196
+ css: !N && E,
197
+ children: e.map((e, t) => {
198
+ if (!e.trim()) return /* @__PURE__ */ d("span", { children: e || "​" }, t);
199
+ let i = r++;
200
+ return /* @__PURE__ */ d("span", {
201
+ css: D[n] && O,
202
+ children: /* @__PURE__ */ d("span", {
203
+ "data-in-view-segment": "",
204
+ "data-in-view-last": i === I - 1 ? "" : void 0,
205
+ className: g?.segment?.className,
206
+ style: { "--in-view-delay": `calc(${u.motion.duration.slow} * ${I > 1 ? i / (I - 1) : 0})` },
207
+ css: [
208
+ k,
209
+ C[n],
210
+ g?.segment?.css
211
+ ],
212
+ children: e
213
+ })
214
+ }, t);
215
+ })
216
+ }, t))
217
+ })]
218
+ })]
219
+ });
220
+ }
221
+ });
222
+ }
223
+ A.displayName = "InViewTitle";
224
+ //#endregion
225
+ export { A as t };
@@ -0,0 +1,2 @@
1
+ 'use client';
2
+ export { t as InViewTitle } from "./in-view-title-BUZCMqge.js";
package/dist/index.js CHANGED
@@ -5,8 +5,8 @@ import { t as n } from "./alert-Bhj-qSMs.js";
5
5
  import { t as r } from "./button-C6OV0C7J.js";
6
6
  import { t as i } from "./countdown-EcpV6rXy.js";
7
7
  import { t as a } from "./announcement-bar-B5J33QUh.js";
8
- import { t as o } from "./avatar-B6idYC59.js";
9
- import { t as s } from "./avatar-group-DvP8mAE-.js";
8
+ import { t as o } from "./avatar-sPxDqFiZ.js";
9
+ import { t as s } from "./avatar-group-BlMLNw4J.js";
10
10
  import { t as c } from "./badge-CfhTcA-Z.js";
11
11
  import { t as l } from "./segmented-control-DCh-4ca-.js";
12
12
  import { t as u } from "./billing-toggle-CgC7yxxo.js";
@@ -19,7 +19,7 @@ import { t as g } from "./calendar-Bg6D2sul.js";
19
19
  import { t as _ } from "./card-C008OQCp.js";
20
20
  import { t as v } from "./carousel-lTH4Foke.js";
21
21
  import { t as y } from "./textarea-D1YwEPmn.js";
22
- import { t as b } from "./chat-thread-DVa17BRC.js";
22
+ import { t as b } from "./chat-thread-DkB-WMWJ.js";
23
23
  import { t as x } from "./checkbox-CClE61GV.js";
24
24
  import { t as S } from "./chip-group-BZUX9KPF.js";
25
25
  import { t as C } from "./copy-button-C0p_qrgf.js";
@@ -27,7 +27,7 @@ import { t as w } from "./code-block-CYP89_6h.js";
27
27
  import { t as T } from "./command-palette-BrT1n9bb.js";
28
28
  import { t as E } from "./text-field-D0VP7b4P.js";
29
29
  import { t as D } from "./combobox-D2Oc-co7.js";
30
- import { t as O } from "./comment-thread-BnUHxviq.js";
30
+ import { t as O } from "./comment-thread-DXfqgRNI.js";
31
31
  import { t as k } from "./container-BxtwJSSD.js";
32
32
  import { t as A } from "./context-menu-I4i0LRpm.js";
33
33
  import { t as j } from "./date-picker-D-bn-iHs.js";
@@ -35,66 +35,70 @@ import { t as M } from "./date-range-picker-rXcZsI1Y.js";
35
35
  import { t as N } from "./dialog-CR1xdkrC.js";
36
36
  import { t as P } from "./divider-zOJzkcHh.js";
37
37
  import { t as F } from "./drawer-CceaEhCr.js";
38
- import { t as I } from "./empty-state-DO0ApylK.js";
39
- import { t as L } from "./expandable-card-W97vjix9.js";
40
- import { t as R } from "./search-field-CbsajaZb.js";
41
- import { t as z } from "./expanding-search-Bb2_YfNx.js";
42
- import { t as B } from "./progress-Bcuz3Ob4.js";
43
- import { t as V } from "./file-dropzone-Bi5ikRIz.js";
44
- import { t as H } from "./filter-toolbar-QRnC4S_H.js";
45
- import { t as U } from "./flex-CS7eMRcK.js";
46
- import { t as W } from "./hold-to-confirm-CVBA0wNT.js";
47
- import { t as G } from "./image-compare-Ln2UUqTU.js";
48
- import { t as K } from "./inline-edit-D-pR2RPC.js";
49
- import { t as q } from "./hover-card-DN1EAlQA.js";
50
- import { t as J } from "./json-viewer-Dro3WrjS.js";
51
- import { t as Y } from "./kbd-BI_9qzYr.js";
52
- import { t as X } from "./keycap-keyboard-Cdx-OAS1.js";
53
- import { t as Z } from "./lightbox-gallery-D0YaSTut.js";
54
- import { t as Q } from "./link-unfurl-CReyIjyy.js";
55
- import { t as $ } from "./locale-switcher-CZF7XNYG.js";
56
- import { n as ee, r as te, t as ne } from "./mention-input-BjjAbJCf.js";
57
- import { t as re } from "./pill-Dd7pog19.js";
58
- import { t as ie } from "./metric-card-BnFssTXj.js";
59
- import { t as ae } from "./multi-select-B3puEVo0.js";
60
- import { t as oe } from "./navigation-C_JD43gA.js";
61
- import { t as se } from "./slider-DjAnGmlC.js";
62
- import { n as ce, t as le } from "./now-playing-DjVm1Phm.js";
63
- import { t as ue } from "./pagination-Dkh4bJQh.js";
64
- import { t as de } from "./password-field-Da58GP1g.js";
65
- import { t as fe } from "./photo-grid-Dtl17D74.js";
66
- import { t as pe } from "./popover-CUMOcMtj.js";
67
- import { t as me } from "./radio-cards-FkAhESb5.js";
68
- import { t as he } from "./radio-group-DItMf2YM.js";
69
- import { t as ge } from "./resizable-panels-61h9hA3B.js";
70
- import { t as _e } from "./scroll-area-B8KkCPOM.js";
71
- import { t as ve } from "./select-SrcQqZjo.js";
72
- import { n as ye, t as be } from "./sheet-stack-DYX1SGSB.js";
73
- import { a as xe, i as Se, n as Ce, o as we, r as Te, s as Ee, t as De } from "./shortcut-recorder-VgTQdjjn.js";
74
- import { i as Oe, n as ke, r as Ae, t as je } from "./signature-pad-khL2yhQI.js";
75
- import { t as Me } from "./skeleton-LJsQsveI.js";
76
- import { t as Ne } from "./sortable-data-table-Bpitup_d.js";
77
- import { t as Pe } from "./spinner-CvzajSg9.js";
78
- import { t as Fe } from "./split-button-Bu41f2AY.js";
79
- import { t as Ie } from "./stack-Bac4sJeI.js";
80
- import { t as Le } from "./stepper-C8Ncavbr.js";
81
- import { t as Re } from "./stretch-refresh-OrnTEj7P.js";
82
- import { t as ze } from "./swipe-actions-1H5UOZKE.js";
83
- import { t as Be } from "./switch-79-hkQqg.js";
84
- import { t as Ve } from "./tabs-Bb5-noYE.js";
85
- import { t as He } from "./tag-input-BQaueKEb.js";
86
- import { n as Ue, r as We, t as Ge } from "./theme-provider-BvcY-iJu.js";
87
- import { n as Ke, r as qe, t as Je } from "./theme-root-BrYVcTzt.js";
88
- import { t as Ye } from "./theme-switch-CP42mVDb.js";
89
- import { t as Xe } from "./time-picker-Tnd-JBLC.js";
90
- import { t as Ze } from "./timeline-DaldDMX7.js";
91
- import { a as Qe, n as $e } from "./toast-CSAbl5yK.js";
38
+ import { t as I } from "./emblem-DnXmpZCh.js";
39
+ import { t as L } from "./empty-state-DO0ApylK.js";
40
+ import { t as R } from "./expandable-card-W97vjix9.js";
41
+ import { t as z } from "./search-field-CbsajaZb.js";
42
+ import { t as B } from "./expanding-search-Bb2_YfNx.js";
43
+ import { t as V } from "./progress-Bcuz3Ob4.js";
44
+ import { t as H } from "./file-dropzone-Bi5ikRIz.js";
45
+ import { t as U } from "./filter-toolbar-QRnC4S_H.js";
46
+ import { t as W } from "./flex-CS7eMRcK.js";
47
+ import { i as G, n as K, r as q, t as J } from "./game-card-Oeu74giK.js";
48
+ import { t as Y } from "./hold-to-confirm-CVBA0wNT.js";
49
+ import { t as X } from "./image-compare-Ln2UUqTU.js";
50
+ import { t as Z } from "./in-view-title-BUZCMqge.js";
51
+ import { t as Q } from "./inline-edit-D-pR2RPC.js";
52
+ import { t as $ } from "./hover-card-Dgu2CwMD.js";
53
+ import { t as ee } from "./json-viewer-Dro3WrjS.js";
54
+ import { t as te } from "./kbd-BI_9qzYr.js";
55
+ import { t as ne } from "./keycap-keyboard-Cdx-OAS1.js";
56
+ import { t as re } from "./lightbox-gallery-D0YaSTut.js";
57
+ import { t as ie } from "./link-unfurl-CReyIjyy.js";
58
+ import { t as ae } from "./locale-switcher-DTkySKsM.js";
59
+ import { n as oe, r as se, t as ce } from "./mention-input-BjjAbJCf.js";
60
+ import { t as le } from "./pill-Dd7pog19.js";
61
+ import { t as ue } from "./metric-card-BnFssTXj.js";
62
+ import { t as de } from "./multi-select-B3puEVo0.js";
63
+ import { t as fe } from "./navigation-C_JD43gA.js";
64
+ import { t as pe } from "./slider-DjAnGmlC.js";
65
+ import { n as me, t as he } from "./now-playing-DjVm1Phm.js";
66
+ import { t as ge } from "./pagination-Dkh4bJQh.js";
67
+ import { t as _e } from "./password-field-Da58GP1g.js";
68
+ import { t as ve } from "./photo-grid-Dtl17D74.js";
69
+ import { t as ye } from "./popover-CUMOcMtj.js";
70
+ import { t as be } from "./radio-cards-FkAhESb5.js";
71
+ import { t as xe } from "./radio-group-DItMf2YM.js";
72
+ import { t as Se } from "./resizable-panels-61h9hA3B.js";
73
+ import { t as Ce } from "./scroll-area-B8KkCPOM.js";
74
+ import { t as we } from "./select-SrcQqZjo.js";
75
+ import { n as Te, t as Ee } from "./sheet-stack-DYX1SGSB.js";
76
+ import { a as De, i as Oe, n as ke, o as Ae, r as je, s as Me, t as Ne } from "./shortcut-recorder-VgTQdjjn.js";
77
+ import { i as Pe, n as Fe, r as Ie, t as Le } from "./signature-pad-khL2yhQI.js";
78
+ import { t as Re } from "./skeleton-LJsQsveI.js";
79
+ import { t as ze } from "./sortable-data-table-Bpitup_d.js";
80
+ import { t as Be } from "./spinner-CvzajSg9.js";
81
+ import { t as Ve } from "./split-button-Bu41f2AY.js";
82
+ import { t as He } from "./stack-Bac4sJeI.js";
83
+ import { t as Ue } from "./stepper-C8Ncavbr.js";
84
+ import { t as We } from "./stretch-refresh-OrnTEj7P.js";
85
+ import { t as Ge } from "./swipe-actions-1H5UOZKE.js";
86
+ import { t as Ke } from "./switch-79-hkQqg.js";
87
+ import { t as qe } from "./tabs-Bb5-noYE.js";
88
+ import { t as Je } from "./tag-input-BQaueKEb.js";
89
+ import { n as Ye, r as Xe, t as Ze } from "./theme-provider-BvcY-iJu.js";
90
+ import { n as Qe, r as $e, t as et } from "./theme-root-BrYVcTzt.js";
91
+ import { t as tt } from "./theme-switch-CP42mVDb.js";
92
+ import { t as nt } from "./time-picker-Tnd-JBLC.js";
93
+ import { t as rt } from "./timeline-BcF46lG9.js";
94
+ import { a as it, n as at } from "./toast-CSAbl5yK.js";
92
95
  import "./toast.js";
93
- import { t as et } from "./toast-stack-BCR4Cu7V.js";
94
- import { t as tt } from "./toggle-group-C7ye1v4s.js";
96
+ import { t as ot } from "./toast-stack-BCR4Cu7V.js";
97
+ import { t as st } from "./toggle-group-C7ye1v4s.js";
95
98
  import "./tooltip.js";
96
- import { t as nt } from "./tree-view-CoW4oJIZ.js";
97
- import { t as rt } from "./usage-meter-CYvlB6l3.js";
98
- import { t as it } from "./user-menu-DzELTg1x.js";
99
- import at from "@emotion/styled";
100
- export { e as Accordion, t as ActivityRings, n as Alert, a as AnnouncementBar, o as Avatar, s as AvatarGroup, c as Badge, u as BillingToggle, d as BottomSheet, f as Breadcrumbs, r as Button, h as ButtonGroup, g as Calendar, _ as Card, v as Carousel, b as ChatThread, x as Checkbox, S as ChipGroup, w as CodeBlock, D as Combobox, T as CommandPalette, O as CommentThread, k as Container, A as ContextMenu, C as CopyButton, i as Countdown, j as DatePicker, M as DateRangePicker, N as Dialog, P as Divider, F as Drawer, I as EmptyState, L as ExpandableCard, z as ExpandingSearch, V as FileDropzone, H as FilterToolbar, U as Flex, W as HoldToConfirm, q as HoverCard, G as ImageCompare, K as InlineEdit, J as JsonViewer, Y as Kbd, X as KeycapKeyboard, Z as LightboxGallery, Q as LinkUnfurl, $ as LocaleSwitcher, ne as MentionInput, p as Menu, ie as MetricCard, ae as MultiSelect, oe as Navigation, le as NowPlaying, ce as NowPlayingLevels, ue as Pagination, de as PasswordField, fe as PhotoGrid, re as Pill, pe as Popover, B as Progress, me as RadioCards, he as RadioGroup, ge as ResizablePanels, _e as ScrollArea, R as SearchField, l as SegmentedControl, ve as Select, be as SheetStack, De as ShortcutRecorder, je as SignatureExportError, ke as SignaturePad, Me as Skeleton, se as Slider, Ne as SortableDataTable, Pe as Spinner, Fe as SplitButton, Ie as Stack, Le as Stepper, Re as StretchRefresh, ze as SwipeActions, Be as Switch, Ve as Tabs, He as TagInput, E as TextField, y as Textarea, Ge as ThemeProvider, Je as ThemeRoot, Ye as ThemeSwitch, Xe as TimePicker, Ze as Timeline, $e as Toast, et as ToastStack, tt as ToggleGroup, m as Tooltip, nt as TreeView, rt as UsageMeter, it as UserMenu, Ke as createTheme, Ce as defaultShortcutMessages, Te as formatShortcut, Se as matchesShortcut, ee as mentionText, xe as normalizeShortcut, te as serializeMentions, Ae as signatureToPng, Oe as signatureToSvg, at as styled, We as theme, qe as themeTokenStyle, we as usePressedShortcutKeys, ye as useSheetStack, Ee as useShortcutPlatform, Ue as useTheme, Qe as useToast };
99
+ import { t as ct } from "./tree-view-CoW4oJIZ.js";
100
+ import { t as lt } from "./typewriter-terminal-BUEsMzo3.js";
101
+ import { t as ut } from "./usage-meter-CYvlB6l3.js";
102
+ import { t as dt } from "./user-menu-MctRu_Lh.js";
103
+ import ft from "@emotion/styled";
104
+ export { e as Accordion, t as ActivityRings, n as Alert, a as AnnouncementBar, o as Avatar, s as AvatarGroup, c as Badge, u as BillingToggle, d as BottomSheet, f as Breadcrumbs, r as Button, h as ButtonGroup, g as Calendar, _ as Card, v as Carousel, b as ChatThread, x as Checkbox, S as ChipGroup, w as CodeBlock, D as Combobox, T as CommandPalette, O as CommentThread, k as Container, A as ContextMenu, C as CopyButton, i as Countdown, j as DatePicker, M as DateRangePicker, N as Dialog, P as Divider, F as Drawer, I as Emblem, L as EmptyState, R as ExpandableCard, B as ExpandingSearch, H as FileDropzone, U as FilterToolbar, W as Flex, J as GameCard, Y as HoldToConfirm, $ as HoverCard, X as ImageCompare, Z as InViewTitle, Q as InlineEdit, ee as JsonViewer, te as Kbd, ne as KeycapKeyboard, re as LightboxGallery, ie as LinkUnfurl, ae as LocaleSwitcher, ce as MentionInput, p as Menu, ue as MetricCard, de as MultiSelect, fe as Navigation, he as NowPlaying, me as NowPlayingLevels, ge as Pagination, _e as PasswordField, ve as PhotoGrid, le as Pill, ye as Popover, V as Progress, K as RANK_MARKS, be as RadioCards, xe as RadioGroup, Se as ResizablePanels, q as SUIT_GLYPHS, G as SUIT_INK, Ce as ScrollArea, z as SearchField, l as SegmentedControl, we as Select, Ee as SheetStack, Ne as ShortcutRecorder, Le as SignatureExportError, Fe as SignaturePad, Re as Skeleton, pe as Slider, ze as SortableDataTable, Be as Spinner, Ve as SplitButton, He as Stack, Ue as Stepper, We as StretchRefresh, Ge as SwipeActions, Ke as Switch, qe as Tabs, Je as TagInput, E as TextField, y as Textarea, Ze as ThemeProvider, et as ThemeRoot, tt as ThemeSwitch, nt as TimePicker, rt as Timeline, at as Toast, ot as ToastStack, st as ToggleGroup, m as Tooltip, ct as TreeView, lt as TypewriterTerminal, ut as UsageMeter, dt as UserMenu, Qe as createTheme, ke as defaultShortcutMessages, je as formatShortcut, Oe as matchesShortcut, oe as mentionText, De as normalizeShortcut, se as serializeMentions, Ie as signatureToPng, Pe as signatureToSvg, ft as styled, Xe as theme, $e as themeTokenStyle, Ae as usePressedShortcutKeys, Te as useSheetStack, Me as useShortcutPlatform, Ye as useTheme, it as useToast };
@@ -0,0 +1,18 @@
1
+ 'use client';
2
+ //#region src/utils/initials.ts
3
+ var e = new Intl.Segmenter(void 0, { granularity: "grapheme" });
4
+ function t(t) {
5
+ let n = Array.from(e.segment(t), ({ segment: e }) => e), r = n[0] ?? "";
6
+ if (!/\p{Extended_Pictographic}/u.test(r)) return r;
7
+ let i = "";
8
+ for (let e of n) {
9
+ if (!/\p{Extended_Pictographic}/u.test(e)) break;
10
+ i += e;
11
+ }
12
+ return i;
13
+ }
14
+ function n(e, n) {
15
+ return e.trim().split(/\s+/).filter(Boolean).slice(0, n).map(t).join("").toLocaleUpperCase();
16
+ }
17
+ //#endregion
18
+ export { n as t };