mirror of https://github.com/zulip/zulip.git
settings: Move init disable button function.
This commit moves the function initialize_disable_btn_hint_popover from stream_ui_updates.js to settings_components.js due to circular dependencies. Added opts parameter to append to the options for the tippy instance. Fixes #27511. Co-authored-by: Angelica Ferlin <angelica.ferlin@gmail.com> Co-authored-by: Peterson Linn <linn@pajp.net> Co-authored-by: Kislay Verma <kislayuv27@gmail.com>
This commit is contained in:
parent
d82f33a3c8
commit
5f35384c80
|
@ -1,5 +1,7 @@
|
|||
import $ from "jquery";
|
||||
import assert from "minimalistic-assert";
|
||||
import type {Props} from "tippy.js";
|
||||
import tippy from "tippy.js";
|
||||
|
||||
import render_compose_banner from "../templates/compose_banner/compose_banner.hbs";
|
||||
|
||||
|
@ -918,3 +920,23 @@ function enable_or_disable_save_button($subsection_elem: JQuery): void {
|
|||
|
||||
$subsection_elem.find(".subsection-changes-save button").prop("disabled", disable_save_btn);
|
||||
}
|
||||
|
||||
export function initialize_disable_btn_hint_popover(
|
||||
$btn_wrapper: JQuery,
|
||||
hint_text: string | undefined,
|
||||
opts: Partial<Props>,
|
||||
): void {
|
||||
const tippy_opts: Partial<Props> = {
|
||||
animation: false,
|
||||
hideOnClick: false,
|
||||
placement: "bottom",
|
||||
...opts,
|
||||
};
|
||||
|
||||
// If hint_text is undefined, we use the HTML content of a
|
||||
// <template> whose id is given by data-tooltip-template-id
|
||||
if (hint_text !== undefined) {
|
||||
tippy_opts.content = hint_text;
|
||||
}
|
||||
tippy($btn_wrapper[0], tippy_opts);
|
||||
}
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
import $ from "jquery";
|
||||
import tippy from "tippy.js";
|
||||
|
||||
import render_announce_stream_checkbox from "../templates/stream_settings/announce_stream_checkbox.hbs";
|
||||
import render_stream_privacy_icon from "../templates/stream_settings/stream_privacy_icon.hbs";
|
||||
|
@ -7,6 +6,7 @@ import render_stream_settings_tip from "../templates/stream_settings/stream_sett
|
|||
|
||||
import * as hash_parser from "./hash_parser";
|
||||
import {$t} from "./i18n";
|
||||
import * as settings_components from "./settings_components";
|
||||
import * as settings_config from "./settings_config";
|
||||
import * as settings_data from "./settings_data";
|
||||
import * as settings_org from "./settings_org";
|
||||
|
@ -114,24 +114,9 @@ export function update_private_stream_privacy_option_state($container, is_defaul
|
|||
.toggleClass("default_stream_private_tooltip", is_default_stream);
|
||||
}
|
||||
|
||||
export function initialize_disable_btn_hint_popover($btn_wrapper, hint_text) {
|
||||
const opts = {
|
||||
animation: false,
|
||||
hideOnClick: false,
|
||||
placement: "bottom",
|
||||
};
|
||||
|
||||
// If hint_text is undefined, we use the HTML content of a
|
||||
// <template> whose id is given by data-tooltip-template-id
|
||||
if (hint_text !== undefined) {
|
||||
opts.content = hint_text;
|
||||
}
|
||||
tippy($btn_wrapper[0], opts);
|
||||
}
|
||||
|
||||
export function initialize_cant_subscribe_popover() {
|
||||
const $button_wrapper = $(".settings .stream_settings_header .sub_unsub_button_wrapper");
|
||||
initialize_disable_btn_hint_popover($button_wrapper);
|
||||
settings_components.initialize_disable_btn_hint_popover($button_wrapper);
|
||||
}
|
||||
|
||||
export function set_up_right_panel_section(sub) {
|
||||
|
@ -384,7 +369,10 @@ export function update_add_subscriptions_elements(sub) {
|
|||
defaultMessage: "Only stream members can add users to a private stream.",
|
||||
});
|
||||
}
|
||||
initialize_disable_btn_hint_popover($add_subscribers_container, tooltip_message);
|
||||
settings_components.initialize_disable_btn_hint_popover(
|
||||
$add_subscribers_container,
|
||||
tooltip_message,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -23,7 +23,6 @@ import * as settings_components from "./settings_components";
|
|||
import * as settings_data from "./settings_data";
|
||||
import * as settings_org from "./settings_org";
|
||||
import {current_user, realm} from "./state_data";
|
||||
import * as stream_ui_updates from "./stream_ui_updates";
|
||||
import * as ui_report from "./ui_report";
|
||||
import * as user_group_components from "./user_group_components";
|
||||
import * as user_group_create from "./user_group_create";
|
||||
|
@ -96,7 +95,7 @@ function update_add_members_elements(group) {
|
|||
$button_element.prop("disabled", true);
|
||||
$add_members_container.addClass("add_members_disabled");
|
||||
|
||||
stream_ui_updates.initialize_disable_btn_hint_popover(
|
||||
settings_components.initialize_disable_btn_hint_popover(
|
||||
$add_members_container,
|
||||
$t({defaultMessage: "Only group members can add users to a group."}),
|
||||
);
|
||||
|
@ -149,7 +148,7 @@ function initialize_tooltip_for_membership_button(group_id) {
|
|||
} else {
|
||||
tooltip_message = $t({defaultMessage: "You do not have permission to join this group."});
|
||||
}
|
||||
stream_ui_updates.initialize_disable_btn_hint_popover($tooltip_wrapper, tooltip_message);
|
||||
settings_components.initialize_disable_btn_hint_popover($tooltip_wrapper, tooltip_message);
|
||||
}
|
||||
|
||||
function update_group_membership_button(group_id) {
|
||||
|
|
|
@ -30,12 +30,12 @@ import * as loading from "./loading";
|
|||
import * as modals from "./modals";
|
||||
import * as peer_data from "./peer_data";
|
||||
import * as people from "./people";
|
||||
import * as settings_components from "./settings_components";
|
||||
import * as settings_config from "./settings_config";
|
||||
import * as settings_data from "./settings_data";
|
||||
import * as settings_profile_fields from "./settings_profile_fields";
|
||||
import {current_user, realm} from "./state_data";
|
||||
import * as stream_data from "./stream_data";
|
||||
import * as stream_ui_updates from "./stream_ui_updates";
|
||||
import * as sub_store from "./sub_store";
|
||||
import * as subscriber_api from "./subscriber_api";
|
||||
import * as timerender from "./timerender";
|
||||
|
@ -142,7 +142,7 @@ function change_state_of_subscribe_button(event, dropdown) {
|
|||
|
||||
function reset_subscribe_widget() {
|
||||
$("#user-profile-modal .add-subscription-button").prop("disabled", true);
|
||||
stream_ui_updates.initialize_disable_btn_hint_popover(
|
||||
settings_components.initialize_disable_btn_hint_popover(
|
||||
$("#user-profile-modal .add-subscription-button-wrapper"),
|
||||
$t({defaultMessage: "Select a stream to subscribe"}),
|
||||
);
|
||||
|
|
Loading…
Reference in New Issue