mirror of
https://github.com/lscambo13/ElegantFin.git
synced 2025-12-28 06:47:46 +00:00
Compare commits
61 Commits
v25.10.27
...
779b3449c0
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
779b3449c0 | ||
|
|
53b003dd9e | ||
|
|
5c915d6ac1 | ||
|
|
2336be539a | ||
|
|
76a5319c97 | ||
|
|
296263c9d7 | ||
|
|
422a1e185e | ||
|
|
7dcd42f992 | ||
|
|
4e53bd27bc | ||
|
|
86a1e1c74e | ||
|
|
81a118e86e | ||
|
|
44e95c42cb | ||
|
|
8b1585da89 | ||
|
|
3d08baecc8 | ||
|
|
fe651691e3 | ||
|
|
cf67874221 | ||
|
|
676a1be4ae | ||
|
|
9a60e664e5 | ||
|
|
ab8627eb66 | ||
|
|
c7abd97dfb | ||
|
|
23542f197e | ||
|
|
5641b4c7d6 | ||
|
|
beaf6415d0 | ||
|
|
a7216ebbdb | ||
|
|
cf17fb6538 | ||
|
|
30e0ad5488 | ||
|
|
ee5ad227d0 | ||
|
|
b5f5a765ea | ||
|
|
864834b5a8 | ||
|
|
0243875a8c | ||
|
|
87374d3d3e | ||
|
|
e9bee92007 | ||
|
|
10239e818e | ||
|
|
af01c3636d | ||
|
|
17e2fe6940 | ||
|
|
69f4540ec5 | ||
|
|
8f620b489f | ||
|
|
556acc22c5 | ||
|
|
1e0eaae2a0 | ||
|
|
82dd0469d5 | ||
|
|
36290112c3 | ||
|
|
fa6dde9f1b | ||
|
|
8575b9b2b4 | ||
|
|
bf23c34fbf | ||
|
|
f7aae10db0 | ||
|
|
349a720cd2 | ||
|
|
b9ceded828 | ||
|
|
1647f40140 | ||
|
|
bfdd8d8576 | ||
|
|
8398ee7058 | ||
|
|
c5dca7ffb3 | ||
|
|
be84634dae | ||
|
|
733e091072 | ||
|
|
42bc537897 | ||
|
|
48811065aa | ||
|
|
33afcd750c | ||
|
|
d1b4bc1367 | ||
|
|
3b15cabe57 | ||
|
|
8c38f33628 | ||
|
|
6b1c3a67f3 | ||
|
|
1918c9b054 |
21
.github/ISSUE_TEMPLATE/bug_report.md
vendored
21
.github/ISSUE_TEMPLATE/bug_report.md
vendored
@@ -7,6 +7,11 @@ assignees: ''
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
**Checklist**
|
||||||
|
- [ ] I have read the README.md
|
||||||
|
- [ ] I have searched through the other open and closed issues using the GitHub search bar
|
||||||
|
- [ ] I have made sure that my issue is not a duplicate
|
||||||
|
|
||||||
**Describe the bug**
|
**Describe the bug**
|
||||||
A clear and concise description of what the bug is.
|
A clear and concise description of what the bug is.
|
||||||
|
|
||||||
@@ -17,18 +22,18 @@ A clear and concise description of what you expected to happen.
|
|||||||
If applicable, add screenshots to help explain your problem.
|
If applicable, add screenshots to help explain your problem.
|
||||||
|
|
||||||
**ElegantFin:**
|
**ElegantFin:**
|
||||||
- Version [e.g. 24.12.11]
|
- Version [e.g. 24.12.01]
|
||||||
|
|
||||||
**Jellyfin Server:**
|
**Jellyfin Server:**
|
||||||
- Version [e.g. 10.10.7]
|
- Version [e.g. 10.10.3]
|
||||||
|
|
||||||
**Desktop (please complete the following information):**
|
**Desktop:**
|
||||||
- OS: [e.g. iOS]
|
- OS: [e.g. Windows]
|
||||||
- Browser: [e.g. chrome, safari]
|
- Browser: [e.g. chrome, safari]
|
||||||
- Browser Version: [e.g. 22]
|
- Browser Version: [e.g. 22]
|
||||||
- Screen Resolution [e.g. 1920x1080]
|
- Screen Resolution [e.g. 1920x1080]
|
||||||
|
|
||||||
**Smartphone or TV (please complete the following information):**
|
**Smartphone or TV:**
|
||||||
- Device: [e.g. iPhone6]
|
- Device: [e.g. iPhone6]
|
||||||
- OS: [e.g. iOS8.1]
|
- OS: [e.g. iOS8.1]
|
||||||
- Browser: [e.g. stock browser, safari]
|
- Browser: [e.g. stock browser, safari]
|
||||||
@@ -36,5 +41,7 @@ If applicable, add screenshots to help explain your problem.
|
|||||||
- Jellyfin App Version:
|
- Jellyfin App Version:
|
||||||
|
|
||||||
|
|
||||||
**Additional context**
|
**Are you using any plugins or extra CSS configuration**
|
||||||
Add any other context about the problem here.
|
- Add any third-party plugins or CSS configuration you use.
|
||||||
|
- [e.g. Media Bar, Custom Tabs etc]
|
||||||
|
- [e.g. other custom css modifications]
|
||||||
|
|||||||
49
README.md
49
README.md
@@ -95,8 +95,8 @@ https://github.com/user-attachments/assets/bb7f3174-b703-4c98-a23c-e6bb4abba390
|
|||||||
<summary><i>Detailed steps for server-side implementation</i></summary>
|
<summary><i>Detailed steps for server-side implementation</i></summary>
|
||||||
|
|
||||||
1. Open Dashboard from Administration tab in Settings.
|
1. Open Dashboard from Administration tab in Settings.
|
||||||
2. Select General tab from the side bar.
|
2. From the side bar, select the Branding tab if you are on Jellyfin 10.11.X or the General tab on older version.
|
||||||
3. Scroll down to find Custom CSS code box under Branding section.
|
3. Scroll down to find Custom CSS code box.
|
||||||
4. Paste the custom css in Custom CSS code box.
|
4. Paste the custom css in Custom CSS code box.
|
||||||
5. Click save
|
5. Click save
|
||||||
</details>
|
</details>
|
||||||
@@ -130,15 +130,16 @@ https://github.com/user-attachments/assets/bb7f3174-b703-4c98-a23c-e6bb4abba390
|
|||||||
<img width="auto" height="350" alt="image" src="https://github.com/user-attachments/assets/70834545-d1cd-4496-975a-4310030dedd9" />
|
<img width="auto" height="350" alt="image" src="https://github.com/user-attachments/assets/70834545-d1cd-4496-975a-4310030dedd9" />
|
||||||
<img width="auto" height="350" alt="image" src="https://github.com/user-attachments/assets/c3cf2d96-0db0-4acb-bc61-7b08d5445452" />
|
<img width="auto" height="350" alt="image" src="https://github.com/user-attachments/assets/c3cf2d96-0db0-4acb-bc61-7b08d5445452" />
|
||||||
|
|
||||||
|
- Note: this customisation is not needed on Jellyfin 10.11.X anymore
|
||||||
|
|
||||||
- To enable the background wallpaper on the login screen, first tick the 'Enable the splash screen' option in your Jellyfin Dashboard below the Custom CSS Box.
|
- On older Jellyfin versions, to enable the background wallpaper on the login screen, first tick the 'Enable the splash screen' option in your Jellyfin Dashboard below the Custom CSS Box.
|
||||||
- Second, copy and paste the following code at the end in Custom CSS box but don't save yet.
|
- Second, copy and paste the following code at the end in Custom CSS box but don't save yet.
|
||||||
```
|
```
|
||||||
:root{
|
:root{
|
||||||
--loginPageBgUrl: url("<YOUR-JELLYFIN-SERVER-ADDRESS>/Branding/Splashscreen?format=webp&foregroundLayer=1&quality=33&width=3840&height=2160&blur=2");
|
--loginPageBgUrl: url("<YOUR-JELLYFIN-SERVER-ADDRESS>/Branding/Splashscreen?format=webp&foregroundLayer=1&quality=33&width=3840&height=2160&blur=2");
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
- Third, replace `<YOUR-JELLYFIN-SERVER-ADDRESS>` with your Jellyfin server address, for example, `http://192.168.0.1:8097`.
|
- Third, replace `<YOUR-JELLYFIN-SERVER-ADDRESS>` with your Jellyfin server address, for example, `http://192.168.0.1:8096`.
|
||||||
- Don't forget the correct http or https in your domain.
|
- Don't forget the correct http or https in your domain.
|
||||||
- You can also modify the parameters, for example blur size or the resolution, according to your liking.
|
- You can also modify the parameters, for example blur size or the resolution, according to your liking.
|
||||||
- Once done, save and refresh your apps and webpages.
|
- Once done, save and refresh your apps and webpages.
|
||||||
@@ -204,7 +205,7 @@ https://github.com/user-attachments/assets/ac22440d-39d7-48d6-a8da-3b7777372ffd
|
|||||||
</details>
|
</details>
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary><i>7. Enable experimental support for the Media Bar plugin</i></summary>
|
<summary><i>7. Enable alternative style for the Media Bar plugin</i></summary>
|
||||||
|
|
||||||
<img width="640" height="auto" alt="image" src="https://github.com/user-attachments/assets/3e88e270-40f9-48ba-8173-f65b94344f8d" />
|
<img width="640" height="auto" alt="image" src="https://github.com/user-attachments/assets/3e88e270-40f9-48ba-8173-f65b94344f8d" />
|
||||||
|
|
||||||
@@ -216,33 +217,51 @@ https://github.com/user-attachments/assets/ac22440d-39d7-48d6-a8da-3b7777372ffd
|
|||||||
- To undo this change, simply remove this code block.
|
- To undo this change, simply remove this code block.
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
|
<details>
|
||||||
|
<summary><i>8. Switch between different app bar styles</i></summary>
|
||||||
|
|
||||||
|
https://github.com/user-attachments/assets/b5868cd2-8df9-490d-a2b6-4386c6ddcd56
|
||||||
|
|
||||||
|
- You can switch between these using `--appBarHeight`.
|
||||||
|
- Use 5em to enable the fading app bar (seamless) (default);
|
||||||
|
- Or, use 4.6em to get the solid app bar (cleaner with border)
|
||||||
|
```
|
||||||
|
:root{
|
||||||
|
/* example */
|
||||||
|
--appBarHeight: 4.6em;
|
||||||
|
}
|
||||||
|
```
|
||||||
|
- To undo this change, simply remove this code block.
|
||||||
|
</details>
|
||||||
|
|
||||||
<hr>
|
<hr>
|
||||||
|
|
||||||
### 🆗 Tested on
|
### 🆗 Tested on
|
||||||
- Jellyfin Server v10.10.7
|
- Jellyfin Server v10.11.1
|
||||||
- Microsoft Edge (Chromium)
|
- Microsoft Edge (Chromium)
|
||||||
- Jellyfin Android App v2.6.3
|
- Jellyfin Android App v2.6.3
|
||||||
|
|
||||||
Note: Support for v10.11.0 is a work in progress
|
|
||||||
|
|
||||||
<hr>
|
<hr>
|
||||||
|
|
||||||
### 🛠️ Troubleshooting
|
### 🛠️ Troubleshooting
|
||||||
<details>
|
<details>
|
||||||
<summary>1️⃣ - <i>How do I check if I am using the latest version of ElegantFin?</i></summary>
|
<summary>1️⃣ - <i>How do I check if I am using the latest version of ElegantFin?</i></summary>
|
||||||
|
|
||||||
- To make sure that you are using the latest version of ElegantFin, check the version number at the bottom in the Dashboard screen.
|
- Check the version number at the bottom in the Settings screen.
|
||||||
- It should be something like ElegantFin v25.07.XX
|
- It should be something like `ElegantFin v25.XX.XX`.
|
||||||
|
|
||||||
|
<img width="380" height="300" alt="image" src="https://github.com/user-attachments/assets/aecca6f5-7bd3-4057-9131-aa60b3becbaf" />
|
||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>2️⃣ - <i>I see that a newer version is available, but I have not received it yet. Why?</i></summary>
|
<summary>2️⃣ - <i>I see that a newer version is available, but I have not received it yet. Why?</i></summary>
|
||||||
|
|
||||||
- If Dashboard footer shows an old version, it means that your app is still using an old cache.
|
- If the Settings footer shows an old version, it means that you are still using an old cache.
|
||||||
- Once that cache is updated, the new version will be loaded.
|
- Once that cache is updated, the new version will be loaded automatically.
|
||||||
- To get the latest version, you will need to clear cache. There are multiple ways to do it.
|
- There are multiple ways to clear the cache depending on your OS, smartphone or TV. Look online if you don't know.
|
||||||
- On web version, force a hard refresh of the page using CTRL + F5.
|
- On the web version, you can force a hard refresh of the page using CTRL + F5.
|
||||||
- On apps, try signing out and back in again. OR in case of Jellyfin Media Player on windows, you might need to delete the cache folder. That should definitely pull the latest version.
|
- On apps, try signing out and back in again. OR in case of Jellyfin Media Player on windows, you might need to delete the cache folder.
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -11,6 +11,9 @@
|
|||||||
--colorOverlayHomevideosCover: rgb(39, 90, 185);
|
--colorOverlayHomevideosCover: rgb(39, 90, 185);
|
||||||
--colorOverlayBooksCover: rgb(166, 68, 70);
|
--colorOverlayBooksCover: rgb(166, 68, 70);
|
||||||
--colorOverlayFoldersCover: rgb(173, 60, 113);
|
--colorOverlayFoldersCover: rgb(173, 60, 113);
|
||||||
|
--colorOverlayMixedCover: rgb(194, 58, 58);
|
||||||
|
--colorOverlayRecordedmoviesCover: rgb(52, 52, 52);
|
||||||
|
--colorOverlayRecordedtvCover: rgb(120, 100, 28);
|
||||||
--urlMoviesCover: url(https://raw.githubusercontent.com/lscambo13/ElegantFin/refs/heads/main/Theme/assets/img/library-covers/movies.webp);
|
--urlMoviesCover: url(https://raw.githubusercontent.com/lscambo13/ElegantFin/refs/heads/main/Theme/assets/img/library-covers/movies.webp);
|
||||||
--urlTvshowsCover: url(https://raw.githubusercontent.com/lscambo13/ElegantFin/refs/heads/main/Theme/assets/img/library-covers/tvshows.webp);
|
--urlTvshowsCover: url(https://raw.githubusercontent.com/lscambo13/ElegantFin/refs/heads/main/Theme/assets/img/library-covers/tvshows.webp);
|
||||||
--urlLivetvCover: url(https://raw.githubusercontent.com/lscambo13/ElegantFin/refs/heads/main/Theme/assets/img/library-covers/livetv.webp);
|
--urlLivetvCover: url(https://raw.githubusercontent.com/lscambo13/ElegantFin/refs/heads/main/Theme/assets/img/library-covers/livetv.webp);
|
||||||
@@ -20,169 +23,113 @@
|
|||||||
--urlHomevideosCover: url(https://raw.githubusercontent.com/lscambo13/ElegantFin/refs/heads/main/Theme/assets/img/library-covers/homevideos.webp);
|
--urlHomevideosCover: url(https://raw.githubusercontent.com/lscambo13/ElegantFin/refs/heads/main/Theme/assets/img/library-covers/homevideos.webp);
|
||||||
--urlBooksCover: url(https://raw.githubusercontent.com/lscambo13/ElegantFin/refs/heads/main/Theme/assets/img/library-covers/books.webp);
|
--urlBooksCover: url(https://raw.githubusercontent.com/lscambo13/ElegantFin/refs/heads/main/Theme/assets/img/library-covers/books.webp);
|
||||||
--urlFoldersCover: url(https://raw.githubusercontent.com/lscambo13/ElegantFin/refs/heads/main/Theme/assets/img/library-covers/folders.webp);
|
--urlFoldersCover: url(https://raw.githubusercontent.com/lscambo13/ElegantFin/refs/heads/main/Theme/assets/img/library-covers/folders.webp);
|
||||||
|
--urlMixedCover: url(https://raw.githubusercontent.com/lscambo13/ElegantFin/refs/heads/main/Theme/assets/img/library-covers/mixed.webp);
|
||||||
|
--urlRecordedmoviesCover: url(https://raw.githubusercontent.com/lscambo13/ElegantFin/refs/heads/main/Theme/assets/img/library-covers/recordedmovies.webp);
|
||||||
|
--urlRecordedtvCover: url(https://raw.githubusercontent.com/lscambo13/ElegantFin/refs/heads/main/Theme/assets/img/library-covers/recordedtv.webp);
|
||||||
}
|
}
|
||||||
|
|
||||||
.card-withuserdata[data-isfolder="true"] .cardImageContainer.defaultCardBackground {
|
[data-type="CollectionFolder"] .defaultCardBackground,
|
||||||
|
[data-type="UserView"] .defaultCardBackground,
|
||||||
|
[data-type="CollectionFolder"] .cardContent,
|
||||||
|
[data-type="UserView"] .cardContent {
|
||||||
filter: contrast(0.85);
|
filter: contrast(0.85);
|
||||||
background-size: cover !important;
|
background-size: cover !important;
|
||||||
background-position: 50% !important;
|
background-position: 50% !important;
|
||||||
background-blend-mode: multiply;
|
background-blend-mode: multiply;
|
||||||
}
|
}
|
||||||
|
|
||||||
.card-withuserdata[data-isfolder="true"]:not([data-type="PhotoAlbum"], [data-type="Series"], [data-type="Folder"], [data-type="Season"], [data-type="Playlist"]) .cardImageContainer.cardContent::before {
|
[data-type="CollectionFolder"] .cardContent::before,
|
||||||
|
[data-type="UserView"] .cardContent::before {
|
||||||
|
content: attr(aria-label);
|
||||||
position: absolute;
|
position: absolute;
|
||||||
font-size: clamp(1em, max(2.5vh, 2vw), 2.5em);
|
font-size: clamp(1em, max(2.5vh, 2vw), 2em);
|
||||||
margin-bottom: .175em;
|
|
||||||
font-weight: 800;
|
font-weight: 800;
|
||||||
color: white;
|
color: white;
|
||||||
font-family: 'Noto Sans';
|
font-family: "Noto Sans";
|
||||||
text-align: center;
|
text-align: center;
|
||||||
|
width: 94%;
|
||||||
|
white-space: normal;
|
||||||
}
|
}
|
||||||
|
|
||||||
.card-withuserdata[data-isfolder="true"]:not([data-type="PhotoAlbum"], [data-type="Series"], [data-type="Folder"]) .cardImageIcon.material-icons:not(.quiz)::before {
|
.layout-tv [data-type="CollectionFolder"]::before,
|
||||||
|
.layout-tv [data-type="UserView"]::before {
|
||||||
|
content: attr(aria-label);
|
||||||
|
position: absolute;
|
||||||
|
display: grid;
|
||||||
|
align-content: center;
|
||||||
|
top: 0;
|
||||||
|
bottom: 0;
|
||||||
|
font-size: clamp(1em, max(2.5vh, 2vw), 2em);
|
||||||
|
font-weight: 800;
|
||||||
|
color: white;
|
||||||
|
font-family: "Noto Sans";
|
||||||
|
text-align: center;
|
||||||
|
width: 94%;
|
||||||
|
white-space: normal;
|
||||||
|
z-index: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
[data-type="CollectionFolder"] .cardImageIcon:not(.quiz)::before,
|
||||||
|
[data-type="UserView"] .cardImageIcon:not(.quiz)::before {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* These show up when no image is set */
|
[data-collectiontype="movies"] .cardContent {
|
||||||
|
background-color: var(--colorOverlayMoviesCover) !important;
|
||||||
/* div[data-collectiontype="movies"] .cardImageContainer.defaultCardBackground {
|
|
||||||
background: var(--colorOverlayMoviesCover) !important;
|
|
||||||
background-image: var(--urlMoviesCover) !important;
|
background-image: var(--urlMoviesCover) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
div[data-collectiontype="tvshows"] .cardImageContainer.defaultCardBackground {
|
[data-collectiontype="tvshows"] .cardContent {
|
||||||
background: var(--colorOverlayTvshowsCover) !important;
|
background-color: var(--colorOverlayTvshowsCover) !important;
|
||||||
background-image: var(--urlTvshowsCover) !important;
|
background-image: var(--urlTvshowsCover) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
div[data-collectiontype="livetv"] .cardImageContainer.defaultCardBackground {
|
[data-collectiontype="livetv"] .cardContent {
|
||||||
background: var(--colorOverlayLivetvCover) !important;
|
background-color: var(--colorOverlayLivetvCover) !important;
|
||||||
background-image: var(--urlLivetvCover) !important;
|
background-image: var(--urlLivetvCover) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
div[data-collectiontype="music"] .cardImageContainer.defaultCardBackground {
|
[data-collectiontype="music"] .cardContent {
|
||||||
background: var(--colorOverlayMusicCover) !important;
|
background-color: var(--colorOverlayMusicCover) !important;
|
||||||
background-image: var(--urlMusicCover) !important;
|
background-image: var(--urlMusicCover) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
div[data-collectiontype="homevideos"] .cardImageContainer.defaultCardBackground {
|
[data-collectiontype="homevideos"] .cardContent {
|
||||||
background: var(--colorOverlayHomevideosCover) !important;
|
background-color: var(--colorOverlayHomevideosCover) !important;
|
||||||
background-image: var(--urlHomevideosCover) !important;
|
background-image: var(--urlHomevideosCover) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
div[data-collectiontype="books"] .cardImageContainer.defaultCardBackground {
|
[data-collectiontype="books"] .cardContent {
|
||||||
background: var(--colorOverlayBooksCover) !important;
|
background-color: var(--colorOverlayBooksCover) !important;
|
||||||
background-image: var(--urlBooksCover) !important;
|
background-image: var(--urlBooksCover) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
div[data-collectiontype="boxsets"] .cardImageContainer.defaultCardBackground {
|
[data-collectiontype="boxsets"] .cardContent {
|
||||||
background: var(--colorOverlayBoxsetsCover) !important;
|
background-color: var(--colorOverlayBoxsetsCover) !important;
|
||||||
background-image: var(--urlBoxsetsCover) !important;
|
background-image: var(--urlBoxsetsCover) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
div[data-collectiontype="folders"] .cardImageContainer.defaultCardBackground {
|
[data-collectiontype="folders"] .cardContent {
|
||||||
background: var(--colorOverlayFoldersCover) !important;
|
background-color: var(--colorOverlayFoldersCover) !important;
|
||||||
background-image: var(--urlFoldersCover) !important;
|
background-image: var(--urlFoldersCover) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
div[data-collectiontype="playlists"] .cardImageContainer.defaultCardBackground {
|
[data-collectiontype="playlists"] .cardContent {
|
||||||
background: var(--colorOverlayPlaylistsCover) !important;
|
background-color: var(--colorOverlayPlaylistsCover) !important;
|
||||||
background-image: var(--urlPlaylistsCover) !important;
|
|
||||||
} */
|
|
||||||
|
|
||||||
/* These are the front facing images */
|
|
||||||
|
|
||||||
div[data-collectiontype="movies"] .cardImageContainer.cardContent {
|
|
||||||
background: var(--colorOverlayMoviesCover) !important;
|
|
||||||
background-image: var(--urlMoviesCover) !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
div[data-collectiontype="tvshows"] .cardImageContainer.cardContent {
|
|
||||||
background: var(--colorOverlayTvshowsCover) !important;
|
|
||||||
background-image: var(--urlTvshowsCover) !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
div[data-collectiontype="livetv"] .cardImageContainer.cardContent {
|
|
||||||
background: var(--colorOverlayLivetvCover) !important;
|
|
||||||
background-image: var(--urlLivetvCover) !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
div[data-collectiontype="music"] .cardImageContainer.cardContent {
|
|
||||||
background: var(--colorOverlayMusicCover) !important;
|
|
||||||
background-image: var(--urlMusicCover) !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
div[data-collectiontype="homevideos"] .cardImageContainer.cardContent {
|
|
||||||
background: var(--colorOverlayHomevideosCover) !important;
|
|
||||||
background-image: var(--urlHomevideosCover) !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
div[data-collectiontype="books"] .cardImageContainer.cardContent {
|
|
||||||
background: var(--colorOverlayBooksCover) !important;
|
|
||||||
background-image: var(--urlBooksCover) !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
div[data-collectiontype="boxsets"] .cardImageContainer.cardContent {
|
|
||||||
background: var(--colorOverlayBoxsetsCover) !important;
|
|
||||||
background-image: var(--urlBoxsetsCover) !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
div[data-collectiontype="folders"] .cardImageContainer.cardContent {
|
|
||||||
background: var(--colorOverlayFoldersCover) !important;
|
|
||||||
background-image: var(--urlFoldersCover) !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
div[data-collectiontype="playlists"] .cardImageContainer.cardContent {
|
|
||||||
background: var(--colorOverlayPlaylistsCover) !important;
|
|
||||||
background-image: var(--urlPlaylistsCover) !important;
|
background-image: var(--urlPlaylistsCover) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.card-withuserdata[data-isfolder="true"] .cardImageContainer.cardContent {
|
[data-prefix="MIX"] .cardContent {
|
||||||
filter: contrast(0.85);
|
background-color: var(--colorOverlayMixedCover) !important;
|
||||||
background-size: cover !important;
|
background-image: var(--urlMixedCover) !important;
|
||||||
background-position: 50% !important;
|
|
||||||
background-blend-mode: multiply;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
div[data-collectiontype="movies"] .cardImageContainer.cardContent::before {
|
[data-collectiontype="movies"][data-prefix="REC"] .cardContent {
|
||||||
content: "Movies";
|
background-color: var(--colorOverlayRecordedmoviesCover) !important;
|
||||||
|
background-image: var(--urlRecordedmoviesCover) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
div[data-collectiontype="tvshows"] .cardImageContainer.cardContent::before {
|
[data-prefix="REC"] .cardContent {
|
||||||
content: "TV Shows";
|
background-color: var(--colorOverlayRecordedtvCover) !important;
|
||||||
|
background-image: var(--urlRecordedtvCover) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
div[data-collectiontype="livetv"] .cardImageContainer.cardContent::before {
|
|
||||||
content: "Live TV";
|
|
||||||
}
|
|
||||||
|
|
||||||
div[data-collectiontype="music"] .cardImageContainer.cardContent::before {
|
|
||||||
content: "Music";
|
|
||||||
}
|
|
||||||
|
|
||||||
div[data-collectiontype="homevideos"] .cardImageContainer.cardContent::before {
|
|
||||||
content: "Home Videos";
|
|
||||||
}
|
|
||||||
|
|
||||||
div[data-collectiontype="books"] .cardImageContainer.cardContent::before {
|
|
||||||
content: "Books";
|
|
||||||
}
|
|
||||||
|
|
||||||
div[data-collectiontype="boxsets"] .cardImageContainer.cardContent::before {
|
|
||||||
content: "Collections";
|
|
||||||
}
|
|
||||||
|
|
||||||
div[data-collectiontype="folders"] .cardImageContainer.cardContent::before {
|
|
||||||
content: "Folders";
|
|
||||||
}
|
|
||||||
|
|
||||||
div[data-collectiontype="playlists"] .cardImageContainer.cardContent::before {
|
|
||||||
content: "Playlists";
|
|
||||||
}
|
|
||||||
|
|
||||||
.card-withuserdata[data-isfolder="true"] .cardImageContainer.cardContent {
|
|
||||||
filter: contrast(0.85);
|
|
||||||
background-size: cover !important;
|
|
||||||
background-position: 50% !important;
|
|
||||||
background-blend-mode: multiply;
|
|
||||||
}
|
|
||||||
@@ -1,20 +1,5 @@
|
|||||||
/* Add-on: Media Bar plugin support nightly for the ElegantFin Theme for Jellyfin by lscambo13 */
|
/* Add-on: Media Bar plugin support nightly for the ElegantFin Theme for Jellyfin by lscambo13 */
|
||||||
/* this styles the media bar plugin - start */
|
/* this styles the media bar plugin - start */
|
||||||
.button-container {
|
|
||||||
align-items: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.favorite-button {
|
|
||||||
background: none;
|
|
||||||
color: var(--textColor);
|
|
||||||
}
|
|
||||||
|
|
||||||
.detail-button:hover,
|
|
||||||
.favorite-button:hover {
|
|
||||||
background: var(--dimTextColor);
|
|
||||||
color: black;
|
|
||||||
}
|
|
||||||
|
|
||||||
.play-button::before,
|
.play-button::before,
|
||||||
.detail-button::before,
|
.detail-button::before,
|
||||||
.favorite-button::before,
|
.favorite-button::before,
|
||||||
@@ -23,7 +8,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.play-button {
|
.play-button {
|
||||||
font-family: 'Inter';
|
font-family: "Inter";
|
||||||
font-size: 1em;
|
font-size: 1em;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
}
|
}
|
||||||
@@ -31,8 +16,8 @@
|
|||||||
.backdrop,
|
.backdrop,
|
||||||
.backdrop-container,
|
.backdrop-container,
|
||||||
.backdrop-overlay {
|
.backdrop-overlay {
|
||||||
mask-image: linear-gradient(180deg, rgba(0, 0, 0, .85), 70%, rgba(0, 0, 0, 0));
|
mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.85), 70%, rgba(0, 0, 0, 0));
|
||||||
-webkit-mask-image: linear-gradient(180deg, rgba(0, 0, 0, .85), 70%, rgba(0, 0, 0, 0));
|
-webkit-mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.85), 70%, rgba(0, 0, 0, 0));
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -40,7 +25,6 @@
|
|||||||
transform-origin: center left;
|
transform-origin: center left;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* this is my own take */
|
|
||||||
.rating-value {
|
.rating-value {
|
||||||
flex-wrap: wrap;
|
flex-wrap: wrap;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
@@ -53,21 +37,13 @@
|
|||||||
#slides-container {
|
#slides-container {
|
||||||
width: calc(100vw - (2 * var(--sidePadding)));
|
width: calc(100vw - (2 * var(--sidePadding)));
|
||||||
height: 62%;
|
height: 62%;
|
||||||
top: calc(1.5 * var(--appBarHeight));
|
top: var(--appBarHeight);
|
||||||
border: var(--defaultBorder);
|
border: var(--defaultBorder);
|
||||||
border-radius: var(--largerRadius);
|
border-radius: var(--largerRadius);
|
||||||
transition: all .125s, border 0s;
|
transition: all 0.125s, border 0s;
|
||||||
user-select: none;
|
user-select: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
.layout-tv #slides-container {
|
|
||||||
top: 0em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.layout-mobile #slides-container {
|
|
||||||
top: 10em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.logo-container {
|
.logo-container {
|
||||||
top: 10vh;
|
top: 10vh;
|
||||||
}
|
}
|
||||||
@@ -80,7 +56,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.backdrop-overlay {
|
.backdrop-overlay {
|
||||||
background: linear-gradient(0deg, rgba(0, 0, 0, .85), 40%, transparent);
|
background: linear-gradient(0deg, rgba(0, 0, 0, 0.85), 40%, transparent);
|
||||||
}
|
}
|
||||||
|
|
||||||
@media only screen and (max-width: 767px) and (orientation: portrait) {
|
@media only screen and (max-width: 767px) and (orientation: portrait) {
|
||||||
@@ -89,10 +65,6 @@
|
|||||||
transform: translateX(-50%) scale(0.8);
|
transform: translateX(-50%) scale(0.8);
|
||||||
}
|
}
|
||||||
|
|
||||||
.info-container {
|
|
||||||
/* top: calc(50% + 6vh); */
|
|
||||||
}
|
|
||||||
|
|
||||||
.tomato-rating {
|
.tomato-rating {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
@@ -108,8 +80,24 @@
|
|||||||
|
|
||||||
@media (min-width: 75em) {
|
@media (min-width: 75em) {
|
||||||
#slides-container {
|
#slides-container {
|
||||||
top: calc(.5 * var(--appBarHeight));
|
top: calc(0.5 * var(--appBarHeight));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* this styles the media bar plugin - end */
|
@media only screen and (max-height: 767px) and (orientation: landscape) {
|
||||||
|
#slides-container {
|
||||||
|
height: 57%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.logo-container {
|
||||||
|
top: 3%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media only screen and (max-width: 767px) and (orientation: portrait) {
|
||||||
|
.logo-container {
|
||||||
|
top: 50%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* this styles the media bar plugin - end */
|
||||||
|
|||||||
BIN
Theme/assets/img/library-covers/mixed.webp
Normal file
BIN
Theme/assets/img/library-covers/mixed.webp
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 28 KiB |
BIN
Theme/assets/img/library-covers/originals/mixed.jpg
Normal file
BIN
Theme/assets/img/library-covers/originals/mixed.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 192 KiB |
BIN
Theme/assets/img/library-covers/originals/recordedmovies.jpg
Normal file
BIN
Theme/assets/img/library-covers/originals/recordedmovies.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 63 KiB |
BIN
Theme/assets/img/library-covers/originals/recordedtv.jpg
Normal file
BIN
Theme/assets/img/library-covers/originals/recordedtv.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 227 KiB |
BIN
Theme/assets/img/library-covers/recordedmovies.webp
Normal file
BIN
Theme/assets/img/library-covers/recordedmovies.webp
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 15 KiB |
BIN
Theme/assets/img/library-covers/recordedtv.webp
Normal file
BIN
Theme/assets/img/library-covers/recordedtv.webp
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 56 KiB |
@@ -1,11 +1,12 @@
|
|||||||
# 🧩 Add-on: Custom media covers for ElegantFin
|
# 🧩 Add-on: Custom media covers for ElegantFin
|
||||||
|
|
||||||
This is a Jellyfin add-on that allows you to customise My Media cover arts. This is an experimental feature, so limited support will be provided.
|
This is a Jellyfin add-on that allows you to customise My Media cover arts. This is an experimental feature, so limited support will be provided.
|
||||||
|
|
||||||
#### **Author:** [lscambo13](https://github.com/lscambo13)
|
#### **Author:** [lscambo13](https://github.com/lscambo13)
|
||||||
|
|
||||||
<hr>
|
<hr>
|
||||||
|
|
||||||
### 🖼️ Presets with previews: Modify these styles according to your own liking
|
### 🖼️ Presets with previews: Modify these styles according to your own liking
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary><i>This is how the covers look without this add-on.</i></summary>
|
<summary><i>This is how the covers look without this add-on.</i></summary>
|
||||||
@@ -50,6 +51,9 @@ This is a Jellyfin add-on that allows you to customise My Media cover arts. This
|
|||||||
--colorOverlayHomevideosCover: transparent;
|
--colorOverlayHomevideosCover: transparent;
|
||||||
--colorOverlayBooksCover: transparent;
|
--colorOverlayBooksCover: transparent;
|
||||||
--colorOverlayFoldersCover: transparent;
|
--colorOverlayFoldersCover: transparent;
|
||||||
|
--colorOverlayMixedCover: transparent;
|
||||||
|
--colorOverlayRecordedmoviesCover: transparent;
|
||||||
|
--colorOverlayRecordedtvCover: transparent;
|
||||||
--urlMoviesCover: transparent;
|
--urlMoviesCover: transparent;
|
||||||
--urlTvshowsCover: transparent;
|
--urlTvshowsCover: transparent;
|
||||||
--urlLivetvCover: transparent;
|
--urlLivetvCover: transparent;
|
||||||
@@ -59,6 +63,9 @@ This is a Jellyfin add-on that allows you to customise My Media cover arts. This
|
|||||||
--urlHomevideosCover: transparent;
|
--urlHomevideosCover: transparent;
|
||||||
--urlBooksCover: transparent;
|
--urlBooksCover: transparent;
|
||||||
--urlFoldersCover: transparent;
|
--urlFoldersCover: transparent;
|
||||||
|
--urlMixedCover: transparent;
|
||||||
|
--urlRecordedmoviesCover: transparent;
|
||||||
|
--urlRecordedtvCover: transparent;
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -79,6 +86,9 @@ This is a Jellyfin add-on that allows you to customise My Media cover arts. This
|
|||||||
--colorOverlayHomevideosCover: transparent;
|
--colorOverlayHomevideosCover: transparent;
|
||||||
--colorOverlayBooksCover: transparent;
|
--colorOverlayBooksCover: transparent;
|
||||||
--colorOverlayFoldersCover: transparent;
|
--colorOverlayFoldersCover: transparent;
|
||||||
|
--colorOverlayMixedCover: transparent;
|
||||||
|
--colorOverlayRecordedmoviesCover: transparent;
|
||||||
|
--colorOverlayRecordedtvCover: transparent;
|
||||||
--urlMoviesCover: var(--cardBackgroundGradient);
|
--urlMoviesCover: var(--cardBackgroundGradient);
|
||||||
--urlTvshowsCover: var(--cardBackgroundGradient);
|
--urlTvshowsCover: var(--cardBackgroundGradient);
|
||||||
--urlLivetvCover: var(--cardBackgroundGradient);
|
--urlLivetvCover: var(--cardBackgroundGradient);
|
||||||
@@ -88,6 +98,9 @@ This is a Jellyfin add-on that allows you to customise My Media cover arts. This
|
|||||||
--urlHomevideosCover: var(--cardBackgroundGradient);
|
--urlHomevideosCover: var(--cardBackgroundGradient);
|
||||||
--urlBooksCover: var(--cardBackgroundGradient);
|
--urlBooksCover: var(--cardBackgroundGradient);
|
||||||
--urlFoldersCover: var(--cardBackgroundGradient);
|
--urlFoldersCover: var(--cardBackgroundGradient);
|
||||||
|
--urlMixedCover: var(--cardBackgroundGradient);
|
||||||
|
--urlRecordedmoviesCover: var(--cardBackgroundGradient);
|
||||||
|
--urlRecordedtvCover: var(--cardBackgroundGradient);
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -98,7 +111,6 @@ This is a Jellyfin add-on that allows you to customise My Media cover arts. This
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
|
|
||||||
```
|
```
|
||||||
@import url("https://cdn.jsdelivr.net/gh/lscambo13/ElegantFin@main/Theme/assets/add-ons/custom-media-covers-latest-min.css");
|
@import url("https://cdn.jsdelivr.net/gh/lscambo13/ElegantFin@main/Theme/assets/add-ons/custom-media-covers-latest-min.css");
|
||||||
|
|
||||||
@@ -112,6 +124,9 @@ This is a Jellyfin add-on that allows you to customise My Media cover arts. This
|
|||||||
--colorOverlayHomevideosCover: rgb(39, 90, 185);
|
--colorOverlayHomevideosCover: rgb(39, 90, 185);
|
||||||
--colorOverlayBooksCover: rgb(166, 68, 70);
|
--colorOverlayBooksCover: rgb(166, 68, 70);
|
||||||
--colorOverlayFoldersCover: rgb(173, 60, 113);
|
--colorOverlayFoldersCover: rgb(173, 60, 113);
|
||||||
|
--colorOverlayMixedCover: rgb(194, 58, 58);
|
||||||
|
--colorOverlayRecordedmoviesCover: rgb(52, 52, 52);
|
||||||
|
--colorOverlayRecordedtvCover: rgb(120, 100, 28);
|
||||||
--urlMoviesCover: linear-gradient(0deg, #313131, #585858 25%);
|
--urlMoviesCover: linear-gradient(0deg, #313131, #585858 25%);
|
||||||
--urlTvshowsCover: linear-gradient(0deg, #313131, #585858 25%);
|
--urlTvshowsCover: linear-gradient(0deg, #313131, #585858 25%);
|
||||||
--urlLivetvCover: linear-gradient(0deg, #313131, #585858 25%);
|
--urlLivetvCover: linear-gradient(0deg, #313131, #585858 25%);
|
||||||
@@ -121,6 +136,9 @@ This is a Jellyfin add-on that allows you to customise My Media cover arts. This
|
|||||||
--urlHomevideosCover: linear-gradient(0deg, #313131, #585858 25%);
|
--urlHomevideosCover: linear-gradient(0deg, #313131, #585858 25%);
|
||||||
--urlBooksCover: linear-gradient(0deg, #313131, #585858 25%);
|
--urlBooksCover: linear-gradient(0deg, #313131, #585858 25%);
|
||||||
--urlFoldersCover: linear-gradient(0deg, #313131, #585858 25%);
|
--urlFoldersCover: linear-gradient(0deg, #313131, #585858 25%);
|
||||||
|
--urlMixedCover: linear-gradient(0deg, #313131, #585858 25%);
|
||||||
|
--urlRecordedmoviesCover: linear-gradient(0deg, #313131, #585858 25%);
|
||||||
|
--urlRecordedtvCover: linear-gradient(0deg, #313131, #585858 25%);
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -128,9 +146,9 @@ This is a Jellyfin add-on that allows you to customise My Media cover arts. This
|
|||||||
|
|
||||||
<hr>
|
<hr>
|
||||||
|
|
||||||
### 👇 How to enable this add-on?
|
### 👇 How to enable this add-on?
|
||||||
|
|
||||||
- Paste the following at the end in Custom CSS code box:
|
- Paste the following at the end in Custom CSS code box:
|
||||||
|
|
||||||
```
|
```
|
||||||
@import url("https://cdn.jsdelivr.net/gh/lscambo13/ElegantFin@main/Theme/assets/add-ons/custom-media-covers-latest-min.css");
|
@import url("https://cdn.jsdelivr.net/gh/lscambo13/ElegantFin@main/Theme/assets/add-ons/custom-media-covers-latest-min.css");
|
||||||
@@ -138,11 +156,9 @@ This is a Jellyfin add-on that allows you to customise My Media cover arts. This
|
|||||||
|
|
||||||
<hr>
|
<hr>
|
||||||
|
|
||||||
### ⚙️ How to configure this add-on?
|
### ⚙️ How to configure this add-on?
|
||||||
|
|
||||||
- Remember, you do not need to configure anything if you're happy with the default set of images.
|
|
||||||
|
|
||||||
|
|
||||||
|
- Remember, you do not need to configure anything if you're happy with the default set of images.
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary><i>Click here to reveal.</i></summary>
|
<summary><i>Click here to reveal.</i></summary>
|
||||||
@@ -168,6 +184,9 @@ This is a Jellyfin add-on that allows you to customise My Media cover arts. This
|
|||||||
--colorOverlayHomevideosCover: rgb();
|
--colorOverlayHomevideosCover: rgb();
|
||||||
--colorOverlayBooksCover: rgb();
|
--colorOverlayBooksCover: rgb();
|
||||||
--colorOverlayFoldersCover: rgb();
|
--colorOverlayFoldersCover: rgb();
|
||||||
|
--colorOverlayMixedCover: rgb();
|
||||||
|
--colorOverlayRecordedmoviesCover: rgb();
|
||||||
|
--colorOverlayRecordedtvCover: rgb();
|
||||||
|
|
||||||
<!-- cover images; input the url pointing to an image. -->
|
<!-- cover images; input the url pointing to an image. -->
|
||||||
|
|
||||||
@@ -179,8 +198,12 @@ This is a Jellyfin add-on that allows you to customise My Media cover arts. This
|
|||||||
--urlHomevideosCover: url();
|
--urlHomevideosCover: url();
|
||||||
--urlBooksCover: url();
|
--urlBooksCover: url();
|
||||||
--urlFoldersCover: url();
|
--urlFoldersCover: url();
|
||||||
|
--urlMixedCover: url();
|
||||||
|
--urlRecordedmoviesCover: url();
|
||||||
|
--urlRecordedtvCover: url();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
```
|
```
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
@@ -191,11 +214,12 @@ This is a Jellyfin add-on that allows you to customise My Media cover arts. This
|
|||||||
Suppose you want to modify the Live TV cover art. You'll have to modify the variables named `--colorOverlayLivetvCover` and `--urlLivetvCover`, so that your final configuration will look something like this:
|
Suppose you want to modify the Live TV cover art. You'll have to modify the variables named `--colorOverlayLivetvCover` and `--urlLivetvCover`, so that your final configuration will look something like this:
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
@import url("https://cdn.jsdelivr.net/gh/lscambo13/ElegantFin@main/Theme/assets/add-ons/custom-media-covers-latest-min.css");
|
@import url("https://cdn.jsdelivr.net/gh/lscambo13/ElegantFin@main/Theme/assets/add-ons/custom-media-covers-latest-min.css");
|
||||||
|
|
||||||
:root{
|
:root{
|
||||||
--colorOverlayLivetvCover: rgb(39, 68, 185);
|
--colorOverlayLivetvCover: rgb(39, 68, 185);
|
||||||
--urlLivetvCover: url(https://artworks.thetvdb.com/banners/fanart/original/71663-33.jpg);
|
--urlLivetvCover: url(https://artworks.thetvdb.com/banners/fanart/original/71663-33.jpg);
|
||||||
}
|
}
|
||||||
|
|
||||||
```
|
```
|
||||||
@@ -224,3 +248,4 @@ Suppose you want to modify the Live TV cover art. You'll have to modify the vari
|
|||||||
|
|
||||||
<hr>
|
<hr>
|
||||||
|
|
||||||
|
```
|
||||||
|
|||||||
@@ -1,8 +1,13 @@
|
|||||||
{
|
{
|
||||||
"folders": [
|
"folders": [
|
||||||
{
|
{
|
||||||
"path": "."
|
"path": "."
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"settings": {}
|
"settings": {
|
||||||
|
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
||||||
|
"editor.formatOnSave": true,
|
||||||
|
"prettier.useTabs": false,
|
||||||
|
"prettier.printWidth": 120,
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user