UNPKG

@fmdevui/fm-dev

Version:

Page level components developed based on Element Plus.

65 lines (60 loc) 2.69 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var vue = require('vue'); var pinia = require('pinia'); require('../stores/index.js'); require('../utils/index.js'); var index$1 = require('../utils/emit/index.js'); require('./main/defaults.vue.js'); require('./main/classic.vue.js'); require('./main/transverse.vue.js'); require('./main/columns.vue.js'); var columns_vue_vue_type_script_setup_true_name_layoutColumns_lang = require('./main/columns.vue2.js'); var transverse_vue_vue_type_script_setup_true_name_layoutTransverse_lang = require('./main/transverse.vue2.js'); var classic_vue_vue_type_script_setup_true_name_layoutClassic_lang = require('./main/classic.vue2.js'); var defaults_vue_vue_type_script_setup_true_name_layoutDefaults_lang = require('./main/defaults.vue2.js'); var themeConfig = require('../stores/themeConfig.js'); var index = require('../utils/storage/index.js'); var _sfc_main = /* @__PURE__ */ vue.defineComponent({ __name: "layout", setup(__props) { const layouts = { defaults: defaults_vue_vue_type_script_setup_true_name_layoutDefaults_lang.default, classic: classic_vue_vue_type_script_setup_true_name_layoutClassic_lang.default, transverse: transverse_vue_vue_type_script_setup_true_name_layoutTransverse_lang.default, columns: columns_vue_vue_type_script_setup_true_name_layoutColumns_lang.default }; const storesThemeConfig = themeConfig.useThemeConfig(); const { themeConfig: themeConfig$1 } = pinia.storeToRefs(storesThemeConfig); let maxClientWidth = document.body.clientWidth; const onLayoutResize = () => { if (!index.Local.get("oldLayout")) index.Local.set("oldLayout", themeConfig$1.value.layout); const clientWidth = document.body.clientWidth; if (maxClientWidth > clientWidth) return; maxClientWidth = clientWidth; if (clientWidth < 1e3) { themeConfig$1.value.isCollapse = false; index$1.default.emit("layoutMobileResize", { layout: "defaults", clientWidth }); } else { index$1.default.emit("layoutMobileResize", { layout: index.Local.get("oldLayout") ? index.Local.get("oldLayout") : themeConfig$1.value.layout, clientWidth }); } }; vue.onBeforeMount(() => { onLayoutResize(); window.addEventListener("resize", onLayoutResize); }); vue.onUnmounted(() => { window.removeEventListener("resize", onLayoutResize); }); return (_ctx, _cache) => { return vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(layouts[vue.unref(themeConfig$1).layout])); }; } }); exports.default = _sfc_main;