# aacl-context-menu

> Notes: * rxjs (ReactiveXJS) concepts used extensively: https://rxjs-dev.firebaseapp.com/guide/overview

Latest version **0.0.1** (published 2020-11-17) · 0 weekly downloads

## Install

```sh
npm install aacl-context-menu
pnpm add aacl-context-menu
yarn add aacl-context-menu
bun add aacl-context-menu
```

## Health

**Score 25/100 (F)** — status: abandoned.

Positive: has types; esm support; no vulnerabilities.

Warnings: low downloads; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.0.1 |
| Published | 2020-11-17 |
| First published | 2020-11-17 |
| Weekly downloads | 0 |
| TypeScript types | bundled |
| Module format | ESM + CommonJS |
| Dependencies | 3 |
| Unpacked size | 191 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Maintainers | bzli |

## Links

- npm: https://www.npmjs.com/package/aacl-context-menu
- npm.io page: https://npm.io/package/aacl-context-menu

## Dependencies (3)

- [tslib](https://npm.io/package/tslib.md) ^1.9.0
- [aacl-icon](https://npm.io/package/aacl-icon.md) ^1.0.3
- [ngx-contextmenu](https://npm.io/package/ngx-contextmenu.md) ^5.2.0

## Recent versions

- 0.0.1 (latest) — 2020-11-17

## README

# AaclContextMenu

## Installation

## Design/Spec

Notes:
* rxjs (ReactiveXJS) concepts used extensively: https://rxjs-dev.firebaseapp.com/guide/overview

---

**Features**:
* shows context menu based on input data.
* ![aacl-context-menu example](aacl-context-menu.png)
* Context menu DOM element appends to body, so there is always 1 context menu showing. When 1 context menu is showing and click to trigger 2rd one, the 1st one hides automatically. And in order to prevert style leaking, use aacl-context-menu as shell, all logic is in aacl-context-menu-content

---

**Passing Data**:
* passes an items<Array> in 'options'. 
* passes an actionSubject$<Subject> in 'options'. 
* passes an feedbackSubject$<Subject> in 'options'.
* passes an single<boolean> in 'options'.
* passes an showItemIcon<boolean> in 'options'.
* passes an stateful<boolean> in 'options'.
* passes an clickOnDiv<boolean> in 'options'.
* passes an optional forceRefresh<boolean> in 'options'.
* passes an optional eventKey<boolean> in 'options'.
* passes an optional eventValue<any> in 'options'.

---

## How to Use

1. import AaclContextMenuModule in your Parent module,

    ```JavaScript
    //parent component's module
    @NgModule({
        // ...
        imports: [
            // ...
            AaclContextMenuModule
            //
        ],
        // ...
    })
    export class ... { }
    ```

1. add \<aacl-context-menu\> in your template

    ```html
    <aacl-context-menu [options]="options"></aacl-context-menu>
    ```

2. initialize aacl-context-menu options in your parent component's .ts file; 

    ```JavaScript
    this.options = {
        //... config options here
    } as AaclContextMenuOptions;
    ```
    *detailed configuration details can be found in aacl-context-menu.options.ts, and see aacl-context-menu-page for an example*


## Contributors

* Abner Sui (asui@sscinc.com)

---
_Source: https://npm.io/package/aacl-context-menu · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
