Commit Graph

4477 Commits

Author SHA1 Message Date
Jakob Ackermann
9e3e4407a1 [web] add junit integration for Jenkins (#28788)
* [web] add junit integration for Jenkins

* [web] integrate junit test report for writefull into Jenkins

* [web] put all the junit test results into namespaces

GitOrigin-RevId: ba1ff07b5ea7bcfa97bb4d6bf7fa9e5291ab7b0f
2025-10-02 08:06:25 +00:00
Domagoj Kriskovic
7a46cb5c03 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
Eric Mc Sween
a7136f321e Merge pull request #28656 from overleaf/em-restore-optimize-file-download
File restore: optimize file download from history

GitOrigin-RevId: c32afe7d2ede2372e95490f62e79266f5f6d58da
2025-09-29 08:06:56 +00:00
Eric Mc Sween
c150f2fdad Merge pull request #28655 from overleaf/em-restore-avoid-doc-download
File restore: avoid downloading docs unnecessarily

GitOrigin-RevId: bf5faab7510b118041aaf848f9acb3eb864b5cc4
2025-09-29 08:06:51 +00:00
Antoine Clausse
8669c7c964 [web] Prevent errors from silently resolving and simplify promises in tests (#28621)
GitOrigin-RevId: e6ba7d25436c1350f8eef74df34dce03f93af909
2025-09-29 08:05:36 +00:00
Rebeka Dekany
aedff1039e 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
b61c7f9259 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
Olzhas Askar
a36aca056f Merge pull request #28673 from overleaf/oa-signup-date
[web] Expose signup date for Customer.IO

GitOrigin-RevId: 950b396e154e495071b104ea86e2441052df4bfb
2025-09-26 08:05:31 +00:00
Eric Mc Sween
0015f2cc6c Merge pull request #28672 from overleaf/em-reapply-restore-optimization
Reapply file restore optimization

GitOrigin-RevId: c4479141d890e3e0af746f406a0186bf21f3d918
2025-09-25 08:05:25 +00:00
Brian Gough
75cbf3826c Merge pull request #28628 from overleaf/bg-cache-history-size-on-project
Implement project size checks on file uploads

GitOrigin-RevId: 4dffe237e6992b859f07964cffa82ff1c13e91c9
2025-09-24 08:07:37 +00:00
Jessica Lawshe
922020ecfb Merge pull request #28618 from overleaf/jel-commons-enable-while-migrating-to-group
[web] Support Commons migration to a group with domain capture

GitOrigin-RevId: 9262a44fc09d6d19a9c17895ef90bcef877e4a42
2025-09-24 08:07:29 +00:00
ilkin-overleaf
dfd6c8b007 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
Domagoj Kriskovic
f2502a5143 Revert "File restore optimization - using snapshot timestamp and file paths (#28546)"
This reverts commit 376a53e1f927cb56544e6782b47d80345655038c.

GitOrigin-RevId: 8e4ab1d4042fec8df1b62ab1c5418d873dc6f5eb
2025-09-24 08:06:06 +00:00
Domagoj Kriskovic
fa163bd02c File restore optimization - using snapshot timestamp and file paths (#28546)
* Use snapshot timestamp, remove request for paths at version

* Add timestamp to core Snapshot object

* Avoid mutating function argument

* Explain assumption about editable files

* snapshot.toRaw() in getContentAtVersion

* fix project-history acceptance test

* fix history_v1 test

* fix web tests

* Include the snapshot timestamp in stored chunks

---------

Co-authored-by: Eric Mc Sween <5454374+emcsween@users.noreply.github.com>
GitOrigin-RevId: 376a53e1f927cb56544e6782b47d80345655038c
2025-09-24 08:06:02 +00:00
Antoine Clausse
6b663a8509 Merge pull request #28544 from overleaf/ac-some-web-esm-migration-4
[web] Convert some Features files to ES modules (part 4)

GitOrigin-RevId: cf11a7584e39c4d4de08e2f924240e488a4066c4
2025-09-24 08:05:58 +00:00
Olzhas Askar
db7bd82158 Merge pull request #28596 from overleaf/oa-possessive-s
[web] Unescaping possessive s and ampersand for Email subjects

GitOrigin-RevId: 8ba0fd509c8b6bd2a3eec13adf10f13b0bdb6aca
2025-09-23 08:07:54 +00:00
Olzhas Askar
d33caaee53 Merge pull request #28540 from overleaf/oa-punctuation
[web] Notification punctuation

GitOrigin-RevId: ba20f0049a5f72f3ba03917d9fe76b220adffcf0
2025-09-23 08:07:49 +00:00
Andrew Rumble
69c39ab3ce Return a formatted JSON error when validation fails
GitOrigin-RevId: 0f2d3d73a6e371aa332dee245be8802250adfb2b
2025-09-23 08:07:37 +00:00
Andrew Rumble
9ae5cce4c9 Make sharing test use correct user to setCollaboratorInfo
GitOrigin-RevId: 02b35facff478ccf269fb472eba271cbf8473d46
2025-09-23 08:07:32 +00:00
Andrew Rumble
229669d6c3 Update test to reflect new behaviour
The affected values shouldn't ever have got past the validation in the
router (so the old behaviour should be unused)

GitOrigin-RevId: 3afbd09bd12279125b65fb0d3ec1242f0b456d6f
2025-09-23 08:07:23 +00:00
Andrew Rumble
aacba6ca5f Use valid input in test suites
GitOrigin-RevId: 3529a169062df54af54ca32f00804c211a129bf1
2025-09-23 08:07:18 +00:00
Eric Mc Sween
e8950e0472 Migrate MockV1HistoryApi to zod
GitOrigin-RevId: d0fd392e76632e12832fb794d60b50a0835f3756
2025-09-23 08:07:13 +00:00
Jimmy Domagala-Tang
6f2381c8b6 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
5931f70194 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
553a46c2e4 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
3046dcaf37 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
9d28e4ab91 Merge pull request #28567 from overleaf/bg-fix-project-locator-root-folder
respect elementType when matching rootFolder in findElement

GitOrigin-RevId: f4e20ee6441fc16915297b2ac24737ed63398027
2025-09-19 08:08:20 +00:00
Brian Gough
d75f4b3a7b 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
3218533131 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
Domagoj Kriskovic
55edbe6606 Use history snapshot when doing file/project restore (#28502)
* Add getDocUpdaterCompatibleRanges utility function

* use history snapshot for file/project restore

* move overleaf-editor-core from devDependencies

GitOrigin-RevId: 62481a5304ada9d931e018418be3c0719bccf1f3
2025-09-19 08:07:58 +00:00
Jimmy Domagala-Tang
89f416af05 feat: add tests for recurly plan revert feature (#25966)
GitOrigin-RevId: 9bb0c198d237a9c86b63da8b4892c7867f79c71f
2025-09-18 08:06:28 +00:00
Brian Gough
19e6fc4fe3 Merge pull request #28506 from overleaf/bg-size-limits
add size check when cloning project (logging only)

GitOrigin-RevId: 1f56ed80a2d05b28c44fab8532d751ad8e758943
2025-09-18 08:05:52 +00:00
Miguel Serrano
3ef17cb1b6 Upgrade aws-sdk to v3 (re-attempt) (#28410)
* Upgrade `aws-sdk` to v3

Also vendored nodemailer-ses-transport

* Moved default region to CE settings

* Ensure timeout is added to `requestHandler` and `region` is populated

* fix unsigned header in signed URL request

The x-amz-acl header is not needed when using the signed request,
as ACL are already defined when creating the signed URL in
PutObjectCommand constructor.

* Add default AWS region for latexqc service

* remove unnecessary region in compose files

* Use AWS_REGION=us-west-2 for history-v1

* prevent retries uploading streams with PutObjectCommand

* Remove AWS SDK JS message suppression

GitOrigin-RevId: 6fda6f02160023ffed76143397bbd965f86a9509
2025-09-18 08:05:22 +00:00
Jessica Lawshe
d1b08f8352 Merge pull request #28402 from overleaf/jel-link-logged-in-async-local-storage
[web] Extend `AsyncLocalStorage` to SAML linking in route, clear `AsyncLocalStorage` on email updates, await analytics helper on email updates,

GitOrigin-RevId: 86a51e6800a4b954ff81a2d977edf1401064dda4
2025-09-17 08:05:30 +00:00
Antoine Clausse
0ef959d05b [web] Convert some Features files to ES modules (part 3) (#28494)
* Rename files to mjs

* Rename test files to mjs

* Update CODEOWNERS

* Update files to ESM

* Update test files to ESM

* Update RestoreManager.test.mjs

* Remove unused `AdminAuthorizationHelper` mock and stub

* Remove unnecessary return

GitOrigin-RevId: 2b9ef126de1d8964afbc6e5641cca36712655866
2025-09-17 08:05:02 +00:00
Andrew Rumble
6f732c8513 Merge pull request #27958 from overleaf/ar-change-esm-codemod-to-use-vitest-and-general-refactor
[web] change esm codemod to use vitest and general refactor

GitOrigin-RevId: 7f8c699b160ee0b7ff991d6284cb126165694c4f
2025-09-17 08:04:57 +00:00
Andrew Rumble
819b2a3a46 Merge pull request #28367 from overleaf/ar-migrate-routermjs-to-zod
[web] migrate router.mjs to zod

GitOrigin-RevId: d3fc21a11351f3e2deb5011cd1beeb86286a300b
2025-09-16 08:05:26 +00:00
Antoine Clausse
e6e636d45c [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
Antoine Clausse
ae135f3950 [web] Convert some Features files to ES modules (part 2) (#28275)
* Rename files

* Rename test files

* Convert to ESM

GitOrigin-RevId: b0ee442ac8edd4ef3695f93a91ffd9521e6bf259
2025-09-16 08:04:59 +00:00
Eric Mc Sween
e44f137090 Merge pull request #28431 from overleaf/em-docupdater-get-ranges
Look in docupdater when obtaining comments for DSMP

GitOrigin-RevId: acaead280f725da8e0c438d5b429fa983c3cad86
2025-09-15 08:05:29 +00:00
Eric Mc Sween
d8c200b3f5 Merge pull request #28401 from overleaf/em-promisify-document-updater-handler
Promisify DocumentUpdaterHandler

GitOrigin-RevId: 8793f30ef51f5cd5886d0f74773f4b952761c2d4
2025-09-15 08:05:25 +00:00
Alf Eaton
8887ee8171 Add locateFile to project snapshot (#28442)
GitOrigin-RevId: 47c03548770b540845b0af3ba7a6c0ca89350d12
2025-09-15 08:04:57 +00:00
Miguel Serrano
6aeb97e6b2 [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
Olzhas Askar
ac936d462c Merge pull request #28378 from overleaf/oa-expose-last-active
[web] Expose lastActive to customer.io

GitOrigin-RevId: 5a0f3b43a6c8288e7e5f7b1de05b409a2d3ac86a
2025-09-12 08:06:30 +00:00
Eric Mc Sween
2a57162792 Merge pull request #27999 from overleaf/em-reactivate-add-on
Add option to reactivate an add-on

GitOrigin-RevId: a1795f37dac5141996d626d87ba3a9bae1d218dd
2025-09-11 08:05:12 +00:00
Jakob Ackermann
f16039f8d3 [web] display project history blob size on admin pages (#28351)
* [history-v1] add endpoint for getting blob stats of projects

* [web] display project history blob size on admin pages

* [web] break down history storage size by text and binary blob

GitOrigin-RevId: bfa4d56cf2c503d03005c13a0f7ac38158156cd2
2025-09-10 08:06:19 +00:00
ilkin-overleaf
96d9ca2d37 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
f8aad4f7f4 Update unit tests for ActiveSubscription
GitOrigin-RevId: 181f5a097fff2fa31ed11d39b76f40c9a4b4ca31
2025-09-10 08:05:25 +00:00
Liangjun Song
0f8b9d611d Merge pull request #28202 from overleaf/ls-remove-user-features-for-past-due-stripe-subscriptions
Remove paid user features for past due Stripe subscriptions

GitOrigin-RevId: 07a97f90312db7f6e91cbf15201f71cbdeb2e33c
2025-09-09 08:06:52 +00:00
Liangjun Song
4ca1883351 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