Merge branch 'feature/pr-flush' of https://github.com/Kareadita/Kavita into feature/pr-flush

This commit is contained in:
Joseph Milazzo 2024-12-08 10:56:03 -06:00
commit 2a43deea24
12 changed files with 79 additions and 32 deletions

View file

@ -128,7 +128,7 @@ jobs:
- name: Compile dotnet app
uses: actions/setup-dotnet@v4
with:
dotnet-version: 8.0.x
dotnet-version: 8.0.x
- name: Install Swashbuckle CLI
run: dotnet tool install -g Swashbuckle.AspNetCore.Cli
@ -137,6 +137,7 @@ jobs:
- name: Login to Docker Hub
uses: docker/login-action@v3
if: ${{ github.repository_owner == 'Kareadita' }}
with:
username: ${{ secrets.DOCKER_HUB_USERNAME }}
password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }}
@ -155,20 +156,33 @@ jobs:
id: buildx
uses: docker/setup-buildx-action@v3
- name: Extract metadata (tags, labels) for Docker
id: docker_meta_nightly
uses: docker/metadata-action@v5
with:
tags: |
type=raw,value=nightly
type=raw,value=nightly-${{ steps.parse-version.outputs.VERSION }}
images: |
name=jvmilazz0/kavita,enable=${{ github.repository_owner == 'Kareadita' }}
name=ghcr.io/${{ github.repository }}
- name: Build and push
id: docker_build
uses: docker/build-push-action@v5
uses: docker/build-push-action@v6
with:
context: .
platforms: linux/amd64,linux/arm/v7,linux/arm64
push: true
tags: jvmilazz0/kavita:nightly, jvmilazz0/kavita:nightly-${{ steps.parse-version.outputs.VERSION }}, ghcr.io/kareadita/kavita:nightly, ghcr.io/kareadita/kavita:nightly-${{ steps.parse-version.outputs.VERSION }}
tags: ${{ steps.docker_meta_nightly.outputs.tags }}
labels: ${{ steps.docker_meta_nightly.outputs.labels }}
- name: Image digest
run: echo ${{ steps.docker_build.outputs.digest }}
- name: Notify Discord
uses: rjstone/discord-webhook-notify@v1
if: ${{ github.repository_owner == 'Kareadita' }}
with:
severity: info
description: v${{steps.get-version.outputs.assembly-version}} - ${{ steps.findPr.outputs.title }}

View file

@ -114,6 +114,7 @@ jobs:
- name: Login to Docker Hub
uses: docker/login-action@v3
if: ${{ github.repository_owner == 'Kareadita' }}
with:
username: ${{ secrets.DOCKER_HUB_USERNAME }}
password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }}
@ -132,23 +133,47 @@ jobs:
id: buildx
uses: docker/setup-buildx-action@v3
- name: Extract metadata (tags, labels) for Docker
id: docker_meta_stable
uses: docker/metadata-action@v5
with:
tags: |
type=raw,value=latest
type=raw,value=${{ steps.parse-version.outputs.VERSION }}
images: |
name=jvmilazz0/kavita,enable=${{ github.repository_owner == 'Kareadita' }}
name=ghcr.io/${{ github.repository }}
- name: Build and push stable
id: docker_build_stable
uses: docker/build-push-action@v5
uses: docker/build-push-action@v6
with:
context: .
platforms: linux/amd64,linux/arm/v7,linux/arm64
push: true
tags: jvmilazz0/kavita:latest, jvmilazz0/kavita:${{ steps.parse-version.outputs.VERSION }}, ghcr.io/kareadita/kavita:latest, ghcr.io/kareadita/kavita:${{ steps.parse-version.outputs.VERSION }}
tags: ${{ steps.docker_meta_stable.outputs.tags }}
labels: ${{ steps.docker_meta_stable.outputs.labels }}
- name: Extract metadata (tags, labels) for Docker
id: docker_meta_nightly
uses: docker/metadata-action@v5
with:
tags: |
type=raw,value=nightly
type=raw,value=nightly-${{ steps.parse-version.outputs.VERSION }}
images: |
name=jvmilazz0/kavita,enable=${{ github.repository_owner == 'Kareadita' }}
name=ghcr.io/${{ github.repository }}
- name: Build and push nightly
id: docker_build_nightly
uses: docker/build-push-action@v5
uses: docker/build-push-action@v6
with:
context: .
platforms: linux/amd64,linux/arm/v7,linux/arm64
push: true
tags: jvmilazz0/kavita:nightly, jvmilazz0/kavita:nightly-${{ steps.parse-version.outputs.VERSION }}, ghcr.io/kareadita/kavita:nightly, ghcr.io/kareadita/kavita:nightly-${{ steps.parse-version.outputs.VERSION }}
tags: ${{ steps.docker_meta_nightly.outputs.tags }}
labels: ${{ steps.docker_meta_nightly.outputs.labels }}
- name: Image digest
run: echo ${{ steps.docker_build_stable.outputs.digest }}

