Commit Graph

268 Commits

Author SHA1 Message Date
David
6f1e8cea6d 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
8229ad9b12 Writefull to BigQuery new events and clean up (#29191)
GitOrigin-RevId: dc01a585f451513dcb1eb37ce6e5fdf906eb7ef6
2025-10-21 08:06:43 +00:00
Borja
1d2d964a2e Refactor Writefull toolbar (#28911)
GitOrigin-RevId: 1d8a3addc9046dc67c0cca20d5cf4fba35d132d1
2025-10-15 08:07:42 +00:00
Alf Eaton
c7d06c00e2 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
3a757549e1 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
jmescuderowritefull
7c0ac48c0d Clean extension checks and old feature flags in Writefull (#28713)
GitOrigin-RevId: c1949019f1f51add7fd036a1ad0e2946ccab5382
2025-10-01 08:06:07 +00:00
Borja
567ea2343b Change suggestion-click event listener to avoid duplications (#28756)
GitOrigin-RevId: 4feac33ee530f768397a9097e96400ff25d70e5c
2025-10-01 08:06:02 +00:00
David
f021b92e51 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
Mathias Jakobsen
01b411c5d3 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
David
ad1aef43d9 Merge pull request #27868 from overleaf/dp-pdf-preview-2-typescript
Convert DocumentCompiler class to typescript

GitOrigin-RevId: 6a0d72f7e0cc319c9166ee6236380f6af5187dbb
2025-08-14 08:06:12 +00:00
David
12fe3843be Merge pull request #27846 from overleaf/dp-pdf-preview-typescript
Convert several pdf-preview files to typescript

GitOrigin-RevId: afa7f7fce8fec2a36090a259783a586960ccb291
2025-08-14 08:05:47 +00:00
Mathias Jakobsen
96955fe2a0 Merge pull request #26951 from overleaf/mj-layout-broken
[web] Add restoreView to LayoutContext

GitOrigin-RevId: 3a50c1e215c99236f503285fee1c924df57e07e4
2025-07-11 08:05:06 +00:00
Tim Down
79b54b9ade Merge pull request #26928 from overleaf/td-remove-use-scope-value
Remove useScopeValue and its associated store

GitOrigin-RevId: 439d6eb16343f65695ef615a9ff697d0cc5ad2c7
2025-07-10 08:08:59 +00:00
Tim Down
e11724799f Move project context out of scope value store (#26615)
* Refactor project context to not use scope store

* Fix Cypress tests for project context changes

* Fix frontend React Testing Library tests for project context changes

* Remove redundant code

* Fix some project types in tests

* Remove unused import and fix a type

* Throw an error if updating the project in the project context before joining the project

* Fix some review panel tests

* Remove unused imports

GitOrigin-RevId: 2f0c928b651f387aa980c29aef7d1ba0649790a7
2025-07-10 08:06:31 +00:00
David
4dbd82ea1c Merge pull request #26909 from overleaf/dp-eq-preview-presentation-mode
Prevent codemirror tooltips appearing on top of pdf preview

GitOrigin-RevId: 0c6ce15cd91b4958674fbc247bcd27ce5778f7fc
2025-07-10 08:05:34 +00:00
Tim Down
3b32c81410 Merge pull request #26583 from overleaf/td-editor-scope-values-to-context
Move scope values starting with `editor.` to contexts

GitOrigin-RevId: 7ca349ceff002228cf4e931c644c8c386eb6c597
2025-07-09 08:05:15 +00:00
Antoine Clausse
12b3dcdfdc [web] Convert EditorProviders and some test files to Typescript (#26512)
* Rename files to tsx

* Update types

* Remove props that aren't typed

* Add `LayoutContextOwnStates`

* Use `LayoutContextOwnStates`

* Ignore ts errors about `SocketIOMock`

* Address comments: remove `satisfies`, update `BroadcastChannel` fixture

* Add types to `makeEditorOpenDocProvider`. Update `openDocId`->`currentDocumentId`

* misc.

* Type sockets as `SocketIOMock & Socket`

* Fix remaining typing errors

* Fix type of `ideReactContextValue`

GitOrigin-RevId: 2734ac707517d56c452b0bf06ea3438f947a64be
2025-07-07 08:05:40 +00:00
Antoine Clausse
779e346cb1 [web] Move scopes permissionsLevel, permissions and hasLintingError to React context (#26607)
* Move `hasLintingError` from scope to react state

* Move `permissionsLevel` to IdeReactContext states

* Get `permissionsLevel` from `useIdeReactContext()`

* Set `permissionsLevel` in mocked `IdeReactProvider`

* Replace `permissions` scope by React state

* Fixup `permission` changes

* Remove redundant type

GitOrigin-RevId: 6203c61f9ac429789624196bf67e508310f4577f
2025-07-07 08:05:36 +00:00
Antoine Clausse
f56675da34 [web] Move pdf.* scopes to react states (#26599)
* Move `pdf.logEntryAnnotations` to react state

* Remove unused scope `pdf.downloadUrl`

* Remove unused scope `pdf.url`

* Move `pdf.uncompiled` to react state

* Move `pdf.logEntries` to react state

* Remove `pdf` from `mockScope`

* Fix test: "renders annotations in the gutter"

GitOrigin-RevId: bf1d0ec30cc0ffcc1177871651483c296ed08baf
2025-07-03 08:04:58 +00:00
Tim Down
409d5f7b3e Merge pull request #26326 from overleaf/td-clean-up-scope-store
Create separate window.overleaf.unstable.store based on React context values

GitOrigin-RevId: 68f070a6fc5e2965a82720024d91b16fa622b28b
2025-07-02 08:05:53 +00:00
Domagoj Kriskovic
27211c6644 Allow switching reviewing mode for anonymous editors (#26426)
* Revert "Remove reference to track changes ofForGuests"

This reverts commit 675f3864e4bf0a07d24848223814768ab50bfd9b.

* handle track changes for guests

* only send on_for_guests

* update test

GitOrigin-RevId: 15308f0904b26d2ea6a2e57b3852cd2a9b3c886d
2025-06-26 08:05:43 +00:00
Mathias Jakobsen
952c6660c0 Merge pull request #26499 from overleaf/dp-pdf-couldnt-compile
Update handling of "suggest fix" in new editor

GitOrigin-RevId: 80d6fa479bc1d12d7e5b82a8c504830c9f4db182
2025-06-26 08:05:14 +00:00
Mathias Jakobsen
d100f5c1e4 Merge pull request #26440 from overleaf/mj-ide-co-branding-submit
[web] Editor redesign: Add co-branded submit button to toolbar

GitOrigin-RevId: 45f7ba93de8b28868d88a4ad913f6543e0f7e0a6
2025-06-26 08:05:10 +00:00
Antoine Clausse
192ca0479c [web] Move UI scope to React states (#26403)
* Move `ui.view` to setState

* Move `openFile` to setState

* Move `ui.leftMenuShown` to setState

* Move `ui.miniReviewPanelVisible` to setState

* Move `ui.pdfLayout` to setState

* Move `ui.chatOpen` to setState

* Move `ui.reviewPanelOpen` to setState

* Cleanup: remove layout-context-adapter and imports

* Replace `ui` scope by mocked `LayoutProvider` in tests

* Update test

* Remove unnecessary `scopeStore.set('ui.chatOpen' ...`

GitOrigin-RevId: 81578bfdc958239eac492905f714a6074c81d0f5
2025-06-25 08:05:15 +00:00
Antoine Clausse
e2add2cba1 [web] Rename docRoot_id to docRootId in the frontend code (#26337)
* Rename `rootDoc_id` to `rootDocId` in the frontend

* Update types

* Fix frontend test

GitOrigin-RevId: b755a4ebf7b8c0b8ed800d713bbae8cfcfdd5046
2025-06-18 08:07:05 +00:00
Antoine Clausse
37e550f43f [web] Remove instances of $scope and _ide (#26297)
* Remove `$scope` from `getMockIde`

* Replace `...getMockIde()` by `_id: projectId`

* Simplify stories decorator scope.tsx: less reliance on `window`

* Update helper editor-providers.jsx: pass data instead directly instead of using `window`

* Remove `cleanUpContext`

* Remove unused prop `clsiServerId`

* Update types to reflect unused properties

* Remove comment

* Add `ol-chatEnabled` in Storybook

* Revert moving `getMeta` outside of the component

This causes issues in Storybook

GitOrigin-RevId: dc2558ce814c2d738fb39450c57c104f4419efb8
2025-06-18 08:06:42 +00:00
David
3131835a54 Merge pull request #26472 from overleaf/dp-full-project-search-shortcut
Add mod-shift-f shortcut to open full-project-search to new editor

GitOrigin-RevId: a843c408cc8bd30228cbb7bc17309f4f9ff355b3
2025-06-18 08:05:48 +00:00
Domagoj Kriskovic
a851bff2bf Revert "Reinitialise Writefull toolbar after buying AI assist (#25741)" (#26144)
This reverts commit 7247ae45ca7de7f1f3778b1b22f49e2ff840a7ef.

GitOrigin-RevId: c6dc1a073ce3d0f9703e426df1c12fa1c7ffac5c
2025-06-05 08:05:28 +00:00
David
f730230f36 Merge pull request #25939 from overleaf/dp-error-logs
Update error logs designs for new editor

GitOrigin-RevId: 0de3a54446a0ff114a1debb7b5f274d3a8f19c42
2025-06-05 08:05:11 +00:00
Mathias Jakobsen
988d826c75 Merge pull request #26015 from overleaf/mj-ide-breadcrumbs-setting
[web] Add setting to control editor breadcrumbs

GitOrigin-RevId: 6e0a4bb97eba63a1df43d85840f8962bf0238b7c
2025-06-03 08:05:49 +00:00
David
4bb59f8ac0 Merge pull request #25804 from overleaf/dp-on-for-guests
Remove references to removed track changes onForGuests option

GitOrigin-RevId: c251ad41633df33f0d963dbc3c2e5cb62920a5e1
2025-05-23 08:05:59 +00:00
Domagoj Kriskovic
56de4c02da Reinitialise Writefull toolbar after buying AI assist (#25741)
* Reinitialise Writefull toolbar after buying AI assist (#25596)

* Reinit Writefull toolbar after buying AI assist

* use refreshSession()

* add a timeout

* add a second refresh

* Increase a timeout for second refresh of writefull session (#25725)

GitOrigin-RevId: 7247ae45ca7de7f1f3778b1b22f49e2ff840a7ef
2025-05-22 08:07:16 +00:00
Domagoj Kriskovic
54466bc0b0 Handle undefined user features in UserFeaturesProvider
GitOrigin-RevId: 70841809f691e9f20591bdf1ea05c510a44892af
2025-05-22 08:07:11 +00:00
David
c8a1a58ad6 Merge pull request #25740 from overleaf/dp-gutter-error-logs
Correctly open logs when using AI assist gutter button in new editor

GitOrigin-RevId: 2700832f9e18d10ca3e6ee52841d31613fee626c
2025-05-22 08:06:47 +00:00
Domagoj Kriskovic
845da23a15 Revert "Reinitialise Writefull toolbar after buying AI assist" (#25731)
* Revert "Increase a timeout for second refresh of writefull session (#25725)"

This reverts commit 0a34bdde656ade863aead22f003253e13af37829.

* Revert "Reinitialise Writefull toolbar after buying AI assist (#25596)"

This reverts commit a2572d62bce0e344d92696e42d137a0b36574b3b.

GitOrigin-RevId: 3d51a4375059ab9f4494a7e18b132cc5db34e4cd
2025-05-19 12:27:00 +00:00
Domagoj Kriskovic
9a55ebc1a3 Reinitialise Writefull toolbar after buying AI assist (#25596)
* Reinit Writefull toolbar after buying AI assist

* use refreshSession()

* add a timeout

* add a second refresh

GitOrigin-RevId: a2572d62bce0e344d92696e42d137a0b36574b3b
2025-05-19 12:26:21 +00:00
David
476380bc29 Merge pull request #25618 from overleaf/dp-symbol-palette-proptypes
Remove Proptypes from SymbolPalette components

GitOrigin-RevId: 58b74652a5b47612c4622a7cac9b1ff3aadadfc5
2025-05-16 08:05:48 +00:00
David
207b38fd42 Merge pull request #25553 from overleaf/dp-clone-project-modal-proptypes
Remove Proptypes from CloneProjectModal

GitOrigin-RevId: 400f4c9de72eb1910a0ca067882a6358663303d3
2025-05-16 08:05:44 +00:00
Alf Eaton
3ade5e27ac Remove the full-project-search split test (#25444)
GitOrigin-RevId: b36c1c81152694547dcf044cfb2cb0f511bfdc22
2025-05-14 08:06:31 +00:00
Jimmy Domagala-Tang
6c641bd0b6 Merge pull request #25568 from overleaf/jdt-rely-on-user-feats-for-assist-paywall-button
Rely on user features when showing the get assist paywall button post upgrade

GitOrigin-RevId: 2218171eb57996ee962b4ddc94c1749ad65b9c1b
2025-05-14 08:06:04 +00:00
David
8f0925733d Merge pull request #25387 from overleaf/dp-editor-toolbar-proptypes
Remove proptypes from editor-navigation-toolbar components

GitOrigin-RevId: 77a1c4e13e3da6c06bb515b0137da2f70bfdf4a8
2025-05-13 08:08:06 +00:00
Jimmy Domagala-Tang
9aa325ff2d Merge pull request #25151 from overleaf/dk-use-user-features
UserFeaturesContext with cross-tab syncing via BroadcastChannel

GitOrigin-RevId: 4262719f5018f5717211851ce28b3255af65461a
2025-05-13 08:07:57 +00:00
Jakob Ackermann
e94369cb72 [web] settle on a single split-test for the clsi-cache rollout (#25399)
* [web] settle on a single split-test for the clsi-cache rollout

Use the split-test that was used for rolling out the writes so that we
can use their already populated caches.

* [clsi-cache] fix non-sharded clsi-cache in dev-env

GitOrigin-RevId: 6ebd6369183342fe6d5e325b760d011fd1d57516
2025-05-08 08:06:37 +00:00
Tim Down
aae0d42002 Merge pull request #23940 from overleaf/td-react-18
Upgrade to React 18

GitOrigin-RevId: 9b81936e6eea2bccd97fe5c2c5841f0b946371b8
2025-05-02 08:05:29 +00:00
Domagoj Kriskovic
f7e7062b0c Refactor Writefull init to always include overleafLabels (#25055)
GitOrigin-RevId: 416b2d1ea3a24e7c879779078e4f2a13ca6c3555
2025-04-28 08:05:47 +00:00
Jakob Ackermann
02dc00b0b8 [web] make clsi-cache a premium feature (#25075)
* [web] stopOnFirstError=true does not conflict with =false locally

Allow stopOnFirstError to be enabled in the compile from cache and
disabled locally.
Compiles that passed with stopOnFirstError=true will also pass with
stopOnFirstError=false. The inverse does not hold, and we need to
recompile.

* [web] record event when using compile from cache

* [web] record event when falling back to clsi-cache

* [web] make clsi-cache a premium feature

* [k8s] clsi-cache: increase disk size for beta rollout

NOTE: As this is a premium feature and paid servers run in zones c+d, we
do not need to scale up clsi-cache in zone b for now.

* [web] enable full sampling of compile-result-backend events

* [web] fix frontend tests

* [web] be more verbose when determining access to clsi-cache feature

GitOrigin-RevId: 6fd663e16085187876eb225f7f33eeeaf69d2b2a
2025-04-25 08:05:33 +00:00
David
ad48e9227d Merge pull request #24950 from overleaf/dp-writeful-editor-switch
Expose isNewEditor in window.overleaf.unstable.store for use by writefull

GitOrigin-RevId: be68b3bc62ea1bfb631f349475888b1153e47cfd
2025-04-24 08:05:58 +00:00
Domagoj Kriskovic
2fcaa94cfd Add origin for ai assist interstitial modal (#24904)
GitOrigin-RevId: 035edf8791b0afdc8c320598d09d99f5e84acc47
2025-04-18 08:04:55 +00:00
Jakob Ackermann
c07e2fc38a [clsi-cache] check compiler settings before using compile from cache (#24845)
* [web] provide an actual rootFolder from EditorProviders in tests

- Fixup SocketIOMock and ShareJS mocks to provide the complete interface
- Extend SocketIOMock interface to count event listeners
- Fixup test that did not expect to find a working rootDoc

* [web] expose imageName from ProjectContext

* [clsi-cache] check compiler settings before using compile from cache

* [web] avoid fetching initial compile from clsi-cache in PDF detach tab

GitOrigin-RevId: e3c754a7ceca55f03a317e1bc8ae45ed12cc2f02
2025-04-16 08:05:35 +00:00
David
925334d776 Merge pull request #24859 from overleaf/dp-history-file-tree
Always show file tree in history view in new editor

GitOrigin-RevId: e993aae4c1625ef7fb0a716ae5bff8edb0e8d0d0
2025-04-16 08:04:52 +00:00