* [web] Move ARS Write and Cite behind separate feature flag
* [web] Use isSplitTestEnabled function
* [web] Only load Write and Cite if project has ARS access
* [web] Enable Write and Cite ARS by default
* [web] Fix condition for loading write and cite ref sources
* [web] Remove references settings button in free projects
GitOrigin-RevId: c4f3b7c60da9864409c788dcf34bdc77347441a8
* [web] Expose metric for active users in SP
* Removed redundant UserHandler.setupLoginData()
In the past this method was also calling
a now deleted notifyDomainLicence(), but now
this is just an alias for populateTeamInvites()
* Added migration for `lastActive`
* Added secondary read precedence to count active users
GitOrigin-RevId: 86d6db31e1ae74ae40c6599e6acb731d8c4a04bd
* [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
* [web] Wiring work for `/subscription/invites/:token` BS5 migration
* [web] Add SCSS for .enrollment-invite
* [web] Update invite_logged_out PUG file for BS5
* [web] Update `GroupInviteViews` (and children) to BS5
* [web] Update `InviteManaged` to BS5
* [web] Update Logout button
* [web] Update subtitles
This removes the `text-overflow:ellipsis`. I think it's better without it, because it can be an accessibility issue.
* [web] Add margin on inner-card
* [web] Style action buttons in InviteManaged
* [web] Add missing container around Row
This was causing the row to overflow the body.
Increased the col width to compensate.
* [web] Fixup lint
* [web] Fix `ManagedUserCannotJoin` title in BS3 (!)
I checked all the other `OLNotification`: we don't use `title` anywhere else
* [web] Put title in OLNotification content
See https://github.com/overleaf/internal/pull/20640#discussion_r1777551257
* [web] Use translations for "aria-label="Email address""
* [web] Handle OLButton `isLoading` in `bs3Props`
* [web] Remove duplicated `btn` class
* [web] Add margin-bottom to InviteManaged title and fix logout button CSS in BS3
* [web] Adjust col class in Pug file for BS3 and BS5
* [web] Revert migration to OLNotification
Revert back to `@/shared/components/notification`
* [web] Add note to remove .team-invite-name after BS5 migration
* [web] Set `btn-link-logout` in BS3 only
* [web] Update OLButton so other classNames automatically get passed to the BS3 implementation
* [web] Revert OLButton changes for BS3 classnames
Co-authored-by: Rebeka <rebeka.dekany@overleaf.com>
* [web] Update services/web/modules/group-settings/frontend/js/components/invite-managed.tsx
Co-authored-by: ilkin-overleaf <100852799+ilkin-overleaf@users.noreply.github.com>
* [web] Use OLFormGroup `controlId`
---------
Co-authored-by: Rebeka <rebeka.dekany@overleaf.com>
Co-authored-by: ilkin-overleaf <100852799+ilkin-overleaf@users.noreply.github.com>
GitOrigin-RevId: 64b3f79c83002a9c9585bfb8e344e80b2e8eac5c
* adding styling for form label under bs5 styling
* moving label color to website-redesign
* adding spacing-02
* fixing a linting error
* adding label styling within website-redesign
GitOrigin-RevId: bc99c13e5d60dc68c3557db752292faf5eb5a34e
* welcome page adjusted columns in BS5
* [web] Fix card color
* [web] Fixup card width in BS3
* [web] Fix lint
* [web] Fix cards text color in BS3
* [web] Fix cards positioning in BS3
* [web] Prevent cards from becoming too large on big screens
---------
Co-authored-by: Ilkin Ismailov <ilkin.ismailov@overleaf.com>
GitOrigin-RevId: 9b91c073a62dae7cad4402908a34f9880ecdb0ac
[web] CMS BS5 - Fix mobile top padding when columns reversed, apply `max-width` to rows as cards
GitOrigin-RevId: 0c8745c171dc8e24389b2e54e4d6fd605c30e145
* copying blog-posts.less into blog-posts.scss, will not compile yet
* making variable changes in the file
* adding card-body under blog-post
* adding spacing-09 to the list
* format:fix
* rendering bs5 for blog/blog_post
* adding card-body for blog post page card
* fixing some linting errors
* adding neutral-40 as a replacement of ol-blue-gray-2
* selecting the closest spacing
* removing margin
GitOrigin-RevId: e0cad15cec2adccb41d773e38feb99d9fd9f5e07
* migrating premium badge to BS5 and changing the unit test
* fixing unit test
* using badge badge-prepend classes for the premium badge
* fixing unit test
* adding font-weight variable
* removing unused CSS
* adding aria-hidden
GitOrigin-RevId: a1ab2eeedd95ee500c21607abd09a0a8a07289f0
* adding classes according to bootstrap 5 tabs
* adding JS for tabs handeling in BS5
* adding styling for tabs to match the redesign styling
* making sure tabs are being highlighted when active
* adding a scroll-margin-top to have some extra space
* removing extra import, it is not needed here because we already import it in bootstrap-x.js files
* using the media-breakpoint-down for a media query styling
* introducing .nav-tabs-container to make the tab triggers horizontally scrollable
* creating a mixin box-shadow-button-input under scss for bootstrap-5
* moving border-width-base to tabs.scss
* aligning tabs to the left under screen size of 768px
* removing focus-style mixin from scss files becuase it was a duplicate
GitOrigin-RevId: 45780c62681fc9b61961f5436d2d55de66a976b6
* Set `node-fetch` to `^2.7.0`
* Update package-lock.json
```
# root
bin/npm update node-fetch
bin/npm update cross-fetch
# in other path in docker
npm update node-fetch
```
* Update node-fetch patch
* [fetch-utils] Skip the test: destroys the request body if it doesn't get consumed
```
1) fetch-utils
fetchJson
destroys the request body if it doesn't get consumed:
FetchError: Invalid response body while trying to fetch http://example.com:30001/json/ignore-request: write EPIPE
at PassThrough.<anonymous> (/overleaf/node_modules/node-fetch/lib/index.js:400:12)
at PassThrough.emit (node:events:529:35)
at emitErrorNT (node:internal/streams/destroy:151:8)
at emitErrorCloseNT (node:internal/streams/destroy:116:3)
at process.processTicksAndRejections (node:internal/process/task_queues:82:21)
```
* [fetch-utils] Delete the test: destroys the request body if it doesn't get consumed
* Remove the `setTimeout` in the node-fetch patch
Fixes a test and doesn't break filestore acceptance tests
* Update node-fetch patch again: bring changes from https://github.com/node-fetch/node-fetch/blob/e87b093/src/index.js
* Update node-fetch patch again: bring changes from https://github.com/node-fetch/node-fetch/blob/e87b093/src/index.js
* Update node-fetch patches back to single lines
Per https://github.com/overleaf/internal/pull/20165#discussion_r1739035513
GitOrigin-RevId: 945e5a12e838673b7bc87b588b7aca1bcd9109e2
* Implement floating Add comment button
* Fix comment typo
* Remove unused imports
* Make tooltip always appear above cursor
Co-authored-by: Domagoj Kriskovic <dom.kriskovic@overleaf.com>
* Refactor how new comment form is positioned
* Add missing file
* Create new map when rendering positions
* Use codemirror state to manage ranges and allow for mutliple in-progress comments
* Memoise sorting
* Create new ranges map each time it is changed
* Add back mutation observer
* Only allow single tooltip
* Fix typo
* Convert state field to store a single tooltip
* Make add comment tooltip content a react component
* Refactor to remove usages of !important
* Use RangeSet to keep track of new comment ranges
* Fix logic broken in rebase
* Map ranges through document changes
* Add decorations for in-progress comments
* Use set-review-panel-open rather than an editor event to open review panel
* Implement new designs for add comment form
* Add padding to textarea
* Fix bug where comment was being submitted for incorrect range
* Add missing key to ReviewPanelAddComment
* Store new comment ranges as a DecorationSet
* Small refactor to how ReviewPanelAddCommens are rendered
* Make op prop to ReviewPanelEntry required
* Add handling for disabling of add comemnt form buttons
* Move viewer check inside AddCommentTooltip
* Ensure that add comment button doesn't reshow when collaborators edit the document
* Remove unneeded op check in ReviewPanelEntry
* Update services/web/frontend/js/features/review-panel-new/components/review-panel-add-comment.tsx
Co-authored-by: Domagoj Kriskovic <dom.kriskovic@overleaf.com>
---------
Co-authored-by: Domagoj Kriskovic <dom.kriskovic@overleaf.com>
GitOrigin-RevId: 3110845f6a557310f3bf72014689e2f2ab53e966
* Include \def commands in command definitions
* Allow command name to be in CtrlSym
* Pull nodeIntersectsChange check out of branches
* Fix \def handling
* Add handling for \newenvironment and \renewenvironment
* Allow \def to have optional arguments
* :x
Revert "Add handling for \newenvironment and \renewenvironment"
This reverts commit a70d3a0a13ed552daf3b761893e3f8609f0b0fc8.
* Add let commands to defintions
* Add environment names to math preview
* Ignore let command definitions in autocomplete
* Move nodeIntersectsChange check back into each block
* Add childOfNodeWithType utility and use to get command names
* commandNameText -> commandName
* Only include environment definitions
* Rename documentEnvironmentNames to documentEnvironments
* EnvironmentName -> Environment
* Format
GitOrigin-RevId: 9c5d701423ae786e5ff91960b4bcd94cd35d21c8