tdesign-mobile-vue
Version:
tdesign-mobile-vue
95 lines (89 loc) • 3.28 kB
JavaScript
/**
* tdesign v1.8.3
* (c) 2025 TDesign Group
* @license MIT
*/
;
Object.defineProperty(exports, '__esModule', { value: true });
var vue = require('vue');
var config = require('../config.js');
var tabs_tabPanelProps = require('./tab-panel-props.js');
var hooks_tnode = require('../hooks/tnode.js');
var hooks_useClass = require('../hooks/useClass.js');
require('../hooks/render-tnode.js');
require('../_chunks/dep-2785f324.js');
require('@babel/runtime/helpers/typeof');
require('../_chunks/dep-be12e3cf.js');
require('../_chunks/dep-dcb71613.js');
require('../_chunks/dep-0c65c975.js');
require('../_chunks/dep-489cc4a7.js');
require('../_chunks/dep-73971288.js');
require('../_chunks/dep-3063ebb4.js');
require('../_chunks/dep-fe4c83ed.js');
require('../_chunks/dep-2a740630.js');
require('../_chunks/dep-efffe4f1.js');
require('../_chunks/dep-12a11698.js');
require('../_chunks/dep-7c008ce3.js');
require('../_chunks/dep-502b30ed.js');
require('../_chunks/dep-55bdb8ca.js');
require('../_chunks/dep-9e6af4c8.js');
require('../_chunks/dep-064922bf.js');
require('../_chunks/dep-031a2fb2.js');
require('../_chunks/dep-c63ef9fd.js');
require('../_chunks/dep-2d4b3b6e.js');
require('../_chunks/dep-3830a939.js');
require('@babel/runtime/helpers/defineProperty');
require('../_chunks/dep-e0b95f1e.js');
require('../_common/js/global-config/mobile/default-config.js');
require('../_common/js/global-config/mobile/locale/zh_CN.js');
require('../_chunks/dep-18ad56fc.js');
require('../_chunks/dep-f9e965d5.js');
require('dayjs');
require('../_chunks/dep-6e709ab0.js');
require('../_chunks/dep-800d35e0.js');
require('../_chunks/dep-d15535dc.js');
require('../_chunks/dep-75085caa.js');
require('../_chunks/dep-96271380.js');
require('../_chunks/dep-93bd9bb3.js');
require('../_chunks/dep-a5597253.js');
require('../_chunks/dep-43e3ffa1.js');
require('../_chunks/dep-806b2a5f.js');
require('../_chunks/dep-8fb38ffd.js');
var prefix = config["default"].prefix;
var name = "".concat(prefix, "-tab-panel");
var _TabPanel = vue.defineComponent({
name: name,
props: tabs_tabPanelProps["default"],
setup: function setup(props2) {
var renderTNodeContent = hooks_tnode.useContent();
var tabPanelClass = hooks_useClass.usePrefixClass("tab-panel");
var tabsClass = hooks_useClass.usePrefixClass("tabs");
var currentValue = vue.inject("currentValue");
var isActive = vue.computed(function () {
return currentValue.value === props2.value;
});
var tabPanelClasses = vue.computed(function () {
return ["".concat(tabPanelClass.value), "".concat(tabsClass.value, "__panel")];
});
var isMount = vue.ref(props2.lazy ? isActive.value : true);
vue.watch(isActive, function () {
if (isActive.value) {
if (!isMount.value) {
isMount.value = true;
}
} else if (props2.destroyOnHide) {
isMount.value = false;
}
}, {
immediate: true
});
return function () {
if (!isMount.value) return null;
return vue.withDirectives(vue.createVNode("div", {
"class": tabPanelClasses.value
}, [renderTNodeContent("default", "panel")]), [[vue.vShow, isActive.value]]);
};
}
});
exports["default"] = _TabPanel;
//# sourceMappingURL=tab-panel.js.map