{"version":3,"sources":["webpack:///./app/containers/RoleManagementPage/styles.css?312e","webpack:///./app/containers/RoleManagementPage/styles.css","webpack:///./app/containers/RoleManagementPage/messages.js","webpack:///./app/containers/RoleManagementPage/index.js"],"names":["content","module","i","options","transform","undefined","locals","exports","push","defineMessages","assignToUser","id","defaultMessage","assignRoleToUser","assignmentFormError","cancel","createRole","description","errorOccurred","name","numberOfUsers","permissions","roleDetails","roles","save","scope","selectAll","unassign","unassignRole","unselectAll","user","users","usersAssignmentPreamble","BorderedCard","SquareLoadingAnimation","RoleManagementPage","props","context","srn","pathname","search","qs","stringify","roleId","styles","container","display","gridTemplateRows","padding","width","height","createButtonContiner","textAlign","headerContainer","gridTemplateColumns","SectionHeader","DynamicFormattedMessage","messages","this","allRoles","get","data","toJS","map","row","type","isPlatformRole","fromJS","expandedPermissions","roleAssignments","resourceId","DataTable","noTableActions","customGridProps","domLayout","autosize","onDoubleClickRow","navToRoleDetails","customColumnConfig","hide","userHasPermission","permissionName","headerValueGetter","cellRendererFramework","params","value","length","flex","className","style","renderHeader","renderBody","Component","mapStateToProps","createStructuredSelector","selectAllRoles","withConnect","connect","dispatch","bindActionCreators","getAllRoles","compose","permissionChecker"],"mappings":"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","file":"37.686d800a98974bee66c3.chunk.js","sourcesContent":["\nvar content = require(\"!!../../../node_modules/css-loader/dist/cjs.js!./styles.css\");\n\nif(typeof content === 'string') content = [[module.id, content, '']];\n\nvar transform;\nvar insertInto;\n\n\n\nvar options = {\"hmr\":true}\n\noptions.transform = transform\noptions.insertInto = undefined;\n\nvar update = require(\"!../../../node_modules/style-loader/lib/addStyles.js\")(content, options);\n\nif(content.locals) module.exports = content.locals;\n\nif(module.hot) {\n\tmodule.hot.accept(\"!!../../../node_modules/css-loader/dist/cjs.js!./styles.css\", function() {\n\t\tvar newContent = require(\"!!../../../node_modules/css-loader/dist/cjs.js!./styles.css\");\n\n\t\tif(typeof newContent === 'string') newContent = [[module.id, newContent, '']];\n\n\t\tvar locals = (function(a, b) {\n\t\t\tvar key, idx = 0;\n\n\t\t\tfor(key in a) {\n\t\t\t\tif(!b || a[key] !== b[key]) return false;\n\t\t\t\tidx++;\n\t\t\t}\n\n\t\t\tfor(key in b) idx--;\n\n\t\t\treturn idx === 0;\n\t\t}(content.locals, newContent.locals));\n\n\t\tif(!locals) throw new Error('Aborting CSS HMR due to changed css-modules locals.');\n\n\t\tupdate(newContent);\n\t});\n\n\tmodule.hot.dispose(function() { update(); });\n}","exports = module.exports = require(\"../../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \".role-managment-page .ag-status-bar {\\n display: none;\\n}\\n\", \"\"]);\n","import { defineMessages } from 'react-intl'\n\nexport default defineMessages({\n assignToUser: {\n id: 'app.containers.RoleManagementPage.assignToUser',\n defaultMessage: 'Assign to User',\n },\n assignRoleToUser: {\n id: 'app.containers.RoleManagementPage.assignRoleToUser',\n defaultMessage: 'Assign Role to User',\n },\n assignmentFormError: {\n id: 'app.containers.RoleManagementPage.assignmentFormError',\n defaultMessage: 'Please enter all required fields',\n },\n cancel: {\n id: 'app.containers.RoleManagementPage.cancel',\n defaultMessage: 'Cancel',\n },\n createRole: {\n id: 'app.containers.RoleManagementPage.createRole',\n defaultMessage: 'Create Role',\n },\n description: {\n id: 'app.containers.RoleManagementPage.description',\n defaultMessage: 'Description',\n },\n errorOccurred: {\n id: 'app.containers.RoleManagementPage.errorOccurred',\n defaultMessage: 'An error occurred',\n },\n name: {\n id: 'app.containers.RoleManagementPage.name',\n defaultMessage: 'Name',\n },\n numberOfUsers: {\n id: 'app.containers.RoleManagementPage.numberOfUsers',\n defaultMessage: 'Number Of Users',\n },\n permissions: {\n id: 'app.containers.RoleManagementPage.permissions',\n defaultMessage: 'Permissions',\n },\n roleDetails: {\n id: 'app.containers.RoleManagementPage.roleDetails',\n defaultMessage: 'Role Details',\n },\n roles: {\n id: 'app.containers.RoleManagementPage.roles',\n defaultMessage: 'Roles',\n },\n save: {\n id: 'app.containers.RoleManagementPage.save',\n defaultMessage: 'Save',\n },\n scope: {\n id: 'app.containers.RoleManagementPage.scope',\n defaultMessage: 'Scope',\n },\n selectAll: {\n id: 'app.containers.RoleManagementPage.selectAll',\n defaultMessage: 'Select All',\n },\n unassign: {\n id: 'app.containers.RoleManagementPage.unassign',\n defaultMessage: 'Unassign',\n },\n unassignRole: {\n id: 'app.containers.RoleManagementPage.unassignRole',\n defaultMessage: 'Unassign Role',\n },\n unselectAll: {\n id: 'app.containers.RoleManagementPage.unselectAll',\n defaultMessage: 'Unselect All',\n },\n user: {\n id: 'app.containers.RoleManagementPage.user',\n defaultMessage: 'User',\n },\n users: {\n id: 'app.containers.RoleManagementPage.users',\n defaultMessage: 'Users',\n },\n usersAssignmentPreamble: {\n id: 'app.containers.RoleManagementPage.users',\n defaultMessage: 'The following users have been assigned this role',\n },\n})\n","import React, { Component } from 'react'\nimport PropTypes from 'prop-types'\nimport ImmutablePropTypes from 'react-immutable-proptypes'\nimport { connect } from 'react-redux'\nimport { createStructuredSelector } from 'reselect'\nimport { compose, bindActionCreators } from 'redux'\nimport qs from 'query-string'\nimport { push } from 'connected-react-router'\nimport { fromJS } from 'immutable'\n\nimport permissionChecker from 'containers/PermissionChecker'\nimport DynamicFormattedMessage from 'components/DynamicFormattedMessage'\nimport BorderedCard from 'components/BorderedCard'\nimport DataTable from 'components/DataTable'\nimport SectionHeader from 'components/SectionHeader'\nimport SquareLoadingAnimation from 'components/SquareLoadingAnimation'\nimport { isPlatformRole } from 'utils/sonraiUtils'\nimport { getAllRoles } from 'containers/SonraiData/actions'\nimport { selectAllRoles } from 'containers/SonraiData/selectors'\n\nimport messages from './messages'\n\nimport './styles.css'\n\nexport class RoleManagementPage extends Component {\n constructor(props, context) {\n super(props, context)\n this.styles = {\n container: {\n display: 'grid',\n gridTemplateRows: 'auto 1fr',\n padding: '1rem',\n width: '100%',\n height: '100%',\n },\n createButtonContiner: {\n textAlign: 'right',\n },\n headerContainer: {\n display: 'grid',\n gridTemplateColumns: 'auto 200px',\n },\n }\n }\n\n handleNavToBotDetail = ({ srn }) => {\n this.props.push({\n pathname: '/App/RoleManagement/RoleDetails',\n search: qs.stringify({\n roleId: srn,\n }),\n })\n }\n\n renderHeader() {\n return [\n
\n \n \n \n
,\n ]\n }\n\n navToRoleDetails = ({ srn }) => {\n this.props.push({\n pathname: '/App/RoleManagement/RoleDetails',\n search: qs.stringify({\n roleId: srn,\n }),\n })\n }\n\n renderBody() {\n if (this.props.allRoles.get('loading')) {\n return (\n \n \n \n )\n }\n\n if (this.props.allRoles.get('error')) {\n return (\n \n \n \n )\n }\n\n const data = this.props.allRoles\n .get('data')\n .toJS()\n .map(row => ({\n name: row.name,\n type: isPlatformRole(fromJS(row)) ? 'Platform' : 'Swimlane',\n users: row.users,\n expandedPermissions: row.expandedPermissions,\n description: row.description,\n srn: row.srn,\n roleAssignments: row.roleAssignments,\n permissions: row.permissions,\n resourceId: row.resourceId,\n }))\n\n return (\n \n
\n 'Permissions',\n cellRendererFramework: params => (\n {params.value.length}\n ),\n },\n resourceId: { hide: true },\n description: { flex: 1 },\n }}\n />\n
\n
\n )\n }\n\n render() {\n return (\n
\n
\n \n {this.renderHeader()}\n
\n
{this.renderBody()}
\n
\n \n )\n }\n}\n\nRoleManagementPage.propTypes = {\n // ~ bound action creators ~\n getAllRoles: PropTypes.func.isRequired,\n push: PropTypes.func,\n\n // ~ props from redux store ~\n allRoles: ImmutablePropTypes.map,\n\n userHasPermission: PropTypes.func,\n}\n\nconst mapStateToProps = createStructuredSelector({\n allRoles: selectAllRoles,\n})\n\nfunction mapDispatchToProps(dispatch) {\n return bindActionCreators(\n {\n getAllRoles,\n push,\n },\n dispatch\n )\n}\n\nconst withConnect = connect(mapStateToProps, mapDispatchToProps)\n\nexport default compose(withConnect, permissionChecker)(RoleManagementPage)\n"],"sourceRoot":""}