UNPKG

tdesign-mobile-vue

Version:
1 lines 4.49 kB
{"version":3,"file":"tab-bar.mjs","sources":["../../src/tab-bar/tab-bar.tsx"],"sourcesContent":["import { defineComponent, ref, provide, Ref, computed, toRefs, onMounted } from 'vue';\nimport TabBarProps from './props';\nimport config from '../config';\nimport { useDefault, useChildSlots } from '../shared';\nimport { useTNodeJSX } from '../hooks/tnode';\nimport { usePrefixClass } from '../hooks/useClass';\n\nconst { prefix } = config;\n\nexport default defineComponent({\n name: `${prefix}-tab-bar`,\n props: TabBarProps,\n emits: ['update:value', 'update:modelValue', 'change'],\n setup(props, context) {\n const tabBarClass = usePrefixClass('tab-bar');\n\n const renderTNodeJSX = useTNodeJSX();\n const [activeValue] = useDefault(props, context.emit, 'value', 'change');\n const defaultIndex: Ref<number> = ref(-1);\n const itemCount = ref(0);\n\n onMounted(() => {\n const nodes = context.slots.default && context.slots.default();\n if (nodes !== undefined) {\n const childSlots = useChildSlots(`${prefix}-tab-bar-item`);\n itemCount.value = childSlots.length;\n }\n });\n\n const updateChild = (currentValue: number | string) => {\n activeValue.value = currentValue;\n };\n\n const rootClass = computed(() => [\n `${tabBarClass.value}`,\n {\n [`${tabBarClass.value}--bordered`]: props.bordered,\n [`${tabBarClass.value}--fixed`]: props.fixed,\n [`${tabBarClass.value}--safe`]: props.safeAreaInsetBottom,\n },\n `${tabBarClass.value}--${props.shape}`,\n ]);\n\n provide('tab-bar', {\n ...toRefs(props),\n defaultIndex,\n activeValue,\n itemCount,\n updateChild,\n });\n\n return () => (\n <div class={rootClass.value} role=\"tablist\">\n {renderTNodeJSX('default')}\n </div>\n );\n },\n});\n"],"names":["prefix","config","defineComponent","name","props","TabBarProps","emits","setup","context","tabBarClass","usePrefixClass","renderTNodeJSX","useTNodeJSX","_useDefault","useDefault","emit","_useDefault2","_slicedToArray","activeValue","defaultIndex","ref","itemCount","onMounted","nodes","slots","default","childSlots","useChildSlots","concat","value","length","updateChild","currentValue","rootClass","computed","_defineProperty","bordered","fixed","safeAreaInsetBottom","shape","provide","_objectSpread","toRefs","_createVNode"],"mappings":"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"}