@fmdevui/fm-dev
Version:
Page level components developed based on Element Plus.
153 lines (150 loc) • 5.23 kB
JavaScript
import { defineComponent, reactive, computed, onMounted, resolveComponent, createElementBlock, openBlock, createVNode, withCtx, createElementVNode, toDisplayString, createTextVNode, createCommentVNode } from 'vue';
import { useI18n } from 'vue-i18n';
import { storeToRefs } from 'pinia';
import '../../stores/index.mjs';
import { useThemeConfig } from '../../stores/themeConfig.mjs';
const _hoisted_1 = { class: "upgrade-dialog" };
const _hoisted_2 = { class: "upgrade-title" };
const _hoisted_3 = { class: "upgrade-title-warp" };
const _hoisted_4 = { class: "upgrade-title-warp-txt" };
const _hoisted_5 = { class: "upgrade-title-warp-version" };
const _hoisted_6 = { class: "upgrade-content" };
const _hoisted_7 = { class: "mt5" };
const _hoisted_8 = { class: "upgrade-btn" };
var _sfc_main = /* @__PURE__ */ defineComponent({
__name: "index",
setup(__props) {
const { t } = useI18n();
const storesThemeConfig = useThemeConfig();
const { themeConfig } = storeToRefs(storesThemeConfig);
const state = reactive({
isUpgrade: false,
// @ts-ignore
version: __NEXT_VERSION__,
isLoading: false,
btnTxt: ""
});
const getThemeConfig = computed(() => {
return themeConfig.value;
});
onMounted(() => {
delayShow();
setTimeout(() => {
state.btnTxt = t("message.upgrade.btnTwo");
}, 200);
});
const onCancel = () => {
state.isUpgrade = false;
};
const onUpgrade = () => {
state.isLoading = true;
state.btnTxt = t("message.upgrade.btnTwoLoading");
setTimeout(() => {
window.location.reload();
}, 2e3);
};
const delayShow = () => {
setTimeout(() => {
state.isUpgrade = true;
}, 2e3);
};
return (_ctx, _cache) => {
const _component_el_link = resolveComponent("el-link");
const _component_el_button = resolveComponent("el-button");
const _component_el_dialog = resolveComponent("el-dialog");
return openBlock(), createElementBlock("div", _hoisted_1, [
createVNode(_component_el_dialog, {
modelValue: state.isUpgrade,
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => state.isUpgrade = $event),
width: "300px",
"destroy-on-close": "",
"show-close": false,
"close-on-click-modal": false,
"close-on-press-escape": false
}, {
default: withCtx(() => [
createElementVNode("div", _hoisted_2, [
createElementVNode("div", _hoisted_3, [
createElementVNode(
"span",
_hoisted_4,
toDisplayString(_ctx.$t("message.upgrade.title")),
1
/* TEXT */
),
createElementVNode(
"span",
_hoisted_5,
"v" + toDisplayString(state.version),
1
/* TEXT */
)
])
]),
createElementVNode("div", _hoisted_6, [
createTextVNode(
toDisplayString(getThemeConfig.value.globalTitle) + " " + toDisplayString(_ctx.$t("message.upgrade.msg")) + " ",
1
/* TEXT */
),
createElementVNode("div", _hoisted_7, [
createVNode(_component_el_link, {
type: "primary",
class: "font12",
href: "https://xxx/CHANGELOG.md",
target: "_black"
}, {
default: withCtx(() => _cache[1] || (_cache[1] = [
createTextVNode(" CHANGELOG.md ")
])),
_: 1,
__: [1]
})
]),
createCommentVNode(' <div class="upgrade-content-desc mt5">{{ $t("message.upgrade.desc") }}</div> ')
]),
createElementVNode("div", _hoisted_8, [
createVNode(_component_el_button, {
round: "",
size: "default",
type: "info",
text: "",
onClick: onCancel
}, {
default: withCtx(() => [
createTextVNode(
toDisplayString(_ctx.$t("message.upgrade.btnOne")),
1
/* TEXT */
)
]),
_: 1
/* STABLE */
}),
createVNode(_component_el_button, {
type: "primary",
round: "",
size: "default",
onClick: onUpgrade,
loading: state.isLoading
}, {
default: withCtx(() => [
createTextVNode(
toDisplayString(state.btnTxt),
1
/* TEXT */
)
]),
_: 1
/* STABLE */
}, 8, ["loading"])
])
]),
_: 1
/* STABLE */
}, 8, ["modelValue"])
]);
};
}
});
export { _sfc_main as default };