Have ideas to improve npm?Join in the discussion! »

    @ngx-cache/fs-storage
    TypeScript icon, indicating that this package has built-in type declarations

    9.0.0 • Public • Published

    @ngx-cache/fs-storage npm version npm downloads

    Fs storage for ngx-cache

    CircleCI coverage tested with jest Conventional Commits Angular Style Guide

    Please support this project by simply putting a Github star. Share this library with friends on Twitter and everywhere else you can.

    Table of contents:

    Getting started

    Installation

    You can install @ngx-cache/fs-storage using npm

    npm install @ngx-cache/fs-storage --save
    

    Note: You should have already installed @ngx-cache/core and @ngx-cache/platform-server.

    Examples

    • ng-seed/universal is an officially maintained seed project, showcasing common patterns and best practices for @ngx-cache/fs-storage.

    Related packages

    The following packages may be used in conjunction with @ngx-cache/fs-storage:

    Adding @ngx-cache/fs-storage to your project (SystemJS)

    Add map for @ngx-cache/fs-storage in your systemjs.config

    '@ngx-cache/fs-storage': 'node_modules/@ngx-cache/fs-storage/bundles/fs-storage.umd.min.js'

    app.module configuration

    • Repeat the app.module configuration steps at @ngx-cache/platform-server.
    • Import FsStorageStaticLoader using the mapping '@ngx-cache/fs-storage', and proceed to settings.

    Settings

    You can call the forRoot static method using FsStorageStaticLoader. By default, it is configured to have the storagePath as './.temp/cache', and storageQuota is set to 5 MB.

    You can customize this behavior (and ofc other settings) by supplying storagePath and storageQuota to FsStorageStaticLoader.

    The following examples show the use of an exported function (instead of an inline function) for AoT compilation.

    Setting up ServerCacheModule to use FsStorageStaticLoader

    app.server.module.ts

    ...
    import { CacheService, CACHE, STORAGE } from '@ngx-cache/core';
    import { ServerCacheModule, FsCacheService } from '@ngx-cache/platform-server';
    import { FsStorageLoader, FsStorageStaticLoader, FsStorageService } from '@ngx-cache/fs-storage';
     
    ...
     
    export function fsStorageFactory(): FsStorageLoader {
      return new FsStorageStaticLoader({
        path: './.temp/cache',
        quota: 5 * 1024 * 1024
      });
    }
     
    @NgModule({
      declarations: [
        AppComponent,
        ...
      ],
      ...
      imports: [
        ...
        ServerStateTransferModule.forRoot(),
        ServerCacheModule.forRoot([
          {
            provide: CACHE,
            useClass: FsCacheService
          },
          {
            provide: STORAGE,
            useClass: FsStorageService
          },
          {
            provide: FsStorageLoader,
            useFactory: (fsStorageFactory)
          }
        ]),
      ],
      ...
      bootstrap: [AppComponent]
    })
    export class AppServerModule {
    }

    FsStorageStaticLoader has one parameter:

    • providedSettings: FsStorageSettings : fs storage settings
      • path: string : storage path for cache files (by default, './.temp/cache')
      • quota: number : disk quota for cache files (by default, 5242880)

    👍 Yeah! @ngx-cache/fs-storage will now provide storage settings to @ngx-cache/platform-server.

    Credits

    • node-localstorage: A drop-in substitute for the browser native localStorage API that runs on node.js

    License

    The MIT License (MIT)

    Copyright (c) 2019 Burak Tasci

    Install

    npm i @ngx-cache/fs-storage

    DownloadsWeekly Downloads

    226

    Version

    9.0.0

    License

    MIT

    Unpacked Size

    204 kB

    Total Files

    33

    Last publish

    Collaborators

    • avatar