@mintplayer/ng-swiper 20.1.0 → 20.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -11,7 +11,7 @@ class BsObserveSizeDirective {
11
11
  this.element = element;
12
12
  this.platformId = platformId;
13
13
  this.zone = zone;
14
- if (!isPlatformServer(this.platformId)) {
14
+ if (!isPlatformServer(this.platformId) && typeof ResizeObserver !== 'undefined') {
15
15
  this.observer = new ResizeObserver((entries) => {
16
16
  // console.log('resized', entries[0].contentRect);
17
17
  this.zone.run(() => this.size$.next(entries[0].contentRect));
@@ -1 +1 @@
1
- {"version":3,"file":"mintplayer-ng-swiper-observe-size.mjs","sources":["../tmp-esm2022/observe-size/src/observe-size.directive.js","../tmp-esm2022/observe-size/mintplayer-ng-swiper-observe-size.js"],"sourcesContent":["import { isPlatformServer } from '@angular/common';\nimport { Directive, Inject, PLATFORM_ID } from '@angular/core';\nimport { BehaviorSubject, map } from 'rxjs';\nimport * as i0 from \"@angular/core\";\nexport class BsObserveSizeDirective {\n element;\n platformId;\n zone;\n constructor(element, platformId, zone) {\n this.element = element;\n this.platformId = platformId;\n this.zone = zone;\n if (!isPlatformServer(this.platformId)) {\n this.observer = new ResizeObserver((entries) => {\n // console.log('resized', entries[0].contentRect);\n this.zone.run(() => this.size$.next(entries[0].contentRect));\n });\n }\n this.width$ = this.size$.pipe(map(size => size?.width));\n this.height$ = this.size$.pipe(map(size => size?.height));\n }\n observer;\n size$ = new BehaviorSubject(undefined);\n width$;\n height$;\n ngAfterViewInit() {\n const el = this.element.nativeElement;\n this.observer?.observe(el);\n this.size$.next({ width: el.clientWidth, height: el.clientHeight });\n }\n ngOnDestroy() {\n if (this.observer) {\n this.observer.unobserve(this.element.nativeElement);\n this.observer.disconnect();\n }\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.7\", ngImport: i0, type: BsObserveSizeDirective, deps: [{ token: i0.ElementRef }, { token: PLATFORM_ID }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.7\", type: BsObserveSizeDirective, isStandalone: true, selector: \"[bsObserveSize]\", exportAs: [\"bsObserveSize\"], ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.7\", ngImport: i0, type: BsObserveSizeDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[bsObserveSize]',\n standalone: true,\n exportAs: 'bsObserveSize'\n }]\n }], ctorParameters: () => [{ type: i0.ElementRef }, { type: undefined, decorators: [{\n type: Inject,\n args: [PLATFORM_ID]\n }] }, { type: i0.NgZone }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JzZXJ2ZS1zaXplLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1zd2lwZXIvb2JzZXJ2ZS1zaXplL3NyYy9vYnNlcnZlLXNpemUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBaUIsU0FBUyxFQUFjLE1BQU0sRUFBcUIsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdHLE9BQU8sRUFBRSxlQUFlLEVBQXVCLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFRakUsTUFBTSxPQUFPLHNCQUFzQjtJQUNiO0lBQWtEO0lBQXlCO0lBQS9GLFlBQW9CLE9BQW1CLEVBQStCLFVBQWUsRUFBVSxJQUFZO1FBQXZGLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFBK0IsZUFBVSxHQUFWLFVBQVUsQ0FBSztRQUFVLFNBQUksR0FBSixJQUFJLENBQVE7UUFDekcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ3ZDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxjQUFjLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtnQkFDN0Msa0RBQWtEO2dCQUNsRCxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztZQUMvRCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7UUFFRCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ3hELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVPLFFBQVEsQ0FBa0I7SUFDbEMsS0FBSyxHQUFHLElBQUksZUFBZSxDQUFtQixTQUFTLENBQUMsQ0FBQztJQUN6RCxNQUFNLENBQWlDO0lBQ3ZDLE9BQU8sQ0FBaUM7SUFFeEMsZUFBZTtRQUNiLE1BQU0sRUFBRSxHQUFnQixJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQztRQUNuRCxJQUFJLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsV0FBVyxFQUFFLE1BQU0sRUFBRSxFQUFFLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDcEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUM3QixDQUFDO0lBQ0gsQ0FBQzt1R0E3QlUsc0JBQXNCLDRDQUNnQixXQUFXOzJGQURqRCxzQkFBc0I7OzJGQUF0QixzQkFBc0I7a0JBTGxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtvQkFDM0IsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSxlQUFlO2lCQUMxQjs7MEJBRTJDLE1BQU07MkJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzUGxhdGZvcm1TZXJ2ZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBBZnRlclZpZXdJbml0LCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEluamVjdCwgTmdab25lLCBPbkRlc3Ryb3ksIFBMQVRGT1JNX0lEIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgU3ViamVjdCwgbWFwIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFNpemUgfSBmcm9tICcuL3NpemUnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbYnNPYnNlcnZlU2l6ZV0nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgZXhwb3J0QXM6ICdic09ic2VydmVTaXplJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQnNPYnNlcnZlU2l6ZURpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbGVtZW50OiBFbGVtZW50UmVmLCBASW5qZWN0KFBMQVRGT1JNX0lEKSBwcml2YXRlIHBsYXRmb3JtSWQ6IGFueSwgcHJpdmF0ZSB6b25lOiBOZ1pvbmUpIHtcclxuICAgIGlmICghaXNQbGF0Zm9ybVNlcnZlcih0aGlzLnBsYXRmb3JtSWQpKSB7XHJcbiAgICAgIHRoaXMub2JzZXJ2ZXIgPSBuZXcgUmVzaXplT2JzZXJ2ZXIoKGVudHJpZXMpID0+IHtcclxuICAgICAgICAvLyBjb25zb2xlLmxvZygncmVzaXplZCcsIGVudHJpZXNbMF0uY29udGVudFJlY3QpO1xyXG4gICAgICAgIHRoaXMuem9uZS5ydW4oKCkgPT4gdGhpcy5zaXplJC5uZXh0KGVudHJpZXNbMF0uY29udGVudFJlY3QpKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy53aWR0aCQgPSB0aGlzLnNpemUkLnBpcGUobWFwKHNpemUgPT4gc2l6ZT8ud2lkdGgpKTtcclxuICAgIHRoaXMuaGVpZ2h0JCA9IHRoaXMuc2l6ZSQucGlwZShtYXAoc2l6ZSA9PiBzaXplPy5oZWlnaHQpKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgb2JzZXJ2ZXI/OiBSZXNpemVPYnNlcnZlcjtcclxuICBzaXplJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8U2l6ZSB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcclxuICB3aWR0aCQ6IE9ic2VydmFibGU8bnVtYmVyIHwgdW5kZWZpbmVkPjtcclxuICBoZWlnaHQkOiBPYnNlcnZhYmxlPG51bWJlciB8IHVuZGVmaW5lZD47XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIGNvbnN0IGVsOiBIVE1MRWxlbWVudCA9IHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50O1xyXG4gICAgdGhpcy5vYnNlcnZlcj8ub2JzZXJ2ZShlbCk7XHJcbiAgICB0aGlzLnNpemUkLm5leHQoeyB3aWR0aDogZWwuY2xpZW50V2lkdGgsIGhlaWdodDogZWwuY2xpZW50SGVpZ2h0IH0pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICBpZiAodGhpcy5vYnNlcnZlcikge1xyXG4gICAgICB0aGlzLm9ic2VydmVyLnVub2JzZXJ2ZSh0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCk7XHJcbiAgICAgIHRoaXMub2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xyXG4gICAgfVxyXG4gIH1cclxufSJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWludHBsYXllci1uZy1zd2lwZXItb2JzZXJ2ZS1zaXplLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLXN3aXBlci9vYnNlcnZlLXNpemUvbWludHBsYXllci1uZy1zd2lwZXItb2JzZXJ2ZS1zaXplLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mintplayer-ng-swiper-observe-size.mjs","sources":["../tmp-esm2022/observe-size/src/observe-size.directive.js","../tmp-esm2022/observe-size/mintplayer-ng-swiper-observe-size.js"],"sourcesContent":["import { isPlatformServer } from '@angular/common';\nimport { Directive, Inject, PLATFORM_ID } from '@angular/core';\nimport { BehaviorSubject, map } from 'rxjs';\nimport * as i0 from \"@angular/core\";\nexport class BsObserveSizeDirective {\n element;\n platformId;\n zone;\n constructor(element, platformId, zone) {\n this.element = element;\n this.platformId = platformId;\n this.zone = zone;\n if (!isPlatformServer(this.platformId) && typeof ResizeObserver !== 'undefined') {\n this.observer = new ResizeObserver((entries) => {\n // console.log('resized', entries[0].contentRect);\n this.zone.run(() => this.size$.next(entries[0].contentRect));\n });\n }\n this.width$ = this.size$.pipe(map(size => size?.width));\n this.height$ = this.size$.pipe(map(size => size?.height));\n }\n observer;\n size$ = new BehaviorSubject(undefined);\n width$;\n height$;\n ngAfterViewInit() {\n const el = this.element.nativeElement;\n this.observer?.observe(el);\n this.size$.next({ width: el.clientWidth, height: el.clientHeight });\n }\n ngOnDestroy() {\n if (this.observer) {\n this.observer.unobserve(this.element.nativeElement);\n this.observer.disconnect();\n }\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.7\", ngImport: i0, type: BsObserveSizeDirective, deps: [{ token: i0.ElementRef }, { token: PLATFORM_ID }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.7\", type: BsObserveSizeDirective, isStandalone: true, selector: \"[bsObserveSize]\", exportAs: [\"bsObserveSize\"], ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.7\", ngImport: i0, type: BsObserveSizeDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[bsObserveSize]',\n standalone: true,\n exportAs: 'bsObserveSize'\n }]\n }], ctorParameters: () => [{ type: i0.ElementRef }, { type: undefined, decorators: [{\n type: Inject,\n args: [PLATFORM_ID]\n }] }, { type: i0.NgZone }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JzZXJ2ZS1zaXplLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1zd2lwZXIvb2JzZXJ2ZS1zaXplL3NyYy9vYnNlcnZlLXNpemUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBaUIsU0FBUyxFQUFjLE1BQU0sRUFBcUIsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdHLE9BQU8sRUFBRSxlQUFlLEVBQXVCLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFRakUsTUFBTSxPQUFPLHNCQUFzQjtJQUNiO0lBQWtEO0lBQXlCO0lBQS9GLFlBQW9CLE9BQW1CLEVBQStCLFVBQWUsRUFBVSxJQUFZO1FBQXZGLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFBK0IsZUFBVSxHQUFWLFVBQVUsQ0FBSztRQUFVLFNBQUksR0FBSixJQUFJLENBQVE7UUFDekcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxPQUFPLGNBQWMsS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUNoRixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksY0FBYyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7Z0JBQzdDLGtEQUFrRDtnQkFDbEQsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7WUFDL0QsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUN4RCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFTyxRQUFRLENBQWtCO0lBQ2xDLEtBQUssR0FBRyxJQUFJLGVBQWUsQ0FBbUIsU0FBUyxDQUFDLENBQUM7SUFDekQsTUFBTSxDQUFpQztJQUN2QyxPQUFPLENBQWlDO0lBRXhDLGVBQWU7UUFDYixNQUFNLEVBQUUsR0FBZ0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUM7UUFDbkQsSUFBSSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDM0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLFdBQVcsRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNsQixJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ3BELElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDN0IsQ0FBQztJQUNILENBQUM7dUdBN0JVLHNCQUFzQiw0Q0FDZ0IsV0FBVzsyRkFEakQsc0JBQXNCOzsyRkFBdEIsc0JBQXNCO2tCQUxsQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsZUFBZTtpQkFDMUI7OzBCQUUyQyxNQUFNOzJCQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc1BsYXRmb3JtU2VydmVyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbmplY3QsIE5nWm9uZSwgT25EZXN0cm95LCBQTEFURk9STV9JRCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YmplY3QsIG1hcCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBTaXplIH0gZnJvbSAnLi9zaXplJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW2JzT2JzZXJ2ZVNpemVdJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGV4cG9ydEFzOiAnYnNPYnNlcnZlU2l6ZSdcclxufSlcclxuZXhwb3J0IGNsYXNzIEJzT2JzZXJ2ZVNpemVEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudDogRWxlbWVudFJlZiwgQEluamVjdChQTEFURk9STV9JRCkgcHJpdmF0ZSBwbGF0Zm9ybUlkOiBhbnksIHByaXZhdGUgem9uZTogTmdab25lKSB7XHJcbiAgICBpZiAoIWlzUGxhdGZvcm1TZXJ2ZXIodGhpcy5wbGF0Zm9ybUlkKSAmJiB0eXBlb2YgUmVzaXplT2JzZXJ2ZXIgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICB0aGlzLm9ic2VydmVyID0gbmV3IFJlc2l6ZU9ic2VydmVyKChlbnRyaWVzKSA9PiB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdyZXNpemVkJywgZW50cmllc1swXS5jb250ZW50UmVjdCk7XG4gICAgICAgIHRoaXMuem9uZS5ydW4oKCkgPT4gdGhpcy5zaXplJC5uZXh0KGVudHJpZXNbMF0uY29udGVudFJlY3QpKTtcbiAgICAgIH0pO1xuICAgIH1cblxyXG4gICAgdGhpcy53aWR0aCQgPSB0aGlzLnNpemUkLnBpcGUobWFwKHNpemUgPT4gc2l6ZT8ud2lkdGgpKTtcclxuICAgIHRoaXMuaGVpZ2h0JCA9IHRoaXMuc2l6ZSQucGlwZShtYXAoc2l6ZSA9PiBzaXplPy5oZWlnaHQpKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgb2JzZXJ2ZXI/OiBSZXNpemVPYnNlcnZlcjtcclxuICBzaXplJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8U2l6ZSB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcclxuICB3aWR0aCQ6IE9ic2VydmFibGU8bnVtYmVyIHwgdW5kZWZpbmVkPjtcclxuICBoZWlnaHQkOiBPYnNlcnZhYmxlPG51bWJlciB8IHVuZGVmaW5lZD47XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIGNvbnN0IGVsOiBIVE1MRWxlbWVudCA9IHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50O1xyXG4gICAgdGhpcy5vYnNlcnZlcj8ub2JzZXJ2ZShlbCk7XG4gICAgdGhpcy5zaXplJC5uZXh0KHsgd2lkdGg6IGVsLmNsaWVudFdpZHRoLCBoZWlnaHQ6IGVsLmNsaWVudEhlaWdodCB9KTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgaWYgKHRoaXMub2JzZXJ2ZXIpIHtcclxuICAgICAgdGhpcy5vYnNlcnZlci51bm9ic2VydmUodGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQpO1xyXG4gICAgICB0aGlzLm9ic2VydmVyLmRpc2Nvbm5lY3QoKTtcclxuICAgIH1cclxuICB9XHJcbn0iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWludHBsYXllci1uZy1zd2lwZXItb2JzZXJ2ZS1zaXplLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLXN3aXBlci9vYnNlcnZlLXNpemUvbWludHBsYXllci1uZy1zd2lwZXItb2JzZXJ2ZS1zaXplLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import * as i0 from '@angular/core';
2
2
  import { EventEmitter, Output, Input, forwardRef, ContentChildren, HostBinding, Inject, Directive, input, HostListener, NgModule } from '@angular/core';
3
3
  import * as i2 from '@mintplayer/ng-swiper/observe-size';
4
4
  import { BsObserveSizeDirective } from '@mintplayer/ng-swiper/observe-size';
5
- import { combineLatest, map, delay, filter, mergeMap, debounceTime, BehaviorSubject, take } from 'rxjs';
5
+ import { combineLatest, map, delay, filter, mergeMap, shareReplay, debounceTime, distinctUntilChanged, BehaviorSubject, take } from 'rxjs';
6
6
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
7
7
  import { DOCUMENT, CommonModule } from '@angular/common';
8
8
  import * as i1 from '@angular/animations';
@@ -18,13 +18,29 @@ class BsSwipeContainerDirective {
18
18
  this.observeSize = observeSize;
19
19
  this.containerElement = element;
20
20
  this.document = document;
21
- this.offset$ = combineLatest([this.startTouch$, this.lastTouch$, this.imageIndex$, this.isViewInited$])
22
- .pipe(map(([startTouch, lastTouch, imageIndex, isViewInited]) => {
21
+ this.offset$ = combineLatest([
22
+ this.startTouch$,
23
+ this.lastTouch$,
24
+ this.imageIndex$,
25
+ this.isViewInited$,
26
+ this.orientation$,
27
+ this.observeSize.size$,
28
+ ])
29
+ .pipe(map(([startTouch, lastTouch, imageIndex, isViewInited, orientation, containerSize]) => {
23
30
  if (!isViewInited) {
24
31
  return (-imageIndex * 100);
25
32
  }
26
33
  else if (!!startTouch && !!lastTouch) {
27
- return (-imageIndex * 100 + (lastTouch.position.x - startTouch.position.x) / this.containerElement.nativeElement.clientWidth * 100);
34
+ const containerLength = orientation === 'horizontal'
35
+ ? (containerSize?.width ?? this.containerElement.nativeElement.clientWidth)
36
+ : (containerSize?.height ?? this.containerElement.nativeElement.clientHeight);
37
+ if (containerLength === 0) {
38
+ return (-imageIndex * 100);
39
+ }
40
+ const delta = orientation === 'horizontal'
41
+ ? (lastTouch.position.x - startTouch.position.x)
42
+ : (lastTouch.position.y - startTouch.position.y);
43
+ return (-imageIndex * 100 + (delta / containerLength) * 100);
28
44
  }
29
45
  else {
30
46
  return (-imageIndex * 100);
@@ -60,14 +76,34 @@ class BsSwipeContainerDirective {
60
76
  }
61
77
  return count;
62
78
  }));
63
- this.offsetLeft$ = combineLatest([this.offset$, this.padLeft$])
79
+ this.offsetPrimary$ = combineLatest([this.offset$, this.padLeft$])
64
80
  .pipe(map(([offset, padLeft]) => offset - padLeft * 100));
65
- this.offsetRight$ = combineLatest([this.offset$, this.padLeft$, this.padRight$])
81
+ this.offsetSecondary$ = combineLatest([this.offset$, this.padLeft$, this.padRight$])
66
82
  .pipe(map(([offset, padLeft, padRight]) => -(offset - padLeft * 100) - (padRight - 1) * 100));
67
- this.offsetLeft$.pipe(takeUntilDestroyed())
68
- .subscribe(offsetLeft => this.offsetLeft = offsetLeft);
69
- this.offsetRight$.pipe(takeUntilDestroyed())
70
- .subscribe(offsetRight => this.offsetRight = offsetRight);
83
+ combineLatest([this.offsetPrimary$, this.orientation$])
84
+ .pipe(takeUntilDestroyed())
85
+ .subscribe(([offsetPrimary, orientation]) => {
86
+ if (orientation === 'horizontal') {
87
+ this.offsetLeft = offsetPrimary;
88
+ this.offsetTop = null;
89
+ }
90
+ else {
91
+ this.offsetTop = offsetPrimary;
92
+ this.offsetLeft = null;
93
+ }
94
+ });
95
+ combineLatest([this.offsetSecondary$, this.orientation$])
96
+ .pipe(takeUntilDestroyed())
97
+ .subscribe(([offsetSecondary, orientation]) => {
98
+ if (orientation === 'horizontal') {
99
+ this.offsetRight = offsetSecondary;
100
+ this.offsetBottom = null;
101
+ }
102
+ else {
103
+ this.offsetBottom = offsetSecondary;
104
+ this.offsetRight = null;
105
+ }
106
+ });
71
107
  this.imageIndex$.pipe(takeUntilDestroyed())
72
108
  .subscribe(imageIndex => this.imageIndexChange.emit(imageIndex));
73
109
  this.actualSwipes$ = this.swipes$
@@ -81,20 +117,31 @@ class BsSwipeContainerDirective {
81
117
  }));
82
118
  this.slideSizes$ = this.actualSwipes$
83
119
  .pipe(delay(400), filter(swipes => !!swipes))
84
- .pipe(mergeMap(swipes => combineLatest(swipes.map(swipe => swipe.observeSize.size$))));
85
- this.currentSlideHeight$ = combineLatest([this.slideSizes$, this.imageIndex$])
86
- .pipe(map(([slideSizes, imageIndex]) => {
87
- const maxHeight = Math.max(...slideSizes.map(s => s?.height ?? 1));
88
- console.log('maxHeight', { maxHeight, slideSizes });
120
+ .pipe(mergeMap(swipes => combineLatest(swipes.map(swipe => swipe.observeSize.size$))))
121
+ .pipe(shareReplay({ bufferSize: 1, refCount: true }));
122
+ this.maxSlideHeight$ = this.slideSizes$
123
+ .pipe(map(slideSizes => {
124
+ const heights = slideSizes.map(s => s?.height ?? 1);
125
+ return heights.length ? Math.max(...heights) : 1;
126
+ }))
127
+ .pipe(shareReplay({ bufferSize: 1, refCount: true }));
128
+ this.currentSlideHeight$ = combineLatest([this.slideSizes$, this.imageIndex$, this.orientation$])
129
+ .pipe(map(([slideSizes, imageIndex, orientation]) => {
130
+ const heights = slideSizes.map(s => s?.height ?? 1);
131
+ const maxHeight = heights.length ? Math.max(...heights) : 1;
89
132
  const currHeight = slideSizes[imageIndex]?.height ?? maxHeight;
90
- // switch (orientation) {
91
- // case 'horizontal':
92
- return currHeight;
93
- // case 'vertical':
94
- // return maxHeight;
95
- // }
133
+ return (orientation === 'vertical') ? maxHeight : currHeight;
96
134
  }))
135
+ .pipe(shareReplay({ bufferSize: 1, refCount: true }))
97
136
  .pipe(debounceTime(10));
137
+ this.orientation$
138
+ .pipe(distinctUntilChanged(), takeUntilDestroyed())
139
+ .subscribe(() => {
140
+ this.offsetLeft = null;
141
+ this.offsetRight = null;
142
+ this.offsetTop = null;
143
+ this.offsetBottom = null;
144
+ });
98
145
  }
99
146
  offsetLeft = null;
100
147
  offsetRight = null;
@@ -104,6 +151,12 @@ class BsSwipeContainerDirective {
104
151
  setTimeout(() => this.swipes$.next(value));
105
152
  }
106
153
  minimumOffset = 50;
154
+ get orientation() {
155
+ return this.orientation$.value;
156
+ }
157
+ set orientation(value) {
158
+ this.orientation$.next(value ?? 'horizontal');
159
+ }
107
160
  //#region ImageIndex
108
161
  get imageIndex() {
109
162
  return this.imageIndex$.value;
@@ -120,6 +173,7 @@ class BsSwipeContainerDirective {
120
173
  swipes$ = new BehaviorSubject(null);
121
174
  // TODO: slide sizes instead
122
175
  slideSizes$;
176
+ maxSlideHeight$;
123
177
  imageIndex$ = new BehaviorSubject(0);
124
178
  currentSlideHeight$;
125
179
  pendingAnimation;
@@ -127,33 +181,56 @@ class BsSwipeContainerDirective {
127
181
  document;
128
182
  // TODO: Don't just keep px, but both px and % using currentslidesize$
129
183
  offset$;
130
- offsetLeft$;
131
- offsetRight$;
184
+ offsetPrimary$;
185
+ offsetSecondary$;
132
186
  padLeft$;
133
187
  padRight$;
188
+ orientation$ = new BehaviorSubject('horizontal');
134
189
  ngAfterViewInit() {
135
190
  this.isViewInited$.next(true);
136
191
  }
137
- animateToIndexByDx(dx) {
192
+ animateToIndexByDx(distance) {
138
193
  combineLatest([this.imageIndex$, this.actualSwipes$])
139
194
  .pipe(take(1), takeUntilDestroyed(this.destroy))
140
195
  .subscribe(([imageIndex, actualSwipes]) => {
141
- const direction = dx > 0 ? 'left' : 'right';
142
196
  let newIndex;
143
- if (Math.abs(dx) < this.minimumOffset) {
197
+ if (Math.abs(distance) < this.minimumOffset) {
144
198
  newIndex = imageIndex;
145
199
  }
146
200
  else {
147
- newIndex = imageIndex + (direction === 'right' ? 1 : -1);
201
+ newIndex = imageIndex + (distance < 0 ? 1 : -1);
148
202
  }
149
- this.animateToIndex(imageIndex, newIndex, dx, actualSwipes?.length ?? 1);
203
+ this.animateToIndex(imageIndex, newIndex, distance, actualSwipes?.length ?? 1);
150
204
  });
151
205
  }
152
- animateToIndex(oldIndex, newIndex, dx, totalSlides) {
153
- this.pendingAnimation = this.animationBuilder.build([
154
- style({ 'margin-left': (-(oldIndex + 1) * this.containerElement.nativeElement.clientWidth + dx) + 'px', 'margin-right': ((oldIndex + 1) * this.containerElement.nativeElement.clientWidth - dx) + 'px' }),
155
- animate('500ms ease', style({ 'margin-left': (-(newIndex + 1) * this.containerElement.nativeElement.clientWidth) + 'px', 'margin-right': ((newIndex + 1) * this.containerElement.nativeElement.clientWidth) + 'px' })),
156
- ]).create(this.containerElement.nativeElement);
206
+ animateToIndex(oldIndex, newIndex, distance, totalSlides) {
207
+ const orientation = this.orientation$.value;
208
+ const containerElement = this.containerElement.nativeElement;
209
+ const containerLength = orientation === 'horizontal' ? containerElement.clientWidth : containerElement.clientHeight;
210
+ if (orientation === 'horizontal') {
211
+ this.pendingAnimation = this.animationBuilder.build([
212
+ style({
213
+ 'margin-left': (-(oldIndex + 1) * containerLength + distance) + 'px',
214
+ 'margin-right': ((oldIndex + 1) * containerLength - distance) + 'px',
215
+ }),
216
+ animate('500ms ease', style({
217
+ 'margin-left': (-(newIndex + 1) * containerLength) + 'px',
218
+ 'margin-right': ((newIndex + 1) * containerLength) + 'px',
219
+ })),
220
+ ]).create(containerElement);
221
+ }
222
+ else {
223
+ this.pendingAnimation = this.animationBuilder.build([
224
+ style({
225
+ 'margin-top': (-(oldIndex + 1) * containerLength + distance) + 'px',
226
+ 'margin-bottom': ((oldIndex + 1) * containerLength - distance) + 'px',
227
+ }),
228
+ animate('500ms ease', style({
229
+ 'margin-top': (-(newIndex + 1) * containerLength) + 'px',
230
+ 'margin-bottom': ((newIndex + 1) * containerLength) + 'px',
231
+ })),
232
+ ]).create(containerElement);
233
+ }
157
234
  this.pendingAnimation.onDone(() => {
158
235
  // Correct the image index
159
236
  if (newIndex === -1) {
@@ -172,8 +249,8 @@ class BsSwipeContainerDirective {
172
249
  });
173
250
  this.pendingAnimation.play();
174
251
  }
175
- onSwipe(dx) {
176
- this.animateToIndexByDx(dx);
252
+ onSwipe(distance) {
253
+ this.animateToIndexByDx(distance);
177
254
  }
178
255
  previous() {
179
256
  this.gotoAnimate(-1, 'relative');
@@ -197,7 +274,7 @@ class BsSwipeContainerDirective {
197
274
  }, 20);
198
275
  }
199
276
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: BsSwipeContainerDirective, deps: [{ token: i0.ElementRef }, { token: i1.AnimationBuilder }, { token: i0.DestroyRef }, { token: DOCUMENT }, { token: i2.BsObserveSizeDirective }], target: i0.ɵɵFactoryTarget.Directive });
200
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.1.7", type: BsSwipeContainerDirective, isStandalone: false, selector: "[bsSwipeContainer]", inputs: { minimumOffset: "minimumOffset", imageIndex: "imageIndex" }, outputs: { imageIndexChange: "imageIndexChange" }, host: { properties: { "style.margin-left.%": "this.offsetLeft", "style.margin-right.%": "this.offsetRight", "style.margin-top.%": "this.offsetTop", "style.margin-bottom.%": "this.offsetBottom" } }, queries: [{ propertyName: "swipes", predicate: i0.forwardRef(() => BsSwipeDirective) }], exportAs: ["bsSwipeContainer"], hostDirectives: [{ directive: i2.BsObserveSizeDirective }], ngImport: i0 });
277
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.1.7", type: BsSwipeContainerDirective, isStandalone: false, selector: "[bsSwipeContainer]", inputs: { minimumOffset: "minimumOffset", orientation: "orientation", imageIndex: "imageIndex" }, outputs: { imageIndexChange: "imageIndexChange" }, host: { properties: { "style.margin-left.%": "this.offsetLeft", "style.margin-right.%": "this.offsetRight", "style.margin-top.%": "this.offsetTop", "style.margin-bottom.%": "this.offsetBottom" } }, queries: [{ propertyName: "swipes", predicate: i0.forwardRef(() => BsSwipeDirective) }], exportAs: ["bsSwipeContainer"], hostDirectives: [{ directive: i2.BsObserveSizeDirective }], ngImport: i0 });
201
278
  }
202
279
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: BsSwipeContainerDirective, decorators: [{
203
280
  type: Directive,
@@ -227,6 +304,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImpor
227
304
  args: [forwardRef(() => BsSwipeDirective)]
228
305
  }], minimumOffset: [{
229
306
  type: Input
307
+ }], orientation: [{
308
+ type: Input
230
309
  }], imageIndex: [{
231
310
  type: Input
232
311
  }], imageIndexChange: [{
@@ -240,13 +319,25 @@ class BsSwipeDirective {
240
319
  this.container = container;
241
320
  this.destroy = destroy;
242
321
  this.observeSize = observeSize;
243
- // container.orientation$.pipe(takeUntilDestroyed())
244
- // .subscribe(orientation => this.hostClass = (orientation === 'vertical') ? 'd-block' : 'd-inline-block');
322
+ this.container.orientation$
323
+ .pipe(takeUntilDestroyed())
324
+ .subscribe(orientation => {
325
+ this.inlineBlock = (orientation === 'horizontal');
326
+ this.block = (orientation === 'vertical');
327
+ });
328
+ combineLatest([this.container.maxSlideHeight$, this.container.orientation$])
329
+ .pipe(takeUntilDestroyed())
330
+ .subscribe(([maxHeight, orientation]) => {
331
+ const targetHeight = (orientation === 'vertical') ? maxHeight : null;
332
+ this.slideHeight = (targetHeight && targetHeight > 0) ? targetHeight : null;
333
+ });
245
334
  }
246
335
  observeSize;
247
336
  offside = input(false, ...(ngDevMode ? [{ debugName: "offside" }] : []));
248
337
  classes = true;
249
- hostClass;
338
+ inlineBlock = true;
339
+ block = false;
340
+ slideHeight = null;
250
341
  onTouchStart(ev) {
251
342
  if (ev.touches.length === 1) {
252
343
  ev.preventDefault();
@@ -279,18 +370,20 @@ class BsSwipeDirective {
279
370
  });
280
371
  }
281
372
  onTouchEnd(ev) {
282
- combineLatest([this.container.startTouch$, this.container.lastTouch$])
373
+ combineLatest([this.container.startTouch$, this.container.lastTouch$, this.container.orientation$])
283
374
  .pipe(filter(([startTouch, lastTouch]) => !!startTouch && !!lastTouch))
284
375
  .pipe(take(1), takeUntilDestroyed(this.destroy))
285
- .subscribe(([startTouch, lastTouch]) => {
376
+ .subscribe(([startTouch, lastTouch, orientation]) => {
286
377
  if (!!startTouch && !!lastTouch) {
287
- const dx = lastTouch.position.x - startTouch.position.x;
288
- this.container.onSwipe(dx);
378
+ const distance = (orientation === 'horizontal')
379
+ ? lastTouch.position.x - startTouch.position.x
380
+ : lastTouch.position.y - startTouch.position.y;
381
+ this.container.onSwipe(distance);
289
382
  }
290
383
  });
291
384
  }
292
385
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: BsSwipeDirective, deps: [{ token: BsSwipeContainerDirective }, { token: i2.BsObserveSizeDirective }, { token: i0.DestroyRef }], target: i0.ɵɵFactoryTarget.Directive });
293
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.1.7", type: BsSwipeDirective, isStandalone: false, selector: "[bsSwipe]", inputs: { offside: { classPropertyName: "offside", publicName: "offside", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "touchstart": "onTouchStart($event)", "touchmove": "onTouchMove($event)", "touchend": "onTouchEnd($event)" }, properties: { "class.align-top": "this.classes", "class.d-inline-block": "this.classes", "class.float-none": "this.classes", "class.w-100": "this.classes", "class.pe-auto": "this.classes", "class.me-0": "this.classes", "class": "this.hostClass" } }, hostDirectives: [{ directive: i2.BsObserveSizeDirective }], ngImport: i0 });
386
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.1.7", type: BsSwipeDirective, isStandalone: false, selector: "[bsSwipe]", inputs: { offside: { classPropertyName: "offside", publicName: "offside", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "touchstart": "onTouchStart($event)", "touchmove": "onTouchMove($event)", "touchend": "onTouchEnd($event)" }, properties: { "class.align-top": "this.classes", "class.float-none": "this.classes", "class.w-100": "this.classes", "class.pe-auto": "this.classes", "class.me-0": "this.classes", "class.d-inline-block": "this.inlineBlock", "class.d-block": "this.block", "style.height.px": "this.slideHeight" } }, hostDirectives: [{ directive: i2.BsObserveSizeDirective }], ngImport: i0 });
294
387
  }
295
388
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: BsSwipeDirective, decorators: [{
296
389
  type: Directive,
@@ -302,9 +395,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImpor
302
395
  }], ctorParameters: () => [{ type: BsSwipeContainerDirective }, { type: i2.BsObserveSizeDirective }, { type: i0.DestroyRef }], propDecorators: { classes: [{
303
396
  type: HostBinding,
304
397
  args: ['class.align-top']
305
- }, {
306
- type: HostBinding,
307
- args: ['class.d-inline-block']
308
398
  }, {
309
399
  type: HostBinding,
310
400
  args: ['class.float-none']
@@ -317,9 +407,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImpor
317
407
  }, {
318
408
  type: HostBinding,
319
409
  args: ['class.me-0']
320
- }], hostClass: [{
410
+ }], inlineBlock: [{
411
+ type: HostBinding,
412
+ args: ['class.d-inline-block']
413
+ }], block: [{
414
+ type: HostBinding,
415
+ args: ['class.d-block']
416
+ }], slideHeight: [{
321
417
  type: HostBinding,
322
- args: ['class']
418
+ args: ['style.height.px']
323
419
  }], onTouchStart: [{
324
420
  type: HostListener,
325
421
  args: ['touchstart', ['$event']]
@@ -1 +1 @@
1
- {"version":3,"file":"mintplayer-ng-swiper-swiper.mjs","sources":["../tmp-esm2022/swiper/src/directives/swipe-container/swipe-container.directive.js","../tmp-esm2022/swiper/src/directives/swipe/swipe.directive.js","../tmp-esm2022/swiper/src/swiper.module.js","../tmp-esm2022/swiper/mintplayer-ng-swiper-swiper.js"],"sourcesContent":["import { DOCUMENT } from '@angular/common';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { animate, style } from '@angular/animations';\nimport { ContentChildren, Directive, EventEmitter, forwardRef, HostBinding, Inject, Input, Output } from '@angular/core';\nimport { BehaviorSubject, combineLatest, debounceTime, delay, filter, map, mergeMap, take } from 'rxjs';\nimport { BsObserveSizeDirective } from '@mintplayer/ng-swiper/observe-size';\nimport { BsSwipeDirective } from '../swipe/swipe.directive';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/animations\";\nimport * as i2 from \"@mintplayer/ng-swiper/observe-size\";\nexport class BsSwipeContainerDirective {\n animationBuilder;\n destroy;\n observeSize;\n constructor(element, animationBuilder, destroy, document, observeSize) {\n this.animationBuilder = animationBuilder;\n this.destroy = destroy;\n this.observeSize = observeSize;\n this.containerElement = element;\n this.document = document;\n this.offset$ = combineLatest([this.startTouch$, this.lastTouch$, this.imageIndex$, this.isViewInited$])\n .pipe(map(([startTouch, lastTouch, imageIndex, isViewInited]) => {\n if (!isViewInited) {\n return (-imageIndex * 100);\n }\n else if (!!startTouch && !!lastTouch) {\n return (-imageIndex * 100 + (lastTouch.position.x - startTouch.position.x) / this.containerElement.nativeElement.clientWidth * 100);\n }\n else {\n return (-imageIndex * 100);\n }\n }));\n this.padLeft$ = this.swipes$.pipe(map(swipes => {\n if (!swipes) {\n return 0;\n }\n let count = 0;\n for (const s of swipes) {\n if (!s.offside()) {\n break;\n }\n else {\n count++;\n }\n }\n return count;\n }));\n this.padRight$ = this.swipes$.pipe(map(swipes => {\n if (!swipes) {\n return 0;\n }\n let count = 0;\n for (const s of swipes.toArray().reverse()) {\n if (!s.offside()) {\n break;\n }\n else {\n count++;\n }\n }\n return count;\n }));\n this.offsetLeft$ = combineLatest([this.offset$, this.padLeft$])\n .pipe(map(([offset, padLeft]) => offset - padLeft * 100));\n this.offsetRight$ = combineLatest([this.offset$, this.padLeft$, this.padRight$])\n .pipe(map(([offset, padLeft, padRight]) => -(offset - padLeft * 100) - (padRight - 1) * 100));\n this.offsetLeft$.pipe(takeUntilDestroyed())\n .subscribe(offsetLeft => this.offsetLeft = offsetLeft);\n this.offsetRight$.pipe(takeUntilDestroyed())\n .subscribe(offsetRight => this.offsetRight = offsetRight);\n this.imageIndex$.pipe(takeUntilDestroyed())\n .subscribe(imageIndex => this.imageIndexChange.emit(imageIndex));\n this.actualSwipes$ = this.swipes$\n .pipe(map(swipes => {\n if (swipes) {\n return swipes.filter(swipe => !swipe.offside());\n }\n else {\n return [];\n }\n }));\n this.slideSizes$ = this.actualSwipes$\n .pipe(delay(400), filter(swipes => !!swipes))\n .pipe(mergeMap(swipes => combineLatest(swipes.map(swipe => swipe.observeSize.size$))));\n this.currentSlideHeight$ = combineLatest([this.slideSizes$, this.imageIndex$])\n .pipe(map(([slideSizes, imageIndex]) => {\n const maxHeight = Math.max(...slideSizes.map(s => s?.height ?? 1));\n console.log('maxHeight', { maxHeight, slideSizes });\n const currHeight = slideSizes[imageIndex]?.height ?? maxHeight;\n // switch (orientation) {\n // case 'horizontal':\n return currHeight;\n // case 'vertical':\n // return maxHeight;\n // }\n }))\n .pipe(debounceTime(10));\n }\n offsetLeft = null;\n offsetRight = null;\n offsetTop = null;\n offsetBottom = null;\n set swipes(value) {\n setTimeout(() => this.swipes$.next(value));\n }\n minimumOffset = 50;\n //#region ImageIndex\n get imageIndex() {\n return this.imageIndex$.value;\n }\n set imageIndex(value) {\n this.imageIndex$.next(value);\n }\n imageIndexChange = new EventEmitter();\n //#endregion\n actualSwipes$;\n isViewInited$ = new BehaviorSubject(false);\n startTouch$ = new BehaviorSubject(null);\n lastTouch$ = new BehaviorSubject(null);\n swipes$ = new BehaviorSubject(null);\n // TODO: slide sizes instead\n slideSizes$;\n imageIndex$ = new BehaviorSubject(0);\n currentSlideHeight$;\n pendingAnimation;\n containerElement;\n document;\n // TODO: Don't just keep px, but both px and % using currentslidesize$\n offset$;\n offsetLeft$;\n offsetRight$;\n padLeft$;\n padRight$;\n ngAfterViewInit() {\n this.isViewInited$.next(true);\n }\n animateToIndexByDx(dx) {\n combineLatest([this.imageIndex$, this.actualSwipes$])\n .pipe(take(1), takeUntilDestroyed(this.destroy))\n .subscribe(([imageIndex, actualSwipes]) => {\n const direction = dx > 0 ? 'left' : 'right';\n let newIndex;\n if (Math.abs(dx) < this.minimumOffset) {\n newIndex = imageIndex;\n }\n else {\n newIndex = imageIndex + (direction === 'right' ? 1 : -1);\n }\n this.animateToIndex(imageIndex, newIndex, dx, actualSwipes?.length ?? 1);\n });\n }\n animateToIndex(oldIndex, newIndex, dx, totalSlides) {\n this.pendingAnimation = this.animationBuilder.build([\n style({ 'margin-left': (-(oldIndex + 1) * this.containerElement.nativeElement.clientWidth + dx) + 'px', 'margin-right': ((oldIndex + 1) * this.containerElement.nativeElement.clientWidth - dx) + 'px' }),\n animate('500ms ease', style({ 'margin-left': (-(newIndex + 1) * this.containerElement.nativeElement.clientWidth) + 'px', 'margin-right': ((newIndex + 1) * this.containerElement.nativeElement.clientWidth) + 'px' })),\n ]).create(this.containerElement.nativeElement);\n this.pendingAnimation.onDone(() => {\n // Correct the image index\n if (newIndex === -1) {\n this.imageIndex$.next(totalSlides - 1);\n }\n else if (newIndex === totalSlides) {\n this.imageIndex$.next(0);\n }\n else {\n this.imageIndex$.next(newIndex);\n }\n this.startTouch$.next(null);\n this.lastTouch$.next(null);\n this.pendingAnimation?.destroy();\n this.pendingAnimation = undefined;\n });\n this.pendingAnimation.play();\n }\n onSwipe(dx) {\n this.animateToIndexByDx(dx);\n }\n previous() {\n this.gotoAnimate(-1, 'relative');\n }\n next() {\n this.gotoAnimate(1, 'relative');\n }\n goto(index) {\n this.gotoAnimate(index, 'absolute');\n }\n gotoAnimate(index, type) {\n this.pendingAnimation?.finish();\n setTimeout(() => {\n combineLatest([this.actualSwipes$, this.imageIndex$])\n .pipe(take(1), takeUntilDestroyed(this.destroy))\n .subscribe(([actualSwipes, imageIndex]) => {\n this.pendingAnimation?.finish();\n const idx = (type === 'relative') ? imageIndex + index : index;\n this.animateToIndex(imageIndex, idx, 0, actualSwipes?.length ?? 1);\n });\n }, 20);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.7\", ngImport: i0, type: BsSwipeContainerDirective, deps: [{ token: i0.ElementRef }, { token: i1.AnimationBuilder }, { token: i0.DestroyRef }, { token: DOCUMENT }, { token: i2.BsObserveSizeDirective }], target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.7\", type: BsSwipeContainerDirective, isStandalone: false, selector: \"[bsSwipeContainer]\", inputs: { minimumOffset: \"minimumOffset\", imageIndex: \"imageIndex\" }, outputs: { imageIndexChange: \"imageIndexChange\" }, host: { properties: { \"style.margin-left.%\": \"this.offsetLeft\", \"style.margin-right.%\": \"this.offsetRight\", \"style.margin-top.%\": \"this.offsetTop\", \"style.margin-bottom.%\": \"this.offsetBottom\" } }, queries: [{ propertyName: \"swipes\", predicate: i0.forwardRef(() => BsSwipeDirective) }], exportAs: [\"bsSwipeContainer\"], hostDirectives: [{ directive: i2.BsObserveSizeDirective }], ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.7\", ngImport: i0, type: BsSwipeContainerDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[bsSwipeContainer]',\n exportAs: 'bsSwipeContainer',\n standalone: false,\n hostDirectives: [BsObserveSizeDirective],\n }]\n }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.AnimationBuilder }, { type: i0.DestroyRef }, { type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }, { type: i2.BsObserveSizeDirective }], propDecorators: { offsetLeft: [{\n type: HostBinding,\n args: ['style.margin-left.%']\n }], offsetRight: [{\n type: HostBinding,\n args: ['style.margin-right.%']\n }], offsetTop: [{\n type: HostBinding,\n args: ['style.margin-top.%']\n }], offsetBottom: [{\n type: HostBinding,\n args: ['style.margin-bottom.%']\n }], swipes: [{\n type: ContentChildren,\n args: [forwardRef(() => BsSwipeDirective)]\n }], minimumOffset: [{\n type: Input\n }], imageIndex: [{\n type: Input\n }], imageIndexChange: [{\n type: Output\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3dpcGUtY29udGFpbmVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1zd2lwZXIvc3dpcGVyL3NyYy9kaXJlY3RpdmVzL3N3aXBlLWNvbnRhaW5lci9zd2lwZS1jb250YWluZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsT0FBTyxFQUFxQyxLQUFLLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN4RixPQUFPLEVBQWlCLGVBQWUsRUFBYyxTQUFTLEVBQWMsWUFBWSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDM0ssT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBYyxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEgsT0FBTyxFQUFFLHNCQUFzQixFQUFRLE1BQU0sb0NBQW9DLENBQUM7QUFHbEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7QUFRNUQsTUFBTSxPQUFPLHlCQUF5QjtJQUVLO0lBQTRDO0lBQThEO0lBQW5KLFlBQVksT0FBbUIsRUFBVSxnQkFBa0MsRUFBVSxPQUFtQixFQUFvQixRQUFhLEVBQVUsV0FBbUM7UUFBN0kscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUFVLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFBMkMsZ0JBQVcsR0FBWCxXQUFXLENBQXdCO1FBQ3BMLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxPQUFPLENB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QVUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLFlBQVksRUFBRSxNQUFNLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDckUsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDVCxDQUFDO3VHQXBNVSx5QkFBeUIsc0dBRThFLFFBQVE7MkZBRi9HLHlCQUF5Qix5YkEyRkYsZ0JBQWdCOzsyRkEzRnZDLHlCQUF5QjtrQkFOckMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixRQUFRLEVBQUUsa0JBQWtCO29CQUM1QixVQUFVLEVBQUUsS0FBSztvQkFDakIsY0FBYyxFQUFFLENBQUMsc0JBQXNCLENBQUM7aUJBQ3pDOzswQkFHNEcsTUFBTTsyQkFBQyxRQUFROzhFQXFGdEYsVUFBVTtzQkFBN0MsV0FBVzt1QkFBQyxxQkFBcUI7Z0JBQ0csV0FBVztzQkFBL0MsV0FBVzt1QkFBQyxzQkFBc0I7Z0JBQ0EsU0FBUztzQkFBM0MsV0FBVzt1QkFBQyxvQkFBb0I7Z0JBQ0ssWUFBWTtzQkFBakQsV0FBVzt1QkFBQyx1QkFBdUI7Z0JBQ3FCLE1BQU07c0JBQTlELGVBQWU7dUJBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixDQUFDO2dCQUcxQyxhQUFhO3NCQUFyQixLQUFLO2dCQU1jLFVBQVU7c0JBQTdCLEtBQUs7Z0JBR0ksZ0JBQWdCO3NCQUF6QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgYW5pbWF0ZSwgQW5pbWF0aW9uQnVpbGRlciwgQW5pbWF0aW9uUGxheWVyLCBzdHlsZSB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29udGVudENoaWxkcmVuLCBEZXN0cm95UmVmLCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgZm9yd2FyZFJlZiwgSG9zdEJpbmRpbmcsIEluamVjdCwgSW5wdXQsIE91dHB1dCwgUXVlcnlMaXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIGRlYm91bmNlVGltZSwgZGVsYXksIGZpbHRlciwgbWFwLCBtZXJnZU1hcCwgT2JzZXJ2YWJsZSwgdGFrZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQnNPYnNlcnZlU2l6ZURpcmVjdGl2ZSwgU2l6ZSB9IGZyb20gJ0BtaW50cGxheWVyL25nLXN3aXBlci9vYnNlcnZlLXNpemUnO1xuaW1wb3J0IHsgTGFzdFRvdWNoIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9sYXN0LXRvdWNoJztcbmltcG9ydCB7IFN0YXJ0VG91Y2ggfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3N0YXJ0LXRvdWNoJztcbmltcG9ydCB7IEJzU3dpcGVEaXJlY3RpdmUgfSBmcm9tICcuLi9zd2lwZS9zd2lwZS5kaXJlY3RpdmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYnNTd2lwZUNvbnRhaW5lcl0nLFxuICBleHBvcnRBczogJ2JzU3dpcGVDb250YWluZXInLFxuICBzdGFuZGFsb25lOiBmYWxzZSxcbiAgaG9zdERpcmVjdGl2ZXM6IFtCc09ic2VydmVTaXplRGlyZWN0aXZlXSxcbn0pXG5leHBvcnQgY2xhc3MgQnNTd2lwZUNvbnRhaW5lckRpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuXG4gIGNvbnN0cnVjdG9yKGVsZW1lbnQ6IEVsZW1lbnRSZWYsIHByaXZhdGUgYW5pbWF0aW9uQnVpbGRlcjogQW5pbWF0aW9uQnVpbGRlciwgcHJpdmF0ZSBkZXN0cm95OiBEZXN0cm95UmVmLCBASW5qZWN0KERPQ1VNRU5UKSBkb2N1bWVudDogYW55LCBwcml2YXRlIG9ic2VydmVTaXplOiBCc09ic2VydmVTaXplRGlyZWN0aXZlKSB7XG4gICAgdGhpcy5jb250YWluZXJFbGVtZW50ID0gZWxlbWVudDtcbiAgICB0aGlzLmRvY3VtZW50ID0gPERvY3VtZW50PmRvY3VtZW50O1xuICAgIHRoaXMub2Zmc2V0JCA9IGNvbWJpbmVMYXRlc3QoW3RoaXMuc3RhcnRUb3VjaCQsIHRoaXMubGFzdFRvdWNoJCwgdGhpcy5pbWFnZUluZGV4JCwgdGhpcy5pc1ZpZXdJbml0ZWQkXSlcbiAgICAgIC5waXBlKG1hcCgoW3N0YXJ0VG91Y2gsIGxhc3RUb3VjaCwgaW1hZ2VJbmRleCwgaXNWaWV3SW5pdGVkXSkgPT4ge1xuICAgICAgICBpZiAoIWlzVmlld0luaXRlZCkge1xuICAgICAgICAgIHJldHVybiAoLWltYWdlSW5kZXggKiAxMDApO1xuICAgICAgICB9IGVsc2UgaWYgKCEhc3RhcnRUb3VjaCAmJiAhIWxhc3RUb3VjaCkge1xuICAgICAgICAgIHJldHVybiAoLWltYWdlSW5kZXggKiAxMDAgKyAobGFzdFRvdWNoLnBvc2l0aW9uLnggLSBzdGFydFRvdWNoLnBvc2l0aW9uLngpIC8gdGhpcy5jb250YWluZXJFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuY2xpZW50V2lkdGggKiAxMDApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiAoLWltYWdlSW5kZXggKiAxMDApO1xuICAgICAgICB9XG4gICAgICB9KSk7XG5cbiAgICAgIHRoaXMucGFkTGVmdCQgPSB0aGlzLnN3aXBlcyQucGlwZShtYXAoc3dpcGVzID0+IHtcbiAgICAgICAgaWYgKCFzd2lwZXMpIHtcbiAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCBjb3VudCA9IDA7XG4gICAgICAgIGZvciAoY29uc3QgcyBvZiBzd2lwZXMpIHtcbiAgICAgICAgICBpZiAoIXMub2Zmc2lkZSgpKSB7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY291bnQrKztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGNvdW50O1xuICAgICAgfSkpO1xuXG4gICAgICB0aGlzLnBhZFJpZ2h0JCA9IHRoaXMuc3dpcGVzJC5waXBlKG1hcChzd2lwZXMgPT4ge1xuICAgICAgICBpZiAoIXN3aXBlcykge1xuICAgICAgICAgIHJldHVybiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGNvdW50ID0gMDtcbiAgICAgICAgZm9yIChjb25zdCBzIG9mIHN3aXBlcy50b0FycmF5KCkucmV2ZXJzZSgpKSB7XG4gICAgICAgICAgaWYgKCFzLm9mZnNpZGUoKSkge1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvdW50Kys7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBjb3VudDtcbiAgICAgIH0pKTtcblxuICAgIHRoaXMub2Zmc2V0TGVmdCQgPSBjb21iaW5lTGF0ZXN0KFt0aGlzLm9mZnNldCQsIHRoaXMucGFkTGVmdCRdKVxuICAgICAgLnBpcGUobWFwKChbb2Zmc2V0LCBwYWRMZWZ0XSkgPT4gb2Zmc2V0IC0gcGFkTGVmdCAqIDEwMCkpO1xuICAgIHRoaXMub2Zmc2V0UmlnaHQkID0gY29tYmluZUxhdGVzdChbdGhpcy5vZmZzZXQkLCB0aGlzLnBhZExlZnQkLCB0aGlzLnBhZFJpZ2h0JF0pXG4gICAgICAucGlwZShtYXAoKFtvZmZzZXQsIHBhZExlZnQsIHBhZFJpZ2h0XSkgPT4gLShvZmZzZXQgLSBwYWRMZWZ0ICogMTAwKSAtIChwYWRSaWdodCAtIDEpICogMTAwKSk7XG4gICAgdGhpcy5vZmZzZXRMZWZ0JC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCgpKVxuICAgICAgLnN1YnNjcmliZShvZmZzZXRMZWZ0ID0+IHRoaXMub2Zmc2V0TGVmdCA9IG9mZnNldExlZnQpO1xuICAgIHRoaXMub2Zmc2V0UmlnaHQkLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKCkpXG4gICAgICAuc3Vic2NyaWJlKG9mZnNldFJpZ2h0ID0+IHRoaXMub2Zmc2V0UmlnaHQgPSBvZmZzZXRSaWdodCk7XG4gICAgdGhpcy5pbWFnZUluZGV4JC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCgpKVxuICAgICAgLnN1YnNjcmliZShpbWFnZUluZGV4ID0+IHRoaXMuaW1hZ2VJbmRleENoYW5nZS5lbWl0KGltYWdlSW5kZXgpKTtcblxuICAgIHRoaXMuYWN0dWFsU3dpcGVzJCA9IHRoaXMuc3dpcGVzJFxuICAgICAgLnBpcGUobWFwKHN3aXBlcyA9PiB7XG4gICAgICAgIGlmIChzd2lwZXMpIHtcbiAgICAgICAgICByZXR1cm4gc3dpcGVzLmZpbHRlcihzd2lwZSA9PiAhc3dpcGUub2Zmc2lkZSgpKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgIH1cbiAgICAgIH0pKTtcblxuICAgIHRoaXMuc2xpZGVTaXplcyQgPSB0aGlzLmFjdHVhbFN3aXBlcyRcbiAgICAgIC5waXBlKGRlbGF5KDQwMCksIGZpbHRlcihzd2lwZXMgPT4gISFzd2lwZXMpKVxuICAgICAgLnBpcGUobWVyZ2VNYXAoc3dpcGVzID0+IGNvbWJpbmVMYXRlc3Qoc3dpcGVzLm1hcChzd2lwZSA9PiBzd2lwZS5vYnNlcnZlU2l6ZS5zaXplJCkpKSk7XG5cbiAgICB0aGlzLmN1cnJlbnRTbGlkZUhlaWdodCQgPSBjb21iaW5lTGF0ZXN0KFt0aGlzLnNsaWRlU2l6ZXMkLCB0aGlzLmltYWdlSW5kZXgkXSlcbiAgICAgIC5waXBlKG1hcCgoW3NsaWRlU2l6ZXMsIGltYWdlSW5kZXhdKSA9PiB7XG4gICAgICAgIGNvbnN0IG1heEhlaWdodCA9IE1hdGgubWF4KC4uLnNsaWRlU2l6ZXMubWFwKHMgPT4gcz8uaGVpZ2h0ID8/IDEpKTtcbiAgICAgICAgY29uc29sZS5sb2coJ21heEhlaWdodCcsIHttYXhIZWlnaHQsIHNsaWRlU2l6ZXN9KTtcbiAgICAgICAgY29uc3QgY3VyckhlaWdodDogbnVtYmVyID0gc2xpZGVTaXplc1tpbWFnZUluZGV4XT8uaGVpZ2h0ID8/IG1heEhlaWdodDtcbiAgICAgICAgLy8gc3dpdGNoIChvcmllbnRhdGlvbikge1xuICAgICAgICAvLyAgIGNhc2UgJ2hvcml6b250YWwnOlxuICAgICAgICAgICAgcmV0dXJuIGN1cnJIZWlnaHQ7XG4gICAgICAgIC8vICAgY2FzZSAndmVydGljYWwnOlxuICAgICAgICAvLyAgICAgcmV0dXJuIG1heEhlaWdodDtcbiAgICAgICAgLy8gfVxuICAgICAgfSkpXG4gICAgICAucGlwZShkZWJvdW5jZVRpbWUoMTApKTtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnc3R5bGUubWFyZ2luLWxlZnQuJScpIG9mZnNldExlZnQ6IG51bWJlciB8IG51bGwgPSBudWxsO1xuICBASG9zdEJpbmRpbmcoJ3N0eWxlLm1hcmdpbi1yaWdodC4lJykgb2Zmc2V0UmlnaHQ6IG51bWJlciB8IG51bGwgPSBudWxsO1xuICBASG9zdEJpbmRpbmcoJ3N0eWxlLm1hcmdpbi10b3AuJScpIG9mZnNldFRvcDogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG4gIEBIb3N0QmluZGluZygnc3R5bGUubWFyZ2luLWJvdHRvbS4lJykgb2Zmc2V0Qm90dG9tOiBudW1iZXIgfCBudWxsID0gbnVsbDtcbiAgQENvbnRlbnRDaGlsZHJlbihmb3J3YXJkUmVmKCgpID0+IEJzU3dpcGVEaXJlY3RpdmUpKSBzZXQgc3dpcGVzKHZhbHVlOiBRdWVyeUxpc3Q8QnNTd2lwZURpcmVjdGl2ZT4pIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuc3dpcGVzJC5uZXh0KHZhbHVlKSk7XG4gIH1cbiAgQElucHV0KCkgbWluaW11bU9mZnNldCA9IDUwO1xuXG4gIC8vI3JlZ2lvbiBJbWFnZUluZGV4XG4gIHB1YmxpYyBnZXQgaW1hZ2VJbmRleCgpIHtcbiAgICByZXR1cm4gdGhpcy5pbWFnZUluZGV4JC52YWx1ZTtcbiAgfVxuICBASW5wdXQoKSBwdWJsaWMgc2V0IGltYWdlSW5kZXgodmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMuaW1hZ2VJbmRleCQubmV4dCh2YWx1ZSk7XG4gIH1cbiAgQE91dHB1dCgpIGltYWdlSW5kZXhDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcbiAgLy8jZW5kcmVnaW9uXG4gIFxuICBhY3R1YWxTd2lwZXMkOiBPYnNlcnZhYmxlPEJzU3dpcGVEaXJlY3RpdmVbXT47XG4gIGlzVmlld0luaXRlZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgc3RhcnRUb3VjaCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFN0YXJ0VG91Y2ggfCBudWxsPihudWxsKTtcbiAgbGFzdFRvdWNoJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TGFzdFRvdWNoIHwgbnVsbD4obnVsbCk7XG4gIHN3aXBlcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFF1ZXJ5TGlzdDxCc1N3aXBlRGlyZWN0aXZlPiB8IG51bGw+KG51bGwpO1xuICAvLyBUT0RPOiBzbGlkZSBzaXplcyBpbnN0ZWFkXG4gIHNsaWRlU2l6ZXMkOiBPYnNlcnZhYmxlPChTaXplIHwgdW5kZWZpbmVkKVtdPjtcbiAgaW1hZ2VJbmRleCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4oMCk7XG4gIGN1cnJlbnRTbGlkZUhlaWdodCQ6IE9ic2VydmFibGU8bnVtYmVyPjtcbiAgcGVuZGluZ0FuaW1hdGlvbj86IEFuaW1hdGlvblBsYXllcjtcbiAgY29udGFpbmVyRWxlbWVudDogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG4gIGRvY3VtZW50OiBEb2N1bWVudDtcblxuICAvLyBUT0RPOiBEb24ndCBqdXN0IGtlZXAgcHgsIGJ1dCBib3RoIHB4IGFuZCAlIHVzaW5nIGN1cnJlbnRzbGlkZXNpemUkXG4gIG9mZnNldCQ6IE9ic2VydmFibGU8bnVtYmVyPjtcbiAgb2Zmc2V0TGVmdCQ6IE9ic2VydmFibGU8bnVtYmVyPjtcbiAgb2Zmc2V0UmlnaHQkOiBPYnNlcnZhYmxlPG51bWJlcj47XG4gIHBhZExlZnQkOiBPYnNlcnZhYmxlPG51bWJlcj47XG4gIHBhZFJpZ2h0JDogT2JzZXJ2YWJsZTxudW1iZXI+O1xuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmlzVmlld0luaXRlZCQubmV4dCh0cnVlKTtcbiAgfVxuXG4gIGFuaW1hdGVUb0luZGV4QnlEeChkeDogbnVtYmVyKSB7XG4gICAgY29tYmluZUxhdGVzdChbdGhpcy5pbWFnZUluZGV4JCwgdGhpcy5hY3R1YWxTd2lwZXMkXSlcbiAgICAgIC5waXBlKHRha2UoMSksIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3kpKVxuICAgICAgLnN1YnNjcmliZSgoW2ltYWdlSW5kZXgsIGFjdHVhbFN3aXBlc10pID0+IHtcbiAgICAgICAgY29uc3QgZGlyZWN0aW9uID0gZHggPiAwID8gJ2xlZnQnIDogJ3JpZ2h0JztcbiAgICAgIFxuICAgICAgICBsZXQgbmV3SW5kZXg6IG51bWJlcjtcbiAgICAgICAgaWYgKE1hdGguYWJzKGR4KSA8IHRoaXMubWluaW11bU9mZnNldCkge1xuICAgICAgICAgIG5ld0luZGV4ID0gaW1hZ2VJbmRleDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBuZXdJbmRleCA9IGltYWdlSW5kZXggKyAoZGlyZWN0aW9uID09PSAncmlnaHQnID8gMSA6IC0xKTtcbiAgICAgICAgfVxuICBcbiAgICAgICAgdGhpcy5hbmltYXRlVG9JbmRleChpbWFnZUluZGV4LCBuZXdJbmRleCwgZHgsIGFjdHVhbFN3aXBlcz8ubGVuZ3RoID8/IDEpO1xuICAgICAgfSk7XG4gIH1cblxuICBhbmltYXRlVG9JbmRleChvbGRJbmRleDogbnVtYmVyLCBuZXdJbmRleDogbnVtYmVyLCBkeDogbnVtYmVyLCB0b3RhbFNsaWRlczogbnVtYmVyKSB7XG4gICAgdGhpcy5wZW5kaW5nQW5pbWF0aW9uID0gdGhpcy5hbmltYXRpb25CdWlsZGVyLmJ1aWxkKFtcbiAgICAgIHN0eWxlKHsgJ21hcmdpbi1sZWZ0JzogKC0ob2xkSW5kZXggKyAxKSAqIHRoaXMuY29udGFpbmVyRWxlbWVudC5uYXRpdmVFbGVtZW50LmNsaWVudFdpZHRoICsgZHgpICsgJ3B4JywgJ21hcmdpbi1yaWdodCc6ICgob2xkSW5kZXggKyAxKSAqIHRoaXMuY29udGFpbmVyRWxlbWVudC5uYXRpdmVFbGVtZW50LmNsaWVudFdpZHRoIC0gZHgpICsgJ3B4JyB9KSxcbiAgICAgIGFuaW1hdGUoJzUwMG1zIGVhc2UnLCBzdHlsZSh7ICdtYXJnaW4tbGVmdCc6ICgtKG5ld0luZGV4ICsgMSkgKiB0aGlzLmNvbnRhaW5lckVsZW1lbnQubmF0aXZlRWxlbWVudC5jbGllbnRXaWR0aCkgKyAncHgnLCAnbWFyZ2luLXJpZ2h0JzogKChuZXdJbmRleCArIDEpICogdGhpcy5jb250YWluZXJFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuY2xpZW50V2lkdGgpICsgJ3B4JyB9KSksXG4gICAgXSkuY3JlYXRlKHRoaXMuY29udGFpbmVyRWxlbWVudC5uYXRpdmVFbGVtZW50KTtcbiAgICB0aGlzLnBlbmRpbmdBbmltYXRpb24ub25Eb25lKCgpID0+IHtcbiAgICAgIC8vIENvcnJlY3QgdGhlIGltYWdlIGluZGV4XG4gICAgICBpZiAobmV3SW5kZXggPT09IC0xKSB7XG4gICAgICAgIHRoaXMuaW1hZ2VJbmRleCQubmV4dCh0b3RhbFNsaWRlcyAtIDEpO1xuICAgICAgfSBlbHNlIGlmIChuZXdJbmRleCA9PT0gdG90YWxTbGlkZXMpIHtcbiAgICAgICAgdGhpcy5pbWFnZUluZGV4JC5uZXh0KDApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5pbWFnZUluZGV4JC5uZXh0KG5ld0luZGV4KTtcbiAgICAgIH1cbiAgICAgIHRoaXMuc3RhcnRUb3VjaCQubmV4dChudWxsKTtcbiAgICAgIHRoaXMubGFzdFRvdWNoJC5uZXh0KG51bGwpO1xuICAgICAgdGhpcy5wZW5kaW5nQW5pbWF0aW9uPy5kZXN0cm95KCk7XG4gICAgICB0aGlzLnBlbmRpbmdBbmltYXRpb24gPSB1bmRlZmluZWQ7XG4gICAgfSk7XG4gICAgdGhpcy5wZW5kaW5nQW5pbWF0aW9uLnBsYXkoKTtcbiAgfVxuXG4gIG9uU3dpcGUoZHg6IG51bWJlcikge1xuICAgIHRoaXMuYW5pbWF0ZVRvSW5kZXhCeUR4KGR4KTtcbiAgfVxuXG4gIHByZXZpb3VzKCkge1xuICAgIHRoaXMuZ290b0FuaW1hdGUoLTEsICdyZWxhdGl2ZScpO1xuICB9XG5cbiAgbmV4dCgpIHtcbiAgICB0aGlzLmdvdG9BbmltYXRlKDEsICdyZWxhdGl2ZScpO1xuICB9XG5cbiAgZ290byhpbmRleDogbnVtYmVyKSB7XG4gICAgdGhpcy5nb3RvQW5pbWF0ZShpbmRleCwgJ2Fic29sdXRlJyk7XG4gIH1cblxuICBwcml2YXRlIGdvdG9BbmltYXRlKGluZGV4OiBudW1iZXIsIHR5cGU6ICdhYnNvbHV0ZScgfCAncmVsYXRpdmUnKSB7XG4gICAgdGhpcy5wZW5kaW5nQW5pbWF0aW9uPy5maW5pc2goKTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGNvbWJpbmVMYXRlc3QoW3RoaXMuYWN0dWFsU3dpcGVzJCwgdGhpcy5pbWFnZUluZGV4JF0pXG4gICAgICAgIC5waXBlKHRha2UoMSksIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3kpKVxuICAgICAgICAuc3Vic2NyaWJlKChbYWN0dWFsU3dpcGVzLCBpbWFnZUluZGV4XSkgPT4ge1xuICAgICAgICAgIHRoaXMucGVuZGluZ0FuaW1hdGlvbj8uZmluaXNoKCk7XG4gICAgICAgICAgY29uc3QgaWR4ID0gKHR5cGUgPT09ICdyZWxhdGl2ZScpID8gaW1hZ2VJbmRleCArIGluZGV4IDogaW5kZXg7XG4gICAgICAgICAgdGhpcy5hbmltYXRlVG9JbmRleChpbWFnZUluZGV4LCBpZHgsIDAsIGFjdHVhbFN3aXBlcz8ubGVuZ3RoID8/IDEpO1xuICAgICAgICB9KTtcbiAgICB9LCAyMCk7XG4gIH1cblxufVxuIl19","import { Directive, HostBinding, HostListener, input } from \"@angular/core\";\nimport { BsObserveSizeDirective } from \"@mintplayer/ng-swiper/observe-size\";\nimport { combineLatest, filter, take } from \"rxjs\";\nimport { takeUntilDestroyed } from \"@angular/core/rxjs-interop\";\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"../swipe-container/swipe-container.directive\";\nimport * as i2 from \"@mintplayer/ng-swiper/observe-size\";\nexport class BsSwipeDirective {\n container;\n destroy;\n constructor(container, observeSize, destroy) {\n this.container = container;\n this.destroy = destroy;\n this.observeSize = observeSize;\n // container.orientation$.pipe(takeUntilDestroyed())\n // .subscribe(orientation => this.hostClass = (orientation === 'vertical') ? 'd-block' : 'd-inline-block');\n }\n observeSize;\n offside = input(false, ...(ngDevMode ? [{ debugName: \"offside\" }] : []));\n classes = true;\n hostClass;\n onTouchStart(ev) {\n if (ev.touches.length === 1) {\n ev.preventDefault();\n this.container.pendingAnimation?.finish();\n setTimeout(() => {\n this.container.startTouch$.next({\n position: {\n x: ev.touches[0].clientX,\n y: ev.touches[0].clientY,\n },\n timestamp: Date.now(),\n });\n this.container.lastTouch$.next({\n position: {\n x: ev.touches[0].clientX,\n y: ev.touches[0].clientY,\n },\n isTouching: true,\n });\n }, 20);\n }\n }\n onTouchMove(ev) {\n this.container.lastTouch$.next({\n position: {\n x: ev.touches[0].clientX,\n y: ev.touches[0].clientY,\n },\n isTouching: true,\n });\n }\n onTouchEnd(ev) {\n combineLatest([this.container.startTouch$, this.container.lastTouch$])\n .pipe(filter(([startTouch, lastTouch]) => !!startTouch && !!lastTouch))\n .pipe(take(1), takeUntilDestroyed(this.destroy))\n .subscribe(([startTouch, lastTouch]) => {\n if (!!startTouch && !!lastTouch) {\n const dx = lastTouch.position.x - startTouch.position.x;\n this.container.onSwipe(dx);\n }\n });\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.7\", ngImport: i0, type: BsSwipeDirective, deps: [{ token: i1.BsSwipeContainerDirective }, { token: i2.BsObserveSizeDirective }, { token: i0.DestroyRef }], target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.1.7\", type: BsSwipeDirective, isStandalone: false, selector: \"[bsSwipe]\", inputs: { offside: { classPropertyName: \"offside\", publicName: \"offside\", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { \"touchstart\": \"onTouchStart($event)\", \"touchmove\": \"onTouchMove($event)\", \"touchend\": \"onTouchEnd($event)\" }, properties: { \"class.align-top\": \"this.classes\", \"class.d-inline-block\": \"this.classes\", \"class.float-none\": \"this.classes\", \"class.w-100\": \"this.classes\", \"class.pe-auto\": \"this.classes\", \"class.me-0\": \"this.classes\", \"class\": \"this.hostClass\" } }, hostDirectives: [{ directive: i2.BsObserveSizeDirective }], ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.7\", ngImport: i0, type: BsSwipeDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[bsSwipe]',\n hostDirectives: [BsObserveSizeDirective],\n standalone: false,\n }]\n }], ctorParameters: () => [{ type: i1.BsSwipeContainerDirective }, { type: i2.BsObserveSizeDirective }, { type: i0.DestroyRef }], propDecorators: { classes: [{\n type: HostBinding,\n args: ['class.align-top']\n }, {\n type: HostBinding,\n args: ['class.d-inline-block']\n }, {\n type: HostBinding,\n args: ['class.float-none']\n }, {\n type: HostBinding,\n args: ['class.w-100']\n }, {\n type: HostBinding,\n args: ['class.pe-auto']\n }, {\n type: HostBinding,\n args: ['class.me-0']\n }], hostClass: [{\n type: HostBinding,\n args: ['class']\n }], onTouchStart: [{\n type: HostListener,\n args: ['touchstart', ['$event']]\n }], onTouchMove: [{\n type: HostListener,\n args: ['touchmove', ['$event']]\n }], onTouchEnd: [{\n type: HostListener,\n args: ['touchend', ['$event']]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3dpcGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLXN3aXBlci9zd2lwZXIvc3JjL2RpcmVjdGl2ZXMvc3dpcGUvc3dpcGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxTQUFTLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDNUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7O0FBT2hFLE1BQU0sT0FBTyxnQkFBZ0I7SUFFUDtJQUFtRjtJQUF2RyxZQUFvQixTQUFvQyxFQUFFLFdBQW1DLEVBQVUsT0FBbUI7UUFBdEcsY0FBUyxHQUFULFNBQVMsQ0FBMkI7UUFBK0MsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQUN4SCxJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztRQUMvQixvREFBb0Q7UUFDcEQsNkdBQTZHO0lBQy9HLENBQUM7SUFFRCxXQUFXLENBQXlCO0lBRTdCLE9BQU8sR0FBRyxLQUFLLENBQUMsS0FBSyxtREFBQyxDQUFDO0lBUTlCLE9BQU8sR0FBRyxJQUFJLENBQUM7SUFFTyxTQUFTLENBQVU7SUFHekMsWUFBWSxDQUFDLEVBQWM7UUFDekIsSUFBSSxFQUFFLENBQUMsT0FBTyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUM1QixFQUFFLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDcEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsQ0FBQztZQUUxQyxVQUFVLENBQUMsR0FBRyxFQUFF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VTtzQkFEVCxZQUFZO3VCQUFDLFVBQVUsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERlc3Ryb3lSZWYsIERpcmVjdGl2ZSwgSG9zdEJpbmRpbmcsIEhvc3RMaXN0ZW5lciwgaW5wdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQnNPYnNlcnZlU2l6ZURpcmVjdGl2ZSB9IGZyb20gXCJAbWludHBsYXllci9uZy1zd2lwZXIvb2JzZXJ2ZS1zaXplXCI7XG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBmaWx0ZXIsIHRha2UgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgQnNTd2lwZUNvbnRhaW5lckRpcmVjdGl2ZSB9IGZyb20gXCIuLi9zd2lwZS1jb250YWluZXIvc3dpcGUtY29udGFpbmVyLmRpcmVjdGl2ZVwiO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wXCI7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tic1N3aXBlXScsXG4gIGhvc3REaXJlY3RpdmVzOiBbQnNPYnNlcnZlU2l6ZURpcmVjdGl2ZV0sXG4gIHN0YW5kYWxvbmU6IGZhbHNlLFxufSlcbmV4cG9ydCBjbGFzcyBCc1N3aXBlRGlyZWN0aXZlIHtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbnRhaW5lcjogQnNTd2lwZUNvbnRhaW5lckRpcmVjdGl2ZSwgb2JzZXJ2ZVNpemU6IEJzT2JzZXJ2ZVNpemVEaXJlY3RpdmUsIHByaXZhdGUgZGVzdHJveTogRGVzdHJveVJlZikge1xuICAgIHRoaXMub2JzZXJ2ZVNpemUgPSBvYnNlcnZlU2l6ZTtcbiAgICAvLyBjb250YWluZXIub3JpZW50YXRpb24kLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKCkpXG4gICAgLy8gICAuc3Vic2NyaWJlKG9yaWVudGF0aW9uID0+IHRoaXMuaG9zdENsYXNzID0gKG9yaWVudGF0aW9uID09PSAndmVydGljYWwnKSA/ICdkLWJsb2NrJyA6ICdkLWlubGluZS1ibG9jaycpO1xuICB9XG5cbiAgb2JzZXJ2ZVNpemU6IEJzT2JzZXJ2ZVNpemVEaXJlY3RpdmU7XG5cbiAgcHVibGljIG9mZnNpZGUgPSBpbnB1dChmYWxzZSk7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hbGlnbi10b3AnKVxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmQtaW5saW5lLWJsb2NrJylcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mbG9hdC1ub25lJylcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy53LTEwMCcpXG4gIEBIb3N0QmluZGluZygnY2xhc3MucGUtYXV0bycpXG4gIEBIb3N0QmluZGluZygnY2xhc3MubWUtMCcpXG4gIGNsYXNzZXMgPSB0cnVlO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKSBob3N0Q2xhc3M/OiBzdHJpbmc7XG5cbiAgQEhvc3RMaXN0ZW5lcigndG91Y2hzdGFydCcsIFsnJGV2ZW50J10pXG4gIG9uVG91Y2hTdGFydChldjogVG91Y2hFdmVudCkge1xuICAgIGlmIChldi50b3VjaGVzLmxlbmd0aCA9PT0gMSkge1xuICAgICAgZXYucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHRoaXMuY29udGFpbmVyLnBlbmRpbmdBbmltYXRpb24/LmZpbmlzaCgpO1xuXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5jb250YWluZXIuc3RhcnRUb3VjaCQubmV4dCh7XG4gICAgICAgICAgcG9zaXRpb246IHtcbiAgICAgICAgICAgIHg6IGV2LnRvdWNoZXNbMF0uY2xpZW50WCxcbiAgICAgICAgICAgIHk6IGV2LnRvdWNoZXNbMF0uY2xpZW50WSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHRpbWVzdGFtcDogRGF0ZS5ub3coKSxcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuY29udGFpbmVyLmxhc3RUb3VjaCQubmV4dCh7XG4gICAgICAgICAgcG9zaXRpb246IHtcbiAgICAgICAgICAgIHg6IGV2LnRvdWNoZXNbMF0uY2xpZW50WCxcbiAgICAgICAgICAgIHk6IGV2LnRvdWNoZXNbMF0uY2xpZW50WSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGlzVG91Y2hpbmc6IHRydWUsXG4gICAgICAgIH0pO1xuICAgICAgfSwgMjApO1xuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3RvdWNobW92ZScsIFsnJGV2ZW50J10pXG4gIG9uVG91Y2hNb3ZlKGV2OiBUb3VjaEV2ZW50KSB7XG4gICAgdGhpcy5jb250YWluZXIubGFzdFRvdWNoJC5uZXh0KHtcbiAgICAgIHBvc2l0aW9uOiB7XG4gICAgICAgIHg6IGV2LnRvdWNoZXNbMF0uY2xpZW50WCxcbiAgICAgICAgeTogZXYudG91Y2hlc1swXS5jbGllbnRZLFxuICAgICAgfSxcbiAgICAgIGlzVG91Y2hpbmc6IHRydWUsXG4gICAgfSk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCd0b3VjaGVuZCcsIFsnJGV2ZW50J10pXG4gIG9uVG91Y2hFbmQoZXY6IFRvdWNoRXZlbnQpIHtcbiAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLmNvbnRhaW5lci5zdGFydFRvdWNoJCwgdGhpcy5jb250YWluZXIubGFzdFRvdWNoJF0pXG4gICAgICAucGlwZShmaWx0ZXIoKFtzdGFydFRvdWNoLCBsYXN0VG91Y2hdKSA9PiAhIXN0YXJ0VG91Y2ggJiYgISFsYXN0VG91Y2gpKVxuICAgICAgLnBpcGUodGFrZSgxKSwgdGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveSkpXG4gICAgICAuc3Vic2NyaWJlKChbc3RhcnRUb3VjaCwgbGFzdFRvdWNoXSkgPT4ge1xuICAgICAgICBpZiAoISFzdGFydFRvdWNoICYmICEhbGFzdFRvdWNoKSB7XG4gICAgICAgICAgY29uc3QgZHggPSBsYXN0VG91Y2gucG9zaXRpb24ueCAtIHN0YXJ0VG91Y2gucG9zaXRpb24ueDtcbiAgICAgICAgICB0aGlzLmNvbnRhaW5lci5vblN3aXBlKGR4KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxufVxuIl19","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { BsSwipeDirective } from './directives/swipe/swipe.directive';\nimport { BsSwipeContainerDirective } from './directives/swipe-container/swipe-container.directive';\nimport * as i0 from \"@angular/core\";\nexport class BsSwiperModule {\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.7\", ngImport: i0, type: BsSwiperModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\n static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.7\", ngImport: i0, type: BsSwiperModule, declarations: [BsSwipeDirective, BsSwipeContainerDirective], imports: [CommonModule], exports: [BsSwipeDirective, BsSwipeContainerDirective] });\n static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.7\", ngImport: i0, type: BsSwiperModule, imports: [CommonModule] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.7\", ngImport: i0, type: BsSwiperModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule],\n declarations: [BsSwipeDirective, BsSwipeContainerDirective],\n exports: [BsSwipeDirective, BsSwipeContainerDirective],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3dpcGVyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1zd2lwZXIvc3dpcGVyL3NyYy9zd2lwZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDOztBQU9uRyxNQUFNLE9BQU8sY0FBYzt1R0FBZCxjQUFjO3dHQUFkLGNBQWMsaUJBSFYsZ0JBQWdCLEVBQUUseUJBQXlCLGFBRGhELFlBQVksYUFFWixnQkFBZ0IsRUFBRSx5QkFBeUI7d0dBRTFDLGNBQWMsWUFKZixZQUFZOzsyRkFJWCxjQUFjO2tCQUwxQixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsWUFBWSxFQUFFLENBQUMsZ0JBQWdCLEVBQUUseUJBQXlCLENBQUM7b0JBQzNELE9BQU8sRUFBRSxDQUFDLGdCQUFnQixFQUFFLHlCQUF5QixDQUFDO2lCQUN2RCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQnNTd2lwZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9zd2lwZS9zd2lwZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQnNTd2lwZUNvbnRhaW5lckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9zd2lwZS1jb250YWluZXIvc3dpcGUtY29udGFpbmVyLmRpcmVjdGl2ZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBkZWNsYXJhdGlvbnM6IFtCc1N3aXBlRGlyZWN0aXZlLCBCc1N3aXBlQ29udGFpbmVyRGlyZWN0aXZlXSxcbiAgZXhwb3J0czogW0JzU3dpcGVEaXJlY3RpdmUsIEJzU3dpcGVDb250YWluZXJEaXJlY3RpdmVdLFxufSlcbmV4cG9ydCBjbGFzcyBCc1N3aXBlck1vZHVsZSB7fVxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWludHBsYXllci1uZy1zd2lwZXItc3dpcGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLXN3aXBlci9zd2lwZXIvbWludHBsYXllci1uZy1zd2lwZXItc3dpcGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":["i1.BsSwipeContainerDirective"],"mappings":"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"}
1
+ {"version":3,"file":"mintplayer-ng-swiper-swiper.mjs","sources":["../tmp-esm2022/swiper/src/directives/swipe-container/swipe-container.directive.js","../tmp-esm2022/swiper/src/directives/swipe/swipe.directive.js","../tmp-esm2022/swiper/src/swiper.module.js","../tmp-esm2022/swiper/mintplayer-ng-swiper-swiper.js"],"sourcesContent":["import { DOCUMENT } from '@angular/common';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { animate, style } from '@angular/animations';\nimport { ContentChildren, Directive, EventEmitter, forwardRef, HostBinding, Inject, Input, Output } from '@angular/core';\nimport { BehaviorSubject, combineLatest, debounceTime, delay, distinctUntilChanged, filter, map, mergeMap, shareReplay, take } from 'rxjs';\nimport { BsObserveSizeDirective } from '@mintplayer/ng-swiper/observe-size';\nimport { BsSwipeDirective } from '../swipe/swipe.directive';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/animations\";\nimport * as i2 from \"@mintplayer/ng-swiper/observe-size\";\nexport class BsSwipeContainerDirective {\n animationBuilder;\n destroy;\n observeSize;\n constructor(element, animationBuilder, destroy, document, observeSize) {\n this.animationBuilder = animationBuilder;\n this.destroy = destroy;\n this.observeSize = observeSize;\n this.containerElement = element;\n this.document = document;\n this.offset$ = combineLatest([\n this.startTouch$,\n this.lastTouch$,\n this.imageIndex$,\n this.isViewInited$,\n this.orientation$,\n this.observeSize.size$,\n ])\n .pipe(map(([startTouch, lastTouch, imageIndex, isViewInited, orientation, containerSize]) => {\n if (!isViewInited) {\n return (-imageIndex * 100);\n }\n else if (!!startTouch && !!lastTouch) {\n const containerLength = orientation === 'horizontal'\n ? (containerSize?.width ?? this.containerElement.nativeElement.clientWidth)\n : (containerSize?.height ?? this.containerElement.nativeElement.clientHeight);\n if (containerLength === 0) {\n return (-imageIndex * 100);\n }\n const delta = orientation === 'horizontal'\n ? (lastTouch.position.x - startTouch.position.x)\n : (lastTouch.position.y - startTouch.position.y);\n return (-imageIndex * 100 + (delta / containerLength) * 100);\n }\n else {\n return (-imageIndex * 100);\n }\n }));\n this.padLeft$ = this.swipes$.pipe(map(swipes => {\n if (!swipes) {\n return 0;\n }\n let count = 0;\n for (const s of swipes) {\n if (!s.offside()) {\n break;\n }\n else {\n count++;\n }\n }\n return count;\n }));\n this.padRight$ = this.swipes$.pipe(map(swipes => {\n if (!swipes) {\n return 0;\n }\n let count = 0;\n for (const s of swipes.toArray().reverse()) {\n if (!s.offside()) {\n break;\n }\n else {\n count++;\n }\n }\n return count;\n }));\n this.offsetPrimary$ = combineLatest([this.offset$, this.padLeft$])\n .pipe(map(([offset, padLeft]) => offset - padLeft * 100));\n this.offsetSecondary$ = combineLatest([this.offset$, this.padLeft$, this.padRight$])\n .pipe(map(([offset, padLeft, padRight]) => -(offset - padLeft * 100) - (padRight - 1) * 100));\n combineLatest([this.offsetPrimary$, this.orientation$])\n .pipe(takeUntilDestroyed())\n .subscribe(([offsetPrimary, orientation]) => {\n if (orientation === 'horizontal') {\n this.offsetLeft = offsetPrimary;\n this.offsetTop = null;\n }\n else {\n this.offsetTop = offsetPrimary;\n this.offsetLeft = null;\n }\n });\n combineLatest([this.offsetSecondary$, this.orientation$])\n .pipe(takeUntilDestroyed())\n .subscribe(([offsetSecondary, orientation]) => {\n if (orientation === 'horizontal') {\n this.offsetRight = offsetSecondary;\n this.offsetBottom = null;\n }\n else {\n this.offsetBottom = offsetSecondary;\n this.offsetRight = null;\n }\n });\n this.imageIndex$.pipe(takeUntilDestroyed())\n .subscribe(imageIndex => this.imageIndexChange.emit(imageIndex));\n this.actualSwipes$ = this.swipes$\n .pipe(map(swipes => {\n if (swipes) {\n return swipes.filter(swipe => !swipe.offside());\n }\n else {\n return [];\n }\n }));\n this.slideSizes$ = this.actualSwipes$\n .pipe(delay(400), filter(swipes => !!swipes))\n .pipe(mergeMap(swipes => combineLatest(swipes.map(swipe => swipe.observeSize.size$))))\n .pipe(shareReplay({ bufferSize: 1, refCount: true }));\n this.maxSlideHeight$ = this.slideSizes$\n .pipe(map(slideSizes => {\n const heights = slideSizes.map(s => s?.height ?? 1);\n return heights.length ? Math.max(...heights) : 1;\n }))\n .pipe(shareReplay({ bufferSize: 1, refCount: true }));\n this.currentSlideHeight$ = combineLatest([this.slideSizes$, this.imageIndex$, this.orientation$])\n .pipe(map(([slideSizes, imageIndex, orientation]) => {\n const heights = slideSizes.map(s => s?.height ?? 1);\n const maxHeight = heights.length ? Math.max(...heights) : 1;\n const currHeight = slideSizes[imageIndex]?.height ?? maxHeight;\n return (orientation === 'vertical') ? maxHeight : currHeight;\n }))\n .pipe(shareReplay({ bufferSize: 1, refCount: true }))\n .pipe(debounceTime(10));\n this.orientation$\n .pipe(distinctUntilChanged(), takeUntilDestroyed())\n .subscribe(() => {\n this.offsetLeft = null;\n this.offsetRight = null;\n this.offsetTop = null;\n this.offsetBottom = null;\n });\n }\n offsetLeft = null;\n offsetRight = null;\n offsetTop = null;\n offsetBottom = null;\n set swipes(value) {\n setTimeout(() => this.swipes$.next(value));\n }\n minimumOffset = 50;\n get orientation() {\n return this.orientation$.value;\n }\n set orientation(value) {\n this.orientation$.next(value ?? 'horizontal');\n }\n //#region ImageIndex\n get imageIndex() {\n return this.imageIndex$.value;\n }\n set imageIndex(value) {\n this.imageIndex$.next(value);\n }\n imageIndexChange = new EventEmitter();\n //#endregion\n actualSwipes$;\n isViewInited$ = new BehaviorSubject(false);\n startTouch$ = new BehaviorSubject(null);\n lastTouch$ = new BehaviorSubject(null);\n swipes$ = new BehaviorSubject(null);\n // TODO: slide sizes instead\n slideSizes$;\n maxSlideHeight$;\n imageIndex$ = new BehaviorSubject(0);\n currentSlideHeight$;\n pendingAnimation;\n containerElement;\n document;\n // TODO: Don't just keep px, but both px and % using currentslidesize$\n offset$;\n offsetPrimary$;\n offsetSecondary$;\n padLeft$;\n padRight$;\n orientation$ = new BehaviorSubject('horizontal');\n ngAfterViewInit() {\n this.isViewInited$.next(true);\n }\n animateToIndexByDx(distance) {\n combineLatest([this.imageIndex$, this.actualSwipes$])\n .pipe(take(1), takeUntilDestroyed(this.destroy))\n .subscribe(([imageIndex, actualSwipes]) => {\n let newIndex;\n if (Math.abs(distance) < this.minimumOffset) {\n newIndex = imageIndex;\n }\n else {\n newIndex = imageIndex + (distance < 0 ? 1 : -1);\n }\n this.animateToIndex(imageIndex, newIndex, distance, actualSwipes?.length ?? 1);\n });\n }\n animateToIndex(oldIndex, newIndex, distance, totalSlides) {\n const orientation = this.orientation$.value;\n const containerElement = this.containerElement.nativeElement;\n const containerLength = orientation === 'horizontal' ? containerElement.clientWidth : containerElement.clientHeight;\n if (orientation === 'horizontal') {\n this.pendingAnimation = this.animationBuilder.build([\n style({\n 'margin-left': (-(oldIndex + 1) * containerLength + distance) + 'px',\n 'margin-right': ((oldIndex + 1) * containerLength - distance) + 'px',\n }),\n animate('500ms ease', style({\n 'margin-left': (-(newIndex + 1) * containerLength) + 'px',\n 'margin-right': ((newIndex + 1) * containerLength) + 'px',\n })),\n ]).create(containerElement);\n }\n else {\n this.pendingAnimation = this.animationBuilder.build([\n style({\n 'margin-top': (-(oldIndex + 1) * containerLength + distance) + 'px',\n 'margin-bottom': ((oldIndex + 1) * containerLength - distance) + 'px',\n }),\n animate('500ms ease', style({\n 'margin-top': (-(newIndex + 1) * containerLength) + 'px',\n 'margin-bottom': ((newIndex + 1) * containerLength) + 'px',\n })),\n ]).create(containerElement);\n }\n this.pendingAnimation.onDone(() => {\n // Correct the image index\n if (newIndex === -1) {\n this.imageIndex$.next(totalSlides - 1);\n }\n else if (newIndex === totalSlides) {\n this.imageIndex$.next(0);\n }\n else {\n this.imageIndex$.next(newIndex);\n }\n this.startTouch$.next(null);\n this.lastTouch$.next(null);\n this.pendingAnimation?.destroy();\n this.pendingAnimation = undefined;\n });\n this.pendingAnimation.play();\n }\n onSwipe(distance) {\n this.animateToIndexByDx(distance);\n }\n previous() {\n this.gotoAnimate(-1, 'relative');\n }\n next() {\n this.gotoAnimate(1, 'relative');\n }\n goto(index) {\n this.gotoAnimate(index, 'absolute');\n }\n gotoAnimate(index, type) {\n this.pendingAnimation?.finish();\n setTimeout(() => {\n combineLatest([this.actualSwipes$, this.imageIndex$])\n .pipe(take(1), takeUntilDestroyed(this.destroy))\n .subscribe(([actualSwipes, imageIndex]) => {\n this.pendingAnimation?.finish();\n const idx = (type === 'relative') ? imageIndex + index : index;\n this.animateToIndex(imageIndex, idx, 0, actualSwipes?.length ?? 1);\n });\n }, 20);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.7\", ngImport: i0, type: BsSwipeContainerDirective, deps: [{ token: i0.ElementRef }, { token: i1.AnimationBuilder }, { token: i0.DestroyRef }, { token: DOCUMENT }, { token: i2.BsObserveSizeDirective }], target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.7\", type: BsSwipeContainerDirective, isStandalone: false, selector: \"[bsSwipeContainer]\", inputs: { minimumOffset: \"minimumOffset\", orientation: \"orientation\", imageIndex: \"imageIndex\" }, outputs: { imageIndexChange: \"imageIndexChange\" }, host: { properties: { \"style.margin-left.%\": \"this.offsetLeft\", \"style.margin-right.%\": \"this.offsetRight\", \"style.margin-top.%\": \"this.offsetTop\", \"style.margin-bottom.%\": \"this.offsetBottom\" } }, queries: [{ propertyName: \"swipes\", predicate: i0.forwardRef(() => BsSwipeDirective) }], exportAs: [\"bsSwipeContainer\"], hostDirectives: [{ directive: i2.BsObserveSizeDirective }], ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.7\", ngImport: i0, type: BsSwipeContainerDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[bsSwipeContainer]',\n exportAs: 'bsSwipeContainer',\n standalone: false,\n hostDirectives: [BsObserveSizeDirective],\n }]\n }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.AnimationBuilder }, { type: i0.DestroyRef }, { type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }, { type: i2.BsObserveSizeDirective }], propDecorators: { offsetLeft: [{\n type: HostBinding,\n args: ['style.margin-left.%']\n }], offsetRight: [{\n type: HostBinding,\n args: ['style.margin-right.%']\n }], offsetTop: [{\n type: HostBinding,\n args: ['style.margin-top.%']\n }], offsetBottom: [{\n type: HostBinding,\n args: ['style.margin-bottom.%']\n }], swipes: [{\n type: ContentChildren,\n args: [forwardRef(() => BsSwipeDirective)]\n }], minimumOffset: [{\n type: Input\n }], orientation: [{\n type: Input\n }], imageIndex: [{\n type: Input\n }], imageIndexChange: [{\n type: Output\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3dpcGUtY29udGFpbmVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1zd2lwZXIvc3dpcGVyL3NyYy9kaXJlY3RpdmVzL3N3aXBlLWNvbnRhaW5lci9zd2lwZS1jb250YWluZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsT0FBTyxFQUFxQyxLQUFLLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN4RixPQUFPLEVBQWlCLGVBQWUsRUFBYyxTQUFTLEVBQWMsWUFBWSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDM0ssT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBYyxXQUFXLEVBQUUsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZKLE9BQU8sRUFBRSxzQkFBc0IsRUFBUSxNQUFNLG9DQUFvQyxDQUFDO0FBR2xGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7O0FBUTVELE1BQU0sT0FBTyx5QkFBeUI7SUFFSztJQUE0QztJQUE4RDtJQUFuSixZQUFZLE9BQW1CLEVBQVUsZ0JBQWtDLEVBQVUsT0FBbUIsRUFBb0IsUUFBYSxFQUFVLFdBQW1DO1FBQTdJLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFBVSxZQUFPLEdBQVAsT0FBTyxDQUFZO1FBQTJDLGdCQUFXLEdBQVgsV0FBVyxDQUF3QjtRQUNwTCxJQUFJLENB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QUFVLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxZQUFZLEVBQUUsTUFBTSxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBQ3JFLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ1QsQ0FBQzt1R0FsUlUseUJBQXlCLHNHQUU4RSxRQUFROzJGQUYvRyx5QkFBeUIscWRBMElGLGdCQUFnQjs7MkZBMUl2Qyx5QkFBeUI7a0JBTnJDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsVUFBVSxFQUFFLEtBQUs7b0JBQ2pCLGNBQWMsRUFBRSxDQUFDLHNCQUFzQixDQUFDO2lCQUN6Qzs7MEJBRzRHLE1BQU07MkJBQUMsUUFBUTs4RUFvSXRGLFVBQVU7c0JBQTdDLFdBQVc7dUJBQUMscUJBQXFCO2dCQUNHLFdBQVc7c0JBQS9DLFdBQVc7dUJBQUMsc0JBQXNCO2dCQUNBLFNBQVM7c0JBQTNDLFdBQVc7dUJBQUMsb0JBQW9CO2dCQUNLLFlBQVk7c0JBQWpELFdBQVc7dUJBQUMsdUJBQXVCO2dCQUNxQixNQUFNO3NCQUE5RCxlQUFlO3VCQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztnQkFHMUMsYUFBYTtzQkFBckIsS0FBSztnQkFLYyxXQUFXO3NCQUE5QixLQUFLO2dCQVFjLFVBQVU7c0JBQTdCLEtBQUs7Z0JBR0ksZ0JBQWdCO3NCQUF6QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgYW5pbWF0ZSwgQW5pbWF0aW9uQnVpbGRlciwgQW5pbWF0aW9uUGxheWVyLCBzdHlsZSB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29udGVudENoaWxkcmVuLCBEZXN0cm95UmVmLCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgZm9yd2FyZFJlZiwgSG9zdEJpbmRpbmcsIEluamVjdCwgSW5wdXQsIE91dHB1dCwgUXVlcnlMaXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIGRlYm91bmNlVGltZSwgZGVsYXksIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIG1hcCwgbWVyZ2VNYXAsIE9ic2VydmFibGUsIHNoYXJlUmVwbGF5LCB0YWtlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBCc09ic2VydmVTaXplRGlyZWN0aXZlLCBTaXplIH0gZnJvbSAnQG1pbnRwbGF5ZXIvbmctc3dpcGVyL29ic2VydmUtc2l6ZSc7XG5pbXBvcnQgeyBMYXN0VG91Y2ggfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2xhc3QtdG91Y2gnO1xuaW1wb3J0IHsgU3RhcnRUb3VjaCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvc3RhcnQtdG91Y2gnO1xuaW1wb3J0IHsgQnNTd2lwZURpcmVjdGl2ZSB9IGZyb20gJy4uL3N3aXBlL3N3aXBlLmRpcmVjdGl2ZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tic1N3aXBlQ29udGFpbmVyXScsXG4gIGV4cG9ydEFzOiAnYnNTd2lwZUNvbnRhaW5lcicsXG4gIHN0YW5kYWxvbmU6IGZhbHNlLFxuICBob3N0RGlyZWN0aXZlczogW0JzT2JzZXJ2ZVNpemVEaXJlY3RpdmVdLFxufSlcbmV4cG9ydCBjbGFzcyBCc1N3aXBlQ29udGFpbmVyRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgY29uc3RydWN0b3IoZWxlbWVudDogRWxlbWVudFJlZiwgcHJpdmF0ZSBhbmltYXRpb25CdWlsZGVyOiBBbmltYXRpb25CdWlsZGVyLCBwcml2YXRlIGRlc3Ryb3k6IERlc3Ryb3lSZWYsIEBJbmplY3QoRE9DVU1FTlQpIGRvY3VtZW50OiBhbnksIHByaXZhdGUgb2JzZXJ2ZVNpemU6IEJzT2JzZXJ2ZVNpemVEaXJlY3RpdmUpIHtcbiAgICB0aGlzLmNvbnRhaW5lckVsZW1lbnQgPSBlbGVtZW50O1xuICAgIHRoaXMuZG9jdW1lbnQgPSA8RG9jdW1lbnQ+ZG9jdW1lbnQ7XG4gICAgdGhpcy5vZmZzZXQkID0gY29tYmluZUxhdGVzdChbXG4gICAgICB0aGlzLnN0YXJ0VG91Y2gkLFxuICAgICAgdGhpcy5sYXN0VG91Y2gkLFxuICAgICAgdGhpcy5pbWFnZUluZGV4JCxcbiAgICAgIHRoaXMuaXNWaWV3SW5pdGVkJCxcbiAgICAgIHRoaXMub3JpZW50YXRpb24kLFxuICAgICAgdGhpcy5vYnNlcnZlU2l6ZS5zaXplJCxcbiAgICBdKVxuICAgICAgLnBpcGUobWFwKChbc3RhcnRUb3VjaCwgbGFzdFRvdWNoLCBpbWFnZUluZGV4LCBpc1ZpZXdJbml0ZWQsIG9yaWVudGF0aW9uLCBjb250YWluZXJTaXplXSkgPT4ge1xuICAgICAgICBpZiAoIWlzVmlld0luaXRlZCkge1xuICAgICAgICAgIHJldHVybiAoLWltYWdlSW5kZXggKiAxMDApO1xuICAgICAgICB9IGVsc2UgaWYgKCEhc3RhcnRUb3VjaCAmJiAhIWxhc3RUb3VjaCkge1xuICAgICAgICAgIGNvbnN0IGNvbnRhaW5lckxlbmd0aCA9IG9yaWVudGF0aW9uID09PSAnaG9yaXpvbnRhbCdcbiAgICAgICAgICAgID8gKGNvbnRhaW5lclNpemU/LndpZHRoID8/IHRoaXMuY29udGFpbmVyRWxlbWVudC5uYXRpdmVFbGVtZW50LmNsaWVudFdpZHRoKVxuICAgICAgICAgICAgOiAoY29udGFpbmVyU2l6ZT8uaGVpZ2h0ID8/IHRoaXMuY29udGFpbmVyRWxlbWVudC5uYXRpdmVFbGVtZW50LmNsaWVudEhlaWdodCk7XG4gICAgICAgICAgaWYgKGNvbnRhaW5lckxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgcmV0dXJuICgtaW1hZ2VJbmRleCAqIDEwMCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnN0IGRlbHRhID0gb3JpZW50YXRpb24gPT09ICdob3Jpem9udGFsJ1xuICAgICAgICAgICAgPyAobGFzdFRvdWNoLnBvc2l0aW9uLnggLSBzdGFydFRvdWNoLnBvc2l0aW9uLngpXG4gICAgICAgICAgICA6IChsYXN0VG91Y2gucG9zaXRpb24ueSAtIHN0YXJ0VG91Y2gucG9zaXRpb24ueSk7XG4gICAgICAgICAgcmV0dXJuICgtaW1hZ2VJbmRleCAqIDEwMCArIChkZWx0YSAvIGNvbnRhaW5lckxlbmd0aCkgKiAxMDApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiAoLWltYWdlSW5kZXggKiAxMDApO1xuICAgICAgICB9XG4gICAgICB9KSk7XG5cbiAgICB0aGlzLnBhZExlZnQkID0gdGhpcy5zd2lwZXMkLnBpcGUobWFwKHN3aXBlcyA9PiB7XG4gICAgICBpZiAoIXN3aXBlcykge1xuICAgICAgICByZXR1cm4gMDtcbiAgICAgIH1cblxuICAgICAgbGV0IGNvdW50ID0gMDtcbiAgICAgIGZvciAoY29uc3QgcyBvZiBzd2lwZXMpIHtcbiAgICAgICAgaWYgKCFzLm9mZnNpZGUoKSkge1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvdW50Kys7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiBjb3VudDtcbiAgICB9KSk7XG5cbiAgICB0aGlzLnBhZFJpZ2h0JCA9IHRoaXMuc3dpcGVzJC5waXBlKG1hcChzd2lwZXMgPT4ge1xuICAgICAgaWYgKCFzd2lwZXMpIHtcbiAgICAgICAgcmV0dXJuIDA7XG4gICAgICB9XG5cbiAgICAgIGxldCBjb3VudCA9IDA7XG4gICAgICBmb3IgKGNvbnN0IHMgb2Ygc3dpcGVzLnRvQXJyYXkoKS5yZXZlcnNlKCkpIHtcbiAgICAgICAgaWYgKCFzLm9mZnNpZGUoKSkge1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvdW50Kys7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiBjb3VudDtcbiAgICB9KSk7XG5cbiAgICB0aGlzLm9mZnNldFByaW1hcnkkID0gY29tYmluZUxhdGVzdChbdGhpcy5vZmZzZXQkLCB0aGlzLnBhZExlZnQkXSlcbiAgICAgIC5waXBlKG1hcCgoW29mZnNldCwgcGFkTGVmdF0pID0+IG9mZnNldCAtIHBhZExlZnQgKiAxMDApKTtcbiAgICB0aGlzLm9mZnNldFNlY29uZGFyeSQgPSBjb21iaW5lTGF0ZXN0KFt0aGlzLm9mZnNldCQsIHRoaXMucGFkTGVmdCQsIHRoaXMucGFkUmlnaHQkXSlcbiAgICAgIC5waXBlKG1hcCgoW29mZnNldCwgcGFkTGVmdCwgcGFkUmlnaHRdKSA9PiAtKG9mZnNldCAtIHBhZExlZnQgKiAxMDApIC0gKHBhZFJpZ2h0IC0gMSkgKiAxMDApKTtcbiAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLm9mZnNldFByaW1hcnkkLCB0aGlzLm9yaWVudGF0aW9uJF0pXG4gICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQoKSlcbiAgICAgIC5zdWJzY3JpYmUoKFtvZmZzZXRQcmltYXJ5LCBvcmllbnRhdGlvbl0pID0+IHtcbiAgICAgICAgaWYgKG9yaWVudGF0aW9uID09PSAnaG9yaXpvbnRhbCcpIHtcbiAgICAgICAgICB0aGlzLm9mZnNldExlZnQgPSBvZmZzZXRQcmltYXJ5O1xuICAgICAgICAgIHRoaXMub2Zmc2V0VG9wID0gbnVsbDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLm9mZnNldFRvcCA9IG9mZnNldFByaW1hcnk7XG4gICAgICAgICAgdGhpcy5vZmZzZXRMZWZ0ID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgY29tYmluZUxhdGVzdChbdGhpcy5vZmZzZXRTZWNvbmRhcnkkLCB0aGlzLm9yaWVudGF0aW9uJF0pXG4gICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQoKSlcbiAgICAgIC5zdWJzY3JpYmUoKFtvZmZzZXRTZWNvbmRhcnksIG9yaWVudGF0aW9uXSkgPT4ge1xuICAgICAgICBpZiAob3JpZW50YXRpb24gPT09ICdob3Jpem9udGFsJykge1xuICAgICAgICAgIHRoaXMub2Zmc2V0UmlnaHQgPSBvZmZzZXRTZWNvbmRhcnk7XG4gICAgICAgICAgdGhpcy5vZmZzZXRCb3R0b20gPSBudWxsO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMub2Zmc2V0Qm90dG9tID0gb2Zmc2V0U2Vjb25kYXJ5O1xuICAgICAgICAgIHRoaXMub2Zmc2V0UmlnaHQgPSBudWxsO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB0aGlzLmltYWdlSW5kZXgkLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKCkpXG4gICAgICAuc3Vic2NyaWJlKGltYWdlSW5kZXggPT4gdGhpcy5pbWFnZUluZGV4Q2hhbmdlLmVtaXQoaW1hZ2VJbmRleCkpO1xuXG4gICAgdGhpcy5hY3R1YWxTd2lwZXMkID0gdGhpcy5zd2lwZXMkXG4gICAgICAucGlwZShtYXAoc3dpcGVzID0+IHtcbiAgICAgICAgaWYgKHN3aXBlcykge1xuICAgICAgICAgIHJldHVybiBzd2lwZXMuZmlsdGVyKHN3aXBlID0+ICFzd2lwZS5vZmZzaWRlKCkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgfVxuICAgICAgfSkpO1xuXG4gICAgdGhpcy5zbGlkZVNpemVzJCA9IHRoaXMuYWN0dWFsU3dpcGVzJFxuICAgICAgLnBpcGUoZGVsYXkoNDAwKSwgZmlsdGVyKHN3aXBlcyA9PiAhIXN3aXBlcykpXG4gICAgICAucGlwZShtZXJnZU1hcChzd2lwZXMgPT4gY29tYmluZUxhdGVzdChzd2lwZXMubWFwKHN3aXBlID0+IHN3aXBlLm9ic2VydmVTaXplLnNpemUkKSkpKVxuICAgICAgLnBpcGUoc2hhcmVSZXBsYXkoeyBidWZmZXJTaXplOiAxLCByZWZDb3VudDogdHJ1ZSB9KSk7XG5cbiAgICB0aGlzLm1heFNsaWRlSGVpZ2h0JCA9IHRoaXMuc2xpZGVTaXplcyRcbiAgICAgIC5waXBlKG1hcChzbGlkZVNpemVzID0+IHtcbiAgICAgICAgY29uc3QgaGVpZ2h0cyA9IHNsaWRlU2l6ZXMubWFwKHMgPT4gcz8uaGVpZ2h0ID8/IDEpO1xuICAgICAgICByZXR1cm4gaGVpZ2h0cy5sZW5ndGggPyBNYXRoLm1heCguLi5oZWlnaHRzKSA6IDE7XG4gICAgICB9KSlcbiAgICAgIC5waXBlKHNoYXJlUmVwbGF5KHsgYnVmZmVyU2l6ZTogMSwgcmVmQ291bnQ6IHRydWUgfSkpO1xuXG4gICAgdGhpcy5jdXJyZW50U2xpZGVIZWlnaHQkID0gY29tYmluZUxhdGVzdChbdGhpcy5zbGlkZVNpemVzJCwgdGhpcy5pbWFnZUluZGV4JCwgdGhpcy5vcmllbnRhdGlvbiRdKVxuICAgICAgLnBpcGUobWFwKChbc2xpZGVTaXplcywgaW1hZ2VJbmRleCwgb3JpZW50YXRpb25dKSA9PiB7XG4gICAgICAgIGNvbnN0IGhlaWdodHMgPSBzbGlkZVNpemVzLm1hcChzID0+IHM/LmhlaWdodCA/PyAxKTtcbiAgICAgICAgY29uc3QgbWF4SGVpZ2h0ID0gaGVpZ2h0cy5sZW5ndGggPyBNYXRoLm1heCguLi5oZWlnaHRzKSA6IDE7XG4gICAgICAgIGNvbnN0IGN1cnJIZWlnaHQ6IG51bWJlciA9IHNsaWRlU2l6ZXNbaW1hZ2VJbmRleF0/LmhlaWdodCA/PyBtYXhIZWlnaHQ7XG4gICAgICAgIHJldHVybiAob3JpZW50YXRpb24gPT09ICd2ZXJ0aWNhbCcpID8gbWF4SGVpZ2h0IDogY3VyckhlaWdodDtcbiAgICAgIH0pKVxuICAgICAgLnBpcGUoc2hhcmVSZXBsYXkoeyBidWZmZXJTaXplOiAxLCByZWZDb3VudDogdHJ1ZSB9KSlcbiAgICAgIC5waXBlKGRlYm91bmNlVGltZSgxMCkpO1xuXG4gICAgdGhpcy5vcmllbnRhdGlvbiRcbiAgICAgIC5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksIHRha2VVbnRpbERlc3Ryb3llZCgpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMub2Zmc2V0TGVmdCA9IG51bGw7XG4gICAgICAgIHRoaXMub2Zmc2V0UmlnaHQgPSBudWxsO1xuICAgICAgICB0aGlzLm9mZnNldFRvcCA9IG51bGw7XG4gICAgICAgIHRoaXMub2Zmc2V0Qm90dG9tID0gbnVsbDtcbiAgICAgIH0pO1xuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS5tYXJnaW4tbGVmdC4lJykgb2Zmc2V0TGVmdDogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG4gIEBIb3N0QmluZGluZygnc3R5bGUubWFyZ2luLXJpZ2h0LiUnKSBvZmZzZXRSaWdodDogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG4gIEBIb3N0QmluZGluZygnc3R5bGUubWFyZ2luLXRvcC4lJykgb2Zmc2V0VG9wOiBudW1iZXIgfCBudWxsID0gbnVsbDtcbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS5tYXJnaW4tYm90dG9tLiUnKSBvZmZzZXRCb3R0b206IG51bWJlciB8IG51bGwgPSBudWxsO1xuICBAQ29udGVudENoaWxkcmVuKGZvcndhcmRSZWYoKCkgPT4gQnNTd2lwZURpcmVjdGl2ZSkpIHNldCBzd2lwZXModmFsdWU6IFF1ZXJ5TGlzdDxCc1N3aXBlRGlyZWN0aXZlPikge1xuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5zd2lwZXMkLm5leHQodmFsdWUpKTtcbiAgfVxuICBASW5wdXQoKSBtaW5pbXVtT2Zmc2V0ID0gNTA7XG5cbiAgcHVibGljIGdldCBvcmllbnRhdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5vcmllbnRhdGlvbiQudmFsdWU7XG4gIH1cbiAgQElucHV0KCkgcHVibGljIHNldCBvcmllbnRhdGlvbih2YWx1ZTogJ2hvcml6b250YWwnIHwgJ3ZlcnRpY2FsJykge1xuICAgIHRoaXMub3JpZW50YXRpb24kLm5leHQodmFsdWUgPz8gJ2hvcml6b250YWwnKTtcbiAgfVxuXG4gIC8vI3JlZ2lvbiBJbWFnZUluZGV4XG4gIHB1YmxpYyBnZXQgaW1hZ2VJbmRleCgpIHtcbiAgICByZXR1cm4gdGhpcy5pbWFnZUluZGV4JC52YWx1ZTtcbiAgfVxuICBASW5wdXQoKSBwdWJsaWMgc2V0IGltYWdlSW5kZXgodmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMuaW1hZ2VJbmRleCQubmV4dCh2YWx1ZSk7XG4gIH1cbiAgQE91dHB1dCgpIGltYWdlSW5kZXhDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcbiAgLy8jZW5kcmVnaW9uXG4gIFxuICBhY3R1YWxTd2lwZXMkOiBPYnNlcnZhYmxlPEJzU3dpcGVEaXJlY3RpdmVbXT47XG4gIGlzVmlld0luaXRlZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgc3RhcnRUb3VjaCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFN0YXJ0VG91Y2ggfCBudWxsPihudWxsKTtcbiAgbGFzdFRvdWNoJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TGFzdFRvdWNoIHwgbnVsbD4obnVsbCk7XG4gIHN3aXBlcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFF1ZXJ5TGlzdDxCc1N3aXBlRGlyZWN0aXZlPiB8IG51bGw+KG51bGwpO1xuICAvLyBUT0RPOiBzbGlkZSBzaXplcyBpbnN0ZWFkXG4gIHNsaWRlU2l6ZXMkOiBPYnNlcnZhYmxlPChTaXplIHwgdW5kZWZpbmVkKVtdPjtcbiAgbWF4U2xpZGVIZWlnaHQkOiBPYnNlcnZhYmxlPG51bWJlcj47XG4gIGltYWdlSW5kZXgkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+KDApO1xuICBjdXJyZW50U2xpZGVIZWlnaHQkOiBPYnNlcnZhYmxlPG51bWJlcj47XG4gIHBlbmRpbmdBbmltYXRpb24/OiBBbmltYXRpb25QbGF5ZXI7XG4gIGNvbnRhaW5lckVsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuICBkb2N1bWVudDogRG9jdW1lbnQ7XG5cbiAgLy8gVE9ETzogRG9uJ3QganVzdCBrZWVwIHB4LCBidXQgYm90aCBweCBhbmQgJSB1c2luZyBjdXJyZW50c2xpZGVzaXplJFxuICBvZmZzZXQkOiBPYnNlcnZhYmxlPG51bWJlcj47XG4gIG9mZnNldFByaW1hcnkkOiBPYnNlcnZhYmxlPG51bWJlcj47XG4gIG9mZnNldFNlY29uZGFyeSQ6IE9ic2VydmFibGU8bnVtYmVyPjtcbiAgcGFkTGVmdCQ6IE9ic2VydmFibGU8bnVtYmVyPjtcbiAgcGFkUmlnaHQkOiBPYnNlcnZhYmxlPG51bWJlcj47XG5cbiAgb3JpZW50YXRpb24kID0gbmV3IEJlaGF2aW9yU3ViamVjdDwnaG9yaXpvbnRhbCcgfCAndmVydGljYWwnPignaG9yaXpvbnRhbCcpO1xuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmlzVmlld0luaXRlZCQubmV4dCh0cnVlKTtcbiAgfVxuXG4gIGFuaW1hdGVUb0luZGV4QnlEeChkaXN0YW5jZTogbnVtYmVyKSB7XG4gICAgY29tYmluZUxhdGVzdChbdGhpcy5pbWFnZUluZGV4JCwgdGhpcy5hY3R1YWxTd2lwZXMkXSlcbiAgICAgIC5waXBlKHRha2UoMSksIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3kpKVxuICAgICAgLnN1YnNjcmliZSgoW2ltYWdlSW5kZXgsIGFjdHVhbFN3aXBlc10pID0+IHtcbiAgICAgICAgbGV0IG5ld0luZGV4OiBudW1iZXI7XG4gICAgICAgIGlmIChNYXRoLmFicyhkaXN0YW5jZSkgPCB0aGlzLm1pbmltdW1PZmZzZXQpIHtcbiAgICAgICAgICBuZXdJbmRleCA9IGltYWdlSW5kZXg7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgbmV3SW5kZXggPSBpbWFnZUluZGV4ICsgKGRpc3RhbmNlIDwgMCA/IDEgOiAtMSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmFuaW1hdGVUb0luZGV4KGltYWdlSW5kZXgsIG5ld0luZGV4LCBkaXN0YW5jZSwgYWN0dWFsU3dpcGVzPy5sZW5ndGggPz8gMSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIGFuaW1hdGVUb0luZGV4KG9sZEluZGV4OiBudW1iZXIsIG5ld0luZGV4OiBudW1iZXIsIGRpc3RhbmNlOiBudW1iZXIsIHRvdGFsU2xpZGVzOiBudW1iZXIpIHtcbiAgICBjb25zdCBvcmllbnRhdGlvbiA9IHRoaXMub3JpZW50YXRpb24kLnZhbHVlO1xuICAgIGNvbnN0IGNvbnRhaW5lckVsZW1lbnQgPSB0aGlzLmNvbnRhaW5lckVsZW1lbnQubmF0aXZlRWxlbWVudDtcbiAgICBjb25zdCBjb250YWluZXJMZW5ndGggPSBvcmllbnRhdGlvbiA9PT0gJ2hvcml6b250YWwnID8gY29udGFpbmVyRWxlbWVudC5jbGllbnRXaWR0aCA6IGNvbnRhaW5lckVsZW1lbnQuY2xpZW50SGVpZ2h0O1xuXG4gICAgaWYgKG9yaWVudGF0aW9uID09PSAnaG9yaXpvbnRhbCcpIHtcbiAgICAgIHRoaXMucGVuZGluZ0FuaW1hdGlvbiA9IHRoaXMuYW5pbWF0aW9uQnVpbGRlci5idWlsZChbXG4gICAgICAgIHN0eWxlKHtcbiAgICAgICAgICAnbWFyZ2luLWxlZnQnOiAoLShvbGRJbmRleCArIDEpICogY29udGFpbmVyTGVuZ3RoICsgZGlzdGFuY2UpICsgJ3B4JyxcbiAgICAgICAgICAnbWFyZ2luLXJpZ2h0JzogKChvbGRJbmRleCArIDEpICogY29udGFpbmVyTGVuZ3RoIC0gZGlzdGFuY2UpICsgJ3B4JyxcbiAgICAgICAgfSksXG4gICAgICAgIGFuaW1hdGUoJzUwMG1zIGVhc2UnLCBzdHlsZSh7XG4gICAgICAgICAgJ21hcmdpbi1sZWZ0JzogKC0obmV3SW5kZXggKyAxKSAqIGNvbnRhaW5lckxlbmd0aCkgKyAncHgnLFxuICAgICAgICAgICdtYXJnaW4tcmlnaHQnOiAoKG5ld0luZGV4ICsgMSkgKiBjb250YWluZXJMZW5ndGgpICsgJ3B4JyxcbiAgICAgICAgfSkpLFxuICAgICAgXSkuY3JlYXRlKGNvbnRhaW5lckVsZW1lbnQpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnBlbmRpbmdBbmltYXRpb24gPSB0aGlzLmFuaW1hdGlvbkJ1aWxkZXIuYnVpbGQoW1xuICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgJ21hcmdpbi10b3AnOiAoLShvbGRJbmRleCArIDEpICogY29udGFpbmVyTGVuZ3RoICsgZGlzdGFuY2UpICsgJ3B4JyxcbiAgICAgICAgICAnbWFyZ2luLWJvdHRvbSc6ICgob2xkSW5kZXggKyAxKSAqIGNvbnRhaW5lckxlbmd0aCAtIGRpc3RhbmNlKSArICdweCcsXG4gICAgICAgIH0pLFxuICAgICAgICBhbmltYXRlKCc1MDBtcyBlYXNlJywgc3R5bGUoe1xuICAgICAgICAgICdtYXJnaW4tdG9wJzogKC0obmV3SW5kZXggKyAxKSAqIGNvbnRhaW5lckxlbmd0aCkgKyAncHgnLFxuICAgICAgICAgICdtYXJnaW4tYm90dG9tJzogKChuZXdJbmRleCArIDEpICogY29udGFpbmVyTGVuZ3RoKSArICdweCcsXG4gICAgICAgIH0pKSxcbiAgICAgIF0pLmNyZWF0ZShjb250YWluZXJFbGVtZW50KTtcbiAgICB9XG4gICAgdGhpcy5wZW5kaW5nQW5pbWF0aW9uLm9uRG9uZSgoKSA9PiB7XG4gICAgICAvLyBDb3JyZWN0IHRoZSBpbWFnZSBpbmRleFxuICAgICAgaWYgKG5ld0luZGV4ID09PSAtMSkge1xuICAgICAgICB0aGlzLmltYWdlSW5kZXgkLm5leHQodG90YWxTbGlkZXMgLSAxKTtcbiAgICAgIH0gZWxzZSBpZiAobmV3SW5kZXggPT09IHRvdGFsU2xpZGVzKSB7XG4gICAgICAgIHRoaXMuaW1hZ2VJbmRleCQubmV4dCgwKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuaW1hZ2VJbmRleCQubmV4dChuZXdJbmRleCk7XG4gICAgICB9XG4gICAgICB0aGlzLnN0YXJ0VG91Y2gkLm5leHQobnVsbCk7XG4gICAgICB0aGlzLmxhc3RUb3VjaCQubmV4dChudWxsKTtcbiAgICAgIHRoaXMucGVuZGluZ0FuaW1hdGlvbj8uZGVzdHJveSgpO1xuICAgICAgdGhpcy5wZW5kaW5nQW5pbWF0aW9uID0gdW5kZWZpbmVkO1xuICAgIH0pO1xuICAgIHRoaXMucGVuZGluZ0FuaW1hdGlvbi5wbGF5KCk7XG4gIH1cblxuICBvblN3aXBlKGRpc3RhbmNlOiBudW1iZXIpIHtcbiAgICB0aGlzLmFuaW1hdGVUb0luZGV4QnlEeChkaXN0YW5jZSk7XG4gIH1cblxuICBwcmV2aW91cygpIHtcbiAgICB0aGlzLmdvdG9BbmltYXRlKC0xLCAncmVsYXRpdmUnKTtcbiAgfVxuXG4gIG5leHQoKSB7XG4gICAgdGhpcy5nb3RvQW5pbWF0ZSgxLCAncmVsYXRpdmUnKTtcbiAgfVxuXG4gIGdvdG8oaW5kZXg6IG51bWJlcikge1xuICAgIHRoaXMuZ290b0FuaW1hdGUoaW5kZXgsICdhYnNvbHV0ZScpO1xuICB9XG5cbiAgcHJpdmF0ZSBnb3RvQW5pbWF0ZShpbmRleDogbnVtYmVyLCB0eXBlOiAnYWJzb2x1dGUnIHwgJ3JlbGF0aXZlJykge1xuICAgIHRoaXMucGVuZGluZ0FuaW1hdGlvbj8uZmluaXNoKCk7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLmFjdHVhbFN3aXBlcyQsIHRoaXMuaW1hZ2VJbmRleCRdKVxuICAgICAgICAucGlwZSh0YWtlKDEpLCB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95KSlcbiAgICAgICAgLnN1YnNjcmliZSgoW2FjdHVhbFN3aXBlcywgaW1hZ2VJbmRleF0pID0+IHtcbiAgICAgICAgICB0aGlzLnBlbmRpbmdBbmltYXRpb24/LmZpbmlzaCgpO1xuICAgICAgICAgIGNvbnN0IGlkeCA9ICh0eXBlID09PSAncmVsYXRpdmUnKSA/IGltYWdlSW5kZXggKyBpbmRleCA6IGluZGV4O1xuICAgICAgICAgIHRoaXMuYW5pbWF0ZVRvSW5kZXgoaW1hZ2VJbmRleCwgaWR4LCAwLCBhY3R1YWxTd2lwZXM/Lmxlbmd0aCA/PyAxKTtcbiAgICAgICAgfSk7XG4gICAgfSwgMjApO1xuICB9XG5cbn1cbiJdfQ==","import { Directive, HostBinding, HostListener, input } from \"@angular/core\";\nimport { BsObserveSizeDirective } from \"@mintplayer/ng-swiper/observe-size\";\nimport { combineLatest, filter, take } from \"rxjs\";\nimport { takeUntilDestroyed } from \"@angular/core/rxjs-interop\";\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"../swipe-container/swipe-container.directive\";\nimport * as i2 from \"@mintplayer/ng-swiper/observe-size\";\nexport class BsSwipeDirective {\n container;\n destroy;\n constructor(container, observeSize, destroy) {\n this.container = container;\n this.destroy = destroy;\n this.observeSize = observeSize;\n this.container.orientation$\n .pipe(takeUntilDestroyed())\n .subscribe(orientation => {\n this.inlineBlock = (orientation === 'horizontal');\n this.block = (orientation === 'vertical');\n });\n combineLatest([this.container.maxSlideHeight$, this.container.orientation$])\n .pipe(takeUntilDestroyed())\n .subscribe(([maxHeight, orientation]) => {\n const targetHeight = (orientation === 'vertical') ? maxHeight : null;\n this.slideHeight = (targetHeight && targetHeight > 0) ? targetHeight : null;\n });\n }\n observeSize;\n offside = input(false, ...(ngDevMode ? [{ debugName: \"offside\" }] : []));\n classes = true;\n inlineBlock = true;\n block = false;\n slideHeight = null;\n onTouchStart(ev) {\n if (ev.touches.length === 1) {\n ev.preventDefault();\n this.container.pendingAnimation?.finish();\n setTimeout(() => {\n this.container.startTouch$.next({\n position: {\n x: ev.touches[0].clientX,\n y: ev.touches[0].clientY,\n },\n timestamp: Date.now(),\n });\n this.container.lastTouch$.next({\n position: {\n x: ev.touches[0].clientX,\n y: ev.touches[0].clientY,\n },\n isTouching: true,\n });\n }, 20);\n }\n }\n onTouchMove(ev) {\n this.container.lastTouch$.next({\n position: {\n x: ev.touches[0].clientX,\n y: ev.touches[0].clientY,\n },\n isTouching: true,\n });\n }\n onTouchEnd(ev) {\n combineLatest([this.container.startTouch$, this.container.lastTouch$, this.container.orientation$])\n .pipe(filter(([startTouch, lastTouch]) => !!startTouch && !!lastTouch))\n .pipe(take(1), takeUntilDestroyed(this.destroy))\n .subscribe(([startTouch, lastTouch, orientation]) => {\n if (!!startTouch && !!lastTouch) {\n const distance = (orientation === 'horizontal')\n ? lastTouch.position.x - startTouch.position.x\n : lastTouch.position.y - startTouch.position.y;\n this.container.onSwipe(distance);\n }\n });\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.7\", ngImport: i0, type: BsSwipeDirective, deps: [{ token: i1.BsSwipeContainerDirective }, { token: i2.BsObserveSizeDirective }, { token: i0.DestroyRef }], target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.1.7\", type: BsSwipeDirective, isStandalone: false, selector: \"[bsSwipe]\", inputs: { offside: { classPropertyName: \"offside\", publicName: \"offside\", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { \"touchstart\": \"onTouchStart($event)\", \"touchmove\": \"onTouchMove($event)\", \"touchend\": \"onTouchEnd($event)\" }, properties: { \"class.align-top\": \"this.classes\", \"class.float-none\": \"this.classes\", \"class.w-100\": \"this.classes\", \"class.pe-auto\": \"this.classes\", \"class.me-0\": \"this.classes\", \"class.d-inline-block\": \"this.inlineBlock\", \"class.d-block\": \"this.block\", \"style.height.px\": \"this.slideHeight\" } }, hostDirectives: [{ directive: i2.BsObserveSizeDirective }], ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.7\", ngImport: i0, type: BsSwipeDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[bsSwipe]',\n hostDirectives: [BsObserveSizeDirective],\n standalone: false,\n }]\n }], ctorParameters: () => [{ type: i1.BsSwipeContainerDirective }, { type: i2.BsObserveSizeDirective }, { type: i0.DestroyRef }], propDecorators: { classes: [{\n type: HostBinding,\n args: ['class.align-top']\n }, {\n type: HostBinding,\n args: ['class.float-none']\n }, {\n type: HostBinding,\n args: ['class.w-100']\n }, {\n type: HostBinding,\n args: ['class.pe-auto']\n }, {\n type: HostBinding,\n args: ['class.me-0']\n }], inlineBlock: [{\n type: HostBinding,\n args: ['class.d-inline-block']\n }], block: [{\n type: HostBinding,\n args: ['class.d-block']\n }], slideHeight: [{\n type: HostBinding,\n args: ['style.height.px']\n }], onTouchStart: [{\n type: HostListener,\n args: ['touchstart', ['$event']]\n }], onTouchMove: [{\n type: HostListener,\n args: ['touchmove', ['$event']]\n }], onTouchEnd: [{\n type: HostListener,\n args: ['touchend', ['$event']]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3dpcGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLXN3aXBlci9zd2lwZXIvc3JjL2RpcmVjdGl2ZXMvc3dpcGUvc3dpcGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxTQUFTLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDNUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7O0FBT2hFLE1BQU0sT0FBTyxnQkFBZ0I7SUFFUDtJQUFtRjtJQUF2RyxZQUFvQixTQUFvQyxFQUFFLFdBQW1DLEVBQVUsT0FBbUI7UUFBdEcsY0FBUyxHQUFULFNBQVMsQ0FBMkI7UUFBK0MsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQUN4SCxJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztRQUMvQixJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVk7YUFDeEIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7YUFDMUIsU0FBUyxDQUFDLFdBQVcsQ0FBQyxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxXQUFXLEtBQUssWUFBWSxDQUFDLENBQUM7WUFDbEQsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLFdBQVcsS0FBSyxVQUFVLENBQUMsQ0FBQztRQUM1QyxDQUFDLENBQUMsQ0FBQztRQUVMLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLENBQUM7YUFDekUsSUFB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LCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZXN0cm95UmVmLCBEaXJlY3RpdmUsIEhvc3RCaW5kaW5nLCBIb3N0TGlzdGVuZXIsIGlucHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEJzT2JzZXJ2ZVNpemVEaXJlY3RpdmUgfSBmcm9tIFwiQG1pbnRwbGF5ZXIvbmctc3dpcGVyL29ic2VydmUtc2l6ZVwiO1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdCwgZmlsdGVyLCB0YWtlIH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IEJzU3dpcGVDb250YWluZXJEaXJlY3RpdmUgfSBmcm9tIFwiLi4vc3dpcGUtY29udGFpbmVyL3N3aXBlLWNvbnRhaW5lci5kaXJlY3RpdmVcIjtcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gXCJAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcFwiO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYnNTd2lwZV0nLFxuICBob3N0RGlyZWN0aXZlczogW0JzT2JzZXJ2ZVNpemVEaXJlY3RpdmVdLFxuICBzdGFuZGFsb25lOiBmYWxzZSxcbn0pXG5leHBvcnQgY2xhc3MgQnNTd2lwZURpcmVjdGl2ZSB7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjb250YWluZXI6IEJzU3dpcGVDb250YWluZXJEaXJlY3RpdmUsIG9ic2VydmVTaXplOiBCc09ic2VydmVTaXplRGlyZWN0aXZlLCBwcml2YXRlIGRlc3Ryb3k6IERlc3Ryb3lSZWYpIHtcbiAgICB0aGlzLm9ic2VydmVTaXplID0gb2JzZXJ2ZVNpemU7XG4gICAgdGhpcy5jb250YWluZXIub3JpZW50YXRpb24kXG4gICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQoKSlcbiAgICAgIC5zdWJzY3JpYmUob3JpZW50YXRpb24gPT4ge1xuICAgICAgICB0aGlzLmlubGluZUJsb2NrID0gKG9yaWVudGF0aW9uID09PSAnaG9yaXpvbnRhbCcpO1xuICAgICAgICB0aGlzLmJsb2NrID0gKG9yaWVudGF0aW9uID09PSAndmVydGljYWwnKTtcbiAgICAgIH0pO1xuXG4gICAgY29tYmluZUxhdGVzdChbdGhpcy5jb250YWluZXIubWF4U2xpZGVIZWlnaHQkLCB0aGlzLmNvbnRhaW5lci5vcmllbnRhdGlvbiRdKVxuICAgICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKCkpXG4gICAgICAuc3Vic2NyaWJlKChbbWF4SGVpZ2h0LCBvcmllbnRhdGlvbl0pID0+IHtcbiAgICAgICAgY29uc3QgdGFyZ2V0SGVpZ2h0ID0gKG9yaWVudGF0aW9uID09PSAndmVydGljYWwnKSA/IG1heEhlaWdodCA6IG51bGw7XG4gICAgICAgIHRoaXMuc2xpZGVIZWlnaHQgPSAodGFyZ2V0SGVpZ2h0ICYmIHRhcmdldEhlaWdodCA+IDApID8gdGFyZ2V0SGVpZ2h0IDogbnVsbDtcbiAgICAgIH0pO1xuICB9XG5cbiAgb2JzZXJ2ZVNpemU6IEJzT2JzZXJ2ZVNpemVEaXJlY3RpdmU7XG5cbiAgcHVibGljIG9mZnNpZGUgPSBpbnB1dChmYWxzZSk7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hbGlnbi10b3AnKVxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZsb2F0LW5vbmUnKVxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnctMTAwJylcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5wZS1hdXRvJylcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5tZS0wJylcbiAgY2xhc3NlcyA9IHRydWU7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5kLWlubGluZS1ibG9jaycpIGlubGluZUJsb2NrID0gdHJ1ZTtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5kLWJsb2NrJykgYmxvY2sgPSBmYWxzZTtcbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS5oZWlnaHQucHgnKSBzbGlkZUhlaWdodDogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG5cbiAgQEhvc3RMaXN0ZW5lcigndG91Y2hzdGFydCcsIFsnJGV2ZW50J10pXG4gIG9uVG91Y2hTdGFydChldjogVG91Y2hFdmVudCkge1xuICAgIGlmIChldi50b3VjaGVzLmxlbmd0aCA9PT0gMSkge1xuICAgICAgZXYucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHRoaXMuY29udGFpbmVyLnBlbmRpbmdBbmltYXRpb24/LmZpbmlzaCgpO1xuXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5jb250YWluZXIuc3RhcnRUb3VjaCQubmV4dCh7XG4gICAgICAgICAgcG9zaXRpb246IHtcbiAgICAgICAgICAgIHg6IGV2LnRvdWNoZXNbMF0uY2xpZW50WCxcbiAgICAgICAgICAgIHk6IGV2LnRvdWNoZXNbMF0uY2xpZW50WSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHRpbWVzdGFtcDogRGF0ZS5ub3coKSxcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuY29udGFpbmVyLmxhc3RUb3VjaCQubmV4dCh7XG4gICAgICAgICAgcG9zaXRpb246IHtcbiAgICAgICAgICAgIHg6IGV2LnRvdWNoZXNbMF0uY2xpZW50WCxcbiAgICAgICAgICAgIHk6IGV2LnRvdWNoZXNbMF0uY2xpZW50WSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGlzVG91Y2hpbmc6IHRydWUsXG4gICAgICAgIH0pO1xuICAgICAgfSwgMjApO1xuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3RvdWNobW92ZScsIFsnJGV2ZW50J10pXG4gIG9uVG91Y2hNb3ZlKGV2OiBUb3VjaEV2ZW50KSB7XG4gICAgdGhpcy5jb250YWluZXIubGFzdFRvdWNoJC5uZXh0KHtcbiAgICAgIHBvc2l0aW9uOiB7XG4gICAgICAgIHg6IGV2LnRvdWNoZXNbMF0uY2xpZW50WCxcbiAgICAgICAgeTogZXYudG91Y2hlc1swXS5jbGllbnRZLFxuICAgICAgfSxcbiAgICAgIGlzVG91Y2hpbmc6IHRydWUsXG4gICAgfSk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCd0b3VjaGVuZCcsIFsnJGV2ZW50J10pXG4gIG9uVG91Y2hFbmQoZXY6IFRvdWNoRXZlbnQpIHtcbiAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLmNvbnRhaW5lci5zdGFydFRvdWNoJCwgdGhpcy5jb250YWluZXIubGFzdFRvdWNoJCwgdGhpcy5jb250YWluZXIub3JpZW50YXRpb24kXSlcbiAgICAgIC5waXBlKGZpbHRlcigoW3N0YXJ0VG91Y2gsIGxhc3RUb3VjaF0pID0+ICEhc3RhcnRUb3VjaCAmJiAhIWxhc3RUb3VjaCkpXG4gICAgICAucGlwZSh0YWtlKDEpLCB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95KSlcbiAgICAgIC5zdWJzY3JpYmUoKFtzdGFydFRvdWNoLCBsYXN0VG91Y2gsIG9yaWVudGF0aW9uXSkgPT4ge1xuICAgICAgICBpZiAoISFzdGFydFRvdWNoICYmICEhbGFzdFRvdWNoKSB7XG4gICAgICAgICAgY29uc3QgZGlzdGFuY2UgPSAob3JpZW50YXRpb24gPT09ICdob3Jpem9udGFsJylcbiAgICAgICAgICAgID8gbGFzdFRvdWNoLnBvc2l0aW9uLnggLSBzdGFydFRvdWNoLnBvc2l0aW9uLnhcbiAgICAgICAgICAgIDogbGFzdFRvdWNoLnBvc2l0aW9uLnkgLSBzdGFydFRvdWNoLnBvc2l0aW9uLnk7XG4gICAgICAgICAgdGhpcy5jb250YWluZXIub25Td2lwZShkaXN0YW5jZSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbn1cbiJdfQ==","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { BsSwipeDirective } from './directives/swipe/swipe.directive';\nimport { BsSwipeContainerDirective } from './directives/swipe-container/swipe-container.directive';\nimport * as i0 from \"@angular/core\";\nexport class BsSwiperModule {\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.7\", ngImport: i0, type: BsSwiperModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });\n static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.7\", ngImport: i0, type: BsSwiperModule, declarations: [BsSwipeDirective, BsSwipeContainerDirective], imports: [CommonModule], exports: [BsSwipeDirective, BsSwipeContainerDirective] });\n static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.7\", ngImport: i0, type: BsSwiperModule, imports: [CommonModule] });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.7\", ngImport: i0, type: BsSwiperModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [CommonModule],\n declarations: [BsSwipeDirective, BsSwipeContainerDirective],\n exports: [BsSwipeDirective, BsSwipeContainerDirective],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3dpcGVyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1zd2lwZXIvc3dpcGVyL3NyYy9zd2lwZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDOztBQU9uRyxNQUFNLE9BQU8sY0FBYzt1R0FBZCxjQUFjO3dHQUFkLGNBQWMsaUJBSFYsZ0JBQWdCLEVBQUUseUJBQXlCLGFBRGhELFlBQVksYUFFWixnQkFBZ0IsRUFBRSx5QkFBeUI7d0dBRTFDLGNBQWMsWUFKZixZQUFZOzsyRkFJWCxjQUFjO2tCQUwxQixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsWUFBWSxFQUFFLENBQUMsZ0JBQWdCLEVBQUUseUJBQXlCLENBQUM7b0JBQzNELE9BQU8sRUFBRSxDQUFDLGdCQUFnQixFQUFFLHlCQUF5QixDQUFDO2lCQUN2RCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQnNTd2lwZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9zd2lwZS9zd2lwZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQnNTd2lwZUNvbnRhaW5lckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9zd2lwZS1jb250YWluZXIvc3dpcGUtY29udGFpbmVyLmRpcmVjdGl2ZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBkZWNsYXJhdGlvbnM6IFtCc1N3aXBlRGlyZWN0aXZlLCBCc1N3aXBlQ29udGFpbmVyRGlyZWN0aXZlXSxcbiAgZXhwb3J0czogW0JzU3dpcGVEaXJlY3RpdmUsIEJzU3dpcGVDb250YWluZXJEaXJlY3RpdmVdLFxufSlcbmV4cG9ydCBjbGFzcyBCc1N3aXBlck1vZHVsZSB7fVxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWludHBsYXllci1uZy1zd2lwZXItc3dpcGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLXN3aXBlci9zd2lwZXIvbWludHBsYXllci1uZy1zd2lwZXItc3dpcGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":["i1.BsSwipeContainerDirective"],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@mintplayer/ng-swiper",
3
3
  "private": false,
4
- "version": "20.1.0",
4
+ "version": "20.3.0",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/MintPlayer/mintplayer-ng-bootstrap",
package/swiper/index.d.ts CHANGED
@@ -32,6 +32,8 @@ declare class BsSwipeContainerDirective implements AfterViewInit {
32
32
  offsetBottom: number | null;
33
33
  set swipes(value: QueryList<BsSwipeDirective>);
34
34
  minimumOffset: number;
35
+ get orientation(): "horizontal" | "vertical";
36
+ set orientation(value: 'horizontal' | 'vertical');
35
37
  get imageIndex(): number;
36
38
  set imageIndex(value: number);
37
39
  imageIndexChange: EventEmitter<number>;
@@ -41,26 +43,28 @@ declare class BsSwipeContainerDirective implements AfterViewInit {
41
43
  lastTouch$: BehaviorSubject<LastTouch | null>;
42
44
  swipes$: BehaviorSubject<QueryList<BsSwipeDirective> | null>;
43
45
  slideSizes$: Observable<(Size | undefined)[]>;
46
+ maxSlideHeight$: Observable<number>;
44
47
  imageIndex$: BehaviorSubject<number>;
45
48
  currentSlideHeight$: Observable<number>;
46
49
  pendingAnimation?: AnimationPlayer;
47
50
  containerElement: ElementRef<HTMLDivElement>;
48
51
  document: Document;
49
52
  offset$: Observable<number>;
50
- offsetLeft$: Observable<number>;
51
- offsetRight$: Observable<number>;
53
+ offsetPrimary$: Observable<number>;
54
+ offsetSecondary$: Observable<number>;
52
55
  padLeft$: Observable<number>;
53
56
  padRight$: Observable<number>;
57
+ orientation$: BehaviorSubject<"horizontal" | "vertical">;
54
58
  ngAfterViewInit(): void;
55
- animateToIndexByDx(dx: number): void;
56
- animateToIndex(oldIndex: number, newIndex: number, dx: number, totalSlides: number): void;
57
- onSwipe(dx: number): void;
59
+ animateToIndexByDx(distance: number): void;
60
+ animateToIndex(oldIndex: number, newIndex: number, distance: number, totalSlides: number): void;
61
+ onSwipe(distance: number): void;
58
62
  previous(): void;
59
63
  next(): void;
60
64
  goto(index: number): void;
61
65
  private gotoAnimate;
62
66
  static ɵfac: i0.ɵɵFactoryDeclaration<BsSwipeContainerDirective, never>;
63
- static ɵdir: i0.ɵɵDirectiveDeclaration<BsSwipeContainerDirective, "[bsSwipeContainer]", ["bsSwipeContainer"], { "minimumOffset": { "alias": "minimumOffset"; "required": false; }; "imageIndex": { "alias": "imageIndex"; "required": false; }; }, { "imageIndexChange": "imageIndexChange"; }, ["swipes"], never, false, [{ directive: typeof i1.BsObserveSizeDirective; inputs: {}; outputs: {}; }]>;
67
+ static ɵdir: i0.ɵɵDirectiveDeclaration<BsSwipeContainerDirective, "[bsSwipeContainer]", ["bsSwipeContainer"], { "minimumOffset": { "alias": "minimumOffset"; "required": false; }; "orientation": { "alias": "orientation"; "required": false; }; "imageIndex": { "alias": "imageIndex"; "required": false; }; }, { "imageIndexChange": "imageIndexChange"; }, ["swipes"], never, false, [{ directive: typeof i1.BsObserveSizeDirective; inputs: {}; outputs: {}; }]>;
64
68
  }
65
69
 
66
70
  declare class BsSwipeDirective {
@@ -70,7 +74,9 @@ declare class BsSwipeDirective {
70
74
  observeSize: BsObserveSizeDirective;
71
75
  offside: i0.InputSignal<boolean>;
72
76
  classes: boolean;
73
- hostClass?: string;
77
+ inlineBlock: boolean;
78
+ block: boolean;
79
+ slideHeight: number | null;
74
80
  onTouchStart(ev: TouchEvent): void;
75
81
  onTouchMove(ev: TouchEvent): void;
76
82
  onTouchEnd(ev: TouchEvent): void;