@akira-io/ui 1.1.0 → 1.1.1
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/blocks.d.ts +25 -25
- package/dist/blocks.js +74 -59
- package/dist/blocks.js.map +1 -1
- package/dist/{button-B6wQRe7p.d.ts → button-Bj6My68b.d.ts} +2 -1
- package/dist/{chunk-JAHTUAQL.js → chunk-2WIIRDHT.js} +5 -4
- package/dist/chunk-2WIIRDHT.js.map +1 -0
- package/dist/{chunk-KYWA5UYN.js → chunk-4SOQAVUP.js} +5 -5
- package/dist/{chunk-KYWA5UYN.js.map → chunk-4SOQAVUP.js.map} +1 -1
- package/dist/{chunk-UUTXPPRN.js → chunk-CFDDAFPJ.js} +125 -82
- package/dist/chunk-CFDDAFPJ.js.map +1 -0
- package/dist/{chunk-LKSM3WLK.js → chunk-FWQFB37J.js} +6 -5
- package/dist/chunk-FWQFB37J.js.map +1 -0
- package/dist/{chunk-DSD7MVLL.js → chunk-ODYCBCKS.js} +10 -7
- package/dist/chunk-ODYCBCKS.js.map +1 -0
- package/dist/{chunk-MNGNBEYN.js → chunk-QHZWW55M.js} +245 -156
- package/dist/chunk-QHZWW55M.js.map +1 -0
- package/dist/{chunk-SA5LM2GD.js → chunk-RPCL7VFQ.js} +41 -20
- package/dist/chunk-RPCL7VFQ.js.map +1 -0
- package/dist/{chunk-6QM5BA7B.js → chunk-T2INZOCM.js} +40 -23
- package/dist/chunk-T2INZOCM.js.map +1 -0
- package/dist/{chunk-UUEWFCKT.js → chunk-TGF54WAO.js} +6 -5
- package/dist/chunk-TGF54WAO.js.map +1 -0
- package/dist/{chunk-6X4TKSF6.js → chunk-XZCC6MTE.js} +11 -6
- package/dist/chunk-XZCC6MTE.js.map +1 -0
- package/dist/code.d.ts +5 -2
- package/dist/code.js +51 -52
- package/dist/code.js.map +1 -1
- package/dist/{context-VgHq4U98.d.ts → context-YWbxMH0C.d.ts} +26 -27
- package/dist/editor.d.ts +8 -6
- package/dist/editor.js +32 -18
- package/dist/editor.js.map +1 -1
- package/dist/index.d.ts +229 -229
- package/dist/index.js +431 -325
- package/dist/index.js.map +1 -1
- package/dist/inertia.d.ts +1 -1
- package/dist/inertia.js +5 -5
- package/dist/input-Dpi7pXeR.d.ts +6 -0
- package/dist/{json-viewer-BTHBACj9.d.ts → json-viewer-BARA2RCW.d.ts} +3 -2
- package/dist/locales/pt.d.ts +8 -8
- package/dist/{password-input-r39y2pCT.d.ts → password-input-DcXX7SG9.d.ts} +8 -7
- package/dist/shells.d.ts +7 -7
- package/dist/shells.js +10 -9
- package/dist/shells.js.map +1 -1
- package/dist/sidebar-DqkFRUxQ.d.ts +81 -0
- package/dist/{types-CT0rBsFc.d.ts → types-B-eGPoFD.d.ts} +3 -2
- package/dist/{types-B4QS3h5p.d.ts → types-cmBL8zOc.d.ts} +4 -1
- package/package.json +3 -3
- package/dist/chunk-6QM5BA7B.js.map +0 -1
- package/dist/chunk-6X4TKSF6.js.map +0 -1
- package/dist/chunk-DSD7MVLL.js.map +0 -1
- package/dist/chunk-JAHTUAQL.js.map +0 -1
- package/dist/chunk-LKSM3WLK.js.map +0 -1
- package/dist/chunk-MNGNBEYN.js.map +0 -1
- package/dist/chunk-SA5LM2GD.js.map +0 -1
- package/dist/chunk-UUEWFCKT.js.map +0 -1
- package/dist/chunk-UUTXPPRN.js.map +0 -1
- package/dist/input-4uxAHW6y.d.ts +0 -5
- package/dist/sidebar-BhOIlSjt.d.ts +0 -80
package/dist/blocks.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { CommandDialog, CommandInput, CommandList, CommandEmpty, CommandGroup, CommandItem, ConfirmDialog, Popover, PopoverTrigger, PopoverContent, FloatingSheet, FloatingSheetBody, FloatingSheetFooter, Tabs, TabsList, TabsTrigger, TabsContent, Textarea, Switch, FieldError, Select, SelectTrigger, SelectValue, SelectContent, SelectItem, InputOTP, InputOTPGroup, InputOTPSlot, Alert, AlertDescription, Calendar } from './chunk-
|
|
2
|
-
import { CopyButton } from './chunk-
|
|
3
|
-
import { Dialog, DialogContent, DialogHeader, DialogTitle, DialogDescription, DialogFooter, Label } from './chunk-
|
|
4
|
-
import { Card } from './chunk-
|
|
1
|
+
import { CommandDialog, CommandInput, CommandList, CommandEmpty, CommandGroup, CommandItem, ConfirmDialog, Popover, PopoverTrigger, PopoverContent, FloatingSheet, FloatingSheetBody, FloatingSheetFooter, Tabs, TabsList, TabsTrigger, TabsContent, Textarea, Switch, FieldError, Select, SelectTrigger, SelectValue, SelectContent, SelectItem, InputOTP, InputOTPGroup, InputOTPSlot, Alert, AlertDescription, Calendar } from './chunk-CFDDAFPJ.js';
|
|
2
|
+
import { CopyButton } from './chunk-2WIIRDHT.js';
|
|
3
|
+
import { Dialog, DialogContent, DialogHeader, DialogTitle, DialogDescription, DialogFooter, Label } from './chunk-T2INZOCM.js';
|
|
4
|
+
import { Card } from './chunk-RPCL7VFQ.js';
|
|
5
5
|
export { DEFAULT_TOUR_LABELS, TourProvider, resolveSteps, shouldStartTour, stepsForBreakpoint, useTour, useTourController } from './chunk-YOVY3KT6.js';
|
|
6
6
|
import { useUiLabels, useUiLocale } from './chunk-5AJFQ6C4.js';
|
|
7
7
|
export { UiLocaleProvider, useUiLabels, useUiLocale } from './chunk-5AJFQ6C4.js';
|
|
8
8
|
import { resolveLink } from './chunk-L2H5GIF7.js';
|
|
9
|
-
import { Input } from './chunk-
|
|
10
|
-
import { Button, cn, elevatedSurface, nestedSurfaceReset, recessedSurface, compactRadius, controlRadius, Spinner } from './chunk-
|
|
9
|
+
import { Input } from './chunk-XZCC6MTE.js';
|
|
10
|
+
import { Button, cn, elevatedSurface, nestedSurfaceReset, recessedSurface, compactRadius, controlRadius, Spinner } from './chunk-ODYCBCKS.js';
|
|
11
11
|
import { createContext, useState, useCallback, useEffect, useContext, useId, useRef } from 'react';
|
|
12
12
|
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
13
13
|
import { TriangleAlert, CalendarDays, ArrowLeft, ChevronRight, AlertCircle, ShieldOff, EyeOff, Eye, RefreshCw, ChevronLeft, ArrowLeftToLine, X, ArrowRight, ArrowUpRight, ArrowDownRight } from 'lucide-react';
|
|
@@ -102,7 +102,8 @@ function DangerZone({
|
|
|
102
102
|
processing = false,
|
|
103
103
|
labels,
|
|
104
104
|
footer,
|
|
105
|
-
className
|
|
105
|
+
className,
|
|
106
|
+
slotName = "danger-zone"
|
|
106
107
|
}) {
|
|
107
108
|
const copy = { ...dangerZoneLabels, ...labels };
|
|
108
109
|
const [activeId, setActiveId] = useState(null);
|
|
@@ -110,13 +111,13 @@ function DangerZone({
|
|
|
110
111
|
return /* @__PURE__ */ jsxs(
|
|
111
112
|
"section",
|
|
112
113
|
{
|
|
113
|
-
"data-slot": "danger-zone",
|
|
114
114
|
className: cn(
|
|
115
115
|
elevatedSurface,
|
|
116
116
|
nestedSurfaceReset,
|
|
117
117
|
"gap-6 p-6 flex flex-col bg-destructive/5 ring-destructive/30",
|
|
118
118
|
className
|
|
119
119
|
),
|
|
120
|
+
"data-slot": slotName,
|
|
120
121
|
children: [
|
|
121
122
|
/* @__PURE__ */ jsxs("div", { "data-slot": "danger-zone-header", className: "gap-3 flex", children: [
|
|
122
123
|
/* @__PURE__ */ jsx("span", { className: "size-11 rounded-2xl flex shrink-0 items-center justify-center bg-destructive/10 text-destructive", children: /* @__PURE__ */ jsx(TriangleAlert, { className: "size-5" }) }),
|
|
@@ -813,13 +814,14 @@ function FormOverlayActions({
|
|
|
813
814
|
submit = false,
|
|
814
815
|
className,
|
|
815
816
|
onCancel,
|
|
816
|
-
onSave
|
|
817
|
+
onSave,
|
|
818
|
+
slotName = "form-overlay-actions"
|
|
817
819
|
}) {
|
|
818
820
|
return /* @__PURE__ */ jsxs(
|
|
819
821
|
"div",
|
|
820
822
|
{
|
|
821
|
-
"data-slot": "form-overlay-actions",
|
|
822
823
|
className: cn("gap-2 flex items-center justify-end", className),
|
|
824
|
+
"data-slot": slotName,
|
|
823
825
|
children: [
|
|
824
826
|
/* @__PURE__ */ jsx(
|
|
825
827
|
Button,
|
|
@@ -858,7 +860,8 @@ function DetailEditSheet({
|
|
|
858
860
|
className,
|
|
859
861
|
children,
|
|
860
862
|
onSave,
|
|
861
|
-
onCancel
|
|
863
|
+
onCancel,
|
|
864
|
+
slotName = "detail-edit-sheet"
|
|
862
865
|
}) {
|
|
863
866
|
const handleSubmit = (event) => {
|
|
864
867
|
event.preventDefault();
|
|
@@ -886,9 +889,9 @@ function DetailEditSheet({
|
|
|
886
889
|
children: /* @__PURE__ */ jsxs(
|
|
887
890
|
"form",
|
|
888
891
|
{
|
|
889
|
-
"data-slot": "detail-edit-sheet",
|
|
890
892
|
onSubmit: handleSubmit,
|
|
891
893
|
className: "min-h-0 flex flex-1 flex-col",
|
|
894
|
+
"data-slot": slotName,
|
|
892
895
|
children: [
|
|
893
896
|
/* @__PURE__ */ jsx(FloatingSheetBody, { children }),
|
|
894
897
|
/* @__PURE__ */ jsx(FloatingSheetFooter, { children: /* @__PURE__ */ jsx(
|
|
@@ -918,7 +921,8 @@ function FormDialog({
|
|
|
918
921
|
className,
|
|
919
922
|
children,
|
|
920
923
|
onSave,
|
|
921
|
-
onCancel
|
|
924
|
+
onCancel,
|
|
925
|
+
slotName = "form-dialog"
|
|
922
926
|
}) {
|
|
923
927
|
const handleSubmit = (event) => {
|
|
924
928
|
event.preventDefault();
|
|
@@ -952,11 +956,11 @@ function FormDialog({
|
|
|
952
956
|
children: /* @__PURE__ */ jsx(
|
|
953
957
|
DialogContent,
|
|
954
958
|
{
|
|
955
|
-
"data-slot": "form-dialog",
|
|
956
959
|
...description ? {} : { "aria-describedby": void 0 },
|
|
957
960
|
className: cn("gap-0 p-0", className),
|
|
958
961
|
onEscapeKeyDown: blockWhileProcessing,
|
|
959
962
|
onInteractOutside: blockWhileProcessing,
|
|
963
|
+
slotName,
|
|
960
964
|
children: /* @__PURE__ */ jsxs(
|
|
961
965
|
"form",
|
|
962
966
|
{
|
|
@@ -1013,14 +1017,15 @@ function InfoField({
|
|
|
1013
1017
|
copyLabel,
|
|
1014
1018
|
copiedLabel,
|
|
1015
1019
|
iconClassName,
|
|
1016
|
-
className
|
|
1020
|
+
className,
|
|
1021
|
+
slotName = "info-field"
|
|
1017
1022
|
}) {
|
|
1018
1023
|
const text = copyableText(value, copyValue);
|
|
1019
1024
|
return /* @__PURE__ */ jsxs(
|
|
1020
1025
|
"div",
|
|
1021
1026
|
{
|
|
1022
|
-
"data-slot": "info-field",
|
|
1023
1027
|
className: cn("gap-3 flex items-center", className),
|
|
1028
|
+
"data-slot": slotName,
|
|
1024
1029
|
children: [
|
|
1025
1030
|
/* @__PURE__ */ jsx("div", { className: cn("p-2 rounded-xl bg-muted", iconClassName), children: /* @__PURE__ */ jsx(Icon, { className: "size-5 text-muted-foreground" }) }),
|
|
1026
1031
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
@@ -1155,12 +1160,12 @@ function SettingsCard({
|
|
|
1155
1160
|
control,
|
|
1156
1161
|
children,
|
|
1157
1162
|
inset = false,
|
|
1158
|
-
className
|
|
1163
|
+
className,
|
|
1164
|
+
slotName = "settings-card"
|
|
1159
1165
|
}) {
|
|
1160
1166
|
return /* @__PURE__ */ jsxs(
|
|
1161
1167
|
"section",
|
|
1162
1168
|
{
|
|
1163
|
-
"data-slot": "settings-card",
|
|
1164
1169
|
"data-inset": inset || void 0,
|
|
1165
1170
|
className: cn(
|
|
1166
1171
|
elevatedSurface,
|
|
@@ -1168,6 +1173,7 @@ function SettingsCard({
|
|
|
1168
1173
|
inset && recessedSurface,
|
|
1169
1174
|
className
|
|
1170
1175
|
),
|
|
1176
|
+
"data-slot": slotName,
|
|
1171
1177
|
children: [
|
|
1172
1178
|
/* @__PURE__ */ jsxs("div", { className: "gap-4 sm:flex-row sm:items-center sm:justify-between flex flex-col", children: [
|
|
1173
1179
|
/* @__PURE__ */ jsxs("div", { className: "gap-3 flex items-center", children: [
|
|
@@ -1198,12 +1204,12 @@ function SettingsPanel({
|
|
|
1198
1204
|
description,
|
|
1199
1205
|
children,
|
|
1200
1206
|
inset = true,
|
|
1201
|
-
className
|
|
1207
|
+
className,
|
|
1208
|
+
slotName = "settings-panel"
|
|
1202
1209
|
}) {
|
|
1203
1210
|
return /* @__PURE__ */ jsxs(
|
|
1204
1211
|
"div",
|
|
1205
1212
|
{
|
|
1206
|
-
"data-slot": "settings-panel",
|
|
1207
1213
|
"data-inset": inset || void 0,
|
|
1208
1214
|
className: cn(
|
|
1209
1215
|
elevatedSurface,
|
|
@@ -1211,6 +1217,7 @@ function SettingsPanel({
|
|
|
1211
1217
|
inset && recessedSurface,
|
|
1212
1218
|
className
|
|
1213
1219
|
),
|
|
1220
|
+
"data-slot": slotName,
|
|
1214
1221
|
children: [
|
|
1215
1222
|
(title || description) && /* @__PURE__ */ jsxs("div", { children: [
|
|
1216
1223
|
title && /* @__PURE__ */ jsx("h3", { className: "text-sm font-semibold text-foreground", children: title }),
|
|
@@ -1259,16 +1266,17 @@ function SettingsField({
|
|
|
1259
1266
|
error,
|
|
1260
1267
|
required,
|
|
1261
1268
|
className,
|
|
1262
|
-
children
|
|
1269
|
+
children,
|
|
1270
|
+
slotName = "settings-field"
|
|
1263
1271
|
}) {
|
|
1264
1272
|
const generated = useId();
|
|
1265
1273
|
const fieldId = id ?? generated;
|
|
1266
1274
|
return /* @__PURE__ */ jsxs(
|
|
1267
1275
|
"div",
|
|
1268
1276
|
{
|
|
1269
|
-
"data-slot": "settings-field",
|
|
1270
1277
|
"data-invalid": error ? true : void 0,
|
|
1271
1278
|
className: cn("space-y-2 py-1", className),
|
|
1279
|
+
"data-slot": slotName,
|
|
1272
1280
|
children: [
|
|
1273
1281
|
/* @__PURE__ */ jsxs(Label, { htmlFor: fieldId, children: [
|
|
1274
1282
|
label,
|
|
@@ -1302,6 +1310,7 @@ function TextField({
|
|
|
1302
1310
|
onChange,
|
|
1303
1311
|
disabled,
|
|
1304
1312
|
placeholder,
|
|
1313
|
+
slotName = "text-field",
|
|
1305
1314
|
...field
|
|
1306
1315
|
}) {
|
|
1307
1316
|
return /* @__PURE__ */ jsx(SettingsField, { ...field, children: (fieldId) => /* @__PURE__ */ jsx(
|
|
@@ -1313,7 +1322,7 @@ function TextField({
|
|
|
1313
1322
|
disabled,
|
|
1314
1323
|
placeholder,
|
|
1315
1324
|
"aria-invalid": field.error ? true : void 0,
|
|
1316
|
-
|
|
1325
|
+
slotName,
|
|
1317
1326
|
onChange: (event) => onChange(event.target.value)
|
|
1318
1327
|
}
|
|
1319
1328
|
) });
|
|
@@ -1326,6 +1335,7 @@ function NumberField({
|
|
|
1326
1335
|
min,
|
|
1327
1336
|
max,
|
|
1328
1337
|
step,
|
|
1338
|
+
slotName = "number-field",
|
|
1329
1339
|
...field
|
|
1330
1340
|
}) {
|
|
1331
1341
|
return /* @__PURE__ */ jsx(SettingsField, { ...field, children: (fieldId) => /* @__PURE__ */ jsx(
|
|
@@ -1341,7 +1351,7 @@ function NumberField({
|
|
|
1341
1351
|
disabled,
|
|
1342
1352
|
placeholder,
|
|
1343
1353
|
"aria-invalid": field.error ? true : void 0,
|
|
1344
|
-
|
|
1354
|
+
slotName,
|
|
1345
1355
|
onChange: (event) => onChange(
|
|
1346
1356
|
event.target.value === "" ? "" : event.target.valueAsNumber
|
|
1347
1357
|
)
|
|
@@ -1354,6 +1364,7 @@ function DateField({
|
|
|
1354
1364
|
disabled,
|
|
1355
1365
|
min,
|
|
1356
1366
|
max,
|
|
1367
|
+
slotName = "date-field",
|
|
1357
1368
|
...field
|
|
1358
1369
|
}) {
|
|
1359
1370
|
return /* @__PURE__ */ jsx(SettingsField, { ...field, children: (fieldId) => /* @__PURE__ */ jsx(
|
|
@@ -1366,7 +1377,7 @@ function DateField({
|
|
|
1366
1377
|
max,
|
|
1367
1378
|
disabled,
|
|
1368
1379
|
"aria-invalid": field.error ? true : void 0,
|
|
1369
|
-
|
|
1380
|
+
slotName,
|
|
1370
1381
|
onChange: (event) => onChange(event.target.value)
|
|
1371
1382
|
}
|
|
1372
1383
|
) });
|
|
@@ -1377,6 +1388,7 @@ function SelectField({
|
|
|
1377
1388
|
options,
|
|
1378
1389
|
disabled,
|
|
1379
1390
|
placeholder,
|
|
1391
|
+
slotName = "select-field",
|
|
1380
1392
|
...field
|
|
1381
1393
|
}) {
|
|
1382
1394
|
return /* @__PURE__ */ jsx(SettingsField, { ...field, children: (fieldId) => /* @__PURE__ */ jsxs(
|
|
@@ -1390,7 +1402,7 @@ function SelectField({
|
|
|
1390
1402
|
SelectTrigger,
|
|
1391
1403
|
{
|
|
1392
1404
|
id: fieldId,
|
|
1393
|
-
|
|
1405
|
+
slotName,
|
|
1394
1406
|
"aria-invalid": field.error ? true : void 0,
|
|
1395
1407
|
children: /* @__PURE__ */ jsx(SelectValue, { placeholder })
|
|
1396
1408
|
}
|
|
@@ -1415,16 +1427,17 @@ function SettingsPage({
|
|
|
1415
1427
|
control,
|
|
1416
1428
|
linkComponent,
|
|
1417
1429
|
children,
|
|
1418
|
-
className
|
|
1430
|
+
className,
|
|
1431
|
+
slotName = "settings-page"
|
|
1419
1432
|
}) {
|
|
1420
1433
|
return /* @__PURE__ */ jsx(SettingsLinkContext.Provider, { value: linkComponent, children: /* @__PURE__ */ jsxs(
|
|
1421
1434
|
"div",
|
|
1422
1435
|
{
|
|
1423
|
-
"data-slot": "settings-page",
|
|
1424
1436
|
className: cn(
|
|
1425
1437
|
"gap-8 max-w-4xl mx-auto flex w-full flex-col",
|
|
1426
1438
|
className
|
|
1427
1439
|
),
|
|
1440
|
+
"data-slot": slotName,
|
|
1428
1441
|
children: [
|
|
1429
1442
|
title && /* @__PURE__ */ jsx(
|
|
1430
1443
|
SectionHeader,
|
|
@@ -1451,7 +1464,8 @@ function SettingsSection({
|
|
|
1451
1464
|
wide = false,
|
|
1452
1465
|
linkComponent,
|
|
1453
1466
|
children,
|
|
1454
|
-
className
|
|
1467
|
+
className,
|
|
1468
|
+
slotName = "settings-section"
|
|
1455
1469
|
}) {
|
|
1456
1470
|
const labels = useUiLabels("settings", settingsLabels, {
|
|
1457
1471
|
back: backLabel
|
|
@@ -1461,12 +1475,12 @@ function SettingsSection({
|
|
|
1461
1475
|
return /* @__PURE__ */ jsxs(
|
|
1462
1476
|
"section",
|
|
1463
1477
|
{
|
|
1464
|
-
"data-slot": "settings-section",
|
|
1465
1478
|
className: cn(
|
|
1466
1479
|
"gap-6 mx-auto flex w-full flex-col",
|
|
1467
1480
|
wide ? "max-w-4xl" : "max-w-2xl",
|
|
1468
1481
|
className
|
|
1469
1482
|
),
|
|
1483
|
+
"data-slot": slotName,
|
|
1470
1484
|
children: [
|
|
1471
1485
|
backHref && /* @__PURE__ */ jsxs(
|
|
1472
1486
|
Link,
|
|
@@ -1497,13 +1511,14 @@ function SettingsGroup({
|
|
|
1497
1511
|
label,
|
|
1498
1512
|
columns = 2,
|
|
1499
1513
|
children,
|
|
1500
|
-
className
|
|
1514
|
+
className,
|
|
1515
|
+
slotName = "settings-group"
|
|
1501
1516
|
}) {
|
|
1502
1517
|
return /* @__PURE__ */ jsxs(
|
|
1503
1518
|
"div",
|
|
1504
1519
|
{
|
|
1505
|
-
"data-slot": "settings-group",
|
|
1506
1520
|
className: cn("gap-3 flex flex-col", className),
|
|
1521
|
+
"data-slot": slotName,
|
|
1507
1522
|
children: [
|
|
1508
1523
|
label && /* @__PURE__ */ jsx("p", { className: "font-bold tracking-widest text-[11px] text-muted-foreground uppercase", children: label }),
|
|
1509
1524
|
/* @__PURE__ */ jsx(
|
|
@@ -1530,7 +1545,8 @@ function SettingsEntry({
|
|
|
1530
1545
|
badge,
|
|
1531
1546
|
disabled = false,
|
|
1532
1547
|
linkComponent,
|
|
1533
|
-
className
|
|
1548
|
+
className,
|
|
1549
|
+
slotName = "settings-entry"
|
|
1534
1550
|
}) {
|
|
1535
1551
|
const contextLink = useContext(SettingsLinkContext);
|
|
1536
1552
|
const Link = resolveLink(linkComponent ?? contextLink);
|
|
@@ -1568,25 +1584,17 @@ function SettingsEntry({
|
|
|
1568
1584
|
}
|
|
1569
1585
|
);
|
|
1570
1586
|
if (disabled) {
|
|
1571
|
-
return /* @__PURE__ */ jsx(
|
|
1572
|
-
"div",
|
|
1573
|
-
{
|
|
1574
|
-
"data-slot": "settings-entry",
|
|
1575
|
-
"data-disabled": "true",
|
|
1576
|
-
"aria-disabled": "true",
|
|
1577
|
-
children: card
|
|
1578
|
-
}
|
|
1579
|
-
);
|
|
1587
|
+
return /* @__PURE__ */ jsx("div", { "data-disabled": "true", "aria-disabled": "true", "data-slot": slotName, children: card });
|
|
1580
1588
|
}
|
|
1581
1589
|
return /* @__PURE__ */ jsx(
|
|
1582
1590
|
Link,
|
|
1583
1591
|
{
|
|
1584
|
-
"data-slot": "settings-entry",
|
|
1585
1592
|
href,
|
|
1586
1593
|
className: cn(
|
|
1587
1594
|
compactRadius,
|
|
1588
1595
|
"outline-none focus-visible:ring-[3px] focus-visible:ring-ring/50"
|
|
1589
1596
|
),
|
|
1597
|
+
"data-slot": slotName,
|
|
1590
1598
|
children: card
|
|
1591
1599
|
}
|
|
1592
1600
|
);
|
|
@@ -1625,13 +1633,13 @@ function StatCard({
|
|
|
1625
1633
|
trend,
|
|
1626
1634
|
comparisonLabel,
|
|
1627
1635
|
inset = false,
|
|
1628
|
-
className
|
|
1636
|
+
className,
|
|
1637
|
+
slotName = "stat-card"
|
|
1629
1638
|
}) {
|
|
1630
1639
|
const resolvedTrend = resolveTrend(trend);
|
|
1631
1640
|
return /* @__PURE__ */ jsxs(
|
|
1632
1641
|
"div",
|
|
1633
1642
|
{
|
|
1634
|
-
"data-slot": "stat-card",
|
|
1635
1643
|
"data-inset": inset || void 0,
|
|
1636
1644
|
className: cn(
|
|
1637
1645
|
elevatedSurface,
|
|
@@ -1639,6 +1647,7 @@ function StatCard({
|
|
|
1639
1647
|
inset && recessedSurface,
|
|
1640
1648
|
className
|
|
1641
1649
|
),
|
|
1650
|
+
"data-slot": slotName,
|
|
1642
1651
|
children: [
|
|
1643
1652
|
/* @__PURE__ */ jsxs("div", { className: "mb-4 gap-4 flex items-start justify-between", children: [
|
|
1644
1653
|
/* @__PURE__ */ jsx("div", { className: cn("rounded-2xl p-3 shrink-0", iconClassName), children: /* @__PURE__ */ jsx(Icon, { className: "size-6" }) }),
|
|
@@ -1745,7 +1754,8 @@ function TwoFactorVerifyForm({
|
|
|
1745
1754
|
submitLabel,
|
|
1746
1755
|
footer,
|
|
1747
1756
|
labels,
|
|
1748
|
-
className
|
|
1757
|
+
className,
|
|
1758
|
+
slotName = "two-factor-verify-form"
|
|
1749
1759
|
}) {
|
|
1750
1760
|
const text = resolveLabels(labels);
|
|
1751
1761
|
const fieldId = useId();
|
|
@@ -1778,11 +1788,11 @@ function TwoFactorVerifyForm({
|
|
|
1778
1788
|
return /* @__PURE__ */ jsxs(
|
|
1779
1789
|
"form",
|
|
1780
1790
|
{
|
|
1781
|
-
"data-slot": "two-factor-verify-form",
|
|
1782
1791
|
"data-mode": mode,
|
|
1783
1792
|
"data-pending": pending || void 0,
|
|
1784
1793
|
onSubmit: handleSubmit,
|
|
1785
1794
|
className: cn("gap-5 flex w-full flex-col", className),
|
|
1795
|
+
"data-slot": slotName,
|
|
1786
1796
|
children: [
|
|
1787
1797
|
/* @__PURE__ */ jsxs("div", { className: "gap-2 flex flex-col", children: [
|
|
1788
1798
|
/* @__PURE__ */ jsx(Label, { htmlFor: fieldId, children: mode === "code" ? text.codeLabel : text.recoveryCodeLabel }),
|
|
@@ -1803,7 +1813,7 @@ function TwoFactorVerifyForm({
|
|
|
1803
1813
|
Input,
|
|
1804
1814
|
{
|
|
1805
1815
|
id: fieldId,
|
|
1806
|
-
|
|
1816
|
+
slotName: "two-factor-recovery-input",
|
|
1807
1817
|
value,
|
|
1808
1818
|
autoComplete: "one-time-code",
|
|
1809
1819
|
spellCheck: false,
|
|
@@ -1814,7 +1824,7 @@ function TwoFactorVerifyForm({
|
|
|
1814
1824
|
}
|
|
1815
1825
|
)
|
|
1816
1826
|
] }),
|
|
1817
|
-
messages.length > 0 && /* @__PURE__ */ jsxs(Alert, { variant: "destructive",
|
|
1827
|
+
messages.length > 0 && /* @__PURE__ */ jsxs(Alert, { variant: "destructive", slotName: "two-factor-error", children: [
|
|
1818
1828
|
/* @__PURE__ */ jsx(AlertCircle, {}),
|
|
1819
1829
|
/* @__PURE__ */ jsx(AlertDescription, { children: messages.map((message) => /* @__PURE__ */ jsx("p", { children: message }, message)) })
|
|
1820
1830
|
] }),
|
|
@@ -1854,14 +1864,15 @@ function TwoFactorChallenge({
|
|
|
1854
1864
|
description,
|
|
1855
1865
|
footer,
|
|
1856
1866
|
labels,
|
|
1857
|
-
className
|
|
1867
|
+
className,
|
|
1868
|
+
slotName = "two-factor-challenge"
|
|
1858
1869
|
}) {
|
|
1859
1870
|
const text = resolveLabels(labels);
|
|
1860
1871
|
return /* @__PURE__ */ jsxs(
|
|
1861
1872
|
"section",
|
|
1862
1873
|
{
|
|
1863
|
-
"data-slot": "two-factor-challenge",
|
|
1864
1874
|
className: cn("gap-6 flex w-full flex-col", className),
|
|
1875
|
+
"data-slot": slotName,
|
|
1865
1876
|
children: [
|
|
1866
1877
|
/* @__PURE__ */ jsxs("div", { className: "gap-2 flex flex-col", children: [
|
|
1867
1878
|
/* @__PURE__ */ jsx("h2", { className: "text-2xl font-bold tracking-tight text-foreground", children: title ?? text.challengeTitle }),
|
|
@@ -1888,7 +1899,8 @@ function TwoFactorDisableButton({
|
|
|
1888
1899
|
variant = "destructive",
|
|
1889
1900
|
size = "default",
|
|
1890
1901
|
labels,
|
|
1891
|
-
className
|
|
1902
|
+
className,
|
|
1903
|
+
slotName = "two-factor-disable"
|
|
1892
1904
|
}) {
|
|
1893
1905
|
const text = resolveLabels(labels);
|
|
1894
1906
|
const [open, setOpen] = useState(false);
|
|
@@ -1904,9 +1916,9 @@ function TwoFactorDisableButton({
|
|
|
1904
1916
|
return /* @__PURE__ */ jsxs(
|
|
1905
1917
|
"span",
|
|
1906
1918
|
{
|
|
1907
|
-
"data-slot": "two-factor-disable",
|
|
1908
1919
|
"data-open": open || void 0,
|
|
1909
1920
|
className: cn("inline-flex", className),
|
|
1921
|
+
"data-slot": slotName,
|
|
1910
1922
|
children: [
|
|
1911
1923
|
/* @__PURE__ */ jsxs(
|
|
1912
1924
|
Button,
|
|
@@ -1945,7 +1957,8 @@ function TwoFactorRecoveryCodes({
|
|
|
1945
1957
|
onRegenerate,
|
|
1946
1958
|
showHeading = true,
|
|
1947
1959
|
labels,
|
|
1948
|
-
className
|
|
1960
|
+
className,
|
|
1961
|
+
slotName = "two-factor-recovery-codes"
|
|
1949
1962
|
}) {
|
|
1950
1963
|
const text = resolveLabels(labels);
|
|
1951
1964
|
const [revealed, setRevealed] = useState(defaultRevealed);
|
|
@@ -1965,9 +1978,9 @@ function TwoFactorRecoveryCodes({
|
|
|
1965
1978
|
return /* @__PURE__ */ jsxs(
|
|
1966
1979
|
"div",
|
|
1967
1980
|
{
|
|
1968
|
-
"data-slot": "two-factor-recovery-codes",
|
|
1969
1981
|
"data-revealed": revealed || void 0,
|
|
1970
1982
|
className: cn("gap-4 flex w-full flex-col", className),
|
|
1983
|
+
"data-slot": slotName,
|
|
1971
1984
|
children: [
|
|
1972
1985
|
showHeading && /* @__PURE__ */ jsxs("div", { className: "gap-1 flex flex-col", children: [
|
|
1973
1986
|
/* @__PURE__ */ jsx("p", { className: "text-sm font-semibold text-foreground", children: text.recoveryTitle }),
|
|
@@ -2057,15 +2070,16 @@ function TwoFactorScanStep({
|
|
|
2057
2070
|
qrCodeSvg,
|
|
2058
2071
|
manualSetupKey,
|
|
2059
2072
|
labels,
|
|
2060
|
-
className
|
|
2073
|
+
className,
|
|
2074
|
+
slotName = "two-factor-scan-step"
|
|
2061
2075
|
}) {
|
|
2062
2076
|
const text = resolveLabels(labels);
|
|
2063
2077
|
const [revealed, setRevealed] = useState(false);
|
|
2064
2078
|
return /* @__PURE__ */ jsxs(
|
|
2065
2079
|
"div",
|
|
2066
2080
|
{
|
|
2067
|
-
"data-slot": "two-factor-scan-step",
|
|
2068
2081
|
className: cn("gap-5 flex w-full flex-col", className),
|
|
2082
|
+
"data-slot": slotName,
|
|
2069
2083
|
children: [
|
|
2070
2084
|
/* @__PURE__ */ jsx(
|
|
2071
2085
|
"div",
|
|
@@ -2149,7 +2163,8 @@ function TwoFactorSetupDialog({
|
|
|
2149
2163
|
onRegenerateRecoveryCodes,
|
|
2150
2164
|
onCompleted,
|
|
2151
2165
|
labels,
|
|
2152
|
-
className
|
|
2166
|
+
className,
|
|
2167
|
+
slotName = "two-factor-setup-dialog"
|
|
2153
2168
|
}) {
|
|
2154
2169
|
const text = resolveLabels(labels);
|
|
2155
2170
|
const [step, setStep] = useState(
|
|
@@ -2199,9 +2214,9 @@ function TwoFactorSetupDialog({
|
|
|
2199
2214
|
return /* @__PURE__ */ jsx(Dialog, { open, onOpenChange, children: /* @__PURE__ */ jsxs(
|
|
2200
2215
|
DialogContent,
|
|
2201
2216
|
{
|
|
2202
|
-
"data-slot": "two-factor-setup-dialog",
|
|
2203
2217
|
"data-step": step,
|
|
2204
2218
|
className: cn("max-w-md p-0", className),
|
|
2219
|
+
slotName,
|
|
2205
2220
|
children: [
|
|
2206
2221
|
/* @__PURE__ */ jsxs(DialogHeader, { className: "p-6 md:p-8", children: [
|
|
2207
2222
|
/* @__PURE__ */ jsx(DialogTitle, { children: heading }),
|