{"version":3,"file":"index.mjs","sources":["../../../../admin/src/components/Permissions/index.jsx"],"sourcesContent":["import React, { useReducer } from 'react';\n\nimport { Accordion, Flex } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport { useUsersPermissions } from '../../contexts/UsersPermissionsContext';\nimport formatPluginName from '../../utils/formatPluginName';\n\nimport init from './init';\nimport PermissionRow from './PermissionRow';\nimport { initialState, reducer } from './reducer';\n\nconst Permissions = () => {\n  const { modifiedData } = useUsersPermissions();\n  const { formatMessage } = useIntl();\n  const [{ collapses }] = useReducer(reducer, initialState, (state) => init(state, modifiedData));\n\n  return (\n    <Accordion.Root size=\"M\">\n      <Flex direction=\"column\" alignItems=\"stretch\" gap={1}>\n        {collapses.map((collapse, index) => (\n          <Accordion.Item key={collapse.name} value={collapse.name}>\n            <Accordion.Header variant={index % 2 === 0 ? 'secondary' : undefined}>\n              <Accordion.Trigger\n                caretPosition=\"right\"\n                description={formatMessage(\n                  {\n                    id: 'users-permissions.Plugin.permissions.plugins.description',\n                    defaultMessage: 'Define all allowed actions for the {name} plugin.',\n                  },\n                  { name: collapse.name }\n                )}\n              >\n                {formatPluginName(collapse.name)}\n              </Accordion.Trigger>\n            </Accordion.Header>\n            <Accordion.Content>\n              <PermissionRow permissions={modifiedData[collapse.name]} name={collapse.name} />\n            </Accordion.Content>\n          </Accordion.Item>\n        ))}\n      </Flex>\n    </Accordion.Root>\n  );\n};\n\nexport default Permissions;\n"],"names":["Permissions","modifiedData","useUsersPermissions","formatMessage","useIntl","collapses","useReducer","reducer","initialState","state","init","_jsx","Accordion","Root","size","Flex","direction","alignItems","gap","map","collapse","index","_jsxs","Item","value","name","Header","variant","undefined","Trigger","caretPosition","description","id","defaultMessage","formatPluginName","Content","PermissionRow","permissions"],"mappings":";;;;;;;;;;AAYA,MAAMA,WAAAA,GAAc,IAAA;IAClB,MAAM,EAAEC,YAAY,EAAE,GAAGC,mBAAAA,EAAAA;IACzB,MAAM,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;AAC1B,IAAA,MAAM,CAAC,EAAEC,SAAS,EAAE,CAAC,GAAGC,UAAAA,CAAWC,OAAAA,EAASC,YAAAA,EAAc,CAACC,KAAAA,GAAUC,IAAAA,CAAKD,KAAAA,EAAOR,YAAAA,CAAAA,CAAAA;IAEjF,qBACEU,GAAA,CAACC,UAAUC,IAAI,EAAA;QAACC,IAAAA,EAAK,GAAA;AACnB,QAAA,QAAA,gBAAAH,GAAA,CAACI,IAAAA,EAAAA;YAAKC,SAAAA,EAAU,QAAA;YAASC,UAAAA,EAAW,SAAA;YAAUC,GAAAA,EAAK,CAAA;AAChDb,YAAAA,QAAAA,EAAAA,SAAAA,CAAUc,GAAG,CAAC,CAACC,UAAUC,KAAAA,iBACxBC,IAAA,CAACV,UAAUW,IAAI,EAAA;AAAqBC,oBAAAA,KAAAA,EAAOJ,SAASK,IAAI;;AACtD,sCAAAd,GAAA,CAACC,UAAUc,MAAM,EAAA;4BAACC,OAAAA,EAASN,KAAAA,GAAQ,CAAA,KAAM,CAAA,GAAI,WAAA,GAAcO,SAAAA;oDACzDjB,GAAA,CAACC,UAAUiB,OAAO,EAAA;gCAChBC,aAAAA,EAAc,OAAA;AACdC,gCAAAA,WAAAA,EAAa5B,aAAAA,CACX;oCACE6B,EAAAA,EAAI,0DAAA;oCACJC,cAAAA,EAAgB;iCAClB,EACA;AAAER,oCAAAA,IAAAA,EAAML,SAASK;AAAK,iCAAA,CAAA;AAGvBS,gCAAAA,QAAAA,EAAAA,gBAAAA,CAAiBd,SAASK,IAAI;;;AAGnC,sCAAAd,GAAA,CAACC,UAAUuB,OAAO,EAAA;AAChB,4BAAA,QAAA,gBAAAxB,GAAA,CAACyB,aAAAA,EAAAA;AAAcC,gCAAAA,WAAAA,EAAapC,YAAY,CAACmB,QAAAA,CAASK,IAAI,CAAC;AAAEA,gCAAAA,IAAAA,EAAML,SAASK;;;;AAhBvDL,iBAAAA,EAAAA,QAAAA,CAASK,IAAI,CAAA;;;AAuB5C;;;;"}