import { unref } from 'vue';
import { useAuthStore } from '@/stores/modules/auth';

export default {
  mounted(el, binding) {
    const { value } = binding; // 获取指令的值，例如 v-permission="'create'"
    const { authButtonListGet } = useAuthStore(); // 获取用户权限列表

    // 如果 value 是数组，则检查是否包含所有权限
    if (Array.isArray(value)) {
      const hasPermission = value.every((perm) => authButtonListGet.includes(perm));
      if (!hasPermission) {
        el.parentNode && el.parentNode.removeChild(el);
      }
    } else if (!authButtonListGet.includes(value)) {
      el.parentNode && el.parentNode.removeChild(el); // 从 DOM 中移除元素
    }
  },
};
