UNPKG

ngx-pwa

Version:

Provides functionality around the progressive web app functionality in angular. Most notably the an approach to cache POST, UPDATE and DELETE requests.

51 lines 8.79 kB
import { Component, Inject } from '@angular/core'; import { MatButtonModule } from '@angular/material/button'; import { MatDialogModule, MAT_DIALOG_DATA } from '@angular/material/dialog'; import { VersionReadyDialogDataInternal } from '../../models/version-ready-dialog-data-internal.model'; import * as i0 from "@angular/core"; import * as i1 from "@angular/material/dialog"; import * as i2 from "@angular/material/button"; /** * A dialog that gets displayed when a new version of the pwa has been downloaded and is ready for install. */ export class NgxPwaVersionReadyDialogComponent { dialogRef; data; /** * The data to customize the Version Ready Dialog. * Is built from the MAT_DIALOG_DATA input. */ versionReadyDialogData; constructor(dialogRef, data) { this.dialogRef = dialogRef; this.data = data; } ngOnInit() { this.versionReadyDialogData = new VersionReadyDialogDataInternal(this.data); } /** * Closes the dialog with data to trigger a reload of the app. */ update() { this.dialogRef.close('update'); } /** * Closes the dialog with data to not trigger anything. */ cancel() { this.dialogRef.close('cancel'); } static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NgxPwaVersionReadyDialogComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: NgxPwaVersionReadyDialogComponent, isStandalone: true, selector: "ngx-pwa-version-ready-dialog", ngImport: i0, template: "<h1 mat-dialog-title>{{versionReadyDialogData.title}}</h1>\n<mat-dialog-content>\n {{versionReadyDialogData.message}}\n</mat-dialog-content>\n<mat-dialog-actions>\n <button type=\"button\" mat-raised-button (click)=\"update()\">{{versionReadyDialogData.confirmButtonLabel}}</button>\n <button type=\"button\" mat-raised-button (click)=\"cancel()\">{{versionReadyDialogData.cancelButtonLabel}}</button>\n</mat-dialog-actions>", styles: ["mat-dialog-actions{display:flex;flex-wrap:nowrap;gap:10px;padding-left:24px;padding-right:24px}mat-dialog-actions button{flex:50%}@media (max-width: 1200px){mat-dialog-actions{flex-wrap:wrap}mat-dialog-actions button{flex:100%}}\n"], dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "directive", type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }] }); } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NgxPwaVersionReadyDialogComponent, decorators: [{ type: Component, args: [{ selector: 'ngx-pwa-version-ready-dialog', standalone: true, imports: [ MatButtonModule, MatDialogModule ], template: "<h1 mat-dialog-title>{{versionReadyDialogData.title}}</h1>\n<mat-dialog-content>\n {{versionReadyDialogData.message}}\n</mat-dialog-content>\n<mat-dialog-actions>\n <button type=\"button\" mat-raised-button (click)=\"update()\">{{versionReadyDialogData.confirmButtonLabel}}</button>\n <button type=\"button\" mat-raised-button (click)=\"cancel()\">{{versionReadyDialogData.cancelButtonLabel}}</button>\n</mat-dialog-actions>", styles: ["mat-dialog-actions{display:flex;flex-wrap:nowrap;gap:10px;padding-left:24px;padding-right:24px}mat-dialog-actions button{flex:50%}@media (max-width: 1200px){mat-dialog-actions{flex-wrap:wrap}mat-dialog-actions button{flex:100%}}\n"] }] }], ctorParameters: () => [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{ type: Inject, args: [MAT_DIALOG_DATA] }] }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi1yZWFkeS1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXB3YS9zcmMvY29tcG9uZW50cy92ZXJzaW9uLXJlYWR5LWRpYWxvZy92ZXJzaW9uLXJlYWR5LWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcHdhL3NyYy9jb21wb25lbnRzL3ZlcnNpb24tcmVhZHktZGlhbG9nL3ZlcnNpb24tcmVhZHktZGlhbG9nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzFELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZUFBZSxFQUFnQixlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUUxRixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQzs7OztBQUd2Rzs7R0FFRztBQVdILE1BQU0sT0FBTyxpQ0FBaUM7SUFTckI7SUFFUjtJQVRiOzs7T0FHRztJQUNILHNCQUFzQixDQUFrQztJQUV4RCxZQUNxQixTQUEwRCxFQUVsRSxJQUE2QjtRQUZyQixjQUFTLEdBQVQsU0FBUyxDQUFpRDtRQUVsRSxTQUFJLEdBQUosSUFBSSxDQUF5QjtJQUN0QyxDQUFDO0lBRUwsUUFBUTtRQUNKLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxJQUFJLDhCQUE4QixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNO1FBQ0YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTTtRQUNGLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ25DLENBQUM7d0dBOUJRLGlDQUFpQyw4Q0FVOUIsZUFBZTs0RkFWbEIsaUNBQWlDLHdGQ3BCOUMsbWJBT3FCLCtSRFNiLGVBQWUsMk5BQ2YsZUFBZTs7NEZBR1YsaUNBQWlDO2tCQVY3QyxTQUFTOytCQUNJLDhCQUE4QixjQUc1QixJQUFJLFdBQ1A7d0JBQ0wsZUFBZTt3QkFDZixlQUFlO3FCQUNsQjs7MEJBWUksTUFBTTsyQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdERpYWxvZ01vZHVsZSwgTWF0RGlhbG9nUmVmLCBNQVRfRElBTE9HX0RBVEEgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuXG5pbXBvcnQgeyBWZXJzaW9uUmVhZHlEaWFsb2dEYXRhSW50ZXJuYWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvdmVyc2lvbi1yZWFkeS1kaWFsb2ctZGF0YS1pbnRlcm5hbC5tb2RlbCc7XG5pbXBvcnQgeyBWZXJzaW9uUmVhZHlEaWFsb2dEYXRhIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3ZlcnNpb24tcmVhZHktZGlhbG9nLWRhdGEubW9kZWwnO1xuXG4vKipcbiAqIEEgZGlhbG9nIHRoYXQgZ2V0cyBkaXNwbGF5ZWQgd2hlbiBhIG5ldyB2ZXJzaW9uIG9mIHRoZSBwd2EgaGFzIGJlZW4gZG93bmxvYWRlZCBhbmQgaXMgcmVhZHkgZm9yIGluc3RhbGwuXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmd4LXB3YS12ZXJzaW9uLXJlYWR5LWRpYWxvZycsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3ZlcnNpb24tcmVhZHktZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi92ZXJzaW9uLXJlYWR5LWRpYWxvZy5jb21wb25lbnQuc2NzcyddLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgICAgIE1hdERpYWxvZ01vZHVsZVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgTmd4UHdhVmVyc2lvblJlYWR5RGlhbG9nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICAgIC8qKlxuICAgICAqIFRoZSBkYXRhIHRvIGN1c3RvbWl6ZSB0aGUgVmVyc2lvbiBSZWFkeSBEaWFsb2cuXG4gICAgICogSXMgYnVpbHQgZnJvbSB0aGUgTUFUX0RJQUxPR19EQVRBIGlucHV0LlxuICAgICAqL1xuICAgIHZlcnNpb25SZWFkeURpYWxvZ0RhdGEhOiBWZXJzaW9uUmVhZHlEaWFsb2dEYXRhSW50ZXJuYWw7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxOZ3hQd2FWZXJzaW9uUmVhZHlEaWFsb2dDb21wb25lbnQ+LFxuICAgICAgICBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSlcbiAgICAgICAgcmVhZG9ubHkgZGF0YT86IFZlcnNpb25SZWFkeURpYWxvZ0RhdGFcbiAgICApIHsgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMudmVyc2lvblJlYWR5RGlhbG9nRGF0YSA9IG5ldyBWZXJzaW9uUmVhZHlEaWFsb2dEYXRhSW50ZXJuYWwodGhpcy5kYXRhKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDbG9zZXMgdGhlIGRpYWxvZyB3aXRoIGRhdGEgdG8gdHJpZ2dlciBhIHJlbG9hZCBvZiB0aGUgYXBwLlxuICAgICAqL1xuICAgIHVwZGF0ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoJ3VwZGF0ZScpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENsb3NlcyB0aGUgZGlhbG9nIHdpdGggZGF0YSB0byBub3QgdHJpZ2dlciBhbnl0aGluZy5cbiAgICAgKi9cbiAgICBjYW5jZWwoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKCdjYW5jZWwnKTtcbiAgICB9XG59IiwiPGgxIG1hdC1kaWFsb2ctdGl0bGU+e3t2ZXJzaW9uUmVhZHlEaWFsb2dEYXRhLnRpdGxlfX08L2gxPlxuPG1hdC1kaWFsb2ctY29udGVudD5cbiAgICB7e3ZlcnNpb25SZWFkeURpYWxvZ0RhdGEubWVzc2FnZX19XG48L21hdC1kaWFsb2ctY29udGVudD5cbjxtYXQtZGlhbG9nLWFjdGlvbnM+XG4gICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgbWF0LXJhaXNlZC1idXR0b24gKGNsaWNrKT1cInVwZGF0ZSgpXCI+e3t2ZXJzaW9uUmVhZHlEaWFsb2dEYXRhLmNvbmZpcm1CdXR0b25MYWJlbH19PC9idXR0b24+XG4gICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgbWF0LXJhaXNlZC1idXR0b24gKGNsaWNrKT1cImNhbmNlbCgpXCI+e3t2ZXJzaW9uUmVhZHlEaWFsb2dEYXRhLmNhbmNlbEJ1dHRvbkxhYmVsfX08L2J1dHRvbj5cbjwvbWF0LWRpYWxvZy1hY3Rpb25zPiJdfQ==