ng-image-slider-v16
Version:
Angular Image slider with lightbox. An Angular responsive image slider with lightbox popup. Also support youtube url, image base64 string and mp4 video urls and base64 string.
48 lines • 5.7 kB
JavaScript
import { Injectable } from '@angular/core';
import * as i0 from "@angular/core";
const DESC = 'DESC', ASC = 'ASC';
export class NgImageSliderService {
constructor() { }
isBase64(str) {
var base64regex = /^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/;
return base64regex.test(str);
}
base64FileExtension(str) {
return str.substring("data:image/".length, str.indexOf(";base64"));
}
orderArray(arr = [], orderType = ASC) {
if (arr?.length && orderType) {
return arr.sort((ob1, ob2) => {
if (ob1['order'] === null || !ob1['order']) {
return 1;
}
else if (ob2['order'] === null || !ob2['order']) {
return -1;
}
else if (ob1['order'] > ob2['order']) {
if (orderType === DESC) {
return -1;
}
else {
return 1;
}
}
else if (ob1['order'] < ob2['order']) {
if (orderType === DESC) {
return 1;
}
else {
return -1;
}
}
});
}
return arr;
}
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: NgImageSliderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: NgImageSliderService }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: NgImageSliderService, decorators: [{
type: Injectable
}], ctorParameters: function () { return []; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctaW1hZ2Utc2xpZGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1pbWFnZS1zbGlkZXIvc3JjL2xpYi9uZy1pbWFnZS1zbGlkZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUUzQyxNQUFNLElBQUksR0FBRyxNQUFNLEVBQ2YsR0FBRyxHQUFHLEtBQUssQ0FBQztBQUdoQixNQUFNLE9BQU8sb0JBQW9CO0lBRTdCLGdCQUFnQixDQUFDO0lBRWpCLFFBQVEsQ0FBQyxHQUFHO1FBQ1IsSUFBSSxXQUFXLEdBQUcsa0VBQWtFLENBQUM7UUFDckYsT0FBTyxXQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBRWpDLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxHQUFHO1FBQ25CLE9BQU8sR0FBRyxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQsVUFBVSxDQUFDLEdBQUcsR0FBRyxFQUFFLEVBQUUsU0FBUyxHQUFHLEdBQUc7UUFDaEMsSUFBSSxHQUFHLEVBQUUsTUFBTSxJQUFJLFNBQVMsRUFBRTtZQUMxQixPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEVBQUU7Z0JBQ3pCLElBQUksR0FBRyxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRTtvQkFDeEMsT0FBTyxDQUFDLENBQUM7aUJBQ1o7cUJBQ0ksSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFO29CQUM3QyxPQUFPLENBQUMsQ0FBQyxDQUFDO2lCQUNiO3FCQUNJLElBQUksR0FBRyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRTtvQkFDbEMsSUFBSSxTQUFTLEtBQUssSUFBSSxFQUFFO3dCQUNwQixPQUFPLENBQUMsQ0FBQyxDQUFDO3FCQUNiO3lCQUFNO3dCQUNILE9BQU8sQ0FBQyxDQUFDO3FCQUNaO2lCQUNKO3FCQUNJLElBQUksR0FBRyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRTtvQkFFbEMsSUFBSSxTQUFTLEtBQUssSUFBSSxFQUFFO3dCQUNwQixPQUFPLENBQUMsQ0FBQztxQkFDWjt5QkFBTTt3QkFDSCxPQUFPLENBQUMsQ0FBQyxDQUFDO3FCQUNiO2lCQUNKO1lBQ0wsQ0FBQyxDQUFDLENBQUM7U0FDTjtRQUNELE9BQU8sR0FBRyxDQUFDO0lBQ2YsQ0FBQztpSUF6Q1Esb0JBQW9CO3FJQUFwQixvQkFBb0I7OzJGQUFwQixvQkFBb0I7a0JBRGhDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmNvbnN0IERFU0MgPSAnREVTQycsXG4gICAgQVNDID0gJ0FTQyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBOZ0ltYWdlU2xpZGVyU2VydmljZSB7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gICAgaXNCYXNlNjQoc3RyKSB7XG4gICAgICAgIHZhciBiYXNlNjRyZWdleCA9IC9eKFswLTlhLXpBLVorL117NH0pKigoWzAtOWEtekEtWisvXXsyfT09KXwoWzAtOWEtekEtWisvXXszfT0pKT8kLztcbiAgICAgICAgcmV0dXJuIGJhc2U2NHJlZ2V4LnRlc3Qoc3RyKTtcblxuICAgIH1cblxuICAgIGJhc2U2NEZpbGVFeHRlbnNpb24oc3RyKSB7XG4gICAgICAgIHJldHVybiBzdHIuc3Vic3RyaW5nKFwiZGF0YTppbWFnZS9cIi5sZW5ndGgsIHN0ci5pbmRleE9mKFwiO2Jhc2U2NFwiKSk7XG4gICAgfVxuXG4gICAgb3JkZXJBcnJheShhcnIgPSBbXSwgb3JkZXJUeXBlID0gQVNDKSB7XG4gICAgICAgIGlmIChhcnI/Lmxlbmd0aCAmJiBvcmRlclR5cGUpIHtcbiAgICAgICAgICAgIHJldHVybiBhcnIuc29ydCgob2IxLCBvYjIpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAob2IxWydvcmRlciddID09PSBudWxsIHx8ICFvYjFbJ29yZGVyJ10pIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKG9iMlsnb3JkZXInXSA9PT0gbnVsbCB8fCAhb2IyWydvcmRlciddKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiAtMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAob2IxWydvcmRlciddID4gb2IyWydvcmRlciddKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChvcmRlclR5cGUgPT09IERFU0MpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAtMTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKG9iMVsnb3JkZXInXSA8IG9iMlsnb3JkZXInXSkge1xuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgaWYgKG9yZGVyVHlwZSA9PT0gREVTQykge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gLTE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gYXJyO1xuICAgIH1cbn1cbiJdfQ==