{"version":3,"file":"useRoleDisplayInfo.mjs","sources":["../../../../../../../../web/src/adminPortal/utils/useRoleDisplayInfo.ts"],"sourcesContent":["import { useCallback, useMemo } from 'react';\n\nimport { useGetRoleDescription } from './useGetRoleDescription';\nimport { useGetRoleDisplayName } from './useGetRoleDisplayName';\nimport { useRoles } from './useRoles';\n\nexport const useRoleDisplayInfo = (includeOrgRoles = false) => {\n  const allRoles = useRoles(includeOrgRoles);\n\n  const getRoleDisplayName = useGetRoleDisplayName();\n  const getRoleDescription = useGetRoleDescription();\n\n  const roleInfo = useMemo(() => {\n    return (\n      allRoles?.reduce<Record<string, { description: string; label: string }>>((acc, role) => {\n        acc[role.role_id] = { description: getRoleDescription(role), label: getRoleDisplayName(role) };\n        return acc;\n      }, {}) ?? {}\n    );\n  }, [allRoles, getRoleDescription, getRoleDisplayName]);\n\n  const getRoleIdDisplayName = useCallback((roleId: string) => roleInfo[roleId].label ?? roleId, [roleInfo]);\n\n  return { roleInfo, getRoleIdDisplayName };\n};\n"],"names":["useRoleDisplayInfo","includeOrgRoles","allRoles","useRoles","getRoleDisplayName","useGetRoleDisplayName","getRoleDescription","useGetRoleDescription","roleInfo","useMemo","reduce","acc","role","role_id","description","label","getRoleIdDisplayName","useCallback","roleId"],"mappings":";;;;;;AAMO,MAAMA,kBAAAA,GAAqB,CAACC,eAAAA,GAAkB,KAAK,GAAA;AACxD,IAAA,MAAMC,WAAWC,QAAAA,CAASF,eAAAA,CAAAA;AAE1B,IAAA,MAAMG,kBAAAA,GAAqBC,qBAAAA,EAAAA;AAC3B,IAAA,MAAMC,kBAAAA,GAAqBC,qBAAAA,EAAAA;AAE3B,IAAA,MAAMC,WAAWC,CAAAA,CAAQ,IAAA;QACvB,OACEP,QAAAA,EAAUQ,MAAAA,CAA+D,CAACC,GAAAA,EAAKC,IAAAA,GAAAA;AAC7ED,YAAAA,GAAG,CAACC,IAAAA,CAAKC,OAAO,CAAC,GAAG;AAAEC,gBAAAA,WAAAA,EAAaR,kBAAAA,CAAmBM,IAAAA,CAAAA;AAAOG,gBAAAA,KAAAA,EAAOX,kBAAAA,CAAmBQ,IAAAA;AAAM,aAAA;YAC7F,OAAOD,GAAAA;QACT,CAAA,EAAG,OAAO,EAAC;IAEf,CAAA,EAAG;AAACT,QAAAA,QAAAA;AAAUI,QAAAA,kBAAAA;AAAoBF,QAAAA;AAAmB,KAAA,CAAA;IAErD,MAAMY,oBAAAA,GAAuBC,CAAAA,CAAY,CAACC,MAAAA,GAAmBV,QAAQ,CAACU,MAAAA,CAAO,CAACH,KAAK,IAAIG,MAAAA,EAAQ;AAACV,QAAAA;AAAS,KAAA,CAAA;IAEzG,OAAO;AAAEA,QAAAA,QAAAA;AAAUQ,QAAAA;AAAqB,KAAA;AAC1C;;;;"}