README
Installation
Script tag
- Put a script tag similar to this
<script type="module" src="https://unpkg.com/@paraboly/pwc-permission-engine@latest/dist/pwc-permission-engine/pwc-permission-engine.esm.js"></script>
in the head of your index.html - Then you can use the element anywhere in your template, JSX, html etc
Node Modules
- Run
npm install @paraboly/pwc-permission-engine --save
- Put a script tag similar to this
<script src='node_modules/@paraboly/pwc-permission-engine/dist/pwc-permission-engine.js'></script>
in the head of your index.html - Then you can use the element anywhere in your template, JSX, html etc
In a stencil-starter app
- Run
npm install @paraboly/pwc-permission-engine --save
- Add an import to the npm packages
import @paraboly/pwc-permission-engine;
- Then you can use the element anywhere in your template, JSX, html etc
Fundamental Architecture
Value | R | W | X | Description |
---|---|---|---|---|
0 | 0 | 0 | 0 | NO_PERMISSION |
1 | 1 | 0 | 0 | READ |
2 | 0 | 1 | 0 | WRITE |
3 | 1 | 1 | 0 | READ/WRITE |
4 | 0 | 0 | 1 | EXECUTE |
5 | 1 | 0 | 1 | READ/EXECUTE |
6 | 0 | 1 | 1 | WRITE/EXECUTE |
7 | 1 | 1 | 1 | ALL |
Usage
Just call the pwc-permission-engine at the root level of index.html. It will handle the whole project from body to everywhere depends on pwc-id tag.
<pwc-permission-engine></pwc-permission-engine>
Handle the edit and delete buttons
If you want to handle the edit and delete buttons, simply set your buttons as pwc-id="edit-button" or pwc-id="delete-button". If you want to show your edit and delete buttons then you need to set your permission value with the above architecture. Edit buttons should have at least a "WRITE" permission and delete buttons should have at least "EXECUTE" permission.
<button pwc-id="edit-button" />
<button pwc-id="delete-button" />
Authors
FreakyCoder, kuray.ogun@paraboly.com | kurayogun@gmail.com
License
WebComponent PWC PWC permission-engine is available under the MIT license. See the LICENSE file for more info.