eddyter 1.3.80 → 1.3.82
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/{ImageResizer-o0eMm1Mg.js → ImageResizer-Bt7kgv0a.js} +1 -1
- package/dist/api/ai/aiAgentService.d.ts +2 -0
- package/dist/assets/style.css +1 -1
- package/dist/components/ConfigurableEditorWithAuth.d.ts +2 -0
- package/dist/components/FileView/index.d.ts +2 -0
- package/dist/context/EditorThemeContext.d.ts +8 -0
- package/dist/context/HtmlViewContext.d.ts +2 -0
- package/dist/context/VoiceRecordingContext.d.ts +30 -0
- package/dist/editor/components/FloatingToolbarManager.d.ts +8 -0
- package/dist/editor/components/FloatingToolbarPortal.d.ts +6 -0
- package/dist/editor/components/ToolbarMount.d.ts +9 -0
- package/dist/editor/hooks/useFloatingToolbar.d.ts +7 -0
- package/dist/editorConfig.d.ts +1 -0
- package/dist/{generateDocxThumbnail-CuC4oE4q.js → generateDocxThumbnail-BMy6Y08H.js} +1 -1
- package/dist/{generatePdfThumbnail-Be9_gTd2.js → generatePdfThumbnail-Ck8MvwkP.js} +1 -1
- package/dist/{generateXlsxThumbnail-BHmQkbG6.js → generateXlsxThumbnail-By40CwXr.js} +1 -1
- package/dist/hooks/useVoiceRecording.d.ts +15 -0
- package/dist/{html2pdf.bundle.min-__2qz-Dv.js → html2pdf.bundle.min-DDJswFIT.js} +1 -1
- package/dist/{index-BjjpBGeH.js → index-BAeOecnm.js} +589 -553
- package/dist/{index-0dB2NNlO.js → index-CCwIE-wd.js} +24 -24
- package/dist/index-Jbres5pQ.js +157 -0
- package/dist/index-baftIlXa.js +87345 -0
- package/dist/index.js +1 -1
- package/dist/nodes/FileNode.d.ts +8 -2
- package/dist/pages/ConfigurableEditor/ConfigurableEditor.d.ts +1 -0
- package/dist/plugins/FloatingFileMenuPlugin.d.ts +3 -0
- package/dist/plugins/VoiceTranscriptPlugin.d.ts +2 -16
- package/dist/plugins/WordCountPlugin.d.ts +4 -1
- package/dist/types.d.ts +2 -0
- package/dist/ui/Icons.d.ts +2 -1
- package/dist/utils/fontLoader.d.ts +1 -1
- package/dist/utils/htmlFormat.d.ts +5 -3
- package/package.json +4 -1
- package/dist/index-BTnX5edL.js +0 -131
- package/dist/index-BiGNE0nG.js +0 -40927
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { I as it } from "./ImageResizer-
|
|
1
|
+
import { jsxs as N, Fragment as rt, jsx as i } from "react/jsx-runtime";
|
|
2
|
+
import { I as it } from "./ImageResizer-Bt7kgv0a.js";
|
|
3
3
|
import { CodeNode as ot } from "@lexical/code";
|
|
4
4
|
import { LinkNode as nt } from "@lexical/link";
|
|
5
5
|
import { AutoFocusPlugin as ct } from "@lexical/react/LexicalAutoFocusPlugin";
|
|
@@ -13,9 +13,9 @@ import { RichTextPlugin as gt } from "@lexical/react/LexicalRichTextPlugin";
|
|
|
13
13
|
import { useLexicalEditable as mt } from "@lexical/react/useLexicalEditable";
|
|
14
14
|
import { useLexicalNodeSelection as ht } from "@lexical/react/useLexicalNodeSelection";
|
|
15
15
|
import { mergeRegister as pt } from "@lexical/utils";
|
|
16
|
-
import { $getSelection as L, $isNodeSelection as h, $setSelection as O, SELECTION_CHANGE_COMMAND as bt, COMMAND_PRIORITY_LOW as f, CLICK_COMMAND as Ct, DRAGSTART_COMMAND as
|
|
17
|
-
import { useRef as P, useState as w, useCallback as
|
|
18
|
-
import {
|
|
16
|
+
import { $getSelection as L, $isNodeSelection as h, $setSelection as O, SELECTION_CHANGE_COMMAND as bt, COMMAND_PRIORITY_LOW as f, CLICK_COMMAND as Ct, DRAGSTART_COMMAND as Nt, KEY_DELETE_COMMAND as xt, KEY_BACKSPACE_COMMAND as vt, KEY_ENTER_COMMAND as Et, KEY_ESCAPE_COMMAND as yt, RootNode as Rt, TextNode as At, LineBreakNode as kt, ParagraphNode as St, $getNodeByKey as A, $isParagraphNode as T } from "lexical";
|
|
17
|
+
import { useRef as P, useState as w, useCallback as x, useEffect as Dt } from "react";
|
|
18
|
+
import { H as v, W as Lt, l as Pt, A as Mt, m as _t, n as $t, T as zt, y as It, L as Wt, i as Ot } from "./index-baftIlXa.js";
|
|
19
19
|
function ie({
|
|
20
20
|
src: j,
|
|
21
21
|
nodeKey: g,
|
|
@@ -29,7 +29,7 @@ function ie({
|
|
|
29
29
|
controls: V = !0,
|
|
30
30
|
position: n = "none"
|
|
31
31
|
}) {
|
|
32
|
-
const a = P(null), S = P(null), [l, d, C] = ht(g), [s, M] = w(!1), [o] = lt(), [
|
|
32
|
+
const a = P(null), S = P(null), [l, d, C] = ht(g), [s, M] = w(!1), [o] = lt(), [y, H] = w(null), _ = P(null), K = mt(), D = x(
|
|
33
33
|
(t) => {
|
|
34
34
|
const r = L();
|
|
35
35
|
return l && h(r) && (t.preventDefault(), o.update(() => {
|
|
@@ -39,7 +39,7 @@ function ie({
|
|
|
39
39
|
})), !1;
|
|
40
40
|
},
|
|
41
41
|
[o, l]
|
|
42
|
-
), $ =
|
|
42
|
+
), $ = x(
|
|
43
43
|
(t) => {
|
|
44
44
|
const r = L(), e = S.current;
|
|
45
45
|
if (l && h(r) && r.getNodes().length === 1) {
|
|
@@ -51,14 +51,14 @@ function ie({
|
|
|
51
51
|
return !1;
|
|
52
52
|
},
|
|
53
53
|
[b, l, E]
|
|
54
|
-
), z =
|
|
54
|
+
), z = x(
|
|
55
55
|
(t) => _.current === b || S.current === t.target ? (O(null), o.update(() => {
|
|
56
56
|
d(!0);
|
|
57
57
|
const r = o.getRootElement();
|
|
58
58
|
r !== null && r.focus();
|
|
59
59
|
}), !0) : !1,
|
|
60
60
|
[b, o, d]
|
|
61
|
-
), I =
|
|
61
|
+
), I = x(
|
|
62
62
|
(t) => {
|
|
63
63
|
const r = t;
|
|
64
64
|
if (s)
|
|
@@ -69,8 +69,8 @@ function ie({
|
|
|
69
69
|
const c = e === a.current;
|
|
70
70
|
let u = !1;
|
|
71
71
|
if (!c && a.current) {
|
|
72
|
-
const
|
|
73
|
-
u = r.clientX >=
|
|
72
|
+
const R = a.current.getBoundingClientRect();
|
|
73
|
+
u = r.clientX >= R.left && r.clientX <= R.right && r.clientY >= R.top && r.clientY <= R.bottom;
|
|
74
74
|
}
|
|
75
75
|
return c || u ? (r.shiftKey ? d(!l) : (C(), d(!0)), !0) : !1;
|
|
76
76
|
},
|
|
@@ -93,12 +93,12 @@ function ie({
|
|
|
93
93
|
f
|
|
94
94
|
),
|
|
95
95
|
o.registerCommand(
|
|
96
|
-
|
|
96
|
+
Nt,
|
|
97
97
|
(e) => e.target === a.current ? (e.preventDefault(), !0) : !1,
|
|
98
98
|
f
|
|
99
99
|
),
|
|
100
100
|
o.registerCommand(
|
|
101
|
-
|
|
101
|
+
xt,
|
|
102
102
|
D,
|
|
103
103
|
f
|
|
104
104
|
),
|
|
@@ -109,7 +109,7 @@ function ie({
|
|
|
109
109
|
),
|
|
110
110
|
o.registerCommand(Et, $, f),
|
|
111
111
|
o.registerCommand(
|
|
112
|
-
|
|
112
|
+
yt,
|
|
113
113
|
z,
|
|
114
114
|
f
|
|
115
115
|
)
|
|
@@ -160,7 +160,7 @@ function ie({
|
|
|
160
160
|
c && T(c) && (r === "left" ? c.setFormat("left") : r === "right" ? c.setFormat("right") : c.setFormat(""));
|
|
161
161
|
}
|
|
162
162
|
});
|
|
163
|
-
}, J =
|
|
163
|
+
}, J = x(
|
|
164
164
|
(t) => {
|
|
165
165
|
if (s || t.target.closest("button"))
|
|
166
166
|
return;
|
|
@@ -173,9 +173,9 @@ function ie({
|
|
|
173
173
|
!e && !c || (t.stopPropagation(), t.shiftKey ? d(!l) : (C(), d(!0)));
|
|
174
174
|
},
|
|
175
175
|
[s, l, d, C]
|
|
176
|
-
), Q = l && h(
|
|
177
|
-
return /* @__PURE__ */
|
|
178
|
-
/* @__PURE__ */
|
|
176
|
+
), Q = l && h(y) && !s, W = (l || s) && K, Z = typeof p == "number" && typeof k == "number", tt = typeof p == "number" ? p : "auto", et = typeof k == "number" ? k : "auto";
|
|
177
|
+
return /* @__PURE__ */ N(rt, { children: [
|
|
178
|
+
/* @__PURE__ */ N(
|
|
179
179
|
"div",
|
|
180
180
|
{
|
|
181
181
|
draggable: Q,
|
|
@@ -216,7 +216,7 @@ function ie({
|
|
|
216
216
|
src: j,
|
|
217
217
|
controls: V,
|
|
218
218
|
preload: "metadata",
|
|
219
|
-
className: W ? `focused ${h(
|
|
219
|
+
className: W ? `focused ${h(y) ? "draggable" : ""}` : void 0,
|
|
220
220
|
style: Z ? {
|
|
221
221
|
width: tt,
|
|
222
222
|
height: et,
|
|
@@ -228,8 +228,8 @@ function ie({
|
|
|
228
228
|
draggable: "false"
|
|
229
229
|
}
|
|
230
230
|
),
|
|
231
|
-
l && h(
|
|
232
|
-
/* @__PURE__ */
|
|
231
|
+
l && h(y) && /* @__PURE__ */ N("div", { className: "cteditor-absolute cteditor-top-2 cteditor-right-2 cteditor-flex cteditor-gap-1 cteditor-z-10", children: [
|
|
232
|
+
/* @__PURE__ */ N("div", { className: "cteditor-flex cteditor-items-center cteditor-gap-0.5 cteditor-bg-background/80 cteditor-rounded-md cteditor-shadow-md cteditor-border cteditor-border-border cteditor-p-0.5", children: [
|
|
233
233
|
/* @__PURE__ */ i(
|
|
234
234
|
"button",
|
|
235
235
|
{
|
|
@@ -306,7 +306,7 @@ function ie({
|
|
|
306
306
|
}
|
|
307
307
|
)
|
|
308
308
|
] }),
|
|
309
|
-
Y && h(
|
|
309
|
+
Y && h(y) && W && /* @__PURE__ */ i(
|
|
310
310
|
it,
|
|
311
311
|
{
|
|
312
312
|
showCaption: E,
|
|
@@ -332,12 +332,12 @@ function ie({
|
|
|
332
332
|
maxWidth: "100%",
|
|
333
333
|
...n === "inline-center" || n === "full" ? { margin: "0 auto" } : n === "inline-right" ? { marginLeft: "auto" } : n === "left" ? { float: "left", clear: "left" } : n === "right" ? { float: "right", clear: "right" } : {}
|
|
334
334
|
},
|
|
335
|
-
children: /* @__PURE__ */
|
|
335
|
+
children: /* @__PURE__ */ N(
|
|
336
336
|
ut,
|
|
337
337
|
{
|
|
338
338
|
initialEditor: b,
|
|
339
339
|
initialNodes: [
|
|
340
|
-
|
|
340
|
+
Rt,
|
|
341
341
|
At,
|
|
342
342
|
kt,
|
|
343
343
|
St,
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
import { jsx as r, jsxs as p } from "react/jsx-runtime";
|
|
2
|
+
import { useLexicalComposerContext as B } from "@lexical/react/LexicalComposerContext";
|
|
3
|
+
import { $getNodeByKey as b } from "lexical";
|
|
4
|
+
import { useState as E, useEffect as N } from "react";
|
|
5
|
+
import { w as y, x as k, y as I, F as x, z as T, G as W } from "./index-baftIlXa.js";
|
|
6
|
+
function $(e, t) {
|
|
7
|
+
const c = e.split(".").pop()?.toLowerCase();
|
|
8
|
+
return c === "pdf" || t.startsWith("data:application/pdf") ? "pdf" : c === "docx" || t.startsWith("data:application/vnd.openxmlformats") && e.toLowerCase().endsWith(".docx") ? "docx" : c === "xlsx" || c === "xls" || t.startsWith("data:application/vnd.openxmlformats-officedocument.spreadsheetml") || t.startsWith("data:application/vnd.ms-excel") ? "xlsx" : null;
|
|
9
|
+
}
|
|
10
|
+
function z(e, t) {
|
|
11
|
+
const [c, n] = E(null);
|
|
12
|
+
return N(() => {
|
|
13
|
+
const d = e && t ? $(t, e) : null;
|
|
14
|
+
if (!e || !t || !d) {
|
|
15
|
+
n(null);
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
let l = !1;
|
|
19
|
+
return d === "pdf" ? import("./generatePdfThumbnail-Ck8MvwkP.js").then(({ generatePdfThumbnail: o }) => o(e)).then((o) => {
|
|
20
|
+
l || n(o);
|
|
21
|
+
}).catch(() => {
|
|
22
|
+
l || n(null);
|
|
23
|
+
}) : d === "docx" ? import("./generateDocxThumbnail-BMy6Y08H.js").then(({ generateDocxThumbnail: o }) => o(e)).then((o) => {
|
|
24
|
+
l || n(o);
|
|
25
|
+
}).catch(() => {
|
|
26
|
+
l || n(null);
|
|
27
|
+
}) : d === "xlsx" && import("./generateXlsxThumbnail-By40CwXr.js").then(({ generateXlsxThumbnail: o }) => o(e)).then((o) => {
|
|
28
|
+
l || n(o);
|
|
29
|
+
}).catch(() => {
|
|
30
|
+
l || n(null);
|
|
31
|
+
}), () => {
|
|
32
|
+
l = !0, n(null);
|
|
33
|
+
};
|
|
34
|
+
}, [e, t]), c;
|
|
35
|
+
}
|
|
36
|
+
const R = (e) => e ? e < 1024 ? `${e} B` : e < 1024 * 1024 ? `${(e / 1024).toFixed(1)} KB` : e < 1024 * 1024 * 1024 ? `${(e / (1024 * 1024)).toFixed(1)} MB` : `${(e / (1024 * 1024 * 1024)).toFixed(1)} GB` : "", D = (e) => {
|
|
37
|
+
const t = e.split(".");
|
|
38
|
+
return t.length > 1 ? t[t.length - 1].toLowerCase() : "";
|
|
39
|
+
}, F = (e) => {
|
|
40
|
+
const t = D(e);
|
|
41
|
+
return t === "pdf" || t === "docx" || t === "xlsx" || t === "xls";
|
|
42
|
+
}, C = (e) => {
|
|
43
|
+
const t = D(e);
|
|
44
|
+
return ["pdf", "doc", "docx", "txt", "odt"].includes(t) ? /* @__PURE__ */ r(x, { className: "cteditor-w-8 cteditor-h-8 cteditor-text-blue-600" }) : ["xls", "xlsx", "csv"].includes(t) ? /* @__PURE__ */ r(x, { className: "cteditor-w-8 cteditor-h-8 cteditor-text-green-600" }) : ["ppt", "pptx"].includes(t) ? /* @__PURE__ */ r(x, { className: "cteditor-w-8 cteditor-h-8 cteditor-text-red-600" }) : ["zip", "rar", "7z", "tar", "gz"].includes(t) ? /* @__PURE__ */ r(T, { className: "cteditor-w-8 cteditor-h-8 cteditor-text-orange-500" }) : /* @__PURE__ */ r(W, { className: "cteditor-w-8 cteditor-h-8 cteditor-text-gray-500" });
|
|
45
|
+
}, H = ({
|
|
46
|
+
src: e,
|
|
47
|
+
fileName: t,
|
|
48
|
+
fileSize: c,
|
|
49
|
+
displayType: n = "card",
|
|
50
|
+
nodeKey: d
|
|
51
|
+
}) => {
|
|
52
|
+
const l = n === "inline" ? "inline" : "card", [o] = B(), u = z(F(t) ? e : void 0, t);
|
|
53
|
+
if (N(() => {
|
|
54
|
+
u && o.update(() => {
|
|
55
|
+
const a = b(d);
|
|
56
|
+
y(a) && a.setPreviewDataUrl(u);
|
|
57
|
+
});
|
|
58
|
+
}, [o, d, u]), !e || !t)
|
|
59
|
+
return console.error("FileView: Missing required props", { src: e, fileName: t, fileSize: c, nodeKey: d }), /* @__PURE__ */ r("div", { className: "cteditor-inline-flex cteditor-items-center cteditor-gap-3 cteditor-px-4 cteditor-py-3 cteditor-my-2 cteditor-border cteditor-border-destructive cteditor-rounded-lg cteditor-bg-destructive/10", children: /* @__PURE__ */ r("div", { className: "cteditor-text-sm cteditor-text-destructive", children: "Error loading file" }) });
|
|
60
|
+
const f = (a) => {
|
|
61
|
+
a.preventDefault(), a.stopPropagation();
|
|
62
|
+
try {
|
|
63
|
+
if (e.startsWith("data:")) {
|
|
64
|
+
const i = e.split(","), h = i[0].match(/:(.*?);/), L = h ? h[1] : "application/octet-stream", w = atob(i[1]);
|
|
65
|
+
let m = w.length;
|
|
66
|
+
const v = new Uint8Array(m);
|
|
67
|
+
for (; m--; )
|
|
68
|
+
v[m] = w.charCodeAt(m);
|
|
69
|
+
const j = new Blob([v], { type: L }), g = URL.createObjectURL(j), s = document.createElement("a");
|
|
70
|
+
s.href = g, s.download = t, s.style.display = "none", document.body.appendChild(s), s.click(), document.body.removeChild(s), setTimeout(() => URL.revokeObjectURL(g), 100);
|
|
71
|
+
} else {
|
|
72
|
+
const i = document.createElement("a");
|
|
73
|
+
i.href = e, i.download = t, i.style.display = "none", i.target = "_blank", document.body.appendChild(i), i.click(), document.body.removeChild(i);
|
|
74
|
+
}
|
|
75
|
+
} catch (i) {
|
|
76
|
+
console.error("Error downloading file:", i), window.open(e, "_blank");
|
|
77
|
+
}
|
|
78
|
+
}, P = (a) => {
|
|
79
|
+
a.preventDefault(), a.stopPropagation(), o.update(() => {
|
|
80
|
+
const i = b(d);
|
|
81
|
+
y(i) && i.remove();
|
|
82
|
+
});
|
|
83
|
+
}, U = F(t) && u;
|
|
84
|
+
return l === "inline" ? /* @__PURE__ */ p(
|
|
85
|
+
"div",
|
|
86
|
+
{
|
|
87
|
+
className: "cteditor-inline-flex cteditor-items-center cteditor-gap-2 cteditor-py-1.5 cteditor-px-3 cteditor-my-0.5 cteditor-rounded-full cteditor-bg-muted hover:cteditor-bg-accent/50 cteditor-transition-colors cteditor-cursor-pointer cteditor-max-w-full cteditor-border cteditor-border-border",
|
|
88
|
+
role: "button",
|
|
89
|
+
tabIndex: 0,
|
|
90
|
+
"data-lexical-node-key": d,
|
|
91
|
+
children: [
|
|
92
|
+
/* @__PURE__ */ r("span", { className: "cteditor-flex-shrink-0 *:cteditor-size-5", children: C(t) }),
|
|
93
|
+
/* @__PURE__ */ r("span", { className: "cteditor-flex-1 cteditor-min-w-0 cteditor-text-sm cteditor-font-medium cteditor-text-foreground cteditor-truncate", children: t }),
|
|
94
|
+
/* @__PURE__ */ r(
|
|
95
|
+
"button",
|
|
96
|
+
{
|
|
97
|
+
type: "button",
|
|
98
|
+
onClick: f,
|
|
99
|
+
className: "cteditor-p-1 cteditor-rounded-md hover:cteditor-bg-accent cteditor-transition-colors cteditor-flex-shrink-0",
|
|
100
|
+
"aria-label": "Download file",
|
|
101
|
+
title: "Download file",
|
|
102
|
+
children: /* @__PURE__ */ r(k, { className: "cteditor-w-4 cteditor-h-4 cteditor-text-muted-foreground" })
|
|
103
|
+
}
|
|
104
|
+
)
|
|
105
|
+
]
|
|
106
|
+
}
|
|
107
|
+
) : /* @__PURE__ */ p(
|
|
108
|
+
"div",
|
|
109
|
+
{
|
|
110
|
+
className: "cteditor-inline-flex cteditor-flex-col cteditor-gap-2 cteditor-py-2 cteditor-px-2 cteditor-my-2 cteditor-border cteditor-border-border cteditor-rounded-lg cteditor-bg-background hover:cteditor-bg-accent/50 cteditor-transition-colors cteditor-cursor-pointer cteditor-max-w-[240px] cteditor-mr-1.5",
|
|
111
|
+
role: "button",
|
|
112
|
+
tabIndex: 0,
|
|
113
|
+
"data-lexical-node-key": d,
|
|
114
|
+
children: [
|
|
115
|
+
/* @__PURE__ */ r("div", { className: "cteditor-w-full cteditor-aspect-[120/88] cteditor-rounded cteditor-overflow-hidden cteditor-bg-muted cteditor-flex cteditor-items-center cteditor-justify-center", children: U ? /* @__PURE__ */ r(
|
|
116
|
+
"img",
|
|
117
|
+
{
|
|
118
|
+
src: u,
|
|
119
|
+
alt: "",
|
|
120
|
+
className: "cteditor-w-full cteditor-h-full cteditor-object-cover"
|
|
121
|
+
}
|
|
122
|
+
) : /* @__PURE__ */ r("div", { className: "*:cteditor-size-8", children: C(t) }) }),
|
|
123
|
+
/* @__PURE__ */ p("div", { className: "cteditor-flex cteditor-items-start cteditor-gap-2 cteditor-w-full", children: [
|
|
124
|
+
/* @__PURE__ */ p("div", { className: "cteditor-flex-1 cteditor-min-w-0", children: [
|
|
125
|
+
/* @__PURE__ */ r("div", { className: "cteditor-font-medium cteditor-text-xs cteditor-text-foreground cteditor-truncate", children: t }),
|
|
126
|
+
c && /* @__PURE__ */ r("div", { className: "cteditor-text-xs cteditor-text-muted-foreground", children: R(c) })
|
|
127
|
+
] }),
|
|
128
|
+
/* @__PURE__ */ p("div", { className: "cteditor-flex cteditor-gap-1 cteditor-flex-shrink-0", children: [
|
|
129
|
+
/* @__PURE__ */ r(
|
|
130
|
+
"button",
|
|
131
|
+
{
|
|
132
|
+
onClick: f,
|
|
133
|
+
className: "cteditor-p-1 cteditor-rounded-md hover:cteditor-bg-accent cteditor-transition-colors",
|
|
134
|
+
"aria-label": "Download file",
|
|
135
|
+
title: "Download file",
|
|
136
|
+
children: /* @__PURE__ */ r(k, { className: "cteditor-w-4 cteditor-h-4 cteditor-text-muted-foreground" })
|
|
137
|
+
}
|
|
138
|
+
),
|
|
139
|
+
/* @__PURE__ */ r(
|
|
140
|
+
"button",
|
|
141
|
+
{
|
|
142
|
+
onClick: P,
|
|
143
|
+
className: "cteditor-p-1 cteditor-rounded-md hover:cteditor-bg-destructive hover:cteditor-text-destructive-foreground cteditor-transition-colors",
|
|
144
|
+
"aria-label": "Delete file",
|
|
145
|
+
title: "Delete file",
|
|
146
|
+
children: /* @__PURE__ */ r(I, { className: "cteditor-w-4 cteditor-h-4 cteditor-text-muted-foreground" })
|
|
147
|
+
}
|
|
148
|
+
)
|
|
149
|
+
] })
|
|
150
|
+
] })
|
|
151
|
+
]
|
|
152
|
+
}
|
|
153
|
+
);
|
|
154
|
+
};
|
|
155
|
+
export {
|
|
156
|
+
H as default
|
|
157
|
+
};
|