mainstack-design-system 1.17.4 → 1.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts
CHANGED
|
@@ -10068,6 +10068,7 @@ declare type TextEditorContextType = {
|
|
|
10068
10068
|
onGenerateWithAi?: () => void;
|
|
10069
10069
|
generateWithAiIsLoading?: boolean;
|
|
10070
10070
|
onError?: (error: unknown) => void;
|
|
10071
|
+
onImageUpload?: (file: File) => Promise<string>;
|
|
10071
10072
|
isError?: boolean;
|
|
10072
10073
|
isSuccess?: boolean;
|
|
10073
10074
|
};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
2
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react/jsx-runtime"),c=require("react");require("./mainstack-design-system366.cjs");const I=require("./mainstack-design-system241.cjs");require("./player-CocaNyQC.cjs");const d=require("./utils-s-0cOrOT.cjs"),l=require("./index-C1WE8GDC.cjs"),y=require("./mainstack-design-system506.cjs"),_=require("./mainstack-design-system610.cjs"),u=c.forwardRef(({className:m,...p},f)=>{const{onError:a,onImageUpload:s}=_.useTextEditorContext(),{editor:t}=l.useCurrentEditor(),g=l.useEditorState({editor:t,selector:r=>r.editor?{isImage:t?.isActive("image")}:{}}),x=c.useCallback(async r=>{r.preventDefault();const n=r.target.files?.[0];if(n)try{let e;s?e=await s(n):e=await new Promise((E,q)=>{const o=new FileReader;o.onload=()=>E(o.result),o.onerror=q,o.readAsDataURL(n)}),t?.chain().focus().insertContent({type:"image",attrs:{src:e}}).run()}catch(e){a?.(e)}},[t,a,s]);return i.jsxs(y.TextEditorMenuAction,{isActive:g?.isImage,ref:f,onClick:()=>{},"data-slot":"text-editor-image-upload-menu",className:d.cn("mds:relative",m),...p,children:[i.jsx(I,{className:"mds:size-16"}),i.jsx("input",{className:d.cn("mds:absolute mds:file-selector mds:opacity-0 mds:file:cursor-pointer mds:w-full mds:h-full mds:left-0 mds:top-0"),type:"file",accept:"image/*",onChange:x})]})});u.displayName="ImageUploadMenu";exports.ImageUploadMenu=u;
|
|
@@ -1,59 +1,58 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import { jsxs as
|
|
3
|
-
import { forwardRef as
|
|
2
|
+
import { jsxs as x, jsx as m } from "react/jsx-runtime";
|
|
3
|
+
import { forwardRef as I, useCallback as h } from "react";
|
|
4
4
|
import "./mainstack-design-system366.js";
|
|
5
|
-
import
|
|
5
|
+
import w from "./mainstack-design-system241.js";
|
|
6
6
|
import "./player-Chgv-hOU.js";
|
|
7
|
-
import { c as
|
|
8
|
-
import { u as
|
|
9
|
-
import { TextEditorMenuAction as
|
|
10
|
-
import { useTextEditorContext as
|
|
11
|
-
const v =
|
|
12
|
-
({ className:
|
|
13
|
-
const { onError:
|
|
7
|
+
import { c as n } from "./utils-Z5JtG_Bc.js";
|
|
8
|
+
import { u as y, a as C } from "./index-B9lFQRm4.js";
|
|
9
|
+
import { TextEditorMenuAction as E } from "./mainstack-design-system506.js";
|
|
10
|
+
import { useTextEditorContext as U } from "./mainstack-design-system610.js";
|
|
11
|
+
const v = I(
|
|
12
|
+
({ className: l, ...d }, c) => {
|
|
13
|
+
const { onError: i, onImageUpload: a } = U(), { editor: t } = y(), p = C({
|
|
14
14
|
editor: t,
|
|
15
|
-
selector: (
|
|
15
|
+
selector: (r) => r.editor ? {
|
|
16
16
|
isImage: t?.isActive("image")
|
|
17
17
|
} : {}
|
|
18
|
-
}),
|
|
19
|
-
(
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
}).run();
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
}
|
|
32
|
-
}
|
|
18
|
+
}), u = h(
|
|
19
|
+
async (r) => {
|
|
20
|
+
r.preventDefault();
|
|
21
|
+
const s = r.target.files?.[0];
|
|
22
|
+
if (s)
|
|
23
|
+
try {
|
|
24
|
+
let e;
|
|
25
|
+
a ? e = await a(s) : e = await new Promise((f, g) => {
|
|
26
|
+
const o = new FileReader();
|
|
27
|
+
o.onload = () => f(o.result), o.onerror = g, o.readAsDataURL(s);
|
|
28
|
+
}), t?.chain().focus().insertContent({ type: "image", attrs: { src: e } }).run();
|
|
29
|
+
} catch (e) {
|
|
30
|
+
i?.(e);
|
|
31
|
+
}
|
|
33
32
|
},
|
|
34
|
-
[t,
|
|
33
|
+
[t, i, a]
|
|
35
34
|
);
|
|
36
|
-
return /* @__PURE__ */
|
|
37
|
-
|
|
35
|
+
return /* @__PURE__ */ x(
|
|
36
|
+
E,
|
|
38
37
|
{
|
|
39
|
-
isActive:
|
|
40
|
-
ref:
|
|
38
|
+
isActive: p?.isImage,
|
|
39
|
+
ref: c,
|
|
41
40
|
onClick: () => {
|
|
42
41
|
},
|
|
43
42
|
"data-slot": "text-editor-image-upload-menu",
|
|
44
|
-
className:
|
|
45
|
-
...
|
|
43
|
+
className: n("mds:relative", l),
|
|
44
|
+
...d,
|
|
46
45
|
children: [
|
|
47
|
-
/* @__PURE__ */
|
|
48
|
-
/* @__PURE__ */
|
|
46
|
+
/* @__PURE__ */ m(w, { className: "mds:size-16" }),
|
|
47
|
+
/* @__PURE__ */ m(
|
|
49
48
|
"input",
|
|
50
49
|
{
|
|
51
|
-
className:
|
|
50
|
+
className: n(
|
|
52
51
|
"mds:absolute mds:file-selector mds:opacity-0 mds:file:cursor-pointer mds:w-full mds:h-full mds:left-0 mds:top-0"
|
|
53
52
|
),
|
|
54
53
|
type: "file",
|
|
55
54
|
accept: "image/*",
|
|
56
|
-
onChange:
|
|
55
|
+
onChange: u
|
|
57
56
|
}
|
|
58
57
|
)
|
|
59
58
|
]
|