Home

Awesome

<p align="center"> <a href="https://github.com/Celtian/ngx-update-app" target="blank"><img src="assets/logo.svg?sanitize=true" alt="" width="120"></a> <h1 align="center">NgxAppVersion</h1> </p>

npm version Package License NPM Downloads Snyk stars forks HitCount

Angular directive for updating app via service workers

Angular 18 compatible

Here's the demo

🛠️ Install

yarn add ngx-update-app

🚀 Quick start

  1. Provide config
import { provideUpdateApp } from 'ngx-update-app';

export const appConfig: ApplicationConfig = {
  providers: [
    provideUpdateApp({
      interval: 1000 * 60, // check new version every minute
      dryRun: false, // set to true if zou want to see alert on init
      onUpdateFactory: () => {
        // you can use inject() here
        return () => alert('Should update');
      }
    }),
    provideServiceWorker('ngsw-worker.js', {
      enabled: !isDevMode(),
      registrationStrategy: 'registerWhenStable:30000'
    })
  ]
};
  1. Use directive in root component
import { NgxUpdateAppDirective } from 'ngx-update-app';

@Component({
  standalone: true,
  hostDirectives: [NgxUpdateAppDirective]
})
export class AppComponent {}

🛠️ Options

OptionTypeDefaultDescription
intervalnumberundefinedinterval to check new version in milliseconds
dryRunbooleanfalseforce update action once on init
onUpdateFactoryfunctionundefinedfunction which will be called on update

🔧 Compatibility

Angularngx-fixed-footerInstall
>= 181.xyarn add ngx-update-app
>= 170.xyarn add ngx-update-app@0

📦 Dependencies

None

🪪 License

Copyright © 2023 - 2024 Dominik Hladik

All contents are licensed under the MIT license.