@react-email/editor 0.0.0-experimental.11 → 0.0.0-experimental.12
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.mts +94 -48
- package/dist/index.d.mts.map +1 -1
- package/dist/index.d.ts +94 -48
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +91 -4
- package/dist/index.mjs +87 -5
- package/dist/index.mjs.map +1 -1
- package/dist/ui/image-bubble-menu/image-bubble-menu.css +29 -0
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -2497,12 +2497,12 @@ function ButtonBubbleMenuRoot({ onHide, placement = "top", offset = 8, className
|
|
|
2497
2497
|
|
|
2498
2498
|
//#endregion
|
|
2499
2499
|
//#region src/ui/button-bubble-menu/toolbar.tsx
|
|
2500
|
-
function ButtonBubbleMenuToolbar({
|
|
2500
|
+
function ButtonBubbleMenuToolbar({ children,...rest }) {
|
|
2501
2501
|
const { isEditing } = useButtonBubbleMenuContext();
|
|
2502
2502
|
if (isEditing) return null;
|
|
2503
2503
|
return /* @__PURE__ */ jsx("div", {
|
|
2504
2504
|
"data-re-btn-bm-toolbar": "",
|
|
2505
|
-
|
|
2505
|
+
...rest,
|
|
2506
2506
|
children
|
|
2507
2507
|
});
|
|
2508
2508
|
}
|
|
@@ -2515,6 +2515,88 @@ const ButtonBubbleMenu = {
|
|
|
2515
2515
|
EditLink: ButtonBubbleMenuEditLink
|
|
2516
2516
|
};
|
|
2517
2517
|
|
|
2518
|
+
//#endregion
|
|
2519
|
+
//#region src/ui/image-bubble-menu/context.tsx
|
|
2520
|
+
const ImageBubbleMenuContext = React.createContext(null);
|
|
2521
|
+
function useImageBubbleMenuContext() {
|
|
2522
|
+
const context = React.useContext(ImageBubbleMenuContext);
|
|
2523
|
+
if (!context) throw new Error("ImageBubbleMenu compound components must be used within <ImageBubbleMenu.Root>");
|
|
2524
|
+
return context;
|
|
2525
|
+
}
|
|
2526
|
+
|
|
2527
|
+
//#endregion
|
|
2528
|
+
//#region src/ui/image-bubble-menu/edit-link.tsx
|
|
2529
|
+
function ImageBubbleMenuEditLink({ className, children, onClick, onMouseDown,...rest }) {
|
|
2530
|
+
const { setIsEditing } = useImageBubbleMenuContext();
|
|
2531
|
+
return /* @__PURE__ */ jsx("button", {
|
|
2532
|
+
...rest,
|
|
2533
|
+
type: "button",
|
|
2534
|
+
"aria-label": "Edit link",
|
|
2535
|
+
"data-re-img-bm-item": "",
|
|
2536
|
+
"data-item": "edit-link",
|
|
2537
|
+
className,
|
|
2538
|
+
onMouseDown: (e) => {
|
|
2539
|
+
e.preventDefault();
|
|
2540
|
+
onMouseDown?.(e);
|
|
2541
|
+
},
|
|
2542
|
+
onClick: (e) => {
|
|
2543
|
+
onClick?.(e);
|
|
2544
|
+
setIsEditing(true);
|
|
2545
|
+
},
|
|
2546
|
+
children: children ?? /* @__PURE__ */ jsx(LinkIcon, {})
|
|
2547
|
+
});
|
|
2548
|
+
}
|
|
2549
|
+
|
|
2550
|
+
//#endregion
|
|
2551
|
+
//#region src/ui/image-bubble-menu/root.tsx
|
|
2552
|
+
function ImageBubbleMenuRoot({ onHide, placement = "top", offset = 8, className, children }) {
|
|
2553
|
+
const { editor } = useCurrentEditor();
|
|
2554
|
+
const [isEditing, setIsEditing] = React.useState(false);
|
|
2555
|
+
if (!editor) return null;
|
|
2556
|
+
return /* @__PURE__ */ jsx(BubbleMenu$1, {
|
|
2557
|
+
editor,
|
|
2558
|
+
"data-re-img-bm": "",
|
|
2559
|
+
shouldShow: ({ editor: e, view }) => e.isActive("image") && !view.dom.classList.contains("dragging"),
|
|
2560
|
+
options: {
|
|
2561
|
+
placement,
|
|
2562
|
+
offset,
|
|
2563
|
+
onHide: () => {
|
|
2564
|
+
setIsEditing(false);
|
|
2565
|
+
onHide?.();
|
|
2566
|
+
}
|
|
2567
|
+
},
|
|
2568
|
+
className,
|
|
2569
|
+
children: /* @__PURE__ */ jsx(ImageBubbleMenuContext.Provider, {
|
|
2570
|
+
value: {
|
|
2571
|
+
editor,
|
|
2572
|
+
isEditing,
|
|
2573
|
+
setIsEditing
|
|
2574
|
+
},
|
|
2575
|
+
children
|
|
2576
|
+
})
|
|
2577
|
+
});
|
|
2578
|
+
}
|
|
2579
|
+
|
|
2580
|
+
//#endregion
|
|
2581
|
+
//#region src/ui/image-bubble-menu/toolbar.tsx
|
|
2582
|
+
function ImageBubbleMenuToolbar({ children,...rest }) {
|
|
2583
|
+
const { isEditing } = useImageBubbleMenuContext();
|
|
2584
|
+
if (isEditing) return null;
|
|
2585
|
+
return /* @__PURE__ */ jsx("div", {
|
|
2586
|
+
"data-re-img-bm-toolbar": "",
|
|
2587
|
+
...rest,
|
|
2588
|
+
children
|
|
2589
|
+
});
|
|
2590
|
+
}
|
|
2591
|
+
|
|
2592
|
+
//#endregion
|
|
2593
|
+
//#region src/ui/image-bubble-menu/index.ts
|
|
2594
|
+
const ImageBubbleMenu = {
|
|
2595
|
+
Root: ImageBubbleMenuRoot,
|
|
2596
|
+
Toolbar: ImageBubbleMenuToolbar,
|
|
2597
|
+
EditLink: ImageBubbleMenuEditLink
|
|
2598
|
+
};
|
|
2599
|
+
|
|
2518
2600
|
//#endregion
|
|
2519
2601
|
//#region src/ui/link-bubble-menu/context.tsx
|
|
2520
2602
|
const LinkBubbleMenuContext = React.createContext(null);
|
|
@@ -2706,12 +2788,12 @@ function LinkBubbleMenuRoot({ onHide, placement = "top", offset = 8, className,
|
|
|
2706
2788
|
|
|
2707
2789
|
//#endregion
|
|
2708
2790
|
//#region src/ui/link-bubble-menu/toolbar.tsx
|
|
2709
|
-
function LinkBubbleMenuToolbar({
|
|
2791
|
+
function LinkBubbleMenuToolbar({ children,...rest }) {
|
|
2710
2792
|
const { isEditing } = useLinkBubbleMenuContext();
|
|
2711
2793
|
if (isEditing) return null;
|
|
2712
2794
|
return /* @__PURE__ */ jsx("div", {
|
|
2713
2795
|
"data-re-link-bm-toolbar": "",
|
|
2714
|
-
|
|
2796
|
+
...rest,
|
|
2715
2797
|
children
|
|
2716
2798
|
});
|
|
2717
2799
|
}
|
|
@@ -2751,5 +2833,5 @@ const LinkBubbleMenu = {
|
|
|
2751
2833
|
};
|
|
2752
2834
|
|
|
2753
2835
|
//#endregion
|
|
2754
|
-
export { AlignmentAttribute, Body, Bold, BubbleMenu, BubbleMenuAlignCenter, BubbleMenuAlignLeft, BubbleMenuAlignRight, BubbleMenuBold, BubbleMenuCode, BubbleMenuDefault, BubbleMenuItalic, BubbleMenuItem, BubbleMenuItemGroup, BubbleMenuLinkSelector, BubbleMenuNodeSelector, BubbleMenuRoot, BubbleMenuSeparator, BubbleMenuStrike, BubbleMenuUnderline, BubbleMenuUppercase, Button, ButtonBubbleMenu, ButtonBubbleMenuEditLink, ButtonBubbleMenuRoot, ButtonBubbleMenuToolbar, COLUMN_PARENT_TYPES, ClassAttribute, CodeBlockPrism, ColumnsColumn, Div, EmailNode, FourColumns, LinkBubbleMenu, LinkBubbleMenuEditLink, LinkBubbleMenuForm, LinkBubbleMenuOpenLink, LinkBubbleMenuRoot, LinkBubbleMenuToolbar, LinkBubbleMenuUnlink, MAX_COLUMNS_DEPTH, MaxNesting, NodeSelectorContent, NodeSelectorRoot, NodeSelectorTrigger, Placeholder, PreservedStyle, PreviewText, Section, StyleAttribute, Sup, Table, TableCell, TableHeader, TableRow, ThreeColumns, TwoColumns, Uppercase, coreExtensions, editorEventBus, getColumnsDepth, processStylesForUnlink, setTextAlignment, useButtonBubbleMenuContext, useLinkBubbleMenuContext };
|
|
2836
|
+
export { AlignmentAttribute, Body, Bold, BubbleMenu, BubbleMenuAlignCenter, BubbleMenuAlignLeft, BubbleMenuAlignRight, BubbleMenuBold, BubbleMenuCode, BubbleMenuDefault, BubbleMenuItalic, BubbleMenuItem, BubbleMenuItemGroup, BubbleMenuLinkSelector, BubbleMenuNodeSelector, BubbleMenuRoot, BubbleMenuSeparator, BubbleMenuStrike, BubbleMenuUnderline, BubbleMenuUppercase, Button, ButtonBubbleMenu, ButtonBubbleMenuEditLink, ButtonBubbleMenuRoot, ButtonBubbleMenuToolbar, COLUMN_PARENT_TYPES, ClassAttribute, CodeBlockPrism, ColumnsColumn, Div, EmailNode, FourColumns, ImageBubbleMenu, ImageBubbleMenuEditLink, ImageBubbleMenuRoot, ImageBubbleMenuToolbar, LinkBubbleMenu, LinkBubbleMenuEditLink, LinkBubbleMenuForm, LinkBubbleMenuOpenLink, LinkBubbleMenuRoot, LinkBubbleMenuToolbar, LinkBubbleMenuUnlink, MAX_COLUMNS_DEPTH, MaxNesting, NodeSelectorContent, NodeSelectorRoot, NodeSelectorTrigger, Placeholder, PreservedStyle, PreviewText, Section, StyleAttribute, Sup, Table, TableCell, TableHeader, TableRow, ThreeColumns, TwoColumns, Uppercase, coreExtensions, editorEventBus, getColumnsDepth, processStylesForUnlink, setTextAlignment, useButtonBubbleMenuContext, useImageBubbleMenuContext, useLinkBubbleMenuContext };
|
|
2755
2837
|
//# sourceMappingURL=index.mjs.map
|