@turinhub/atomix-common-ui 0.3.0 → 0.5.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/README.md +50 -17
- package/dist/AuthPanel-C_2JBE7t.cjs +2 -0
- package/dist/AuthPanel-C_2JBE7t.cjs.map +1 -0
- package/dist/AuthPanel-D2HFX8eN.js +656 -0
- package/dist/AuthPanel-D2HFX8eN.js.map +1 -0
- package/dist/PDFSidebar-BBtucLK6.js +232 -0
- package/dist/PDFSidebar-BBtucLK6.js.map +1 -0
- package/dist/PDFSidebar-Di0D-yPS.cjs +2 -0
- package/dist/PDFSidebar-Di0D-yPS.cjs.map +1 -0
- package/dist/auth.cjs +2 -0
- package/dist/auth.cjs.map +1 -0
- package/dist/auth.d.ts +11 -0
- package/dist/auth.d.ts.map +1 -0
- package/dist/auth.js +9 -0
- package/dist/auth.js.map +1 -0
- package/dist/component-types.cjs +2 -0
- package/dist/component-types.cjs.map +1 -0
- package/dist/component-types.d.ts +2 -0
- package/dist/component-types.d.ts.map +1 -0
- package/dist/component-types.js +2 -0
- package/dist/component-types.js.map +1 -0
- package/dist/components/AuthLoginPanel.d.ts +55 -0
- package/dist/components/AuthLoginPanel.d.ts.map +1 -0
- package/dist/components/AuthPageShell.d.ts +11 -0
- package/dist/components/AuthPageShell.d.ts.map +1 -0
- package/dist/components/AuthPanel.d.ts +20 -0
- package/dist/components/AuthPanel.d.ts.map +1 -0
- package/dist/components/AuthRegisterPanel.d.ts +34 -0
- package/dist/components/AuthRegisterPanel.d.ts.map +1 -0
- package/dist/components/AuthVisualCarousel.d.ts +20 -0
- package/dist/components/AuthVisualCarousel.d.ts.map +1 -0
- package/dist/components/DataTable.d.ts +2 -2
- package/dist/components/DataTable.d.ts.map +1 -1
- package/dist/components/ImageReader.d.ts +44 -0
- package/dist/components/ImageReader.d.ts.map +1 -0
- package/dist/components/MarkdownReader.d.ts +26 -0
- package/dist/components/MarkdownReader.d.ts.map +1 -0
- package/dist/components/PDFReader.d.ts +2 -2
- package/dist/components/PDFReader.d.ts.map +1 -1
- package/dist/components/PDFSidebar.d.ts +1 -1
- package/dist/components/PDFSidebar.d.ts.map +1 -1
- package/dist/components/SimplePDFReader.d.ts +1 -1
- package/dist/components/VideoReader.d.ts +39 -0
- package/dist/components/VideoReader.d.ts.map +1 -0
- package/dist/components/media-utils.d.ts +9 -0
- package/dist/components/media-utils.d.ts.map +1 -0
- package/dist/data-table.cjs +2 -0
- package/dist/data-table.cjs.map +1 -0
- package/dist/data-table.d.ts +3 -0
- package/dist/data-table.d.ts.map +1 -0
- package/dist/data-table.js +169 -0
- package/dist/data-table.js.map +1 -0
- package/dist/delete-confirm-dialog.cjs +2 -0
- package/dist/delete-confirm-dialog.cjs.map +1 -0
- package/dist/delete-confirm-dialog.d.ts +3 -0
- package/dist/delete-confirm-dialog.d.ts.map +1 -0
- package/dist/delete-confirm-dialog.js +109 -0
- package/dist/delete-confirm-dialog.js.map +1 -0
- package/dist/file-upload.cjs +2 -0
- package/dist/file-upload.cjs.map +1 -0
- package/dist/file-upload.d.ts +3 -0
- package/dist/file-upload.d.ts.map +1 -0
- package/dist/file-upload.js +354 -0
- package/dist/file-upload.js.map +1 -0
- package/dist/image-reader.cjs +2 -0
- package/dist/image-reader.cjs.map +1 -0
- package/dist/image-reader.d.ts +3 -0
- package/dist/image-reader.d.ts.map +1 -0
- package/dist/image-reader.js +214 -0
- package/dist/image-reader.js.map +1 -0
- package/dist/index.cjs +2 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +10 -20
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -12
- package/dist/index.js.map +1 -1
- package/dist/jsx-runtime-B4hRZ52C.js +283 -0
- package/dist/jsx-runtime-B4hRZ52C.js.map +1 -0
- package/dist/jsx-runtime-BB_1_6y_.cjs +23 -0
- package/dist/jsx-runtime-BB_1_6y_.cjs.map +1 -0
- package/dist/markdown-reader.cjs +2 -0
- package/dist/markdown-reader.cjs.map +1 -0
- package/dist/markdown-reader.d.ts +3 -0
- package/dist/markdown-reader.d.ts.map +1 -0
- package/dist/markdown-reader.js +145 -0
- package/dist/markdown-reader.js.map +1 -0
- package/dist/media-utils-5UPuocc1.js +23 -0
- package/dist/media-utils-5UPuocc1.js.map +1 -0
- package/dist/media-utils-X1dDYP9W.cjs +2 -0
- package/dist/media-utils-X1dDYP9W.cjs.map +1 -0
- package/dist/pdf-reader.cjs +2 -0
- package/dist/pdf-reader.cjs.map +1 -0
- package/dist/pdf-reader.d.ts +3 -0
- package/dist/pdf-reader.d.ts.map +1 -0
- package/dist/pdf-reader.js +427 -0
- package/dist/pdf-reader.js.map +1 -0
- package/dist/pdf-sidebar.cjs +2 -0
- package/dist/pdf-sidebar.cjs.map +1 -0
- package/dist/pdf-sidebar.d.ts +3 -0
- package/dist/pdf-sidebar.d.ts.map +1 -0
- package/dist/pdf-sidebar.js +5 -0
- package/dist/pdf-sidebar.js.map +1 -0
- package/dist/simple-pdf-reader.cjs +2 -0
- package/dist/simple-pdf-reader.cjs.map +1 -0
- package/dist/simple-pdf-reader.d.ts +3 -0
- package/dist/simple-pdf-reader.d.ts.map +1 -0
- package/dist/simple-pdf-reader.js +268 -0
- package/dist/simple-pdf-reader.js.map +1 -0
- package/dist/table-header.cjs +2 -0
- package/dist/table-header.cjs.map +1 -0
- package/dist/table-header.d.ts +3 -0
- package/dist/table-header.d.ts.map +1 -0
- package/dist/table-header.js +63 -0
- package/dist/table-header.js.map +1 -0
- package/dist/table-pagination.cjs +2 -0
- package/dist/table-pagination.cjs.map +1 -0
- package/dist/table-pagination.d.ts +3 -0
- package/dist/table-pagination.d.ts.map +1 -0
- package/dist/table-pagination.js +172 -0
- package/dist/table-pagination.js.map +1 -0
- package/dist/theme-switcher-content.cjs +2 -0
- package/dist/theme-switcher-content.cjs.map +1 -0
- package/dist/theme-switcher-content.d.ts +3 -0
- package/dist/theme-switcher-content.d.ts.map +1 -0
- package/dist/theme-switcher-content.js +103 -0
- package/dist/theme-switcher-content.js.map +1 -0
- package/dist/theme-switcher.cjs +2 -0
- package/dist/theme-switcher.cjs.map +1 -0
- package/dist/theme-switcher.d.ts +3 -0
- package/dist/theme-switcher.d.ts.map +1 -0
- package/dist/theme-switcher.js +140 -0
- package/dist/theme-switcher.js.map +1 -0
- package/dist/types/component-types.d.ts +1 -0
- package/dist/types/component-types.d.ts.map +1 -1
- package/dist/utils-B6yFEsav.js +9 -0
- package/dist/utils-B6yFEsav.js.map +1 -0
- package/dist/utils-IjLH3w2e.cjs +2 -0
- package/dist/utils-IjLH3w2e.cjs.map +1 -0
- package/dist/utils.cjs +2 -0
- package/dist/utils.cjs.map +1 -0
- package/dist/utils.d.ts +2 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +5 -0
- package/dist/utils.js.map +1 -0
- package/dist/video-reader.cjs +2 -0
- package/dist/video-reader.cjs.map +1 -0
- package/dist/video-reader.d.ts +3 -0
- package/dist/video-reader.d.ts.map +1 -0
- package/dist/video-reader.js +158 -0
- package/dist/video-reader.js.map +1 -0
- package/package.json +191 -3
- package/dist/index-DJdfLA8M.js +0 -2140
- package/dist/index-DJdfLA8M.js.map +0 -1
- package/dist/index-DUxYhmkV.js +0 -18821
- package/dist/index-DUxYhmkV.js.map +0 -1
- package/dist/index-miejqTjn.cjs +0 -13
- package/dist/index-miejqTjn.cjs.map +0 -1
- package/dist/index-tIca-Q_M.cjs +0 -23
- package/dist/index-tIca-Q_M.cjs.map +0 -1
- package/dist/index.c.js +0 -2
- package/dist/index.c.js.map +0 -1
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
import { j as e } from "./jsx-runtime-B4hRZ52C.js";
|
|
2
|
+
import { ZoomOut as de, ZoomIn as ue, RotateCcw as xe, RotateCw as fe, ExternalLink as pe } from "lucide-react";
|
|
3
|
+
import { useState as m, useCallback as F, useMemo as ge, useEffect as je } from "react";
|
|
4
|
+
import { c as I } from "./utils-B6yFEsav.js";
|
|
5
|
+
import { i as he, g as be } from "./media-utils-5UPuocc1.js";
|
|
6
|
+
const ve = [
|
|
7
|
+
"jpg",
|
|
8
|
+
"jpeg",
|
|
9
|
+
"png",
|
|
10
|
+
"gif",
|
|
11
|
+
"webp",
|
|
12
|
+
"svg",
|
|
13
|
+
"bmp",
|
|
14
|
+
"avif",
|
|
15
|
+
"ico"
|
|
16
|
+
], we = [
|
|
17
|
+
"image/jpeg",
|
|
18
|
+
"image/png",
|
|
19
|
+
"image/gif",
|
|
20
|
+
"image/webp",
|
|
21
|
+
"image/svg+xml",
|
|
22
|
+
"image/bmp",
|
|
23
|
+
"image/avif",
|
|
24
|
+
"image/x-icon",
|
|
25
|
+
"image/vnd.microsoft.icon"
|
|
26
|
+
], Ne = (s) => s ? s instanceof Error ? s : new Error(s) : null, Ee = (s, d, a) => Math.min(Math.max(s, d), a);
|
|
27
|
+
function Oe({
|
|
28
|
+
src: s,
|
|
29
|
+
alt: d = "",
|
|
30
|
+
fileName: a,
|
|
31
|
+
mimeType: u,
|
|
32
|
+
components: G,
|
|
33
|
+
loading: S = !1,
|
|
34
|
+
error: Z,
|
|
35
|
+
className: M,
|
|
36
|
+
containerClassName: $,
|
|
37
|
+
imageClassName: T,
|
|
38
|
+
toolbarClassName: X,
|
|
39
|
+
loadingText: Y = "正在加载图片...",
|
|
40
|
+
errorText: y = "图片加载失败",
|
|
41
|
+
unsupportedText: q = "暂不支持该图片格式",
|
|
42
|
+
showToolbar: H = !0,
|
|
43
|
+
showOpenInNewTab: J = !0,
|
|
44
|
+
objectFit: K = "contain",
|
|
45
|
+
initialScale: Q = 1,
|
|
46
|
+
minScale: x = 0.25,
|
|
47
|
+
maxScale: f = 4,
|
|
48
|
+
scaleStep: _ = 0.25,
|
|
49
|
+
scale: p,
|
|
50
|
+
onScaleChange: l,
|
|
51
|
+
rotation: g,
|
|
52
|
+
onRotationChange: c,
|
|
53
|
+
allowUnsupportedFormat: V = !1,
|
|
54
|
+
supportedExtensions: W = ve,
|
|
55
|
+
supportedMimeTypes: C = we,
|
|
56
|
+
onLoad: j,
|
|
57
|
+
onError: h,
|
|
58
|
+
style: ee,
|
|
59
|
+
...te
|
|
60
|
+
}) {
|
|
61
|
+
const { Card: k, CardContent: O, Button: P, Skeleton: b } = G || {}, [se, ne] = m(Q), [re, ie] = m(0), [ae, v] = m(!0), [oe, w] = m(null), i = p ?? se, N = g ?? re, r = Ne(Z) || oe, z = V || he({
|
|
62
|
+
src: s,
|
|
63
|
+
fileName: a,
|
|
64
|
+
mimeType: u,
|
|
65
|
+
supportedExtensions: W,
|
|
66
|
+
supportedMimeTypes: C
|
|
67
|
+
}), L = S || ae && !r, R = F(
|
|
68
|
+
(t) => {
|
|
69
|
+
const n = Ee(t, x, f);
|
|
70
|
+
p === void 0 && ne(n), l == null || l(n);
|
|
71
|
+
},
|
|
72
|
+
[p, f, x, l]
|
|
73
|
+
), U = F(
|
|
74
|
+
(t) => {
|
|
75
|
+
const n = (t % 360 + 360) % 360;
|
|
76
|
+
g === void 0 && ie(n), c == null || c(n);
|
|
77
|
+
},
|
|
78
|
+
[g, c]
|
|
79
|
+
), le = ge(() => {
|
|
80
|
+
const t = be(s, a);
|
|
81
|
+
return t ? t.toUpperCase() : u || "图片";
|
|
82
|
+
}, [a, u, s]);
|
|
83
|
+
je(() => {
|
|
84
|
+
v(!0), w(null);
|
|
85
|
+
}, [s]);
|
|
86
|
+
const o = (t, n, B, D) => {
|
|
87
|
+
const me = "inline-flex h-8 w-8 items-center justify-center rounded-md border border-input bg-background text-foreground shadow-sm transition-colors hover:bg-accent hover:text-accent-foreground disabled:pointer-events-none disabled:opacity-50";
|
|
88
|
+
return P ? /* @__PURE__ */ e.jsx(
|
|
89
|
+
P,
|
|
90
|
+
{
|
|
91
|
+
"aria-label": t,
|
|
92
|
+
className: "h-8 w-8",
|
|
93
|
+
disabled: D,
|
|
94
|
+
onClick: B,
|
|
95
|
+
size: "icon",
|
|
96
|
+
title: t,
|
|
97
|
+
type: "button",
|
|
98
|
+
variant: "outline",
|
|
99
|
+
children: n
|
|
100
|
+
}
|
|
101
|
+
) : /* @__PURE__ */ e.jsx(
|
|
102
|
+
"button",
|
|
103
|
+
{
|
|
104
|
+
"aria-label": t,
|
|
105
|
+
className: me,
|
|
106
|
+
disabled: D,
|
|
107
|
+
onClick: B,
|
|
108
|
+
title: t,
|
|
109
|
+
type: "button",
|
|
110
|
+
children: n
|
|
111
|
+
}
|
|
112
|
+
);
|
|
113
|
+
}, ce = () => /* @__PURE__ */ e.jsx("div", { className: "w-full space-y-3 p-4", role: "status", "aria-live": "polite", children: b ? /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
|
|
114
|
+
/* @__PURE__ */ e.jsx(b, { className: "h-4 w-32" }),
|
|
115
|
+
/* @__PURE__ */ e.jsx(b, { className: "h-80 w-full" })
|
|
116
|
+
] }) : /* @__PURE__ */ e.jsx("p", { className: "text-sm text-muted-foreground", children: Y }) }), A = (t) => /* @__PURE__ */ e.jsxs("div", { className: "p-4 text-center text-sm text-destructive", role: "alert", children: [
|
|
117
|
+
/* @__PURE__ */ e.jsx("p", { className: "font-medium", children: t || y }),
|
|
118
|
+
r != null && r.message ? /* @__PURE__ */ e.jsx("p", { className: "mt-1 opacity-80", children: r.message }) : null
|
|
119
|
+
] }), E = /* @__PURE__ */ e.jsxs(
|
|
120
|
+
"div",
|
|
121
|
+
{
|
|
122
|
+
className: I(
|
|
123
|
+
"flex h-full min-h-[360px] flex-col overflow-hidden rounded-md border bg-background",
|
|
124
|
+
$
|
|
125
|
+
),
|
|
126
|
+
children: [
|
|
127
|
+
H ? /* @__PURE__ */ e.jsxs(
|
|
128
|
+
"div",
|
|
129
|
+
{
|
|
130
|
+
className: I(
|
|
131
|
+
"flex flex-wrap items-center justify-between gap-2 border-b px-3 py-2",
|
|
132
|
+
X
|
|
133
|
+
),
|
|
134
|
+
children: [
|
|
135
|
+
/* @__PURE__ */ e.jsx("span", { className: "text-xs font-medium text-muted-foreground", children: le }),
|
|
136
|
+
/* @__PURE__ */ e.jsxs("div", { className: "flex items-center gap-1", children: [
|
|
137
|
+
o(
|
|
138
|
+
"缩小",
|
|
139
|
+
/* @__PURE__ */ e.jsx(de, { className: "h-4 w-4" }),
|
|
140
|
+
() => R(i - _),
|
|
141
|
+
i <= x
|
|
142
|
+
),
|
|
143
|
+
/* @__PURE__ */ e.jsxs("span", { className: "min-w-14 text-center text-xs text-muted-foreground", children: [
|
|
144
|
+
Math.round(i * 100),
|
|
145
|
+
"%"
|
|
146
|
+
] }),
|
|
147
|
+
o(
|
|
148
|
+
"放大",
|
|
149
|
+
/* @__PURE__ */ e.jsx(ue, { className: "h-4 w-4" }),
|
|
150
|
+
() => R(i + _),
|
|
151
|
+
i >= f
|
|
152
|
+
),
|
|
153
|
+
o(
|
|
154
|
+
"向左旋转",
|
|
155
|
+
/* @__PURE__ */ e.jsx(xe, { className: "h-4 w-4" }),
|
|
156
|
+
() => U(N - 90)
|
|
157
|
+
),
|
|
158
|
+
o(
|
|
159
|
+
"向右旋转",
|
|
160
|
+
/* @__PURE__ */ e.jsx(fe, { className: "h-4 w-4" }),
|
|
161
|
+
() => U(N + 90)
|
|
162
|
+
),
|
|
163
|
+
J ? o(
|
|
164
|
+
"新窗口打开",
|
|
165
|
+
/* @__PURE__ */ e.jsx(pe, { className: "h-4 w-4" }),
|
|
166
|
+
() => window.open(s, "_blank", "noreferrer")
|
|
167
|
+
) : null
|
|
168
|
+
] })
|
|
169
|
+
]
|
|
170
|
+
}
|
|
171
|
+
) : null,
|
|
172
|
+
/* @__PURE__ */ e.jsxs("div", { className: "relative flex min-h-0 flex-1 items-center justify-center overflow-auto bg-muted/20 p-4", children: [
|
|
173
|
+
z ? r ? A() : null : A(q),
|
|
174
|
+
z && !r ? /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
|
|
175
|
+
L ? ce() : null,
|
|
176
|
+
/* @__PURE__ */ e.jsx(
|
|
177
|
+
"img",
|
|
178
|
+
{
|
|
179
|
+
...te,
|
|
180
|
+
alt: d,
|
|
181
|
+
className: I(
|
|
182
|
+
"max-h-full max-w-full transition-transform",
|
|
183
|
+
L ? "invisible absolute" : "visible",
|
|
184
|
+
T
|
|
185
|
+
),
|
|
186
|
+
onError: () => {
|
|
187
|
+
const t = new Error(y);
|
|
188
|
+
v(!1), w(t), h == null || h(t);
|
|
189
|
+
},
|
|
190
|
+
onLoad: () => {
|
|
191
|
+
v(!1), w(null), j == null || j();
|
|
192
|
+
},
|
|
193
|
+
src: s,
|
|
194
|
+
style: {
|
|
195
|
+
objectFit: K,
|
|
196
|
+
transform: `scale(${i}) rotate(${N}deg)`,
|
|
197
|
+
transformOrigin: "center center",
|
|
198
|
+
...ee
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
)
|
|
202
|
+
] }) : null
|
|
203
|
+
] })
|
|
204
|
+
]
|
|
205
|
+
}
|
|
206
|
+
);
|
|
207
|
+
return k ? /* @__PURE__ */ e.jsx(k, { className: M, children: O ? /* @__PURE__ */ e.jsx(O, { children: E }) : E }) : /* @__PURE__ */ e.jsx("div", { className: M, children: E });
|
|
208
|
+
}
|
|
209
|
+
export {
|
|
210
|
+
Oe as ImageReader,
|
|
211
|
+
ve as SUPPORTED_IMAGE_EXTENSIONS,
|
|
212
|
+
we as SUPPORTED_IMAGE_MIME_TYPES
|
|
213
|
+
};
|
|
214
|
+
//# sourceMappingURL=image-reader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"image-reader.js","sources":["../src/components/ImageReader.tsx"],"sourcesContent":["import {\n ExternalLink as ExternalLinkIcon,\n RotateCcw as RotateCcwIcon,\n RotateCw as RotateCwIcon,\n ZoomIn as ZoomInIcon,\n ZoomOut as ZoomOutIcon,\n} from 'lucide-react';\nimport { useCallback, useEffect, useMemo, useState } from 'react';\nimport type { HTMLAttributes, ImgHTMLAttributes, ReactNode } from 'react';\n\nimport { cn } from '../lib/utils';\nimport type {\n ButtonComponent,\n CardComponent,\n SkeletonComponent,\n UIComponent,\n} from '../types/component-types';\n\nimport { getMediaExtension, isSupportedMediaSource } from './media-utils';\n\nexport const SUPPORTED_IMAGE_EXTENSIONS = [\n 'jpg',\n 'jpeg',\n 'png',\n 'gif',\n 'webp',\n 'svg',\n 'bmp',\n 'avif',\n 'ico',\n] as const;\n\nexport const SUPPORTED_IMAGE_MIME_TYPES = [\n 'image/jpeg',\n 'image/png',\n 'image/gif',\n 'image/webp',\n 'image/svg+xml',\n 'image/bmp',\n 'image/avif',\n 'image/x-icon',\n 'image/vnd.microsoft.icon',\n] as const;\n\nexport interface ImageReaderUIComponents {\n Card?: CardComponent;\n CardContent?: UIComponent<HTMLAttributes<HTMLDivElement>>;\n Button?: ButtonComponent;\n Skeleton?: SkeletonComponent;\n}\n\nexport interface ImageReaderProps\n extends Omit<\n ImgHTMLAttributes<HTMLImageElement>,\n | 'alt'\n | 'children'\n | 'className'\n | 'loading'\n | 'onError'\n | 'onLoad'\n | 'src'\n > {\n src: string;\n alt?: string;\n fileName?: string;\n mimeType?: string;\n components?: ImageReaderUIComponents;\n loading?: boolean;\n error?: Error | string | null;\n className?: string;\n containerClassName?: string;\n imageClassName?: string;\n toolbarClassName?: string;\n loadingText?: string;\n errorText?: string;\n unsupportedText?: string;\n showToolbar?: boolean;\n showOpenInNewTab?: boolean;\n objectFit?: 'contain' | 'cover' | 'fill' | 'none' | 'scale-down';\n initialScale?: number;\n minScale?: number;\n maxScale?: number;\n scaleStep?: number;\n scale?: number;\n onScaleChange?: (scale: number) => void;\n rotation?: number;\n onRotationChange?: (rotation: number) => void;\n allowUnsupportedFormat?: boolean;\n supportedExtensions?: readonly string[];\n supportedMimeTypes?: readonly string[];\n onLoad?: () => void;\n onError?: (error: Error) => void;\n}\n\nconst normalizeError = (error: Error | string | null | undefined) => {\n if (!error) return null;\n return error instanceof Error ? error : new Error(error);\n};\n\nconst clamp = (value: number, min: number, max: number) =>\n Math.min(Math.max(value, min), max);\n\nexport function ImageReader({\n src,\n alt = '',\n fileName,\n mimeType,\n components,\n loading = false,\n error,\n className,\n containerClassName,\n imageClassName,\n toolbarClassName,\n loadingText = '正在加载图片...',\n errorText = '图片加载失败',\n unsupportedText = '暂不支持该图片格式',\n showToolbar = true,\n showOpenInNewTab = true,\n objectFit = 'contain',\n initialScale = 1,\n minScale = 0.25,\n maxScale = 4,\n scaleStep = 0.25,\n scale: controlledScale,\n onScaleChange,\n rotation: controlledRotation,\n onRotationChange,\n allowUnsupportedFormat = false,\n supportedExtensions = SUPPORTED_IMAGE_EXTENSIONS,\n supportedMimeTypes = SUPPORTED_IMAGE_MIME_TYPES,\n onLoad,\n onError,\n style,\n ...imageProps\n}: ImageReaderProps) {\n const { Card, CardContent, Button, Skeleton } = components || {};\n const [internalScale, setInternalScale] = useState(initialScale);\n const [internalRotation, setInternalRotation] = useState(0);\n const [isImageLoading, setIsImageLoading] = useState(true);\n const [imageError, setImageError] = useState<Error | null>(null);\n\n const scale = controlledScale ?? internalScale;\n const rotation = controlledRotation ?? internalRotation;\n const displayedError = normalizeError(error) || imageError;\n const isSupported =\n allowUnsupportedFormat ||\n isSupportedMediaSource({\n src,\n fileName,\n mimeType,\n supportedExtensions,\n supportedMimeTypes,\n });\n const isLoading = loading || (isImageLoading && !displayedError);\n\n const setNextScale = useCallback(\n (nextScale: number) => {\n const clampedScale = clamp(nextScale, minScale, maxScale);\n if (controlledScale === undefined) {\n setInternalScale(clampedScale);\n }\n onScaleChange?.(clampedScale);\n },\n [controlledScale, maxScale, minScale, onScaleChange]\n );\n\n const setNextRotation = useCallback(\n (nextRotation: number) => {\n const normalizedRotation = ((nextRotation % 360) + 360) % 360;\n if (controlledRotation === undefined) {\n setInternalRotation(normalizedRotation);\n }\n onRotationChange?.(normalizedRotation);\n },\n [controlledRotation, onRotationChange]\n );\n\n const formatLabel = useMemo(() => {\n const extension = getMediaExtension(src, fileName);\n return extension ? extension.toUpperCase() : mimeType || '图片';\n }, [fileName, mimeType, src]);\n\n useEffect(() => {\n setIsImageLoading(true);\n setImageError(null);\n }, [src]);\n\n const renderButton = (\n label: string,\n icon: ReactNode,\n onClick: () => void,\n disabled?: boolean\n ) => {\n const buttonClassName =\n 'inline-flex h-8 w-8 items-center justify-center rounded-md border border-input bg-background text-foreground shadow-sm transition-colors hover:bg-accent hover:text-accent-foreground disabled:pointer-events-none disabled:opacity-50';\n\n if (Button) {\n return (\n <Button\n aria-label={label}\n className=\"h-8 w-8\"\n disabled={disabled}\n onClick={onClick}\n size=\"icon\"\n title={label}\n type=\"button\"\n variant=\"outline\"\n >\n {icon}\n </Button>\n );\n }\n\n return (\n <button\n aria-label={label}\n className={buttonClassName}\n disabled={disabled}\n onClick={onClick}\n title={label}\n type=\"button\"\n >\n {icon}\n </button>\n );\n };\n\n const renderLoading = () => (\n <div className=\"w-full space-y-3 p-4\" role=\"status\" aria-live=\"polite\">\n {Skeleton ? (\n <>\n <Skeleton className=\"h-4 w-32\" />\n <Skeleton className=\"h-80 w-full\" />\n </>\n ) : (\n <p className=\"text-sm text-muted-foreground\">{loadingText}</p>\n )}\n </div>\n );\n\n const renderError = (message?: string) => (\n <div className=\"p-4 text-center text-sm text-destructive\" role=\"alert\">\n <p className=\"font-medium\">{message || errorText}</p>\n {displayedError?.message ? (\n <p className=\"mt-1 opacity-80\">{displayedError.message}</p>\n ) : null}\n </div>\n );\n\n const body = (\n <div\n className={cn(\n 'flex h-full min-h-[360px] flex-col overflow-hidden rounded-md border bg-background',\n containerClassName\n )}\n >\n {showToolbar ? (\n <div\n className={cn(\n 'flex flex-wrap items-center justify-between gap-2 border-b px-3 py-2',\n toolbarClassName\n )}\n >\n <span className=\"text-xs font-medium text-muted-foreground\">\n {formatLabel}\n </span>\n <div className=\"flex items-center gap-1\">\n {renderButton(\n '缩小',\n <ZoomOutIcon className=\"h-4 w-4\" />,\n () => setNextScale(scale - scaleStep),\n scale <= minScale\n )}\n <span className=\"min-w-14 text-center text-xs text-muted-foreground\">\n {Math.round(scale * 100)}%\n </span>\n {renderButton(\n '放大',\n <ZoomInIcon className=\"h-4 w-4\" />,\n () => setNextScale(scale + scaleStep),\n scale >= maxScale\n )}\n {renderButton(\n '向左旋转',\n <RotateCcwIcon className=\"h-4 w-4\" />,\n () => setNextRotation(rotation - 90)\n )}\n {renderButton(\n '向右旋转',\n <RotateCwIcon className=\"h-4 w-4\" />,\n () => setNextRotation(rotation + 90)\n )}\n {showOpenInNewTab\n ? renderButton(\n '新窗口打开',\n <ExternalLinkIcon className=\"h-4 w-4\" />,\n () => window.open(src, '_blank', 'noreferrer')\n )\n : null}\n </div>\n </div>\n ) : null}\n <div className=\"relative flex min-h-0 flex-1 items-center justify-center overflow-auto bg-muted/20 p-4\">\n {!isSupported\n ? renderError(unsupportedText)\n : displayedError\n ? renderError()\n : null}\n {isSupported && !displayedError ? (\n <>\n {isLoading ? renderLoading() : null}\n <img\n {...imageProps}\n alt={alt}\n className={cn(\n 'max-h-full max-w-full transition-transform',\n isLoading ? 'invisible absolute' : 'visible',\n imageClassName\n )}\n onError={() => {\n const nextError = new Error(errorText);\n setIsImageLoading(false);\n setImageError(nextError);\n onError?.(nextError);\n }}\n onLoad={() => {\n setIsImageLoading(false);\n setImageError(null);\n onLoad?.();\n }}\n src={src}\n style={{\n objectFit,\n transform: `scale(${scale}) rotate(${rotation}deg)`,\n transformOrigin: 'center center',\n ...style,\n }}\n />\n </>\n ) : null}\n </div>\n </div>\n );\n\n if (Card) {\n return (\n <Card className={className}>\n {CardContent ? <CardContent>{body}</CardContent> : body}\n </Card>\n );\n }\n\n return <div className={className}>{body}</div>;\n}\n"],"names":["SUPPORTED_IMAGE_EXTENSIONS","SUPPORTED_IMAGE_MIME_TYPES","normalizeError","error","clamp","value","min","max","ImageReader","src","alt","fileName","mimeType","components","loading","className","containerClassName","imageClassName","toolbarClassName","loadingText","errorText","unsupportedText","showToolbar","showOpenInNewTab","objectFit","initialScale","minScale","maxScale","scaleStep","controlledScale","onScaleChange","controlledRotation","onRotationChange","allowUnsupportedFormat","supportedExtensions","supportedMimeTypes","onLoad","onError","style","imageProps","Card","CardContent","Button","Skeleton","internalScale","setInternalScale","useState","internalRotation","setInternalRotation","isImageLoading","setIsImageLoading","imageError","setImageError","scale","rotation","displayedError","isSupported","isSupportedMediaSource","isLoading","setNextScale","useCallback","nextScale","clampedScale","setNextRotation","nextRotation","normalizedRotation","formatLabel","useMemo","extension","getMediaExtension","useEffect","renderButton","label","icon","onClick","disabled","buttonClassName","jsx","renderLoading","jsxs","Fragment","renderError","message","body","cn","ZoomOutIcon","ZoomInIcon","RotateCcwIcon","RotateCwIcon","ExternalLinkIcon","nextError"],"mappings":"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"}
|
package/dist/index.cjs
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./utils-IjLH3w2e.cjs"),e=require("./AuthPanel-C_2JBE7t.cjs");exports.cn=t.cn;exports.AuthLoginPanel=e.AuthLoginPanel;exports.AuthPageShell=e.AuthPageShell;exports.AuthPanel=e.AuthPanel;exports.AuthRegisterPanel=e.AuthRegisterPanel;exports.AuthVisualCarousel=e.AuthVisualCarousel;
|
|
2
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,23 +1,13 @@
|
|
|
1
1
|
export { cn } from './lib/utils';
|
|
2
|
-
export {
|
|
3
|
-
export {
|
|
4
|
-
export {
|
|
5
|
-
export {
|
|
6
|
-
export {
|
|
7
|
-
export {
|
|
8
|
-
export {
|
|
9
|
-
export {
|
|
10
|
-
export {
|
|
11
|
-
export {
|
|
12
|
-
export type { Column, DataTableProps, UIComponents, } from './components/DataTable';
|
|
13
|
-
export type { DeleteConfirmDialogProps, DialogUIComponents, } from './components/DeleteConfirmDialog';
|
|
14
|
-
export type { TableHeaderProps, HeaderUIComponents, } from './components/TableHeader';
|
|
15
|
-
export type { TablePaginationProps, PaginationUIComponents, } from './components/TablePagination';
|
|
16
|
-
export type { ThemeSwitcherProps, ThemeSwitcherUIComponents, ThemeOption, } from './components/ThemeSwitcher';
|
|
17
|
-
export type { ThemeSwitcherContentProps, ThemeSwitcherContentUIComponents, } from './components/ThemeSwitcherContent';
|
|
18
|
-
export type { SimplePDFReaderProps, SimplePDFReaderUIComponents, } from './components/SimplePDFReader';
|
|
19
|
-
export type { PDFReaderProps, PDFReaderUIComponents, } from './components/PDFReader';
|
|
20
|
-
export type { PDFSidebarProps, PDFDocumentProxy, PDFPageProxy, PDFViewport, PDFOutline, } from './components/PDFSidebar';
|
|
21
|
-
export type { FileUploadProps, FileUploadUIComponents, FileUploadItem, FileUploadStatus, FileUploadHelpers, } from './components/FileUpload';
|
|
2
|
+
export { AuthLoginPanel } from './components/AuthLoginPanel';
|
|
3
|
+
export type { AuthLoginMethod, AuthLoginPanelProps, AuthPasswordLoginPayload, AuthSmsCodeResult, AuthSmsLoginPayload, AuthSocialProvider, AuthUIComponents, AuthValidationResult, } from './components/AuthLoginPanel';
|
|
4
|
+
export { AuthRegisterPanel } from './components/AuthRegisterPanel';
|
|
5
|
+
export type { AuthRegisterPanelProps, AuthRegisterPayload, } from './components/AuthRegisterPanel';
|
|
6
|
+
export { AuthPageShell } from './components/AuthPageShell';
|
|
7
|
+
export type { AuthPageShellProps } from './components/AuthPageShell';
|
|
8
|
+
export { AuthVisualCarousel } from './components/AuthVisualCarousel';
|
|
9
|
+
export type { AuthVisualCarouselItem, AuthVisualCarouselProps, } from './components/AuthVisualCarousel';
|
|
10
|
+
export { AuthPanel } from './components/AuthPanel';
|
|
11
|
+
export type { AuthPanelMode, AuthPanelProps } from './components/AuthPanel';
|
|
22
12
|
export type { UIComponent, ButtonComponent, InputComponent, CardComponent, TableComponent, TableRowComponent, TableCellComponent, SelectComponent, SelectTriggerComponent, SelectContentComponent, SelectItemComponent, SelectValueComponent, DialogComponent, DialogContentComponent, DialogHeaderComponent, DialogFooterComponent, DialogTitleComponent, DialogDescriptionComponent, LabelComponent, DropdownMenuComponent, DropdownMenuTriggerComponent, DropdownMenuContentComponent, DropdownMenuRadioGroupComponent, DropdownMenuRadioItemComponent, SkeletonComponent, TabsComponent, TabsListComponent, TabsTriggerComponent, TabsContentComponent, ScrollAreaComponent, } from './types/component-types';
|
|
23
13
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAGjC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAGjC,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,YAAY,EACV,eAAe,EACf,mBAAmB,EACnB,wBAAwB,EACxB,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,YAAY,EACV,sBAAsB,EACtB,mBAAmB,GACpB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,YAAY,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,YAAY,EACV,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAG5E,YAAY,EACV,WAAW,EACX,eAAe,EACf,cAAc,EACd,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACpB,0BAA0B,EAC1B,cAAc,EACd,qBAAqB,EACrB,4BAA4B,EAC5B,4BAA4B,EAC5B,+BAA+B,EAC/B,8BAA8B,EAC9B,iBAAiB,EACjB,aAAa,EACb,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,yBAAyB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,15 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { c as s } from "./utils-B6yFEsav.js";
|
|
2
|
+
import { A as l, a as u, b as h, c as o, d as r } from "./AuthPanel-D2HFX8eN.js";
|
|
2
3
|
export {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
D as TableHeader,
|
|
10
|
-
d as TablePagination,
|
|
11
|
-
n as ThemeSwitcher,
|
|
12
|
-
T as ThemeSwitcherContent,
|
|
13
|
-
b as cn
|
|
4
|
+
l as AuthLoginPanel,
|
|
5
|
+
u as AuthPageShell,
|
|
6
|
+
h as AuthPanel,
|
|
7
|
+
o as AuthRegisterPanel,
|
|
8
|
+
r as AuthVisualCarousel,
|
|
9
|
+
s as cn
|
|
14
10
|
};
|
|
15
11
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
|
|
@@ -0,0 +1,283 @@
|
|
|
1
|
+
import K from "react";
|
|
2
|
+
var v = { exports: {} }, m = {};
|
|
3
|
+
/**
|
|
4
|
+
* @license React
|
|
5
|
+
* react-jsx-runtime.production.js
|
|
6
|
+
*
|
|
7
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
8
|
+
*
|
|
9
|
+
* This source code is licensed under the MIT license found in the
|
|
10
|
+
* LICENSE file in the root directory of this source tree.
|
|
11
|
+
*/
|
|
12
|
+
var $;
|
|
13
|
+
function ee() {
|
|
14
|
+
if ($) return m;
|
|
15
|
+
$ = 1;
|
|
16
|
+
var u = Symbol.for("react.transitional.element"), E = Symbol.for("react.fragment");
|
|
17
|
+
function c(i, o, s) {
|
|
18
|
+
var f = null;
|
|
19
|
+
if (s !== void 0 && (f = "" + s), o.key !== void 0 && (f = "" + o.key), "key" in o) {
|
|
20
|
+
s = {};
|
|
21
|
+
for (var d in o)
|
|
22
|
+
d !== "key" && (s[d] = o[d]);
|
|
23
|
+
} else s = o;
|
|
24
|
+
return o = s.ref, {
|
|
25
|
+
$$typeof: u,
|
|
26
|
+
type: i,
|
|
27
|
+
key: f,
|
|
28
|
+
ref: o !== void 0 ? o : null,
|
|
29
|
+
props: s
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
return m.Fragment = E, m.jsx = c, m.jsxs = c, m;
|
|
33
|
+
}
|
|
34
|
+
var _ = {};
|
|
35
|
+
/**
|
|
36
|
+
* @license React
|
|
37
|
+
* react-jsx-runtime.development.js
|
|
38
|
+
*
|
|
39
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
40
|
+
*
|
|
41
|
+
* This source code is licensed under the MIT license found in the
|
|
42
|
+
* LICENSE file in the root directory of this source tree.
|
|
43
|
+
*/
|
|
44
|
+
var I;
|
|
45
|
+
function re() {
|
|
46
|
+
return I || (I = 1, process.env.NODE_ENV !== "production" && (function() {
|
|
47
|
+
function u(e) {
|
|
48
|
+
if (e == null) return null;
|
|
49
|
+
if (typeof e == "function")
|
|
50
|
+
return e.$$typeof === H ? null : e.displayName || e.name || null;
|
|
51
|
+
if (typeof e == "string") return e;
|
|
52
|
+
switch (e) {
|
|
53
|
+
case p:
|
|
54
|
+
return "Fragment";
|
|
55
|
+
case U:
|
|
56
|
+
return "Profiler";
|
|
57
|
+
case W:
|
|
58
|
+
return "StrictMode";
|
|
59
|
+
case z:
|
|
60
|
+
return "Suspense";
|
|
61
|
+
case G:
|
|
62
|
+
return "SuspenseList";
|
|
63
|
+
case B:
|
|
64
|
+
return "Activity";
|
|
65
|
+
}
|
|
66
|
+
if (typeof e == "object")
|
|
67
|
+
switch (typeof e.tag == "number" && console.error(
|
|
68
|
+
"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
|
|
69
|
+
), e.$$typeof) {
|
|
70
|
+
case M:
|
|
71
|
+
return "Portal";
|
|
72
|
+
case J:
|
|
73
|
+
return e.displayName || "Context";
|
|
74
|
+
case q:
|
|
75
|
+
return (e._context.displayName || "Context") + ".Consumer";
|
|
76
|
+
case V:
|
|
77
|
+
var r = e.render;
|
|
78
|
+
return e = e.displayName, e || (e = r.displayName || r.name || "", e = e !== "" ? "ForwardRef(" + e + ")" : "ForwardRef"), e;
|
|
79
|
+
case X:
|
|
80
|
+
return r = e.displayName || null, r !== null ? r : u(e.type) || "Memo";
|
|
81
|
+
case T:
|
|
82
|
+
r = e._payload, e = e._init;
|
|
83
|
+
try {
|
|
84
|
+
return u(e(r));
|
|
85
|
+
} catch {
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
return null;
|
|
89
|
+
}
|
|
90
|
+
function E(e) {
|
|
91
|
+
return "" + e;
|
|
92
|
+
}
|
|
93
|
+
function c(e) {
|
|
94
|
+
try {
|
|
95
|
+
E(e);
|
|
96
|
+
var r = !1;
|
|
97
|
+
} catch {
|
|
98
|
+
r = !0;
|
|
99
|
+
}
|
|
100
|
+
if (r) {
|
|
101
|
+
r = console;
|
|
102
|
+
var t = r.error, n = typeof Symbol == "function" && Symbol.toStringTag && e[Symbol.toStringTag] || e.constructor.name || "Object";
|
|
103
|
+
return t.call(
|
|
104
|
+
r,
|
|
105
|
+
"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",
|
|
106
|
+
n
|
|
107
|
+
), E(e);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
function i(e) {
|
|
111
|
+
if (e === p) return "<>";
|
|
112
|
+
if (typeof e == "object" && e !== null && e.$$typeof === T)
|
|
113
|
+
return "<...>";
|
|
114
|
+
try {
|
|
115
|
+
var r = u(e);
|
|
116
|
+
return r ? "<" + r + ">" : "<...>";
|
|
117
|
+
} catch {
|
|
118
|
+
return "<...>";
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
function o() {
|
|
122
|
+
var e = k.A;
|
|
123
|
+
return e === null ? null : e.getOwner();
|
|
124
|
+
}
|
|
125
|
+
function s() {
|
|
126
|
+
return Error("react-stack-top-frame");
|
|
127
|
+
}
|
|
128
|
+
function f(e) {
|
|
129
|
+
if (x.call(e, "key")) {
|
|
130
|
+
var r = Object.getOwnPropertyDescriptor(e, "key").get;
|
|
131
|
+
if (r && r.isReactWarning) return !1;
|
|
132
|
+
}
|
|
133
|
+
return e.key !== void 0;
|
|
134
|
+
}
|
|
135
|
+
function d(e, r) {
|
|
136
|
+
function t() {
|
|
137
|
+
g || (g = !0, console.error(
|
|
138
|
+
"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",
|
|
139
|
+
r
|
|
140
|
+
));
|
|
141
|
+
}
|
|
142
|
+
t.isReactWarning = !0, Object.defineProperty(e, "key", {
|
|
143
|
+
get: t,
|
|
144
|
+
configurable: !0
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
function D() {
|
|
148
|
+
var e = u(this.type);
|
|
149
|
+
return h[e] || (h[e] = !0, console.error(
|
|
150
|
+
"Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release."
|
|
151
|
+
)), e = this.props.ref, e !== void 0 ? e : null;
|
|
152
|
+
}
|
|
153
|
+
function L(e, r, t, n, b, A) {
|
|
154
|
+
var a = t.ref;
|
|
155
|
+
return e = {
|
|
156
|
+
$$typeof: j,
|
|
157
|
+
type: e,
|
|
158
|
+
key: r,
|
|
159
|
+
props: t,
|
|
160
|
+
_owner: n
|
|
161
|
+
}, (a !== void 0 ? a : null) !== null ? Object.defineProperty(e, "ref", {
|
|
162
|
+
enumerable: !1,
|
|
163
|
+
get: D
|
|
164
|
+
}) : Object.defineProperty(e, "ref", { enumerable: !1, value: null }), e._store = {}, Object.defineProperty(e._store, "validated", {
|
|
165
|
+
configurable: !1,
|
|
166
|
+
enumerable: !1,
|
|
167
|
+
writable: !0,
|
|
168
|
+
value: 0
|
|
169
|
+
}), Object.defineProperty(e, "_debugInfo", {
|
|
170
|
+
configurable: !1,
|
|
171
|
+
enumerable: !1,
|
|
172
|
+
writable: !0,
|
|
173
|
+
value: null
|
|
174
|
+
}), Object.defineProperty(e, "_debugStack", {
|
|
175
|
+
configurable: !1,
|
|
176
|
+
enumerable: !1,
|
|
177
|
+
writable: !0,
|
|
178
|
+
value: b
|
|
179
|
+
}), Object.defineProperty(e, "_debugTask", {
|
|
180
|
+
configurable: !1,
|
|
181
|
+
enumerable: !1,
|
|
182
|
+
writable: !0,
|
|
183
|
+
value: A
|
|
184
|
+
}), Object.freeze && (Object.freeze(e.props), Object.freeze(e)), e;
|
|
185
|
+
}
|
|
186
|
+
function P(e, r, t, n, b, A) {
|
|
187
|
+
var a = r.children;
|
|
188
|
+
if (a !== void 0)
|
|
189
|
+
if (n)
|
|
190
|
+
if (Z(a)) {
|
|
191
|
+
for (n = 0; n < a.length; n++)
|
|
192
|
+
w(a[n]);
|
|
193
|
+
Object.freeze && Object.freeze(a);
|
|
194
|
+
} else
|
|
195
|
+
console.error(
|
|
196
|
+
"React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead."
|
|
197
|
+
);
|
|
198
|
+
else w(a);
|
|
199
|
+
if (x.call(r, "key")) {
|
|
200
|
+
a = u(e);
|
|
201
|
+
var l = Object.keys(r).filter(function(Q) {
|
|
202
|
+
return Q !== "key";
|
|
203
|
+
});
|
|
204
|
+
n = 0 < l.length ? "{key: someKey, " + l.join(": ..., ") + ": ...}" : "{key: someKey}", Y[a + n] || (l = 0 < l.length ? "{" + l.join(": ..., ") + ": ...}" : "{}", console.error(
|
|
205
|
+
`A props object containing a "key" prop is being spread into JSX:
|
|
206
|
+
let props = %s;
|
|
207
|
+
<%s {...props} />
|
|
208
|
+
React keys must be passed directly to JSX without using spread:
|
|
209
|
+
let props = %s;
|
|
210
|
+
<%s key={someKey} {...props} />`,
|
|
211
|
+
n,
|
|
212
|
+
a,
|
|
213
|
+
l,
|
|
214
|
+
a
|
|
215
|
+
), Y[a + n] = !0);
|
|
216
|
+
}
|
|
217
|
+
if (a = null, t !== void 0 && (c(t), a = "" + t), f(r) && (c(r.key), a = "" + r.key), "key" in r) {
|
|
218
|
+
t = {};
|
|
219
|
+
for (var S in r)
|
|
220
|
+
S !== "key" && (t[S] = r[S]);
|
|
221
|
+
} else t = r;
|
|
222
|
+
return a && d(
|
|
223
|
+
t,
|
|
224
|
+
typeof e == "function" ? e.displayName || e.name || "Unknown" : e
|
|
225
|
+
), L(
|
|
226
|
+
e,
|
|
227
|
+
a,
|
|
228
|
+
t,
|
|
229
|
+
o(),
|
|
230
|
+
b,
|
|
231
|
+
A
|
|
232
|
+
);
|
|
233
|
+
}
|
|
234
|
+
function w(e) {
|
|
235
|
+
y(e) ? e._store && (e._store.validated = 1) : typeof e == "object" && e !== null && e.$$typeof === T && (e._payload.status === "fulfilled" ? y(e._payload.value) && e._payload.value._store && (e._payload.value._store.validated = 1) : e._store && (e._store.validated = 1));
|
|
236
|
+
}
|
|
237
|
+
function y(e) {
|
|
238
|
+
return typeof e == "object" && e !== null && e.$$typeof === j;
|
|
239
|
+
}
|
|
240
|
+
var R = K, j = Symbol.for("react.transitional.element"), M = Symbol.for("react.portal"), p = Symbol.for("react.fragment"), W = Symbol.for("react.strict_mode"), U = Symbol.for("react.profiler"), q = Symbol.for("react.consumer"), J = Symbol.for("react.context"), V = Symbol.for("react.forward_ref"), z = Symbol.for("react.suspense"), G = Symbol.for("react.suspense_list"), X = Symbol.for("react.memo"), T = Symbol.for("react.lazy"), B = Symbol.for("react.activity"), H = Symbol.for("react.client.reference"), k = R.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, x = Object.prototype.hasOwnProperty, Z = Array.isArray, O = console.createTask ? console.createTask : function() {
|
|
241
|
+
return null;
|
|
242
|
+
};
|
|
243
|
+
R = {
|
|
244
|
+
react_stack_bottom_frame: function(e) {
|
|
245
|
+
return e();
|
|
246
|
+
}
|
|
247
|
+
};
|
|
248
|
+
var g, h = {}, N = R.react_stack_bottom_frame.bind(
|
|
249
|
+
R,
|
|
250
|
+
s
|
|
251
|
+
)(), C = O(i(s)), Y = {};
|
|
252
|
+
_.Fragment = p, _.jsx = function(e, r, t) {
|
|
253
|
+
var n = 1e4 > k.recentlyCreatedOwnerStacks++;
|
|
254
|
+
return P(
|
|
255
|
+
e,
|
|
256
|
+
r,
|
|
257
|
+
t,
|
|
258
|
+
!1,
|
|
259
|
+
n ? Error("react-stack-top-frame") : N,
|
|
260
|
+
n ? O(i(e)) : C
|
|
261
|
+
);
|
|
262
|
+
}, _.jsxs = function(e, r, t) {
|
|
263
|
+
var n = 1e4 > k.recentlyCreatedOwnerStacks++;
|
|
264
|
+
return P(
|
|
265
|
+
e,
|
|
266
|
+
r,
|
|
267
|
+
t,
|
|
268
|
+
!0,
|
|
269
|
+
n ? Error("react-stack-top-frame") : N,
|
|
270
|
+
n ? O(i(e)) : C
|
|
271
|
+
);
|
|
272
|
+
};
|
|
273
|
+
})()), _;
|
|
274
|
+
}
|
|
275
|
+
var F;
|
|
276
|
+
function te() {
|
|
277
|
+
return F || (F = 1, process.env.NODE_ENV === "production" ? v.exports = ee() : v.exports = re()), v.exports;
|
|
278
|
+
}
|
|
279
|
+
var ae = te();
|
|
280
|
+
export {
|
|
281
|
+
ae as j
|
|
282
|
+
};
|
|
283
|
+
//# sourceMappingURL=jsx-runtime-B4hRZ52C.js.map
|