优化
This commit is contained in:
@@ -89,3 +89,15 @@ export const FRONTEND_TO_MERCHANT_PERMISSION_CODES: Readonly<Record<string, read
|
||||
'company:permission:assign': ['merchant:role:grant'],
|
||||
'finance:bill:view': ['merchant:finance:statement:list', 'merchant:finance:statement:view'],
|
||||
}
|
||||
|
||||
export const FRONTEND_PERMISSIONS_REQUIRING_ALL_BACKEND_CODES = new Set<string>([
|
||||
'finance:bill:view',
|
||||
])
|
||||
|
||||
export function hasMappedMerchantPermission(frontendCode: string, grantedBackendCodes: ReadonlySet<string>) {
|
||||
const backendCodes = FRONTEND_TO_MERCHANT_PERMISSION_CODES[frontendCode]
|
||||
if (!backendCodes?.length) return grantedBackendCodes.has(frontendCode)
|
||||
return FRONTEND_PERMISSIONS_REQUIRING_ALL_BACKEND_CODES.has(frontendCode)
|
||||
? backendCodes.every((code) => grantedBackendCodes.has(code))
|
||||
: backendCodes.some((code) => grantedBackendCodes.has(code))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user