diff --git a/apps/blog/src/assets/i18n/en.json b/apps/blog/src/assets/i18n/en.json index e6570d6e..5314270a 100644 --- a/apps/blog/src/assets/i18n/en.json +++ b/apps/blog/src/assets/i18n/en.json @@ -312,5 +312,10 @@ "section1": "We’ll transfer your article to the CMS and schedule its publication.", "section2": "We’ll also promote it on social media to maximize its reach." } + }, + "relatedArticles": { + "title": "Related Articles", + "previousSlide": "Previous slide", + "nextSlide": "Next slide" } } diff --git a/apps/blog/src/assets/i18n/pl.json b/apps/blog/src/assets/i18n/pl.json index 61acd50b..00aec82a 100644 --- a/apps/blog/src/assets/i18n/pl.json +++ b/apps/blog/src/assets/i18n/pl.json @@ -315,5 +315,10 @@ "section1": "Teraz my zajmiemy się przeniesieniem twojego artykułu do CMS’a i zaplanujemy jego opublikowanie", "section2": "Zajmiemy się również jego promowaniem w mediach społecznościowych, aby jak najwięcej osób mogło skorzystać z wiedzy, którą w nim zawarłeś!" } + }, + "relatedArticles": { + "title": "Powiązane artykuły", + "previousSlide": "Poprzedni slajd", + "nextSlide": "Następny slajd" } } diff --git a/apps/blog/src/styles.scss b/apps/blog/src/styles.scss index 26b764ed..697c9cad 100644 --- a/apps/blog/src/styles.scss +++ b/apps/blog/src/styles.scss @@ -2,3 +2,5 @@ @include cdk.a11y-visually-hidden(); @import '@angular/cdk/overlay-prebuilt.css'; +@import 'ngx-owl-carousel-o/lib/styles/scss/owl.carousel'; +@import 'ngx-owl-carousel-o/lib/styles/scss/owl.theme.default'; diff --git a/libs/blog/articles/feature-related-articles/src/lib/related-articles.component.ts b/libs/blog/articles/feature-related-articles/src/lib/related-articles.component.ts index a3bf36f0..df1a97d1 100644 --- a/libs/blog/articles/feature-related-articles/src/lib/related-articles.component.ts +++ b/libs/blog/articles/feature-related-articles/src/lib/related-articles.component.ts @@ -5,28 +5,88 @@ import { input, OnInit, } from '@angular/core'; +import { TranslocoDirective } from '@jsverse/transloco'; +import { CarouselModule, OwlOptions } from 'ngx-owl-carousel-o'; import { RelatedArticleListStore } from '@angular-love/blog/articles/data-access'; import { UiArticleCardComponent } from '@angular-love/blog/articles/ui-article-card'; +import { ButtonComponent } from '@angular-love/blog/shared/ui-button'; @Component({ selector: 'al-related-articles', template: ` @if (store.isFetchRelatedArticleListLoaded()) { - Related Articles -