tdesign-mobile-vue
Version:
tdesign-mobile-vue
98 lines (92 loc) • 3.4 kB
JavaScript
/**
* tdesign v1.12.1
* (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-232d243a.js');
require('@babel/runtime/helpers/typeof');
require('../_chunks/dep-8e526cea.js');
require('../_chunks/dep-1cdfb723.js');
require('../_chunks/dep-8983459f.js');
require('../_chunks/dep-744e59d5.js');
require('../_chunks/dep-e7771cff.js');
require('../_chunks/dep-1043f470.js');
require('../_chunks/dep-76d7e9c9.js');
require('../_chunks/dep-dd180808.js');
require('../_chunks/dep-92a74cf1.js');
require('../_chunks/dep-2120a32b.js');
require('../_chunks/dep-8ebf5a71.js');
require('../_chunks/dep-4850f616.js');
require('../_chunks/dep-8436c713.js');
require('../_chunks/dep-ea4c3db5.js');
require('../_chunks/dep-cb665fd6.js');
require('../_chunks/dep-5b9d3f6f.js');
require('../_chunks/dep-1df72545.js');
require('../_chunks/dep-100be120.js');
require('../_common/js/utils/general.js');
require('../_chunks/dep-f487f3c9.js');
require('@babel/runtime/helpers/defineProperty');
require('../_chunks/dep-0d34d1e2.js');
require('../_common/js/global-config/mobile/default-config.js');
require('../_common/js/global-config/mobile/locale/zh_CN.js');
require('../_chunks/dep-c7f7a976.js');
require('../_chunks/dep-bce5891c.js');
require('dayjs');
require('../_chunks/dep-71eea379.js');
require('../_chunks/dep-6c43868d.js');
require('../_chunks/dep-eaef83bf.js');
require('../_chunks/dep-ea7a6cdf.js');
require('../_chunks/dep-0d61faba.js');
require('../_chunks/dep-49426c60.js');
require('../_chunks/dep-d70ba5d5.js');
require('../_chunks/dep-f5df0fcf.js');
require('../_chunks/dep-c0b5e4e7.js');
require('../_chunks/dep-bac64a37.js');
require('../_chunks/dep-9c611a30.js');
require('../_chunks/dep-a618140f.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