@c8y/ngx-components
Version:
Angular modules for Cumulocity IoT applications
71 lines • 3.62 kB
TypeScript
import { OnInit } from '@angular/core';
import { BasicAuth, FetchClient, IUser, UserService } from '@c8y/client';
import { BsModalRef } from 'ngx-bootstrap/modal';
import { AlertService } from '../alert/alert.service';
import { PasswordService } from '../authentication/password.service';
import { CookieBannerService } from '../bootstrap/cookie-banner/cookie-banner.service';
import { AppStateService } from '../common/ui-state.service';
import { UserPreferencesService } from '../common/user-preferences/user-preferences.service';
import { ModalService } from '../modal/modal.service';
import { GainsightService } from '../product-experience/gainsight.service';
import { UserEngagementsService } from '../product-experience/user-engagements.service';
import * as i0 from "@angular/core";
export declare class UserEditModalComponent implements OnInit {
modal: BsModalRef;
user: UserService;
ui: AppStateService;
private auth;
private client;
private alert;
private userPreferences;
private c8yModalService;
private gainsightService;
private cookieBannerService;
private passwordService;
private userEngagementsService;
currentUser: IUser;
changedLang: string;
loading: boolean;
showProductExperienceOptions: boolean;
currentUsageTrackingState: boolean;
currentUserEngagementPreferenceInitialState: boolean;
usageTrackingState: boolean;
userEngagementPreferenceNewState: boolean;
constructor(modal: BsModalRef, user: UserService, ui: AppStateService, auth: BasicAuth, client: FetchClient, alert: AlertService, userPreferences: UserPreferencesService, c8yModalService: ModalService, gainsightService: GainsightService, cookieBannerService: CookieBannerService, passwordService: PasswordService, userEngagementsService: UserEngagementsService);
ngOnInit(): Promise<void>;
/**
* Initializes product experience options for the user.
*
* This function performs the following operations:
* - Determines if the user has the permission to edit product experience options.
* - If the user has the permission and functional cookies are enabled:
* - Checks whether personalized product experience tracking is active.
* - Checks whether in-product information and communication is active.
*/
setInitialProductExperienceOptions(): Promise<void>;
onDismiss(): Promise<void>;
onUsageTrackingChange(isEnabled: boolean): void;
onUserEngagementPreferenceChange(isEnabled: boolean): void;
updateAndClose(user: any): Promise<void>;
gainsightTrackingAppReload(): Promise<void>;
private updateProductExperienceOptions;
/**
* Updates the user engagement preference if it has changed from the initial state.
* Calls the user engagements service to update the preference.
*
* The update only occurs if the current preference differs from the new state.
*/
private updateUserEngagementsPreference;
/**
* Asynchronously updates the tracking option for user preferences.
* If the current usage tracking state differs from the new state,
* it updates the Gainsight preferences and sets a functional cookie
* before triggering a reload of the application.
*/
private updateTrackingOption;
private updateUserInAppState;
private updateCredentials;
static ɵfac: i0.ɵɵFactoryDeclaration<UserEditModalComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<UserEditModalComponent, "c8y-user-edit-modal", never, {}, {}, never, never, true, never>;
}
//# sourceMappingURL=user-edit-modal.component.d.ts.map