diff --git a/npm/ng-packs/packages/core/src/lib/services/index.ts b/npm/ng-packs/packages/core/src/lib/services/index.ts index 209d2a881e..fefc9931eb 100644 --- a/npm/ng-packs/packages/core/src/lib/services/index.ts +++ b/npm/ng-packs/packages/core/src/lib/services/index.ts @@ -18,3 +18,4 @@ export * from './routes.service'; export * from './session-state.service'; export * from './subscription.service'; export * from './track-by.service'; +export * from './local-storage.service'; diff --git a/npm/ng-packs/packages/core/src/lib/services/local-storage.service.ts b/npm/ng-packs/packages/core/src/lib/services/local-storage.service.ts new file mode 100644 index 0000000000..15ae8d53a3 --- /dev/null +++ b/npm/ng-packs/packages/core/src/lib/services/local-storage.service.ts @@ -0,0 +1,28 @@ +import { Injectable } from '@angular/core'; + +@Injectable({ + providedIn: 'root', +}) +export class AbpLocalStorageService implements Storage { + constructor() {} + [name: string]: any; + get length(): number { + return localStorage.length; + } + + clear(): void { + localStorage.clear(); + } + getItem(key: string): string { + return localStorage.getItem(key); + } + key(index: number): string { + return localStorage.key(index); + } + removeItem(key: string): void { + localStorage.removeItem(key); + } + setItem(key: string, value: string): void { + localStorage.setItem(key, value); + } +} diff --git a/npm/ng-packs/packages/core/src/lib/tests/local-storage.service.spec.ts b/npm/ng-packs/packages/core/src/lib/tests/local-storage.service.spec.ts new file mode 100644 index 0000000000..204c052d21 --- /dev/null +++ b/npm/ng-packs/packages/core/src/lib/tests/local-storage.service.spec.ts @@ -0,0 +1,16 @@ +import { TestBed } from '@angular/core/testing'; + +import { AbpLocalStorageService } from '../services/local-storage.service'; + +describe('LocalStorageService', () => { + let service: AbpLocalStorageService; + + beforeEach(() => { + TestBed.configureTestingModule({}); + service = TestBed.inject(AbpLocalStorageService); + }); + + it('should be created', () => { + expect(service).toBeTruthy(); + }); +});