@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.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({ className, children }) {
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
- className,
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({ className, children }) {
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
- className,
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