Commit Graph

69 Commits

Author SHA1 Message Date
roo hutton
50f5a4e909 Merge pull request #23161 from overleaf/rh-pause-no-plan-change
Prevent downgrade to personal plan during subscription pause

GitOrigin-RevId: e3ba2e8e4d9b909fa2ee9c3c7e15db2ed257e43b
2025-01-31 09:04:58 +00:00
roo hutton
ad096f82bf Merge pull request #21905 from overleaf/rh-pause-sub
Add support for pausing subscription

GitOrigin-RevId: f939ea4e7f3c2b1fa16dcb8aff1b2460d091d4e2
2025-01-23 09:06:04 +00:00
Alf Eaton
604471bfe9 Improve types for window.metaAttributesCache (#22983)
GitOrigin-RevId: cc962bf7eeaac525267ba04080889b0d58051914
2025-01-23 09:05:14 +00:00
M Fahru
da6f332269 Merge pull request #22821 from overleaf/kh-cop-on-upgrade-modal
[web] limit COP group plans to 20 seats in upgrade modal

GitOrigin-RevId: b1d2713b978d0269892d8f547eeccc5ab702ea77
2025-01-16 09:06:37 +00:00
Alf Eaton
2fbb4615f9 Convert utility functions to TypeScript (#22658)
* Convert event-tracking to TypeScript

* Convert local-storage to TypeScript

* Convert mapSeries to TypeScript

* Convert SessionStorage to TypeScript

* Convert account-upgrade to TypeScript

* Convert isValidTeXFile to TypeScript

* Convert date functions to TypeScript

* Convert EventEmitter to TypeScript

* Convert isNetworkError to TypeScript

* Convert webpack-public-path to TypeScript

* Convert displayNameForUser to TypeScript

GitOrigin-RevId: 79c5a2d1101fcd520f3116f0f4af29d974189d94
2025-01-16 09:05:36 +00:00
Kristina
7994390967 [web] tear down group-pricing-2025 split test on non-plans pages (#22785)
* [web] rm split test from the change to group modal
* [web] rm split test from cancel flow
* [web] rm split test from checkout flow
* [web] rm unused translations

GitOrigin-RevId: 0188f2631ed18e79fdf55dabedac7cdea4f213d3
2025-01-16 09:05:22 +00:00
M Fahru
2ef5db2938 Merge pull request #22340 from overleaf/mf-clean-up-currency-format-test
[web] Clean up localized currency format test (`local-ccy-format-v2`)

GitOrigin-RevId: 30d671479522b87ee9205994508b745d2b0ae4c3
2025-01-14 09:05:49 +00:00
MoxAmber
18aa1b4e3b [Group Pricing] Add price change warning to cancellation flow (#22640)
* Add price change warning to cancellation flow
* Fixes lint error from translated string
* update pricing effective date

---------

Co-authored-by: Kristina Hjertberg <kristina.hjertberg@overleaf.com>
GitOrigin-RevId: d1b6982ff437d931144feffddcbddd96f5a3405b
2025-01-07 09:04:36 +00:00
Eric Mc Sween
a21db20631 Merge pull request #22164 from overleaf/em-subscription-case
Fix case in subscription related pages

GitOrigin-RevId: df5c1da01a2cc391d081b4dccf882dfe45276766
2024-11-28 09:05:50 +00:00
Miguel Serrano
a5f38a8663 Merge pull request #21683 from overleaf/msm-sso-admin-checkbox
[web] Change Group SSO radio in admin panel to checkbox

GitOrigin-RevId: c4a07400c6f399724be0368108be24ec6df67efa
2024-11-21 09:03:52 +00:00
Miguel Serrano
3e0428d450 Merge pull request #21884 from overleaf/msm-remove-group-sso-enabled-flag
[web] Cleanup `GROUP_SSO_ENABLED` env variable

GitOrigin-RevId: b41ce989348c70c3b4ca59ebf4986edf059534aa
2024-11-21 09:03:43 +00:00
Jimmy Domagala-Tang
9818912cb7 Merge pull request #20968 from overleaf/jdt-subscription-page-addons
feat: add all add-ons to price calculation in subs view model
GitOrigin-RevId: d03374192d735278c6459fc6341a72d0b0c7c3aa
2024-11-05 09:05:49 +00:00
roo hutton
551de499d5 Merge pull request #20802 from overleaf/rh-change-personal-plan
[web] Remove personal plans from 'change plans' table

GitOrigin-RevId: 284573cf3d5d38b1964d10fe6451b1468c90ff84
2024-10-14 11:02:24 +00:00
Antoine Clausse
9997c4874f [web] Migrate /user/subscription to BS5 (#20513)
* [web] Initialize BS5 in subscription page

* [web] Update subscription-dashboard.tsx for BS5

* [web] Update row-link.tsx for BS5

* [web] Update modals

* [web] Add `btn` to `btn-inline-link` classes

* [web] Update circle change-to-group circle price element

* [web] Replace `list-item-with-margin-bottom` with `mb-3`

* [web] Update form elements to BS5

* [web] Use `useContactUsModal`

* [web] Adjust tables margin/padding, and more

* [web] Update change-to-group-modal.tsx

* [web] Add gap to subscription buttons

* [web] Remove subscription page colspan for md and above

* [web] Use Notification component

* [web] Update "leave group" buttons

* [web] Fix tests: add `ol-user` meta tag

* [web] Nest .hover-highlight in #subscription-dashboard-root

* [web] Update to OLRow/OLCol

* [web] Update to OLButtons

* [web] Update to OLFormGroup

* [web] Naming: use BSversion prefix

* [web] Set CancelSubscriptionButton as ghost directly in component

* [web] Set "Plan" font size

* [web] Simplify cancel-subscription buttons

* [web] Remove `--neutral-10` ModalFooter background

* [web] Simplify circle styles

* [web] Center discount badge

* [web] Update fieldset label

* [web] Add `<ul>` around RowLink

* [web] Define SCSS for row-link component

* [web] Remove some use of utility classes

* [web] Revert and update `fieldset` changes (fixes tests)

* [web] Fixup some more OLButtons

* [web] Fixup use of OLRow/OLCol

* [web] Reduce spacing below "legend-as-label"

* [web] Use h5 instead of small in OLModalTitle

* [web] Revert OLCol removal on lg screens

I had removed them by mistake because I wasn't using the proper breakpoints

* [web] Add backdrop to nested modal ContactUsModal

* [web] Don't prefill project URL in ContactUsModal

* [web] Fix lint

* [web] Share `className` prop in BS5 and BS3 modals

* [web] Set sub-title font sans serif (BS3)

* [web] Update remaining Alerts to OLNotification

GitOrigin-RevId: 7fd975ae3e992cebfaf71d4e182f8e13ec886d09
2024-10-01 08:05:14 +00:00
Thomas
a16db120c0 Implement free trial limits (#19507)
* Add additional validations for subscription trials

GitOrigin-RevId: 1cb821c62e02d3eaa5b2bcacaee63b6bc7a63311
2024-08-08 08:05:05 +00:00
Alf Eaton
901d79dd55 Merge pull request #19757 from overleaf/ae-eslint-upgrade
Upgrade `@typescript-eslint` dependencies

GitOrigin-RevId: b953e795d705b817ec3669b04cd6a289be12b20d
2024-08-08 08:04:09 +00:00
Jakob Ackermann
aa480a2663 Merge pull request #18898 from overleaf/jpa-no-window
[web] migrate from window attributes to getMeta

GitOrigin-RevId: 3dcf1ab6b01155e5e4abeb3e78d0fa9053e055bc
2024-06-19 08:04:21 +00:00
Jessica Lawshe
cbe5cefb9a Merge pull request #18161 from overleaf/jel-subscription-dash-admin
[web] Subscription dash message when viewing as admin

GitOrigin-RevId: 699a523d7ac8d1a71e9ba14c7b8a66b39142958a
2024-05-31 08:04:23 +00:00
Jessica Lawshe
c6b88085d5 Merge pull request #18188 from overleaf/jel-react-group-invite
[web] Migrate team invite to React

GitOrigin-RevId: 32e968c3b512020aef9a396808c73a7b4859e6d1
2024-05-09 08:05:03 +00:00
Alf Eaton
9729befe59 Merge pull request #18170 from overleaf/ae-token-access-page
Convert token access page to React

GitOrigin-RevId: d7434f0de395c47a95d00767727fbe9d43f9abca
2024-05-03 08:05:01 +00:00
Antoine Clausse
6a6f155029 [web] Use React hooks to get split-test variants instead of getSplitTestVariant (getMeta) (#18133)
* Fix split-tests loading in React component: use `useSplitTestContext` instead of `getSplitTestVariant`

* Replace use of `isSplitTestEnabled` by `useSplitTestContext`

* Add SplitTestProvider to roots, and fix tests

* Create `useFeatureFlag` hook

* Use `useFeatureFlag` where applicable

GitOrigin-RevId: 9ff7bb3975d50bc4d07d74d93c482d56dc96f615
2024-05-01 08:04:55 +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 `&ndash;` 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
Jessica Lawshe
d5639794c2 Merge pull request #17166 from overleaf/ab-fix-group-settings-label
[web] Cleanup managed users env var and fix group settings label

GitOrigin-RevId: 817ed86a6c94c03adb41e8c10115d6404180142e
2024-02-20 09:05:54 +00:00
Alf Eaton
0cde5be165 Merge pull request #14709 from overleaf/ae-context-typescript
Convert React context providers to TypeScript [don't squash!]

GitOrigin-RevId: d92a91798286978410956ab791d73c17c5086d86
2024-01-29 09:03:04 +00:00
Mathias Jakobsen
7c8014d791 Merge pull request #15798 from overleaf/mj-features-page-teardown
[web] Tear down features-page split test

GitOrigin-RevId: 346064bea8775033d226f4405843717b380085fd
2023-11-21 09:04:03 +00:00
ilkin-overleaf
7db5d761ea Merge pull request #15557 from overleaf/ii-ide-page-prototype-review-panel-track-changes
Review panel track changes for React IDE page

GitOrigin-RevId: d061596581ff10bd897b286dcd5c280ce79a6384
2023-11-17 09:03:02 +00:00
Alexandre Bourdin
8abf8ba956 Merge pull request #15639 from overleaf/ab-fix-group-settings-visibility
[web] Various fixes for Group SSO

GitOrigin-RevId: 0a98d7eed14b2878a6be5e28e54ab1f7ceb9be5f
2023-11-07 12:34:45 +00:00
Davinder Singh
8b5213397c Group SSO - Display group SSO switch independently of managed users (#15423)
GitOrigin-RevId: 249a9b176404418da712eee9e29de931d9498887
2023-11-07 09:04:31 +00:00
Thomas
843b4f3940 Move checkout to subscriptions module (#15022)
* Move checkout to subscriptions module

GitOrigin-RevId: 0ad6587ddd7042aed7f2e18d9d0668e02942eb1e
2023-10-03 08:04:31 +00:00
Thomas Mees
00f329cb67 Move check to display PremiumFeaturesLink in to SubscriptionDashboard
GitOrigin-RevId: 931dcd61e019d889e60a6c7ea5f1facd15dcf905
2023-09-06 08:06:00 +00:00
Thomas Mees
8d04297f21 Fix PremiumFeaturesLink tests
GitOrigin-RevId: 32f5b8eecb94074f39622e21833aba0e6ce7feb0
2023-09-06 08:05:56 +00:00
Thomas Mees
1cde138160 Move premium features link outside the subscription block
GitOrigin-RevId: b88d765d859f1bdf1eb1d469131c8f239f327562
2023-09-06 08:05:47 +00:00
Thomas
6a9c9652f9 Merge pull request #14007 from overleaf/tm-subscription-active-until-trial-ends
Show cancelled subscription will remain active until end of trial

GitOrigin-RevId: 277f477dc95869ff61cbb48cb2033ec55db3cf52
2023-08-09 08:04:28 +00:00
Davinder Singh
88d0254dde Merge pull request #13390 from overleaf/ab-managers-page-styling
[web] Full-row links styling for group subscription links in dash

GitOrigin-RevId: f3b2dd67e9c14cf8fde1df41d74d380c06cc3d4c
2023-07-17 10:31:18 +00:00
Alf Eaton
510e686b7b Upgrade ESLint plugins (#13153)
GitOrigin-RevId: 9cd0b4429a9c2b3df9c18957aef21ef021e5fdfd
2023-05-25 08:05:34 +00:00
Alf Eaton
e0d327a3e8 Skip/improve flaky pdf tests (#13150)
GitOrigin-RevId: a98b145e86f325d1df79bdbcd1825ee5a3ca6def
2023-05-25 08:04:49 +00:00
Alf Eaton
f375362894 Always use mockable location methods (#11929)
* Always use mockable location methods
* Add eslint rules for window.location calls/assignment
* Add useLocation hook
* Update tests

GitOrigin-RevId: eafb846db89f884a7a9a8570cce7745be605152c
2023-03-17 09:05:21 +00:00
Jessica Lawshe
b10b7b1f91 Merge pull request #12042 from overleaf/jel-change-plan
[web] Change plan UI now in a modal and update the style

GitOrigin-RevId: 1b501b4a972ca676cff32f531862c15c0c8f9e61
2023-03-09 09:05:05 +00:00
ilkin-overleaf
8616c53839 Merge pull request #12031 from overleaf/ii-payment-page-migration-three-d-secure-currency-change
[web] 3DS currency change fix

GitOrigin-RevId: e88c773c6576e55803df3b2ec6a6acb1df80e8f2
2023-03-02 09:04:13 +00:00
ilkin-overleaf
48587a7a62 Merge pull request #12007 from overleaf/ii-react-subscription-dash-thank-you
[web] Successful subscription react migration

GitOrigin-RevId: 1d7d849415f4b7a7f60ddf8a4e18570ff5142196
2023-03-02 09:04:04 +00:00
ilkin-overleaf
076bc9b39c Merge pull request #11872 from overleaf/ii-payment-page-tests
[web] Payment page tests

GitOrigin-RevId: 0ab9a75c13f1833cbdf7aa71ffe3ab66174ca773
2023-03-01 09:03:22 +00:00
ilkin-overleaf
612728d300 Merge pull request #11963 from overleaf/ii-react-subscription-dash-reactivate-subscription
[web] Subscription dash reactivate button react migration

GitOrigin-RevId: dde8dd1abb8979bdf90d71ea07e1336e9af491b3
2023-03-01 09:03:17 +00:00
ilkin-overleaf
9f95c7c2ab Merge pull request #11919 from overleaf/ii-react-subscription-dash-user-email-not-matching-recurly-email
[web] Subscription dash user email not matching recurly email section - react migration

GitOrigin-RevId: 8d89dbc804694afffea2a92cebdeb5d4e9389810
2023-03-01 09:02:47 +00:00
Jessica Lawshe
7469f01acd Merge pull request #11981 from overleaf/jel-downgrade-when-cancel
[web] Migrate downgrade plan option when cancelling in React subscription dash

GitOrigin-RevId: 11a4b39deb58493f3f56e65e8760d71527a8e8fc
2023-02-28 09:03:54 +00:00
Jessica Lawshe
68e61d7bb7 Merge pull request #11973 from overleaf/ii-react-canceled-subscription
[web] Subscription page canceled subscription react migration

GitOrigin-RevId: dd127d753e72c194cd6bbb90b1ca1557742896d9
2023-02-24 09:05:28 +00:00
Jessica Lawshe
0037e45740 Merge pull request #11970 from overleaf/ab-sub-dash-already-have-warning
[web] Display a warning on subscription dash when coming from plans page

GitOrigin-RevId: 6c6294fbf634a5dcd1a09b94538add6586ebd15b
2023-02-24 09:05:20 +00:00
Jessica Lawshe
ebc04e4a9d Merge pull request #11888 from overleaf/jel-subscription-dash-cancel-plan
[web] Migrate cancel subscription to React

GitOrigin-RevId: 8482fd61894c8011b4c980263ae1d41f396233c6
2023-02-24 09:05:12 +00:00
Alexandre Bourdin
d2fb800174 Merge pull request #11885 from overleaf/ab-personal-sub-custom-react
[web] Display a message for custom personal subscriptions in React dash

GitOrigin-RevId: c70986ffacfdfdeccd3675385e2e5dba1a2ad61f
2023-02-23 09:05:13 +00:00
Alexandre Bourdin
8b00a496e7 Merge pull request #11881 from overleaf/ab-custom-subscription-react-dash
[web] Add a contact support message for custom subsbcriptions on React dash

GitOrigin-RevId: e2a2bb27b4f1e70cbbe62f4c837fe63d81a820c2
2023-02-23 09:05:05 +00:00
Alexandre Bourdin
f86eeac522 Merge pull request #11862 from overleaf/ab-group-subscription-memberships-dash-react
[web] Migrate group subscription memberships to React dash

GitOrigin-RevId: d5ff3ae4e5d8c422530502af22edda6c24c9a593
2023-02-23 09:04:49 +00:00