systelab-preferences
TypeScript icon, indicating that this package has built-in type declarations

17.0.0 • Public • Published

systelab-preferences

Library to manage your application preferences.

Installing the library

npm install systelab-preferences --save

Local, Session or Memory

For SessionStorage, changes are only available per window (or tab in browsers like Chrome and Firefox). Changes made are saved and available for the current page, as well as future visits to the site on the same window. Once the window is closed, the storage is deleted.

Data stored in LocalStorage persists until explicitly deleted. Changes made are saved and available for all current and future visits to the site.

On the other side, data stored in MemoryStorage is only available inside your application.

How to use the library

In order to use this library you must import the module SystelabPreferencesModule.

After injecting a PreferencesService or a SessionStorageService or a LocalStorageService or a MemoryStorageService instance in your classes, you can work with the preferences by calling the following methods:

For SessionStorageService, LocalStorageService and MemoryStorageService use:

public clear()
public put(key: string, value: any): void
public get(key: string, defaultValue?:any): any
public remove(key: string): void
public removeStartsWith(startWith: string): void
public removeEndsWith(endsWith: string): void

Additionaly for the MemoryStorageService, you can use these two methods to get/put all the preferences in a compress format in order to store them in your backend.

public getInCompressFormat(): string
public putFromCompressFormat(compressed: any)

Finally, for the SessionStorageService and LocalStorageService you are able to setup a prefix for the keys that you will store. If not set, Systelab will be used as a default. Remember that a dot (.) will be added after the prefix. To setup the prefix use:

usePrefix(prefix: string)

PreferencesService is a convenient service to access any individual storage. In order to do that, set the storage using the method:

setStorage(storage: number): any

There are three constants to set the storage:

PreferencesService.IN_MEMORY_STORAGE
PreferencesService.LOCAL_STORAGE
PreferencesService.SESSION_STORAGE

By default, PreferencesService.IN_MEMORY_STORAGE will be used.

The behaviour of each method is the expected for the selected storage type.

Package Sidebar

Install

npm i systelab-preferences

Weekly Downloads

28

Version

17.0.0

License

MIT

Unpacked Size

73.5 kB

Total Files

20

Last publish

Collaborators

  • aserra
  • systelab-technologies
  • olgapuig