Commit Graph

1079 Commits

Author SHA1 Message Date
ilkin-overleaf c0a836082c Merge pull request #28865 from overleaf/ii-domain-capture-join-success-message-edit
[web] Domain capture join group message edit

GitOrigin-RevId: 8949dff2e1d95dd978ee5e04165ad4cefe51b088
2025-10-09 08:07:26 +00:00
Mathias Jakobsen f9d0f7e3ee Merge pull request #28893 from overleaf/mj-linter-brace-check
[web] Allow braces in documentclass options

GitOrigin-RevId: 9675d3fc760a3b7d402c5a9df57a0cf183a1e648
2025-10-09 08:05:31 +00:00
Simon Gardner 14356f2675 Improve UX for entering multi-digit quantities in Buy More Licenses feature
GitOrigin-RevId: c51e2146dbb53144e6951a16f7162ba2d10c5c4e
2025-10-07 08:05:55 +00:00
roo hutton 37918244fc Merge pull request #28578 from overleaf/rh-account-settings-links
Improve consistency of account settings link text

GitOrigin-RevId: d30c37fe32c425a571af6d580ebfe37403ebd142
2025-10-06 08:05:24 +00:00
Domagoj Kriskovic c22e44438e Support for deleting and editing chat messages (#28204)
* Initial server-side delete of chat message plus dropdown

* Update chat pane after deleting message

* Chat message dropdown styling

* Add confirmation dialog for deleting a message

* Refactor chat message grouping to allow deletion of individual messages

* Delete other user's deleted message from chat pane

* Implement message editing

* Styling

* Make the dropdown appear overlap with the button slightly so that the menu stays visible when the user moves their cursor into the menu when the menu is positioned above the button

* Submit edit with Enter key

* Add edited indicator to edited chat messages

* Add animation to chat message deletion

* Tidying, edit chat message textarea improvements

* Add types to message-list-utils

* update dependencies

* edit/delete for ide-redesign

* fix type errors in tests

* filter deleted messages from group

* promisify ChatController

* fix tests and translations

* add new tests

* chat-context tests

* fix message-list-appender tests

* add new tests for message-list-utils

* Update services/web/test/frontend/features/chat/context/chat-context.test.tsx

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* preserve original content when canceling edits

* update delete message translation

* hide dropdown only if not already shown

* remove delete animation

* fix lint error

* fix chat.yaml

* hide under feature flag

---------

Co-authored-by: Tim Down <158919+timdown@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
GitOrigin-RevId: 12521886a1a59ccd564851df19e5d46c70d328f5
2025-10-02 08:05:58 +00:00
Rebeka Dekany 3b5ea89a1c Update loading spinner status (#28177)
* Update test for the loading spinner component

* Create a story for the loading spinner component

* Move role and use CSS for spacing instead

* Add a classname prop

* Reuse LoadingSpinner

* Use OLSpinner instead of Spinner

* Use data-testid since status role was moved

* Wait for journals to load

* Use `isLoading` prop instead and fix the button's height

* Use `isLoading` prop instead

* Use LoadingSpinner instead and remove spacing

* Update test for the loading spinner component

* Use `isLoading` prop instead

* Add aria-describedby to layout button for processing state

* Replace `spinner` to `ol-spinner`

* Scope status

* Remove redundant `div.loading`

---------

Co-authored-by: Antoine Clausse <antoine.clausse@overleaf.com>
GitOrigin-RevId: 8f43b991f8f458b2abd5a4661913ac9b972d892a
2025-09-26 08:05:46 +00:00
Rebeka Dekany aebff54a6b Improvement to OLButton loading labels (#28659)
* Create eslint rule for requiring loadingLabel prop when isLoading is specified on OLButton

* Add `loadingLabel` props for OLButton components with `isLoading`

* Clarify loading label and button loading state

GitOrigin-RevId: 89279d5b4c346f9c3b67a59d0db822a2ff04314a
2025-09-26 08:05:41 +00:00
ilkin-overleaf 53bba1807b Merge pull request #28522 from overleaf/ii-domain-capture-create-user-notification
[web] Success message when linking to group with domain capture

GitOrigin-RevId: 2abf29b486da5043c9f207b8f1f741a3c3ee54ab
2025-09-24 08:06:29 +00:00
Olzhas Askar d11674a51f Merge pull request #28540 from overleaf/oa-punctuation
[web] Notification punctuation

GitOrigin-RevId: ba20f0049a5f72f3ba03917d9fe76b220adffcf0
2025-09-23 08:07:49 +00:00
Jimmy Domagala-Tang d5f11f54be Revert "Revert "Rolling TexLive builds experiment"" (#28603)
* Revert "Revert "Rolling TexLive builds experiment""

* adding rolling image to allowed ones in staging (#28588)

GitOrigin-RevId: f377cacd6e4811a4bd9116c793ecbb29a7b72c33
2025-09-22 08:05:53 +00:00
Mathias Jakobsen 6c6048002b Merge pull request #28595 from overleaf/revert-28594-revert-28533-mj-blob-ranges-maxsize
[web+history-v1] Retry: Use range request for binary blobs in project snapshot

GitOrigin-RevId: defc279c9918695135962d65603a2941c5c4b033
2025-09-22 08:05:23 +00:00
Mathias Jakobsen 67d10e96bd Merge pull request #28594 from overleaf/revert-28533-mj-blob-ranges-maxsize
Revert "[web+history-v1] Use range request for binary blobs in project snapshot"

GitOrigin-RevId: 580491611a1b43104846f8509dd1e920f8077c9c
2025-09-22 08:05:15 +00:00
Mathias Jakobsen 6c79ce97cc Merge pull request #28533 from overleaf/mj-blob-ranges-maxsize
[web+history-v1] Use range request for binary blobs in project snapshot

GitOrigin-RevId: e72a2d481bf163b3e85361b42e30e82cf867f1cf
2025-09-22 08:05:04 +00:00
Brian Gough aaa62b2dbc Merge pull request #28589 from overleaf/revert-28283-jdt-monthly-tl-experiment
Revert "Rolling TexLive builds experiment"

GitOrigin-RevId: c3c6833dca7ef0d207f854c93bf0bb03bd814694
2025-09-19 08:08:15 +00:00
Jimmy Domagala-Tang aaafb86fe2 Rolling TexLive builds experiment (#28283)
* feat: allow for monthly tl builds experiment

* feat: show correct image when user doesnt have access to current image in compiler settings (#28282)

* adding packer space for extra rolling image

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
GitOrigin-RevId: db909e1a85f36f1567236a2c4d5790b565dda76d
2025-09-19 08:08:10 +00:00
Antoine Clausse c6905fc94d [web] Fetch favicons from CDN (#28419)
* Simplify paths in `buildImgPath`

* Move favicons from `public` to `public/img/favicons`

* Create links to favicons in `public` (`ln -s img/favicons/* .`)

* Import favicons dynamically in use-status-favicon.ts

* Update pug files with cdn favicon paths

* Update test

* Revert change in layout-no-js.pug

* Fetch web.sitemanifest from CDN

* Revert favicon move

* Fix favicon paths (use `buildBaseAssetPath`)

* Fixup web.sitemanifest path

* Format

* Update `buildImgPath` mock to be more realistic

* Revert web.sitemanifest link to local origin

* Revert "Revert web.sitemanifest link to local origin"

This reverts commit aa13431b743b55c2f536c33e736f657e1c0db598.

GitOrigin-RevId: fe278fec0f1eaae16de9fabc2b13da3e7a316463
2025-09-16 08:05:03 +00:00
Alf Eaton e93593be09 Add locateFile to project snapshot (#28442)
GitOrigin-RevId: 47c03548770b540845b0af3ba7a6c0ca89350d12
2025-09-15 08:04:57 +00:00
Miguel Serrano ad4f376431 [web] Fix group audit log link displayed to managers (#28084)
* [web] Fix group audit log link displayed to managers

* Fix incorrect query in test

GitOrigin-RevId: f5a68ef60f9c19f2e2003b05424b5a88f7a1cad3
2025-09-12 08:07:01 +00:00
ilkin-overleaf 452d77cabc Merge pull request #28126 from overleaf/ii-domain-capture-join-success-message
[web] Notification message for joining group via domain capture

GitOrigin-RevId: 67ef924b2d80afb5e1de75fb6aab147263c0f33c
2025-09-10 08:06:07 +00:00
Simon Gardner d4fe9cf34b Update unit tests for ActiveSubscription
GitOrigin-RevId: 181f5a097fff2fa31ed11d39b76f40c9a4b4ca31
2025-09-10 08:05:25 +00:00
Liangjun Song 8f9a343004 Merge pull request #28226 from overleaf/ls-remove-leaver-survey-alert
Remove leaver survey alert

GitOrigin-RevId: 6dbeabaff8c73d2ce9e3e382da83ce8f2177668d
2025-09-09 08:06:48 +00:00
Mathias Jakobsen bc154642da Merge pull request #28315 from overleaf/mj-word-count-cite
[web] Support citations in client side word count

GitOrigin-RevId: d3ba3d6853d87059a202366f0c47bd9d7ba53cd8
2025-09-08 08:05:28 +00:00
Mathias Jakobsen 442c1952ab [web] Avoid double indexing of client side referencing (#28235)
* [web] Move chat client id to shared module

* [web] Avoid double indexing of client references

GitOrigin-RevId: 993930e66fdc9952649e3e8d345c70dd37516121
2025-09-08 08:05:14 +00:00
Alf Eaton 2c1baa717d Use tracked changes and comments from the snapshot (#26267)
GitOrigin-RevId: c2bf0c9c9a5ab4f8837b8712ca549119a31cf067
2025-09-05 08:05:56 +00:00
Alf Eaton 309097a038 Update word count modal text (#28251)
GitOrigin-RevId: 754dd01940ef42092b54eaed4117b93ba08dd816
2025-09-05 08:05:48 +00:00
Mathias Jakobsen 8282aa85f2 Merge pull request #28128 from overleaf/mj-client-word-count-magic-comments
[web] Support some texcount magic comments in client side word count

GitOrigin-RevId: 12749876edbf7940ca9adfc63fcc7e787894e727
2025-09-03 08:06:28 +00:00
Mathias Jakobsen ed0c4c447e Merge pull request #24468 from overleaf/mj-client-side-references
[web] Perform ARS on client-side

GitOrigin-RevId: 19703c82758cae450fe52463ad9612d3a2383ba0
2025-09-03 08:05:41 +00:00
Rebeka Dekany 97d8f73749 Update selectors to improve CE test stability (#28096)
* Update selectors to improve test stability

* Update selectors to improve test stability

* Use plain string matchers

* Fix test

* [monorepo] use plain string matchers everywhere

* [web] remove Kb/ prefix from title of learn wiki links

---------

Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>
GitOrigin-RevId: 12e13c39822795338a3bee20236454f9948e6221
2025-09-02 08:04:56 +00:00
Jakob Ackermann bd4130c147 [filestore] remove user files endpoints (#28125)
* [filestore] remove user files endpoints

* [web] remove user files integration for filestore

GitOrigin-RevId: 565fa68a659c07420ee6141d0f276b4e4d2972e0
2025-09-02 08:04:52 +00:00
Tim Down 2605edb9dd Merge pull request #28173 from overleaf/td-remove-disable-skip-tests
Remove ESLint override for skipped project list tests

GitOrigin-RevId: d43ad66e00abe6e36587a233188c344e436a2dcb
2025-08-29 08:06:36 +00:00
roo hutton 467102fd1b Merge pull request #27643 from overleaf/rh-pause-cancel
Terminate Recurly subscription when cancelling during final month of pause

GitOrigin-RevId: 39e4c9534621f57b3e2783599ebe521959d7401f
2025-08-29 08:06:17 +00:00
Rebeka Dekany 74533fc401 Replace placeholders with labels (#26811)
* Replace placeholders for labels

* Remove redundant aria-label and update labels with `.visually-hidden`

* Change "Invite more members" to a label

* Fix helper text for group members and fix responsiveness

* Change error message to an error notification

* Use label and helper text instead of a placeholder

* Remove redundant label and use the placeholder text instead for the admin user searchbar

* Extract translations

GitOrigin-RevId: a504fda9779da82920b57c7b8aad38a8b027d09a
2025-08-26 08:05:02 +00:00
Andrew Rumble 6190005f9b [monorepo] Upgrade to node 22.18.0 (#27977)
* Upgrade to node 22.18.0

* Switch projects-data fixture to strip-types compatible form

GitOrigin-RevId: 4a7ec56f4a82395d2be8870526df0c679de38ab5
2025-08-22 08:05:17 +00:00
Antoine Clausse af44f478b9 [web] Add admin permission modify-group-manager (#27642)
* Add capacity `modify-group-manager`

* Check `modify-group-manager` (backend)

* Check `modify-group-manager` (frontend)

* Update tests

* Rename AdminPermissions to mjs

* Add `ol-adminCapabilities` in frontend tests

* Allow modifying group managers if `adminRolesEnabled` is false

* Add `adminPrivilegeAvailable` check

* Update: set `ol-canModify` boolean instead of `ol-adminCapabilities`

* Mock `hasAnyAccess`

* Use `hasAdminCapability` helper

* Add `ol-canModify` to types

* Remove `isAdminMiddleware` as we don't want to relax the permissions for now

* Fix: pass `res` to `hasAnyAccess` (!!)

* * Check `hasWriteAccess` (`hasAdminCapability('modify-group-manager')` or `staffAccess.groupManagement`) in the Pug file
* Fix: Check `hasWriteAccess` in the publisher and institution pug files (!)
* Revert `hasAnyAccess` changes
* Rename `ol-canModify` to `ol-hasWriteAccess` for consistency with other variables

* Remove redundant file AdminPermissions.mjs

* Update unit test

* Revert changes to UserMembershipController.test.mjs

* Rename to `requireGroupManagersWriteAccess`

GitOrigin-RevId: f3f0b1b17abd1d2f0c363688e87d9063de886e3c
2025-08-21 08:05:07 +00:00
Jessica Lawshe 2389674cca Merge pull request #27894 from overleaf/ii-domain-capture-join-button
[web] Domain capture join button

GitOrigin-RevId: aec6033f6776e9384c77fe0ef609c65b13a90f87
2025-08-20 08:06:21 +00:00
MoxAmber 86a1be9739 Merge pull request #27848 from overleaf/as-compile-warning-teardown
[web] Tear down 10s-timeout-warning split test

GitOrigin-RevId: ca8faf77bc73073e9fc126d9d722fe568921c1c3
2025-08-20 08:05:57 +00:00
Simon Gardner ae15f78f9c Merge pull request #27995 from overleaf/slg-license-allocated-text-2
[web] change text for 1 license

GitOrigin-RevId: 4bb7527c39b587830aa40018f28c60abb3238ff0
2025-08-20 08:05:47 +00:00
Brian Gough f5dbbadf79 add option to disable link sharing (#27626)
* add option to remove link-sharing from backend

* restrict make link-sharing in the frontend based on capability

* extend e2e project-sharing tests to cover OVERLEAF_DISABLE_LINK_SHARING=true

* throw an error when link sharing is disabled in TokenAccessHandler

* throw errors when attempting to add users to projects with link sharing disabled

* Update server-ce/test/project-sharing.spec.ts

Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>

* add tests for existing access when link sharing is disabled

* update tests to specify access restrictions for read-only and read-write link shared projects

* [web] block access to legacy public project with link-sharing disabled

---------

Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>
GitOrigin-RevId: 5f194dbcb790e973e427c58a3a4a738a5dd74cb4
2025-08-20 08:05:33 +00:00
Simon Gardner 0138ae0dff Merge pull request #27979 from overleaf/slg-license-allocated-text
[web] change wording of license allocation text on group members management page

GitOrigin-RevId: eaca68cad1dfc5f486a21497069655b188ab2824
2025-08-19 08:06:10 +00:00
Jakob Ackermann d697f00525 [web] reduce log noise in CI (#27961)
* [web] reduce noise from CollectPayPalPastDueInvoiceTest

* [web] reduce noise for frontend tests that use Range.getClientRects

* [web] avoid nesting <li> elements in ProjectToolsMoreDropdownButton

RenameProjectMenuItem/CopyProjectMenuItem will return <li> elements.

* [web] avoid clicking on links that navigate away in JSDom

* [web] add mock for location change in JSDom

* [web] add fallback stripe subscription data for test

3.8k lines of log noise!

GitOrigin-RevId: 7adab182487a6c07ac9809c60802e498a0edb0ec
2025-08-19 08:05:50 +00:00
Tim Down d43f09ca4f Merge pull request #27798 from overleaf/td-project-list-frontend-tests-fix
Fix and reinstate project list front-end tests

GitOrigin-RevId: 5f9343a56a5cf6e4da04c161b9f17b9282fdccbb
2025-08-18 08:05:29 +00:00
Antoine Clausse 40772ef819 [web] Add admin permissions modify-group-member and modify-managed-group-member (#27665)
* Add capability `modify-managed-group-member` & `modify-group-member`

* Check `modify-managed-group-member` & `modify-group-member` (backend)

* Check `modify-managed-group-member` & `modify-group-member` (frontend)

* Update tests

* Update with `ol-hasWriteAccess` flag

* Update tests

* Move functions to AdminAuthorizationHelper.js

* Update import to fix build error

* Add `ol-hasWriteAccess` to types

* Use `hasAdminAccess()` instead of `req?.user?.isAdmin`

* Add tests on `/manage/groups/:id/invites` depending on admin roles

* Reuse `UserMembershipAuthorization.hasAdminCapability`

* Fix: Add entityAccess check

* Update unit test

* Rename `hasAdminGroupMemberCapability` to `hasModifyGroupMemberCapability`

* Remove useless and redundant `hasWriteAccess` check

* Restore stub in afterEach

GitOrigin-RevId: 4b6d83751121b43d4c19d0dbd82a4833cf7a6f24
2025-08-15 08:05:57 +00:00
David 450041e753 Merge pull request #27884 from overleaf/dp-misc-test-files-typescript
Convert a few miscellaneous test files to typescript

GitOrigin-RevId: 7bdff61098988f9ff20735da213330ba2168b0ad
2025-08-14 08:06:20 +00:00
David 9e6db89311 Merge pull request #27811 from overleaf/dp-file-view-typescript
Convert file-view components and test files to typescript

GitOrigin-RevId: 277aa8fd4f3d06a322dc9d0b372eebefb26fd285
2025-08-14 08:05:43 +00:00
David ba1245682f Merge pull request #27828 from overleaf/dp-modal-test-typescript
Convert clone project, share project and dictionary modal tests to typescript

GitOrigin-RevId: 058eecef6054a40dff7c3697fcd908bb60e39b6b
2025-08-14 08:05:38 +00:00
David 38d4ac9842 Merge pull request #27806 from overleaf/dp-file-tree-modals-typescript
Convert FileTree modal components to typescript

GitOrigin-RevId: 8dde8dc0d27aa545a300f4be939eb83e6963ad5d
2025-08-14 08:05:34 +00:00
Mathias Jakobsen 05bf74cf94 Merge pull request #27790 from overleaf/mj-chat-typescript
[web] Convert remaining chat frontend and tests to typescript

GitOrigin-RevId: 6b2b485433e0a4530f00496e7ecdd49d9eb450af
2025-08-14 08:05:23 +00:00
Mathias Jakobsen 49ac21087b Merge pull request #27804 from overleaf/mj-left-menu-tests-typescript
[web] Convert editor-left-menu tests to typescript

GitOrigin-RevId: 8b12fc6dfea387a30e6fe13d117ed623e3d1840b
2025-08-14 08:05:19 +00:00
David 7b230eb8ed Merge pull request #25598 from overleaf/dp-proptypes-misc
Convert HotkeysModal components to Typescript

GitOrigin-RevId: c2cf7a3a33afeb996650faa6e3ed91c4fe14ef1a
2025-08-12 08:06:35 +00:00
Miguel Serrano e8e319d231 [web] Clean up group-audit-logs split test (#27614)
GitOrigin-RevId: e22183820e418cabc83cf2619c2c10cf4f82d3b9
2025-08-12 08:05:39 +00:00