@sumaris-net/ngx-components 1.19.5-rc1 → 1.19.5-rc4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -9231,7 +9231,8 @@
9231
9231
  return ToolbarToken;
9232
9232
  }());
9233
9233
  var ToolbarComponent = /** @class */ (function () {
9234
- function ToolbarComponent(router, routerOutlet, cd, progressBarService) {
9234
+ function ToolbarComponent(route, router, routerOutlet, cd, progressBarService) {
9235
+ this.route = route;
9235
9236
  this.router = router;
9236
9237
  this.routerOutlet = routerOutlet;
9237
9238
  this.cd = cd;
@@ -9334,33 +9335,47 @@
9334
9335
  };
9335
9336
  ToolbarComponent.prototype.goBack = function () {
9336
9337
  return __awaiter(this, void 0, void 0, function () {
9338
+ var replaceUrl;
9337
9339
  return __generator(this, function (_a) {
9338
9340
  switch (_a.label) {
9339
9341
  case 0:
9340
9342
  console.debug('[toolbar] calling goBack()');
9341
- if (!this._backHref) return [3 /*break*/, 2];
9342
- return [4 /*yield*/, this.router.navigateByUrl(this._backHref)];
9343
+ if (!this._backHref) return [3 /*break*/, 5];
9344
+ replaceUrl = !this.routerOutlet.canGoBack();
9345
+ if (!this._backHref.startsWith('.')) return [3 /*break*/, 2];
9346
+ return [4 /*yield*/, this.router.navigate([this._backHref], { relativeTo: this.route, replaceUrl: replaceUrl })];
9343
9347
  case 1:
9344
9348
  _a.sent();
9345
- return [3 /*break*/, 7];
9346
- case 2:
9347
- if (!this.routerOutlet.canGoBack()) return [3 /*break*/, 4];
9348
- return [4 /*yield*/, this.routerOutlet.pop()];
9349
+ return [3 /*break*/, 4];
9350
+ case 2: return [4 /*yield*/, this.router.navigateByUrl(this._backHref, { replaceUrl: replaceUrl })];
9349
9351
  case 3:
9350
9352
  _a.sent();
9351
- return [3 /*break*/, 7];
9352
- case 4:
9353
- if (!this._defaultBackHref) return [3 /*break*/, 6];
9354
- return [4 /*yield*/, this.router.navigateByUrl(this._defaultBackHref, {
9355
- replaceUrl: true
9356
- })];
9353
+ _a.label = 4;
9354
+ case 4: return [3 /*break*/, 13];
9357
9355
  case 5:
9358
- _a.sent();
9359
- return [3 /*break*/, 7];
9356
+ if (!this.routerOutlet.canGoBack()) return [3 /*break*/, 7];
9357
+ return [4 /*yield*/, this.routerOutlet.pop()];
9360
9358
  case 6:
9359
+ _a.sent();
9360
+ return [3 /*break*/, 13];
9361
+ case 7:
9362
+ if (!this._defaultBackHref) return [3 /*break*/, 12];
9363
+ if (!this._defaultBackHref.startsWith('.')) return [3 /*break*/, 9];
9364
+ return [4 /*yield*/, this.router.navigate([this._defaultBackHref], { relativeTo: this.route, replaceUrl: true })];
9365
+ case 8:
9366
+ _a.sent();
9367
+ return [3 /*break*/, 11];
9368
+ case 9: return [4 /*yield*/, this.router.navigateByUrl(this._defaultBackHref, {
9369
+ replaceUrl: true
9370
+ })];
9371
+ case 10:
9372
+ _a.sent();
9373
+ _a.label = 11;
9374
+ case 11: return [3 /*break*/, 13];
9375
+ case 12:
9361
9376
  console.error('[toolbar] Cannot go back. Missing attribute \'defaultBackHref\' or \'backHref\'');
9362
- _a.label = 7;
9363
- case 7: return [2 /*return*/];
9377
+ _a.label = 13;
9378
+ case 13: return [2 /*return*/];
9364
9379
  }
9365
9380
  });
9366
9381
  });
@@ -9420,7 +9435,7 @@
9420
9435
  ToolbarComponent.decorators = [
9421
9436
  { type: i0.Component, args: [{
9422
9437
  selector: 'app-toolbar',
9423
- template: "<ion-header [class]=\"class\">\n <ion-toolbar [color]=\"color\">\n\n <ion-buttons slot=\"start\">\n\n <!-- back button -->\n <ion-button class=\"back-button\"\n *ngIf=\"canGoBack\"\n (click)=\"doBackClick($event)\"\n routerDirection=\"back\" >\n <ion-icon slot=\"icon-only\" name=\"arrow-back\"></ion-icon>\n </ion-button>\n\n <!-- show menu button -->\n <ion-menu-toggle [hidden]=\"canGoBack || !canShowMenu\">\n <ion-button>\n <ion-icon slot=\"icon-only\" name=\"menu\"></ion-icon>\n </ion-button>\n </ion-menu-toggle>\n\n <ng-content select=\"[slot=start]\"></ng-content>\n </ion-buttons>\n\n <ion-title [innerHTML]=\"title\"></ion-title>\n\n <ng-content select=\"ion-title\"></ng-content>\n\n <ng-content select=\"ion-buttons[slot=end]\"></ng-content>\n\n <ion-buttons slot=\"end\" collapse=\"true\">\n\n <ng-content select=\"[slot=end]\"></ng-content>\n\n <!-- search bar -->\n <ion-searchbar #searchbar animated\n type=\"search\"\n *ngIf=\"hasSearch\"\n [class.cdk-visually-hidden]=\"!showSearchBar\"\n show-cancel-button=\"always\"\n (ionChange)=\"onSearch.emit($event)\"\n (ionCancel)=\"toggleSearchBar()\">\n </ion-searchbar>\n\n <!-- search button -->\n <ion-button (click)=\"toggleSearchBar()\"\n *ngIf=\"hasSearch && !showSearchBar\">\n <ion-icon slot=\"icon-only\" name=\"search\"></ion-icon>\n </ion-button>\n\n <!-- close button -->\n <ion-button *ngIf=\"hasClose\"\n (tap)=\"tapClose($event)\"\n class=\"visible-xs visible-sm visible-mobile\">\n <ion-icon slot=\"icon-only\" name=\"close\"></ion-icon>\n </ion-button>\n\n <!-- validate button -->\n <ion-button *ngIf=\"hasValidate\"\n (tap)=\"tapValidate($event)\"\n class=\"visible-xs visible-sm visible-mobile\">\n <ion-icon slot=\"icon-only\" name=\"save\"></ion-icon>\n </ion-button>\n </ion-buttons>\n </ion-toolbar>\n\n <!-- progress bar -->\n <mat-progress-bar [color]=\"color\" [mode]=\"progressBarMode$ | async\">\n </mat-progress-bar>\n</ion-header>\n",
9438
+ template: "<ion-header [class]=\"class\">\n <ion-toolbar [color]=\"color\">\n\n <ion-buttons slot=\"start\">\n\n <!-- back button -->\n <ion-button class=\"back-button\"\n *ngIf=\"canGoBack\"\n (click)=\"doBackClick($event)\"\n routerDirection=\"back\" >\n <ion-icon slot=\"icon-only\" name=\"arrow-back\"></ion-icon>\n </ion-button>\n\n <!-- show menu button -->\n <ion-menu-toggle [autoHide]=\"false\" [hidden]=\"canGoBack || !canShowMenu\">\n <ion-button>\n <ion-icon slot=\"icon-only\" name=\"menu\"></ion-icon>\n </ion-button>\n </ion-menu-toggle>\n\n <ng-content select=\"[slot=start]\"></ng-content>\n </ion-buttons>\n\n <ion-title [innerHTML]=\"title\"></ion-title>\n\n <ng-content select=\"ion-title\"></ng-content>\n\n <ng-content select=\"ion-buttons[slot=end]\"></ng-content>\n\n <ion-buttons slot=\"end\" collapse=\"true\">\n\n <ng-content select=\"[slot=end]\"></ng-content>\n\n <!-- search bar -->\n <ion-searchbar #searchbar animated\n type=\"search\"\n *ngIf=\"hasSearch\"\n [class.cdk-visually-hidden]=\"!showSearchBar\"\n show-cancel-button=\"always\"\n (ionChange)=\"onSearch.emit($event)\"\n (ionCancel)=\"toggleSearchBar()\">\n </ion-searchbar>\n\n <!-- search button -->\n <ion-button (click)=\"toggleSearchBar()\"\n *ngIf=\"hasSearch && !showSearchBar\">\n <ion-icon slot=\"icon-only\" name=\"search\"></ion-icon>\n </ion-button>\n\n <!-- close button -->\n <ion-button *ngIf=\"hasClose\"\n (tap)=\"tapClose($event)\"\n class=\"visible-xs visible-sm visible-mobile\">\n <ion-icon slot=\"icon-only\" name=\"close\"></ion-icon>\n </ion-button>\n\n <!-- validate button -->\n <ion-button *ngIf=\"hasValidate\"\n (tap)=\"tapValidate($event)\"\n class=\"visible-xs visible-sm visible-mobile\">\n <ion-icon slot=\"icon-only\" name=\"save\"></ion-icon>\n </ion-button>\n </ion-buttons>\n </ion-toolbar>\n\n <!-- progress bar -->\n <mat-progress-bar [color]=\"color\" [mode]=\"progressBarMode$ | async\">\n </mat-progress-bar>\n</ion-header>\n",
9424
9439
  providers: [
9425
9440
  { provide: ToolbarToken, useExisting: ToolbarComponent }
9426
9441
  ],
@@ -9429,6 +9444,7 @@
9429
9444
  },] }
9430
9445
  ];
9431
9446
  ToolbarComponent.ctorParameters = function () { return [
9447
+ { type: i3.ActivatedRoute },
9432
9448
  { type: i3.Router },
9433
9449
  { type: i1$5.IonRouterOutlet },
9434
9450
  { type: i0.ChangeDetectorRef },
@@ -23269,7 +23285,6 @@
23269
23285
  this.network = network;
23270
23286
  this.environment = environment;
23271
23287
  this._subscription = new rxjs.Subscription();
23272
- this._showUpdateOfflineFeature = false;
23273
23288
  this.loading = true;
23274
23289
  this.hasDownloader = false;
23275
23290
  this.downloading = false;
@@ -23277,21 +23292,7 @@
23277
23292
  this.showUpgradeWarning = true;
23278
23293
  this.showOfflineWarning = true;
23279
23294
  this.showInstallButton = false;
23280
- this.onUpdateOfflineModeClick = new i0.EventEmitter();
23281
23295
  }
23282
- Object.defineProperty(AppInstallUpgradeCard.prototype, "showUpdateOfflineFeature", {
23283
- get: function () {
23284
- return this._showUpdateOfflineFeature;
23285
- },
23286
- set: function (value) {
23287
- if (value === this._showUpdateOfflineFeature)
23288
- return; // Skip
23289
- this._showUpdateOfflineFeature = value;
23290
- this.markForCheck();
23291
- },
23292
- enumerable: false,
23293
- configurable: true
23294
- });
23295
23296
  AppInstallUpgradeCard.prototype.ngOnInit = function () {
23296
23297
  var _this = this;
23297
23298
  this.offline = this.network.offline;
@@ -23315,7 +23316,6 @@
23315
23316
  AppInstallUpgradeCard.prototype.ngOnDestroy = function () {
23316
23317
  this._subscription.unsubscribe();
23317
23318
  this._subscription = null;
23318
- this.onUpdateOfflineModeClick.complete();
23319
23319
  this.installLinks = null;
23320
23320
  this.upgradeLinks = null;
23321
23321
  };
@@ -23662,7 +23662,7 @@
23662
23662
  AppInstallUpgradeCard.decorators = [
23663
23663
  { type: i0.Component, args: [{
23664
23664
  selector: 'app-install-upgrade-card',
23665
- template: "\n\n<!-- Offline mode card-->\n<ion-card *ngIf=\"showOfflineWarning && (!loading && offline || waitingNetwork)\"\n color=\"accent\"\n class=\"main ion-no-margin\"\n @slideUpDownAnimation>\n <ion-card-content class=\"ion-no-padding\">\n <ion-grid>\n <ion-row>\n <ion-col>\n <ion-text class=\"ion-text-wrap\" *ngIf=\"!waitingNetwork; else waitingNetworkText\">\n <h4>\n <b *ngIf=\"isLogin; else notLogin\" [innerHTML]=\"'NETWORK.INFO.OFFLINE_OR_UNAUTHORIZED'| translate\"></b>\n <ng-template #notLogin>\n <b [innerHTML]=\"'NETWORK.INFO.OFFLINE'| translate\"></b>\n </ng-template>\n </h4>\n <h3>\n <small [innerHTML]=\"'NETWORK.INFO.OFFLINE_HELP'|translate\"></small>\n </h3>\n </ion-text>\n <ng-template #waitingNetworkText>\n <ion-text class=\"ion-text-wrap\" [innerHTML]=\"'NETWORK.INFO.RETRY_TO_CONNECT'| translate\"></ion-text>\n </ng-template>\n </ion-col>\n <ion-col size=\"auto\">\n\n <!-- Retry button -->\n <ion-button *ngIf=\"!waitingNetwork; else waitingSpinner\" color=\"tertiary\" class=\"ion-float-end\"\n (click)=\"tryOnline()\">\n <span translate>NETWORK.BTN_CHECK_ALIVE</span>\n </ion-button>\n\n </ion-col>\n </ion-row>\n </ion-grid>\n\n </ion-card-content>\n</ion-card>\n\n<!-- Upgrade links -->\n<ion-card *ngIf=\"showUpgradeWarning && !loading && !offline && upgradeLinks\"\n color=\"accent\"\n class=\"ion-no-margin\"\n @slideUpDownAnimation>\n <ion-card-content class=\"ion-no-padding\">\n <ion-grid>\n <ion-row *ngFor=\"let link of upgradeLinks; last as last\">\n <ion-col>\n <ion-text class=\"ion-text-wrap\">\n <h3>\n <span *ngIf=\"link.version\" [innerHTML]=\"'INFO.UPDATE_APP_TO_VERSION'| translate: link\"></span>\n <span *ngIf=\"!link.version\" [innerHTML]=\"'INFO.UPDATE_APP'| translate: link\"></span>\n </h3>\n <h4>\n <small *ngIf=\"last\" [innerHTML]=\"'INFO.UPDATE_APP_HELP'|translate\"></small>\n </h4>\n </ion-text>\n </ion-col>\n\n <ion-col size=\"auto\">\n <ng-container *ngTemplateOutlet=\"downloadButton; context: { $implicit: link }\"></ng-container>\n </ion-col>\n </ion-row>\n\n </ion-grid>\n\n </ion-card-content>\n</ion-card>\n\n<!-- Install links -->\n<ion-card *ngIf=\"showInstallButton && !loading && !offline && installLinks\"\n color=\"secondary\"\n class=\"ion-no-margin\"\n @slideUpDownAnimation>\n <ion-card-content class=\"ion-no-padding\">\n <ion-grid>\n <ion-row *ngFor=\"let link of installLinks; last as last\">\n <ion-col>\n <ion-text class=\"ion-text-wrap\">\n <h3 [innerHTML]=\"'INFO.DOWNLOAD_APP_TITLE'| translate: {name: link.name, platform: getPlatformName(link.platform) }\"></h3>\n <h4><small *ngIf=\"last\" [innerHTML]=\"'INFO.DOWNLOAD_APP_HELP'|translate\"></small></h4>\n </ion-text>\n </ion-col>\n <ion-col size=\"auto\">\n <ng-container *ngTemplateOutlet=\"downloadButton; context: { $implicit: link }\"></ng-container>\n </ion-col>\n </ion-row>\n\n </ion-grid>\n\n </ion-card-content>\n</ion-card>\n\n<!-- Update offline feature card-->\n<ion-card *ngIf=\"showUpdateOfflineFeature && !loading && !offline\"\n color=\"accent\"\n class=\"main ion-no-margin\"\n @slideUpDownAnimation>\n <ion-card-content class=\"ion-no-padding\">\n <ion-grid>\n <ion-row>\n <ion-col>\n <ion-text class=\"ion-text-wrap\">\n <h4>\n <b [innerHTML]=\"'NETWORK.INFO.UPDATE_OFFLINE_MODE'| translate\"></b>\n </h4>\n <h3>\n <small [innerHTML]=\"'NETWORK.INFO.UPDATE_OFFLINE_MODE_HELP'|translate\"></small>\n </h3>\n </ion-text>\n </ion-col>\n <ion-col size=\"auto\">\n\n <!-- Retry button -->\n <ion-button color=\"tertiary\" class=\"ion-float-end\"\n (click)=\"onUpdateOfflineModeClick.emit($event)\">\n <span translate>NETWORK.BTN_UPDATE</span>\n </ion-button>\n </ion-col>\n </ion-row>\n </ion-grid>\n\n </ion-card-content>\n</ion-card>\n\n<!-- Display a download button, depending on the link URL, and the device platform -->\n<ng-template #downloadButton let-link>\n\n <ng-container *ngIf=\"link.filename; else redirectButton\">\n\n <ng-container *ngIf=\"hasDownloader; else webDownloadButton\">\n <!-- Download using platform -->\n <ion-button (click)=\"download($event, asLink(link))\"\n *ngIf=\"!link.location; else openButton\"\n [disabled]=\"link.downloading\"\n color=\"tertiary\" class=\"ion-float-end\">\n <ion-icon slot=\"start\" *ngIf=\"!link.downloading\" name=\"download\"></ion-icon>\n <ion-spinner slot=\"start\" class=\"ion-no-padding\" *ngIf=\"link.downloading\"></ion-spinner>\n <ion-label translate>COMMON.BTN_DOWNLOAD</ion-label>\n </ion-button>\n\n <!-- Open APK button -->\n <ng-template #openButton>\n <ion-button *ngIf=\"link.location\"\n (click)=\"openFile($event, link)\"\n color=\"tertiary\" class=\"ion-float-end\" >\n <ion-label translate>COMMON.BTN_INSTALL</ion-label>\n </ion-button>\n </ng-template>\n </ng-container>\n\n <!-- Web download button -->\n <ng-template #webDownloadButton>\n <ion-button [download]=\"link.downloadFilename\"\n [href]=\"link.url\"\n color=\"tertiary\" class=\"ion-float-end\" >\n <ion-label translate>COMMON.BTN_DOWNLOAD</ion-label>\n </ion-button>\n </ng-template>\n </ng-container>\n\n <!-- Web redirect button -->\n <ng-template #redirectButton>\n <ion-button [href]=\"link.url\" rel=\"external\" color=\"tertiary\" class=\"ion-float-end\" target=\"_blank\">\n <ion-label translate>COMMON.BTN_SHOW_MORE</ion-label>\n </ion-button>\n </ng-template>\n</ng-template>\n\n\n<!-- Waiting spinner -->\n<ng-template #waitingSpinner>\n <ion-spinner color=\"light\"></ion-spinner>\n</ng-template>\n",
23665
+ template: "\n\n<!-- Offline mode card-->\n<ion-card *ngIf=\"showOfflineWarning && (!loading && offline || waitingNetwork)\"\n color=\"accent\"\n class=\"main ion-no-margin\"\n @slideUpDownAnimation>\n <ion-card-content class=\"ion-no-padding\">\n <ion-grid>\n <ion-row>\n <ion-col>\n <ion-text class=\"ion-text-wrap\" *ngIf=\"!waitingNetwork; else waitingNetworkText\">\n <h4>\n <b *ngIf=\"isLogin; else notLogin\" [innerHTML]=\"'NETWORK.INFO.OFFLINE_OR_UNAUTHORIZED'| translate\"></b>\n <ng-template #notLogin>\n <b [innerHTML]=\"'NETWORK.INFO.OFFLINE'| translate\"></b>\n </ng-template>\n </h4>\n <h3>\n <small [innerHTML]=\"'NETWORK.INFO.OFFLINE_HELP'|translate\"></small>\n </h3>\n </ion-text>\n <ng-template #waitingNetworkText>\n <ion-text class=\"ion-text-wrap\" [innerHTML]=\"'NETWORK.INFO.RETRY_TO_CONNECT'| translate\"></ion-text>\n </ng-template>\n </ion-col>\n <ion-col size=\"auto\">\n\n <!-- Retry button -->\n <ion-button *ngIf=\"!waitingNetwork; else waitingSpinner\" color=\"tertiary\" class=\"ion-float-end\"\n (click)=\"tryOnline()\">\n <span translate>NETWORK.BTN_CHECK_ALIVE</span>\n </ion-button>\n\n </ion-col>\n </ion-row>\n </ion-grid>\n\n </ion-card-content>\n</ion-card>\n\n<!-- Upgrade links -->\n<ion-card *ngIf=\"showUpgradeWarning && !loading && !offline && upgradeLinks\"\n color=\"accent\"\n class=\"ion-no-margin\"\n @slideUpDownAnimation>\n <ion-card-content class=\"ion-no-padding\">\n <ion-grid>\n <ion-row *ngFor=\"let link of upgradeLinks; last as last\">\n <ion-col>\n <ion-text class=\"ion-text-wrap\">\n <h3>\n <span *ngIf=\"link.version\" [innerHTML]=\"'INFO.UPDATE_APP_TO_VERSION'| translate: link\"></span>\n <span *ngIf=\"!link.version\" [innerHTML]=\"'INFO.UPDATE_APP'| translate: link\"></span>\n </h3>\n <h4>\n <small *ngIf=\"last\" [innerHTML]=\"'INFO.UPDATE_APP_HELP'|translate\"></small>\n </h4>\n </ion-text>\n </ion-col>\n\n <ion-col size=\"auto\">\n <ng-container *ngTemplateOutlet=\"downloadButton; context: { $implicit: link }\"></ng-container>\n </ion-col>\n </ion-row>\n\n </ion-grid>\n\n </ion-card-content>\n</ion-card>\n\n<!-- Install links -->\n<ion-card *ngIf=\"showInstallButton && !loading && !offline && installLinks\"\n color=\"secondary\"\n class=\"ion-no-margin\"\n @slideUpDownAnimation>\n <ion-card-content class=\"ion-no-padding\">\n <ion-grid>\n <ion-row *ngFor=\"let link of installLinks; last as last\">\n <ion-col>\n <ion-text class=\"ion-text-wrap\">\n <h3 [innerHTML]=\"'INFO.DOWNLOAD_APP_TITLE'| translate: {name: link.name, platform: getPlatformName(link.platform) }\"></h3>\n <h4><small *ngIf=\"last\" [innerHTML]=\"'INFO.DOWNLOAD_APP_HELP'|translate\"></small></h4>\n </ion-text>\n </ion-col>\n <ion-col size=\"auto\">\n <ng-container *ngTemplateOutlet=\"downloadButton; context: { $implicit: link }\"></ng-container>\n </ion-col>\n </ion-row>\n\n </ion-grid>\n\n </ion-card-content>\n</ion-card>\n\n<!-- Display a download button, depending on the link URL, and the device platform -->\n<ng-template #downloadButton let-link>\n\n <ng-container *ngIf=\"link.filename; else redirectButton\">\n\n <ng-container *ngIf=\"hasDownloader; else webDownloadButton\">\n <!-- Download using platform -->\n <ion-button (click)=\"download($event, asLink(link))\"\n *ngIf=\"!link.location; else openButton\"\n [disabled]=\"link.downloading\"\n color=\"tertiary\" class=\"ion-float-end\">\n <ion-icon slot=\"start\" *ngIf=\"!link.downloading\" name=\"download\"></ion-icon>\n <ion-spinner slot=\"start\" class=\"ion-no-padding\" *ngIf=\"link.downloading\"></ion-spinner>\n <ion-label translate>COMMON.BTN_DOWNLOAD</ion-label>\n </ion-button>\n\n <!-- Open APK button -->\n <ng-template #openButton>\n <ion-button *ngIf=\"link.location\"\n (click)=\"openFile($event, link)\"\n color=\"tertiary\" class=\"ion-float-end\" >\n <ion-label translate>COMMON.BTN_INSTALL</ion-label>\n </ion-button>\n </ng-template>\n </ng-container>\n\n <!-- Web download button -->\n <ng-template #webDownloadButton>\n <ion-button [download]=\"link.downloadFilename\"\n [href]=\"link.url\"\n color=\"tertiary\" class=\"ion-float-end\" >\n <ion-label translate>COMMON.BTN_DOWNLOAD</ion-label>\n </ion-button>\n </ng-template>\n </ng-container>\n\n <!-- Web redirect button -->\n <ng-template #redirectButton>\n <ion-button [href]=\"link.url\" rel=\"external\" color=\"tertiary\" class=\"ion-float-end\" target=\"_blank\">\n <ion-label translate>COMMON.BTN_SHOW_MORE</ion-label>\n </ion-button>\n </ng-template>\n</ng-template>\n\n\n<!-- Waiting spinner -->\n<ng-template #waitingSpinner>\n <ion-spinner color=\"light\"></ion-spinner>\n</ng-template>\n",
23666
23666
  changeDetection: i0.ChangeDetectionStrategy.OnPush,
23667
23667
  animations: [slideUpDownAnimation],
23668
23668
  styles: ["ion-text small{font-size:85%}"]
@@ -23683,9 +23683,7 @@
23683
23683
  isLogin: [{ type: i0.Input }],
23684
23684
  showUpgradeWarning: [{ type: i0.Input }],
23685
23685
  showOfflineWarning: [{ type: i0.Input }],
23686
- showInstallButton: [{ type: i0.Input }],
23687
- showUpdateOfflineFeature: [{ type: i0.Input }],
23688
- onUpdateOfflineModeClick: [{ type: i0.Output }]
23686
+ showInstallButton: [{ type: i0.Input }]
23689
23687
  };
23690
23688
 
23691
23689
  var IsLoginAccountPipe = /** @class */ (function () {
@@ -24223,6 +24221,31 @@
24223
24221
  ref: [{ type: i0.Input }]
24224
24222
  };
24225
24223
 
24224
+ var AppUpdateOfflineModeCard = /** @class */ (function () {
24225
+ function AppUpdateOfflineModeCard() {
24226
+ this.onUpdateClick = new i0.EventEmitter();
24227
+ }
24228
+ AppUpdateOfflineModeCard.prototype.ngOnDestroy = function () {
24229
+ this.onUpdateClick.complete();
24230
+ };
24231
+ return AppUpdateOfflineModeCard;
24232
+ }());
24233
+ AppUpdateOfflineModeCard.decorators = [
24234
+ { type: i0.Component, args: [{
24235
+ selector: 'app-update-offline-mode-card',
24236
+ template: "\n<!-- Update offline feature card-->\n<ion-card color=\"accent\"\n class=\"main ion-no-margin\"\n @slideUpDownAnimation>\n <ion-card-content class=\"ion-no-padding\">\n <ion-grid>\n <ion-row *ngIf=\"!progressionValue; else progression\">\n <ion-col>\n <ion-text class=\"ion-text-wrap\" >\n <h4>\n <b [innerHTML]=\"'NETWORK.INFO.UPDATE_OFFLINE_MODE'| translate\"></b>\n </h4>\n <h3>\n <small [innerHTML]=\"'NETWORK.INFO.UPDATE_OFFLINE_MODE_HELP'|translate\"></small>\n </h3>\n </ion-text>\n </ion-col>\n\n <!-- Update button -->\n <ion-col size=\"auto\">\n <ion-button color=\"tertiary\" class=\"ion-float-end\"\n (click)=\"onUpdateClick.emit($event)\">\n <span translate>NETWORK.BTN_UPDATE</span>\n </ion-button>\n </ion-col>\n </ion-row>\n\n <ng-template #progression>\n <ion-row>\n <ion-col>\n <ion-text class=\"ion-text-wrap\" [innerHTML]=\"progressionMessage\"></ion-text>\n </ion-col>\n </ion-row>\n <ion-row>\n <ion-col>\n <ion-progress-bar [value]=\"progressionValue / 100\"></ion-progress-bar>\n </ion-col>\n </ion-row>\n </ng-template>\n </ion-grid>\n\n\n </ion-card-content>\n</ion-card>\n",
24237
+ changeDetection: i0.ChangeDetectionStrategy.OnPush,
24238
+ animations: [slideUpDownAnimation],
24239
+ styles: ["ion-text small{font-size:85%}"]
24240
+ },] }
24241
+ ];
24242
+ AppUpdateOfflineModeCard.ctorParameters = function () { return []; };
24243
+ AppUpdateOfflineModeCard.propDecorators = {
24244
+ progressionMessage: [{ type: i0.Input }],
24245
+ progressionValue: [{ type: i0.Input }],
24246
+ onUpdateClick: [{ type: i0.Output }]
24247
+ };
24248
+
24226
24249
  var CoreModule = /** @class */ (function () {
24227
24250
  function CoreModule() {
24228
24251
  }
@@ -24272,6 +24295,7 @@
24272
24295
  // Network
24273
24296
  SelectPeerModal,
24274
24297
  AppInstallUpgradeCard,
24298
+ AppUpdateOfflineModeCard,
24275
24299
  // Other components
24276
24300
  TableSelectColumnsComponent,
24277
24301
  ActionsColumnComponent,
@@ -24307,6 +24331,7 @@
24307
24331
  AppPropertiesForm,
24308
24332
  AppListForm,
24309
24333
  AppInstallUpgradeCard,
24334
+ AppUpdateOfflineModeCard,
24310
24335
  DepartmentToStringPipe,
24311
24336
  AppIconComponent,
24312
24337
  TextPopover,
@@ -32246,12 +32271,13 @@
32246
32271
  exports.ɵf = RegisterModal;
32247
32272
  exports.ɵg = UserSettingsValidatorService;
32248
32273
  exports.ɵh = LocalSettingsValidatorService;
32249
- exports.ɵi = AppIconComponent;
32250
- exports.ɵj = DateTestPage;
32251
- exports.ɵk = NumpadTestPage;
32252
- exports.ɵl = MatBadgeIconTestPage;
32253
- exports.ɵm = ToastTestingModule;
32254
- exports.ɵn = ToastTestingPage;
32274
+ exports.ɵi = AppUpdateOfflineModeCard;
32275
+ exports.ɵj = AppIconComponent;
32276
+ exports.ɵk = DateTestPage;
32277
+ exports.ɵl = NumpadTestPage;
32278
+ exports.ɵm = MatBadgeIconTestPage;
32279
+ exports.ɵn = ToastTestingModule;
32280
+ exports.ɵo = ToastTestingPage;
32255
32281
 
32256
32282
  Object.defineProperty(exports, '__esModule', { value: true });
32257
32283