Commit Graph

574 Commits

Author SHA1 Message Date
Tim Down
763bede00a Merge pull request #29654 from overleaf/ac-ciam-confirm-email-storybook
[web] CIAM design for Email confirmation form

GitOrigin-RevId: 3e66c45fe20073eb0600b8243761dbe82d7dc6b2
2025-11-26 09:05:47 +00:00
Rebeka Dekany
b4bfff1b67 Improve Server Pro tests to use semantic selectors (#29790)
* Replace placeholders with labels

* Add 'Close dialog' label to modal close button to distinguish from footer Close button

* Add and translate heading on the not found page

* Update textarea to have id matching label's for attribute
Simplify test for template description textarea

* Label PDF zoom level dropdown button

* Improve test selectors to use semantic roles and accessible names

GitOrigin-RevId: d215ddca30ddf844cfffbcf0e528a601b134d772
2025-11-25 09:05:48 +00:00
Borja
d4992914c2 Add figure generator from text functionality (#29742)
GitOrigin-RevId: 94c65c567d59e3228dba63395bd46fe0c57fab02
2025-11-24 09:07:16 +00:00
Tim Down
00f6a1e0f9 CIAM registration form buttons, inputs and fixes (#29740)
* Many fixes to CIAM registration form, including Phosphor icons

* Unify layout between Pug and React, fixes for spacing and mobile screen sizes

* Pug lint fix

* Make CIAM footer links underlined

* Add CIAM error notification styling

* Merge duplicate style rules

* Remove outdated comment

* Fix ordering of en.json

* Move aria-label to buttons

* Move full stop into translation string

* Remove dummy password strength indicator

* CIAM spacing and label fixes

* Header logo fixes from review

* Add aria-hidden to error icon

GitOrigin-RevId: 87c8181566f0878256b8010f95f115ec25c7ceb9
2025-11-24 09:06:40 +00:00
David
af41215058 Merge pull request #29607 from overleaf/dp-redesign-opt-in
Add opt-in for editor redesign

GitOrigin-RevId: 29ec8f4045a6bf29ab26a5ce5bceff70fb3aba6e
2025-11-20 09:05:28 +00:00
Mathias Jakobsen
7b331b0222 [web] Recreate workbench with Overleaf styles (#29651)
GitOrigin-RevId: 52ca336f70b29edf6e39cf95aa164f3ae32c0a79
2025-11-19 09:05:14 +00:00
Borja
b1009d3b1f Writefull refactor bootstrapping (#29549)
GitOrigin-RevId: f8422d3c3d1d7e588f18352e08c7596b520225e5
2025-11-19 09:05:09 +00:00
Antoine Clausse
0e4682ef89 [web] Create DSFormControl Input components (#29647)
* Create DS version for Bootstrap Input form elements

* Move DS Button Storybook to DS component folder

* Use phosphor icons

* Add ds-focus-outline mixin

* Use math.div

GitOrigin-RevId: e50934212ec5949f0f7abc7880eb73933fce2a9b
2025-11-18 09:05:34 +00:00
Rebeka Dekany
b773ac2715 Add focus trap to Modal component (#28754)
* Add focus-trap-react npm package

* Trap the focus for the Modal

* In some cases, the focus will not return to the trigger element

* If there are no tabbable elements, the focus should fallback

* Add explanations for focusTrapOptions props and extend test

* Auto generate package-lock.json - Add focus-trap-react npm package

GitOrigin-RevId: 488a05d5e95dd369c69bedcfaf7c1fd5e456e302
2025-11-17 09:05:45 +00:00
Tim Down
c0c3bfe185 DS button CSS and component implementation plus move most --ciam variables to --ds
GitOrigin-RevId: 5dd6b490a6f597892b47a89aabce748cea3e3bc6
2025-11-14 09:05:34 +00:00
roo hutton
386fa19ffc Merge pull request #29557 from overleaf/rh-compile-timeout-event-fix
Send paywall-click events when navigation suppressed

GitOrigin-RevId: b36dcb590d4d30a47a30f95febb4cf479c38f377
2025-11-10 09:05:04 +00:00
Borja
7f96e9504e Revert "Writefull refactor bootstrapping (#29306)" (#29542)
This reverts commit 6de05eb695579dc08cb5ee6ddf30c243cc2ff86a.

GitOrigin-RevId: 1fe00bd95b2ce437f91b38667e4d787d49c36902
2025-11-06 09:07:14 +00:00
David
fd96baaf05 Merge pull request #29536 from overleaf/dp-fix-logo
Fix overleaf logo color on ds nav

GitOrigin-RevId: c48ed09339aa1af03bdbad29e76d8cdb74260f0c
2025-11-06 09:06:37 +00:00
roo hutton
2e11f2c7b7 Merge pull request #29394 from overleaf/rh-compile-timeout-modal
Add compile timeout modal for compile-timeout-target-plans test

GitOrigin-RevId: b352cb239742aa7ffbef7f3cd5c65ac719569ebf
2025-11-06 09:06:29 +00:00
David
faceb90593 Merge pull request #29290 from overleaf/dp-dashboard-dark-2
Dark mode for DS nav

GitOrigin-RevId: fb8ad9ec45e88c39810421d11ecc69ab874121ce
2025-11-06 09:06:24 +00:00
Borja
1a511b14a4 Writefull refactor bootstrapping (#29306)
GitOrigin-RevId: 6de05eb695579dc08cb5ee6ddf30c243cc2ff86a
2025-11-05 09:07:09 +00:00
Jakob Ackermann
3586b37491 [web] Remove clsi-cache-prompt/survey, split-tests and events (#29510)
* [web] Remove clsi-cache-prompt/survey and split-tests

* [web] Remove initial 50/50 clsi-cache split-test

* [web] Remove synctex-downloaded-from-cache event

* [web] Remove fallback-to-clsi-cache event

* [saas-e2e] fix tests with clsi-cache enabled

GitOrigin-RevId: b5cf2ab073dc866fe398b81fd5afe46422134c80
2025-11-05 09:06:59 +00:00
Antoine Clausse
2ebc411db4 [web] Create a first implementation of the CIAM version of the email confirmation page (#29432)
* Move `main#main-content.content.content-alt` into a React component (`ContentLayout`)

* Create the CIAM variant of `RegistrationConfirmEmailForm`

* `bin/run web npm run extract-translations`

* Use `CiamLayout` in the Storybook demo

* Add `SplitTestProvider` in tests

* Fix Storybook: Wrap `RegistrationConfirmEmailForm` Story in `onboarding-confirm-email`

* Refactor SCSS files:

- only imports in all.scss
- split .storybook-layout and .storybook-enabled
- extract ciam-spacing.scss

GitOrigin-RevId: f4a214a0978423a1621dd8f60bf459af7b8f877e
2025-11-05 09:06:30 +00:00
David
38edeca871 Merge pull request #29292 from overleaf/dp-dashboard-theme-toggle
Add theme toggle to project dashboard

GitOrigin-RevId: 4c76bcc36f77d7fd883798f8ccfcb5d1cf1a54b0
2025-10-30 09:05:56 +00:00
Jakob Ackermann
28c1c7db37 [clsi-cache] add circuit breaker to clsi-cache requests (#29339)
Stage timeouts:
- frontend waits 5s
- web/clsi waits 4s
- clsi-cache waits 3s
This should ensure that the frontend can receive a valid response after
any of the backend requests failed.

The circuit breaker will remain closed for TIMEOUT + jitter of 0-3 times
the TIMEOUT of the respective service. This should avoid the bulk of
traffic to fail and occasionally issue retries without hammering the
instances while down.

Also do not try the next backend when the abort signal has expired.

GitOrigin-RevId: d612125616a9e416beff2f4c6d7f30066b5b9d6d
2025-10-29 09:05:34 +00:00
Jakob Ackermann
f3f6a8a8e0 [web] add clsi-cache prompts (#29281)
* [web] add clsi-cache prompts

* [web] add new editor variant to segmentation

* [web] add tests for useNewEditorVariant

* [web] adjust start of using clsi-cache in split-test

GitOrigin-RevId: c9c5b1eff2ceefb65ef82516d9074cb971cb4c48
2025-10-24 08:05:42 +00:00
David
129ea72d36 Merge pull request #29152 from overleaf/dp-dashboard-dark-mode
Add data-theme attribute to project list page

GitOrigin-RevId: 3a623e3258d55e01f0911bcc45b78bcdba21745b
2025-10-22 08:05:34 +00:00
Borja
0409b27311 Writefull to BigQuery new events and clean up (#29191)
GitOrigin-RevId: dc01a585f451513dcb1eb37ce6e5fdf906eb7ef6
2025-10-21 08:06:43 +00:00
Borja
ce38ba6fc1 Refactor Writefull toolbar (#28911)
GitOrigin-RevId: 1d8a3addc9046dc67c0cca20d5cf4fba35d132d1
2025-10-15 08:07:42 +00:00
Antoine Clausse
584c23628c [web] Check adminPrivilegeAvailable to show "Project URL lookup" (#29020)
* Check `adminPrivilegeAvailable` to show "Project URL lookup"

This is the correct check as it's what used to decide if the AdminPanelRouter should be included:
ffa200d595/services/web/modules/admin-panel/index.mjs (L14-L15)

* Add "it displays expected admin menu items" to e2e tests

* Don't expect "Project URL lookup" in CE

* Revert "Don't expect "Project URL lookup" in CE"

This reverts commit 467cccbf6c0d538c386d459403c521e3f62cfee2.

* Make "Project URL Lookup" capitalization consistent

GitOrigin-RevId: ed5c219e9b5912a4c324cf9dce58061b58d911b0
2025-10-15 08:07:21 +00:00
David
584572bb40 Merge pull request #28760 from overleaf/dp-hackathon-knip
Add Knip and remove a bunch of unused code

GitOrigin-RevId: 42ab99fc65973c883d2361e0027e7181767e714e
2025-10-15 08:05:57 +00:00
Alf Eaton
5b2e541186 Memoize some editor React components (#28963)
GitOrigin-RevId: 6440df9ac3ef1bf1839dff07eb2f55b52b581d3e
2025-10-15 08:05:48 +00:00
Jimmy Domagala-Tang
0ecfc246a2 Rolling builds error logs notification (#28654)
* feat: allow for monthly tl builds experiment

* feat: add in-editor notification when rolling image has updated

* feat: add in-editor notification when rolling image has updated

* feat: allowing for different messages in experiment when user is optend in

* feat: add a banner notification in the error logs when the user is on the rolling build

* moving rolling check from context to util

* Update services/web/frontend/js/features/pdf-preview/components/rolling-build-selected-reminder.tsx

Co-authored-by: Alf Eaton <alf.eaton@overleaf.com>

---------

Co-authored-by: Alf Eaton <alf.eaton@overleaf.com>
GitOrigin-RevId: fb669db28a7194babb299413f20209e76dcbd351
2025-10-10 08:06:20 +00:00
Antoine Clausse
0abab86dc1 [web] Hide the "Project URL lookup" menu item for admins without view-project-setting (#28952)
the destination of that link (https://admin.stag-overleaf.com/admin/project) is blocked correctly already

GitOrigin-RevId: e94978d9fe77b3da3a5dab1dd2998beca6e26102
2025-10-10 08:06:02 +00:00
Alf Eaton
7e3b853fc1 Revert "Show tooltip immediately if a tooltip is already open (#28870)" (#28935)
This reverts commit 74950ea7e705acb8f42dea552b23ce93c66058c7.

GitOrigin-RevId: 346a947c420448becf294f0174937a5c256bf945
2025-10-09 08:08:14 +00:00
Alf Eaton
d3f05fda77 Show tooltip immediately if a tooltip is already open (#28870)
* Memoize delayProps
* Refactor Escape key handler
* Use useTooltipContext
* Remove delay: 0 from tooltips
* Only use isTooltipOpen if available
* Only show transition for initial tooltip

GitOrigin-RevId: 74950ea7e705acb8f42dea552b23ce93c66058c7
2025-10-09 08:05:49 +00:00
Alf Eaton
93a4498c93 Merge pull request #28733 from overleaf/ae-tooltip-delay
Honour `delay: 0` in tooltip config

GitOrigin-RevId: d69f3cb055b79c3335d4220f2d91a44e93bc47b3
2025-10-07 08:06:36 +00:00
Simon Gardner
14356f2675 Improve UX for entering multi-digit quantities in Buy More Licenses feature
GitOrigin-RevId: c51e2146dbb53144e6951a16f7162ba2d10c5c4e
2025-10-07 08:05:55 +00:00
Domagoj Kriskovic
c22e44438e 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
jmescuderowritefull
360c7c1d33 Clean extension checks and old feature flags in Writefull (#28713)
GitOrigin-RevId: c1949019f1f51add7fd036a1ad0e2946ccab5382
2025-10-01 08:06:07 +00:00
Borja
67f105edcf Change suggestion-click event listener to avoid duplications (#28756)
GitOrigin-RevId: 4feac33ee530f768397a9097e96400ff25d70e5c
2025-10-01 08:06:02 +00:00
David
1b5887d97f Merge pull request #28675 from overleaf/dp-pdf-preview-output-files-typescript-2
Convert output-files.js to typescript

GitOrigin-RevId: 32eb509f491cfd53de7f1b21b97861ba421566a5
2025-09-30 08:05:45 +00:00
Rebeka Dekany
19b38340ac Consistent usage of the modal header close button (#28681)
* Convert OLModal to named exports only

* Make closeButton the default for OLModalHeader

* Set `closeButton={false}` for modal that is not dismissible

* Fix duplicated imports

* Remove another unnecessary `closeButton` prop

* Fix import

---------

Co-authored-by: Antoine Clausse <antoine.clausse@overleaf.com>
GitOrigin-RevId: ddd7be6e59a966ac634683d2494d6e9d2c3732e6
2025-09-30 08:05:24 +00:00
Rebeka Dekany
3b5ea89a1c 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
cc49eeacbd Update Storybook controls for shared component stories and add Figma links for preview (#28634)
* Rename ui to shared

* Delete unused Switch component

* Update stories with Figma links

* Update Tag story naming for clarity

* Update Toggle button story naming for clarity

* Move shared components to the shared folder

* Remove file as part of TS migration

* Migrate jsx to tsx

* Remove file as part of TS migration

* Migrate jsx to tsx

* Include necessary controls only

* Auto SF

GitOrigin-RevId: d2458eeffa7a6b67ce522c3ccb6b4f71e5e76d62
2025-09-25 08:05:53 +00:00
Jimmy Domagala-Tang
bfd00a8151 Allow for different content in opted in/ out experiments (#28530)
* feat: allowing for different messages in experiment when user is opted in

GitOrigin-RevId: 7b4254be6cf8147399010053d5a2a4cf9bb8f342
2025-09-25 08:05:44 +00:00
Antoine Clausse
2eb483faab [web] Allow OVERLEAF_NAV_TITLE and OVERLEAF_HEADER_IMAGE_URL to be used at the same time (#28445)
* Remove unused navbar-website-redesign.pug

* Add custom logo and title to the navbar settings

* Update navbar-header so it handles logo+title, and without overflowing

* Revert "Add custom logo and title to the navbar settings"

This reverts commit a860fca916714fa34befa231a0b7f43fcbcc3aee.

GitOrigin-RevId: 4d87b47a5c6f64130fe2b57c57ee8f808baef271
2025-09-22 08:05:59 +00:00
Mathias Jakobsen
c4aae2f887 Merge pull request #28580 from overleaf/mj-compile-log-entries
[web] Remove compile-log-events override for labs users

GitOrigin-RevId: 247a27f06e0eb8eff41d015d916c088b5da2a45d
2025-09-22 08:05:09 +00:00
Borja
22cfe179e1 Writefull codebase migration (#27077)
GitOrigin-RevId: 48ff40d0b141d5bf7c70eaba8beacba7e64f237a
2025-09-18 08:05:57 +00:00
Mathias Jakobsen
d8c7acfe62 Merge pull request #28438 from overleaf/dp-itm-content
Add itm-content param indicating split test variant to compile timeout paywalls

GitOrigin-RevId: 809e13f8e548498d890c055d20d7ce30fd6ead7f
2025-09-17 08:05:06 +00:00
Kristina
c79cc52fcf Merge pull request #28270 from overleaf/kh-add-stripe-payment-context
[web] add stripe payment context

GitOrigin-RevId: 79dfbb1da0dd6b1d36c68c86debffc1edb169961
2025-09-16 08:05:45 +00:00
David
ae9d84c279 Merge pull request #28392 from overleaf/dp-segment-editor-analytics
Add editor-redesign segmentation to a bunch of analytics events

GitOrigin-RevId: e8d2091028dab09de06362c38c5a17f32253e7cc
2025-09-11 08:05:05 +00:00
David
9cdd5cee25 Merge pull request #28160 from overleaf/dp-integration-panel
Add reference managers to integration panel

GitOrigin-RevId: 8e838c33727c985212abd97f7c2fbecc7c439de0
2025-09-05 08:04:56 +00:00
David
43fccf60b9 Merge pull request #28117 from overleaf/dp-tab-headings
Align rail panel headers to use the same font-weight and line-height

GitOrigin-RevId: e982f6d816e2f1b0e8f4a0af603222262d58bab0
2025-08-27 08:05:47 +00:00
David
975d1ee250 Merge pull request #27316 from overleaf/dp-file-menu-options
Add copy and submit project options to new editor file menu

GitOrigin-RevId: 7f402d96f278f2b084375441089b286adaa731b8
2025-08-21 08:05:37 +00:00