@paraboly/pwc-permission-engine

Web Component Permission Engine via Paraboly

Usage no npm install needed!

<script type="module">
  import parabolyPwcPermissionEngine from 'https://cdn.skypack.dev/@paraboly/pwc-permission-engine';
</script>

README

Built With Stencil

WebComponent PWC Permission Engine

Web Component Permission Engine via Paraboly

npm version npm Platform - Platform Free Web License: MIT

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.