Introducing Socket Firewall: Free, Proactive Protection for Your Software Supply Chain.Learn More
Socket
Book a DemoInstallSign in
Socket

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

Package Overview
Dependencies
Maintainers
3
Versions
38
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

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

An adapter for `GrCookie` using [`ngx-cookie`](https://github.com/salemdar/ngx-cookie) as implementation.

latest
npmnpm
Version
3.0.2
Version published
Maintainers
3
Created
Source

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,
    }
  ]

FAQs

Package last updated on 19 Jan 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts