tdesign-mobile-vue
Version:
tdesign-mobile-vue
98 lines (92 loc) • 3.4 kB
JavaScript
/**
* tdesign v1.15.1
* (c) 2026 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-e28f0dcb.js');
require('@babel/runtime/helpers/typeof');
require('../_chunks/dep-8fb16430.js');
require('../_chunks/dep-71520daa.js');
require('../_chunks/dep-e226a2cc.js');
require('../_chunks/dep-bc41faad.js');
require('../_chunks/dep-a1ac6b3b.js');
require('../_chunks/dep-9a01670c.js');
require('../_chunks/dep-76eac73f.js');
require('../_chunks/dep-146a40bf.js');
require('../_chunks/dep-b59ce588.js');
require('../_chunks/dep-ecc3beb1.js');
require('../_chunks/dep-be2ba39b.js');
require('../_chunks/dep-f9b6dcd1.js');
require('../_chunks/dep-cca86cd8.js');
require('../_chunks/dep-f281ba06.js');
require('../_chunks/dep-817cf1a8.js');
require('../_chunks/dep-0a0e6b4d.js');
require('../_chunks/dep-ba2813cd.js');
require('../_chunks/dep-4f98961a.js');
require('../_common/js/utils/general.js');
require('../_chunks/dep-09992ee7.js');
require('@babel/runtime/helpers/defineProperty');
require('../_chunks/dep-04074889.js');
require('../_common/js/global-config/mobile/default-config.js');
require('../_common/js/global-config/mobile/locale/zh_CN.js');
require('../_chunks/dep-ac2bdb13.js');
require('../_chunks/dep-bf0cedd0.js');
require('dayjs');
require('../_chunks/dep-0cb0d120.js');
require('../_chunks/dep-772fd498.js');
require('../_chunks/dep-8c519715.js');
require('../_chunks/dep-6e0e44f2.js');
require('../_chunks/dep-5308384a.js');
require('../_chunks/dep-a15962f8.js');
require('../_chunks/dep-7e453771.js');
require('../_chunks/dep-1c49e2c0.js');
require('../_chunks/dep-09a08779.js');
require('../_chunks/dep-693e1092.js');
require('../_chunks/dep-23180529.js');
require('../_chunks/dep-77bb683d.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