diff --git a/src/Ombi/ClientApp/src/app/components/detailed-card/detailed-card.component.html b/src/Ombi/ClientApp/src/app/components/detailed-card/detailed-card.component.html index 7eea11b38..e8412fc1b 100644 --- a/src/Ombi/ClientApp/src/app/components/detailed-card/detailed-card.component.html +++ b/src/Ombi/ClientApp/src/app/components/detailed-card/detailed-card.component.html @@ -14,7 +14,7 @@

{{'MediaDetails.RequestedBy' | translate}} {{request.username}}

-

{{'MediaDetails.OnDate' | translate}} {{request.requestDate | dfnsFormat: 'Ppp'}}

+

{{'MediaDetails.OnDate' | translate}} {{request.requestDate | ombiDate: 'Ppp'}}

{{'MediaDetails.Status' | translate}} {{getStatus(request) | translate}}

diff --git a/src/Ombi/ClientApp/src/app/discover/components/card/discover-card.component.html b/src/Ombi/ClientApp/src/app/discover/components/card/discover-card.component.html index a479b5072..aa1dbdff7 100644 --- a/src/Ombi/ClientApp/src/app/discover/components/card/discover-card.component.html +++ b/src/Ombi/ClientApp/src/app/discover/components/card/discover-card.component.html @@ -1,4 +1,3 @@ -
@@ -43,8 +42,5 @@
- - -
-
+ \ No newline at end of file diff --git a/src/Ombi/ClientApp/src/app/discover/components/discover/discover.component.html b/src/Ombi/ClientApp/src/app/discover/components/discover/discover.component.html index 16a46c0d6..ff650d1dc 100644 --- a/src/Ombi/ClientApp/src/app/discover/components/discover/discover.component.html +++ b/src/Ombi/ClientApp/src/app/discover/components/discover/discover.component.html @@ -1,7 +1,12 @@
+ @defer (on viewport; prefetch on idle) {

{{ 'Discovery.Genres' | translate }}

+ } + @placeholder { + + }

{{ 'Discovery.RecentlyRequestedTab' | translate }}

diff --git a/src/Ombi/ClientApp/src/app/discover/components/recently-requested-list/recently-requested-list.component.html b/src/Ombi/ClientApp/src/app/discover/components/recently-requested-list/recently-requested-list.component.html index 93d66de36..875e34542 100644 --- a/src/Ombi/ClientApp/src/app/discover/components/recently-requested-list/recently-requested-list.component.html +++ b/src/Ombi/ClientApp/src/app/discover/components/recently-requested-list/recently-requested-list.component.html @@ -3,6 +3,7 @@ + @defer (on viewport; prefetch on idle) { + } + @placeholder { + + }
diff --git a/src/Ombi/ClientApp/src/app/issues/components/details-group/details-group.component.html b/src/Ombi/ClientApp/src/app/issues/components/details-group/details-group.component.html index 6d443d0d6..447f44c8d 100644 --- a/src/Ombi/ClientApp/src/app/issues/components/details-group/details-group.component.html +++ b/src/Ombi/ClientApp/src/app/issues/components/details-group/details-group.component.html @@ -2,7 +2,7 @@ {{ issue.subject }} {{ - 'Issues.UserOnDate' | translate: { user: issue.userReported?.userName, date: issue.createdDate | dfnsFormat: 'PP' } + 'Issues.UserOnDate' | translate: { user: issue.userReported?.userName, date: issue.createdDate | ombiDate: 'PP' } }} {{ issue.issueCategory.value }} diff --git a/src/Ombi/ClientApp/src/app/issues/issueDetails.component.html b/src/Ombi/ClientApp/src/app/issues/issueDetails.component.html index 4835a70cb..3b3b4e2f3 100644 --- a/src/Ombi/ClientApp/src/app/issues/issueDetails.component.html +++ b/src/Ombi/ClientApp/src/app/issues/issueDetails.component.html @@ -82,7 +82,7 @@ (click)="deleteComment(comment.id)" >

{{ comment.comment }}

