<style>
#container {
width: 100%;
overflow-x: scroll;
}
</style>
<span data-sly-use.scrollingcontainer="com.adobe.cq.wcm.core.components.models.Carousel">
<div id="container">
<div id="content">
<span id="content" data-sly-use.templates="core/wcm/components/commons/v1/templates.html"
data-sly-use.controlsTemplate="controls.html"
data-panelcontainer="${wcmmode.edit && 'scrollingcontainer'}" id="${scrollingcontainer.id}"
class="cmp-scrollingcontainer" role="group" aria-label="${scrollingcontainer.accessibilityLabel}"
aria-live="polite" aria-roledescription="carousel" data-cmp-is="carousel"
data-cmp-autoplay="${(wcmmode.edit || wcmmode.preview) ? '' : scrollingcontainer.autoplay}"
data-cmp-delay="${scrollingcontainer.delay}"
data-cmp-autopause-disabled="${scrollingcontainer.autopauseDisabled}"
data-cmp-data-layer="${scrollingcontainer.data.json}"
data-placeholder-text="${wcmmode.edit && 'Please add Carousel components here' @ i18n}">
<sly data-sly-call="${controlsTemplate.controls @ scrollingcontainer=scrollingcontainer}"
data-sly-test="${scrollingcontainer.controlsPrepended}"></sly>
<div data-sly-test="${scrollingcontainer.items && scrollingcontainer.items.size > 0}"
class="cmp-scrollingcontainer__content" aria-atomic="false"
aria-live="${scrollingcontainer.autoplay ? 'off' : 'polite'}">
<div data-sly-repeat.item="${scrollingcontainer.items}"
data-sly-resource="${item.name @ decorationTagName='div'}" id="${item.id}-tabpanel"
class="${(wcmmode.preview||wcmmode.disabled) && 'cmp-scrollingcontainer__item'}"
role="tabpanel" aria-labelledby="${item.id}-tab" aria-roledescription="slide"
aria-label="${(scrollingcontainer.accessibilityAutoItemTitles && item.title) || 'Slide {0} of {1}' @ format=[itemList.count, scrollingcontainer.items.size], i18n}"
data-cmp-data-layer="${item.data.json}" data-cmp-hook-carousel="item"></div>
<sly data-sly-call="${controlsTemplate.controls @ carousel=scrollingcontainer}"
data-sly-test="${!scrollingcontainer.controlsPrepended}"></sly>
</div>
<sly data-sly-resource="${resource.path @ resourceType='wcm/foundation/components/parsys/newpar', appendPath='/*', decorationTagName='div', cssClassName='new section aem-Grid-newComponent'}"
data-sly-test="${(wcmmode.edit || wcmmode.preview) && scrollingcontainer.items.size < 1}"></sly>
</span>
</div>
</div>
</span>
<button class="cmp-scrollingcontainer__action cmp-scrollingcontainer__action--previous" type="button" id="slideLeft"
data-cmp-hook-carousel="previous">
<span class="icon-chevron-left"></span>
</button>
<button class="cmp-scrollingcontainer__action cmp-scrollingcontainer__action--next" type="button" id="slideRight"
data-cmp-hook-carousel="next">
<span class="icon-chevron-right"></span>
</button>
<script>
const buttonRight = document.getElementById('slideRight');
const buttonLeft = document.getElementById('slideLeft');
buttonRight.onclick = function () {
document.getElementById('container').scrollLeft += 40;
};
buttonLeft.onclick = function () {
document.getElementById('container').scrollLeft -= 40;
};
console.log(scrollingcontainer.items)
</script>
this is my whole code