Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/voltra/ngx-gdpr-guard

Angular library to use gdpr-guard as efficiently and easily as possible
https://github.com/voltra/ngx-gdpr-guard

angular angular-library gdpr-guard hacktoberfest

Last synced: about 8 hours ago
JSON representation

Angular library to use gdpr-guard as efficiently and easily as possible

Awesome Lists containing this project

README

        

# ngx-gdpr-guard

Logo

Angular library to use [gdpr-guard](https://www.npmjs.com/package/gdpr-guard) as efficiently and easily as possible

## Installation

```bash
npm i -S ngx-gdpr-guard
```

## Setup

You'll need both a `GdprManagerFactory` and a `GdprSavior`.

> NOTE: The recommended gdpr savior library is [`gdpr-guard-local`](https://www.npmjs.com/package/gdpr-guard-local) which uses local storage by default, but can be customized to use anything.

You can use a very basic `GdprManagerFactory` using the `GdprManagerBuilder` as follows:

```ts
import { GdprManagerBuilder, GdprManagerFactory } from "gdpr-guard";

const managerFactory: GdprManagerFactory = () => GdprManagerBuilder.make()
/* [...] */
.build();
```

There's an injection token for both the factory and the savior:

```ts
import { GDPR_MANAGER_FACTORY_TOKEN, GDPR_SAVIOR_TOKEN } from "ngx-gdpr-guard";

const providers = [
{ provide: GDPR_MANAGER_FACTORY_TOKEN, /* [...] */ },
{ provide: GDPR_SAVIOR_TOKEN, /* [...] */ },
];
```

With these providers in scope, you can inject the `NgxGdprGuardService`:

```ts
import { NgModule } from "@angular/core";
import { NgxGdprGuardService } from "ngx-gdpr-guard";

@NgModule({
declarations: [],
imports: [],
exports: [],
})
export class MyModule {
constructor(private ngxGdprGuard: NgxGdprGuardService) {
}
}
```