@versini/sassysaint 8.65.0 → 8.67.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.
- package/dist/chunks/{AboutChangelog.CorY5_cf.js → AboutChangelog.DIAjD4IT.js} +2 -2
- package/dist/chunks/{AboutEntry.DbUBoZ0p.js → AboutEntry.IN-KMi21.js} +5 -5
- package/dist/chunks/{App.BTLwEx8P.js → App.NiMe9pNP.js} +2851 -2633
- package/dist/chunks/{Chart.CIVqZENe.js → Chart.DURfI14K.js} +2 -2
- package/dist/chunks/{ChatBubbleAssistant.DIoDoupB.js → ChatBubbleAssistant.D3Jy0tBq.js} +4 -4
- package/dist/chunks/{ChatBubbleUser.B5fK7VV1.js → ChatBubbleUser.CHV0_ZTg.js} +6 -6
- package/dist/chunks/{ChatHistoryTable.a9FQEOUj.js → ChatHistoryTable.BVo20jIZ.js} +13 -13
- package/dist/chunks/{HistoryEntry.BkIYzEt0.js → HistoryEntry.DNita81q.js} +15 -15
- package/dist/chunks/ProfileEntry.ChfpIWZB.js +181 -0
- package/dist/chunks/SettingsEntry.B6JLgzK6.js +794 -0
- package/dist/chunks/{Table.ZX_G6Gid.js → Table.B7UaKGm4.js} +6 -6
- package/dist/chunks/{UsageEntry.BpgYbTis.js → UsageEntry.DoXdRXoX.js} +3 -3
- package/dist/chunks/{UserMemoriesPanel.DL3YznLM.js → UserMemoriesPanel.pCNm16LV.js} +3 -3
- package/dist/chunks/{index.D3KZz7us.js → index.B84nSOH2.js} +8 -8
- package/dist/chunks/{index.COANJyXl.js → index.CSaM-Hzm.js} +647 -615
- package/dist/chunks/{index.BN9uKQ0g.js → index.CY7kVg7R.js} +1 -1
- package/dist/chunks/{index.BXOYKzMv.js → index.CZrhYvUR.js} +1 -1
- package/dist/chunks/{index.BlrdlKi3.js → index.D5B1yWxF.js} +2 -2
- package/dist/chunks/{index.BbJLHUaM.js → index.DPL6Jtij.js} +3 -3
- package/dist/chunks/{index.sXdv1yPR.js → index.DS3O7dDS.js} +1 -1
- package/dist/chunks/{useMarkdown.Bmuf0Pow.js → useMarkdown.zu1E3PyX.js} +10 -10
- package/dist/components/SassySaint/SassySaint.js +1 -1
- package/dist/index.js +4 -4
- package/dist/style.css +1 -1
- package/package.json +3 -3
- package/dist/chunks/ProfileEntry.Czn4D0CS.js +0 -158
- package/dist/chunks/SettingsEntry.Dlqjubr1.js +0 -776
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as Ap } from "react/jsx-runtime";
|
|
2
|
-
import { getDefaultExportFromCjs as ln } from "./App.
|
|
2
|
+
import { getDefaultExportFromCjs as ln } from "./App.NiMe9pNP.js";
|
|
3
3
|
import Cp, { useState as Pp, useEffect as Op } from "react";
|
|
4
|
-
import { TRIMESTERS as rn, TRIMESTERS_SHORT as Lp, isProbablyMobile as Ep } from "./index.
|
|
4
|
+
import { TRIMESTERS as rn, TRIMESTERS_SHORT as Lp, isProbablyMobile as Ep } from "./index.CSaM-Hzm.js";
|
|
5
5
|
var ls = { exports: {} }, Ip = ls.exports, on;
|
|
6
6
|
function Dp() {
|
|
7
7
|
return on || (on = 1, (function(we, he) {
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { jsx as x } from "react/jsx-runtime";
|
|
2
|
-
import { n as N, useUserPreferences as O, convertCamelCaseToReadable as P, numberFormatter as R, pluralize as y, Y as L } from "./index.
|
|
3
|
-
import { BUBBLE_FOOTER_EMPTY as _ } from "./index.
|
|
2
|
+
import { n as N, useUserPreferences as O, convertCamelCaseToReadable as P, numberFormatter as R, pluralize as y, Y as L } from "./index.CSaM-Hzm.js";
|
|
3
|
+
import { BUBBLE_FOOTER_EMPTY as _ } from "./index.B84nSOH2.js";
|
|
4
4
|
import w from "clsx";
|
|
5
5
|
import v, { useState as M, useRef as A, useEffect as U, useContext as B } from "react";
|
|
6
|
-
import { ChatContext as G, AsyncBubble as E } from "./App.
|
|
7
|
-
import { useMarkdown as D } from "./useMarkdown.
|
|
6
|
+
import { ChatContext as G, AsyncBubble as E } from "./App.NiMe9pNP.js";
|
|
7
|
+
import { useMarkdown as D } from "./useMarkdown.zu1E3PyX.js";
|
|
8
8
|
const j = 2, q = j * 1e3, b = "", I = (e) => e * (2 - e);
|
|
9
9
|
function W(e, n = !0) {
|
|
10
10
|
const [a, p] = M(0), [i, C] = M(0), [t, T] = M(e), r = A(0), s = A(0);
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { jsx as n, Fragment as b, jsxs as A } from "react/jsx-runtime";
|
|
2
2
|
import { useState as C, useMemo as u, isValidElement as p, useEffect as I } from "react";
|
|
3
|
-
import { AsyncBubble as w } from "./App.
|
|
4
|
-
import { useMarkdown as _ } from "./useMarkdown.
|
|
5
|
-
import { C as M } from "./index.
|
|
3
|
+
import { AsyncBubble as w } from "./App.NiMe9pNP.js";
|
|
4
|
+
import { useMarkdown as _ } from "./useMarkdown.zu1E3PyX.js";
|
|
5
|
+
import { C as M } from "./index.CSaM-Hzm.js";
|
|
6
6
|
const R = 200, N = ({
|
|
7
7
|
string: e,
|
|
8
8
|
idealLength: r = R
|
|
@@ -93,13 +93,13 @@ const R = 200, N = ({
|
|
|
93
93
|
);
|
|
94
94
|
};
|
|
95
95
|
/*!
|
|
96
|
-
@versini/ui-truncate v5.1.
|
|
96
|
+
@versini/ui-truncate v5.1.2
|
|
97
97
|
© 2025 gizmette.com
|
|
98
98
|
*/
|
|
99
99
|
try {
|
|
100
100
|
window.__VERSINI_UI_TRUNCATE__ || (window.__VERSINI_UI_TRUNCATE__ = {
|
|
101
|
-
version: "5.1.
|
|
102
|
-
buildTime: "10/
|
|
101
|
+
version: "5.1.2",
|
|
102
|
+
buildTime: "10/19/2025 04:19 PM EDT",
|
|
103
103
|
homepage: "https://github.com/aversini/ui-components",
|
|
104
104
|
license: "MIT"
|
|
105
105
|
});
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { jsxs as m, jsx as e } from "react/jsx-runtime";
|
|
2
|
-
import { I as g,
|
|
3
|
-
import { st as u, p$1 as P, z as L, p$2 as V } from "./App.
|
|
2
|
+
import { I as g, Z as N, J as C, INFINITE_SCROLL_THRESHOLD as A, CARDS as E, pluralize as y, te as p, numberFormatter as k, ot as b, isProbablyMobile as D, c as U, r as B, O as I } from "./index.CSaM-Hzm.js";
|
|
3
|
+
import { st as u, p$1 as P, z as L, p$2 as V } from "./App.NiMe9pNP.js";
|
|
4
4
|
import h from "clsx";
|
|
5
5
|
import { Fragment as _ } from "react";
|
|
6
|
-
import { j as $, D as H, G as M, H as
|
|
7
|
-
const
|
|
6
|
+
import { j as $, D as H, G as M, H as Y, U as F, M as a, F as f, l as G } from "./Table.B7UaKGm4.js";
|
|
7
|
+
const K = ({
|
|
8
8
|
className: l,
|
|
9
9
|
viewBox: c,
|
|
10
10
|
title: o,
|
|
@@ -82,7 +82,7 @@ const G = ({
|
|
|
82
82
|
/* @__PURE__ */ e("path", { d: "M256 32a224 224 0 1 1 0 448 224 224 0 1 1 0-448m0 480a256 256 0 1 0 0-512 256 256 0 1 0 0 512m14.3-399.1c-2.7-5.5-8.3-8.9-14.3-8.9s-11.7 3.5-14.3 8.9l-36.2 73.4-81 11.8c-6 .9-11 5.1-12.9 10.9s-.3 12.2 4 16.4l58.6 57.2-13.8 80.7c-1 6 1.4 12.1 6.4 15.6s11.5 4.1 16.8 1.2l72.4-38 72.5 38.1c5.4 2.8 11.9 2.4 16.9-1.2s7.4-9.6 6.4-15.6L338 282.7l58.6-57.2c4.4-4.3 5.9-10.6 4-16.4s-6.9-10-12.9-10.9l-81.1-11.8-36.2-73.4zm-40 95.1 25.7-51.8 25.6 51.9c2.3 4.7 6.8 8 12 8.8l57.3 8.3-41.5 40.4c-3.8 3.7-5.5 9-4.6 14.2l9.8 57.1-51.2-26.9c-4.7-2.5-10.2-2.5-14.9 0l-51.2 26.9 9.8-57.1c.9-5.2-.8-10.5-4.6-14.2L161 225.1l57.3-8.3c5.2-.8 9.7-4 12-8.8" })
|
|
83
83
|
]
|
|
84
84
|
}
|
|
85
|
-
),
|
|
85
|
+
), J = {
|
|
86
86
|
[I]: V,
|
|
87
87
|
[B]: L,
|
|
88
88
|
[U]: P
|
|
@@ -93,12 +93,12 @@ const G = ({
|
|
|
93
93
|
PROVIDER: "provider",
|
|
94
94
|
TOKEN_USAGE: C,
|
|
95
95
|
ACTIONS: "actions"
|
|
96
|
-
},
|
|
96
|
+
}, Z = [
|
|
97
97
|
t.ROW,
|
|
98
98
|
t.TIMESTAMP,
|
|
99
99
|
t.SUMMARY,
|
|
100
100
|
t.ACTIONS
|
|
101
|
-
],
|
|
101
|
+
], q = [
|
|
102
102
|
t.ROW,
|
|
103
103
|
t.SUMMARY,
|
|
104
104
|
t.TIMESTAMP,
|
|
@@ -115,7 +115,7 @@ const G = ({
|
|
|
115
115
|
onClickFavorite: O,
|
|
116
116
|
infinityScrollMarkerRef: S
|
|
117
117
|
}) => {
|
|
118
|
-
const v = D() ?
|
|
118
|
+
const v = D() ? Z : q, T = (s) => {
|
|
119
119
|
switch (s) {
|
|
120
120
|
case t.ROW:
|
|
121
121
|
return /* @__PURE__ */ e(a, { className: "sr-only", children: "Row" }, s);
|
|
@@ -198,7 +198,7 @@ const G = ({
|
|
|
198
198
|
);
|
|
199
199
|
}
|
|
200
200
|
case t.PROVIDER: {
|
|
201
|
-
const d = r.model ? b(r.model) : null, R = d ?
|
|
201
|
+
const d = r.model ? b(r.model) : null, R = d ? J[d] : null;
|
|
202
202
|
return /* @__PURE__ */ e(
|
|
203
203
|
a,
|
|
204
204
|
{
|
|
@@ -245,7 +245,7 @@ const G = ({
|
|
|
245
245
|
onClick: async () => {
|
|
246
246
|
await n(r);
|
|
247
247
|
},
|
|
248
|
-
children: /* @__PURE__ */ e(
|
|
248
|
+
children: /* @__PURE__ */ e(K, { size: "size-3", monotone: !0 })
|
|
249
249
|
}
|
|
250
250
|
)
|
|
251
251
|
}
|
|
@@ -284,7 +284,7 @@ const G = ({
|
|
|
284
284
|
onClick: () => {
|
|
285
285
|
w(r);
|
|
286
286
|
},
|
|
287
|
-
children: /* @__PURE__ */ e(
|
|
287
|
+
children: /* @__PURE__ */ e(G, { size: "size-3", monotone: !0 })
|
|
288
288
|
}
|
|
289
289
|
)
|
|
290
290
|
}
|
|
@@ -296,13 +296,13 @@ const G = ({
|
|
|
296
296
|
};
|
|
297
297
|
return /* @__PURE__ */ m($, { stickyHeader: !0, stickyFooter: !0, compact: !0, mode: "alt-system", children: [
|
|
298
298
|
/* @__PURE__ */ e(H, { children: /* @__PURE__ */ e(M, { children: v.map((s) => T(s)) }) }),
|
|
299
|
-
/* @__PURE__ */ e(
|
|
299
|
+
/* @__PURE__ */ e(Y, { children: l.slice(0, o).map((s, r) => s?.messages?.length > 0 ? /* @__PURE__ */ m(_, { children: [
|
|
300
300
|
r === o - A && /* @__PURE__ */ e("tr", { ref: S }),
|
|
301
301
|
/* @__PURE__ */ e(M, { children: v.map(
|
|
302
302
|
(x) => z(x, s, r)
|
|
303
303
|
) })
|
|
304
304
|
] }, `${E.HISTORY.TITLE}-${s.id}-${r}`) : null) }),
|
|
305
|
-
/* @__PURE__ */ e(
|
|
305
|
+
/* @__PURE__ */ e(F, { children: /* @__PURE__ */ e(M, { children: /* @__PURE__ */ e(a, { colSpan: 1e3, children: /* @__PURE__ */ e("div", { children: y(
|
|
306
306
|
`${l.length} chat`,
|
|
307
307
|
l.length
|
|
308
308
|
) }) }) }) })
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { jsxs as n, jsx as t, Fragment as
|
|
2
|
-
import { I as Q, n as P, INFINITE_SCROLL_LIMIT as G, INFINITE_SCROLL_THRESHOLD as ee, LOCAL_STORAGE_PREFIX as f, LOCAL_STORAGE_SORT_TIMESTAMP as te, LOCAL_STORAGE_SORT_TOKEN_USAGE as re, LOCAL_STORAGE_SORT as ae,
|
|
3
|
-
import { HistoryContext as z, ChatContext as M, useAiChat as Ee, E, e as m, ConfirmationPanel as ge, LazyToastContainerWrapper as Ae, showErrorToast as _e, CHAT_SET_PROVIDER as Oe, showSuccessToast as ve, CHAT_SET_STATUS as De, oe as Le, O as Re } from "./App.
|
|
1
|
+
import { jsxs as n, jsx as t, Fragment as q } from "react/jsx-runtime";
|
|
2
|
+
import { I as Q, n as P, INFINITE_SCROLL_LIMIT as G, INFINITE_SCROLL_THRESHOLD as ee, LOCAL_STORAGE_PREFIX as f, LOCAL_STORAGE_SORT_TIMESTAMP as te, LOCAL_STORAGE_SORT_TOKEN_USAGE as re, LOCAL_STORAGE_SORT as ae, Z as L, useUserPreferences as se, APP_CLASSNAME as oe, mutateCall as b, SERVICE_TYPES as x, TOAST_CHAT_DELETED as ie, setNewProvider as ne, ACTION_SORT as ce, J as le, TOAST_PROVIDER_CHANGED as de, useChatsHistory as he, LOCAL_STORAGE_SEARCH as me, LOCAL_STORAGE_FAVORITES_ONLY as ue, HISTORY_TITLE as Ce, S as Se, Y$1 as pe, debounce as Te, C as ye, ACTION_SEARCH as fe } from "./index.CSaM-Hzm.js";
|
|
3
|
+
import { HistoryContext as z, ChatContext as M, useAiChat as Ee, E, e as m, ConfirmationPanel as ge, LazyToastContainerWrapper as Ae, showErrorToast as _e, CHAT_SET_PROVIDER as Oe, showSuccessToast as ve, CHAT_SET_STATUS as De, oe as Le, O as Re } from "./App.NiMe9pNP.js";
|
|
4
4
|
import { useRef as H, useState as F, useContext as R, useCallback as ke, useEffect as U, Suspense as Ie, lazy as we } from "react";
|
|
5
5
|
const Ne = ({
|
|
6
6
|
className: l,
|
|
@@ -31,7 +31,7 @@ const Ne = ({
|
|
|
31
31
|
), be = we(
|
|
32
32
|
() => import(
|
|
33
33
|
/* webpackChunkName: "history-table" */
|
|
34
|
-
"./ChatHistoryTable.
|
|
34
|
+
"./ChatHistoryTable.BVo20jIZ.js"
|
|
35
35
|
).then((l) => ({ default: l.ChatHistoryTable }))
|
|
36
36
|
), xe = ({
|
|
37
37
|
filteredHistory: l,
|
|
@@ -87,7 +87,7 @@ const Ne = ({
|
|
|
87
87
|
sortDirection: V
|
|
88
88
|
}
|
|
89
89
|
});
|
|
90
|
-
},
|
|
90
|
+
}, J = async () => {
|
|
91
91
|
const e = o.current;
|
|
92
92
|
try {
|
|
93
93
|
await b({
|
|
@@ -103,7 +103,7 @@ const Ne = ({
|
|
|
103
103
|
});
|
|
104
104
|
} catch {
|
|
105
105
|
}
|
|
106
|
-
},
|
|
106
|
+
}, K = async (e) => {
|
|
107
107
|
try {
|
|
108
108
|
const s = await C(), r = await b({
|
|
109
109
|
accessToken: s,
|
|
@@ -136,13 +136,13 @@ const Ne = ({
|
|
|
136
136
|
}), N(""), w(e.id), _(r.data.messages), T(!1);
|
|
137
137
|
} catch {
|
|
138
138
|
}
|
|
139
|
-
},
|
|
139
|
+
}, W = (e) => {
|
|
140
140
|
o.current = {
|
|
141
141
|
id: e.id,
|
|
142
142
|
timestamp: e.timestamp,
|
|
143
143
|
message: e.messages.length > 0 ? e.messages[0]?.content : ""
|
|
144
144
|
}, g(!c);
|
|
145
|
-
},
|
|
145
|
+
}, X = async (e) => {
|
|
146
146
|
try {
|
|
147
147
|
await b({
|
|
148
148
|
accessToken: await C(),
|
|
@@ -154,22 +154,22 @@ const Ne = ({
|
|
|
154
154
|
}), u("");
|
|
155
155
|
} catch {
|
|
156
156
|
}
|
|
157
|
-
},
|
|
157
|
+
}, Z = ke((e) => {
|
|
158
158
|
e[0].isIntersecting && k((r) => r + G);
|
|
159
159
|
}, []);
|
|
160
160
|
return U(() => {
|
|
161
161
|
const e = {
|
|
162
162
|
// root: null,
|
|
163
163
|
rootMargin: "20px"
|
|
164
|
-
}, s = new IntersectionObserver(
|
|
164
|
+
}, s = new IntersectionObserver(Z, e);
|
|
165
165
|
S.current && s.observe(S.current);
|
|
166
|
-
}), /* @__PURE__ */ n(
|
|
166
|
+
}), /* @__PURE__ */ n(q, { children: [
|
|
167
167
|
/* @__PURE__ */ n(
|
|
168
168
|
ge,
|
|
169
169
|
{
|
|
170
170
|
showConfirmation: c,
|
|
171
171
|
setShowConfirmation: g,
|
|
172
|
-
action:
|
|
172
|
+
action: J,
|
|
173
173
|
customStrings: {
|
|
174
174
|
confirmAction: "Delete",
|
|
175
175
|
cancelAction: "Cancel",
|
|
@@ -200,9 +200,9 @@ const Ne = ({
|
|
|
200
200
|
historyState: I,
|
|
201
201
|
lastEntryToLoad: p,
|
|
202
202
|
onClickSort: j,
|
|
203
|
-
onClickRestore:
|
|
204
|
-
onClickDelete:
|
|
205
|
-
onClickFavorite:
|
|
203
|
+
onClickRestore: K,
|
|
204
|
+
onClickDelete: W,
|
|
205
|
+
onClickFavorite: X,
|
|
206
206
|
infinityScrollMarkerRef: S
|
|
207
207
|
}
|
|
208
208
|
) })
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
import { jsxs as t, Fragment as D, jsx as e } from "react/jsx-runtime";
|
|
2
|
+
import { preloadToast as K, showSuccessToast as W, showErrorToast as Y, ConfirmationPanel as H, LazyToastContainerWrapper as $, oe as V } from "./App.NiMe9pNP.js";
|
|
3
|
+
import { n as q, i as J, useUserPreferences as Q, useServerCapabilities as X, x as Z, setUserPlan as ee, S as d, renderDataAsList as ae, CARDS as s, L as f, j as c, C as se, it as ne, isTauri as re, te, l as b, PROFILE_TITLE as le } from "./index.CSaM-Hzm.js";
|
|
4
|
+
import ie from "clsx";
|
|
5
|
+
import { useState as m, useMemo as ce, useCallback as P } from "react";
|
|
6
|
+
const oe = () => {
|
|
7
|
+
const {
|
|
8
|
+
isAuthenticated: h,
|
|
9
|
+
user: n,
|
|
10
|
+
registeringForPasskey: k,
|
|
11
|
+
authenticationType: y,
|
|
12
|
+
getAccessToken: u
|
|
13
|
+
} = q(), [v, N] = m(null), [T, x] = m(!1), [F, C] = m(!1), [l, w] = m(null), U = J(), A = n?.username || "", {
|
|
14
|
+
data: p,
|
|
15
|
+
isSuccess: _,
|
|
16
|
+
refetch: R
|
|
17
|
+
} = Q({
|
|
18
|
+
user: n?.username,
|
|
19
|
+
getAccessToken: u
|
|
20
|
+
}), { data: S, isSuccess: E } = X(), I = ce(() => !E || !S?.plans ? [] : S.plans.map((a) => ({
|
|
21
|
+
id: a.name,
|
|
22
|
+
label: a.label,
|
|
23
|
+
description: a.description,
|
|
24
|
+
features: a.features,
|
|
25
|
+
models: a.allowedModels.map(
|
|
26
|
+
(r) => Z[r] || r
|
|
27
|
+
)
|
|
28
|
+
})), [E, S?.plans]), g = P(() => {
|
|
29
|
+
T || (K(), x(!0));
|
|
30
|
+
}, [T]), z = P(async () => {
|
|
31
|
+
if (!(!l || !n?.username))
|
|
32
|
+
try {
|
|
33
|
+
N(l.id), await ee({
|
|
34
|
+
plan: l.id,
|
|
35
|
+
accessToken: await u(),
|
|
36
|
+
username: n.username
|
|
37
|
+
}), await R(), await W(
|
|
38
|
+
`${s.PLANS.SWITCH_SUCCESS} ${l.label}`,
|
|
39
|
+
{
|
|
40
|
+
containerId: "profile-plan-selection"
|
|
41
|
+
}
|
|
42
|
+
);
|
|
43
|
+
} catch {
|
|
44
|
+
await Y(s.PLANS.SWITCH_ERROR, {
|
|
45
|
+
containerId: "profile-plan-selection"
|
|
46
|
+
});
|
|
47
|
+
} finally {
|
|
48
|
+
N(null), w(null);
|
|
49
|
+
}
|
|
50
|
+
}, [u, l, R, n?.username]), M = P(
|
|
51
|
+
(a, r) => {
|
|
52
|
+
!n?.username || a === p?.plan || (w({ id: a, label: r }), C(!0));
|
|
53
|
+
},
|
|
54
|
+
[p?.plan, n?.username]
|
|
55
|
+
);
|
|
56
|
+
return h && A ? /* @__PURE__ */ t(D, { children: [
|
|
57
|
+
/* @__PURE__ */ e(
|
|
58
|
+
H,
|
|
59
|
+
{
|
|
60
|
+
showConfirmation: F,
|
|
61
|
+
setShowConfirmation: C,
|
|
62
|
+
action: z,
|
|
63
|
+
customStrings: {
|
|
64
|
+
confirmAction: "Switch Plan",
|
|
65
|
+
cancelAction: "Cancel",
|
|
66
|
+
title: "Switch Plan"
|
|
67
|
+
},
|
|
68
|
+
children: l && /* @__PURE__ */ t("p", { className: "m-0", children: [
|
|
69
|
+
"Are you sure you want to switch to the following plan:",
|
|
70
|
+
" ",
|
|
71
|
+
/* @__PURE__ */ e("span", { className: "font-semibold", children: l.label })
|
|
72
|
+
] })
|
|
73
|
+
}
|
|
74
|
+
),
|
|
75
|
+
/* @__PURE__ */ e("div", { className: "av-sassy", children: /* @__PURE__ */ e($, { containerId: "profile-plan-selection" }) }),
|
|
76
|
+
/* @__PURE__ */ e(
|
|
77
|
+
d,
|
|
78
|
+
{
|
|
79
|
+
header: s.PREFERENCES.TITLE,
|
|
80
|
+
className: "prose-dark dark:prose-lighter",
|
|
81
|
+
noBorder: !0,
|
|
82
|
+
children: ae(U, {
|
|
83
|
+
[s.PREFERENCES.USERNAME]: A,
|
|
84
|
+
[s.PREFERENCES.EMAIL]: n?.email || ""
|
|
85
|
+
})
|
|
86
|
+
}
|
|
87
|
+
),
|
|
88
|
+
_ && E && I.length > 0 && /* @__PURE__ */ t(
|
|
89
|
+
d,
|
|
90
|
+
{
|
|
91
|
+
header: s.PLANS.TITLE,
|
|
92
|
+
className: "prose-dark dark:prose-lighter mt-4",
|
|
93
|
+
noBorder: !0,
|
|
94
|
+
children: [
|
|
95
|
+
/* @__PURE__ */ e("p", { className: "text-sm", children: s.PLANS.DESCRIPTION }),
|
|
96
|
+
/* @__PURE__ */ e(f, { columnGap: 3, rowGap: 3, className: "mt-4", children: I.map(({ id: a, label: r, description: B, features: G, models: O }) => {
|
|
97
|
+
const o = p?.plan === a, j = o ? s.PLANS.ACTIVE_BADGE : `Get ${r}`, L = v === a;
|
|
98
|
+
return /* @__PURE__ */ e(c, { span: { fallback: 12, md: 4 }, children: /* @__PURE__ */ e(d, { mode: "darker", className: "prose-lighter h-full", children: /* @__PURE__ */ t(f, { direction: "column", children: [
|
|
99
|
+
/* @__PURE__ */ t(c, { children: [
|
|
100
|
+
/* @__PURE__ */ e("div", { className: "flex items-start justify-between gap-2", children: /* @__PURE__ */ t("div", { children: [
|
|
101
|
+
/* @__PURE__ */ e(
|
|
102
|
+
"h3",
|
|
103
|
+
{
|
|
104
|
+
className: ie("m-0", {
|
|
105
|
+
"text-emerald-400": o
|
|
106
|
+
}),
|
|
107
|
+
children: r
|
|
108
|
+
}
|
|
109
|
+
),
|
|
110
|
+
/* @__PURE__ */ e("p", { className: "mb-0 text-sm opacity-80", children: B })
|
|
111
|
+
] }) }),
|
|
112
|
+
/* @__PURE__ */ e("h4", { children: "Features" }),
|
|
113
|
+
/* @__PURE__ */ e("ul", { className: "prose-li:text-sm", children: G.map((i) => /* @__PURE__ */ e("li", { children: i }, i)) }),
|
|
114
|
+
/* @__PURE__ */ e("h4", { children: "Models" }),
|
|
115
|
+
/* @__PURE__ */ e("ul", { className: "prose-li:text-sm", children: O.map((i) => /* @__PURE__ */ e("li", { children: i }, i)) })
|
|
116
|
+
] }),
|
|
117
|
+
/* @__PURE__ */ e(c, { children: /* @__PURE__ */ e(
|
|
118
|
+
se,
|
|
119
|
+
{
|
|
120
|
+
mode: "dark",
|
|
121
|
+
size: "small",
|
|
122
|
+
variant: o ? "selected" : "secondary",
|
|
123
|
+
className: "mt-4",
|
|
124
|
+
fullWidth: !0,
|
|
125
|
+
disabled: o || L,
|
|
126
|
+
onClick: () => {
|
|
127
|
+
M(a, r);
|
|
128
|
+
},
|
|
129
|
+
onMouseEnter: g,
|
|
130
|
+
onFocus: g,
|
|
131
|
+
children: L ? "Updating..." : j
|
|
132
|
+
}
|
|
133
|
+
) })
|
|
134
|
+
] }) }) }, a);
|
|
135
|
+
}) })
|
|
136
|
+
]
|
|
137
|
+
}
|
|
138
|
+
),
|
|
139
|
+
y !== ne.PASSKEY && !re() && /* @__PURE__ */ t(
|
|
140
|
+
d,
|
|
141
|
+
{
|
|
142
|
+
className: "prose-dark dark:prose-lighter mt-4",
|
|
143
|
+
noBorder: !0,
|
|
144
|
+
header: /* @__PURE__ */ e("h2", { className: "m-0", children: /* @__PURE__ */ t(f, { columnGap: 3, alignVertical: "center", children: [
|
|
145
|
+
/* @__PURE__ */ e(c, { children: /* @__PURE__ */ e(b, { size: "size-8" }) }),
|
|
146
|
+
/* @__PURE__ */ e(c, { children: /* @__PURE__ */ e("div", { children: s.PREFERENCES.PASSKEY_TITLE }) })
|
|
147
|
+
] }) }),
|
|
148
|
+
children: [
|
|
149
|
+
/* @__PURE__ */ e("p", { children: s.PREFERENCES.PASSKEY_INSTRUCTIONS }),
|
|
150
|
+
/* @__PURE__ */ e(
|
|
151
|
+
te,
|
|
152
|
+
{
|
|
153
|
+
variant: "selected",
|
|
154
|
+
size: "small",
|
|
155
|
+
className: "mt-2",
|
|
156
|
+
onClick: k,
|
|
157
|
+
labelLeft: s.PREFERENCES.PASSKEY_BUTTON,
|
|
158
|
+
children: /* @__PURE__ */ e(b, { size: "size-5", monotone: !0 })
|
|
159
|
+
}
|
|
160
|
+
)
|
|
161
|
+
]
|
|
162
|
+
}
|
|
163
|
+
)
|
|
164
|
+
] }) : null;
|
|
165
|
+
}, Se = ({
|
|
166
|
+
open: h,
|
|
167
|
+
onOpenChange: n
|
|
168
|
+
}) => /* @__PURE__ */ e(
|
|
169
|
+
V,
|
|
170
|
+
{
|
|
171
|
+
open: h,
|
|
172
|
+
onOpenChange: n,
|
|
173
|
+
title: le,
|
|
174
|
+
animation: !0,
|
|
175
|
+
animationType: "fade",
|
|
176
|
+
children: /* @__PURE__ */ e(oe, {})
|
|
177
|
+
}
|
|
178
|
+
);
|
|
179
|
+
export {
|
|
180
|
+
Se as Profile
|
|
181
|
+
};
|