* [storybook] Rerender story when switching BS3/BS5
* [storybook] Add SCSS loader to storybook
* [storybook] Add some AI error assistant stories
* Rename ai-error-assistant.less to .scss
* Update less variables to sass
* Remove duplicated selector
* Replace react-bootstrap components by `OL...`
* Update Checkboxes after BS5 update
* Add IDs so clicking on labels work
* Add BS5 class name in SCSS
Note: `answer-not-detailed` is used twice in the Radios. I think it's a mistake: there should be another name for the "ai_feedback_the_suggestion_wasnt_the_best_fix_available" radio
* Rename ID `answer-not-detailed` -> `answer-not-best-fix`
* Pass name and value to BS3Radio/BS3Checkbox
* [storybook] Add delay before AI suggestion (shows the animation)
* Add a number after the checkbox/radio IDs, to allow multiple forms to be displayed
Without this, clicks on second form are updating the first form!
Another solution could be to wrap the input in the label, but it comes with other problems. See https://css-tricks.com/html-inputs-and-labels-a-love-story/
* [storybook] Update `LabsAiPromoBanner`
* Use CSS variables instead of hardcoded values
* Make radio input flex
* Replace `blue-10` by `bg-info-03`
* Fix `SuggestFixButton`
* Fix `AiErrorAssistantCopyCode`
* Fix button loading in BS5
* Use OLBadge
* Fix Button variants
* Update `suggestFixAction`
* Migrate Tooltip and Button to BS5 in LabsExperimentWidget
* Update BS3/BS5 button classname in AiErrorAssistantCopyCode
Co-authored-by: Rebeka <rebeka.dekany@overleaf.com>
* [storybook] Allow to choose props of `LabsExperimentWidget`
* Fixup `OLTooltip`: Display the tooltip on disabled button in BS5
* Update Tooltips to BS5
---------
Co-authored-by: Rebeka <rebeka.dekany@overleaf.com>
GitOrigin-RevId: 08d594e772c0a3b6db1c6081337cc2d079f478a5
* [web] Set Subscription pages to have `layout-react`
* [web] import `header-footer-react` in Subscription pages (!!)
* [web] Add `ol-user` meta tag to the subscription pages (!!)
⚠️ invite_logged_out.pug should be updated instead of setting the user as `{}`
* [web] Fix unit test
* [web] Update User types to handle a logged out user, add `LOGGED_OUT_USER` const
* [web] Add type `User` to `getSessionUser`
* [web] Remove `LOGGED_OUT_USER` const
* [web] Just pass `{ id: null }` as the user
* [web] Remove comment in pugs, it breaks things
* [web] Don't pass the full user to the frontend!!!
Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>
---------
Co-authored-by: Jakob Ackermann <jakob.ackermann@overleaf.com>
GitOrigin-RevId: 1768f1f13de924a18be43c1a08614000500dcbec
* Remove need for custom set-review-panel-open event
* Open current file view when clicking add comment tooltip
---------
Co-authored-by: Domagoj Kriskovic <dom.kriskovic@overleaf.com>
GitOrigin-RevId: 2b21061193f4270030d73174014aabbd017fd38e
* [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
* 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
* add hasBeenDowngraded prop for EditMember
* reduce padding on share modal collab row, add prompt to hasBeenDowngraded Select
* share modal select styling tweaks to allow for inline warning icon
* always show editor limit subtitle when in downgraded state
* add AccessLevelsChanged warning, tweak owner row styling
* conditionally set hasBeenDowngraded prop. make invited member row styling more consistent between warning/enforcement
* add an info state for access level changed notification
* add notification for lost edit access on collaborator share modal, TSify SendInvitesNotice
* fix member privilege alignment in collaborator share modal
* show blue upgrade CTA when some pending editors have been resolved
* automatically show share modal to owners when has pending editors or is over collab limit
* only show lost edit access warning in read-only share modal to pending editors
---------
Co-authored-by: Thomas <thomas-@users.noreply.github.com>
GitOrigin-RevId: e3b88052a48b8f598299ffc55b7c24cb793da151
* Tidy up review panel components
* Add ReviewPanel providers
* [web] new design for review panel track change (#19544)
* [web] new design for review panel track change
* fixed mini view
* mini icon style change
* fix icon size
* format date
* useRangesUserContext hook
* remove useRangesUserContext hook
* using full class names
* fix action icons hover
* change wording for tooltips
* added ReviewPanelChangeUser component
* Update header in new review panel
* Extract ReviewPanelTrackChangesMenuButton as a separate component
* Remove wrapper div
* Replace h2 with div for review panel label
* Rename ReviewPanelTools to ReviewPanelHeader
* Rename trackChangesExpanded -> trackChangesMenuExpanded
* Dont break memoisation of ReviewPanelTrackChangesMenuButton
* Fix the width of the track changes arrow icon
* Update how prop types are declared
* Remove new empty state from old review panel
* Add empty state to new review panel
* Add project members and owner to ChangesUsers context (#19624)
---------
Co-authored-by: Alf Eaton <alf.eaton@overleaf.com>
* Redesign comment entry in review panel (#19678)
* Redesign comment entry in review panel
* ReviewPanelCommentOptions component
* remove unused prop
* Tidying
* Add conditional import
* Optional changeManager
* Add more split test compatibility
* More split test compatibility
* Fixes
* Improve overview scrolling
* Fix overview scrolling
* Fix & simplify track changes toggle
* Fix overview scrolling
* Fix current file container
* ExpandableContent component for messages in review panel (#19738)
* ExpandableContent component for messages in review panel
* remove isExpanded dependancy
* Delete comment option for new review panel (#19772)
* Delete comment option for new review panel
* dont show thread warning if there are no replies
* fix hasReplies issue
* Implement initial collapsing overview files
* Fix positioning of overview panel
* Small styling changes
* Add count of unresolved comments and tracked chanegs
* More style adjustments
* Move review-panel-overview styles into css file
* Remove unused var
---------
Co-authored-by: Domagoj Kriskovic <dom.kriskovic@overleaf.com>
Co-authored-by: David Powell <david.powell@overleaf.com>
Co-authored-by: David <33458145+davidmcpowell@users.noreply.github.com>
GitOrigin-RevId: e67463443d541f88445a86eed5e2b6ec6040f9c7