Skip to main content
Version: 11.14.0

The User Profile feature has 2 components, UserProfileDialog that only allows opening the second one, UserProfileFormComponent, in a dialog.

UserProfileDialog

API Reference

Properties

PropertyTypeDescription
openedsignal<boolean>Whether the dialog has been opened. Since the dialog is loaded in the main pages, it allows to not load UserProfileFormComponent before we need to

Usage

sample.component.ts
import { UserProfileDialog } from "@sinequa/atomic-angular";
import { ButtonComponent } from '@sinequa/ui';

@Component({
selector: "sample-component",
imports: [UserProfileDialog, ButtonComponent],
template: `
<button (click)="openDialog()">Open</button>
<user-profile-dialog />
`,
}) export class SampleComponent {

readonly userProfileDialog = viewChild(UserProfileDialog);

openDialog() {
this.userProfileDialog()?.open();
}
}

UserProfileFormComponent

API Reference

Properties

PropertyTypeDescription
dataKeysstring[]Default keys from the user profile's data property.
keyscomputed<string[]>The keys to use from the user profile's data property, filtered with the optional custom JSON's userProfile.data parameter.
formKeyscomputed<string[]>The keys from keys to use in the actual form (all but profilePhoto).
allowProfilePhotocomputed<boolean>Whether the profile photo is enabled.
initialscomputed<string>The user's initials.
usernamecomputed<string>The user's username.
propertyToEditsignal<string | undefined>The current property being edited.
valuemodel<string | undefined>The value of the current property being edited.
currentLanguagemodel<string>The current language of the app.
AllLanguagesmodel<any[]>Available languages allowed to be switched between.
changingPasswordsignal<boolean>Whether we display ChangePasswordComponent.
customDatacomputed<string[]>The keys to the additional parameters set in the optional custom JSON's userProfile.customData parameter.
allowChangePasswordcomputed<boolean>Whether the user is allowed to change the password.

Usage

sample.component.ts
import { UserProfileFormComponent } from "@sinequa/atomic-angular";

@Component({
selector: "sample-component",
imports: [UserProfileFormComponent],
template: `
<user-profile-form />
`,
}) export class SampleComponent {}