This commit adds a test for the grouping logic of the
`do_delete_messages` function, which now groups public and private
messages based on their streams and topics.
This refactor updates `do_delete_messages` to categorize messages by
recipient and topic using a `defaultdict`. Messages are grouped into
batches where each batch corresponds to a unique recipient and topic
combination. For each group, a separate delete event is created and
processed, ensuring compliance with API requirements that mandate one
event per topic.
Co-authored-by: Mateusz Mandera <mateusz.mandera@zulip.com>
Fixes a UI issue where placeholder text and topic field were
not updating for the channels with "No general chat topic"
topics policy after sending message to "general chat" topic
of channel with "General chat allowed" topics policy.
This commit sets the focus outline offset in action and icon buttons
to 0, following the discussions at CZO concerning the visuals and
jagged corners in some cases when the outline offset was applied.
This commit adds the same styles to the data export loader as we have
for the users table loader, ensuring that the spinner is sized
correctly and maintains consistency across the tables we have in
settings panel.
This commit is a follow-up to 18b2427937,
which removed the `alert-error` class from the Bootstrap CSS, while the
`web/src/ui_report.ts` module still used this styling for the error
banners.
This commit adds the `alert-error` class back to the Bootstrap CSS,
as a temporary solution until these alerts are migrated to the new
banner component system.
The instructions for the desktop and mobile apps for this section
are for when the user has already logged into an initial Zulip
organization, so we update the section header to be "Log in to a
new organization" instead of "Log in for the first time".
For both apps, if the user has not logged in to any Zulip
organization, then the apps default to the log in prompts, so
there is no need to add a set of instructions for that case.
Follow-up to feedback in #34869.
This commit fixes the use of `/json/...` by replacing
it with the correct `/api/v1/...`. Also removes
unnecessary `login_user` call when using `api_patch`.
Since `tus-js-client` caches the uploaded file data, uploading
the same file doesn't trigger our backend hooks and thus we
don't know which file user has selected.
To fix it, we removed the cached file data once it has been
successfully uploaded.
Deletes the mobile tab of the "Forward message" section as that is
not a named feature in the mobile app. Adds a tip about setting a
different topic if the user is in the channel view of the mobile
app.
Part of #34748.