@opendesign-plus-test/components 0.0.1-rc.160 → 0.0.1-rc.161
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/chunk-OElCookieNotice.cjs.js +1 -1
- package/dist/chunk-OElCookieNotice.es.js +73 -73
- package/dist/components/activity/OActivityApproval.vue.d.ts +169 -19
- package/dist/components/activity/OActivityForm.vue.d.ts +169 -19
- package/dist/components/activity/OActivityMyCalendar.vue.d.ts +18 -10
- package/dist/components/activity/index.d.ts +356 -52
- package/dist/components/banner/index.d.ts +6 -6
- package/dist/components/events/index.d.ts +20 -20
- package/dist/components/footer/index.d.ts +3 -3
- package/dist/components/header/OHeaderMobile.vue.d.ts +8 -8
- package/dist/components/header/components/HeaderNavMobile.vue.d.ts +1 -1
- package/dist/components/header/index.d.ts +28 -28
- package/dist/components/header-language-switcher/OHeaderLanguageSwitcher.vue.d.ts +1 -1
- package/dist/components/header-language-switcher/index.d.ts +3 -3
- package/dist/components/header-search/OHeaderSearch.vue.d.ts +43 -35
- package/dist/components/header-search/index.d.ts +37 -33
- package/dist/components/logo-swiper/index.d.ts +11 -11
- package/dist/components/markdown/OMarkdown.vue.d.ts +34 -0
- package/dist/components/markdown/components/MarkdownCode.vue.d.ts +7 -0
- package/dist/components/markdown/components/MarkdownImage.vue.d.ts +8 -0
- package/dist/components/markdown/components/MarkdownPageTitle.vue.d.ts +11 -0
- package/dist/components/markdown/components/MarkdownTable.vue.d.ts +5 -0
- package/dist/components/markdown/components/MarkdownTableData.vue.d.ts +11 -0
- package/dist/components/markdown/components/MarkdownTableExpand.vue.d.ts +12 -0
- package/dist/components/markdown/components/MarkdownTitle.vue.d.ts +12 -0
- package/dist/components/markdown/index.d.ts +59 -0
- package/dist/components/markdown/replacer/code.d.ts +2 -0
- package/dist/components/markdown/replacer/h1.d.ts +2 -0
- package/dist/components/markdown/replacer/h2.d.ts +2 -0
- package/dist/components/markdown/replacer/img.d.ts +2 -0
- package/dist/components/markdown/replacer/table.d.ts +2 -0
- package/dist/components/meeting/OMeetingForm.vue.d.ts +169 -19
- package/dist/components/meeting/OMeetingMinutes.vue.d.ts +2 -348
- package/dist/components/meeting/OMeetingMyCalendar.vue.d.ts +18 -10
- package/dist/components/meeting/OMeetingPlayback.vue.d.ts +6 -6
- package/dist/components/meeting/components/OMeetingPlaybackVideo.vue.d.ts +1 -1
- package/dist/components/meeting/components/OMeetingSigAside.vue.d.ts +9 -5
- package/dist/components/meeting/composables/useMeetingConfig.d.ts +1 -1
- package/dist/components/meeting/index.d.ts +213 -232
- package/dist/components/meeting/types.d.ts +0 -1
- package/dist/components/meeting/utils.d.ts +1 -1
- package/dist/components/search/OSearchInput.vue.d.ts +43 -35
- package/dist/components/search/index.d.ts +35 -31
- package/dist/components/search/internal/SearchImageInput.vue.d.ts +37 -29
- package/dist/components/sig/OSigDetail.vue.d.ts +1 -1
- package/dist/components/sig/OSigList.vue.d.ts +0 -2
- package/dist/components/sig/types.d.ts +0 -1
- package/dist/components/video/index.d.ts +3 -3
- package/dist/components.cjs.js +40 -40
- package/dist/components.css +1 -1
- package/dist/components.es.js +13536 -13296
- package/dist/index.d.ts +1 -1
- package/dist/treeshaking/_virtual/icon-copy2.mjs +20 -0
- package/dist/treeshaking/_virtual/icon-expand.mjs +21 -0
- package/dist/treeshaking/_virtual/icon-link.mjs +31 -0
- package/dist/treeshaking/_virtual/icon-more.mjs +19 -0
- package/dist/treeshaking/_virtual/icon-unexpand.mjs +22 -0
- package/dist/treeshaking/assets/markdown/md-title-bg.png.mjs +4 -0
- package/dist/treeshaking/assets/svg-icons/icon-zoom.svg.mjs +4 -0
- package/dist/treeshaking/components/activity/OActivityApproval.css +11 -8
- package/dist/treeshaking/components/activity/OActivityApproval.vue.d.ts +169 -19
- package/dist/treeshaking/components/activity/OActivityForm.vue.d.ts +169 -19
- package/dist/treeshaking/components/activity/OActivityMyCalendar.css +74 -71
- package/dist/treeshaking/components/activity/OActivityMyCalendar.vue.d.ts +18 -10
- package/dist/treeshaking/components/activity/OActivityMyCalendar.vue.mjs +33 -35
- package/dist/treeshaking/components/activity/index.d.ts +356 -52
- package/dist/treeshaking/components/banner/index.d.ts +6 -6
- package/dist/treeshaking/components/events/index.d.ts +20 -20
- package/dist/treeshaking/components/footer/index.d.ts +3 -3
- package/dist/treeshaking/components/header/OHeaderMobile.vue.d.ts +8 -8
- package/dist/treeshaking/components/header/components/HeaderFlatten.css +55 -60
- package/dist/treeshaking/components/header/components/HeaderFlatten.vue.mjs +1 -1
- package/dist/treeshaking/components/header/components/HeaderNavMobile.vue.d.ts +1 -1
- package/dist/treeshaking/components/header/index.d.ts +28 -28
- package/dist/treeshaking/components/header-language-switcher/OHeaderLanguageSwitcher.vue.d.ts +1 -1
- package/dist/treeshaking/components/header-language-switcher/index.d.ts +3 -3
- package/dist/treeshaking/components/header-search/OHeaderSearch.vue.d.ts +43 -35
- package/dist/treeshaking/components/header-search/index.d.ts +37 -33
- package/dist/treeshaking/components/logo-swiper/index.d.ts +11 -11
- package/dist/treeshaking/components/markdown/OMarkdown.css +1114 -0
- package/dist/treeshaking/components/markdown/OMarkdown.vue.d.ts +34 -0
- package/dist/treeshaking/components/markdown/OMarkdown.vue.mjs +8 -0
- package/dist/treeshaking/components/markdown/OMarkdown.vue2.mjs +137 -0
- package/dist/treeshaking/components/markdown/OMarkdown2.css +14 -0
- package/dist/treeshaking/components/markdown/components/MarkdownCode.css +119 -0
- package/dist/treeshaking/components/markdown/components/MarkdownCode.vue.d.ts +7 -0
- package/dist/treeshaking/components/markdown/components/MarkdownCode.vue.mjs +7 -0
- package/dist/treeshaking/components/markdown/components/MarkdownCode.vue2.mjs +121 -0
- package/dist/treeshaking/components/markdown/components/MarkdownImage.css +48 -0
- package/dist/treeshaking/components/markdown/components/MarkdownImage.vue.d.ts +8 -0
- package/dist/treeshaking/components/markdown/components/MarkdownImage.vue.mjs +7 -0
- package/dist/treeshaking/components/markdown/components/MarkdownImage.vue2.mjs +73 -0
- package/dist/treeshaking/components/markdown/components/MarkdownPageTitle.css +230 -0
- package/dist/treeshaking/components/markdown/components/MarkdownPageTitle.vue.d.ts +11 -0
- package/dist/treeshaking/components/markdown/components/MarkdownPageTitle.vue.mjs +7 -0
- package/dist/treeshaking/components/markdown/components/MarkdownPageTitle.vue2.mjs +132 -0
- package/dist/treeshaking/components/markdown/components/MarkdownTable.css +61 -0
- package/dist/treeshaking/components/markdown/components/MarkdownTable.vue.d.ts +5 -0
- package/dist/treeshaking/components/markdown/components/MarkdownTable.vue.mjs +7 -0
- package/dist/treeshaking/components/markdown/components/MarkdownTable.vue2.mjs +59 -0
- package/dist/treeshaking/components/markdown/components/MarkdownTableData.css +107 -0
- package/dist/treeshaking/components/markdown/components/MarkdownTableData.vue.d.ts +11 -0
- package/dist/treeshaking/components/markdown/components/MarkdownTableData.vue.mjs +7 -0
- package/dist/treeshaking/components/markdown/components/MarkdownTableData.vue2.mjs +176 -0
- package/dist/treeshaking/components/markdown/components/MarkdownTableExpand.css +66 -0
- package/dist/treeshaking/components/markdown/components/MarkdownTableExpand.vue.d.ts +12 -0
- package/dist/treeshaking/components/markdown/components/MarkdownTableExpand.vue.mjs +7 -0
- package/dist/treeshaking/components/markdown/components/MarkdownTableExpand.vue2.mjs +83 -0
- package/dist/treeshaking/components/markdown/components/MarkdownTitle.css +173 -0
- package/dist/treeshaking/components/markdown/components/MarkdownTitle.vue.d.ts +12 -0
- package/dist/treeshaking/components/markdown/components/MarkdownTitle.vue.mjs +7 -0
- package/dist/treeshaking/components/markdown/components/MarkdownTitle.vue2.mjs +65 -0
- package/dist/treeshaking/components/markdown/index.d.ts +59 -0
- package/dist/treeshaking/components/markdown/index.mjs +9 -0
- package/dist/treeshaking/components/markdown/replacer/code.d.ts +2 -0
- package/dist/treeshaking/components/markdown/replacer/code.mjs +22 -0
- package/dist/treeshaking/components/markdown/replacer/h1.d.ts +2 -0
- package/dist/treeshaking/components/markdown/replacer/h1.mjs +22 -0
- package/dist/treeshaking/components/markdown/replacer/h2.d.ts +2 -0
- package/dist/treeshaking/components/markdown/replacer/h2.mjs +22 -0
- package/dist/treeshaking/components/markdown/replacer/img.d.ts +2 -0
- package/dist/treeshaking/components/markdown/replacer/img.mjs +22 -0
- package/dist/treeshaking/components/markdown/replacer/table.d.ts +2 -0
- package/dist/treeshaking/components/markdown/replacer/table.mjs +22 -0
- package/dist/treeshaking/components/meeting/OMeetingCalendar.vue.mjs +2 -16
- package/dist/treeshaking/components/meeting/OMeetingForm.vue.d.ts +169 -19
- package/dist/treeshaking/components/meeting/OMeetingMinutes.css +223 -201
- package/dist/treeshaking/components/meeting/OMeetingMinutes.vue.d.ts +2 -348
- package/dist/treeshaking/components/meeting/OMeetingMinutes.vue.mjs +6 -392
- package/dist/treeshaking/components/meeting/OMeetingMinutes.vue2.mjs +356 -0
- package/dist/treeshaking/components/meeting/OMeetingMinutes2.css +11 -0
- package/dist/treeshaking/components/meeting/OMeetingMyCalendar.vue.d.ts +18 -10
- package/dist/treeshaking/components/meeting/OMeetingPlayback.vue.d.ts +6 -6
- package/dist/treeshaking/components/meeting/components/OMeetingPlaybackVideo.vue.d.ts +1 -1
- package/dist/treeshaking/components/meeting/components/OMeetingSendMinutesDialog.css +53 -53
- package/dist/treeshaking/components/meeting/components/OMeetingSendMinutesDialog.vue.mjs +1 -1
- package/dist/treeshaking/components/meeting/components/OMeetingSigAside.vue.d.ts +9 -5
- package/dist/treeshaking/components/meeting/composables/useMeetingConfig.d.ts +1 -1
- package/dist/treeshaking/components/meeting/index.d.ts +213 -232
- package/dist/treeshaking/components/meeting/index.mjs +12 -13
- package/dist/treeshaking/components/meeting/types.d.ts +0 -1
- package/dist/treeshaking/components/meeting/utils.d.ts +1 -1
- package/dist/treeshaking/components/search/OSearchInput.vue.d.ts +43 -35
- package/dist/treeshaking/components/search/index.d.ts +35 -31
- package/dist/treeshaking/components/search/internal/SearchImageInput.vue.d.ts +37 -29
- package/dist/treeshaking/components/sig/OSigDetail.css +1 -1
- package/dist/treeshaking/components/sig/OSigDetail.vue.d.ts +1 -1
- package/dist/treeshaking/components/sig/OSigList.css +130 -152
- package/dist/treeshaking/components/sig/OSigList.vue.d.ts +0 -2
- package/dist/treeshaking/components/sig/OSigList.vue.mjs +99 -107
- package/dist/treeshaking/components/sig/components/OSigItem.css +366 -30
- package/dist/treeshaking/components/sig/components/OSigRepo.vue.mjs +5 -6
- package/dist/treeshaking/components/sig/types.d.ts +0 -1
- package/dist/treeshaking/components/video/OVideoDetail.css +7 -7
- package/dist/treeshaking/components/video/index.d.ts +3 -3
- package/dist/treeshaking/i18n/en.mjs +8 -8
- package/dist/treeshaking/i18n/zh.mjs +8 -8
- package/dist/treeshaking/index.d.ts +1 -1
- package/dist/treeshaking/index.mjs +2 -5
- package/dist/treeshaking/shared/theme.mjs +15 -3
- package/package.json +2 -2
- package/dist/components/sig/index.d.ts +0 -78
- package/dist/components/summit/OSummit.vue.d.ts +0 -7
- package/dist/components/summit/OSummitIntro.vue.d.ts +0 -3
- package/dist/components/summit/OSummitLive.vue.d.ts +0 -7
- package/dist/components/summit/OSummitSchedule.vue.d.ts +0 -3
- package/dist/components/summit/components/OSummitTabs.vue.d.ts +0 -16
- package/dist/components/summit/index.d.ts +0 -83
- package/dist/components/summit/types.d.ts +0 -69
- package/dist/treeshaking/_virtual/icon-time.mjs +0 -20
- package/dist/treeshaking/components/meeting/OMeetingMinutes.vue3.mjs +0 -5
- package/dist/treeshaking/components/sig/index.d.ts +0 -78
- package/dist/treeshaking/components/summit/OSummit.css +0 -13
- package/dist/treeshaking/components/summit/OSummit.vue.d.ts +0 -7
- package/dist/treeshaking/components/summit/OSummit.vue.mjs +0 -7
- package/dist/treeshaking/components/summit/OSummit.vue2.mjs +0 -49
- package/dist/treeshaking/components/summit/OSummitIntro.css +0 -27
- package/dist/treeshaking/components/summit/OSummitIntro.vue.d.ts +0 -3
- package/dist/treeshaking/components/summit/OSummitIntro.vue.mjs +0 -7
- package/dist/treeshaking/components/summit/OSummitIntro.vue2.mjs +0 -26
- package/dist/treeshaking/components/summit/OSummitLive.css +0 -103
- package/dist/treeshaking/components/summit/OSummitLive.vue.d.ts +0 -7
- package/dist/treeshaking/components/summit/OSummitLive.vue.mjs +0 -7
- package/dist/treeshaking/components/summit/OSummitLive.vue2.mjs +0 -135
- package/dist/treeshaking/components/summit/OSummitSchedule.css +0 -187
- package/dist/treeshaking/components/summit/OSummitSchedule.vue.d.ts +0 -3
- package/dist/treeshaking/components/summit/OSummitSchedule.vue.mjs +0 -8
- package/dist/treeshaking/components/summit/OSummitSchedule.vue2.mjs +0 -266
- package/dist/treeshaking/components/summit/OSummitSchedule2.css +0 -43
- package/dist/treeshaking/components/summit/components/OSummitTabs.css +0 -137
- package/dist/treeshaking/components/summit/components/OSummitTabs.vue.d.ts +0 -16
- package/dist/treeshaking/components/summit/components/OSummitTabs.vue.mjs +0 -7
- package/dist/treeshaking/components/summit/components/OSummitTabs.vue2.mjs +0 -155
- package/dist/treeshaking/components/summit/index.d.ts +0 -83
- package/dist/treeshaking/components/summit/index.mjs +0 -30
- package/dist/treeshaking/components/summit/types.d.ts +0 -69
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
disableH1?: boolean;
|
|
3
|
+
disableH2?: boolean;
|
|
4
|
+
disableTable?: boolean;
|
|
5
|
+
disableImg?: boolean;
|
|
6
|
+
disableCode?: boolean;
|
|
7
|
+
};
|
|
8
|
+
declare function __VLS_template(): {
|
|
9
|
+
attrs: Partial<{}>;
|
|
10
|
+
slots: {
|
|
11
|
+
default?(_: {}): any;
|
|
12
|
+
};
|
|
13
|
+
refs: {
|
|
14
|
+
markdownBodyRef: HTMLDivElement;
|
|
15
|
+
};
|
|
16
|
+
rootEl: HTMLDivElement;
|
|
17
|
+
};
|
|
18
|
+
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
|
19
|
+
declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
20
|
+
disableH1: boolean;
|
|
21
|
+
disableH2: boolean;
|
|
22
|
+
disableTable: boolean;
|
|
23
|
+
disableImg: boolean;
|
|
24
|
+
disableCode: boolean;
|
|
25
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
|
|
26
|
+
markdownBodyRef: HTMLDivElement;
|
|
27
|
+
}, HTMLDivElement>;
|
|
28
|
+
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
29
|
+
export default _default;
|
|
30
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
31
|
+
new (): {
|
|
32
|
+
$slots: S;
|
|
33
|
+
};
|
|
34
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import _sfc_main from "./OMarkdown.vue2.mjs";
|
|
2
|
+
import './OMarkdown.css';
|
|
3
|
+
import './OMarkdown2.css';
|
|
4
|
+
import _export_sfc from "../../_virtual/_plugin-vue_export-helper.mjs";
|
|
5
|
+
const _OMarkdown = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-81f7920f"]]);
|
|
6
|
+
export {
|
|
7
|
+
_OMarkdown as default
|
|
8
|
+
};
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import { defineComponent, getCurrentInstance, ref, computed, onMounted, nextTick, onBeforeUnmount, openBlock, createElementBlock, normalizeClass, createElementVNode, renderSlot } from "vue";
|
|
2
|
+
import { mountMarkdownPageTitle } from "./replacer/h1.mjs";
|
|
3
|
+
import { mountMarkdownTitle } from "./replacer/h2.mjs";
|
|
4
|
+
import { mountMarkdownTable } from "./replacer/table.mjs";
|
|
5
|
+
import { mountMarkdownImage } from "./replacer/img.mjs";
|
|
6
|
+
import { mountMarkdownCode } from "./replacer/code.mjs";
|
|
7
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
8
|
+
__name: "OMarkdown",
|
|
9
|
+
props: {
|
|
10
|
+
disableH1: { type: Boolean, default: false },
|
|
11
|
+
disableH2: { type: Boolean, default: false },
|
|
12
|
+
disableTable: { type: Boolean, default: false },
|
|
13
|
+
disableImg: { type: Boolean, default: false },
|
|
14
|
+
disableCode: { type: Boolean, default: false }
|
|
15
|
+
},
|
|
16
|
+
setup(__props) {
|
|
17
|
+
const props = __props;
|
|
18
|
+
const unbindMap = /* @__PURE__ */ new WeakMap();
|
|
19
|
+
const instance = getCurrentInstance();
|
|
20
|
+
const markdownBodyRef = ref();
|
|
21
|
+
const mounted = ref(false);
|
|
22
|
+
let observer;
|
|
23
|
+
let context;
|
|
24
|
+
const getContext = () => {
|
|
25
|
+
if (!context && instance) {
|
|
26
|
+
context = {
|
|
27
|
+
...instance.appContext,
|
|
28
|
+
provides: instance == null ? void 0 : instance.provides
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
return context || {};
|
|
32
|
+
};
|
|
33
|
+
const selectorMap = computed(() => {
|
|
34
|
+
const map = {};
|
|
35
|
+
if (!props.disableH1) {
|
|
36
|
+
map.h1 = mountMarkdownPageTitle;
|
|
37
|
+
}
|
|
38
|
+
if (!props.disableH2) {
|
|
39
|
+
map.h2 = mountMarkdownTitle;
|
|
40
|
+
}
|
|
41
|
+
if (!props.disableTable) {
|
|
42
|
+
map.table = mountMarkdownTable;
|
|
43
|
+
}
|
|
44
|
+
if (!props.disableImg) {
|
|
45
|
+
map.img = mountMarkdownImage;
|
|
46
|
+
}
|
|
47
|
+
if (!props.disableCode) {
|
|
48
|
+
map['div[class*="language-"]'] = mountMarkdownCode;
|
|
49
|
+
}
|
|
50
|
+
return map;
|
|
51
|
+
});
|
|
52
|
+
const mountComponent = (root, selector) => {
|
|
53
|
+
const fn = selectorMap.value[selector];
|
|
54
|
+
if (!fn) {
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
root.querySelectorAll(`${selector}:not([class*="o-"]):not([class*="el-"])`).forEach((el) => {
|
|
58
|
+
unbindMap.set(el, fn(el, getContext()));
|
|
59
|
+
});
|
|
60
|
+
};
|
|
61
|
+
const unmountComponent = (root, selector) => {
|
|
62
|
+
root.querySelectorAll(selector).forEach((el) => {
|
|
63
|
+
const unbind = unbindMap.get(el);
|
|
64
|
+
if (unbind) {
|
|
65
|
+
unbind();
|
|
66
|
+
unbindMap.delete(el);
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
};
|
|
70
|
+
const processMutations = (mutations) => {
|
|
71
|
+
const activeMap = selectorMap.value;
|
|
72
|
+
const selectors = Object.keys(activeMap);
|
|
73
|
+
for (const { addedNodes, removedNodes } of mutations) {
|
|
74
|
+
addedNodes.forEach((node) => {
|
|
75
|
+
if (!(node instanceof HTMLElement)) {
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
78
|
+
for (const selector of selectors) {
|
|
79
|
+
if (node.matches(selector)) {
|
|
80
|
+
unbindMap.set(node, activeMap[selector](node, getContext()));
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
selectors.forEach((selector) => {
|
|
85
|
+
mountComponent(node, selector);
|
|
86
|
+
});
|
|
87
|
+
});
|
|
88
|
+
removedNodes.forEach((node) => {
|
|
89
|
+
if (!(node instanceof HTMLElement)) {
|
|
90
|
+
return;
|
|
91
|
+
}
|
|
92
|
+
for (const selector of selectors) {
|
|
93
|
+
if (node.matches(selector)) {
|
|
94
|
+
const unbind = unbindMap.get(node);
|
|
95
|
+
if (unbind) {
|
|
96
|
+
unbind();
|
|
97
|
+
unbindMap.delete(node);
|
|
98
|
+
}
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
selectors.forEach((selector) => {
|
|
103
|
+
unmountComponent(node, selector);
|
|
104
|
+
});
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
};
|
|
108
|
+
onMounted(async () => {
|
|
109
|
+
await nextTick();
|
|
110
|
+
Object.keys(selectorMap.value).forEach((selector) => {
|
|
111
|
+
mountComponent(markdownBodyRef.value, selector);
|
|
112
|
+
});
|
|
113
|
+
mounted.value = true;
|
|
114
|
+
observer = new MutationObserver(processMutations);
|
|
115
|
+
observer.observe(markdownBodyRef.value, { childList: true, subtree: true });
|
|
116
|
+
});
|
|
117
|
+
onBeforeUnmount(() => {
|
|
118
|
+
observer == null ? void 0 : observer.disconnect();
|
|
119
|
+
});
|
|
120
|
+
return (_ctx, _cache) => {
|
|
121
|
+
return openBlock(), createElementBlock("div", {
|
|
122
|
+
class: normalizeClass(["o-markdown", { unmounted: !mounted.value }])
|
|
123
|
+
}, [
|
|
124
|
+
createElementVNode("div", {
|
|
125
|
+
ref_key: "markdownBodyRef",
|
|
126
|
+
ref: markdownBodyRef,
|
|
127
|
+
class: "markdown-body"
|
|
128
|
+
}, [
|
|
129
|
+
renderSlot(_ctx.$slots, "default", {}, void 0, true)
|
|
130
|
+
], 512)
|
|
131
|
+
], 2);
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
});
|
|
135
|
+
export {
|
|
136
|
+
_sfc_main as default
|
|
137
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
.hover-icon-rotate .o-icon[data-v-81f7920f] {
|
|
2
|
+
transition: all var(--o-duration-m1) var(--o-easing-standard-in);
|
|
3
|
+
}
|
|
4
|
+
@media (hover: hover) {
|
|
5
|
+
.hover-icon-rotate:hover .o-icon[data-v-81f7920f] {
|
|
6
|
+
transform: rotate(-180deg);
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
.o-markdown.unmounted[data-v-81f7920f] .markdown-body table {
|
|
10
|
+
display: block !important;
|
|
11
|
+
overflow: hidden !important;
|
|
12
|
+
max-height: calc(100vh - 210px) !important;
|
|
13
|
+
visibility: hidden;
|
|
14
|
+
}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
.hover-icon-rotate .o-icon[data-v-cf6e32ad] {
|
|
2
|
+
transition: all var(--o-duration-m1) var(--o-easing-standard-in);
|
|
3
|
+
}
|
|
4
|
+
@media (hover: hover) {
|
|
5
|
+
.hover-icon-rotate:hover .o-icon[data-v-cf6e32ad] {
|
|
6
|
+
transform: rotate(-180deg);
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
.o-md-code[data-v-cf6e32ad] {
|
|
10
|
+
position: relative;
|
|
11
|
+
margin-bottom: var(--o-gap-2, 8px);
|
|
12
|
+
}
|
|
13
|
+
.o-md-code[data-v-cf6e32ad] .o-scroller,
|
|
14
|
+
.o-md-code[data-v-cf6e32ad] .o-scroller-container,
|
|
15
|
+
.o-md-code[data-v-cf6e32ad] .o-scrollbar,
|
|
16
|
+
.o-md-code[data-v-cf6e32ad] .o-scrollbar-rail,
|
|
17
|
+
.o-md-code[data-v-cf6e32ad] .o-scrollbar-thumb,
|
|
18
|
+
.o-md-code[data-v-cf6e32ad] .o-scrollbar-track {
|
|
19
|
+
margin-bottom: 0;
|
|
20
|
+
}
|
|
21
|
+
.o-md-code[data-v-cf6e32ad] .o-scrollbar-x {
|
|
22
|
+
--scrollbar-height: 97%;
|
|
23
|
+
}
|
|
24
|
+
.o-md-code[data-v-cf6e32ad] .o-scroller-container * {
|
|
25
|
+
margin-bottom: 0;
|
|
26
|
+
}
|
|
27
|
+
.o-md-code[data-v-cf6e32ad] .o-scrollbar-thumb .o-scrollbar-x-thumb-bar {
|
|
28
|
+
margin-top: auto !important;
|
|
29
|
+
}
|
|
30
|
+
.o-md-code .o-md-code-tools[data-v-cf6e32ad] {
|
|
31
|
+
z-index: 3;
|
|
32
|
+
position: absolute;
|
|
33
|
+
display: flex;
|
|
34
|
+
justify-content: right;
|
|
35
|
+
align-self: center;
|
|
36
|
+
gap: 12px;
|
|
37
|
+
top: calc(var(--o-gap-3) + 2px);
|
|
38
|
+
right: 0;
|
|
39
|
+
padding-right: var(--o-gap-4);
|
|
40
|
+
color: var(--o-color-info2);
|
|
41
|
+
font-size: 16px;
|
|
42
|
+
background-color: #f6f7f8;
|
|
43
|
+
}
|
|
44
|
+
@media (max-width: 840px) {
|
|
45
|
+
.o-md-code .o-md-code-tools[data-v-cf6e32ad] {
|
|
46
|
+
top: var(--o-gap-3);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
.o-md-code .o-md-code-icon-theme[data-v-cf6e32ad],
|
|
50
|
+
.o-md-code .o-md-code-icon-copy[data-v-cf6e32ad] {
|
|
51
|
+
cursor: pointer;
|
|
52
|
+
}
|
|
53
|
+
@media (hover: hover) {
|
|
54
|
+
.o-md-code .o-md-code-icon-theme[data-v-cf6e32ad]:hover,
|
|
55
|
+
.o-md-code .o-md-code-icon-copy[data-v-cf6e32ad]:hover {
|
|
56
|
+
color: var(--o-color-info1);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
.o-md-code.is-light .o-md-code-icon-copy[data-v-cf6e32ad],
|
|
60
|
+
.o-md-code.is-light .o-md-code-icon-theme[data-v-cf6e32ad] {
|
|
61
|
+
color: rgba(0, 0, 0, 0.8);
|
|
62
|
+
}
|
|
63
|
+
@media (hover: hover) {
|
|
64
|
+
.o-md-code.is-light .o-md-code-icon-copy[data-v-cf6e32ad]:hover,
|
|
65
|
+
.o-md-code.is-light .o-md-code-icon-theme[data-v-cf6e32ad]:hover {
|
|
66
|
+
color: rgb(0, 0, 0);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
.o-md-code.is-dark .o-md-code-icon-copy[data-v-cf6e32ad],
|
|
70
|
+
.o-md-code.is-dark .o-md-code-icon-theme[data-v-cf6e32ad] {
|
|
71
|
+
color: rgba(255, 255, 255, 0.8);
|
|
72
|
+
}
|
|
73
|
+
@media (hover: hover) {
|
|
74
|
+
.o-md-code.is-dark .o-md-code-icon-copy[data-v-cf6e32ad]:hover,
|
|
75
|
+
.o-md-code.is-dark .o-md-code-icon-theme[data-v-cf6e32ad]:hover {
|
|
76
|
+
color: rgb(255, 255, 255);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
.o-md-code .markdown-body.is-light[data-v-cf6e32ad] {
|
|
80
|
+
--o-md-code-bg-color: #f6f7f8;
|
|
81
|
+
}
|
|
82
|
+
.o-md-code .markdown-body.is-light[data-v-cf6e32ad] code span {
|
|
83
|
+
color: var(--shiki-light, inherit) !important;
|
|
84
|
+
}
|
|
85
|
+
.o-md-code .markdown-body.is-dark[data-v-cf6e32ad] {
|
|
86
|
+
--o-md-code-bg-color: #282a2f;
|
|
87
|
+
}
|
|
88
|
+
.o-md-code .markdown-body.is-dark[data-v-cf6e32ad] code span {
|
|
89
|
+
color: var(--shiki-dark, inherit) !important;
|
|
90
|
+
}
|
|
91
|
+
.o-md-code .markdown-body.is-dark .o-md-code-icon-copy[data-v-cf6e32ad],
|
|
92
|
+
.o-md-code .markdown-body.is-dark .o-md-code-icon-theme[data-v-cf6e32ad] {
|
|
93
|
+
color: rgba(255, 255, 255, 0.8);
|
|
94
|
+
}
|
|
95
|
+
@media (hover: hover) {
|
|
96
|
+
.o-md-code .markdown-body.is-dark .o-md-code-icon-copy[data-v-cf6e32ad]:hover,
|
|
97
|
+
.o-md-code .markdown-body.is-dark .o-md-code-icon-theme[data-v-cf6e32ad]:hover {
|
|
98
|
+
color: rgb(255, 255, 255);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
.o-md-code .markdown-body[data-v-cf6e32ad] .copy {
|
|
102
|
+
display: none;
|
|
103
|
+
}
|
|
104
|
+
.o-md-code .markdown-body[data-v-cf6e32ad] pre {
|
|
105
|
+
overflow: visible !important;
|
|
106
|
+
overflow-x: visible !important;
|
|
107
|
+
background-color: transparent !important;
|
|
108
|
+
}
|
|
109
|
+
.o-md-code .markdown-body[data-v-cf6e32ad] pre code {
|
|
110
|
+
background-color: var(--o-md-code-bg-color);
|
|
111
|
+
}
|
|
112
|
+
@media (max-width: 840px) {
|
|
113
|
+
.o-md-code .markdown-body[data-v-cf6e32ad] pre code {
|
|
114
|
+
padding-top: 28px;
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
.o-md-code.is-dark .o-md-code-tools[data-v-cf6e32ad] {
|
|
118
|
+
background-color: #282a2f;
|
|
119
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
el: Element;
|
|
3
|
+
};
|
|
4
|
+
declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
|
|
5
|
+
mdCodeRef: HTMLDivElement;
|
|
6
|
+
}, HTMLDivElement>;
|
|
7
|
+
export default _default;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import _sfc_main from "./MarkdownCode.vue2.mjs";
|
|
2
|
+
import './MarkdownCode.css';
|
|
3
|
+
import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.mjs";
|
|
4
|
+
const MarkdownCode = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-cf6e32ad"]]);
|
|
5
|
+
export {
|
|
6
|
+
MarkdownCode as default
|
|
7
|
+
};
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import { defineComponent, computed, ref, openBlock, createElementBlock, normalizeClass, unref, createElementVNode, createBlock, withCtx, toDisplayString, createVNode, createCommentVNode, withDirectives } from "vue";
|
|
2
|
+
import { useMessage, OPopover, OIcon, OScroller } from "@opensig/opendesign";
|
|
3
|
+
import { buildVueDompurifyHTMLDirective } from "vue-dompurify-html";
|
|
4
|
+
import { useScreen, useClipboard } from "@opendesign-plus/composables";
|
|
5
|
+
import { useI18n } from "../../../i18n/index.mjs";
|
|
6
|
+
import { useTheme } from "../../../shared/theme.mjs";
|
|
7
|
+
import IconCopy from "../../../_virtual/icon-copy2.mjs";
|
|
8
|
+
import IconMoon from "../../../_virtual/icon-moon.mjs";
|
|
9
|
+
import IconSun from "../../../_virtual/icon-sun.mjs";
|
|
10
|
+
const _hoisted_1 = { class: "o-md-code-tools" };
|
|
11
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
12
|
+
__name: "MarkdownCode",
|
|
13
|
+
props: {
|
|
14
|
+
el: {}
|
|
15
|
+
},
|
|
16
|
+
setup(__props) {
|
|
17
|
+
const vDompurifyHtml = buildVueDompurifyHTMLDirective();
|
|
18
|
+
const message = useMessage();
|
|
19
|
+
const { t } = useI18n();
|
|
20
|
+
const { lePadV } = useScreen();
|
|
21
|
+
const { theme, codeTheme, toggleCodeTheme } = useTheme();
|
|
22
|
+
const isDark = computed(() => codeTheme.value === "dark");
|
|
23
|
+
const isHover = ref(false);
|
|
24
|
+
const mdCodeRef = ref();
|
|
25
|
+
const onClickCopy = async () => {
|
|
26
|
+
var _a;
|
|
27
|
+
const codeEl = (_a = mdCodeRef.value) == null ? void 0 : _a.querySelector("code");
|
|
28
|
+
const text = (codeEl == null ? void 0 : codeEl.textContent) || "";
|
|
29
|
+
if (await useClipboard(text)) {
|
|
30
|
+
message.success({
|
|
31
|
+
content: t("common.copySuccess")
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
const onClickChangeTheme = () => {
|
|
36
|
+
toggleCodeTheme();
|
|
37
|
+
};
|
|
38
|
+
return (_ctx, _cache) => {
|
|
39
|
+
return openBlock(), createElementBlock("div", {
|
|
40
|
+
ref_key: "mdCodeRef",
|
|
41
|
+
ref: mdCodeRef,
|
|
42
|
+
class: normalizeClass(["o-md-code", {
|
|
43
|
+
"is-dark": isDark.value && unref(codeTheme) != unref(theme),
|
|
44
|
+
"is-light": !isDark.value && unref(codeTheme) != unref(theme)
|
|
45
|
+
}]),
|
|
46
|
+
onMouseenter: _cache[0] || (_cache[0] = ($event) => isHover.value = true),
|
|
47
|
+
onMouseleave: _cache[1] || (_cache[1] = ($event) => isHover.value = false)
|
|
48
|
+
}, [
|
|
49
|
+
createElementVNode("div", _hoisted_1, [
|
|
50
|
+
unref(lePadV) || isHover.value ? (openBlock(), createBlock(unref(OPopover), {
|
|
51
|
+
key: 0,
|
|
52
|
+
position: "top",
|
|
53
|
+
trigger: "hover",
|
|
54
|
+
offset: 12
|
|
55
|
+
}, {
|
|
56
|
+
target: withCtx(() => [
|
|
57
|
+
createVNode(unref(OIcon), {
|
|
58
|
+
class: "o-md-code-icon-theme",
|
|
59
|
+
onClick: onClickChangeTheme
|
|
60
|
+
}, {
|
|
61
|
+
default: withCtx(() => [
|
|
62
|
+
isDark.value ? (openBlock(), createBlock(unref(IconSun), { key: 0 })) : (openBlock(), createBlock(unref(IconMoon), { key: 1 }))
|
|
63
|
+
]),
|
|
64
|
+
_: 1
|
|
65
|
+
})
|
|
66
|
+
]),
|
|
67
|
+
default: withCtx(() => [
|
|
68
|
+
createElementVNode("span", null, toDisplayString(unref(codeTheme) === "light" ? unref(t)("md.darkTheme") : unref(t)("md.lightTheme")), 1)
|
|
69
|
+
]),
|
|
70
|
+
_: 1
|
|
71
|
+
})) : createCommentVNode("", true),
|
|
72
|
+
unref(lePadV) || isHover.value ? (openBlock(), createBlock(unref(OPopover), {
|
|
73
|
+
key: 1,
|
|
74
|
+
position: "top",
|
|
75
|
+
trigger: "hover",
|
|
76
|
+
offset: 12
|
|
77
|
+
}, {
|
|
78
|
+
target: withCtx(() => [
|
|
79
|
+
createVNode(unref(OIcon), {
|
|
80
|
+
class: "o-md-code-icon-copy",
|
|
81
|
+
onClick: onClickCopy
|
|
82
|
+
}, {
|
|
83
|
+
default: withCtx(() => [
|
|
84
|
+
createVNode(unref(IconCopy))
|
|
85
|
+
]),
|
|
86
|
+
_: 1
|
|
87
|
+
})
|
|
88
|
+
]),
|
|
89
|
+
default: withCtx(() => [
|
|
90
|
+
createElementVNode("span", null, toDisplayString(unref(t)("common.copy")), 1)
|
|
91
|
+
]),
|
|
92
|
+
_: 1
|
|
93
|
+
})) : createCommentVNode("", true)
|
|
94
|
+
]),
|
|
95
|
+
createVNode(unref(OScroller), {
|
|
96
|
+
size: "small",
|
|
97
|
+
"show-type": "always",
|
|
98
|
+
"disabled-y": ""
|
|
99
|
+
}, {
|
|
100
|
+
default: withCtx(() => {
|
|
101
|
+
var _a;
|
|
102
|
+
return [
|
|
103
|
+
withDirectives(createElementVNode("div", {
|
|
104
|
+
class: normalizeClass(["markdown-body __mounted", {
|
|
105
|
+
"is-dark": isDark.value && unref(codeTheme) != unref(theme),
|
|
106
|
+
"is-light": !isDark.value && unref(codeTheme) != unref(theme)
|
|
107
|
+
}])
|
|
108
|
+
}, null, 2), [
|
|
109
|
+
[unref(vDompurifyHtml), (_a = __props.el) == null ? void 0 : _a.outerHTML]
|
|
110
|
+
])
|
|
111
|
+
];
|
|
112
|
+
}),
|
|
113
|
+
_: 1
|
|
114
|
+
})
|
|
115
|
+
], 34);
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
});
|
|
119
|
+
export {
|
|
120
|
+
_sfc_main as default
|
|
121
|
+
};
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
.hover-icon-rotate .o-icon[data-v-73e8af56] {
|
|
2
|
+
transition: all var(--o-duration-m1) var(--o-easing-standard-in);
|
|
3
|
+
}
|
|
4
|
+
@media (hover: hover) {
|
|
5
|
+
.hover-icon-rotate:hover .o-icon[data-v-73e8af56] {
|
|
6
|
+
transform: rotate(-180deg);
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
.o-md-img[data-v-73e8af56] {
|
|
10
|
+
width: auto;
|
|
11
|
+
max-width: 100%;
|
|
12
|
+
position: relative;
|
|
13
|
+
display: inline-block;
|
|
14
|
+
padding: var(--o-gap-2);
|
|
15
|
+
margin-bottom: var(--o-gap-2, 8px);
|
|
16
|
+
border: 1px solid var(--o-color-control4);
|
|
17
|
+
border-radius: var(--o-radius-xs);
|
|
18
|
+
cursor: zoom-in;
|
|
19
|
+
}
|
|
20
|
+
.o-md-img[data-v-73e8af56] img {
|
|
21
|
+
max-width: 100%;
|
|
22
|
+
padding: 0 !important;
|
|
23
|
+
border: none !important;
|
|
24
|
+
border-radius: unset !important;
|
|
25
|
+
box-shadow: none !important;
|
|
26
|
+
}
|
|
27
|
+
.o-md-img .o-md-img-icon-zoom[data-v-73e8af56] {
|
|
28
|
+
position: absolute;
|
|
29
|
+
z-index: 10;
|
|
30
|
+
top: 50%;
|
|
31
|
+
right: 50%;
|
|
32
|
+
transform: translate(-50%, -50%);
|
|
33
|
+
font-size: 32px;
|
|
34
|
+
}
|
|
35
|
+
@media (hover: hover) {
|
|
36
|
+
.o-md-img[data-v-73e8af56]:not(.unexpand):hover {
|
|
37
|
+
box-shadow: var(--o-shadow-1);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
.o-md-img.unexpand[data-v-73e8af56] {
|
|
41
|
+
padding: 0 var(--o-gap-2);
|
|
42
|
+
border: none;
|
|
43
|
+
border-radius: unset;
|
|
44
|
+
cursor: default;
|
|
45
|
+
}
|
|
46
|
+
.o-md-img.in-paragraph[data-v-73e8af56] {
|
|
47
|
+
margin-bottom: 0;
|
|
48
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
el: HTMLImageElement;
|
|
3
|
+
};
|
|
4
|
+
declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
|
|
5
|
+
containerRef: HTMLSpanElement;
|
|
6
|
+
imgRef: HTMLImageElement;
|
|
7
|
+
}, HTMLSpanElement>;
|
|
8
|
+
export default _default;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import _sfc_main from "./MarkdownImage.vue2.mjs";
|
|
2
|
+
import './MarkdownImage.css';
|
|
3
|
+
import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.mjs";
|
|
4
|
+
const MarkdownImage = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-73e8af56"]]);
|
|
5
|
+
export {
|
|
6
|
+
MarkdownImage as default
|
|
7
|
+
};
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { defineComponent, ref, onMounted, onBeforeUnmount, openBlock, createElementBlock, normalizeClass, unref, createCommentVNode, createElementVNode } from "vue";
|
|
2
|
+
import { useImageViewer } from "@opensig/opendesign";
|
|
3
|
+
import { useScreen } from "@opendesign-plus/composables";
|
|
4
|
+
import IconZoom from "../../../assets/svg-icons/icon-zoom.svg.mjs";
|
|
5
|
+
const _hoisted_1 = ["src"];
|
|
6
|
+
const _hoisted_2 = ["src", "alt"];
|
|
7
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
8
|
+
__name: "MarkdownImage",
|
|
9
|
+
props: {
|
|
10
|
+
el: {}
|
|
11
|
+
},
|
|
12
|
+
setup(__props) {
|
|
13
|
+
const props = __props;
|
|
14
|
+
const { lePadV } = useScreen();
|
|
15
|
+
const containerRef = ref();
|
|
16
|
+
const imgRef = ref();
|
|
17
|
+
const zoomEnabled = ref(false);
|
|
18
|
+
const zoomImgUrl = ref(props.el.src);
|
|
19
|
+
const isHover = ref(false);
|
|
20
|
+
const inParagraph = ref(false);
|
|
21
|
+
onMounted(() => {
|
|
22
|
+
var _a, _b;
|
|
23
|
+
inParagraph.value = ((_b = (_a = containerRef.value) == null ? void 0 : _a.parentElement) == null ? void 0 : _b.tagName) === "P";
|
|
24
|
+
});
|
|
25
|
+
const onImgLoad = () => {
|
|
26
|
+
var _a;
|
|
27
|
+
zoomEnabled.value = (((_a = imgRef.value) == null ? void 0 : _a.width) || 0) >= 216;
|
|
28
|
+
};
|
|
29
|
+
const { open, unmount } = useImageViewer({
|
|
30
|
+
previewList: () => [zoomImgUrl.value],
|
|
31
|
+
currentIndex: 0,
|
|
32
|
+
layerOptions: {
|
|
33
|
+
maskClose: true
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
const onClickContainer = () => {
|
|
37
|
+
if (zoomEnabled.value && zoomImgUrl.value) {
|
|
38
|
+
open();
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
onBeforeUnmount(() => {
|
|
42
|
+
unmount();
|
|
43
|
+
});
|
|
44
|
+
return (_ctx, _cache) => {
|
|
45
|
+
var _a;
|
|
46
|
+
return openBlock(), createElementBlock("span", {
|
|
47
|
+
ref_key: "containerRef",
|
|
48
|
+
ref: containerRef,
|
|
49
|
+
class: normalizeClass(["o-md-img", { unexpand: !zoomEnabled.value, "in-paragraph": inParagraph.value }]),
|
|
50
|
+
onClick: onClickContainer,
|
|
51
|
+
onMouseenter: _cache[0] || (_cache[0] = ($event) => isHover.value = true),
|
|
52
|
+
onMouseleave: _cache[1] || (_cache[1] = ($event) => isHover.value = false)
|
|
53
|
+
}, [
|
|
54
|
+
!unref(lePadV) && zoomEnabled.value && isHover.value ? (openBlock(), createElementBlock("img", {
|
|
55
|
+
key: 0,
|
|
56
|
+
class: "o-md-img-icon-zoom",
|
|
57
|
+
src: unref(IconZoom)
|
|
58
|
+
}, null, 8, _hoisted_1)) : createCommentVNode("", true),
|
|
59
|
+
createElementVNode("img", {
|
|
60
|
+
ref_key: "imgRef",
|
|
61
|
+
ref: imgRef,
|
|
62
|
+
class: "o-md-img-content",
|
|
63
|
+
src: zoomImgUrl.value,
|
|
64
|
+
alt: (_a = __props.el) == null ? void 0 : _a.alt,
|
|
65
|
+
onLoad: onImgLoad
|
|
66
|
+
}, null, 40, _hoisted_2)
|
|
67
|
+
], 34);
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
export {
|
|
72
|
+
_sfc_main as default
|
|
73
|
+
};
|