@indigina/kendo 1.2.6 → 1.2.8

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.
@@ -22,14 +22,14 @@ import { CommonModule } from '@angular/common';
22
22
  import * as i2$1 from '@angular/common/http';
23
23
  import { HttpClientModule, HttpClient, HTTP_INTERCEPTORS } from '@angular/common/http';
24
24
  import * as i0 from '@angular/core';
25
- import { EventEmitter, Directive, Input, Output, HostListener, Component, NgModule, Injectable, ViewChildren, APP_INITIALIZER, ViewChild, ChangeDetectionStrategy } from '@angular/core';
25
+ import { EventEmitter, Directive, Input, Output, HostListener, Component, NgModule, ChangeDetectionStrategy, Injectable, ViewChildren, APP_INITIALIZER, ViewChild } from '@angular/core';
26
26
  import * as i1$4 from '@angular/forms';
27
27
  import { UntypedFormControl, Validators, ControlContainer, FormGroupDirective, ReactiveFormsModule, FormsModule, UntypedFormGroup } from '@angular/forms';
28
28
  import { BrowserModule } from '@angular/platform-browser';
29
29
  import * as i1$5 from '@angular/router';
30
30
  import { NavigationEnd, RouterModule } from '@angular/router';
31
31
  import { Subject, of, BehaviorSubject, throwError, from, tap as tap$1, map as map$1 } from 'rxjs';
32
- import { debounceTime, map, mergeMap, catchError, tap, filter, finalize } from 'rxjs/operators';
32
+ import { debounceTime, map, mergeMap, catchError, tap, filter, take, finalize } from 'rxjs/operators';
33
33
  import XmlBeautify from 'xml-beautify';
34
34
  import { toODataString, distinct, filterBy } from '@progress/kendo-data-query';
35
35
  import { InteractionRequiredAuthError, BrowserCacheLocation, PublicClientApplication } from '@azure/msal-browser';
@@ -277,19 +277,18 @@ class GeneralErrorsComponent {
277
277
  constructor() {
278
278
  this.errors = [];
279
279
  }
280
- setErrors(errors) {
281
- this.errors = errors;
282
- if (errors.length) {
283
- this.form.setErrors({ _general_errors_: errors });
284
- }
280
+ ngOnChanges() {
281
+ this.form.setErrors({ _general_errors_: this.errors });
285
282
  }
286
283
  }
287
284
  GeneralErrorsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: GeneralErrorsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
288
- GeneralErrorsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.3", type: GeneralErrorsComponent, selector: "app-general-errors", inputs: { form: "form" }, ngImport: i0, template: "<div [formGroup]=\"form\">\n <div class=\"bg-danger\" *ngIf=\"form.invalid && errors.length\">\n <ul class=\"custom-error\">\n <li *ngFor=\"let error of errors\">{{ error }}</li>\n </ul>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }] });
285
+ GeneralErrorsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.3", type: GeneralErrorsComponent, selector: "app-general-errors", inputs: { form: "form", errors: "errors" }, usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"form\" [formGroup]=\"form\">\n <div class=\"bg-danger\" *ngIf=\"form.invalid && errors.length\">\n <ul class=\"custom-error\">\n <li *ngFor=\"let error of errors\">{{ error }}</li>\n </ul>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
289
286
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: GeneralErrorsComponent, decorators: [{
290
287
  type: Component,
291
- args: [{ selector: 'app-general-errors', template: "<div [formGroup]=\"form\">\n <div class=\"bg-danger\" *ngIf=\"form.invalid && errors.length\">\n <ul class=\"custom-error\">\n <li *ngFor=\"let error of errors\">{{ error }}</li>\n </ul>\n </div>\n</div>\n" }]
292
- }], ctorParameters: function () { return []; }, propDecorators: { form: [{
288
+ args: [{ selector: 'app-general-errors', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"form\" [formGroup]=\"form\">\n <div class=\"bg-danger\" *ngIf=\"form.invalid && errors.length\">\n <ul class=\"custom-error\">\n <li *ngFor=\"let error of errors\">{{ error }}</li>\n </ul>\n </div>\n</div>\n" }]
289
+ }], propDecorators: { form: [{
290
+ type: Input
291
+ }], errors: [{
293
292
  type: Input
294
293
  }] } });
