From 8eb0ca3a7cc605ea3834cbedb2771a7697b9fc7c Mon Sep 17 00:00:00 2001 From: evykassirer Date: Tue, 22 Oct 2024 15:03:37 -0700 Subject: [PATCH] settings_account: Move async call into ui_init. --- web/src/settings_account.js | 4 ++-- web/src/settings_sections.js | 4 ++-- web/src/ui_init.js | 6 +++++- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/web/src/settings_account.js b/web/src/settings_account.js index 7e9a23a712..9c427ddb8c 100644 --- a/web/src/settings_account.js +++ b/web/src/settings_account.js @@ -256,7 +256,7 @@ export function update_privacy_settings_box(property) { settings_components.set_input_element_value($input_elem, user_settings[property]); } -export function set_up() { +export function set_up(load_password_quality) { // Add custom profile fields elements to user account settings. add_custom_profile_fields_to_settings(); $("#account-settings-status").hide(); @@ -461,7 +461,7 @@ export function set_up() { if (realm.realm_password_auth_enabled !== false) { // zxcvbn.js is pretty big, and is only needed on password // change, so load it asynchronously. - password_quality = (await import("./password_quality")).password_quality; + password_quality = await load_password_quality(); $("#pw_strength .bar").removeClass("hide"); $("#new_password").on("input", () => { diff --git a/web/src/settings_sections.js b/web/src/settings_sections.js index f35a4327cd..f847269964 100644 --- a/web/src/settings_sections.js +++ b/web/src/settings_sections.js @@ -46,9 +46,9 @@ export function get_group(section) { } } -export function initialize() { +export function initialize(load_password_quality) { // personal - load_func_dict.set("your-account", settings_account.set_up); + load_func_dict.set("your-account", () => settings_account.set_up(load_password_quality)); load_func_dict.set("preferences", () => { settings_preferences.set_up(settings_preferences.user_settings_panel); }); diff --git a/web/src/ui_init.js b/web/src/ui_init.js index d14fafa093..30bb445a3e 100644 --- a/web/src/ui_init.js +++ b/web/src/ui_init.js @@ -630,7 +630,11 @@ export function initialize_everything(state_data) { settings_notifications.initialize(); settings_realm_user_settings_defaults.initialize(); settings_panel_menu.initialize(); - settings_sections.initialize(); + settings_sections.initialize( + // zxcvbn.js is pretty big, and is only needed on password + // change, so load it asynchronously. + async () => (await import("./password_quality")).password_quality, + ); settings_toggle.initialize(); about_zulip.initialize();