Skip to content

Commit daea2a9

Browse files
authored
Merge pull request #2538 from exadel-inc/fix/count-reserve-slides
fix(esl-carousel): fix count of slides to be rendered before the first slide
2 parents 4bc8b55 + cd68ea3 commit daea2a9

File tree

2 files changed

+5
-5
lines changed

2 files changed

+5
-5
lines changed

src/modules/esl-carousel/renderers/esl-carousel.default.renderer.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -175,15 +175,15 @@ export class ESLDefaultCarouselRenderer extends ESLCarouselRenderer {
175175
/**
176176
* @returns count of slides to be rendered (reserved) before the first slide
177177
*/
178-
protected calcReserveCount(back?: boolean): number {
178+
protected getReserveCount(back?: boolean): number {
179179
const {size, count, loop, currentIndex} = this;
180180
const freeSlides = size - count;
181181
// no need to reorder if there are no free slides or loop is disabled
182182
if (!loop || !freeSlides) return 0;
183183
// if back option is not set, prefer to reserve slides with respect to semantic order
184184
if (typeof back !== 'boolean') back = !!currentIndex;
185185
// otherwise, ensure that there are at least half of free slides reserved (if the back option is set - round up, otherwise - round down)
186-
return Math.min(count, back ? Math.ceil(freeSlides / 2) : Math.floor(freeSlides / 2));
186+
return back ? Math.ceil(freeSlides / 2) : Math.floor(freeSlides / 2);
187187
}
188188

189189
/**
@@ -192,7 +192,7 @@ export class ESLDefaultCarouselRenderer extends ESLCarouselRenderer {
192192
*/
193193
protected reorder(back?: boolean): void {
194194
const {size, loop, currentIndex, $slides} = this;
195-
const reserve = this.calcReserveCount(back);
195+
const reserve = this.getReserveCount(back);
196196

197197
const index = loop ? currentIndex : 0;
198198
for (let i = 0; i < size; ++i) {

src/modules/esl-carousel/renderers/esl-carousel.grid.renderer.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,8 +96,8 @@ export class ESLGridCarouselRenderer extends ESLDefaultCarouselRenderer {
9696
/**
9797
* @returns count of slides to be rendered (reserved) before the first slide does not include fake slides
9898
*/
99-
protected override calcReserveCount(back?: boolean): number {
100-
const reserve = super.calcReserveCount(back);
99+
protected override getReserveCount(back?: boolean): number {
100+
const reserve = super.getReserveCount(back);
101101
return reserve - (reserve % this.ROWS);
102102
}
103103

0 commit comments

Comments
 (0)