mirror of
https://github.com/zulip/zulip.git
synced 2025-11-06 15:03:34 +00:00
stream settings: Simpify code to find input pill.
We also future-proof against having multiple input tags in the stream-edit container.
This commit is contained in:
@@ -137,13 +137,25 @@ test_ui("subscriber_pills", ({override, mock_template}) => {
|
|||||||
const sub_settings_selector = `#subscription_overlay .subscription_settings[data-stream-id='${CSS.escape(
|
const sub_settings_selector = `#subscription_overlay .subscription_settings[data-stream-id='${CSS.escape(
|
||||||
denmark.stream_id,
|
denmark.stream_id,
|
||||||
)}']`;
|
)}']`;
|
||||||
const $sub_settings_container = $.create(sub_settings_selector);
|
|
||||||
$sub_settings_container.find = noop;
|
|
||||||
$sub_settings_container.find = () => input_field_stub;
|
|
||||||
|
|
||||||
const pill_container_stub = $.create(sub_settings_selector + " .pill-container");
|
const pill_container_stub = $.create("pill-container-stub");
|
||||||
pill_container_stub.find = () => input_field_stub;
|
pill_container_stub.find = () => input_field_stub;
|
||||||
|
|
||||||
|
const $sub_settings_container = $.create(sub_settings_selector);
|
||||||
|
|
||||||
|
$sub_settings_container.find = (selector) => {
|
||||||
|
switch (selector) {
|
||||||
|
case ".colorpicker": {
|
||||||
|
return undefined;
|
||||||
|
}
|
||||||
|
case ".pill-container": {
|
||||||
|
return pill_container_stub;
|
||||||
|
}
|
||||||
|
// No default
|
||||||
|
}
|
||||||
|
throw new Error(`unexpected selector ${selector}`);
|
||||||
|
};
|
||||||
|
|
||||||
const $subscription_settings = $.create(".subscription_settings");
|
const $subscription_settings = $.create(".subscription_settings");
|
||||||
$subscription_settings.addClass = noop;
|
$subscription_settings.addClass = noop;
|
||||||
$subscription_settings.closest = () => $subscription_settings;
|
$subscription_settings.closest = () => $subscription_settings;
|
||||||
|
|||||||
@@ -401,14 +401,10 @@ function show_subscription_settings(sub) {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
const container = $(
|
const pill_container = edit_container.find(".pill-container");
|
||||||
`#subscription_overlay .subscription_settings[data-stream-id='${CSS.escape(
|
|
||||||
stream_id,
|
|
||||||
)}'] .pill-container`,
|
|
||||||
);
|
|
||||||
|
|
||||||
pill_widget = input_pill.create({
|
pill_widget = input_pill.create({
|
||||||
container,
|
container: pill_container,
|
||||||
create_item_from_text,
|
create_item_from_text,
|
||||||
get_text_from_item,
|
get_text_from_item,
|
||||||
});
|
});
|
||||||
@@ -452,7 +448,7 @@ function show_subscription_settings(sub) {
|
|||||||
user_group: true,
|
user_group: true,
|
||||||
user: true,
|
user: true,
|
||||||
};
|
};
|
||||||
pill_typeahead.set_up(edit_container.find(".input"), pill_widget, opts);
|
pill_typeahead.set_up(pill_container.find(".input"), pill_widget, opts);
|
||||||
}
|
}
|
||||||
|
|
||||||
export function is_notification_setting(setting_label) {
|
export function is_notification_setting(setting_label) {
|
||||||
|
|||||||
Reference in New Issue
Block a user