zudoku 0.66.0 → 0.66.2
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/config/validators/validate.d.ts +0 -2
- package/dist/config/validators/validate.js +0 -1
- package/dist/config/validators/validate.js.map +1 -1
- package/dist/flat-config.d.ts +1 -1
- package/dist/lib/authentication/ui/ZudokuAuthUi.js +5 -1
- package/dist/lib/authentication/ui/ZudokuAuthUi.js.map +1 -1
- package/dist/vite/config.js +1 -4
- package/dist/vite/config.js.map +1 -1
- package/lib/ActionButton-DUgvSylL.js +25 -0
- package/lib/ActionButton-DUgvSylL.js.map +1 -0
- package/lib/{ClaudeLogo-PxFjou9w.js → ClaudeLogo-CGRfGTk2.js} +2 -2
- package/lib/{ClaudeLogo-PxFjou9w.js.map → ClaudeLogo-CGRfGTk2.js.map} +1 -1
- package/lib/Drawer-Ci7XwhqT.js.map +1 -1
- package/lib/{ErrorAlert-BqjbNHIn.js → ErrorAlert-BUlG32M9.js} +6 -6
- package/lib/{ErrorAlert-BqjbNHIn.js.map → ErrorAlert-BUlG32M9.js.map} +1 -1
- package/lib/{MdxPage-CVFatbHw.js → MdxPage-Bjf72BP3.js} +7 -7
- package/lib/{MdxPage-CVFatbHw.js.map → MdxPage-Bjf72BP3.js.map} +1 -1
- package/lib/{Mermaid-CIFixY6C.js → Mermaid-D_VSX7_Q.js} +3 -3
- package/lib/{Mermaid-CIFixY6C.js.map → Mermaid-D_VSX7_Q.js.map} +1 -1
- package/lib/{OAuthErrorPage-Dup79DJk.js → OAuthErrorPage-1Ekji0PK.js} +6 -6
- package/lib/{OAuthErrorPage-Dup79DJk.js.map → OAuthErrorPage-1Ekji0PK.js.map} +1 -1
- package/lib/{OasProvider-BJeMq29o.js → OasProvider-BZxmTyMM.js} +3 -3
- package/lib/{OasProvider-BJeMq29o.js.map → OasProvider-BZxmTyMM.js.map} +1 -1
- package/lib/{OperationList-ff3ZvQsO.js → OperationList-B7nPIFB8.js} +329 -348
- package/lib/OperationList-B7nPIFB8.js.map +1 -0
- package/lib/{RouteGuard-BXy13JSz.js → RouteGuard-9wjejsKm.js} +3 -3
- package/lib/{RouteGuard-BXy13JSz.js.map → RouteGuard-9wjejsKm.js.map} +1 -1
- package/lib/{RouterError-CKOZTsDD.js → RouterError-DfTZblpv.js} +2 -2
- package/lib/{RouterError-CKOZTsDD.js.map → RouterError-DfTZblpv.js.map} +1 -1
- package/lib/{SchemaList-BSC1KM3v.js → SchemaList-16_obkku.js} +7 -7
- package/lib/{SchemaList-BSC1KM3v.js.map → SchemaList-16_obkku.js.map} +1 -1
- package/lib/{SchemaView-CgwJ9gtb.js → SchemaView-eyvR4bRt.js} +3 -3
- package/lib/{SchemaView-CgwJ9gtb.js.map → SchemaView-eyvR4bRt.js.map} +1 -1
- package/lib/Select-CkxXP5I7.js +243 -0
- package/lib/Select-CkxXP5I7.js.map +1 -0
- package/lib/Separator-CTPSeW1S.js +27 -0
- package/lib/Separator-CTPSeW1S.js.map +1 -0
- package/lib/{SignUp-Pm_LGm6T.js → SignUp-D54_QWFy.js} +3 -3
- package/lib/{SignUp-Pm_LGm6T.js.map → SignUp-D54_QWFy.js.map} +1 -1
- package/lib/{SyntaxHighlight-bkmst3oV.js → SyntaxHighlight-j_HRSPCU.js} +1508 -1492
- package/lib/SyntaxHighlight-j_HRSPCU.js.map +1 -0
- package/lib/{Toc-TUXNFbKl.js → Toc-z05x698-.js} +2 -2
- package/lib/{Toc-TUXNFbKl.js.map → Toc-z05x698-.js.map} +1 -1
- package/lib/{ZudokuContext-np1wheDl.js → ZudokuContext-BXldanA8.js} +5 -5
- package/lib/{ZudokuContext-np1wheDl.js.map → ZudokuContext-BXldanA8.js.map} +1 -1
- package/lib/chunk-PVWAREVJ-dLIqswPy.js.map +1 -1
- package/lib/{circular-XPj_dwqA.js → circular-D5sYCIWL.js} +2 -2
- package/lib/{circular-XPj_dwqA.js.map → circular-D5sYCIWL.js.map} +1 -1
- package/lib/{createServer-D01nCTNp.js → createServer-BlwU7lIr.js} +4 -4
- package/lib/{createServer-D01nCTNp.js.map → createServer-BlwU7lIr.js.map} +1 -1
- package/lib/createVariantComponent-B9_dVBvu.js +35 -0
- package/lib/createVariantComponent-B9_dVBvu.js.map +1 -0
- package/lib/{errors-B0hNTPFO.js → errors-BtC4Kn2j.js} +2 -2
- package/lib/{errors-B0hNTPFO.js.map → errors-BtC4Kn2j.js.map} +1 -1
- package/lib/firebase-Ibm_tv3G.js +7366 -0
- package/lib/firebase-Ibm_tv3G.js.map +1 -0
- package/lib/{hook-CvSwcbk6.js → hook-BNxidGQq.js} +2 -2
- package/lib/{hook-CvSwcbk6.js.map → hook-BNxidGQq.js.map} +1 -1
- package/lib/{index-Bjc_QsUR.js → index-CeVTNcfF.js} +452 -476
- package/lib/index-CeVTNcfF.js.map +1 -0
- package/lib/index-CrcNWbel.js.map +1 -1
- package/lib/{index-DnMgJWrI.js → index-Css56y3F.js} +3 -3
- package/lib/{index-DnMgJWrI.js.map → index-Css56y3F.js.map} +1 -1
- package/lib/{index-mfkNWYG-.js → index-DSOi7zVM.js} +5 -5
- package/lib/{index-mfkNWYG-.js.map → index-DSOi7zVM.js.map} +1 -1
- package/lib/{index-DscsS121.js → index-eKVhlB94.js} +2 -2
- package/lib/{index-DscsS121.js.map → index-eKVhlB94.js.map} +1 -1
- package/lib/index.esm-BYObtETB.js.map +1 -1
- package/lib/index.esm-BoKBnRoT.js +32 -0
- package/lib/index.esm-BoKBnRoT.js.map +1 -0
- package/lib/index.esm-DtzT_KoE.js.map +1 -1
- package/lib/jsx-runtime-BzflLqGi.js.map +1 -1
- package/lib/{mutation-BlmnL5qL.js → mutation-BoVlx8yA.js} +2 -2
- package/lib/{mutation-BlmnL5qL.js.map → mutation-BoVlx8yA.js.map} +1 -1
- package/lib/ui/Carousel.js.map +1 -1
- package/lib/ui/SyntaxHighlight.js +2 -2
- package/lib/useMutation-C6RqWmTS.js +97 -0
- package/lib/useMutation-C6RqWmTS.js.map +1 -0
- package/lib/zudoku.__internal.js +6 -6
- package/lib/zudoku.__internal.js.map +1 -1
- package/lib/zudoku.auth-auth0.js +1 -1
- package/lib/zudoku.auth-azureb2c.js +4 -4
- package/lib/zudoku.auth-clerk.js +2 -2
- package/lib/zudoku.auth-firebase.js +9 -0
- package/lib/zudoku.auth-firebase.js.map +1 -0
- package/lib/zudoku.auth-openid.js +4 -4
- package/lib/zudoku.auth-supabase.js +4 -4
- package/lib/zudoku.components.js +5 -5
- package/lib/zudoku.hooks.js +3 -3
- package/lib/zudoku.mermaid.js +3 -3
- package/lib/zudoku.plugin-api-catalog.js +4 -4
- package/lib/zudoku.plugin-api-keys.js +162 -178
- package/lib/zudoku.plugin-api-keys.js.map +1 -1
- package/lib/zudoku.plugin-custom-pages.js +1 -1
- package/lib/zudoku.plugin-markdown.js +1 -1
- package/lib/zudoku.plugin-openapi.js +2 -2
- package/lib/zudoku.plugin-search-pagefind.js +2 -2
- package/lib/zudoku.router.js.map +1 -1
- package/package.json +19 -15
- package/src/lib/authentication/ui/ZudokuAuthUi.tsx +11 -1
- package/lib/OperationList-ff3ZvQsO.js.map +0 -1
- package/lib/Select-VmDZ-nKe.js +0 -337
- package/lib/Select-VmDZ-nKe.js.map +0 -1
- package/lib/SyntaxHighlight-bkmst3oV.js.map +0 -1
- package/lib/index-Bjc_QsUR.js.map +0 -1
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
import { j as e } from "./jsx-runtime-BzflLqGi.js";
|
|
2
|
+
import { EyeOffIcon as z, EyeIcon as w, CheckIcon as u, CopyIcon as S, ChevronDownIcon as m, ChevronUpIcon as N } from "lucide-react";
|
|
3
|
+
import { useState as I } from "react";
|
|
4
|
+
import { c as r } from "./cn-dYga0KKN.js";
|
|
5
|
+
import { u as k } from "./useCopyToClipboard-B_085nfO.js";
|
|
6
|
+
import { Button as c } from "./ui/Button.js";
|
|
7
|
+
import * as o from "@radix-ui/react-select";
|
|
8
|
+
import { cn as l } from "./ui/util.js";
|
|
9
|
+
const _ = ({
|
|
10
|
+
secret: t,
|
|
11
|
+
revealed: a = !1,
|
|
12
|
+
previewChars: s = 5,
|
|
13
|
+
className: n
|
|
14
|
+
}) => /* @__PURE__ */ e.jsxs("span", { className: r("w-full truncate", n), children: [
|
|
15
|
+
/* @__PURE__ */ e.jsx(
|
|
16
|
+
"div",
|
|
17
|
+
{
|
|
18
|
+
className: r(
|
|
19
|
+
"w-40 inline-block md:w-fit",
|
|
20
|
+
a ? "" : "opacity-50"
|
|
21
|
+
),
|
|
22
|
+
children: a ? t.slice(0, s === 0 ? t.length : -s) : "•••• ".repeat(
|
|
23
|
+
t.slice(
|
|
24
|
+
0,
|
|
25
|
+
s === 0 ? t.length : -s
|
|
26
|
+
).length / 5
|
|
27
|
+
) + "•".repeat(
|
|
28
|
+
t.slice(
|
|
29
|
+
0,
|
|
30
|
+
s === 0 ? t.length : -s
|
|
31
|
+
).length % 5
|
|
32
|
+
)
|
|
33
|
+
}
|
|
34
|
+
),
|
|
35
|
+
s > 0 && /* @__PURE__ */ e.jsx("span", { children: t.slice(-s) })
|
|
36
|
+
] }), P = ({
|
|
37
|
+
secret: t,
|
|
38
|
+
preview: a = 5,
|
|
39
|
+
className: s,
|
|
40
|
+
status: n,
|
|
41
|
+
onCopy: i,
|
|
42
|
+
revealed: p,
|
|
43
|
+
onReveal: x,
|
|
44
|
+
noReveal: f
|
|
45
|
+
}) => {
|
|
46
|
+
const g = Math.abs(a), [h, v] = I(!1), [j, b] = k(), d = p ?? h;
|
|
47
|
+
return /* @__PURE__ */ e.jsxs(
|
|
48
|
+
"div",
|
|
49
|
+
{
|
|
50
|
+
className: r(
|
|
51
|
+
"flex gap-2 items-center text-sm border rounded-md px-1",
|
|
52
|
+
s
|
|
53
|
+
),
|
|
54
|
+
children: [
|
|
55
|
+
/* @__PURE__ */ e.jsxs("div", { className: "font-mono w-full h-9 items-center flex px-2 text-xs gap-2", children: [
|
|
56
|
+
n && /* @__PURE__ */ e.jsx(
|
|
57
|
+
"div",
|
|
58
|
+
{
|
|
59
|
+
className: r(
|
|
60
|
+
"rounded-full shrink-0 w-2 h-2 mr-2",
|
|
61
|
+
n === "active" && "bg-emerald-400",
|
|
62
|
+
n === "expired" && "bg-neutral-200",
|
|
63
|
+
n === "expiring" && "bg-yellow-400",
|
|
64
|
+
n === "revoked" && "bg-red-400",
|
|
65
|
+
n === "none" && "opacity-0"
|
|
66
|
+
)
|
|
67
|
+
}
|
|
68
|
+
),
|
|
69
|
+
/* @__PURE__ */ e.jsx(
|
|
70
|
+
_,
|
|
71
|
+
{
|
|
72
|
+
secret: t,
|
|
73
|
+
revealed: d,
|
|
74
|
+
previewChars: g
|
|
75
|
+
}
|
|
76
|
+
)
|
|
77
|
+
] }),
|
|
78
|
+
f !== !0 && /* @__PURE__ */ e.jsx(
|
|
79
|
+
c,
|
|
80
|
+
{
|
|
81
|
+
variant: "ghost",
|
|
82
|
+
onClick: () => {
|
|
83
|
+
v((y) => !y), x?.(!d);
|
|
84
|
+
},
|
|
85
|
+
size: "icon",
|
|
86
|
+
children: d ? /* @__PURE__ */ e.jsx(z, { size: 16 }) : /* @__PURE__ */ e.jsx(w, { size: 16 })
|
|
87
|
+
}
|
|
88
|
+
),
|
|
89
|
+
/* @__PURE__ */ e.jsx(
|
|
90
|
+
c,
|
|
91
|
+
{
|
|
92
|
+
variant: "ghost",
|
|
93
|
+
onClick: () => {
|
|
94
|
+
b(t), i?.(t);
|
|
95
|
+
},
|
|
96
|
+
size: "icon",
|
|
97
|
+
children: j ? /* @__PURE__ */ e.jsx(u, { size: 16 }) : /* @__PURE__ */ e.jsx(S, { size: 16 })
|
|
98
|
+
}
|
|
99
|
+
)
|
|
100
|
+
]
|
|
101
|
+
}
|
|
102
|
+
);
|
|
103
|
+
};
|
|
104
|
+
function M({
|
|
105
|
+
...t
|
|
106
|
+
}) {
|
|
107
|
+
return /* @__PURE__ */ e.jsx(o.Root, { "data-slot": "select", ...t });
|
|
108
|
+
}
|
|
109
|
+
function O({
|
|
110
|
+
...t
|
|
111
|
+
}) {
|
|
112
|
+
return /* @__PURE__ */ e.jsx(o.Group, { "data-slot": "select-group", ...t });
|
|
113
|
+
}
|
|
114
|
+
function $({
|
|
115
|
+
...t
|
|
116
|
+
}) {
|
|
117
|
+
return /* @__PURE__ */ e.jsx(o.Value, { "data-slot": "select-value", ...t });
|
|
118
|
+
}
|
|
119
|
+
function q({
|
|
120
|
+
className: t,
|
|
121
|
+
size: a = "default",
|
|
122
|
+
children: s,
|
|
123
|
+
...n
|
|
124
|
+
}) {
|
|
125
|
+
return /* @__PURE__ */ e.jsxs(
|
|
126
|
+
o.Trigger,
|
|
127
|
+
{
|
|
128
|
+
"data-slot": "select-trigger",
|
|
129
|
+
"data-size": a,
|
|
130
|
+
className: l(
|
|
131
|
+
"border-input data-placeholder:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
132
|
+
t
|
|
133
|
+
),
|
|
134
|
+
...n,
|
|
135
|
+
children: [
|
|
136
|
+
s,
|
|
137
|
+
/* @__PURE__ */ e.jsx(o.Icon, { asChild: !0, children: /* @__PURE__ */ e.jsx(m, { className: "size-4 opacity-50" }) })
|
|
138
|
+
]
|
|
139
|
+
}
|
|
140
|
+
);
|
|
141
|
+
}
|
|
142
|
+
function A({
|
|
143
|
+
className: t,
|
|
144
|
+
children: a,
|
|
145
|
+
position: s = "popper",
|
|
146
|
+
align: n = "center",
|
|
147
|
+
...i
|
|
148
|
+
}) {
|
|
149
|
+
return /* @__PURE__ */ e.jsx(o.Portal, { children: /* @__PURE__ */ e.jsxs(
|
|
150
|
+
o.Content,
|
|
151
|
+
{
|
|
152
|
+
"data-slot": "select-content",
|
|
153
|
+
className: l(
|
|
154
|
+
"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-32 origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border shadow-md",
|
|
155
|
+
s === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",
|
|
156
|
+
t
|
|
157
|
+
),
|
|
158
|
+
position: s,
|
|
159
|
+
align: n,
|
|
160
|
+
...i,
|
|
161
|
+
children: [
|
|
162
|
+
/* @__PURE__ */ e.jsx(C, {}),
|
|
163
|
+
/* @__PURE__ */ e.jsx(
|
|
164
|
+
o.Viewport,
|
|
165
|
+
{
|
|
166
|
+
className: l(
|
|
167
|
+
"p-1",
|
|
168
|
+
s === "popper" && "h-(--radix-select-trigger-height) w-full min-w-(--radix-select-trigger-width) scroll-my-1"
|
|
169
|
+
),
|
|
170
|
+
children: a
|
|
171
|
+
}
|
|
172
|
+
),
|
|
173
|
+
/* @__PURE__ */ e.jsx(T, {})
|
|
174
|
+
]
|
|
175
|
+
}
|
|
176
|
+
) });
|
|
177
|
+
}
|
|
178
|
+
function F({
|
|
179
|
+
className: t,
|
|
180
|
+
children: a,
|
|
181
|
+
...s
|
|
182
|
+
}) {
|
|
183
|
+
return /* @__PURE__ */ e.jsxs(
|
|
184
|
+
o.Item,
|
|
185
|
+
{
|
|
186
|
+
"data-slot": "select-item",
|
|
187
|
+
className: l(
|
|
188
|
+
"focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",
|
|
189
|
+
t
|
|
190
|
+
),
|
|
191
|
+
...s,
|
|
192
|
+
children: [
|
|
193
|
+
/* @__PURE__ */ e.jsx("span", { className: "absolute right-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ e.jsx(o.ItemIndicator, { children: /* @__PURE__ */ e.jsx(u, { className: "size-4" }) }) }),
|
|
194
|
+
/* @__PURE__ */ e.jsx(o.ItemText, { children: a })
|
|
195
|
+
]
|
|
196
|
+
}
|
|
197
|
+
);
|
|
198
|
+
}
|
|
199
|
+
function C({
|
|
200
|
+
className: t,
|
|
201
|
+
...a
|
|
202
|
+
}) {
|
|
203
|
+
return /* @__PURE__ */ e.jsx(
|
|
204
|
+
o.ScrollUpButton,
|
|
205
|
+
{
|
|
206
|
+
"data-slot": "select-scroll-up-button",
|
|
207
|
+
className: l(
|
|
208
|
+
"flex cursor-default items-center justify-center py-1",
|
|
209
|
+
t
|
|
210
|
+
),
|
|
211
|
+
...a,
|
|
212
|
+
children: /* @__PURE__ */ e.jsx(N, { className: "size-4" })
|
|
213
|
+
}
|
|
214
|
+
);
|
|
215
|
+
}
|
|
216
|
+
function T({
|
|
217
|
+
className: t,
|
|
218
|
+
...a
|
|
219
|
+
}) {
|
|
220
|
+
return /* @__PURE__ */ e.jsx(
|
|
221
|
+
o.ScrollDownButton,
|
|
222
|
+
{
|
|
223
|
+
"data-slot": "select-scroll-down-button",
|
|
224
|
+
className: l(
|
|
225
|
+
"flex cursor-default items-center justify-center py-1",
|
|
226
|
+
t
|
|
227
|
+
),
|
|
228
|
+
...a,
|
|
229
|
+
children: /* @__PURE__ */ e.jsx(m, { className: "size-4" })
|
|
230
|
+
}
|
|
231
|
+
);
|
|
232
|
+
}
|
|
233
|
+
export {
|
|
234
|
+
M as S,
|
|
235
|
+
q as a,
|
|
236
|
+
$ as b,
|
|
237
|
+
A as c,
|
|
238
|
+
O as d,
|
|
239
|
+
F as e,
|
|
240
|
+
P as f,
|
|
241
|
+
_ as g
|
|
242
|
+
};
|
|
243
|
+
//# sourceMappingURL=Select-CkxXP5I7.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Select-CkxXP5I7.js","sources":["../src/lib/ui/Secret.tsx","../src/lib/ui/Select.tsx"],"sourcesContent":["import { CheckIcon, CopyIcon, EyeIcon, EyeOffIcon } from \"lucide-react\";\nimport { useState } from \"react\";\nimport { cn } from \"../util/cn.js\";\nimport { useCopyToClipboard } from \"../util/useCopyToClipboard.js\";\nimport { Button } from \"./Button.js\";\n\ntype Status = \"active\" | \"expired\" | \"expiring\" | \"revoked\" | \"none\";\n\nexport const SecretText = ({\n secret,\n revealed = false,\n previewChars = 5,\n className,\n}: {\n secret: string;\n revealed?: boolean;\n previewChars?: number;\n className?: string;\n}) => {\n return (\n <span className={cn(\"w-full truncate\", className)}>\n <div\n className={cn(\n \"w-40 inline-block md:w-fit\",\n revealed ? \"\" : \"opacity-50\",\n )}\n >\n {revealed\n ? secret.slice(0, previewChars === 0 ? secret.length : -previewChars)\n : \"•••• \".repeat(\n secret.slice(\n 0,\n previewChars === 0 ? secret.length : -previewChars,\n ).length / 5,\n ) +\n \"•\".repeat(\n secret.slice(\n 0,\n previewChars === 0 ? secret.length : -previewChars,\n ).length % 5,\n )}\n </div>\n {previewChars > 0 && <span>{secret.slice(-previewChars)}</span>}\n </span>\n );\n};\n\nexport const Secret = ({\n secret,\n preview = 5,\n className,\n status,\n onCopy,\n revealed: controlledRevealed,\n onReveal,\n noReveal: disabledReveal,\n}: {\n revealed?: boolean;\n noReveal?: boolean;\n secret: string;\n status?: Status;\n className?: string;\n preview?: number;\n onCopy?: (secret: string) => void;\n onReveal?: (revealed: boolean) => void;\n}) => {\n const previewChars = Math.abs(preview);\n const [isRevealed, setRevealed] = useState(false);\n const [isCopied, copyToClipboard] = useCopyToClipboard();\n\n const revealed = controlledRevealed ?? isRevealed;\n\n return (\n <div\n className={cn(\n \"flex gap-2 items-center text-sm border rounded-md px-1\",\n className,\n )}\n >\n <div className=\"font-mono w-full h-9 items-center flex px-2 text-xs gap-2\">\n {status && (\n <div\n className={cn(\n \"rounded-full shrink-0 w-2 h-2 mr-2\",\n status === \"active\" && \"bg-emerald-400\",\n status === \"expired\" && \"bg-neutral-200\",\n status === \"expiring\" && \"bg-yellow-400\",\n status === \"revoked\" && \"bg-red-400\",\n status === \"none\" && \"opacity-0\",\n )}\n />\n )}\n <SecretText\n secret={secret}\n revealed={revealed}\n previewChars={previewChars}\n />\n </div>\n {disabledReveal !== true && (\n <Button\n variant=\"ghost\"\n onClick={() => {\n setRevealed((prev) => !prev);\n onReveal?.(!revealed);\n }}\n size=\"icon\"\n >\n {revealed ? <EyeOffIcon size={16} /> : <EyeIcon size={16} />}\n </Button>\n )}\n <Button\n variant=\"ghost\"\n onClick={() => {\n copyToClipboard(secret);\n onCopy?.(secret);\n }}\n size=\"icon\"\n >\n {isCopied ? <CheckIcon size={16} /> : <CopyIcon size={16} />}\n </Button>\n </div>\n );\n};\n","import * as SelectPrimitive from \"@radix-ui/react-select\";\nimport { CheckIcon, ChevronDownIcon, ChevronUpIcon } from \"lucide-react\";\nimport type * as React from \"react\";\nimport { cn } from \"./util.js\";\n\nfunction Select({\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.Root>) {\n return <SelectPrimitive.Root data-slot=\"select\" {...props} />;\n}\n\nfunction SelectGroup({\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.Group>) {\n return <SelectPrimitive.Group data-slot=\"select-group\" {...props} />;\n}\n\nfunction SelectValue({\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.Value>) {\n return <SelectPrimitive.Value data-slot=\"select-value\" {...props} />;\n}\n\nfunction SelectTrigger({\n className,\n size = \"default\",\n children,\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.Trigger> & {\n size?: \"sm\" | \"default\";\n}) {\n return (\n <SelectPrimitive.Trigger\n data-slot=\"select-trigger\"\n data-size={size}\n className={cn(\n \"border-input data-placeholder:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n {children}\n <SelectPrimitive.Icon asChild>\n <ChevronDownIcon className=\"size-4 opacity-50\" />\n </SelectPrimitive.Icon>\n </SelectPrimitive.Trigger>\n );\n}\n\nfunction SelectContent({\n className,\n children,\n position = \"popper\",\n align = \"center\",\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.Content>) {\n return (\n <SelectPrimitive.Portal>\n <SelectPrimitive.Content\n data-slot=\"select-content\"\n className={cn(\n \"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-32 origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border shadow-md\",\n position === \"popper\" &&\n \"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1\",\n className,\n )}\n position={position}\n align={align}\n {...props}\n >\n <SelectScrollUpButton />\n <SelectPrimitive.Viewport\n className={cn(\n \"p-1\",\n position === \"popper\" &&\n \"h-(--radix-select-trigger-height) w-full min-w-(--radix-select-trigger-width) scroll-my-1\",\n )}\n >\n {children}\n </SelectPrimitive.Viewport>\n <SelectScrollDownButton />\n </SelectPrimitive.Content>\n </SelectPrimitive.Portal>\n );\n}\n\nfunction SelectLabel({\n className,\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.Label>) {\n return (\n <SelectPrimitive.Label\n data-slot=\"select-label\"\n className={cn(\"text-muted-foreground px-2 py-1.5 text-xs\", className)}\n {...props}\n />\n );\n}\n\nfunction SelectItem({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.Item>) {\n return (\n <SelectPrimitive.Item\n data-slot=\"select-item\"\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2\",\n className,\n )}\n {...props}\n >\n <span className=\"absolute right-2 flex size-3.5 items-center justify-center\">\n <SelectPrimitive.ItemIndicator>\n <CheckIcon className=\"size-4\" />\n </SelectPrimitive.ItemIndicator>\n </span>\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\n </SelectPrimitive.Item>\n );\n}\n\nfunction SelectSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.Separator>) {\n return (\n <SelectPrimitive.Separator\n data-slot=\"select-separator\"\n className={cn(\"bg-border pointer-events-none -mx-1 my-1 h-px\", className)}\n {...props}\n />\n );\n}\n\nfunction SelectScrollUpButton({\n className,\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.ScrollUpButton>) {\n return (\n <SelectPrimitive.ScrollUpButton\n data-slot=\"select-scroll-up-button\"\n className={cn(\n \"flex cursor-default items-center justify-center py-1\",\n className,\n )}\n {...props}\n >\n <ChevronUpIcon className=\"size-4\" />\n </SelectPrimitive.ScrollUpButton>\n );\n}\n\nfunction SelectScrollDownButton({\n className,\n ...props\n}: React.ComponentProps<typeof SelectPrimitive.ScrollDownButton>) {\n return (\n <SelectPrimitive.ScrollDownButton\n data-slot=\"select-scroll-down-button\"\n className={cn(\n \"flex cursor-default items-center justify-center py-1\",\n className,\n )}\n {...props}\n >\n <ChevronDownIcon className=\"size-4\" />\n </SelectPrimitive.ScrollDownButton>\n );\n}\n\nexport {\n Select,\n SelectContent,\n SelectGroup,\n SelectItem,\n SelectLabel,\n SelectScrollDownButton,\n SelectScrollUpButton,\n SelectSeparator,\n SelectTrigger,\n SelectValue,\n};\n"],"names":["SecretText","secret","revealed","previewChars","className","cn","jsx","Secret","preview","status","onCopy","controlledRevealed","onReveal","disabledReveal","isRevealed","setRevealed","useState","isCopied","copyToClipboard","useCopyToClipboard","jsxs","Button","prev","EyeOffIcon","EyeIcon","CheckIcon","CopyIcon","Select","props","SelectPrimitive","SelectGroup","SelectValue","SelectTrigger","size","children","ChevronDownIcon","SelectContent","position","align","SelectScrollUpButton","SelectScrollDownButton","SelectItem","ChevronUpIcon"],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { j as i } from "./jsx-runtime-BzflLqGi.js";
|
|
2
|
+
import * as n from "@radix-ui/react-separator";
|
|
3
|
+
import { c as e } from "./cn-dYga0KKN.js";
|
|
4
|
+
function p({
|
|
5
|
+
className: t,
|
|
6
|
+
orientation: a = "horizontal",
|
|
7
|
+
decorative: o = !0,
|
|
8
|
+
...r
|
|
9
|
+
}) {
|
|
10
|
+
return /* @__PURE__ */ i.jsx(
|
|
11
|
+
n.Root,
|
|
12
|
+
{
|
|
13
|
+
"data-slot": "separator",
|
|
14
|
+
decorative: o,
|
|
15
|
+
orientation: a,
|
|
16
|
+
className: e(
|
|
17
|
+
"bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px",
|
|
18
|
+
t
|
|
19
|
+
),
|
|
20
|
+
...r
|
|
21
|
+
}
|
|
22
|
+
);
|
|
23
|
+
}
|
|
24
|
+
export {
|
|
25
|
+
p as S
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=Separator-CTPSeW1S.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Separator-CTPSeW1S.js","sources":["../src/lib/ui/Separator.tsx"],"sourcesContent":["import * as SeparatorPrimitive from \"@radix-ui/react-separator\";\nimport type * as React from \"react\";\nimport { cn } from \"../util/cn.js\";\n\nfunction Separator({\n className,\n orientation = \"horizontal\",\n decorative = true,\n ...props\n}: React.ComponentProps<typeof SeparatorPrimitive.Root>) {\n return (\n <SeparatorPrimitive.Root\n data-slot=\"separator\"\n decorative={decorative}\n orientation={orientation}\n className={cn(\n \"bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport { Separator };\n"],"names":["Separator","className","orientation","decorative","props","jsx","SeparatorPrimitive","cn"],"mappings":";;;AAIA,SAASA,EAAU;AAAA,EACjB,WAAAC;AAAA,EACA,aAAAC,IAAc;AAAA,EACd,YAAAC,IAAa;AAAA,EACb,GAAGC;AACL,GAAyD;AACvD,SACEC,gBAAAA,EAAAA;AAAAA,IAACC,EAAmB;AAAA,IAAnB;AAAA,MACC,aAAU;AAAA,MACV,YAAAH;AAAA,MACA,aAAAD;AAAA,MACA,WAAWK;AAAA,QACT;AAAA,QACAN;AAAA,MAAA;AAAA,MAED,GAAGG;AAAA,IAAA;AAAA,EAAA;AAGV;"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { j as e } from "./jsx-runtime-BzflLqGi.js";
|
|
2
2
|
import { useEffect as t } from "react";
|
|
3
3
|
import { b as m } from "./chunk-PVWAREVJ-dLIqswPy.js";
|
|
4
|
-
import { S as x, B as o, L as h } from "./index-
|
|
4
|
+
import { S as x, B as o, L as h } from "./index-DSOi7zVM.js";
|
|
5
5
|
import { C as c, a, b as l, c as d, d as u } from "./Card-KFniaZn5.js";
|
|
6
|
-
import { u as i } from "./hook-
|
|
6
|
+
import { u as i } from "./hook-BNxidGQq.js";
|
|
7
7
|
import { u as p } from "./useLatest-hmRS46UF.js";
|
|
8
8
|
const b = () => {
|
|
9
9
|
const s = i(), [r] = m(), n = r.get("redirect") ?? void 0;
|
|
@@ -47,4 +47,4 @@ export {
|
|
|
47
47
|
b as a,
|
|
48
48
|
w as b
|
|
49
49
|
};
|
|
50
|
-
//# sourceMappingURL=SignUp-
|
|
50
|
+
//# sourceMappingURL=SignUp-D54_QWFy.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SignUp-
|
|
1
|
+
{"version":3,"file":"SignUp-D54_QWFy.js","sources":["../src/lib/authentication/components/SignIn.tsx","../src/lib/authentication/components/SignOut.tsx","../src/lib/authentication/components/SignUp.tsx"],"sourcesContent":["import { useEffect } from \"react\";\nimport { useSearchParams } from \"react-router\";\nimport { Spinner } from \"zudoku/components\";\nimport {\n Card,\n CardContent,\n CardDescription,\n CardHeader,\n CardTitle,\n} from \"zudoku/ui/Card.js\";\nimport { useAuth } from \"../hook.js\";\n\nexport const SignIn = () => {\n const auth = useAuth();\n const [search] = useSearchParams();\n const redirectTo = search.get(\"redirect\") ?? undefined;\n\n useEffect(() => {\n void auth.login({\n redirectTo,\n replace: true,\n });\n }, [auth, redirectTo]);\n\n return (\n <div className=\"flex items-center justify-center mt-8\">\n <Card className=\"max-w-md w-full\">\n <CardHeader>\n <CardTitle className=\"text-lg\">Sign in</CardTitle>\n <CardDescription>\n You're being redirected to our secure login provider to complete\n your sign-in process.\n </CardDescription>\n </CardHeader>\n <CardContent>\n <div className=\"flex items-center text-sm font-medium gap-2\">\n <Spinner /> Redirecting...\n </div>\n </CardContent>\n </Card>\n </div>\n );\n};\n","import { useEffect } from \"react\";\nimport { useLatest } from \"../../util/useLatest.js\";\nimport { useAuth } from \"../hook.js\";\n\nexport const SignOut = () => {\n const auth = useAuth();\n\n const logout = useLatest(auth.logout);\n\n useEffect(() => {\n void logout.current();\n }, [logout]);\n\n return null;\n};\n","import { useEffect } from \"react\";\nimport { Button, Link } from \"zudoku/components\";\nimport {\n Card,\n CardContent,\n CardDescription,\n CardHeader,\n CardTitle,\n} from \"zudoku/ui/Card.js\";\nimport { useAuth } from \"../hook.js\";\n\nexport const SignUp = () => {\n const auth = useAuth();\n\n useEffect(() => {\n void auth.signup();\n }, [auth]);\n\n return (\n <div className=\"flex items-center justify-center mt-8\">\n <Card className=\"max-w-md w-full\">\n <CardHeader>\n <CardTitle className=\"text-lg\">Sign up</CardTitle>\n <CardDescription>\n You're being redirected to our secure login provider to complete\n your sign up process.\n </CardDescription>\n </CardHeader>\n <CardContent>\n <div className=\"flex flex-col gap-2 justify-center\">\n <Button onClick={() => auth.signup()} variant=\"default\">\n Register\n </Button>\n <Button variant=\"link\" className=\"text-muted-foreground\" asChild>\n <Link to=\"/\">Go home</Link>\n </Button>\n </div>\n </CardContent>\n </Card>\n </div>\n );\n};\n"],"names":["SignIn","auth","useAuth","search","useSearchParams","redirectTo","useEffect","jsxs","Card","CardHeader","jsx","CardTitle","CardDescription","CardContent","Spinner","SignOut","logout","useLatest","SignUp","Button","Link"],"mappings":";;;;;;;AAYO,MAAMA,IAAS,MAAM;AAC1B,QAAMC,IAAOC,EAAA,GACP,CAACC,CAAM,IAAIC,EAAA,GACXC,IAAaF,EAAO,IAAI,UAAU,KAAK;AAE7C,SAAAG,EAAU,MAAM;AACd,IAAKL,EAAK,MAAM;AAAA,MACd,YAAAI;AAAA,MACA,SAAS;AAAA,IAAA,CACV;AAAA,EACH,GAAG,CAACJ,GAAMI,CAAU,CAAC,yBAGlB,OAAA,EAAI,WAAU,yCACb,UAAAE,gBAAAA,EAAAA,KAACC,GAAA,EAAK,WAAU,mBACd,UAAA;AAAA,IAAAD,gBAAAA,OAACE,GAAA,EACC,UAAA;AAAA,MAAAC,gBAAAA,EAAAA,IAACC,GAAA,EAAU,WAAU,WAAU,UAAA,WAAO;AAAA,MACtCD,gBAAAA,EAAAA,IAACE,KAAgB,UAAA,yFAAA,CAGjB;AAAA,IAAA,GACF;AAAA,IACAF,gBAAAA,MAACG,GAAA,EACC,UAAAN,gBAAAA,EAAAA,KAAC,OAAA,EAAI,WAAU,+CACb,UAAA;AAAA,MAAAG,gBAAAA,EAAAA,IAACI,GAAA,EAAQ;AAAA,MAAE;AAAA,IAAA,EAAA,CACb,EAAA,CACF;AAAA,EAAA,EAAA,CACF,EAAA,CACF;AAEJ,GCtCaC,IAAU,MAAM;AAC3B,QAAMd,IAAOC,EAAA,GAEPc,IAASC,EAAUhB,EAAK,MAAM;AAEpC,SAAAK,EAAU,MAAM;AACd,IAAKU,EAAO,QAAA;AAAA,EACd,GAAG,CAACA,CAAM,CAAC,GAEJ;AACT,GCHaE,IAAS,MAAM;AAC1B,QAAMjB,IAAOC,EAAA;AAEb,SAAAI,EAAU,MAAM;AACd,IAAKL,EAAK,OAAA;AAAA,EACZ,GAAG,CAACA,CAAI,CAAC,yBAGN,OAAA,EAAI,WAAU,yCACb,UAAAM,gBAAAA,EAAAA,KAACC,GAAA,EAAK,WAAU,mBACd,UAAA;AAAA,IAAAD,gBAAAA,OAACE,GAAA,EACC,UAAA;AAAA,MAAAC,gBAAAA,EAAAA,IAACC,GAAA,EAAU,WAAU,WAAU,UAAA,WAAO;AAAA,MACtCD,gBAAAA,EAAAA,IAACE,KAAgB,UAAA,yFAAA,CAGjB;AAAA,IAAA,GACF;AAAA,IACAF,gBAAAA,MAACG,GAAA,EACC,UAAAN,gBAAAA,EAAAA,KAAC,OAAA,EAAI,WAAU,sCACb,UAAA;AAAA,MAAAG,gBAAAA,EAAAA,IAACS,GAAA,EAAO,SAAS,MAAMlB,EAAK,UAAU,SAAQ,WAAU,UAAA,WAAA,CAExD;AAAA,MACAS,gBAAAA,EAAAA,IAACS,GAAA,EAAO,SAAQ,QAAO,WAAU,yBAAwB,SAAO,IAC9D,UAAAT,gBAAAA,EAAAA,IAACU,GAAA,EAAK,IAAG,KAAI,qBAAO,EAAA,CACtB;AAAA,IAAA,EAAA,CACF,EAAA,CACF;AAAA,EAAA,EAAA,CACF,EAAA,CACF;AAEJ;"}
|