@ribajs/bs4
Version:
Bootstrap 4 module for Riba.js
104 lines • 6.44 kB
JavaScript
import { Component } from "@ribajs/core";
import CarouselService from "../../services/carousel.service.js";
export class Bs4CarouselComponent extends Component {
static tagName = "bs4-carousel";
static get observedAttributes() {
return [
"interval",
"keyboard",
"slide",
"pauseOn",
"wrap",
"touch",
"ride",
"fade",
];
}
requiredAttributes() {
return [];
}
scope = {
interval: CarouselService.Default.interval,
keyboard: CarouselService.Default.keyboard,
slide: CarouselService.Default.slide,
pauseOn: CarouselService.Default.pause || false,
wrap: CarouselService.Default.wrap,
touch: CarouselService.Default.touch,
ride: CarouselService.Default.touch || false,
fade: false,
next: this.next,
nextWhenVisible: this.nextWhenVisible,
prev: this.prev,
pause: this.pause,
cycle: this.cycle,
to: this.to,
dispose: this.dispose,
};
autobind = true;
carouselService;
constructor() {
super();
}
async beforeBind() {
await super.beforeBind();
this.classList.add("carousel", "slide");
}
async afterBind() {
this.carouselService = new CarouselService(this, {
interval: this.scope.interval,
keyboard: this.scope.keyboard,
slide: this.scope.slide,
pause: this.scope.pauseOn,
wrap: this.scope.wrap,
touch: this.scope.touch,
});
if (this.scope.fade) {
this.classList.add("carousel-fade");
}
this.carouselService.cycle();
await super.afterBind();
}
next() {
if (this.carouselService) {
this.carouselService.next();
}
}
nextWhenVisible() {
if (this.carouselService) {
this.carouselService.nextWhenVisible();
}
}
prev() {
if (this.carouselService) {
this.carouselService.prev();
}
}
pause() {
if (this.carouselService) {
this.carouselService.pause();
}
}
cycle(event) {
if (this.carouselService) {
this.carouselService.cycle(event);
}
}
to(index) {
if (this.carouselService) {
this.carouselService.to(index);
}
}
dispose() {
if (this.carouselService) {
this.carouselService.dispose();
}
}
connectedCallback() {
super.connectedCallback();
super.init(Bs4CarouselComponent.observedAttributes);
}
template() {
return null;
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnM0LWNhcm91c2VsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2JzNC1jYXJvdXNlbC9iczQtY2Fyb3VzZWwuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQStCLE1BQU0sY0FBYyxDQUFDO0FBQ3RFLE9BQU8sZUFBZSxNQUFNLG9DQUFvQyxDQUFDO0FBdUJqRSxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsU0FBUztJQUMxQyxNQUFNLENBQUMsT0FBTyxHQUFHLGNBQWMsQ0FBQztJQUV2QyxNQUFNLEtBQUssa0JBQWtCO1FBQzNCLE9BQU87WUFDTCxVQUFVO1lBQ1YsVUFBVTtZQUNWLE9BQU87WUFDUCxTQUFTO1lBQ1QsTUFBTTtZQUNOLE9BQU87WUFDUCxNQUFNO1lBQ04sTUFBTTtTQUNQLENBQUM7SUFDSixDQUFDO0lBRVMsa0JBQWtCO1FBQzFCLE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVNLEtBQUssR0FBVTtRQUVwQixRQUFRLEVBQUUsZUFBZSxDQUFDLE9BQU8sQ0FBQyxRQUFRO1FBQzFDLFFBQVEsRUFBRSxlQUFlLENBQUMsT0FBTyxDQUFDLFFBQVE7UUFDMUMsS0FBSyxFQUFFLGVBQWUsQ0FBQyxPQUFPLENBQUMsS0FBSztRQUNwQyxPQUFPLEVBQUUsZUFBZSxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksS0FBSztRQUMvQyxJQUFJLEVBQUUsZUFBZSxDQUFDLE9BQU8sQ0FBQyxJQUFJO1FBQ2xDLEtBQUssRUFBRSxlQUFlLENBQUMsT0FBTyxDQUFDLEtBQUs7UUFDcEMsSUFBSSxFQUFFLGVBQWUsQ0FBQyxPQUFPLENBQUMsS0FBSyxJQUFJLEtBQUs7UUFDNUMsSUFBSSxFQUFFLEtBQUs7UUFFWCxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7UUFDZixlQUFlLEVBQUUsSUFBSSxDQUFDLGVBQWU7UUFDckMsSUFBSSxF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