@indigina/ui-kit 1.1.613 → 1.1.614

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.
@@ -10866,7 +10866,6 @@ class KitUsersSettingsDetailsFormComponent {
10866
10866
  Validators.email,
10867
10867
  ]),
10868
10868
  [KitUsersSettingsDetailsField.PASSWORD]: this.formBuilder.nonNullable.control('', [
10869
- Validators.required,
10870
10869
  Validators.maxLength(70),
10871
10870
  ]),
10872
10871
  [KitUsersSettingsDetailsField.MFA]: this.formBuilder.nonNullable.control(false),
@@ -10875,6 +10874,7 @@ class KitUsersSettingsDetailsFormComponent {
10875
10874
  this.isSaving = signal(false, /* @ts-ignore */
10876
10875
  ...(ngDevMode ? [{ debugName: "isSaving" }] : /* istanbul ignore next */ []));
10877
10876
  this.lastPatchedUserId = null;
10877
+ this.initialFormValue = JSON.stringify(this.form.getRawValue());
10878
10878
  effect(() => {
10879
10879
  if (!this.isCreateMode()) {
10880
10880
  const { data: userDetails, loading } = this.userDetails();
@@ -10897,6 +10897,9 @@ class KitUsersSettingsDetailsFormComponent {
10897
10897
  getFormErrorMessages(form, controlName) {
10898
10898
  return this.kitFormErrors.getErrors(form.controls[controlName]).join('. ');
10899
10899
  }
10900
+ get hasUnsavedChanges() {
10901
+ return JSON.stringify(this.form.getRawValue()) !== this.initialFormValue;
10902
+ }
10900
10903
  submit() {
10901
10904
  this.isSaving.set(true);
10902
10905
  return this.isCreateMode()
@@ -10920,6 +10923,7 @@ class KitUsersSettingsDetailsFormComponent {
10920
10923
  ...userDetails,
10921
10924
  id,
10922
10925
  })).pipe(takeUntilDestroyed(this.destroyRef), map(() => this.userDetails().data), tap(updatedUser => {
10926
+ this.initialFormValue = JSON.stringify(this.form.getRawValue());
10923
10927
  this.form.markAsPristine();
10924
10928
  if (updatedUser) {
10925
10929
  this.updated.emit(updatedUser);
@@ -10945,6 +10949,7 @@ class KitUsersSettingsDetailsFormComponent {
10945
10949
  [KitUsersSettingsDetailsField.MFA]: userDetails.mfaEnabled,
10946
10950
  [KitUsersSettingsDetailsField.FORCE_PASSWORD]: false,
10947
10951
  }, { emitEvent: false });
10952
+ this.initialFormValue = JSON.stringify(this.form.getRawValue());
10948
10953
  }
10949
10954
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.1", ngImport: i0, type: KitUsersSettingsDetailsFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10950
10955
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.1", type: KitUsersSettingsDetailsFormComponent, isStandalone: true, selector: "kit-users-settings-details-form", inputs: { isCreateMode: { classPropertyName: "isCreateMode", publicName: "isCreateMode", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { updated: "updated" }, providers: [KitFormErrors], ngImport: i0, template: "<form class=\"kit-user-settings-details-form\"\n [formGroup]=\"form\">\n <kit-textbox [formControlName]=\"kitUsersSettingsDetailsField.USER_NAME\"\n [label]=\"'kit.usersSettings.details.loginId' | translate\"\n [readonly]=\"!isCreateMode()\"\n [showStateIcon]=\"false\"\n [state]=\"getTextboxState(form, kitUsersSettingsDetailsField.USER_NAME)\"\n [messageText]=\"getFormErrorMessages(form, kitUsersSettingsDetailsField.USER_NAME) | translate\"></kit-textbox>\n <kit-textbox [formControlName]=\"kitUsersSettingsDetailsField.FIRST_NAME\"\n [label]=\"'kit.usersSettings.details.firstName' | translate\"\n [showStateIcon]=\"false\"\n [state]=\"getTextboxState(form, kitUsersSettingsDetailsField.FIRST_NAME)\"\n [messageText]=\"getFormErrorMessages(form, kitUsersSettingsDetailsField.FIRST_NAME) | translate\"></kit-textbox>\n <kit-textbox [formControlName]=\"kitUsersSettingsDetailsField.LAST_NAME\"\n [label]=\"'kit.usersSettings.details.lastName' | translate\"\n [showStateIcon]=\"false\"\n [state]=\"getTextboxState(form, kitUsersSettingsDetailsField.LAST_NAME)\"\n [messageText]=\"getFormErrorMessages(form, kitUsersSettingsDetailsField.LAST_NAME) | translate\"></kit-textbox>\n <kit-textbox [formControlName]=\"kitUsersSettingsDetailsField.EMAIL\"\n [label]=\"'kit.usersSettings.details.email' | translate\"\n [showStateIcon]=\"false\"\n [state]=\"getTextboxState(form, kitUsersSettingsDetailsField.EMAIL)\"\n [messageText]=\"getFormErrorMessages(form, kitUsersSettingsDetailsField.EMAIL) | translate\"></kit-textbox>\n @if (isCreateMode()) {\n <kit-textbox type=\"password\"\n [formControlName]=\"kitUsersSettingsDetailsField.PASSWORD\"\n [label]=\"'kit.usersSettings.details.password' | translate\"\n [showStateIcon]=\"false\"\n [state]=\"getTextboxState(form, kitUsersSettingsDetailsField.PASSWORD)\"\n [messageText]=\"getFormErrorMessages(form, kitUsersSettingsDetailsField.PASSWORD) | translate\"></kit-textbox>\n }\n <div class=\"kit-user-settings-details-form-toggles\">\n <kit-toggle class=\"kit-user-settings-details-form-toggle\"\n [formControlName]=\"kitUsersSettingsDetailsField.MFA\"\n [label]=\"'kit.usersSettings.details.mfa' | translate\"></kit-toggle>\n @if (isCreateMode()) {\n <kit-toggle class=\"kit-user-settings-details-form-toggle\"\n [formControlName]=\"kitUsersSettingsDetailsField.FORCE_PASSWORD\"\n [label]=\"'kit.usersSettings.details.forcePassword' | translate\"></kit-toggle>\n }\n </div>\n</form>\n", styles: [".kit-user-settings-details-form{display:flex;flex-direction:column;gap:10px;width:100%}.kit-user-settings-details-form-toggles{display:flex;width:100%;gap:20px}.kit-user-settings-details-form-toggle{width:100%}.kit-user-settings-details-form-toggle ::ng-deep .kit-toggle{display:flex;align-items:center;gap:15px;justify-content:space-between;width:100%}.kit-user-settings-details-form-toggle ::ng-deep .kit-form-label{margin:0}\n"], dependencies: [{ kind: "component", type: KitTextboxComponent, selector: "kit-textbox", inputs: ["placeholder", "label", "labelTooltip", "defaultValue", "messageIcon", "messageText", "messageTemplate", "disabled", "maxlength", "state", "size", "icon", "clearButton", "showStateIcon", "readonly", "customStateIcon", "type"], outputs: ["defaultValueChange", "disabledChange", "blured", "focused", "changed"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$8.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$8.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$8.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$8.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: KitToggleComponent, selector: "kit-toggle", inputs: ["label", "disabled", "readonly", "defaultChecked", "leftLabel", "rightLabel", "messageIcon", "messageText", "size"], outputs: ["disabledChange", "defaultCheckedChange", "changed"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
@@ -11291,6 +11296,7 @@ class KitUsersSettingsEntitlementsFormComponent {
11291
11296
  ...(ngDevMode ? [{ debugName: "partners" }] : /* istanbul ignore next */ []));
11292
11297
  this.roles = signal([], /* @ts-ignore */
11293
11298
  ...(ngDevMode ? [{ debugName: "roles" }] : /* istanbul ignore next */ []));
11299
+ this.initialFormValue = JSON.stringify(this.form.getRawValue());
11294
11300
  this.creatingFormContext = toSignal(merge(this.form.controls[KitUsersSettingsEntitlementsField.IDENTITY_TYPE].valueChanges, this.form.controls[KitUsersSettingsEntitlementsField.PARTNERS].valueChanges).pipe(startWith(null), map(() => ({
11295
11301
  identityType: this.form.controls[KitUsersSettingsEntitlementsField.IDENTITY_TYPE].value,
11296
11302
  partnerId: this.form.controls[KitUsersSettingsEntitlementsField.PARTNERS].value,
@@ -11305,6 +11311,9 @@ class KitUsersSettingsEntitlementsFormComponent {
11305
11311
  getFormErrorMessages(form, controlName) {
11306
11312
  return this.kitFormErrors.getErrors(form.controls[controlName]).join('. ');
11307
11313
  }
11314
+ get hasUnsavedChanges() {
11315
+ return JSON.stringify(this.form.getRawValue()) !== this.initialFormValue;
11316
+ }
11308
11317
  submit() {
11309
11318
  const userId = this.userId();
11310
11319
  if (!userId) {
@@ -11358,7 +11367,10 @@ class KitUsersSettingsEntitlementsFormComponent {
11358
11367
  return undefined;
11359
11368
  }
11360
11369
  dispatchAndMarkPristine(action) {
11361
- return this.store.dispatch(action).pipe(tap(() => this.form.markAsPristine()), map(() => true), catchError(() => {
11370
+ return this.store.dispatch(action).pipe(tap(() => {
11371
+ this.initialFormValue = JSON.stringify(this.form.getRawValue());
11372
+ this.form.markAsPristine();
11373
+ }), map(() => true), catchError(() => {
11362
11374
  this.form.setErrors({ serverError: true });
11363
11375
  return of(false);
11364
11376
  }), finalize(() => this.isSaving.set(false)));
@@ -11375,6 +11387,7 @@ class KitUsersSettingsEntitlementsFormComponent {
11375
11387
  });
11376
11388
  this.form.get(KitUsersSettingsEntitlementsField.IDENTITY_TYPE)?.disable();
11377
11389
  this.form.get(KitUsersSettingsEntitlementsField.PARTNERS)?.disable();
11390
+ this.initialFormValue = JSON.stringify(this.form.getRawValue());
11378
11391
  this.form.markAsPristine();
11379
11392
  }
11380
11393
  }
@@ -11543,7 +11556,11 @@ class KitUsersSettingsEntitlementsComponent {
11543
11556
  }
11544
11557
  get isSaveBtnDisabled() {
11545
11558
  const formComponent = this.entitlementsForm();
11546
- return !formComponent || formComponent.form.pristine || formComponent.form.invalid || formComponent.isSaving();
11559
+ return !formComponent ||
11560
+ formComponent.form.pristine ||
11561
+ !formComponent.hasUnsavedChanges ||
11562
+ formComponent.form.invalid ||
11563
+ formComponent.isSaving();
11547
11564
  }
11548
11565
  selectItem(item) {
11549
11566
  const collapsedList = this.collapsedList();
@@ -11752,7 +11769,11 @@ class KitUsersSettingsProfileComponent {
11752
11769
  get isFormDisabled() {
11753
11770
  if (this.currentTab() === KitUsersSettingsProfileTab.DETAILS) {
11754
11771
  const detailsForm = this.detailsForm();
11755
- return !detailsForm || detailsForm.form.pristine || detailsForm.form.invalid || detailsForm.isSaving();
11772
+ return !detailsForm ||
11773
+ detailsForm.form.pristine ||
11774
+ !detailsForm.hasUnsavedChanges ||
11775
+ detailsForm.form.invalid ||
11776
+ detailsForm.isSaving();
11756
11777
  }
11757
11778
  const entitlementsForm = this.entitlementsForm();
11758
11779
  return !entitlementsForm || entitlementsForm.isSaveBtnDisabled;