Commit graph

303 commits

Author SHA1 Message Date
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
Jimmy Domagala-Tang
0ca7a385d5 Merge pull request #18131 from overleaf/jdt-promo-hooks
feat: split logic for promos out to hooks
GitOrigin-RevId: 8f713cdf309f84dddb20e8da76009512bd990a8f
2024-05-01 08:05:04 +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
e32b4f0db1 [web] Handle error cause by currencyDisplay: 'narrowSymbol' in old browsers (#18060)
* Handle error cause by `currencyDisplay: 'narrowSymbol'` in old browsers

RangeError
Value narrowSymbol out of range for Number.prototype.toLocaleString options property currencyDisplay

* Make `formatCurrencyLocalized` bulletproof

GitOrigin-RevId: 26e8abc6f9fb7c06c2d14b9d86af2d84fb9f32e3
2024-04-26 08:04:22 +00:00
David
2e634e665d Merge pull request #18064 from overleaf/dp-interstitial
Create Interstitial component

GitOrigin-RevId: 00c9378a04b0ce17e0af409c3a85f12c1db49b42
2024-04-25 08:04:26 +00:00
ilkin-overleaf
1e7053cb8e Merge pull request #17921 from overleaf/ii-bs5-alert-continue
[web] Replace all alerts with notifications in settings page

GitOrigin-RevId: a05755c39d2e54b3f57ffa589885e3e96aee00dc
2024-04-24 08:04:35 +00:00
ilkin-overleaf
cccd0f06d7 Merge pull request #17908 from overleaf/ii-bs5-badge
[web] Create Bootstrap 5 badges

GitOrigin-RevId: 72355c7cf7dca2a5d16bc890d7cfa4a432dd15ba
2024-04-22 08:04:07 +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
Rebeka Dekany
fa3f51fb2e Merge pull request #17806 from overleaf/rd-bootstrap-button2
[web] - Updating the Account Settings page with the Button and Icon Button wrappers

GitOrigin-RevId: 135c4ddaa64d009d3ab8cdfef9cff899fd77669c
2024-04-17 08:05:10 +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
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
ilkin-overleaf
a9436039b6 Merge pull request #17702 from overleaf/ii-bs5-to-bs3-classname-helper
[web] Bootstrap class name helper

GitOrigin-RevId: 9c2042aa2ea0e4d3828b32c321336e1c3a4a0ef8
2024-04-04 08:04:11 +00:00
ilkin-overleaf
205cfbe816 Merge pull request #17597 from overleaf/ii-enable-checkout-component-test
[web] Enable Cypress test for creating new subscription

GitOrigin-RevId: c17efbeb6a29d8e757729cddffef46faf054da70
2024-03-28 09:04:15 +00:00
Alf Eaton
6cc2db3cdd Merge pull request #17525 from overleaf/ae-upgrade-prettier
Upgrade Prettier to v3

GitOrigin-RevId: 6f1338f196408f3edb4892d5220ad3665ff1a5bc
2024-03-26 09:04:05 +00:00
Alf Eaton
749660e168 Refactor review panel context (#17383)
GitOrigin-RevId: 23e7ff8632172ebd0bc544a2297d1d4179010832
2024-03-07 16:30:25 +00:00
Jakob Ackermann
cdca83d94e Merge pull request #17008 from overleaf/jpa-jdt-wf-consent-init
[web] new copy for Writefull promotion

GitOrigin-RevId: 4e67414a5f9ef96649d36e15a2aa8661ee4fdd59
2024-02-19 09:03:38 +00:00
Alf Eaton
12326b420d Use sliced MaterialSymbolsRounded font (#16994)
GitOrigin-RevId: 51158acccc9967794b2192791961561d43274979
2024-02-16 09:04:36 +00:00
Jimmy Domagala-Tang
06ab04f023 Merge pull request #16780 from overleaf/jdt-wf-load-notif
Writefull loading and retry notifications

GitOrigin-RevId: ad4701c929970da37abdd96e070b67eac57fb54b
2024-02-09 09:04:50 +00:00
ilkin-overleaf
2f803292b4 Merge pull request #16857 from overleaf/ii-share-modal-click
[web] Clickable share modal buttons

GitOrigin-RevId: db6bef9b63e98007741d88b291a282d6ea4a68c5
2024-02-06 09:03:40 +00:00
Alf Eaton
a3ba2284d6 Use prefixed strings for tracked counts of compile errors (#16870)
GitOrigin-RevId: 4023822a73c204fe1365cdc0fe311b4289a8cbcf
2024-02-06 09:03:25 +00:00
Tim Down
3a88a60e23 Merge pull request #16700 from overleaf/td-scroll-comment-input-into-view
Scroll comment textarea into view after autofocus

GitOrigin-RevId: c8542f40d25772a14e7511702c0e47b7001be275
2024-02-05 09:04:21 +00:00
Alf Eaton
c443322a41 Memoize FileTree and outline toggle button components (#16776)
GitOrigin-RevId: 299ed9d568650ce37edba87643112d1cd6d12fd4
2024-02-02 09:03:08 +00:00
M Fahru
f0247a3311 Merge pull request #15302 from overleaf/mf-fix-unlink-github-sync-behaviour
[web] Unlink github from collaborators when project owner unsubcribes and github feature was lost

GitOrigin-RevId: 81b81cfb75e3a3684e185ef13d8c0aca19d5699d
2024-01-30 09:04:39 +00:00
Jessica Lawshe
f79f534d9f Merge pull request #16769 from overleaf/jel-scroll-to-notification
[web] Add scroll to notification component

GitOrigin-RevId: 096f9f42344729464e7fb38e4f6542cb2e891918
2024-01-30 09:04:19 +00:00
Alf Eaton
12d38a3be9 Remove setSavedAt from detach compile context (#16742)
GitOrigin-RevId: 2a85b4a0cd6b73c0240b64beddd8cd6ab5a48b2f
2024-01-29 09:03:31 +00:00
Alf Eaton
11859f1c38 Remove savedAt from compiler (#16642)
GitOrigin-RevId: 526d26d731da99b40c253a4dc0a774a896641c8e
2024-01-29 09:03:13 +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
ilkin-overleaf
55fcf8a0ee Merge pull request #16706 from overleaf/ii-review-panel-refresh-entry-positions-on-resize
[web] Reposition review panel entries correctly on resize

GitOrigin-RevId: 04f94c20393b1da318560d39175c2b860738998b
2024-01-26 09:03:39 +00:00
Alf Eaton
3ea151d129 Add event tracking for counts of matched compile log entries (#16615)
GitOrigin-RevId: 65f0efde77db5130cf8a709bb899d3231c3bdec4
2024-01-24 09:04:05 +00:00
Mathias Jakobsen
8d7fbf5a47 Merge pull request #16522 from overleaf/mj-table-generator-cypress-tests
[web] Add cypress tests for table generator

GitOrigin-RevId: c77454763cfc83e4869e75ba247369e6255a0553
2024-01-19 09:04:33 +00:00
Alf Eaton
4a7a24b44d Update the CodeMirror language when the current file is renamed (#16342)
GitOrigin-RevId: 8b51df0d1acfeeb8b0323cebf6de78572c8cb95c
2024-01-15 09:04:27 +00:00
Alf Eaton
fc8892e4fb Expose ScopeValueStore via window.overleaf.unstable.store (#16404)
GitOrigin-RevId: 4b251639296405c0a9487f063e8b049687860004
2024-01-09 09:03:46 +00:00
Jimmy Domagala-Tang
5f38a930a5 Merge pull request #16319 from overleaf/jdt-grammarly-ad-redesign
Grammarly Ad redesign

GitOrigin-RevId: 28d0ae871b6303b31aadb59abc80b625d529cc9b
2024-01-08 09:05:40 +00:00
Mathias Jakobsen
45274d9dff Merge pull request #16380 from overleaf/mj-select-keyboard
[web] Allow keyboard interactions with custom select component

GitOrigin-RevId: 81adea8e456bd6ce2483dfa17a352c24c36e5768
2024-01-08 09:04:30 +00:00
Jimmy Domagala-Tang
d5b114aa7e Merge pull request #16339 from overleaf/jdt-ghost-offer-btn
adding new ad offering variants to ghost btn and notification

GitOrigin-RevId: 108e06cf53826ee6781fb57cd9f67fc7f3ef4655
2024-01-04 09:03:55 +00:00
Jimmy Domagala-Tang
21dd23d0e4 Merge pull request #16318 from overleaf/jdt-fix-multiple-popups
Show only one editor notification at a time

GitOrigin-RevId: 88a0309da121e9545136cd718ed24710a9d25363
2024-01-04 09:03:40 +00:00
Alf Eaton
12646d0541 Use scopeStore in useScopeValueSetterOnly (#16341)
GitOrigin-RevId: ed3c5937bafc984440ee262c8cb0c1ba63f0be7d
2024-01-04 09:03:08 +00:00
Alf Eaton
1ce16dd09f [ide-react] Handle failed socket.io loading (#16265)
GitOrigin-RevId: 3a460e1f53387e7012f994f6e8ea9ce764eb0fd2
2023-12-18 09:04:31 +00:00
Alf Eaton
c2b553e915 [ide-react] Improve file tree and outline components in the editor sidebar (#16225)
* Upgrade react-resizable-panels
* Add FileTreeOpenProvider
* Add OutlineProvider and OutlineContainer
* Convert Outline tests to Cypress

GitOrigin-RevId: afd9ae8190edf37642e36a4ffb331f1182c8982d
2023-12-18 09:03:53 +00:00
Alf Eaton
8dbf2b64f8 [ide-react] Notify about unsaved changes (#16163)
* Notify about unsaved changes
* Move system message components and types to shared folder
* Add system messages component

GitOrigin-RevId: ab81a24888847bd9a8a390fd1af6b58f471f7a4b
2023-12-15 09:03:27 +00:00
Eric Mc Sween
a9d7f99446 Merge pull request #16156 from overleaf/jdt-writefull-notif
Writefull editor notification

GitOrigin-RevId: 1a5077164682dbec67738af0684d364571802816
2023-12-14 09:03:27 +00:00
Eric Mc Sween
ee0dbcf331 Merge pull request #16167 from overleaf/em-writefull-promo
Writefull integration 10% promo

GitOrigin-RevId: 27ef5e51d7d9c56d85ccc44692444bff46fbeeec
2023-12-13 09:02:48 +00:00
ilkin-overleaf
b715cb3b16 Merge pull request #16152 from overleaf/ii-ide-page-prototype-review-panel-mini
[web] React ide page mini review panel

GitOrigin-RevId: 4c4ee8095446a2f72371024b93a07dbd1dbd2a63
2023-12-11 09:03:21 +00:00
Jimmy Domagala-Tang
24261ac617 Merge pull request #16007 from overleaf/jdt-writeful-user-settings
Add Writeful to user settings

GitOrigin-RevId: 15b3dd47b96cdc8bf8002afe3ddc570b03a6065f
2023-12-08 09:04:45 +00:00
Eric Mc Sween
94b9d1fa48 Merge pull request #16073 from overleaf/em-postpone-tutorials
Support postponing tutorials

GitOrigin-RevId: fe662086c87cc1909d6d9eeac07f85e306d64418
2023-12-06 09:04:58 +00:00
Alf Eaton
3f98752986 Avoid using isEqual for outline comparison (#16093)
GitOrigin-RevId: 8901f77eb25295882f6563fa2f1835d18d332c59
2023-12-06 09:04:27 +00:00
Miguel Serrano
b61f34c740 Merge pull request #15887 from overleaf/msm-new-notification-inr-latam
[web] New notification style: inr/latam/writefull/groups

GitOrigin-RevId: 85ffa6d5c7ee775bf16fbb6e1fb7ce1860077b93
2023-12-05 09:03:55 +00:00
Jimmy Domagala-Tang
31fcd01e3a Merge pull request #16039 from overleaf/jdt-notification-class-prop
Adding classname to notifications and overlay css utility

GitOrigin-RevId: 068672352efe2c93ca830d1dae0209cd02688226
2023-12-04 09:02:58 +00:00
Alf Eaton
19a17060ab Remove history-related Angular code (#15932)
GitOrigin-RevId: e4fafddd67909a0e709439ddbe560c66e2629bdb
2023-11-29 09:04:17 +00:00