tdesign-mobile-vue
Version:
tdesign-mobile-vue
1 lines • 18.3 kB
Source Map (JSON)
{"version":3,"file":"tab-bar-item.mjs","sources":["../../src/tab-bar/tab-bar-item.tsx"],"sourcesContent":["import { defineComponent, inject, computed, ref, watch, ComponentInternalInstance } from 'vue';\nimport { ViewListIcon as TViewListIcon } from 'tdesign-icons-vue-next';\nimport TBadge from '../badge';\nimport { TdBadgeProps } from '../badge/type';\nimport config from '../config';\nimport { initName } from './useTabBar';\nimport TabBarItemProps from './tab-bar-item-props';\nimport { useTNodeJSX, useContent } from '../hooks/tnode';\nimport { usePrefixClass, useConfig } from '../hooks/useClass';\n\nconst { prefix } = config;\n\nexport default defineComponent({\n name: `${prefix}-tab-bar-item`,\n components: { TBadge, TViewListIcon },\n props: TabBarItemProps,\n setup(props, context) {\n const renderTNodeJSX = useTNodeJSX();\n const renderContent = useContent();\n const tabBarItemClass = usePrefixClass('tab-bar-item');\n\n const { t, globalConfig } = useConfig('tabBar');\n const { split, shape, theme, defaultIndex, activeValue, itemCount, updateChild } = inject<any>('tab-bar');\n const currentName = initName(defaultIndex);\n\n const textNode = ref<HTMLElement>();\n\n const badgeProps = computed((): TdBadgeProps => props.badgeProps);\n\n const getBadgeAriaLabel = () => {\n const options = badgeProps.value;\n if (options?.dot || options?.count) {\n const maxCount = options.maxCount || 99;\n if (options.dot) {\n return globalConfig.value.newsAriaLabel;\n }\n if (options.count === '...') {\n return globalConfig.value.moreNewsAriaLabel;\n }\n const count = Number(options.count);\n if (isNaN(count)) {\n return `${options.count}`;\n }\n const str1 = t(globalConfig.value.haveMoreNewsAriaLabel, { value: maxCount });\n const str2 = t(globalConfig.value.haveNewsAriaLabel, { value: options.count });\n return `${Number(options.count) > maxCount ? str1 : str2}`;\n }\n return 'TabBar';\n };\n const ariaLabel = ref(getBadgeAriaLabel());\n\n const iconOnly = ref(false);\n watch(textNode, () => {\n const height = textNode.value?.clientHeight;\n iconOnly.value = Number(height) === 0;\n });\n\n const hasSubTabBar = computed(() => {\n return Array.isArray(props.subTabBar) && props.subTabBar.length > 0;\n });\n\n const isChecked = computed(() => {\n if (hasSubTabBar.value && Array.isArray(activeValue.value)) {\n return activeValue.value.includes(currentName);\n }\n return currentName === activeValue.value;\n });\n\n const isSpread = ref(false);\n watch(isChecked, (newValue) => {\n if (!newValue) {\n isSpread.value = false;\n }\n });\n\n const crowded = ref(false);\n watch(itemCount, () => {\n crowded.value = itemCount.value > 3;\n\n if (isChecked.value) {\n isSpread.value = true;\n }\n });\n\n const isToggleCurrent = computed(() => Array.isArray(activeValue.value) && activeValue.value[0] === currentName);\n\n const toggle = () => {\n if (hasSubTabBar.value) {\n isSpread.value = !isSpread.value;\n if (!isToggleCurrent.value) {\n updateChild([currentName]);\n return;\n }\n }\n updateChild(currentName);\n };\n\n const hasChildren = computed(() => {\n return Number(props.subTabBar?.length) > 0;\n });\n\n const selectChild = (childName: number | string) => {\n if (!(Array.isArray(activeValue.value) && activeValue.value[1] === childName)) {\n updateChild([currentName, childName]);\n }\n isSpread.value = false;\n };\n return () => {\n const iconContent = () => {\n const iconSlot = renderTNodeJSX('icon');\n if (!iconSlot) {\n return null;\n }\n iconSlot?.forEach((item: ComponentInternalInstance) => {\n if (item.type?.name === 'Icon') {\n item.props.size = iconOnly.value ? '24px' : '20px';\n }\n });\n return iconSlot;\n };\n const badge = () => {\n return (\n iconContent() && (\n <div class={`${tabBarItemClass.value}__icon`} style={{ height: `${iconOnly.value ? 24 : 20}px` }}>\n {badgeProps.value?.dot || badgeProps.value?.count ? (\n <t-badge\n count={badgeProps.value?.count || 0}\n max-count={badgeProps.value?.maxCount || 99}\n dot={badgeProps.value?.dot || false}\n content={badgeProps.value?.content || ''}\n size={badgeProps.value?.size || 'medium'}\n offset={badgeProps.value?.offset || [0, 0]}\n >\n {iconContent()}\n </t-badge>\n ) : (\n iconContent()\n )}\n </div>\n )\n );\n };\n const textNodeContent = () => {\n return (\n <div\n ref={textNode}\n class={{\n [`${tabBarItemClass.value}__text`]: true,\n [`${tabBarItemClass.value}__text--small`]: !!iconContent(),\n }}\n >\n {hasChildren.value && <t-view-list-icon size=\"16\" class={`${tabBarItemClass.value}__icon-menu`} />}\n {renderContent('default', 'content')}\n </div>\n );\n };\n\n const menu = () => {\n if (hasChildren.value && isSpread.value) {\n return (\n <div role=\"menu\" class={`${tabBarItemClass.value}__spread`}>\n {props.subTabBar.map((child, index) => (\n <div\n key={index}\n role=\"tab\"\n class={`${tabBarItemClass.value}__spread-item`}\n onClick={() => selectChild(child.value || index)}\n >\n {index !== 0 && <div class={`${tabBarItemClass.value}__spread-item-split`} />}\n <div class={`${tabBarItemClass.value}__spread-item-text`}>{child.label}</div>\n </div>\n ))}\n </div>\n );\n }\n };\n return (\n <div\n class={{\n [`${tabBarItemClass.value}`]: true,\n [`${tabBarItemClass.value}--split`]: split.value,\n [`${tabBarItemClass.value}--text-only`]: !iconContent(),\n [`${tabBarItemClass.value}--crowded`]: crowded.value,\n [`${tabBarItemClass.value}--${shape.value}`]: true,\n [`${context.attrs.class || ''}`]: true,\n }}\n >\n <div\n class={{\n [`${tabBarItemClass.value}__content`]: true,\n [`${tabBarItemClass.value}__content--checked`]: isChecked.value,\n [`${tabBarItemClass.value}__content--${theme.value}`]: true,\n }}\n aria-selected={(!hasChildren.value || !isSpread.value) && isChecked.value}\n aria-expanded={hasChildren.value && isSpread.value}\n role={hasChildren.value ? 'button' : 'tab'}\n onClick={toggle}\n >\n {badge()}\n {textNodeContent()}\n </div>\n {menu()}\n </div>\n );\n };\n },\n});\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","prefix","config","defineComponent","name","components","TBadge","TViewListIcon","props","TabBarItemProps","setup","context","renderTNodeJSX","useTNodeJSX","renderContent","useContent","tabBarItemClass","usePrefixClass","_useConfig","useConfig","t","globalConfig","_inject","inject","split","shape","theme","defaultIndex","activeValue","itemCount","updateChild","currentName","initName","textNode","ref","badgeProps","computed","getBadgeAriaLabel","options","value","dot","count","maxCount","newsAriaLabel","moreNewsAriaLabel","Number","isNaN","concat","str1","haveMoreNewsAriaLabel","str2","haveNewsAriaLabel","ariaLabel","iconOnly","watch","_textNode$value","height","clientHeight","hasSubTabBar","Array","isArray","subTabBar","length","isChecked","includes","isSpread","newValue","crowded","isToggleCurrent","toggle","hasChildren","_props$subTabBar","selectChild","childName","iconContent","iconSlot","forEach","item","_item$type","type","size","badge","_slot","_badgeProps$value","_badgeProps$value2","_badgeProps$value3","_badgeProps$value4","_badgeProps$value5","_badgeProps$value6","_badgeProps$value7","_badgeProps$value8","_createVNode","_resolveComponent","content","offset","default","_default","textNodeContent","_defineProperty","menu","map","child","index","onClick","label","attrs","class"],"mappings":"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"}