View file

@ -1,14 +1,14 @@
<ng-container *transloco="let t; read: 'actionable'">
@if (actions.length > 0) {
@if ((utilityService.activeBreakpoint$ | async)! <= Breakpoint.Tablet) {
<button [disabled]="disabled" class="btn {{btnClass}}" id="actions-{{labelBy}}"
<button [disabled]="disabled" class="btn {{btnClass}} px-3" id="actions-{{labelBy}}"
(click)="openMobileActionableMenu($event)">
{{label}}
<i class="fa {{iconClass}}" aria-hidden="true"></i>
</button>
} @else {
<div ngbDropdown container="body" class="d-inline-block">
<button [disabled]="disabled" class="btn {{btnClass}}" id="actions-{{labelBy}}" ngbDropdownToggle
<button [disabled]="disabled" class="btn {{btnClass}} px-3" id="actions-{{labelBy}}" ngbDropdownToggle
(click)="preventEvent($event)">
{{label}}
<i class="fa {{iconClass}}" aria-hidden="true"></i>

View file

@ -16,7 +16,7 @@
{{review.isExternal ? t('external-review') : t('local-review')}}
</h6>-->
<p class="card-text no-images">
<app-read-more [text]="(review.isExternal ? review.bodyJustText : review.body) || ''" [maxLength]="150" [showToggle]="false"></app-read-more>
<app-read-more [text]="(review.isExternal ? review.bodyJustText : review.body) || ''" [maxLength]="140" [showToggle]="false"></app-read-more>
</p>
</div>
</div>

View file

@ -7,7 +7,7 @@
.companion-bar {
transition: all var(--side-nav-companion-bar-transistion);
margin-left: 60px;
margin-left: 45px;
overflow-y: hidden;
overflow-x: hidden;
height: calc(var(--vh)* 100 - var(--nav-mobile-offset));

View file

@ -85,7 +85,7 @@
</div>
<div class="mt-2 mb-3">
<app-read-more [text]="chapter.summary || ''" [maxLength]="utilityService.getActiveBreakpoint() >= Breakpoint.Desktop ? 585 : 250"></app-read-more>
<app-read-more [text]="chapter.summary || ''" [maxLength]="utilityService.getActiveBreakpoint() >= Breakpoint.Desktop ? 170 : 200"></app-read-more>
</div>
<div class="mt-2">

View file

@ -41,7 +41,7 @@
<div class="col-md-10 col-xs-8 col-sm-6 mt-2">
@if (summary.length > 0) {
<div class="mb-2">
<app-read-more [text]="summary" [maxLength]="(utilityService.activeBreakpoint$ | async)! >= Breakpoint.Desktop ? 585 : 200"></app-read-more>
<app-read-more [text]="summary" [maxLength]="(utilityService.activeBreakpoint$ | async)! >= Breakpoint.Desktop ? 170 : 200"></app-read-more>
</div>
@if (collectionTag.source !== ScrobbleProvider.Kavita) {

View file

@ -124,8 +124,8 @@
<!-- Summary row-->
<div class="row g-0 mt-2">
<app-read-more [text]="readingListSummary" [maxLength]="(utilityService.activeBreakpoint$ | async)! >= Breakpoint.Desktop ? 585 : 200"></app-read-more>
<div class="row g-0 my-2">
<app-read-more [text]="readingListSummary" [maxLength]="(utilityService.activeBreakpoint$ | async)! >= Breakpoint.Desktop ? 170 : 200"></app-read-more>
</div>
@if (characters$ | async; as characters) {

View file

@ -109,7 +109,7 @@
</div>
<div class="mt-2 mb-3">
<app-read-more [text]="seriesMetadata.summary || ''" [maxLength]="(utilityService.activeBreakpoint$ | async)! >= Breakpoint.Desktop ? 585 : 200"></app-read-more>
<app-read-more [text]="seriesMetadata.summary || ''" [maxLength]="(utilityService.activeBreakpoint$ | async)! >= Breakpoint.Desktop ? 170 : 200"></app-read-more>
</div>
<div class="mt-2 upper-details">

View file

@ -1,3 +1,5 @@
@import "../../../theme/variables";
.blur-text {
color: transparent;
text-shadow: 0 0 5px var(--body-text-color);
@ -8,5 +10,10 @@
div {
word-break: break-word;
max-width: 75ch;
@media (max-width: $grid-breakpoints-sm) {
max-width: 50ch;
}
}
}

View file

@ -89,7 +89,7 @@
</div>
<div class="mt-2 mb-3">
<app-read-more [text]="volume.chapters[0].summary || ''" [maxLength]="utilityService.getActiveBreakpoint() >= Breakpoint.Desktop ? 585 : 250"></app-read-more>
<app-read-more [text]="volume.chapters[0].summary || ''" [maxLength]="utilityService.getActiveBreakpoint() >= Breakpoint.Desktop ? 170 : 200"></app-read-more>
</div>
<div class="mt-2">

View file

@ -12,6 +12,7 @@
border-radius: var(--side-nav-border-radius);
transition: width var(--side-nav-openclose-transition), background-color var(--side-nav-bg-color-transition), border-color var(--side-nav-border-transition);
border: var(--side-nav-border);
overflow: hidden;
&::-webkit-scrollbar {
visibility: hidden;
@ -27,7 +28,7 @@
}
//START closed state of the sidebar
&.closed {
width: 4.0625rem;
width: 2.825rem;
overflow-x: hidden;
overflow-y: hidden;
background-color: var(--side-nav-closed-bg-color);
@ -49,11 +50,6 @@
opacity: 0;
}
.side-nav-text {
opacity: 0;
display: none;
}
.card-actions {
opacity: 0;
display: none;
@ -64,7 +60,7 @@
//END closed state of the sidebar
//START sidebar
.side-nav {
overflow-y: hidden;
overflow: hidden;
height: 100%;
scrollbar-gutter: stable;
scrollbar-width: thin;
@ -73,7 +69,7 @@
position: relative;
align-items: center;
display: flex;
justify-content: space-between;
justify-content: start;
width: 100%;
height: auto;
min-height: 2.6rem;
@ -89,6 +85,7 @@
&:first-of-type {
text-align: center;
width: 2.5rem;
min-width: 2.5rem;
margin-left: 0.3rem;
}
@ -101,7 +98,7 @@
align-items: center;
height: 100%;
justify-content: inherit;
width: 100%;
padding: 0 0.625rem;
i {
font-size: var(--side-nav-icon-size);
@ -291,10 +288,6 @@
.side-nav-item {
width: 100%;
padding: 0;
display: block;
line-height: 2.5rem;
text-align: center;
min-height: unset;
color: var(--side-nav-item-closed-color);
&:hover {
@ -317,11 +310,13 @@
margin: 0;
left: 0;
top: 0;
transition: width var(--side-nav-openclose-transition);
transition: width var(--side-nav-openclose-transition), visibility var(--side-nav-openclose-transition);
z-index: 1050;
overflow-x: hidden;
overflow-y: auto;
border: var(--side-nav-mobile-border);
border-radius: 0rem;
visibility: visible;
&.preference {
background-color: unset;
@ -349,8 +344,10 @@
&.closed {
width: 0;
background-color: var(--side-nav-mobile-bg-color);
overflow: hidden;
box-shadow: none;
visibility: hidden;
}
.side-nav {
@ -383,9 +380,13 @@
left: 0;
top: 0;
z-index: 1041;
visibility: visible;
opacity: 1;
transition: visibility var(--side-nav-openclose-transition), opacity var(--side-nav-openclose-transition);
&.closed {
display: none;
visibility: hidden;
opacity: 0;
}
}
}