/** * 권한 체크를 위한 컴포저블 * 컴포넌트에서 권한을 쉽게 체크할 수 있도록 도와주는 유틸리티 함수들 */ export const usePermission = () => { const permissionsStore = usePermissionsStore(); return { // 페이지 권한 체크 hasPagePermission: (page: string) => permissionsStore.hasPagePermission(page), // 페이지그룹 권한 체크 hasPageGroupPermission: (pageGroup: string) => permissionsStore.hasPageGroupPermission(pageGroup), // 컴포넌트 권한 체크 hasComponentPermission: (component: string) => permissionsStore.hasComponentPermission(component), // 권한 데이터 직접 접근 permissions: computed(() => permissionsStore.permissions), resources: computed(() => permissionsStore.permissions?.resources), isLoading: computed(() => permissionsStore.isLoading), // 리소스별 전체 접근 함수 getPageGroups: () => permissionsStore.permissions?.resources?.pageGroups || [], getPages: () => permissionsStore.permissions?.resources?.pages || [], getComponents: () => permissionsStore.permissions?.resources?.components || [], }; };