tdesign-mobile-vue
Version:
tdesign-mobile-vue
96 lines (90 loc) • 3.32 kB
JavaScript
/**
* tdesign v1.9.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-ef223206.js');
require('@babel/runtime/helpers/typeof');
require('../_chunks/dep-c3cb976c.js');
require('../_chunks/dep-2f809ed9.js');
require('../_chunks/dep-757b152c.js');
require('../_chunks/dep-5be9198d.js');
require('../_chunks/dep-a7319409.js');
require('../_chunks/dep-afa9f3f2.js');
require('../_chunks/dep-ae809b86.js');
require('../_chunks/dep-2b08c0a6.js');
require('../_chunks/dep-288156c7.js');
require('../_chunks/dep-3d4c38f1.js');
require('../_chunks/dep-6df33aaf.js');
require('../_chunks/dep-88fe047a.js');
require('../_chunks/dep-675798b4.js');
require('../_chunks/dep-ccc9ad3d.js');
require('../_chunks/dep-d950aa21.js');
require('../_chunks/dep-a697b1b9.js');
require('../_chunks/dep-4dfb9b9c.js');
require('../_chunks/dep-7c911ba3.js');
require('../_common/js/utils/general.js');
require('../_chunks/dep-21f18d3b.js');
require('@babel/runtime/helpers/defineProperty');
require('../_chunks/dep-b9642a56.js');
require('../_common/js/global-config/mobile/default-config.js');
require('../_common/js/global-config/mobile/locale/zh_CN.js');
require('../_chunks/dep-28b1e09d.js');
require('../_chunks/dep-57aa1aa0.js');
require('dayjs');
require('../_chunks/dep-85204fa0.js');
require('../_chunks/dep-f6b14f80.js');
require('../_chunks/dep-a8d60643.js');
require('../_chunks/dep-49f0a63e.js');
require('../_chunks/dep-c65deed7.js');
require('../_chunks/dep-94eeec5a.js');
require('../_chunks/dep-060bf1cf.js');
require('../_chunks/dep-0e05e959.js');
require('../_chunks/dep-324da301.js');
require('../_chunks/dep-da6dc2cf.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