mio-previewer 0.2.72 → 0.2.73

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.
@@ -1,4 +1,4 @@
1
- code[class*=language-],pre[class*=language-]{color:#ccc;background:none;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#2d2d2d}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.comment,.token.block-comment,.token.prolog,.token.doctype,.token.cdata{color:#999}.token.punctuation{color:#ccc}.token.tag,.token.attr-name,.token.namespace,.token.deleted{color:#e2777a}.token.function-name{color:#6196cc}.token.boolean,.token.number,.token.function{color:#f08d49}.token.property,.token.class-name,.token.constant,.token.symbol{color:#f8c555}.token.selector,.token.important,.token.atrule,.token.keyword,.token.builtin{color:#cc99cd}.token.string,.token.char,.token.attr-value,.token.regex,.token.variable{color:#7ec699}.token.operator,.token.entity,.token.url{color:#67cdcc}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.token.inserted{color:green}.code-block-wrapper[data-v-5a9f6db9]{margin:1.5em 0;background:#262733;border-radius:8px;overflow:hidden;box-shadow:0 2px 6px #6e7d8c12;border:1px solid #222229;position:relative}.code-block-tooltip[data-v-5a9f6db9]{position:fixed;transform:translate(-50%,-100%);margin-top:-8px;background:#000000e6;color:#fff;padding:6px 12px;border-radius:4px;font-size:13px;white-space:nowrap;pointer-events:none;z-index:10000;animation:tooltipFadeIn-5a9f6db9 .2s ease;box-shadow:0 2px 8px #0000004d}.code-block-tooltip[data-v-5a9f6db9]:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#000000e6}@keyframes tooltipFadeIn-5a9f6db9{0%{opacity:0;transform:translate(-50%,calc(-100% - 5px))}to{opacity:1;transform:translate(-50%,-100%)}}.code-block-header[data-v-5a9f6db9]{display:flex;justify-content:space-between;align-items:center;background:#2d2f3a;padding:.35rem .85rem;border-bottom:1px solid #23242d}.lang-label[data-v-5a9f6db9]{color:#a3b0d0;font-size:.89em;font-weight:600;letter-spacing:1px;-webkit-user-select:none;user-select:none}.op-btn-group[data-v-5a9f6db9]{display:flex;gap:.4rem}.op-btn-group button[data-v-5a9f6db9]{border:none;outline:none;background:transparent;color:#8fa3c1;cursor:pointer;border-radius:3px;padding:.21em;transition:color .18s,background .22s;line-height:1;display:flex;align-items:center;font-size:1.02rem;opacity:.85}.op-btn-group button[data-v-5a9f6db9]:hover:not(:disabled){background:#ecf6ff1a}.op-btn-group button[data-v-5a9f6db9]:disabled{cursor:not-allowed;opacity:.5}.copy-code-button[data-v-5a9f6db9]{color:#8fa3c1}.publish-html-button[data-v-5a9f6db9]{color:#10b981}.preview-html-button[data-v-5a9f6db9]{color:#3486ff}.close-preview-button[data-v-5a9f6db9]{color:#ff5d5b;background:#fae8e410}.fullscreen-button[data-v-5a9f6db9]{color:#8b5cf6}.exit-fullscreen-button[data-v-5a9f6db9]{color:#f59e0b}pre[data-v-5a9f6db9],code[data-v-5a9f6db9]{background:transparent;border-radius:0;font-family:JetBrains Mono,Fira Code,Consolas,Menlo,Monaco,monospace;font-size:.92em;line-height:1.6;color:#ddd}pre[data-v-5a9f6db9]{margin:0;padding:1rem;overflow-x:auto;background:#1e1e2e}pre[data-v-5a9f6db9]::-webkit-scrollbar{height:8px;background:transparent}pre[data-v-5a9f6db9]::-webkit-scrollbar-thumb{background-color:#8889;border-radius:4px}pre[data-v-5a9f6db9]::-webkit-scrollbar-thumb:hover{background-color:#888888e6}.iframe-wrapper[data-v-5a9f6db9]{width:100%;overflow:hidden;display:block;position:relative;border:1px solid #ddd;background:#fff;transition:height .1s ease-out}.html-preview-iframe[data-v-5a9f6db9]{width:100%;height:100%;border:none;background:#fff;display:block}.code-block-wrapper.fullscreen[data-v-5a9f6db9]{position:fixed;inset:0;width:100vw;height:100vh;z-index:9999;margin:0;border-radius:0;display:flex;flex-direction:column}.code-block-wrapper.fullscreen .code-block-header[data-v-5a9f6db9]{flex-shrink:0}.code-block-wrapper.fullscreen pre[data-v-5a9f6db9]{flex:1;overflow:auto;max-height:none}.code-block-wrapper.fullscreen .iframe-wrapper[data-v-5a9f6db9]{flex:1;height:auto!important;border:none}.code-block-wrapper.fullscreen .html-preview-iframe[data-v-5a9f6db9]{height:100%}.code-block-wrapper.code-block-wrapper pre{background-color:#1e1e2e!important;background:#1e1e2e!important}.code-block-wrapper.code-block-wrapper code{background:transparent!important}.code-block-wrapper pre[class*=language-]{background-color:#1e1e2e!important;background:#1e1e2e!important}.code-block-wrapper code[class*=language-]{background:transparent!important;background-color:transparent!important}.code-block-wrapper pre,.code-block-wrapper pre code,.code-block-wrapper pre[class*=language-],.code-block-wrapper code[class*=language-],.markdown-body .code-block-wrapper pre,.markdown-body .code-block-wrapper pre[class*=language-]{background-color:#1e1e2e!important;background:#1e1e2e!important}.mermaid-diagram-wrapper[data-v-d873f163]{margin:1em 0;background:var(--mermaid-bg, #f9f9f9);border-radius:8px;border:1px solid var(--mermaid-border, #e0e0e0);position:relative}.mermaid-controls[data-v-d873f163]{position:absolute;top:8px;right:8px;z-index:10;display:flex;gap:8px;align-items:center;background:#ffffffe6;padding:4px 8px;border-radius:6px;box-shadow:0 2px 8px #0000001a}.control-btn[data-v-d873f163]{background:transparent;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;color:#555;transition:color .2s,background .2s;border-radius:4px}.control-btn[data-v-d873f163]:hover{background:#0000000d;color:#000}.zoom-indicator[data-v-d873f163]{font-size:12px;color:#666;min-width:45px;text-align:center;font-weight:500}.mermaid-diagram[data-v-d873f163]{position:relative;overflow:hidden;padding:1em;cursor:grab;-webkit-user-select:none;user-select:none}.mermaid-diagram.is-dragging[data-v-d873f163]{cursor:grabbing}.mermaid-diagram.is-fullscreen[data-v-d873f163]{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:9999;background:var(--mermaid-bg, #f9f9f9);margin:0;border-radius:0;display:flex;align-items:center;justify-content:center}.mermaid-diagram-content[data-v-d873f163]{display:flex;justify-content:center;align-items:flex-start;width:100%}.mermaid-diagram.is-fullscreen .mermaid-diagram-content[data-v-d873f163]{align-items:center;height:100%}.mermaid-diagram-content[data-v-d873f163] svg{display:block;height:auto;max-width:100%}.mermaid-error[data-v-d873f163]{color:#c00;background:#fff0f0;padding:1em;border-radius:4px;margin:1em}.mermaid-error pre[data-v-d873f163]{margin:.5em 0 0;font-size:.9em;white-space:pre-wrap}.theme-dark{background:#1e1e1ef2}.theme-dark{color:#bbb}.theme-dark{background:#ffffff1a;color:#fff}.theme-dark{color:#999}@media (prefers-color-scheme: dark){.mermaid-controls[data-v-d873f163],.mermaid-diagram.is-fullscreen[data-v-d873f163]{background:#1e1e1ef2}.control-btn[data-v-d873f163]{color:#bbb}.control-btn[data-v-d873f163]:hover{background:#ffffff1a;color:#fff}.zoom-indicator[data-v-d873f163]{color:#999}}.blinking-cursor[data-v-0d4d5123]{display:inline-block;animation:blink-0d4d5123 1.2s ease-in-out infinite;vertical-align:text-bottom;margin-left:2px}.cursor-square[data-v-0d4d5123]{width:8px;height:1.2em}.cursor-line[data-v-0d4d5123]{width:2px;height:1.2em}.cursor-circle[data-v-0d4d5123]{width:8px;height:8px;border-radius:50%;vertical-align:baseline}@keyframes blink-0d4d5123{0%,to{opacity:1}50%{opacity:.2}}.mio-image-viewer[data-v-d5ba096a]{display:inline-block;max-width:100%;height:auto}/*!
1
+ code[class*=language-],pre[class*=language-]{color:#ccc;background:none;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#2d2d2d}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.comment,.token.block-comment,.token.prolog,.token.doctype,.token.cdata{color:#999}.token.punctuation{color:#ccc}.token.tag,.token.attr-name,.token.namespace,.token.deleted{color:#e2777a}.token.function-name{color:#6196cc}.token.boolean,.token.number,.token.function{color:#f08d49}.token.property,.token.class-name,.token.constant,.token.symbol{color:#f8c555}.token.selector,.token.important,.token.atrule,.token.keyword,.token.builtin{color:#cc99cd}.token.string,.token.char,.token.attr-value,.token.regex,.token.variable{color:#7ec699}.token.operator,.token.entity,.token.url{color:#67cdcc}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.token.inserted{color:green}.code-block-wrapper[data-v-5a9f6db9]{margin:1.5em 0;background:#262733;border-radius:8px;overflow:hidden;box-shadow:0 2px 6px #6e7d8c12;border:1px solid #222229;position:relative}.code-block-tooltip[data-v-5a9f6db9]{position:fixed;transform:translate(-50%,-100%);margin-top:-8px;background:#000000e6;color:#fff;padding:6px 12px;border-radius:4px;font-size:13px;white-space:nowrap;pointer-events:none;z-index:10000;animation:tooltipFadeIn-5a9f6db9 .2s ease;box-shadow:0 2px 8px #0000004d}.code-block-tooltip[data-v-5a9f6db9]:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#000000e6}@keyframes tooltipFadeIn-5a9f6db9{0%{opacity:0;transform:translate(-50%,calc(-100% - 5px))}to{opacity:1;transform:translate(-50%,-100%)}}.code-block-header[data-v-5a9f6db9]{display:flex;justify-content:space-between;align-items:center;background:#2d2f3a;padding:.35rem .85rem;border-bottom:1px solid #23242d}.lang-label[data-v-5a9f6db9]{color:#a3b0d0;font-size:.89em;font-weight:600;letter-spacing:1px;-webkit-user-select:none;user-select:none}.op-btn-group[data-v-5a9f6db9]{display:flex;gap:.4rem}.op-btn-group button[data-v-5a9f6db9]{border:none;outline:none;background:transparent;color:#8fa3c1;cursor:pointer;border-radius:3px;padding:.21em;transition:color .18s,background .22s;line-height:1;display:flex;align-items:center;font-size:1.02rem;opacity:.85}.op-btn-group button[data-v-5a9f6db9]:hover:not(:disabled){background:#ecf6ff1a}.op-btn-group button[data-v-5a9f6db9]:disabled{cursor:not-allowed;opacity:.5}.copy-code-button[data-v-5a9f6db9]{color:#8fa3c1}.publish-html-button[data-v-5a9f6db9]{color:#10b981}.preview-html-button[data-v-5a9f6db9]{color:#3486ff}.close-preview-button[data-v-5a9f6db9]{color:#ff5d5b;background:#fae8e410}.fullscreen-button[data-v-5a9f6db9]{color:#8b5cf6}.exit-fullscreen-button[data-v-5a9f6db9]{color:#f59e0b}pre[data-v-5a9f6db9],code[data-v-5a9f6db9]{background:transparent;border-radius:0;font-family:JetBrains Mono,Fira Code,Consolas,Menlo,Monaco,monospace;font-size:.92em;line-height:1.6;color:#ddd}pre[data-v-5a9f6db9]{margin:0;padding:1rem;overflow-x:auto;background:#1e1e2e}pre[data-v-5a9f6db9]::-webkit-scrollbar{height:8px;background:transparent}pre[data-v-5a9f6db9]::-webkit-scrollbar-thumb{background-color:#8889;border-radius:4px}pre[data-v-5a9f6db9]::-webkit-scrollbar-thumb:hover{background-color:#888888e6}.iframe-wrapper[data-v-5a9f6db9]{width:100%;overflow:hidden;display:block;position:relative;border:1px solid #ddd;background:#fff;transition:height .1s ease-out}.html-preview-iframe[data-v-5a9f6db9]{width:100%;height:100%;border:none;background:#fff;display:block}.code-block-wrapper.fullscreen[data-v-5a9f6db9]{position:fixed;inset:0;width:100vw;height:100vh;z-index:9999;margin:0;border-radius:0;display:flex;flex-direction:column}.code-block-wrapper.fullscreen .code-block-header[data-v-5a9f6db9]{flex-shrink:0}.code-block-wrapper.fullscreen pre[data-v-5a9f6db9]{flex:1;overflow:auto;max-height:none}.code-block-wrapper.fullscreen .iframe-wrapper[data-v-5a9f6db9]{flex:1;height:auto!important;border:none}.code-block-wrapper.fullscreen .html-preview-iframe[data-v-5a9f6db9]{height:100%}.code-block-wrapper.code-block-wrapper pre{background-color:#1e1e2e!important;background:#1e1e2e!important}.code-block-wrapper.code-block-wrapper code{background:transparent!important}.code-block-wrapper pre[class*=language-]{background-color:#1e1e2e!important;background:#1e1e2e!important}.code-block-wrapper code[class*=language-]{background:transparent!important;background-color:transparent!important}.code-block-wrapper pre,.code-block-wrapper pre code,.code-block-wrapper pre[class*=language-],.code-block-wrapper code[class*=language-],.markdown-body .code-block-wrapper pre,.markdown-body .code-block-wrapper pre[class*=language-]{background-color:#1e1e2e!important;background:#1e1e2e!important}.mermaid-diagram-wrapper[data-v-d873f163]{margin:1em 0;background:var(--mermaid-bg, #f9f9f9);border-radius:8px;border:1px solid var(--mermaid-border, #e0e0e0);position:relative}.mermaid-controls[data-v-d873f163]{position:absolute;top:8px;right:8px;z-index:10;display:flex;gap:8px;align-items:center;background:#ffffffe6;padding:4px 8px;border-radius:6px;box-shadow:0 2px 8px #0000001a}.control-btn[data-v-d873f163]{background:transparent;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;color:#555;transition:color .2s,background .2s;border-radius:4px}.control-btn[data-v-d873f163]:hover{background:#0000000d;color:#000}.zoom-indicator[data-v-d873f163]{font-size:12px;color:#666;min-width:45px;text-align:center;font-weight:500}.mermaid-diagram[data-v-d873f163]{position:relative;overflow:hidden;padding:1em;cursor:grab;-webkit-user-select:none;user-select:none}.mermaid-diagram.is-dragging[data-v-d873f163]{cursor:grabbing}.mermaid-diagram.is-fullscreen[data-v-d873f163]{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:9999;background:var(--mermaid-bg, #f9f9f9);margin:0;border-radius:0;display:flex;align-items:center;justify-content:center}.mermaid-diagram-content[data-v-d873f163]{display:flex;justify-content:center;align-items:flex-start;width:100%}.mermaid-diagram.is-fullscreen .mermaid-diagram-content[data-v-d873f163]{align-items:center;height:100%}.mermaid-diagram-content[data-v-d873f163] svg{display:block;height:auto;max-width:100%}.mermaid-error[data-v-d873f163]{color:#c00;background:#fff0f0;padding:1em;border-radius:4px;margin:1em}.mermaid-error pre[data-v-d873f163]{margin:.5em 0 0;font-size:.9em;white-space:pre-wrap}.theme-dark{background:#1e1e1ef2}.theme-dark{color:#bbb}.theme-dark{background:#ffffff1a;color:#fff}.theme-dark{color:#999}@media (prefers-color-scheme: dark){.mermaid-controls[data-v-d873f163],.mermaid-diagram.is-fullscreen[data-v-d873f163]{background:#1e1e1ef2}.control-btn[data-v-d873f163]{color:#bbb}.control-btn[data-v-d873f163]:hover{background:#ffffff1a;color:#fff}.zoom-indicator[data-v-d873f163]{color:#999}}.blinking-cursor[data-v-0d4d5123]{display:inline-block;animation:blink-0d4d5123 1.2s ease-in-out infinite;vertical-align:text-bottom;margin-left:2px}.cursor-square[data-v-0d4d5123]{width:8px;height:1.2em}.cursor-line[data-v-0d4d5123]{width:2px;height:1.2em}.cursor-circle[data-v-0d4d5123]{width:8px;height:8px;border-radius:50%;vertical-align:baseline}@keyframes blink-0d4d5123{0%,to{opacity:1}50%{opacity:.2}}.mio-image-viewer[data-v-768757af]{display:inline-block;max-width:100%;height:auto}/*!
2
2
  * Viewer.js v1.11.7
3
3
  * https://fengyuanchen.github.io/viewerjs
4
4
  *
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("../viewer-Canph5Zx.cjs"),t=require("vue"),m=["src","alt","title","data-original","data-index","crossorigin"],f=t.defineComponent({__name:"ImageViewer",props:{src:{},alt:{default:""},title:{default:""},index:{default:0},context:{}},setup(i){const n=i,r=t.ref(null),e=t.inject("imageViewerManager",null),g={cursor:"pointer",maxWidth:"100%",height:"auto"},d=t.computed(()=>{const a=n.context?.images||[];if(n.src&&a.length>0){const s=a.findIndex(u=>u.src===n.src);return s!==-1?s:0}return 0}),l=t.computed(()=>n.src.startsWith("http")&&!n.src.includes(window.location.host));t.onMounted(()=>{e&&r.value&&e.registerImage(r.value)}),t.onUnmounted(()=>{e&&r.value&&e.unregisterImage(r.value)});function o(){e&&e.show(d.value)}return(a,s)=>(t.openBlock(),t.createElementBlock("img",{ref_key:"imgRef",ref:r,src:i.src,alt:i.alt,title:i.title,"data-original":i.src,"data-index":i.index,class:"mio-image-viewer",crossorigin:l.value?"anonymous":void 0,style:g,onClick:o},null,8,m))}}),x=c._export_sfc(f,[["__scopeId","data-v-d5ba096a"]]);function h(i){const{priority:n=50,viewerOptions:r={}}=i||{};return{name:"imageViewer",priority:n,test:e=>e.type==="tag"&&e.name==="img",render:(e,g,d,l)=>{const o=l?.images||[];let a=0;if(e.attribs?.src&&o.length>0){const s=o.findIndex(u=>u.src===e.attribs?.src);s!==-1&&(a=s)}return t.h(x,{src:e.attribs?.src||"",alt:e.attribs?.alt||"",title:e.attribs?.title||"",index:a,viewerOptions:r,context:l})}}}exports.codeBlockPlugin=c.codeBlockPlugin;exports.cursorPlugin=c.cursorPlugin;exports.emojiPlugin=c.emojiPlugin;exports.mermaidPlugin=c.mermaidPlugin;exports.imageViewerPlugin=h;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("../viewer-Canph5Zx.cjs"),t=require("vue"),f=["src","alt","title","data-original","data-index","crossorigin"],h=t.defineComponent({__name:"ImageViewer",props:{src:{},alt:{default:""},title:{default:""},index:{default:0},crossOrigin:{type:Boolean,default:!1},context:{}},setup(i){const r=i,a=t.ref(null),n=t.inject("imageViewerManager",null),e={cursor:"pointer",maxWidth:"100%",height:"auto"},g=t.computed(()=>{const s=r.context?.images||[];if(r.src&&s.length>0){const c=s.findIndex(u=>u.src===r.src);return c!==-1?c:0}return 0}),d=t.computed(()=>r.crossOrigin?r.src.startsWith("http")&&!r.src.includes(window.location.host):!1);t.onMounted(()=>{n&&a.value&&n.registerImage(a.value)}),t.onUnmounted(()=>{n&&a.value&&n.unregisterImage(a.value)});function o(){n&&n.show(g.value)}return(s,c)=>(t.openBlock(),t.createElementBlock("img",{ref_key:"imgRef",ref:a,src:i.src,alt:i.alt,title:i.title,"data-original":i.src,"data-index":i.index,class:"mio-image-viewer",crossorigin:d.value?"anonymous":void 0,style:e,onClick:o},null,8,f))}}),x=l._export_sfc(h,[["__scopeId","data-v-768757af"]]);function v(i){const{priority:r=50,viewerOptions:a={},crossOrigin:n=!1}=i||{};return{name:"imageViewer",priority:r,test:e=>e.type==="tag"&&e.name==="img",render:(e,g,d,o)=>{const s=o?.images||[];let c=0;if(e.attribs?.src&&s.length>0){const u=s.findIndex(m=>m.src===e.attribs?.src);u!==-1&&(c=u)}return t.h(x,{src:e.attribs?.src||"",alt:e.attribs?.alt||"",title:e.attribs?.title||"",index:c,viewerOptions:a,crossOrigin:n,context:o})}}}exports.codeBlockPlugin=l.codeBlockPlugin;exports.cursorPlugin=l.cursorPlugin;exports.emojiPlugin=l.emojiPlugin;exports.mermaidPlugin=l.mermaidPlugin;exports.imageViewerPlugin=v;
@@ -1,82 +1,85 @@
1
- import { aF as g } from "../viewer-CZUSHxhf.js";
2
- import { aG as M, aJ as j, aH as E, aI as R } from "../viewer-CZUSHxhf.js";
3
- import { defineComponent as d, ref as f, inject as x, computed as m, onMounted as h, onUnmounted as v, createElementBlock as w, openBlock as I, h as p } from "vue";
4
- const b = ["src", "alt", "title", "data-original", "data-index", "crossorigin"], k = /* @__PURE__ */ d({
1
+ import { aF as d } from "../viewer-CZUSHxhf.js";
2
+ import { aG as M, aJ as R, aH as j, aI as S } from "../viewer-CZUSHxhf.js";
3
+ import { defineComponent as f, ref as x, inject as h, computed as g, onMounted as v, onUnmounted as w, createElementBlock as p, openBlock as I, h as y } from "vue";
4
+ const k = ["src", "alt", "title", "data-original", "data-index", "crossorigin"], b = /* @__PURE__ */ f({
5
5
  __name: "ImageViewer",
6
6
  props: {
7
7
  src: {},
8
8
  alt: { default: "" },
9
9
  title: { default: "" },
10
10
  index: { default: 0 },
11
+ crossOrigin: { type: Boolean, default: !1 },
11
12
  context: {}
12
13
  },
13
14
  setup(t) {
14
- const i = t, r = f(null), e = x("imageViewerManager", null), l = {
15
+ const i = t, n = x(null), r = h("imageViewerManager", null), e = {
15
16
  cursor: "pointer",
16
17
  maxWidth: "100%",
17
18
  height: "auto"
18
- }, u = m(() => {
19
- const n = i.context?.images || [];
20
- if (i.src && n.length > 0) {
21
- const a = n.findIndex((o) => o.src === i.src);
22
- return a !== -1 ? a : 0;
19
+ }, l = g(() => {
20
+ const a = i.context?.images || [];
21
+ if (i.src && a.length > 0) {
22
+ const s = a.findIndex((c) => c.src === i.src);
23
+ return s !== -1 ? s : 0;
23
24
  }
24
25
  return 0;
25
- }), s = m(() => i.src.startsWith("http") && !i.src.includes(window.location.host));
26
- h(() => {
27
- e && r.value && e.registerImage(r.value);
28
- }), v(() => {
29
- e && r.value && e.unregisterImage(r.value);
26
+ }), u = g(() => i.crossOrigin ? i.src.startsWith("http") && !i.src.includes(window.location.host) : !1);
27
+ v(() => {
28
+ r && n.value && r.registerImage(n.value);
29
+ }), w(() => {
30
+ r && n.value && r.unregisterImage(n.value);
30
31
  });
31
- function c() {
32
- e && e.show(u.value);
32
+ function o() {
33
+ r && r.show(l.value);
33
34
  }
34
- return (n, a) => (I(), w("img", {
35
+ return (a, s) => (I(), p("img", {
35
36
  ref_key: "imgRef",
36
- ref: r,
37
+ ref: n,
37
38
  src: t.src,
38
39
  alt: t.alt,
39
40
  title: t.title,
40
41
  "data-original": t.src,
41
42
  "data-index": t.index,
42
43
  class: "mio-image-viewer",
43
- crossorigin: s.value ? "anonymous" : void 0,
44
- style: l,
45
- onClick: c
46
- }, null, 8, b));
44
+ crossorigin: u.value ? "anonymous" : void 0,
45
+ style: e,
46
+ onClick: o
47
+ }, null, 8, k));
47
48
  }
48
- }), y = /* @__PURE__ */ g(k, [["__scopeId", "data-v-d5ba096a"]]);
49
- function _(t) {
49
+ }), C = /* @__PURE__ */ d(b, [["__scopeId", "data-v-768757af"]]);
50
+ function V(t) {
50
51
  const {
51
52
  priority: i = 50,
52
- viewerOptions: r = {}
53
+ viewerOptions: n = {},
54
+ crossOrigin: r = !1
53
55
  } = t || {};
54
56
  return {
55
57
  name: "imageViewer",
56
58
  priority: i,
57
59
  test: (e) => e.type === "tag" && e.name === "img",
58
- render: (e, l, u, s) => {
59
- const c = s?.images || [];
60
- let n = 0;
61
- if (e.attribs?.src && c.length > 0) {
62
- const a = c.findIndex((o) => o.src === e.attribs?.src);
63
- a !== -1 && (n = a);
60
+ render: (e, l, u, o) => {
61
+ const a = o?.images || [];
62
+ let s = 0;
63
+ if (e.attribs?.src && a.length > 0) {
64
+ const c = a.findIndex((m) => m.src === e.attribs?.src);
65
+ c !== -1 && (s = c);
64
66
  }
65
- return p(y, {
67
+ return y(C, {
66
68
  src: e.attribs?.src || "",
67
69
  alt: e.attribs?.alt || "",
68
70
  title: e.attribs?.title || "",
69
- index: n,
70
- viewerOptions: r,
71
- context: s
71
+ index: s,
72
+ viewerOptions: n,
73
+ crossOrigin: r,
74
+ context: o
72
75
  });
73
76
  }
74
77
  };
75
78
  }
76
79
  export {
77
80
  M as codeBlockPlugin,
78
- j as cursorPlugin,
79
- E as emojiPlugin,
80
- _ as imageViewerPlugin,
81
- R as mermaidPlugin
81
+ R as cursorPlugin,
82
+ j as emojiPlugin,
83
+ V as imageViewerPlugin,
84
+ S as mermaidPlugin
82
85
  };
@@ -13,6 +13,11 @@ export interface ImageViewerPluginOptions {
13
13
  * @see https://github.com/fengyuanchen/viewerjs#options
14
14
  */
15
15
  viewerOptions?: any;
16
+ /**
17
+ * 是否开启跨域支持(默认 false)
18
+ * 如果开启,外部图片将添加 crossorigin="anonymous" 属性
19
+ */
20
+ crossOrigin?: boolean;
16
21
  }
17
22
  /**
18
23
  * imageViewerPlugin - 图片预览插件
@@ -31,6 +36,7 @@ export interface ImageViewerPluginOptions {
31
36
  * @param options - 插件配置选项
32
37
  * @param options.priority - 优先级(默认 50)
33
38
  * @param options.viewerOptions - Viewer.js 配置选项
39
+ * @param options.crossOrigin - 是否开启跨域支持(默认 false)
34
40
  * @returns CustomPlugin
35
41
  *
36
42
  * @example
@@ -48,7 +54,8 @@ export interface ImageViewerPluginOptions {
48
54
  * title: true,
49
55
  * button: true,
50
56
  * loop: false
51
- * }
57
+ * },
58
+ * crossOrigin: true
52
59
  * }
53
60
  * }
54
61
  * ```
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mio-previewer",
3
- "version": "0.2.72",
3
+ "version": "0.2.73",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "engines": {