* 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