- +
diff --git a/src/Ombi/ClientApp/src/app/media-details/components/movie/movie-details.component.html b/src/Ombi/ClientApp/src/app/media-details/components/movie/movie-details.component.html index 3497792d5..9ed5d7959 100644 --- a/src/Ombi/ClientApp/src/app/media-details/components/movie/movie-details.component.html +++ b/src/Ombi/ClientApp/src/app/media-details/components/movie/movie-details.component.html @@ -292,7 +292,12 @@
+ @defer (on viewport; prefetch on idle) { {{ movie.overview }} + } + @placeholder { + + }
@@ -300,13 +305,23 @@
- + @defer (on viewport; prefetch on idle) { + + } + @placeholder { + + }
- + @defer (on viewport; prefetch on idle) { + + } + @placeholder { + + }
@@ -320,6 +335,7 @@
+ @defer (on viewport; prefetch on idle) { {{ 'MediaDetails.Trailers' | translate }} @@ -335,6 +351,10 @@ + } + @placeholder { + + }
@@ -345,6 +365,7 @@ + @defer (on viewport; prefetch on idle) { @@ -398,6 +419,10 @@ + } + @placeholder { + + } diff --git a/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.html b/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.html index 232f46613..ae5dc06fa 100644 --- a/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.html +++ b/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.html @@ -49,8 +49,8 @@
{{ 'MediaDetails.RequestDate' | translate }} - {{ request.requestedDate4k | dfnsFormat: 'PP' }} - {{ request.requestedDate | dfnsFormat: 'PP' }} + {{ request.requestedDate4k | ombiDate: 'PP' }} + {{ request.requestedDate | ombiDate: 'PP' }}
@@ -90,11 +90,11 @@
{{ 'MediaDetails.TheatricalRelease' | translate }} - {{ movie.releaseDate | dfnsFormat: 'PP' }} + {{ movie.releaseDate | ombiDate: 'PP' }}
{{ 'MediaDetails.DigitalRelease' | translate }} - {{ movie.digitalReleaseDate | dfnsFormat: 'PP' }} + {{ movie.digitalReleaseDate | ombiDate: 'PP' }}
diff --git a/src/Ombi/ClientApp/src/app/media-details/components/shared/top-banner/top-banner.component.html b/src/Ombi/ClientApp/src/app/media-details/components/shared/top-banner/top-banner.component.html index d31c97153..70095b553 100644 --- a/src/Ombi/ClientApp/src/app/media-details/components/shared/top-banner/top-banner.component.html +++ b/src/Ombi/ClientApp/src/app/media-details/components/shared/top-banner/top-banner.component.html @@ -8,7 +8,7 @@

{{ title }} - ({{ releaseDate | dfnsFormat: 'P' }}) + ({{ releaseDate | ombiDate: 'P' }})

{{ tagline }}

