zhou zhou
2026-04-02 0a1d91e42e6c5af96e1108e9ebcc37e99eb3b22c
rsf-design/src/views/system/menu/menuPage.helpers.js
@@ -1,3 +1,5 @@
import { $t } from '@/locales'
export function createMenuSearchState() {
  return {
    name: '',
@@ -22,7 +24,7 @@
  if (!title) {
    return ''
  }
  return String(title).split('.').pop() || String(title)
  return String(title).trim()
}
export function getMenuDisplayTitle(row = {}, titleFormatter = defaultMenuTitleFormatter) {
@@ -43,16 +45,16 @@
  return 'primary'
}
export function getMenuTypeText(row = {}) {
  if (row.meta?.isAuthButton || Number(row.type) === 1) return '按钮'
  if (hasNestedMenus(row)) return '目录'
  return '菜单'
export function getMenuTypeText(row = {}, t = $t) {
  if (row.meta?.isAuthButton || Number(row.type) === 1) return t('pages.system.menu.types.button')
  if (hasNestedMenus(row)) return t('pages.system.menu.types.directory')
  return t('pages.system.menu.types.menu')
}
export function getMenuStatusMeta(status) {
export function getMenuStatusMeta(status, t = $t) {
  return normalizeMenuNumber(status, 1) === 1
    ? { text: '启用', type: 'success' }
    : { text: '禁用', type: 'danger' }
    ? { text: t('common.status.enabled'), type: 'success' }
    : { text: t('common.status.disabled'), type: 'danger' }
}
export function normalizeMenuTreeOptions(nodes = [], titleFormatter = defaultMenuTitleFormatter) {
@@ -67,10 +69,10 @@
  }))
}
export function buildMenuTreeOptions(tree = [], titleFormatter = defaultMenuTitleFormatter) {
export function buildMenuTreeOptions(tree = [], titleFormatter = defaultMenuTitleFormatter, t = $t) {
  return [
    {
      label: '顶级菜单',
      label: t('table.topLevelMenu'),
      value: 0,
      children: normalizeMenuTreeOptions(tree, titleFormatter)
    }