295
294
 
@@ -859,11 +858,6 @@ let defaultConfig = {
859
858
  accountUrl: '',
860
859
  apiUrl: '',
861
860
  toastrTimeOut: 2500,
862
- oidc: {
863
- clientId: '',
864
- authority: '',
865
- issuer: '',
866
- },
867
861
  azureB2C: {
868
862
  clientId: '',
869
863
  authority: '',
@@ -1287,6 +1281,9 @@ class SettingsService {
1287
1281
  clearLoginAsUser() {
1288
1282
  localStorage.removeItem(loginAsKey);
1289
1283
  }
1284
+ clearToken() {
1285
+ localStorage.removeItem(tokenKey);
1286
+ }
1290
1287
  setToken(token) {
1291
1288
  localStorage.setItem(tokenKey, token);
1292
1289
  }
@@ -1419,6 +1416,7 @@ class AzureB2CProvider extends AuthProvider {
1419
1416
  }
1420
1417
  }
1421
1418
  logout() {
1419
+ this.settingsService.clearToken();
1422
1420
  this.authService.logoutRedirect({
1423
1421
  postLogoutRedirectUri: location.origin,
1424
1422
  });
@@ -2388,24 +2386,26 @@ class EntityEditFormComponent {
2388
2386
  this.adapter
2389
2387
  .getService()
2390
2388
  .save(this.adapter.getValue(), this.adapter.getUrlParams())
2391
- .pipe(finalize(() => (this.saveInProgress = false)))
2392
- .subscribe((result) => {
2393
- this.adapter.onSaved(result);
2394
- }, (error) => {
2395
- this.formGroup.value.applyServerErrors(error.error, this.formGroup.value);
2396
- this.generalErrors.setErrors(this.formGroup.value.generalErrors);
2389
+ .pipe(take(1), finalize(() => (this.saveInProgress = false)))
2390
+ .subscribe({
2391
+ next: (result) => {
2392
+ this.adapter.onSaved(result);
2393
+ this.formGroup.value.applyServerErrors({ errors: {} }, this.formGroup.value);
2394
+ this.formGroup.next(this.formGroup.value);
2395
+ },
2396
+ error: (error) => {
2397
+ this.formGroup.value.applyServerErrors(error.error, this.formGroup.value);
2398
+ this.formGroup.next(this.formGroup.value);
2399
+ },
2397
2400
  });
2398
2401
  }
2399
2402
  }
2400
2403
  EntityEditFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: EntityEditFormComponent, deps: [{ token: i1$5.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component });
2401
- EntityEditFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.3", type: EntityEditFormComponent, selector: "entity-edit-form", inputs: { title: "title", entityId: "entityId", adapter: "adapter" }, viewQueries: [{ propertyName: "generalErrors", first: true, predicate: ["general_errors"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"col-md-8\">\n <header class=\"header-page-bg\">\n <h4>{{ title | translate }}</h4>\n </header>\n <div class=\"panel editor-area hero-unit\">\n <form\n class=\"form-horizontal\"\n [formGroup]=\"formGroup | async\"\n novalidate\n autocomplete=\"off\"\n *ngIf=\"formGroup | async\"\n >\n <div class=\"col-md-3\"></div>\n <div class=\"col-md-9\">\n <app-general-errors\n #general_errors\n [form]=\"formGroup | async\"\n ></app-general-errors>\n </div>\n <ng-content></ng-content>\n <entity-edit-buttons-bar\n (save)=\"save()\"\n [valid]=\"\n formGroup.value.valid && formGroup.value.dirty && !saveInProgress\n \"\n >\n </entity-edit-buttons-bar>\n </form>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: GeneralErrorsComponent, selector: "app-general-errors", inputs: ["form"] }, { kind: "directive", type: i1$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: EntityEditButtonsBarComponent, selector: "entity-edit-buttons-bar", inputs: ["valid"], outputs: ["save"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
2404
+ EntityEditFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.3", type: EntityEditFormComponent, selector: "entity-edit-form", inputs: { title: "title", entityId: "entityId", adapter: "adapter" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"col-md-8\">\n <header class=\"header-page-bg\">\n <h4>{{ title | translate }}</h4>\n </header>\n <div class=\"panel editor-area hero-unit\">\n <form\n *ngIf=\"formGroup | async as form\"\n class=\"form-horizontal\"\n [formGroup]=\"form\"\n novalidate\n autocomplete=\"off\"\n >\n <div class=\"col-md-3\"></div>\n <div class=\"col-md-9\">\n <app-general-errors\n [form]=\"form\"\n [errors]=\"form.generalErrors\"\n ></app-general-errors>\n </div>\n <ng-content></ng-content>\n <entity-edit-buttons-bar\n (save)=\"save()\"\n [valid]=\"form.valid && form.dirty && !saveInProgress\"\n >\n </entity-edit-buttons-bar>\n </form>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: GeneralErrorsComponent, selector: "app-general-errors", inputs: ["form", "errors"] }, { kind: "directive", type: i1$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: EntityEditButtonsBarComponent, selector: "entity-edit-buttons-bar", inputs: ["valid"], outputs: ["save"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
2402
2405
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: EntityEditFormComponent, decorators: [{
2403
2406
  type: Component,
2404
- args: [{ selector: 'entity-edit-form', template: "<div class=\"col-md-8\">\n <header class=\"header-page-bg\">\n <h4>{{ title | translate }}</h4>\n </header>\n <div class=\"panel editor-area hero-unit\">\n <form\n class=\"form-horizontal\"\n [formGroup]=\"formGroup | async\"\n novalidate\n autocomplete=\"off\"\n *ngIf=\"formGroup | async\"\n >\n <div class=\"col-md-3\"></div>\n <div class=\"col-md-9\">\n <app-general-errors\n #general_errors\n [form]=\"formGroup | async\"\n ></app-general-errors>\n </div>\n <ng-content></ng-content>\n <entity-edit-buttons-bar\n (save)=\"save()\"\n [valid]=\"\n formGroup.value.valid && formGroup.value.dirty && !saveInProgress\n \"\n >\n </entity-edit-buttons-bar>\n </form>\n </div>\n</div>\n" }]
2405
- }], ctorParameters: function () { return [{ type: i1$5.ActivatedRoute }]; }, propDecorators: { generalErrors: [{
2406
- type: ViewChild,
2407
- args: ['general_errors']
2408
- }], title: [{
2407
+ args: [{ selector: 'entity-edit-form', template: "<div class=\"col-md-8\">\n <header class=\"header-page-bg\">\n <h4>{{ title | translate }}</h4>\n </header>\n <div class=\"panel editor-area hero-unit\">\n <form\n *ngIf=\"formGroup | async as form\"\n class=\"form-horizontal\"\n [formGroup]=\"form\"\n novalidate\n autocomplete=\"off\"\n >\n <div class=\"col-md-3\"></div>\n <div class=\"col-md-9\">\n <app-general-errors\n [form]=\"form\"\n [errors]=\"form.generalErrors\"\n ></app-general-errors>\n </div>\n <ng-content></ng-content>\n <entity-edit-buttons-bar\n (save)=\"save()\"\n [valid]=\"form.valid && form.dirty && !saveInProgress\"\n >\n </entity-edit-buttons-bar>\n </form>\n </div>\n</div>\n" }]
2408
+ }], ctorParameters: function () { return [{ type: i1$5.ActivatedRoute }]; }, propDecorators: { title: [{
2409
2409
  type: Input
2410
2410
  }], entityId: [{
2411
2411
  type: Input