diff --git a/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.html b/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.html index 0fa379759..6d258c019 100644 --- a/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.html +++ b/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.html @@ -31,7 +31,7 @@ {{ tv.status | translateStatus }}
{{ 'MediaDetails.FirstAired' | translate }} - {{ tv.firstAired | dfnsFormat: 'PP' }} + {{ tv.firstAired | ombiDate: 'PP' }}
diff --git a/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-request-grid/tv-request-grid.component.html b/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-request-grid/tv-request-grid.component.html index f911b2708..53335f435 100644 --- a/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-request-grid/tv-request-grid.component.html +++ b/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-request-grid/tv-request-grid.component.html @@ -48,7 +48,7 @@ {{ 'Requests.AirDate' | translate }} - {{ element.airDate | dfnsFormat: 'P' }} + {{ element.airDate | ombiDate: 'P' }} diff --git a/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-requests/tv-requests-panel.component.html b/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-requests/tv-requests-panel.component.html index ac5e996b0..dfd2154b9 100644 --- a/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-requests/tv-requests-panel.component.html +++ b/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-requests/tv-requests-panel.component.html @@ -10,7 +10,7 @@ | translate : { user: request.requestedUser.userAlias, - date: request.requestedDate | dfnsFormat: 'PP' + date: request.requestedDate | ombiDate: 'PP' } }} - {{ request.deniedReason }} @@ -35,7 +35,7 @@ {{ 'Requests.AirDate' | translate }} - {{ element.airDate | dfnsFormat: 'P' }} + {{ element.airDate | ombiDate: 'P' }} diff --git a/src/Ombi/ClientApp/src/app/media-details/components/tv/tv-details.component.html b/src/Ombi/ClientApp/src/app/media-details/components/tv/tv-details.component.html index 192507c45..4661c9f6a 100644 --- a/src/Ombi/ClientApp/src/app/media-details/components/tv/tv-details.component.html +++ b/src/Ombi/ClientApp/src/app/media-details/components/tv/tv-details.component.html @@ -192,12 +192,10 @@
- @defer { + @defer (on viewport; prefetch on idle) { } @placeholder { -
- -
+ }
@@ -216,14 +214,14 @@ - @defer (on viewport) { + @defer (on viewport; prefetch on idle) { } @placeholder { -
+
} diff --git a/src/Ombi/ClientApp/src/app/media-details/media-details.component.scss b/src/Ombi/ClientApp/src/app/media-details/media-details.component.scss index a171d990f..196a8f93a 100644 --- a/src/Ombi/ClientApp/src/app/media-details/media-details.component.scss +++ b/src/Ombi/ClientApp/src/app/media-details/media-details.component.scss @@ -357,8 +357,13 @@ .media-row .btn-spacing{ margin-right:0; } - + .media-row span{ width:100%; } } + +.placeholder { + height: 100px; + display: block; +} diff --git a/src/Ombi/ClientApp/src/app/media-details/media-details.module.ts b/src/Ombi/ClientApp/src/app/media-details/media-details.module.ts index c7f166bce..91ff4978b 100644 --- a/src/Ombi/ClientApp/src/app/media-details/media-details.module.ts +++ b/src/Ombi/ClientApp/src/app/media-details/media-details.module.ts @@ -13,6 +13,7 @@ import { AuthGuard } from "../auth/auth.guard"; import { ArtistDetailsComponent } from "./components/artist/artist-details.component"; import { ReactiveFormsModule } from "@angular/forms"; import { ImageComponent } from "app/components"; +import { SkeletonModule } from "primeng/skeleton"; const routes: Routes = [ @@ -29,6 +30,7 @@ const routes: Routes = [ PipeModule, CarouselModule, ImageComponent, + SkeletonModule, ], declarations: [ ...fromComponents.components diff --git a/src/Ombi/ClientApp/src/app/pipes/OmbiDatePipe.ts b/src/Ombi/ClientApp/src/app/pipes/OmbiDatePipe.ts new file mode 100644 index 000000000..d7e902242 --- /dev/null +++ b/src/Ombi/ClientApp/src/app/pipes/OmbiDatePipe.ts @@ -0,0 +1,17 @@ +import { Pipe, PipeTransform } from "@angular/core"; +import { FormatPipe } from 'ngx-date-fns'; + +@Pipe({ + name: "ombiDate", +}) +export class OmbiDatePipe implements PipeTransform { + + constructor( + private FormatPipe: FormatPipe, + ) {} + + public transform(value: string, format: string ) { + const date = new Date(value); + return this.FormatPipe.transform(date, format); + } +} diff --git a/src/Ombi/ClientApp/src/app/pipes/ThousandShortPipe.ts b/src/Ombi/ClientApp/src/app/pipes/ThousandShortPipe.ts index 14e3ab336..1bc948fc5 100644 --- a/src/Ombi/ClientApp/src/app/pipes/ThousandShortPipe.ts +++ b/src/Ombi/ClientApp/src/app/pipes/ThousandShortPipe.ts @@ -5,19 +5,19 @@ }) export class ThousandShortPipe implements PipeTransform { transform(input: any, args?: any): any { - var exp, rounded, + var exp, suffixes = ['k', 'M', 'G', 'T', 'P', 'E']; - + if (Number.isNaN(input)) { return null; } - + if (input < 1000) { return input; } - + exp = Math.floor(Math.log(input) / Math.log(1000)); - + return (input / Math.pow(1000, exp)).toFixed(args) + suffixes[exp - 1]; } } diff --git a/src/Ombi/ClientApp/src/app/pipes/pipe.module.ts b/src/Ombi/ClientApp/src/app/pipes/pipe.module.ts index 7c159f269..b87308023 100644 --- a/src/Ombi/ClientApp/src/app/pipes/pipe.module.ts +++ b/src/Ombi/ClientApp/src/app/pipes/pipe.module.ts @@ -5,11 +5,14 @@ import { ThousandShortPipe } from './ThousandShortPipe'; import { SafePipe } from './SafePipe'; import { QualityPipe } from './QualityPipe'; import { OrderPipe } from './OrderPipe'; +import { OmbiDatePipe } from './OmbiDatePipe'; +import { FormatPipeModule, FormatPipe } from 'ngx-date-fns'; @NgModule({ - imports: [], - declarations: [HumanizePipe, ThousandShortPipe, SafePipe, QualityPipe, TranslateStatusPipe, OrderPipe], - exports: [HumanizePipe, ThousandShortPipe, SafePipe, QualityPipe, TranslateStatusPipe, OrderPipe], + imports: [FormatPipeModule], + declarations: [HumanizePipe, ThousandShortPipe, SafePipe, QualityPipe, TranslateStatusPipe, OrderPipe, OmbiDatePipe], + exports: [HumanizePipe, ThousandShortPipe, SafePipe, QualityPipe, TranslateStatusPipe, OrderPipe, OmbiDatePipe], + providers: [FormatPipe], }) export class PipeModule { public static forRoot(): ModuleWithProviders { diff --git a/src/Ombi/ClientApp/src/app/requests-list/components/albums-grid/albums-grid.component.html b/src/Ombi/ClientApp/src/app/requests-list/components/albums-grid/albums-grid.component.html index 646d4de56..6c0d8db16 100644 --- a/src/Ombi/ClientApp/src/app/requests-list/components/albums-grid/albums-grid.component.html +++ b/src/Ombi/ClientApp/src/app/requests-list/components/albums-grid/albums-grid.component.html @@ -85,7 +85,7 @@ {{ 'Requests.AlbumName' | translate }} - {{ element.title }} ({{ element.releaseDate | dfnsFormat: 'P' }}) + {{ element.title }} ({{ element.releaseDate | ombiDate: 'P' }}) @@ -95,7 +95,7 @@ {{ 'Requests.RequestDate' | translate }} - {{ element.requestedDate | dfnsFormat: 'PP' }} + {{ element.requestedDate | ombiDate: 'PP' }} diff --git a/src/Ombi/ClientApp/src/app/requests-list/components/movies-grid/movies-grid.component.html b/src/Ombi/ClientApp/src/app/requests-list/components/movies-grid/movies-grid.component.html index 389d814ee..afab8f713 100644 --- a/src/Ombi/ClientApp/src/app/requests-list/components/movies-grid/movies-grid.component.html +++ b/src/Ombi/ClientApp/src/app/requests-list/components/movies-grid/movies-grid.component.html @@ -112,7 +112,7 @@ {{ 'Requests.RequestsTitle' | translate }} - {{ element.title }} ({{ element.releaseDate | dfnsFormat: 'P' }}) + {{ element.title }} ({{ element.releaseDate | ombiDate: 'P' }}) @@ -124,7 +124,7 @@ {{ 'Requests.RequestDate' | translate }} - {{ getRequestDate(element) | dfnsFormat: 'PP' }} + {{ getRequestDate(element) | ombiDate: 'PP' }} diff --git a/src/Ombi/ClientApp/src/app/requests-list/components/tv-grid/tv-grid.component.html b/src/Ombi/ClientApp/src/app/requests-list/components/tv-grid/tv-grid.component.html index 12b2f8d0b..c11b86ca8 100644 --- a/src/Ombi/ClientApp/src/app/requests-list/components/tv-grid/tv-grid.component.html +++ b/src/Ombi/ClientApp/src/app/requests-list/components/tv-grid/tv-grid.component.html @@ -103,7 +103,7 @@ {{ 'Requests.RequestDate' | translate }} - {{ element.requestedDate | dfnsFormat: 'PP' }} + {{ element.requestedDate | ombiDate: 'PP' }} diff --git a/src/Ombi/ClientApp/src/app/requests/movierequests.component.html b/src/Ombi/ClientApp/src/app/requests/movierequests.component.html index 55969dc57..67d8ecd29 100644 --- a/src/Ombi/ClientApp/src/app/requests/movierequests.component.html +++ b/src/Ombi/ClientApp/src/app/requests/movierequests.component.html @@ -49,7 +49,7 @@
- {{ 'Requests.TheatricalRelease' | translate: { date: request.releaseDate | dfnsFormat: 'PP' } }} + {{ 'Requests.TheatricalRelease' | translate: { date: request.releaseDate | ombiDate: 'PP' } }}
- {{ 'Requests.DigitalRelease' | translate: { date: request.digitalReleaseDate | dfnsFormat: 'PP' } }} + {{ 'Requests.DigitalRelease' | translate: { date: request.digitalReleaseDate | ombiDate: 'PP' } }}
-
{{ 'Requests.RequestDate' | translate }} {{ request.requestedDate | dfnsFormat: 'PP' }}
+
{{ 'Requests.RequestDate' | translate }} {{ request.requestedDate | ombiDate: 'PP' }}

diff --git a/src/Ombi/ClientApp/src/app/requests/music/musicrequests.component.html b/src/Ombi/ClientApp/src/app/requests/music/musicrequests.component.html index 80de8354f..27f4fbd31 100644 --- a/src/Ombi/ClientApp/src/app/requests/music/musicrequests.component.html +++ b/src/Ombi/ClientApp/src/app/requests/music/musicrequests.component.html @@ -97,8 +97,8 @@
-
{{ 'Requests.ReleaseDate' | translate: { date: request.releaseDate | dfnsFormat: 'PP' } }}
-
{{ 'Requests.RequestDate' | translate }} {{ request.requestedDate | dfnsFormat: 'PP' }}
+
{{ 'Requests.ReleaseDate' | translate: { date: request.releaseDate | ombiDate: 'PP' } }}
+
{{ 'Requests.RequestDate' | translate }} {{ request.requestedDate | ombiDate: 'PP' }}