Aman Agrawal
a9dc669f3c
dropdown_widget: Migrate to typescript.
2024-02-22 16:38:25 -08:00
evykassirer
ea2818786e
buddy_list: Convert module to typescript.
2024-02-22 16:05:27 -08:00
evykassirer
231aa098cb
buddy list: Create section in buddy list for users from narrow.
...
Fixes #21285 .
2024-02-22 16:05:27 -08:00
evykassirer
860150525c
sidebar_ui: Convert module to typescript.
2024-02-21 18:50:51 -08:00
evykassirer
aab25fae6a
pm_list: Convert module to typescript.
2024-02-21 10:49:24 -08:00
Varun Singh
c91ca3eca8
message_live_update: Convert module to TypeScript.
2024-02-20 08:30:04 -08:00
evykassirer
23795ca153
message_edit_history: Convert module to typescript.
2024-02-19 21:39:40 -08:00
Anders Kaseorg
a4938d3760
page_params: Parse page_params and state_data with Zod.
...
This establishes a runtime check that their types continue to reflect
reality going forward.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2024-02-17 00:02:38 -08:00
Anders Kaseorg
e96ede0ef6
page_params: Split out state data for current user.
...
For spectators, the chunk of page_params that originates from
do_events_register isn’t assigned until ui_init.js. That means the
TypeScript type of page_params is mostly a lie during module load
time: reading a parameter too early silently results in undefined
rather than the declared type, with unpredictable results later on.
We want to make such an early read into an immediate runtime error,
for both users and spectators consistently, and pave the way for
runtime validation of the page_params type. As a first step, split
out the subset of fields that pertain to the current user.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2024-02-15 10:22:52 -08:00
Varun Singh
3fa308369d
playground_links_popover: Convert module to TypeScript.
2024-02-13 11:44:01 -08:00
Varun Singh
5f9b6d82a4
typing_events: Convert module to TypeScript.
2024-02-12 09:49:54 -08:00
evykassirer
49d79730b8
resize: Convert module to typescript.
2024-02-09 21:17:16 -08:00
Joydeep Bhattacharjee
264a9a1057
compose_ui: Convert module to typescript.
2024-02-09 15:11:17 -08:00
Varun Singh
e213d9505b
typing: Convert module to TypeScript.
2024-02-07 09:12:49 -08:00
Varun Singh
94558478df
scheduled_messages_feed_ui: Convert module to TypeScript.
2024-02-06 22:25:55 -08:00
evykassirer
ea04f7d27d
topic list: Convert module to typescript.
2024-01-29 10:22:35 -08:00
Lalit
6f6795f607
ts: Migrate `message_viewport` to typescript.
...
Used function overloading for methods - `make_dimen_wrapper`
and `scrollTop`.
2024-01-22 16:29:23 -08:00
Varun Singh
c0a0c0e834
scheduled_messages: Convert module to TypeScript.
2024-01-21 08:54:20 -08:00
Aditya Kumar Kasaudhan
49a9954413
settings: Rename settings_display to settings_preferences.
...
This commit renames "settings_display.js" file to
"settings_preferences.js".
Fixes part of #26874 .
2024-01-12 15:33:16 -08:00
Sahil Batra
dcac272afc
user_group_popover: Convert module to typescript.
2024-01-09 16:47:37 -08:00
Varun Singh
af3b15ef10
read_receipts: Convert module to TypeScript.
2024-01-05 11:52:59 -08:00
Varun Singh
4b04716237
settings_realm_domains: Convert module to TypeScript.
2024-01-05 10:50:08 -08:00
evykassirer
979ace1cea
message_util: Convert module to typescript.
2024-01-05 10:47:12 -08:00
evykassirer
4e66e8742f
rows: Convert module to typescript.
2024-01-04 12:45:42 -08:00
evykassirer
434b67caf5
message_feed_top_notices: Convert module to typescript.
2024-01-03 14:39:26 -08:00
sayyedarib
b430ba2bd5
navbar_help_menu: Migrate module to typescript.
...
Signed-off-by: sayyedarib <sayyedaribhussain4321@gmail.com>
2023-12-29 12:15:08 -08:00
evykassirer
1f21510dd4
compose_notifications: Convert module to typescript.
2023-12-28 16:53:46 -08:00
Varun Singh
62a636068e
subscriber_api: Convert module to TypeScript.
2023-12-28 15:05:16 -08:00
evykassirer
6157d83d3a
unread_ui: Convert module to typescript.
2023-12-28 11:26:37 -08:00
evykassirer
5f5e77afd5
local_message: Convert module to typescript.
2023-12-27 23:23:36 -08:00
evykassirer
b20694aa07
narrow_history: Convert module to typescript.
2023-12-27 23:12:09 -08:00
evykassirer
0cf1d49fee
message_list_data: Convert module to typescript.
2023-12-27 21:48:54 -08:00
evykassirer
dc8d0ed861
message_lists: Convert module to typescript.
2023-12-27 20:44:58 -08:00
evykassirer
e0fef6fdff
narrow_title: Migrate module to typescript.
2023-12-27 20:39:53 -08:00
evykassirer
d1acdf20e7
unread: Convert module to TypeScript.
2023-12-22 16:18:50 -08:00
Lalit
02257b8cbf
ts: Migrate `popover_menus` to typescript.
...
This commit migrates `popover_menus` module to TypeScript. Also adds
a placeholder types declaration file for `css_variables` module.
2023-12-17 14:00:44 -08:00
Sahil Batra
3d181a8ee1
settings: Remove "User groups" panel from settings overlay.
...
The "User groups" panel is now removed from settings overlay
and we instead use new "#groups" UI.
This commit also makes some changes to tests to ensure coverage
for pill_typeahead.js which was previously done by
settings_user_group_legacy.test.js. We have still not got
complete coverage on user_pill.ts as we have removed
settings_user_group_legacy.test.js, but we just add the file
to EXEMPT_FILS list for now and will handle it in future.
Fixes #28012 .
2023-12-07 06:35:38 -08:00
Prakhar Pratyush
ac8af3d6de
urls: Add a new endpoint for hotspot and deprecate the old one.
...
This commit adds a new endpoint 'users/me/onboarding_steps'
deprecating the older 'users/me/hotspots' to mark hotspot as read.
We also renamed the view `mark_hotspot_as_read` to
`mark_onboarding_step_as_read`.
Reason: Our plan is to make this endpoint flexible to support
other types of UI elements not just restricted to hotspots.
2023-12-06 18:19:20 -08:00
Sahil Batra
2968eb2b04
user_groups: Add UI to set and update can_mention_group setting.
...
This commit adds support to set can_mention_group setting
when creating user group and also update the setting for
existing user groups.
2023-11-29 10:58:04 -08:00
Aman Agrawal
1e7b4ae160
recent_view: Add drodown widget to filter topics.
2023-11-22 23:38:52 -08:00
N-Shar-ma
143db56992
polls: Add option for modal to create polls.
...
Earlier the `/poll` slash command was the only way to create polls.
To increase user friendliness with a GUI, a button to launch a modal
to create a poll, has been added to the compose box. This button is
enabled only when the compose box is empty, to avoid complexities with
losing / having to save as draft any message already being composed.
The modal has a form which on submission frames a message using the
`/poll` syntax and the data input in the form, and sets the content of
the compose box to that message, which the user can then send. The
question field is mandatory for form submission.
Fixes : #20304 .
2023-11-21 21:01:17 -08:00
Anders Kaseorg
1dd386a65a
tippyjs: Convert module to TypeScript.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-11-16 17:26:54 -08:00
Aman Agrawal
b516ae75db
upgrade: Remove tests temporarily as they need to be rewritten.
2023-11-13 10:35:39 -08:00
Aman Agrawal
ff5e1c3aee
sponsorsihp: Make submitting the form work.
...
Includes various changes to make submitting the sponsorship form work.
2023-11-06 14:55:14 -08:00
Anders Kaseorg
b3fa7b15fc
compose_state: Convert module to TypeScript.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-11-02 14:06:04 -07:00
Anders Kaseorg
a0656a6c56
inbox_util: Convert module to TypeScript.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-11-02 08:36:44 -07:00
Anders Kaseorg
519a2af2a4
stream_color: Convert module to TypeScript.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-11-02 08:36:44 -07:00
Anders Kaseorg
341ba92f23
stream_settings_api: Convert module to TypeScript.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-11-02 08:36:44 -07:00
Aryan Bhokare
646128db9e
ts: Migrate ‘user_sort.js’ to TypeScript.
...
Also fixes a bug in the people.ts User; `delivery_email` is never undefined.
2023-11-01 11:19:30 -07:00
Lalit Kumar Singh
dcf45da09c
ts: Migrate `user_status` module to TypeScript.
...
Also removed an defensive if check from `emoji.ts` since it is not
needed now that we have `emoji.ts` converted to TypeScript.
2023-10-30 11:10:47 -07:00
Aman Agrawal
8f716cd64a
help_menu: Extract help items from gear menu into a separate popover.
...
Fixes #27202
2023-10-23 14:15:13 -07:00
Aman Agrawal
2b9dc1f398
hotkey: Avoid inconsistent hotkey handling.
...
Pressing `r` to open compose box, or search via hotkey didn't work
for gear menu while it worked for other popovers. So, this is an
attempt to unify that behavior so that if the hotkeys are not
handles the navbar_menus popovers, then can be handled elsewhere.
2023-10-23 14:15:13 -07:00
Junyao Chen
23d34ca457
ts: Migrate `poll_widget.js` to TypeScript.
...
Added type annotations.
2023-10-23 09:33:47 -07:00
Karl Stolley
4dd1bf7e32
left_sidebar: Expand and condense the VIEWS navigation.
2023-10-20 12:27:19 -07:00
Aman Agrawal
a5e60f47b6
gear_menu: Move from TS to normal JS module.
...
Need to convert gear menu to popover.
2023-10-18 22:02:38 -07:00
Anders Kaseorg
d8dcec6853
user_deactivation_ui: Convert module to TypeScript.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-16 13:06:54 -07:00
Anders Kaseorg
94934f49f9
webpack_public_path: Replace with webpack 5 publicPath: "auto" setting.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-16 10:36:27 -07:00
Hardik Dharmani
49f7f02a0a
personal_menu: Add tippy personal_menu dropdown.
...
Add a personal menu dropdown that opens on clicking user avatar icon
in navbar added in previous commit.
The args passed to render_personal_menu() in onShow() are returned by
get_personal_menu_content_context() in popover_menus_data.js so that
they can be unit tested.
Additionally, added CSS to get a custom arrow for dropdown menu.
Added a `?` hotkey in keyboard shortcuts option in personal_menu
dropdown in a style similar to our tooltip's hotkey by adding
? in a span with class .tooltip-hotkey-hint and adding some CSS.
Fixes part of #22802 .
2023-10-12 15:31:01 -07:00
evykassirer
77fc836edf
stream_id: Replace empty string with undefined.
...
This commit also limits `stream_bar.decorate` to only
be able to be called for stream messages, since it's
an undefined string_id is no longer a sign that
you're dealing with a DM.
2023-10-12 11:03:49 -07:00
Anders Kaseorg
82e4250592
electron_bridge: Declare Zulip Desktop binding types.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-12 09:28:47 -07:00
Joelute
2cbf65b1f2
scheduled_messages: Indicate scheduled messages in conversation views.
...
These changes adds a new scheduled message indicator in conversation views
which informs the user of the number of messages that are scheduled to be
sent to the current view.
Fixes : #25584 .
2023-10-11 17:53:07 -07:00
Anders Kaseorg
cac5778e70
stream_edit_toggler: Convert module to TypeScript.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-10 18:26:57 -07:00
Anders Kaseorg
820dcc50a0
sent_messages: Convert module to TypeScript.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-10 17:18:37 -07:00
Anders Kaseorg
2163cb7770
popovers: Convert module to TypeScript.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-10 16:50:48 -07:00
Anders Kaseorg
0006f4a90c
audible_notifications: Convert module to TypeScript.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-10 16:50:07 -07:00
Aman Agrawal
577a384845
overlays: Extract modal methods in separate file.
2023-10-10 16:43:57 -07:00
Aman Agrawal
63c1c9a37a
overlays: Extract enable / disable scrolling to a util module.
2023-10-10 16:43:57 -07:00
Anders Kaseorg
325b308ed5
about_zulip: Convert module to TypeScript.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-10 13:20:31 -07:00
Anders Kaseorg
881da05cd3
stream_settings_ui: Extract stream_settings_components module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-10 12:09:15 -07:00
Anders Kaseorg
1d43a4cccb
stream_edit: Extract toggler to new stream_edit_toggler module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-09 23:19:59 -07:00
Anders Kaseorg
3cac29a8e1
settings_org: Extract settings_components module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-09 17:26:49 -07:00
Anders Kaseorg
5327bcc5ac
user_group_settings_ui: Merge into user_group_edit.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-09 10:58:50 -07:00
Anders Kaseorg
27991bd5b0
topic_zoom: Merge into stream_list.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-06 19:43:55 -07:00
Anders Kaseorg
564e91f3a8
narrow: Cut import of hashchange.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-06 19:41:59 -07:00
Anders Kaseorg
ba1895cb1c
notifications: Rename to desktop_notifications.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-06 16:22:40 -07:00
Anders Kaseorg
fcaf1fe7d5
notifications: Split out audible_notifications module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-06 16:22:40 -07:00
Anders Kaseorg
6ef08873d8
notifications: Split out compose_notifications module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-06 16:22:40 -07:00
Anders Kaseorg
db20fd12e0
notifications: Split out message_notifications module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-06 16:22:40 -07:00
Anders Kaseorg
971a003180
compose_actions: Extract compose_reply module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-06 09:07:43 -07:00
Anders Kaseorg
9c70f92514
reload: Move initialize to new reload_setup module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-06 08:34:39 -07:00
Anders Kaseorg
c4d338a6ab
drafts: Extract drafts_overlay_ui module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-06 08:30:31 -07:00
Anders Kaseorg
d5064fc7b2
narrow: Extract narrow_title module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-05 16:26:45 -07:00
Anders Kaseorg
e8a2a5ce36
compose: Move initialize to new compose_setup module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-05 14:42:19 -07:00
Anders Kaseorg
6e725f0d17
compose: Move call link insertion to new compose_call_ui module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-05 14:42:19 -07:00
Anders Kaseorg
ac8436d46c
resize: Move handler to new resize_handler module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-05 09:26:59 -07:00
Anders Kaseorg
b4878d4f0b
stream_edit: Move set_stream_property to new stream_settings_api module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-04 13:04:50 -07:00
Anders Kaseorg
ac38aaad21
scheduled_messages: Move UI to new scheduled_messages_ui module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-03 17:56:43 -07:00
Anders Kaseorg
d4a93aa05a
popover_menus: Extract compose_popovers module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-03 11:58:29 -07:00
Anders Kaseorg
d01db0f5a0
popover_menus: Extract left_sidebar_navigation_area_popovers module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-03 11:58:29 -07:00
Anders Kaseorg
dd6676f16e
popover_menus: Extract user_topic_popover menus.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-03 11:58:29 -07:00
Anders Kaseorg
825fb8cef5
popover_menus: Extract topic_popover module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-03 11:58:29 -07:00
Anders Kaseorg
16e2a32c4c
popover_menus: Extract message_actions_popover module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-03 11:58:29 -07:00
Anders Kaseorg
26e34a163e
popover_menus: Extract scheduled_messages_popover module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-03 11:58:22 -07:00
Eeshan Garg
f3465dea08
demo-orgs: Add UI for converting to permanent organization.
...
Adds warning banner to the organization settings overlay/tabs
for demo organizations. For owners, clicking on the link in the
banner opens a modal to convert the demo organization into a
permanent organization.
For admins that are not owners, clicking on the link will go
to the help center article on demo organizations.
Non-admin users will not see the warning banner.
The modal for converting a demo organization requires the owner
to have set their email address. Once the owner's email address
is set, then the organization can be made permanent by changing
the subdomain of the organization. The deletion date for the
demo organization will be removed as part of updating the
subdomain.
The organization owner must also have updated the organization
type to be any value other than unsepecified to convert the
demo organization to a permanent organization. The modal's
submit button will be disabled if that is the value for the
organization type in the form. The demo organizations created
in the dev environment now have their organization type set to
unspecified on creation.
This is a part of #19523 .
Co-authored by: Lauryn Menard <lauryn@zulip.com>
2023-10-03 09:11:41 -07:00
Anders Kaseorg
5efbece30a
stream_color: Extract update_stream_color to new module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-03 08:15:21 -07:00
Anders Kaseorg
0efd9f7bdd
settings_users: Extract user sort comparators to new user_sort module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-03 08:14:51 -07:00
Anders Kaseorg
30ae936793
settings_invites: Convert module to TypeScript.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-03 08:14:11 -07:00
Tim Abbott
7a97ceab86
popovers: Extract add_stream_options_popover.js.
2023-10-02 19:17:08 -07:00
Anders Kaseorg
91e656398d
settings_muted_users: Convert module to TypeScript.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-02 19:15:03 -07:00
Anders Kaseorg
c5c5b18ab4
settings_exports: Convert module to TypeScript.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-10-02 17:49:36 -07:00