{"_id":"@contiamo/resource-role-assigner","_rev":"10-c774b9db685a01d53ae5a19037611f9c","name":"@contiamo/resource-role-assigner","dist-tags":{"latest":"0.4.3","next":"0.4.0-alpha.1"},"versions":{"0.3.3":{"name":"@contiamo/resource-role-assigner","version":"0.3.3","description":"This project allows our UIs to assign roles for a given user, group or API token (called a _principal_) _on_ a given resource: like a Bundle in Labs or a Data Source in Pantheon.","main":"lib/index.js","scripts":{"test":"operational-scripts test","start":"operational-scripts start","build":"operational-scripts build --for npm","prepublishOnly":"operational-scripts prepare"},"keywords":[],"author":"","license":"ISC","dependencies":{"@operational/components":"^11.0.0","js-cookie":"^2.2.0","react":"^16.6.0"},"devDependencies":{"@operational/scripts":"^1.1.4","@types/js-cookie":"^2.2.0","@types/react":"^16.4.16"},"gitHead":"63f92a7d3acabe20a94d3469c915fdeecc1fd7ea","_id":"@contiamo/resource-role-assigner@0.3.3","_npmVersion":"6.4.1","_nodeVersion":"10.1.0","_npmUser":{"name":"tejaskumar","email":"tejas@tejas.qa"},"dist":{"integrity":"sha512-ncA+bTXf4uyjIRCNmGcGGXjgN9adFX/CFMrhmv9talZtIMVwdJLuBjsEgcJ1hTfldN3lVYuKLmH0JzHFeg6tQw==","shasum":"798aa92fb588475d465bbda0a06b6024578a7419","tarball":"https://registry.npmjs.org/@contiamo/resource-role-assigner/-/resource-role-assigner-0.3.3.tgz","fileCount":17,"unpackedSize":69519,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb/+HgCRA9TVsSAnZWagAA+doQAIPGEakM2J+3q8jRaiYg\n8REJ2l4HHdz0/gOCG8OOgV+cm2+YiR6X6AdRuZ/9UNV7TbZxnfHXBHo5tZfB\nuFJEg1lruxFtA3qpah9Z2Ef0k2eBY64ZLXlTdbe8189jRrhegsimy/WXQ23/\nIForZ5nI7ic/ACCDjc1S7vUITb7WhT6P0whOw1K6ximCJYeb9LayD4PRyrBN\nUoX2cjc1T/xYUHaFEqaCs+lrKIaweia8MbKxqjM2T922i5niFrTh+c44bp/M\nhYkEty8DhiSQ9an8or/ivV7e5ReKAIfnVHd8fCpp8tzyCq//JDarxb2Dk0iE\ncnxN6afP9e5LybjYsaqGh23UTZwOzDOYXkoDM68oX3PGtfD/ljIAFHelBzP7\nIfwCOQgOuOgz+Q4MqpnlqLimOv5wqHiVcZZPRz+dr+DkR63/MzdKbVdbt05/\nldlCY0Xn0oGNiGPUAx42ZYtCFRe2/12LC8nDp1czTyG9zmcwq3nvnSnonJwe\nLiW2egaNp41M8RVUGalNzpMKfjSD0/R4uvgHW0Ms7LqnyLWus9k4l9GIviJB\nrz72E6UYONkSx1bTfX5C1K9VtEyhsglMSHdk97ToLf+Y80Ylb5EL/x8Nt9Ii\nS3RDyWsW42dzWDmXs+iVfcnekzMkrHdP0jrQ526FmnvO7OYA9mndV81fVlpv\nBR7V\r\n=NFKy\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDIHU6cbfnRO6steAdHZnEiynzSLqM6WIsNo7R7vN5ylgIhAPFi6CsdP1ZN85SeFle18EeWxSEeHtgsSdFkpxBpmjWe"}]},"maintainers":[{"name":"peterszerzo","email":"szerzo.peter@gmail.com"},{"name":"fabien0102","email":"fabien0102@gmail.com"},{"name":"tejaskumar","email":"tejas@tejas.qa"},{"name":"the-other-tejas","email":"tejas@contiamo.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/resource-role-assigner_0.3.3_1543496160240_0.997192111393788"},"_hasShrinkwrap":false},"0.4.0-alpha.1":{"name":"@contiamo/resource-role-assigner","version":"0.4.0-alpha.1","description":"This project allows our UIs to assign roles for a given user, group or API token (called a _principal_) _on_ a given resource: like a Bundle in Labs or a Data Source in Pantheon.","main":"lib/index.js","scripts":{"test":"operational-scripts test","start":"operational-scripts start","build":"operational-scripts build --for npm","prepublishOnly":"operational-scripts prepare"},"keywords":[],"author":"","license":"ISC","dependencies":{"@operational/components":"^12.2.1-rra","js-cookie":"^2.2.0","react":"^16.6.0"},"devDependencies":{"@operational/scripts":"^1.1.4","@types/js-cookie":"^2.2.0","@types/react":"^16.4.16"},"readme":"# Resource Role Assigner\n\nThis project allows our UIs to assign roles for a given user, group or API token (called a _principal_) _on_ a given resource: like a Bundle in Labs or a Data Source in Pantheon.\n\nIn essence, this tool (expressed as a Modal window), allows a user to \"make Peter an Admin of Catalog 123\" in a user-friendly way.\n\n<!-- START doctoc generated TOC please keep comment here to allow auto update -->\n<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->\n\n- [Getting Started](#getting-started)\n- [Contributing](#contributing)\n\n<!-- END doctoc generated TOC please keep comment here to allow auto update -->\n\n## Getting Started\n\n1. `npm install resource-role-assigner --registry=https://npm.contiamo.com`\n1. Consider the following use-case from Pantheon\n\n```tsx\nimport React, { useState } from \"react\"\nimport ResourceRoleAssigner from \"resource-role-assigner\"\n\nconst MyComponent = ({ catalog, dataSource, me }) => {\n    const [modalState, setModalState] = useState(false);\n    const availableRoles: [\"Reader\", \"Editor\", \"Viewer\"] = [\"Reader\", \"Editor\", \"Viewer];\n\n    return (<ResourceRoleAssigner\n        onClose={() => setModalState(false)}\n        defaultRole=\"Editor\"\n        roles={availableRoles}\n        resource={{\n            name: catalog.name,\n            permissionsUrl: `${getConfig(\"pantheon.backend\")}/catalogs/${catalog.id}/dataSources/${dataSource.id}/permissions`,\n            requestOptions: {\n                headers: {\n                    \"x-double-cookie\": Cookies.get(\"double-cookie\"),\n                },\n                credentials: \"include\",\n            },\n        }}\n        idp={{\n            url: `${getConfig(\"auth\")}/v2/${me.tenant.id}`,\n            usersUrl: `${getConfig(\"auth\")}/v2/tenants/${me.tenant.id}/users`,\n            groupsUrl: `${getConfig( \"auth\")}/v2/tenants/${me.tenant.id}/realms/${catalog.id}/groups`,\n        }}\n    />)\n}\n```\n\n## Contributing\n\nThis project uses [Operational Scripts](https://github.com/contiamo/operational-scripts) and has a familiar tooling set up. To contribute to this project, simply:\n\n1. `git clone` this repo,\n1. `cd resource-role-assigner`\n1. `npm install`\n1. `code .` or `vim` or spin up your editor of choice.\n1. Go to town.\n\nAs usual, issues and pull requests are enabled in case any help is needed or discussions are to be had.\n\nHappy coding!\n","readmeFilename":"README.md","gitHead":"b8c643da0308196abbd86bc72b1ec5811e49652f","_id":"@contiamo/resource-role-assigner@0.4.0-alpha.1","_npmVersion":"6.4.1","_nodeVersion":"10.14.1","_npmUser":{"name":"tejaskumar","email":"tejas@tejas.qa"},"dist":{"integrity":"sha512-qamk3N9m48ka28IcXCDeqaEZhss4c8O4mbtAYag6H+Hs/qgjf+OMlB6fiFY/oUNOnley80wcnu3VsckEjHQuEw==","shasum":"0ea9cd229c9be2e776d27a1a61149ac253e4c00f","tarball":"https://registry.npmjs.org/@contiamo/resource-role-assigner/-/resource-role-assigner-0.4.0-alpha.1.tgz","fileCount":17,"unpackedSize":78291,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcD8FlCRA9TVsSAnZWagAAYGwQAKBS1Rk/FKoLtAagUbal\nOwjNX48f2FqBt8UG81RHaORIxgERuIA8qNrWzguqPmAUoH+50hGK7PbA63cX\nrjpxbWPCOzMhdyVQVzC3BTh/cLFY7qgM0IJKnOcIQ9hFMkaiOsdsHWmHPRf3\nyARzMJxNuzwEH5m1jivvALHZkq2lNv2/u3U0KMErwWvqOC9YE06/kPlFKnXq\nEjPb0utO6xBXzlS0Ab1KS6m8GMl/1+Ua9+Fp0HghmpnCcmWv+zCpRKj04B5s\ng65KVfkjYcRAqtgfoB26HlaOzCAwBFl3ntOQGOovdFcwxSyEgFnAJU4ChnAd\nITgEpI7eOHPeZ2xuDr6zh4b290p0kTRClCA8R5CxtFkGxoYoIrvuVeg5qFId\nQKrUJCWWxjZ1QrgA03Zmi6IMz4Z9SDsZOLeo6ylvj1Xj6O8J8QPH1q+LC6+z\n1dAkxAmnMwJJ3GWZxE9XLzvEnM07/mVYQ5t9G23f6xMYM+kpsGcyz76CdyRm\nlArGp4AmV3O77N8aQAeMZ4W0yRz6UTZkWOPoqOVFkge9hAwzuQ4kVqV+8IOe\naS9jAipy4krI7RElPyFplMja8ys2RCndUG6CK11Eiqn0bszl4Ug3pU+s5xIO\nUK1rGMMy/5Qkny1KCwbCJ6x8iMosr89vs2e7keHa6xSRlUAtg2YdU97J09D+\nDEM2\r\n=1UT/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDyGgwpGmu2jnzlnru9RkJQ7X/hx0dBxhWdDAJbCTS8EwIgVXg55fl+Ru9XFUrq14vXzWFGUTH8yi6qLXSIqQ6Bays="}]},"maintainers":[{"email":"fabien0102@gmail.com","name":"fabien0102"},{"email":"szerzo.peter@gmail.com","name":"peterszerzo"},{"email":"tejas@tejas.qa","name":"tejaskumar"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/resource-role-assigner_0.4.0-alpha.1_1544536421041_0.48862544806575015"},"_hasShrinkwrap":false},"0.4.0":{"name":"@contiamo/resource-role-assigner","version":"0.4.0","description":"This project allows our UIs to assign roles for a given user, group or API token (called a _principal_) _on_ a given resource: like a Bundle in Labs or a Data Source in Pantheon.","main":"lib/index.js","scripts":{"test":"operational-scripts test","start":"operational-scripts start","build":"operational-scripts build --for npm","prepublishOnly":"operational-scripts prepare"},"keywords":[],"author":"","license":"ISC","dependencies":{"@operational/components":"^12.2.1-rra","js-cookie":"^2.2.0","react":"^16.6.0"},"devDependencies":{"@operational/scripts":"^1.1.4","@types/js-cookie":"^2.2.0","@types/react":"^16.4.16"},"gitHead":"f38da2a97a4a26ce8bf91fa824f0365959e46acd","_id":"@contiamo/resource-role-assigner@0.4.0","_npmVersion":"6.4.1","_nodeVersion":"10.15.1","_npmUser":{"name":"tejaskumar","email":"tejas@tejas.qa"},"dist":{"integrity":"sha512-i5v6Bn0E55hSN6rfbVT6BJQpO5ILXBNevu/lKydfYGrFk0h/jFc1oVy/j+uqWzd5iIyPTpzZz1ZnddNm0xnV6Q==","shasum":"a4a0adddb6e5e3f924a5c80e11484ed58097e2e1","tarball":"https://registry.npmjs.org/@contiamo/resource-role-assigner/-/resource-role-assigner-0.4.0.tgz","fileCount":17,"unpackedSize":78835,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcd7GICRA9TVsSAnZWagAAVfMP/2SF4CoHGp5Ro42GPTcj\nfxG8XuPjcPF8+gXndiErrsZXMhuVbWqXxihrXBNE2Gg+Jlt2Qc8b2UJQeWgz\nSiSrYjhGcNHqpKyCu+DQMf6YjkFKPux+xXvULGAPna95hbdvChVRROk3z+yQ\nL3/EckqZIrpHPz8BEQRoWZAnEaBR8M77LY7FiJduJGULuIKy91NFlMhIX9pm\nTz2x3EW5BZ/XxbiaOY6wdQBbyghcwx5w4tqAR20BLjPZfsp4pQ3EgRIiWNl/\nfGXMoZeZEegFFn9XlLTwvFwS0e0ioLwfcYW6x1Rjiy+o3+N0a7UyCZd0HQaf\nCkC+nxeYitlL9d4/UsSfi/FlxEO5gM4K7bvTIG9kClci4mRPI4CPWfp5GCs+\nAluOQ8WI6UFFBLCeMAV/3FIImvuStAZYFnQVeeyQIJeYzzg0kO9swcLKnEBB\nUNCMyoTf6NFRC0CWpmMb82kZ7T9u7+G+uJZcq8AlCzNW31dUzWuEi9D5gTen\nCy9Dq3sCnuv6bYLLnS9UXa7M0uwSiF5+73ohEWqSwQOsx2emVYUW9pqZssmT\nGjEaMGqAwJ4auMS8/sKpxTQDxvexa6YfVDYdqNFX2IJnw2udqQcUG5nGQR+6\ntUjMxT1mRBnimI6Pwn7YdJsRlPfYkEl+mRu1oVGC6VBqMZ8GEZn9UUxneZL0\nIwe0\r\n=XpQ2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDIAd9/r624l57WJFH5fDkE1tLZi9hf5g/UUTvWJteBsgIhAMyY8vKjGa75jSzMLhkcqrgLW/43IQcVAi8V5d5PxyUk"}]},"maintainers":[{"email":"fabien0102@gmail.com","name":"fabien0102"},{"email":"stereobooster@gmail.com","name":"stereobooster"},{"email":"tejas@tejas.qa","name":"tejaskumar"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/resource-role-assigner_0.4.0_1551348104421_0.8751016305444927"},"_hasShrinkwrap":false},"0.4.1":{"name":"@contiamo/resource-role-assigner","version":"0.4.1","description":"This project allows our UIs to assign roles for a given user, group or API token (called a _principal_) _on_ a given resource: like a Bundle in Labs or a Data Source in Pantheon.","main":"lib/index.js","scripts":{"test":"operational-scripts test","start":"operational-scripts start","build":"operational-scripts build --for npm","prepublishOnly":"operational-scripts prepare"},"keywords":[],"author":"","license":"ISC","dependencies":{"@operational/components":"^12.2.1-rra","js-cookie":"^2.2.0","react":"^16.6.0"},"devDependencies":{"@operational/scripts":"^1.1.4","@types/js-cookie":"^2.2.0","@types/react":"^16.4.16"},"gitHead":"feec08210991cd0973a1142e1b848911047aab56","_id":"@contiamo/resource-role-assigner@0.4.1","_npmVersion":"6.4.1","_nodeVersion":"10.15.2","_npmUser":{"name":"mpotomin","email":"mikhail.potyomin@gmail.com"},"dist":{"integrity":"sha512-G+rdXggAC/eRwe8dc+0hHzjB/YR8A1m7Trtjb6UByDT2/2JFmVggKDlZmFELtQa6T1t9/TIofvjFAKJ2Kuf14g==","shasum":"df1dfa9b269c69a10119b2f50974f4e53504dda4","tarball":"https://registry.npmjs.org/@contiamo/resource-role-assigner/-/resource-role-assigner-0.4.1.tgz","fileCount":17,"unpackedSize":78885,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcmQJOCRA9TVsSAnZWagAAfxQQAITxw5RPSKG3oIVRgHtA\nzllxIrnCf9v16Zgg5SRDwNWk8F+TMgckrft/BPsLfaoIpR6RTflYykwDhXuc\naOp7dY0MEyMM4zCUUaaOKoBMYJ6SpunUqgE8ZNt+WxLfw1VtDYM44VuHs0M5\nEZ1GN+DXocakk8VNL8t2+OaCSzxS2SvN4pvB8Ldl0kNO4Kd7vOPDIU05MGdC\nQSdFyErus+nVCWv5q+EwsKc/g12sBYCPbSdVVRtCgZ8w4y/oCAbqw1tb7eDs\nP2l2bU2Yfmhy+H/O+KMTLEc6VueVTddzGj7mJH8gh8rlxoeg4sfPKWAJ2zJ0\nY9GSogqyCjrnKWm5RGaHCy96abzpxoKGATyihQ6yyNCMxPr5S525PwPbu4Wa\njEC2/f9CzQep9EXt+rpGhzEq+ohojN0a/wf+9kJXa/0S7cjWlJhwwXMVWjBo\nKYbNx0X3JaQY8GzpBMveJ8M1iVY+Ga/hil526v+qnkvfUkP6GYo6LcBMnSTV\nmZCRAR1Xben7zSDVF8q9sH22VlsxHtzNeQV8n6KTDLjYrRJby2ai5uR2abJJ\ndhv9s11wHwv50daFqGw9TpZ4VRivDkPcwKpY3NMNdaPfZIoc5iPxXTQz7UN3\nAXprIfFFS84o5MY3v0ipF8W/zALyw9zQNtEiO2YeBWkLQhu10x/VpAKn6/O4\nJuc5\r\n=e/Xh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCaxKJgJKCo740c0R8HyqQmYmGvDi34UitWj2aVlvy5lAIhAJR54JLb1hPoepUGNYPYy6ucEU1NC0gg2C595FBA1sBi"}]},"maintainers":[{"email":"fabien0102@gmail.com","name":"fabien0102"},{"email":"mikhail.potyomin@gmail.com","name":"mpotomin"},{"email":"stereobooster@gmail.com","name":"stereobooster"},{"email":"tejas@tejas.qa","name":"tejaskumar"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/resource-role-assigner_0.4.1_1553531469300_0.8303353744746198"},"_hasShrinkwrap":false},"0.4.2":{"name":"@contiamo/resource-role-assigner","version":"0.4.2","description":"This project allows our UIs to assign roles for a given user, group or API token (called a _principal_) _on_ a given resource: like a Bundle in Labs or a Data Source in Pantheon.","main":"lib/index.js","scripts":{"test":"operational-scripts test","start":"operational-scripts start","build":"operational-scripts build --for npm","prepublishOnly":"operational-scripts prepare"},"keywords":[],"author":"","license":"ISC","dependencies":{"@operational/components":"^12.2.1-rra","js-cookie":"^2.2.0","react":"^16.6.0"},"devDependencies":{"@operational/scripts":"^1.1.4","@types/js-cookie":"^2.2.0","@types/react":"^16.4.16"},"gitHead":"21a8683534c5fba6edcfaff76f19aa4d5de2b524","_id":"@contiamo/resource-role-assigner@0.4.2","_npmVersion":"6.4.1","_nodeVersion":"10.15.2","_npmUser":{"name":"mpotomin","email":"mikhail.potyomin@gmail.com"},"dist":{"integrity":"sha512-tdx1yzsJbZvSkF+MPwbsQxAE7ic/i9ze9RLtO/x9uE9XZA8Mn5QXDOxIrucU+/BcmhMfpR9Qe3p5LeHeOLsv6Q==","shasum":"0c4c161d81289219f03537ebe6ea794396df24fc","tarball":"https://registry.npmjs.org/@contiamo/resource-role-assigner/-/resource-role-assigner-0.4.2.tgz","fileCount":17,"unpackedSize":78885,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcmlKwCRA9TVsSAnZWagAAYu0P/2PmIowOVR1rc2gxHKO4\nd72OJomguzHhu48LZX0eGrv4IyWPeym3ElC6eJcLJL4fEhd2pbEFjQft5cm/\nos5l4r31YCeixwQjcoEIWK61Z1U4ysW9A9llfBRXNgfw1qo0yJkQvrksWAzX\nknwptiERQ3TH91XIrc/QS3k1SZ8KDX3ifSQHv0f1cjEx29hLnbumJkQZ45y7\nZ3gy5EWWdnkydKjClcfw6Vnc077bl0+Pt9rKFt3h11sRd/kDb5RjnUMtVLRq\nUIbrn9W1LSeAF/csd8dlqO7flqXAc8zhxznnvmz+neSj1s1GoXjBH/271oQU\nYU+OdvbAbEXJ80NxKH9B5Oh09YiUW7eBmIupwh8nQYtG+lliwRhHsLmf6F01\nOXvkAvkhjQ7BsLyDFWEO3o+pj7Fvku0y+vXEOLqxJFxbmkAdrUmwTHRmUq2X\nd38tUzR8SV2pJHX9LU7I4VLWV+wHJ7R6UdJpTlFTqJaH+jEfeVBiYDf/MGGS\nmRG+AYzLS5AFK0IqMztA7H7v40CU3yCGidW0AuOUh7QQtJL6she/BRIwOyi0\nBnWolKdjp0cWvVsxKFm8XI3O93ALWeBgHudXwwYNpvyehvmDQmeeOMnsrcFo\na6MghbX/YKVH/1EATPxgGyuqQbSoAKVaC3pI+ygNNTGj0/cyStbUF+5rDjRW\nLJzW\r\n=lD8A\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDUvoFkUuDayX+DPgZpXfxpPfzWkIain5JZEoyeFYL1EAIhANYFYPAjcFowga6MppJ15HAxOXNhP4Y3CSDZzvEcr47F"}]},"maintainers":[{"email":"fabien0102@gmail.com","name":"fabien0102"},{"email":"mikhail.potyomin@gmail.com","name":"mpotomin"},{"email":"stereobooster@gmail.com","name":"stereobooster"},{"email":"tejas@tejas.qa","name":"tejaskumar"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/resource-role-assigner_0.4.2_1553617583464_0.8741696105729719"},"_hasShrinkwrap":false},"0.4.3":{"name":"@contiamo/resource-role-assigner","version":"0.4.3","description":"This project allows our UIs to assign roles for a given user, group or API token (called a _principal_) _on_ a given resource: like a Bundle in Labs or a Data Source in Pantheon.","main":"lib/index.js","scripts":{"test":"operational-scripts test","start":"operational-scripts start","build":"operational-scripts build --for npm","prepublishOnly":"operational-scripts prepare"},"keywords":[],"author":"","license":"ISC","dependencies":{"@operational/components":"^12.2.1-rra","js-cookie":"^2.2.0","react":"^16.6.0"},"devDependencies":{"@operational/scripts":"^1.1.4","@types/js-cookie":"^2.2.0","@types/react":"^16.4.16"},"gitHead":"4e6534bbb6f41009b5c7b03751f95525799add45","_id":"@contiamo/resource-role-assigner@0.4.3","_nodeVersion":"11.8.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-h3nIAFIhc5q35U92xDeDCQ2hrGoc82vVeHWm2n2FKcc0pnM3vCwkoL08JO1a+6gKMZV1MTZi5sS36DnOPrzruQ==","shasum":"ca746f99a8d83ec5c6da8d278266f3012ca0ee2a","tarball":"https://registry.npmjs.org/@contiamo/resource-role-assigner/-/resource-role-assigner-0.4.3.tgz","fileCount":17,"unpackedSize":78888,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcm3VaCRA9TVsSAnZWagAAAlQP/1s2Mi8ze5jTpdA9Fxph\nXyCbR+Rhn67WahPWXz7zAeOpvgecxvZJepy+HG9BLjWoppyx+2iptFNfno1T\n4fuhEjngPqYVIIiY0b36LoLhP3dmBV2G2R7JzzKcQuJl0tLbVz9X3LeJmCKf\n7JcYxBYS64rC9kF0hHhy2vc3J67/D76o7Y2GEL7YNJVEXUVurmtTr9ECAIFh\nJ9x7dj+czazS+laDyiGnoE3fHNvMk13aHZ1A3hXOZaKfT/X16ETXM89Rjw/f\nx+10tZgoKTD53TQQawbaQUeV3UqMsvAbthJdF3WXZIOnGO6A8UjOAw8vmKK7\nRHvKXxTGunYf90Af72HQ+lJSgeuFCOiBia6WnZtT1qGdXMynLy/PPi6+vD1r\ng4hcNKR904mpLUjolreiisx/rMw5mFIdMKzlM3ZCYAn7T+ApFex4QyELWOi6\nyzZ1HF08AGPcRlnYoMOOufTgct1e9Q4Z24qt9FFY6Rwcc2V3GrCtP6OT+NUQ\nXw3VkDSaEEHEDhjJgz1Z/QY91S82KZPjoNWcW/XhYZXC7ElYC5I7uEatt7j5\nSWE/HSoHha7JnKhprVjexkb/2a/jtY5wuROi+nYt0OFVxJ5QfNeFbZpQPxxz\nnHD89BspBuM4KV3cNC/uILkb/q8/V3SYQJ5APyfAk20fg0dD7n8chRkQgGew\nFvmN\r\n=qg7G\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHOGoSwaprnvis/5nekTpVpo/TiwSN2NvNkUR224igOPAiEA47oPU/tdYQ6U/gquX2joFYIH+VYL2FnQKVp5kxcG5X8="}]},"maintainers":[{"email":"fabien0102@gmail.com","name":"fabien0102"},{"email":"mikhail.potyomin@gmail.com","name":"mpotomin"},{"email":"stereobooster@gmail.com","name":"stereobooster"},{"email":"tejas@tejas.qa","name":"tejaskumar"}],"_npmUser":{"name":"stereobooster","email":"stereobooster@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/resource-role-assigner_0.4.3_1553691993535_0.5477191119727602"},"_hasShrinkwrap":false}},"time":{"created":"2018-11-29T12:56:00.047Z","0.3.3":"2018-11-29T12:56:00.443Z","modified":"2022-04-05T01:07:46.139Z","0.4.0-alpha.1":"2018-12-11T13:53:41.168Z","0.4.0":"2019-02-28T10:01:44.573Z","0.4.1":"2019-03-25T16:31:09.697Z","0.4.2":"2019-03-26T16:26:23.563Z","0.4.3":"2019-03-27T13:06:33.676Z"},"maintainers":[{"email":"tejas@tejas.qa","name":"tejaskumar"},{"email":"fabien0102@gmail.com","name":"fabien0102"},{"email":"mikhail.potyomin@gmail.com","name":"mpotomin"}],"description":"This project allows our UIs to assign roles for a given user, group or API token (called a _principal_) _on_ a given resource: like a Bundle in Labs or a Data Source in Pantheon.","keywords":[],"license":"ISC","readme":"# Resource Role Assigner\n\nThis project allows our UIs to assign roles for a given user, group or API token (called a _principal_) _on_ a given resource: like a Bundle in Labs or a Data Source in Pantheon.\n\nIn essence, this tool (expressed as a Modal window), allows a user to \"make Peter an Admin of Catalog 123\" in a user-friendly way.\n\n<!-- START doctoc generated TOC please keep comment here to allow auto update -->\n<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->\n\n- [Getting Started](#getting-started)\n- [Contributing](#contributing)\n\n<!-- END doctoc generated TOC please keep comment here to allow auto update -->\n\n## Getting Started\n\n1. `npm install @contiamo/resource-role-assigner`\n1. Consider the following use-case from Pantheon\n\n```tsx\nimport React, { useState } from \"react\"\nimport ResourceRoleAssigner from \"@contiamo/resource-role-assigner\"\n\nconst MyComponent = ({ catalog, dataSource, me }) => {\n    const [modalState, setModalState] = useState(false);\n    const availableRoles: [\"Reader\", \"Editor\", \"Viewer\"] = [\"Reader\", \"Editor\", \"Viewer];\n\n    return (<ResourceRoleAssigner\n        onClose={() => setModalState(false)}\n        defaultRole=\"Editor\"\n        roles={availableRoles}\n        resource={{\n            name: catalog.name,\n            permissionsUrl: `${getConfig(\"pantheon.backend\")}/catalogs/${catalog.id}/dataSources/${dataSource.id}/permissions`,\n            requestOptions: {\n                headers: {\n                    \"x-double-cookie\": Cookies.get(\"double-cookie\"),\n                },\n                credentials: \"include\",\n            },\n        }}\n        idp={{\n            url: `${getConfig(\"auth\")}/v2/${me.tenant.id}`,\n            usersUrl: `${getConfig(\"auth\")}/v2/tenants/${me.tenant.id}/users`,\n            groupsUrl: `${getConfig( \"auth\")}/v2/tenants/${me.tenant.id}/realms/${catalog.id}/groups`,\n        }}\n    />)\n}\n```\n\n## Contributing\n\nThis project uses [Operational Scripts](https://github.com/contiamo/operational-scripts) and has a familiar tooling set up. To contribute to this project, simply:\n\n1. `git clone` this repo,\n1. `cd resource-role-assigner`\n1. `npm install`\n1. `code .` or `vim` or spin up your editor of choice.\n1. Go to town.\n\nAs usual, issues and pull requests are enabled in case any help is needed or discussions are to be had.\n\nHappy coding!\n","readmeFilename":"README.md"}