rme 0.3.0-beta.8 → 0.3.0-beta.9

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
@@ -6781,6 +6781,7 @@ var ImageToolTips = (props) => {
6781
6781
 
6782
6782
  // src/editor/extensions/Image/image-nodeview.tsx
6783
6783
  import { jsx as jsx14 } from "react/jsx-runtime";
6784
+ var warningFallBack = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAAAAACIM/FCAAAChElEQVR4Ae3aMW/TQBxAcb70k91AAiGuGlZAtOlQApWaDiSdklZq2RPUTm1xUWL3PgqSpygkXlh88N54nn7S2Trd3y/CP5IQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECPmPIEKECBEiRIgQIeX82+FBO0naB4eTRRkt5P7sNWt1Rw9RQvKThI2SYR4f5OoVW2rfRAYpT6hqHc8WeVHki9mgRdWwiAmyfA9AdrlaW5tlAHxcxQMpK8feRbGxPEkrSREN5ARg/y780V0GMIwFcgXwLg9byvsAN3FA8lfAfr7jYQZ0nqKAfAb21vYVwNruSoEvMUDuE+Ai7IKECZA+RAA5A7JiN6TMgFHzIeUb4DLshoQZ0H1uPGQOvFzVQZYtYNF4yBg4DnWQMAAmjYccArN6yBQ4ajzkAFjUQ+ZAv/GQNpDXQ3Kg03hIAhT1kAJIhLi1/vJl39Ic6Mf3+a2K8PM7BgahtgEwjuKI0lqGjSI8opRdYFb3sk/jODSGEZCVuyFFDzgPzYc8JMBkN2QMpI8RQMIQ2LvdBblNgdM4Lh/aQJaHrf3sAe2nKCDhGqCfb3VEcx1UNQTItlzQ3fYAvoZYIMUHgHRSbiyPU4BPZUSX2JWEbLZcW5v2qByrmMYKxZCq1mA6z4sin08HLapOy8gGPddtttT5HuHobZiwUXr6K85h6KjLWm/PH+MdTy/GR/12knb6g8mPZ38YECJEiBAhQoQIESJEiBAhQoQIESJEiBAhQoQIESJEiBAhQoQIESJEiBAhQoQIESJEiBAhQoQIESJEiBAhQoQIESJEiBAh0fUb5q7oCGreEVEAAAAASUVORK5CYII=";
6784
6785
  function ImageNodeView(props) {
6785
6786
  const {
6786
6787
  node,
@@ -6805,12 +6806,6 @@ function ImageNodeView(props) {
6805
6806
  } catch (error) {
6806
6807
  }
6807
6808
  }
6808
- if (handleViewImgSrcUrl) {
6809
- try {
6810
- src = await handleViewImgSrcUrl(src);
6811
- } catch (error) {
6812
- }
6813
- }
6814
6809
  updateAttributes({
6815
6810
  "data-rme-from-paste": null,
6816
6811
  src
@@ -6818,7 +6813,7 @@ function ImageNodeView(props) {
6818
6813
  };
6819
6814
  handlePasteEvent();
6820
6815
  }
6821
- }, [fromPaste, handleViewImgSrcUrl, imageCopyHandler, node.attrs.src]);
6816
+ }, [fromPaste, imageCopyHandler, node.attrs.src]);
6822
6817
  const handleStoreChange = (store) => {
6823
6818
  popoverStore.current = store;
6824
6819
  };
@@ -6856,6 +6851,28 @@ function ImageNodeView(props) {
6856
6851
  onLoad: () => initRef.current?.(),
6857
6852
  src: node.attrs.src,
6858
6853
  loader: Loading,
6854
+ imgPromise: () => {
6855
+ return new Promise(async (resolve, reject) => {
6856
+ let targetSrc = node.attrs.src || "";
6857
+ if (handleViewImgSrcUrl) {
6858
+ try {
6859
+ targetSrc = await handleViewImgSrcUrl(targetSrc);
6860
+ } catch (error) {
6861
+ }
6862
+ }
6863
+ const makeImageLoad = (targetSrc2) => {
6864
+ const img = new Image();
6865
+ img.src = targetSrc2;
6866
+ img.onload = () => {
6867
+ resolve(targetSrc2);
6868
+ };
6869
+ img.onerror = () => {
6870
+ reject(warningFallBack);
6871
+ };
6872
+ };
6873
+ makeImageLoad(targetSrc);
6874
+ });
6875
+ },
6859
6876
  style: {
6860
6877
  width: "100%",
6861
6878
  height: "100%"
@@ -6866,33 +6883,40 @@ function ImageNodeView(props) {
6866
6883
  },
6867
6884
  `${node.attrs.src}_${node.attrs["data-rme-loading"]}`
6868
6885
  );
6869
- return /* @__PURE__ */ jsx14("div", { ref: popoverRef, style: { position: "relative", zIndex: selected ? 10 : "auto", lineHeight: 0 }, children: /* @__PURE__ */ jsx14(
6870
- Popover2,
6886
+ return /* @__PURE__ */ jsx14(
6887
+ "div",
6871
6888
  {
6872
- customContent: /* @__PURE__ */ jsx14(
6873
- ImageToolTips,
6889
+ ref: popoverRef,
6890
+ style: { position: "relative", zIndex: selected ? 10 : "auto", lineHeight: 0 },
6891
+ children: /* @__PURE__ */ jsx14(
6892
+ Popover2,
6874
6893
  {
6875
- node,
6876
- imageHostingHandler,
6877
- updateAttributes: (...args) => {
6878
- updateAttributes(...args);
6879
- popoverStore.current?.setOpen(false);
6880
- }
6881
- },
6882
- `${node.attrs.src}`
6883
- ),
6884
- boxProps: {
6885
- style: {
6886
- display: "inline-flex"
6894
+ customContent: /* @__PURE__ */ jsx14(
6895
+ ImageToolTips,
6896
+ {
6897
+ node,
6898
+ imageHostingHandler,
6899
+ updateAttributes: (...args) => {
6900
+ updateAttributes(...args);
6901
+ popoverStore.current?.setOpen(false);
6902
+ }
6903
+ },
6904
+ `${node.attrs.src}`
6905
+ ),
6906
+ boxProps: {
6907
+ style: {
6908
+ display: "inline-flex"
6909
+ }
6910
+ },
6911
+ placement: "top-start",
6912
+ onStoreChange: handleStoreChange,
6913
+ toggleOnClick: true,
6914
+ style: { zIndex: 11 },
6915
+ children: Main
6887
6916
  }
6888
- },
6889
- placement: "top-start",
6890
- onStoreChange: handleStoreChange,
6891
- toggleOnClick: true,
6892
- style: { zIndex: 11 },
6893
- children: Main
6917
+ )
6894
6918
  }
6895
- ) });
6919
+ );
6896
6920
  }
6897
6921
 
6898
6922
  // src/editor/extensions/Image/image-extension.tsx