Commit graph

7289 commits

Author SHA1 Message Date
Alf Eaton
1f14746111 Remove latex-log-parser split test (#17999)
GitOrigin-RevId: 5accb0e5fc4c1ecce563f1d6f991de8c8633308b
2024-04-23 08:05:16 +00:00
Alexandre Bourdin
9fc6fa9b77 Merge pull request #18017 from overleaf/ab-convert-assigned-at-date
[web] Transform assignedAt back to date for conversion

GitOrigin-RevId: bd0213b337f765d8512386f9f5d3fc6d03572e33
2024-04-23 08:04:52 +00:00
Alexandre Bourdin
3022f573e9 Merge pull request #18022 from overleaf/revert-18018-revert-17906-ab-split-test-assignments-optim-pt2
Revert "Revert "[web] Store anonymous users split test assignments in new format in session""

GitOrigin-RevId: bd48a21c17df91eda1536378d8d999a1933e83a2
2024-04-23 08:04:47 +00:00
Davinder Singh
a179751986 Merge pull request #17866 from overleaf/ds-banner-labels
Geo Pricing- Update Banner message on Latam america

GitOrigin-RevId: 7a8adf8e31e7ba4bc1b415a26c492bf6e5867328
2024-04-23 08:04:19 +00:00
roo hutton
06cac44d84 Merge pull request #18021 from overleaf/rh-mailchimp-api
[web] Replace node-mailchimp with own MailChimpClient

GitOrigin-RevId: 10207620c48f30ad29f4f0e7ea5193c11d256902
2024-04-22 08:04:33 +00:00
roo hutton
9601fd097a Merge pull request #17946 from overleaf/rh-promisify-third-party-identity-
[web] Promisify ThirdPartyIdentityManager and ThirdPartyIdentityManagerTests

GitOrigin-RevId: f7d24f73213fb0a43eb453aa21749b21ba60b83d
2024-04-22 08:04:28 +00:00
Christopher Hoskin
2100cd14fc Merge pull request #18012 from overleaf/bg-mongo-upgrade-remove-sort-from-project-deactivation-query
Simplify query for old projects in InactiveProjectManager

GitOrigin-RevId: 6c712c3b095abec9c777332a07ed888178947b40
2024-04-22 08:03:55 +00:00
Alexandre Bourdin
14bbc65e99 Merge pull request #18018 from overleaf/revert-17906-ab-split-test-assignments-optim-pt2
Revert "[web] Store anonymous users split test assignments in new format in session"

GitOrigin-RevId: 2c1a95031a9d1d99b9dfef54eb4b80264a32ba0d
2024-04-19 08:04:27 +00:00
Alexandre Bourdin
bfe75c7d31 Merge pull request #17906 from overleaf/ab-split-test-assignments-optim-pt2
[web] Store anonymous users split test assignments in new format in session

GitOrigin-RevId: a5f71f7dcad7e7b11fc6a391bd5182525b3bdf03
2024-04-19 08:04:23 +00:00
Alexandre Bourdin
e4e054e8bb Merge pull request #18008 from overleaf/ab-fix-anon-assignment-append
[web] Fix anonymous assignment append to session

GitOrigin-RevId: 402cd94ec6250e15f0e35cb69af3977c78ec5a7d
2024-04-19 08:04:19 +00:00
Alexandre Bourdin
cdf4f98c87 Merge pull request #17957 from overleaf/ab-archive-test-slack-notif-date
[web] Send correct date for Slack notification when archiving a split test

GitOrigin-RevId: acf39915e3362f90b431b6c973e1191428acd9c9
2024-04-19 08:04:15 +00:00
Alexandre Bourdin
bee4c95c28 Merge pull request #17907 from overleaf/ab-split-test-assignments-optim-pt1
[web] Read anonymous split test assignments in session from both old&new fields

GitOrigin-RevId: 5235bb3e7d72d5ff9e89c6543b70fb80e9f1213c
2024-04-19 08:04:11 +00:00
Domagoj Kriskovic
945e51b8ed [web] add Revert File button behind a feature flag (#17975)
* [web] add Revert File button behind a feature flag

* improve error message

* use constant for timeout

GitOrigin-RevId: 047c35d22e948351c52d469e48b869719f44ec4f
2024-04-19 08:04:06 +00:00
David
0cf17478fe Merge pull request #17810 from overleaf/dp-compormised-password-prompt
Add compromised password prompt

GitOrigin-RevId: 7910a220943fcb3aa191da6d514d5bc3ae20f5a3
2024-04-19 08:03:58 +00:00
Antoine Clausse
b2ef7a935f [web] Use localized number formatting for currencies (#17622)
* Add a unit test on `SubscriptionFormatters.formatPrice`

* Add JSDoc to `formatPrice`

Also: Name the functions before exporting:
This fixes my IDE (WebStorm) navigation

* Make `'USD'` the default param instead of reassigning

* Create `formatCurrency` function

* Use `formatCurrency` in SubscriptionFormatters

* Use an `isNoCentsCurrency` logic for `CLP` `JPY` `KRW` `VND`

And remove custom `CLP` logic and locale

* Add `locale` param to `formatPrice`

* Generate `groups.json` and `localizedPlanPricing.json`

```
bin/exec web node ./scripts/recurly/recurly_prices.js --download -o prices.json
bin/exec web node ./scripts/plan-prices/plans.js -f ../../prices.json -o dir
```

* Update scripts/plan-prices/plans.js to generate numbers instead of localized amounts

* Generate `groups.json` and `localizedPlanPricing.json`

```
bin/exec web node ./scripts/recurly/recurly_prices.js --download -o prices.json
bin/exec web node ./scripts/plan-prices/plans.js -f ../../prices.json -o dir
```

* Remove generation of `plans.json`

As /services/web/frontend/js/main/plans.js was removed in https://github.com/overleaf/internal/pull/12593

* Sort currencies in alphabetical order in scripts/plan-prices/plans.js

* Generate `groups.json` and `localizedPlanPricing.json`

```
bin/exec web node ./scripts/recurly/recurly_prices.js --download -o prices.json
bin/exec web node ./scripts/plan-prices/plans.js -f ../../prices.json -o dir
```

* Use `formatCurrency` in price-summary.tsx

* Use `formatCurrency` in Subscription Pug files

* Fix unit tests SubscriptionHelperTests.js

* Remove unused `currencySymbol`

* Change to `formatCurrency` in other React components

* Add `CurrencyCode` JSDoc types

* Duplicate `formatCurrency` into services/web/app/src/util

* Wrap tests in a top-level describe block

* Use `narrowSymbol`

* Fix tests with `narrowSymbol` expects

* Revert deletion of old `formatPrice` in SubscriptionFormatters.js

* Rename `formatCurrency` -> `formatCurrencyLocalized`

* Revert deletion of `CurrencySymbol`

* Add split-test in SubscriptionController.js

* Add split-test in SubscriptionViewModelBuilder.js

* Add split-test in plans

* Add split-test in subscription-dashboard-context.tsx

* Add split-test in 4 more components

* Update tests

* Show currency and payment methods in interstitial page

* Fix `–` being printed. Use `–` instead

* Fix test with NOK

* Storybook: Fix missing `SplitTestProvider`

* Storybook: Revert "Remove unused `currencySymbol`"

This reverts commit e55387d4753f97bbf8e39e0fdc3ad17312122aaa.

* Replace `getSplitTestVariant` by `useSplitTestContext`

* Use parameterize currencyFormat in `generateInitialLocalizedGroupPrice`

* Fixup import paths of `formatCurrencyLocalized`

* Replace `% 1 === 0` by `Number.isInteger`

* Add comment explaining that any combinations of languages/currencies could happen

* Fixup after rebase: import `useSplitTestContext`

* Revert "Remove SplitTestProvider from subscription root"

This reverts commit be9f378fda715b86589ab0759737581c72321d87.

* Revert "Remove split test provider from some tests"

This reverts commit 985522932b550cfd38fa6a4f4c3d2ebaee6ff7df.

GitOrigin-RevId: 59a83cbbe0f7cc7e45f189c654e23fcf9bfa37af
2024-04-19 08:03:54 +00:00
Antoine Clausse
76955c814a Remove subscription-cancel-button (#17976)
I believe this was already removed since https://github.com/overleaf/internal/pull/13311

GitOrigin-RevId: e486f2fce794fc9d587da331547834c3b6158ceb
2024-04-19 08:03:49 +00:00
Thomas
52e6ceef67 Merge pull request #17898 from overleaf/tm-remove-twitter-login
Remove twitter login code and uninstall passport-twitter

GitOrigin-RevId: 928c877ef2a42d5881652cad7f9d563c7766fd36
2024-04-18 08:04:16 +00:00
roo hutton
d53a3e315e Merge pull request #17879 from overleaf/rh-refresh-collab
Refresh websocket on collaborator change

GitOrigin-RevId: b05444d592f5952a08bad51c9f529ed9183d042f
2024-04-17 08:05:18 +00:00
Alf Eaton
4a68a5f8bc Discontinue the bonus program (#17919)
GitOrigin-RevId: d30ace08a340dd17a68c3cfe82e589bb37b5959f
2024-04-17 08:04:58 +00:00
Antoine Clausse
616bd0df16 Merge pull request #17925 from overleaf/jpa-ac-20s-timeout-migration-logging-tweaks
[web] timeout 20s split-test teardown cleanups (remove override, remove tests, ...)

GitOrigin-RevId: 8d8c44539cf45d0f5142f84cf8372cecda3bf77a
2024-04-17 08:04:30 +00:00
Jakob Ackermann
ac2ea9f34d Merge pull request #17865 from overleaf/jpa-open-in-overleaf-session-storage
[web] open-in-overleaf: cleanup redis and browser session storage

GitOrigin-RevId: af79bb49ff474545fc0d206d2a6f5a0ffa1416bc
2024-04-17 08:04:04 +00:00
Antoine Clausse
d35204033f Merge pull request #17909 from overleaf/ac-tear-down-compile-timeout-tests-2
[web]  Remove split-tests `compile-backend-class*` and `compile-timeout-20s*` (attempt 2)

GitOrigin-RevId: 5658f2977d3e7089eec5bbe7a33eee81c153e41d
2024-04-16 08:04:08 +00:00
Alexandre Bourdin
5f8db6ee23 Merge pull request #17799 from overleaf/ab-account-deletion-audit-log
[web] Add audit log when user account is deleted or recovered

GitOrigin-RevId: 3d5f99705fbd6192ccae430e040be4b7fcb3f740
2024-04-15 08:04:42 +00:00
Antoine Clausse
491bc2628d Merge pull request #17899 from overleaf/revert-17700-ac-tear-down-compile-timeout-tests
Revert "[web] Remove split-tests `compile-backend-class*` and `compile-timeout-20s*`"

GitOrigin-RevId: d5070ced06adbd435e782a44b7ef767e395bd6a0
2024-04-15 08:04:37 +00:00
Antoine Clausse
2dd10c7fee [web] Remove split-tests compile-backend-class* and compile-timeout-20s* (#17700)
* Remove split-tests of `compile-timeout-20s` and `compile-timeout-20s-existing-users`

* Remove `NEW_COMPILE_TIMEOUT_ENFORCED_CUTOFF` variables

* Revert timeout override `60` -> `20`

* Update settings.overrides.saas.js: `compileTimeout: 20`

* Remove `compile-backend-class-n2d`

* Remove `force_new_compile_timeout`

* Remove `showNewCompileTimeoutUI`

* Remove `compileTimeChanging`

* Simplify code by removing segmentation object

* Remove `CompileTimeoutChangingSoon`

* Remove `user.features.compileTimeout = '20 (with 10s prompt)'`

* Remove `CompileTimeWarning`

* Remove `TimeoutUpgradePrompt` (old)

* Remove `compile-backend-class`

* Remove unused translations

* Update tests

* Fix: Show `CompileTimeout` even if `!window.ExposedSettings.enableSubscriptions`

* Create script to migrate users to 20s compileTimeout

* migration script: exclude `compileTimeout: 20` from the match

* migration script: use `batchedUpdate`

* Remove `showFasterCompilesFeedbackUI` and `FasterCompilesFeedback`

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

* Remove `_getCompileBackendClassDetails`, simplify definition of `limits` object

* Remove `Settings.apis.clsi.defaultBackendClass`

* Remove unnecessary second scan of the whole user collection in dry mode

* Override `timeout` to 20 for users having `compileGroup === 'standard' && compileTimeout <= 60`

* Remove second `logCount`: re-run the script in dry-mode if you want to see that count

* Use secondary readPreference when counting users

* Fix script setup and exit 0

* Fix: Remove `user.` from query path!

* Add acceptance test on script migration_compile_timeout_60s_to_20s.js

GitOrigin-RevId: 3cb65130e6d7fbd9c54005f4c213066d0473e9d8
2024-04-15 08:04:24 +00:00
roo hutton
03fb015f8f Merge pull request #17856 from overleaf/rh-deletion-email-update
[web] Use securityAlert template for user deletion email

GitOrigin-RevId: 60dfef18946710f5d5df17daca1a0bdc9800519b
2024-04-12 08:06:40 +00:00
roo hutton
754609f379 Merge pull request #17830 from overleaf/rh-reduce-staff-access-session
[web] Reduce size of staffAccess field in session

GitOrigin-RevId: 7745dc595e8096caef04fd140b47532f0775f165
2024-04-12 08:06:35 +00:00
Jessica Lawshe
955c860b64 Merge pull request #17841 from overleaf/jel-lint-populate
[web] Add linting rule for mongoose `populate`

GitOrigin-RevId: 625b2b5f9db4e88ce0d629752f083b8be71c7766
2024-04-12 08:06:18 +00:00
Jessica Lawshe
0cfcdf5e4d Merge pull request #17822 from overleaf/jel-dash-usersBestSubscription
[web] Limit data sent to dash for best subscription when group

GitOrigin-RevId: d52101bec69cbb7931e9702e085b4aeb65d9d603
2024-04-12 08:06:09 +00:00
Jessica Lawshe
751e079105 Merge pull request #17817 from overleaf/jel-group-subscription-page
[web] Only send necesssary group subscription data to frontened

GitOrigin-RevId: bf49245e573bb9a1ec4bafc85cc6d0b7fd5f3e6f
2024-04-12 08:06:04 +00:00
Jakob Ackermann
ea0a99253c Merge pull request #17864 from overleaf/jpa-fix-redirect
[web] fix navigation flow after try premium page when using skip button

GitOrigin-RevId: 1ae7ccdb14f7125919bc97746761a21c6896938f
2024-04-12 08:05:15 +00:00
Tim Down
a345eb42c2 Merge pull request #17712 from overleaf/td-bs5-feature-flag
Add feature flag check and per-page opt-in for Bootstrap 5

GitOrigin-RevId: 111474c19f0202efc4e701eef597c7653f8e8b61
2024-04-12 08:05:10 +00:00
David
ce5d190c4a Merge pull request #17833 from overleaf/dp-add-secondary-prompt
Update primary email check form to match new designs

GitOrigin-RevId: b740255e3615bd7807845c533472aabb263d69ea
2024-04-11 08:04:20 +00:00
roo hutton
bf7a18db8b Merge pull request #17730 from overleaf/rh-acct-delete-email
[web] Send email notification on account deletion

GitOrigin-RevId: 03c0effba0ee3b829f5b4fe377fe67d05776ba3f
2024-04-10 08:04:12 +00:00
Domagoj Kriskovic
8bde496da4 Send operations to project-history when resolving/unresolving comments (#17540)
* Send operations to project-history when resolving/unresolving comments

* small fixes

* added doc_id in web unit test

* Revert "added doc_id in web unit test"

This reverts commit f0b8251abfce17965d5e1b0e45d8784fcf1d9eed.

* fix mocked dependency in test

* wip: web unit tests

* document updater, reopen test

* document-updater tests

* format fix

* fix typo

* fix callsArgWith

* fix reopenThread calls in doc updater tests

* fix typos

* log error if chat api resolve failes

* log error when reopening thread

* sendStatus calls done() in tests

* using OError instead of logging

* removed timers

* preserve legacy endpoints

* update after merge

* Remove timer check in HttpControllerTest

* prettier

* added "legacy" in log

* remove metrics.timer

* fix promisify issues

* remove unused cb

GitOrigin-RevId: 849538c86996973a065c727835e93028e5429344
2024-04-10 08:04:08 +00:00
Davinder Singh
2ba92141ee Merge pull request #17719 from overleaf/ds-latam-pricing-web-config
Latam Geo Pricing V2 - Updating Web configurations file for new prices

GitOrigin-RevId: 0cd7abc565e971dd68f0860f00ea2ed8c1e713f8
2024-04-09 08:04:10 +00:00
Davinder Singh
998d55d159 Merge pull request #17559 from overleaf/ds-latam-v2
LATAM Geo Pricing - Introducing split test in LATAM countries Round 2

GitOrigin-RevId: 76ab880262f126f8db7f8e577154d78b5e9abf7a
2024-04-09 08:04:06 +00:00
M Fahru
9e318f24ff Merge pull request #17594 from overleaf/mf-website-redesign-register
[web] Website redesign for register page

GitOrigin-RevId: a8ae7327b1d662cb442e44992c5e2676a23cca3e
2024-04-08 08:04:33 +00:00
roo hutton
8644e239c6 Merge pull request #17596 from overleaf/rh-permissions-policy
[web] Add Permissions-Policy header

GitOrigin-RevId: 8934bbbda411102580d9ef8af135dcdc147627f9
2024-04-08 08:04:29 +00:00
roo hutton
67e9a40e87 Merge pull request #17680 from overleaf/rh-promisify-templates-man
[web] Promisify TemplatesManager and TemplatesManagerTests

GitOrigin-RevId: 69ff0a5f34ceb7b4c23452bb00963eda35621f3f
2024-04-08 08:04:25 +00:00
David
bedc54e632 Merge pull request #17734 from overleaf/dp-privacy-policy-link
Add privacy notice link to registration smallprint

GitOrigin-RevId: 893363b86753b7464f36620cde1952e2b6644a5f
2024-04-08 08:04:08 +00:00
David
b1928cecef Merge pull request #17530 from overleaf/dp-teardown-onboarding-flow-split-test
Teardown onboarding flow split test

GitOrigin-RevId: 48e95e4e736772074cb68d195fc950a9da3aebcf
2024-04-08 08:04:04 +00:00
M Fahru
eaea8a4979 [web] Implement new notification style for homepage registration form (#17695)
The new notification style is implemented as a separate function (pug mixin), so in order to update all of our forms, we need to explicitly change the function call in the other pug templates. This way, we can update all the other forms with the new notification style gradually.

GitOrigin-RevId: 78b755468e3e70f08500bdfb6280fa79853c3ed1
2024-04-05 08:04:18 +00:00
Domagoj Kriskovic
b3d2d73136 Add externalUserId in ThirdPartyIdentityExistsError info (#17709)
* Add externalUserId in ThirdPartyIdentityExistsError info

* format fix

GitOrigin-RevId: 85370987ff7a9caa54102bf9013ebc655a2d383b
2024-04-04 08:03:54 +00:00
Antoine Clausse
92a58c8f3b [web] Paywall CTA split-test (#17555)
* Fix `{splitTest.requiredCohortSize && (...)}` can display `0`

* Get `paywall-cta` assignment in ProjectController.js

* CTA change: "Get Dropbox Sync"

https://miro.com/app/board/uXjVMFLu5J8=/?openComment=3458764578763286026

* CTA change: "Get GitHub Sync"

https://miro.com/app/board/uXjVMFLu5J8=/?openComment=3458764578763286736

* CTA change: "Get Git integration"

https://miro.com/app/board/uXjVMFLu5J8=/?openComment=3458764578763286283

* CTA change: "Add more collaborators"

https://miro.com/app/board/uXjVMFLu5J8=/?openComment=3458764578763884855

* CTA change: "Get track changes"

https://miro.com/app/board/uXjVMFLu5J8=/?openComment=3458764578764030761

* Update wording and position: "Already subscribed? Try refreshing the page."

https://miro.com/app/board/uXjVMFLu5J8=/?openComment=3458764578764366969

* Casing update: "Upgrade to track changes"

https://miro.com/app/board/uXjVMFLu5J8=/?openComment=3458764578764209961

* CTA changes: "Get Mendeley integration" + "Get Zotero integration"

https://miro.com/app/board/uXjVMFLu5J8=/?openComment=3458764578764547424

https://miro.com/app/board/uXjVMFLu5J8=/?openComment=3458764578764547269

* CTA change: "Get full project history"

https://miro.com/app/board/uXjVMFLu5J8=/?openComment=3458764578764762005

* Casing update: "full project history"

https://miro.com/app/board/uXjVMFLu5J8=/?openComment=3458764578764762280

* CTA change: "Get more compile time" in timeout-upgrade-prompt-new.tsx

https://miro.com/app/board/uXjVMFLu5J8=/?openComment=3458764578764762563

* CTA change: "Get more compile time" in compile-timeout-warning.tsx

https://miro.com/app/board/uXjVMFLu5J8=/?openComment=3458764578764762726

* CTA change: "Get advanced reference search"

https://miro.com/app/board/uXjVMFLu5J8=/?openComment=3458764578764969087

* Update casing and wording: "advanced reference search"

https://miro.com/app/board/uXjVMFLu5J8=/?openComment=3458764578764969412

* CTA change: "Get Symbol Palette"

https://miro.com/app/board/uXjVMFLu5J8=/?openComment=3458764578765128906

* Update title: "Subscribe to find the symbols you need faster"

https://miro.com/app/board/uXjVMFLu5J8=/?openComment=3458764578765289664

* Revert use of `satisfies`: it doesn't work with our version of prettier (https://github.com/prettier/prettier/issues/13516)

* CTA change: "Get more compile time" in compile-timeout-changing-soon.tsx

⚠️ not in miro

* Rename `paywallCtaAssignment`, remove useless export and comment

Addressing Fahru's review

* Add alternative texts in `/registration/try-premium` page

* CTA change: "Get more compile time" in timeout-upgrade-prompt.jsx

https://miro.com/app/board/uXjVMFLu5J8=/?openComment=3458764578764762563

* CTA change: "Get GitHub Sync" in import-project-from-github-modal-content.tsx

Not in Miro, but related to: https://miro.com/app/board/uXjVMFLu5J8=/?openComment=3458764578763286736

* CTA change: "Get more compile time" in compile-time-warning.tsx

Not in Miro, but related to others

* Fix compile-time-warning style (spacings, overflows out of window)

* `npm run format:fix`

GitOrigin-RevId: 0d8d1808b5901c2761d35494c49713d26721bcfd
2024-04-03 08:04:16 +00:00
Brian Gough
cdf31ed91c Merge pull request #17675 from overleaf/bg-session-mitigation-redis-store-metrics
add CustomSessionStore class to handle session metrics and logging

GitOrigin-RevId: 49d4cda9fd94a8801adb33e894be239dc38ad544
2024-04-03 08:03:55 +00:00
M Fahru
d836631902 Merge pull request #17548 from overleaf/mf-promisify-render-set-password-form
[web] promisify renderSetPasswordForm

GitOrigin-RevId: 3a79a7fd23de2d7ff87a833204298aed6cc303a5
2024-03-29 09:04:26 +00:00
Mathias Jakobsen
192c497508 Merge pull request #17671 from overleaf/mj-project-projection
[web] Use projection when fetching project

GitOrigin-RevId: 4c7eb6582dba9ffa81f8d34c4e353faf1dc15c83
2024-03-29 09:04:13 +00:00
Mathias Jakobsen
48f8fe9dd6 [web] Add current history tab to admin panel (#17482)
* [web] Add current history tab to admin panel

GitOrigin-RevId: 95a479d01bdf2ca65cd9b18077823d895cc12501
2024-03-29 09:04:02 +00:00
Jessica Lawshe
3437ddb203 Merge pull request #17592 from overleaf/jel-sso-enrollment-page
[web] Return 403 on group SSO enrollment page if group does not have feature

GitOrigin-RevId: ce6bbf69da2ff332ffa541f8febf8fb298ea743a
2024-03-28 09:04:49 +00:00