3.0.2 • Published 1 year ago

@lakea/gravity-cookie-adapter-ngx-cookie v3.0.2

Weekly downloads
-
License
-
Repository
-
Last release
1 year ago

@lakea/gravity-cookie-adapter-ngx-cookie

An adapter for GrCookie using ngx-cookie as implementation.

Installation

Install the library using NPM:

npm install @lakea/gravity-cookie-adapter-ngx-cookie ngx-cookie --save

Next, create a new file, cookie-adapter-root.module.ts which exposes an Angular's module with a default configuration.

import {NgModule} from '@angular/core';
import {CookieModule} from 'ngx-cookie';
import {GrCookie} from '@lakea/gravity/cdk';
import {GrCookieAdapterNgxCookie} from '@lakea/gravity-cookie-adapter-ngx-cookie';

@NgModule({
  imports: [CookieModule.withOptions()],
  providers: [
    {
      provide: GrCookie,
      useClass: GrCookieAdapterNgxCookie,
    },
  ],
})
export class CookieAdapterRootModule {}

Import CookieAdapterRootModule to application root module like app.module.ts.

You should import the CookieAdapterRootModule once in your root module.

The CookieAdapterRootModule file imports the CookieModule from ngx-cookie library and provide the adapter implementation too.

To configure the ngx-cookie library, read the docs here.


Creating your own adapter

Create your adapter implementation class extending GrCookie abstraction:

import {Injectable} from '@angular/core';

import {GrCookie} from '@lakea/gravity/cdk';

@Injectable()
export class GrCookieAdapter extends GrCookie {
  constructor() {
    super();
  }

  public getItem(key: string): string {
    // YOUR IMPLEMENTATION
  }

  public getObjectItem(key: string): object {
    // YOUR IMPLEMENTATION
  }

  public removeAll(): void {
    // YOUR IMPLEMENTATION
  }

  public removeItem(key: string): void {
    // YOUR IMPLEMENTATION
  }

  public setItem(key: string, value: string): void {
    // YOUR IMPLEMENTATION
  }

  public setObjectItem(key: string, value: object): void {
    // YOUR IMPLEMENTATION
  }
}

So, provide it on your application root module (maybe app.module.ts), like this:

  providers: [
    {
      provide: GrCookie,
      useClass: GrCookieAdapter,
    }
  ]
2.0.0-next.4

1 year ago

3.0.0-next.0

1 year ago

2.0.2

1 year ago

2.0.0-next.2

1 year ago

2.0.0-next.3

1 year ago

2.0.0-next.1

1 year ago

2.0.1

1 year ago

2.0.0

1 year ago

3.0.2

1 year ago

3.0.0

1 year ago

1.1.0

2 years ago

2.0.0-next.0

2 years ago

1.1.0-next.10

2 years ago

1.1.0-next.9

2 years ago

1.1.0-next.8

2 years ago

1.1.0-next.7

2 years ago

1.1.0-next.6

2 years ago

1.0.9

2 years ago

1.0.8

2 years ago

1.0.7

2 years ago

1.0.10-next.1

2 years ago

1.0.10-next.0

2 years ago

1.1.0-next.5

2 years ago

1.0.10-next.3

2 years ago

1.1.0-next.4

2 years ago

1.0.10-next.2

2 years ago

1.1.0-next.3

2 years ago

1.1.0-next.2

2 years ago

1.1.0-next.1

2 years ago

1.1.0-next.0

2 years ago

1.0.10

2 years ago

1.0.6

2 years ago

1.0.5

2 years ago

1.0.4

2 years ago

1.0.3

2 years ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago