Commit graph

21 commits

Author SHA1 Message Date
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
David
f6b7b84e88 Merge pull request #16409 from overleaf/dp-fix-group-pricing-after-back-button-pressed
Update group plan pricing modal after the page has fully loaded

GitOrigin-RevId: 03e2ea642b38d6e2e208683b0cb68a817a5873c8
2024-01-09 09:03:33 +00:00
Davinder Singh
310c938f80 adding correct events on plans page (#15951)
GitOrigin-RevId: d86b9cff07b9179a80b19ecdca1542ff8f9c9cd1
2023-11-27 09:04:32 +00:00
Jakob Ackermann
d212be408f Merge pull request #13337 from overleaf/jpa-translate-plans-page
[web] translate all the things on the plans page (to German)

GitOrigin-RevId: cbd812a4eca41573986c2d9e4f5e37b3d5a49e4f
2023-07-19 08:03:57 +00:00
Thomas
8efac32c8a Add LATAM currencies/prices to plan and group settings/scripts (#13661)
* Add LATAM currencies to plan-prices generator script

* Add LATAM prices to web configs

* Add LATAM currencies to group plan price formatting

* Use toLocaleString to format currencies for LATAM regions

GitOrigin-RevId: ce672043bef16298c87efa007eac23b004be8205
2023-07-17 11:01:00 +00:00
Jessica Lawshe
5ae4e68380 Merge pull request #12185 from overleaf/jpa-fix-segmentation
[web] old plans page: fix event segmentation for plans-page-click

GitOrigin-RevId: 9be23a9cf9d92b88d6fbe8c6e2b941cf3ac63344
2023-03-17 09:06:08 +00:00
M Fahru
3b4968e263 Change number of users in group plan to have a dynamic value in the new plans page (#8592)
GitOrigin-RevId: 008c0a1120e5b99945f18f0b4eee60bfcb08a331
2022-07-13 08:05:33 +00:00
M Fahru
e97c56b105 Fix group plan localized pricing and force 2 decimal number for non-integer currency value (#8576)
GitOrigin-RevId: d6dedf7af04c79cef6b9cd39f5496610ffc52938
2022-07-13 08:05:20 +00:00
M Fahru
9e91685445 Fix group modal search persistence when closing the modal (#8525)
GitOrigin-RevId: 3b3dcdaa09439715e66cfbf522f397c6ae2c930c
2022-06-23 08:02:53 +00:00
M Fahru
73cf4116b6 Interstitial Payment Page UI + Route (#8305)
GitOrigin-RevId: a31f7094db819e0dad4ff3f09c17544d40260dd4
2022-06-14 08:02:16 +00:00
M Fahru
487ff4f505 Improvement on form data sync between group plan modal and new plan page (#8003)
GitOrigin-RevId: 66a0a423fe48a8a8a7ddd292ba218cd5038dfdb1
2022-05-20 08:03:44 +00:00
Jakob Ackermann
f0bd6dda23 Merge pull request #7986 from overleaf/jpa-eslint-8
[misc] upgrade eslint packages to the latest version everywhere

GitOrigin-RevId: f1480d4a171acef82fb26c4aa54be3a6088b0ab3
2022-05-17 08:05:59 +00:00
M Fahru
8157616f85 [web] New Plans Page for A/B Test (#7330)
GitOrigin-RevId: 4e4629583c6e86bd2bc6165d123224734c133df7
2022-05-13 08:03:30 +00:00
M Fahru
f23accc572 Merge pull request #7292 from overleaf/tm-plans-page-layout-teardown
Tear down plans page split test variant with new layout

GitOrigin-RevId: ab09066f05d17ca17a19ab8895fac141e1e89bff
2022-04-08 08:04:32 +00:00
Thomas
635a478f36 Add plans page split test variant with new layout (#6450)
* Add plans page split test variant with new layout

* Set itm_content to toggle if group modal clicked through via variant view toggle button

* Change split test name to be more specific

GitOrigin-RevId: 0fa48b1b74eea84f15e630e3a62b36be5549da9e
2022-02-02 09:03:11 +00:00
Thomas
1777c075ea Merge pull request #6423 from overleaf/tm-plans-new-events
Add new analytics events to plans page/subscription flow

GitOrigin-RevId: 7b70ee30749ebc671cf2445f3cbdae91a7278b01
2022-02-02 09:03:07 +00:00
Tim Alby
bbac46156b convert price_in_unit to price_in_cents
GitOrigin-RevId: bae030e9c90f8286d6e6550744849984fe81f63d
2022-01-21 09:03:29 +00:00
Tim Alby
3e70546e18 rename price attributes to price_in_cents or price_in_unit
GitOrigin-RevId: 8045472c96862078583fcb522099ad78926281dc
2022-01-21 09:03:23 +00:00
Alf Eaton
50df230846 [web] Upgrade Prettier to match version in monorepo root (#6231)
GitOrigin-RevId: 02f97af1b9704782eee77a0b7dfc477ada23e34d
2022-01-11 09:03:23 +00:00
Hugh O'Brien
7d932f0b92 Merge pull request #5722 from overleaf/hb-improve-group-buy-ux
Update the UX for the group subscription modal

GitOrigin-RevId: 6700a5c4907e0c966ee3b2954b6417ccf9edf37e
2021-11-17 09:04:06 +00:00
Jakob Ackermann
59d83c4b88 Merge pull request #5117 from overleaf/jpa-plans-de-ng
[web] de-ng plans page

GitOrigin-RevId: b902b10b45ab3fd46e71545c94f65e8f079c4564
2021-09-23 08:03:23 +00:00