{"version":3,"file":"index.mjs","sources":["../../../../../admin/src/components/Permissions/PermissionRow/index.jsx"],"sourcesContent":["import React, { useMemo } from 'react';\n\nimport { Box } from '@strapi/design-system';\nimport sortBy from 'lodash/sortBy';\nimport PropTypes from 'prop-types';\n\nimport SubCategory from './SubCategory';\n\nconst PermissionRow = ({ name, permissions }) => {\n  const subCategories = useMemo(() => {\n    return sortBy(\n      Object.values(permissions.controllers).reduce((acc, curr, index) => {\n        const currentName = `${name}.controllers.${Object.keys(permissions.controllers)[index]}`;\n        const actions = sortBy(\n          Object.keys(curr).reduce((acc, current) => {\n            return [\n              ...acc,\n              {\n                ...curr[current],\n                label: current,\n                name: `${currentName}.${current}`,\n              },\n            ];\n          }, []),\n          'label'\n        );\n\n        return [\n          ...acc,\n          {\n            actions,\n            label: Object.keys(permissions.controllers)[index],\n            name: currentName,\n          },\n        ];\n      }, []),\n      'label'\n    );\n  }, [name, permissions]);\n\n  return (\n    <Box padding={6}>\n      {subCategories.map((subCategory) => (\n        <SubCategory key={subCategory.name} subCategory={subCategory} />\n      ))}\n    </Box>\n  );\n};\n\nPermissionRow.propTypes = {\n  name: PropTypes.string.isRequired,\n  permissions: PropTypes.object.isRequired,\n};\n\nexport default PermissionRow;\n"],"names":["PermissionRow","name","permissions","subCategories","useMemo","sortBy","Object","values","controllers","reduce","acc","curr","index","currentName","keys","actions","current","label","_jsx","Box","padding","map","subCategory","SubCategory","propTypes","PropTypes","string","isRequired","object"],"mappings":";;;;;;;AAQA,MAAMA,gBAAgB,CAAC,EAAEC,IAAI,EAAEC,WAAW,EAAE,GAAA;AAC1C,IAAA,MAAMC,gBAAgBC,OAAAA,CAAQ,IAAA;QAC5B,OAAOC,MAAAA,CACLC,MAAAA,CAAOC,MAAM,CAACL,WAAAA,CAAYM,WAAW,CAAA,CAAEC,MAAM,CAAC,CAACC,GAAAA,EAAKC,IAAAA,EAAMC,KAAAA,GAAAA;AACxD,YAAA,MAAMC,WAAAA,GAAc,CAAA,EAAGZ,IAAAA,CAAK,aAAa,EAAEK,MAAAA,CAAOQ,IAAI,CAACZ,WAAAA,CAAYM,WAAW,CAAC,CAACI,MAAM,CAAA,CAAE;YACxF,MAAMG,OAAAA,GAAUV,OACdC,MAAAA,CAAOQ,IAAI,CAACH,IAAAA,CAAAA,CAAMF,MAAM,CAAC,CAACC,GAAAA,EAAKM,OAAAA,GAAAA;gBAC7B,OAAO;AACFN,oBAAAA,GAAAA,GAAAA;AACH,oBAAA;wBACE,GAAGC,IAAI,CAACK,OAAAA,CAAQ;wBAChBC,KAAAA,EAAOD,OAAAA;AACPf,wBAAAA,IAAAA,EAAM,CAAA,EAAGY,WAAAA,CAAY,CAAC,EAAEG,OAAAA,CAAAA;AAC1B;AACD,iBAAA;AACH,YAAA,CAAA,EAAG,EAAE,CAAA,EACL,OAAA,CAAA;YAGF,OAAO;AACFN,gBAAAA,GAAAA,GAAAA;AACH,gBAAA;AACEK,oBAAAA,OAAAA;AACAE,oBAAAA,KAAAA,EAAOX,OAAOQ,IAAI,CAACZ,YAAYM,WAAW,CAAC,CAACI,KAAAA,CAAM;oBAClDX,IAAAA,EAAMY;AACR;AACD,aAAA;AACH,QAAA,CAAA,EAAG,EAAE,CAAA,EACL,OAAA,CAAA;IAEJ,CAAA,EAAG;AAACZ,QAAAA,IAAAA;AAAMC,QAAAA;AAAY,KAAA,CAAA;AAEtB,IAAA,qBACEgB,GAAA,CAACC,GAAAA,EAAAA;QAAIC,OAAAA,EAAS,CAAA;AACXjB,QAAAA,QAAAA,EAAAA,aAAAA,CAAckB,GAAG,CAAC,CAACC,WAAAA,iBAClBJ,GAAA,CAACK,WAAAA,EAAAA;gBAAmCD,WAAAA,EAAaA;AAA/BA,aAAAA,EAAAA,WAAAA,CAAYrB,IAAI,CAAA;;AAI1C;AAEAD,aAAAA,CAAcwB,SAAS,GAAG;IACxBvB,IAAAA,EAAMwB,SAAAA,CAAUC,MAAM,CAACC,UAAU;IACjCzB,WAAAA,EAAauB,SAAAA,CAAUG,MAAM,CAACD;AAChC,CAAA;;;;"}