{"version":3,"file":"SnapshotLogin.js","sourceRoot":"","sources":["../../../Pages/AISnapshot/SnapshotLogin.ts"],"names":[],"mappings":"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","sourcesContent":["namespace Page.SnapshotLogin {\r\n\r\n //#region Contracts\r\n interface SnapshotEmailData {\r\n email: string;\r\n }\r\n\r\n interface SnapshotLoginData extends SnapshotEmailData {\r\n password: string;\r\n }\r\n\r\n interface ChangePasswordData {\r\n oneTimePassword: string\r\n newPassword: string;\r\n }\r\n\r\n abstract class SnapshotAccountRequest extends G2.ClientAccountRequest {\r\n \r\n }\r\n\r\n interface SnapshotResponse extends G2.ServerResponse {\r\n }\r\n\r\n class SnapshotLoginRequest extends SnapshotAccountRequest {\r\n public timeZoneOffset: number;\r\n\r\n constructor(public loginData: SnapshotLoginData) {\r\n super(\"Login\");\r\n this.timeZoneOffset = new Date().getTimezoneOffset();\r\n }\r\n }\r\n\r\n interface SnapshotLoginResponse extends SnapshotResponse {\r\n loginData: SnapshotLoginData;\r\n invalidProperties: G2.InvalidProperties;\r\n redirectUrl: string;\r\n }\r\n\r\n class SendOneTimePasswordRequest extends SnapshotAccountRequest {\r\n constructor(public emailData: SnapshotEmailData) {\r\n super(\"SendOneTimePassword\");\r\n }\r\n }\r\n\r\n interface SendOneTimePasswordResponse extends SnapshotResponse {\r\n emailData: SnapshotEmailData;\r\n encryptedOneTimePassword: string;\r\n invalidProperties: G2.InvalidProperties;\r\n }\r\n\r\n class ChangePasswordRequest extends SnapshotAccountRequest {\r\n constructor(public passwordData: ChangePasswordData, public emailData: SnapshotEmailData, public encryptedOneTimePassword: string) {\r\n super(\"ChangePassword\");\r\n }\r\n }\r\n\r\n interface ChangePasswordResponse extends SnapshotResponse {\r\n passwordData: ChangePasswordData;\r\n invalidProperties: G2.InvalidProperties;\r\n }\r\n\r\n\r\n //#endregion Contracts\r\n\r\n\r\n\r\n namespace Server {\r\n export function Post(request: SnapshotAccountRequest): Promise {\r\n request.accountKey = parseInt($(\"#snapshot-account-key\").val() as string);\r\n return new G2.Handler(\"SnapshotLoginHandler\").Post(request);\r\n }\r\n\r\n } // namespace Server\r\n\r\n namespace Version {\r\n G2.Events.OnLoad(() => {\r\n $(\"#version-container\")\r\n .on(G2.EventMouse.Enter, () => $(\"#version-number\").css(\"visibility\", \"visible\"))\r\n .on(G2.EventMouse.Leave, () => $(\"#version-number\").css(\"visibility\", \"hidden\"));\r\n });\r\n }\r\n\r\n namespace LoginForm {\r\n\r\n const LoginForm = new G2.BoundForm(\"#login-form\");\r\n const EmailForm = new G2.BoundForm(\"#email-form\");\r\n\r\n function PasswordTag() { return $(\"#login-password\"); }\r\n\r\n function InitiateLogin() {\r\n if (LoginForm.Validate()) {\r\n const loginData = LoginForm.GetProperties();\r\n Server.Post(new SnapshotLoginRequest(loginData))\r\n .then(r => {\r\n if (LoginForm.SetProperties(r.loginData, r.invalidProperties)) {\r\n location.replace(r.redirectUrl);\r\n }\r\n });\r\n }\r\n }\r\n\r\n function ForgotPasswordClick() {\r\n if (EmailForm.Validate()) {\r\n Server.Post(new SendOneTimePasswordRequest(EmailForm.GetProperties()))\r\n .then(r => {\r\n if (EmailForm.SetProperties(r.emailData, r.invalidProperties)) {\r\n ChangePasswordDialog.Open(r);\r\n }\r\n });\r\n }\r\n }\r\n\r\n function CheckValidBrowser() {\r\n const isValidBrowser = $(\"#is-valid-browser\").val() == \"true\";\r\n if (!isValidBrowser) {\r\n G2.Namespace.StandardDialogs().then(sd => sd.Alert.Open(\"CXI Go does not support the Safari browser. For the best user experience, please use Google Chrome, Microsoft Edge or Mozilla Firefox\",\r\n sd.Alert.AlertType.Information, sd.Alert.ButtonSet.Close));\r\n }\r\n }\r\n\r\n G2.Events.OnLoad(() => {\r\n CheckValidBrowser();\r\n\r\n $(\"#login-login\").on(G2.EventMouse.Click, InitiateLogin);\r\n $(\"#login-forgot-password\").on(G2.EventMouse.Click, ForgotPasswordClick);\r\n LoginForm.Container().on(G2.EventKey.Down, evt => {\r\n if (evt.key === G2.Key.Enter) {\r\n evt.preventDefault(); // Prevent form submission on Enter key\r\n InitiateLogin();\r\n }\r\n });\r\n\r\n $(\"#login-password-eye\").on(G2.EventMouse.Click, () => {\r\n const isPassword = PasswordTag().prop(\"type\") === \"password\";\r\n PasswordTag().prop(\"type\", isPassword ? \"text\" : \"password\");\r\n $(\"#login-password-eye-off\").toggle(!isPassword);\r\n $(\"#login-password-eye-on\").toggle(isPassword);\r\n });\r\n\r\n const versionInfo = $(\"#version-info\");\r\n const tooltip = new wijmo.Tooltip({ showDelay: 100 });\r\n tooltip.setTooltip(versionInfo[0], versionInfo.attr(\"data-tooltip\"));\r\n\r\n if (LoginForm.Tag(r => r.email).val()) {\r\n LoginForm.Tag(r => r.password).trigger(G2.EventFocus.Focus);\r\n } else {\r\n LoginForm.Tag(r => r.email).trigger(G2.EventFocus.Focus);\r\n }\r\n const lbHealth = $(\"#load-balancer-healthy\").val() == \"true\";\r\n if (!lbHealth) {\r\n G2.Namespace.StandardDialogs().then(sd => sd.Alert.Open($(\"#server-busy-message\").html(), sd.Alert.AlertType.Information, sd.Alert.ButtonSet.Close));\r\n }\r\n });\r\n\r\n namespace ChangePasswordDialog {\r\n\r\n const Dialog = new G2.BoundDialog(\"#change-password-dialog\", { okOnEnter: true, okCallback: ChangePasswordClick });\r\n let OtpResponse: SendOneTimePasswordResponse;\r\n\r\n export function Open(r: SendOneTimePasswordResponse) {\r\n OtpResponse = r;\r\n $(\"#email-verification-to\").text(r.emailData.email);\r\n Dialog.Show();\r\n Dialog.BoundForm.SetProperties({ oneTimePassword: \"\", newPassword: \"\" });\r\n }\r\n\r\n function ChangePasswordClick() {\r\n if (Dialog.BoundForm.Validate()) {\r\n Server.Post(new ChangePasswordRequest(Dialog.BoundForm.GetProperties(), OtpResponse.emailData, OtpResponse.encryptedOneTimePassword))\r\n .then(r => {\r\n if (Dialog.BoundForm.SetProperties(r.passwordData, r.invalidProperties)) {\r\n PasswordTag().val(r.passwordData.newPassword);\r\n Dialog.Hide();\r\n InitiateLogin();\r\n }\r\n });\r\n }\r\n }\r\n\r\n G2.Events.OnLoad(() => {\r\n\r\n $(\"#change-password-eye\").on(G2.EventMouse.Click, () => {\r\n const passwordTag = $(\"#new-password\");\r\n const isPassword = passwordTag.prop(\"type\") === \"password\";\r\n passwordTag.prop(\"type\", isPassword ? \"text\" : \"password\");\r\n $(\"#change-password-eye-off\").toggle(!isPassword);\r\n $(\"#change-password-eye-on\").toggle(isPassword);\r\n });\r\n\r\n new G2.Tooltip({ //NOSONAR\r\n element: \"#password-info-icon\",\r\n content: \"#password-tooltip\"\r\n });\r\n }); // OnLoad\r\n\r\n\r\n } // namespace ChangePasswordDialog\r\n\r\n\r\n } // namespace LoginForm\r\n}"]}