UNPKG

ng-simple-slideshow

Version:
1 lines 21.5 kB
{"__symbolic":"module","version":3,"metadata":{"SlideshowModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule"},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule"},{"__symbolic":"reference","module":"@angular/platform-browser","name":"BrowserTransferStateModule"}],"declarations":[{"__symbolic":"reference","name":"ɵa"}],"exports":[{"__symbolic":"reference","name":"ɵa"}],"providers":[{"__symbolic":"reference","name":"ɵb"}]}]}],"members":{}},"IImage":{"__symbolic":"interface"},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"selector":"slideshow","template":"\n <!-- fullscreen bar -->\n <div [class.display-none]=\"!fullscreen\"\n class=\"fs-container\"\n (click)=\"exitFullScreen($event)\">\n <i title=\"Back\"\n class=\"arrow-exitfs prev\"></i>\n </div>\n <div #container\n (touchstart)=\"onSwipe($event, 'start')\"\n (touchend)=\"onSwipe($event, 'end')\"\n class=\"slideshow-container\"\n [class.slideshow-container-fs]=\"fullscreen\">\n <!-- slides -->\n <a *ngFor=\"let slide of slides; index as i; trackBy: trackByFn\"\n class=\"slides\"\n href=\"{{slide?.image?.clickAction ? '#' : slide?.image?.href}}\"\n title=\"{{slide?.image?.title}}\"\n [ngStyle]=\"getSlideStyle(i)\"\n [class.selected]=\"slide?.selected\"\n [class.hide-slide]=\"!slide?.selected && !slide?.leftSide && !slide?.rightSide\"\n [class.left-side]=\"slide?.leftSide\"\n [class.right-side]=\"slide?.rightSide\"\n [class.slide-in-left]=\"slide?.action === 'slideInLeft'\"\n [class.slide-in-right]=\"slide?.action === 'slideInRight'\"\n [class.slide-out-left]=\"slide?.action === 'slideOutLeft'\"\n [class.slide-out-right]=\"slide?.action === 'slideOutRight'\"\n [class.link]=\"slide?.image?.clickAction || slide?.image?.href\"\n (click)=\"onClick($event)\">\n <div class=\"loader\"\n *ngIf=\"!slide?.loaded\"></div>\n <div *ngIf=\"showCaptions && slide?.image?.caption\"\n class=\"caption\"\n [ngStyle]=\"{\n 'color': captionColor,\n 'background-color': captionBackground\n }\"\n [innerHTML]=\"slide?.image?.caption\">\n </div>\n </a>\n <!-- left arrow -->\n <div [class.display-none]=\"!this.showArrows\"\n (click)=\"onSlide(-1)\"\n class=\"arrow-container prev\">\n <i #prevArrow\n title=\"Previous\"\n class=\"arrow prev\"></i>\n </div>\n <!-- right arrow -->\n <div [class.display-none]=\"!this.showArrows\"\n (click)=\"onSlide(1)\"\n class=\"arrow-container next\">\n <i #nextArrow\n title=\"Next\"\n class=\"arrow next\"></i>\n </div>\n <!-- dots -->\n <ul class=\"slick-dots\"\n *ngIf=\"showDots\">\n <li *ngFor=\"let slide of slides; index as i; trackBy: trackByFn\"\n (click)=\"goToSlide(i)\"\n [class.slick-active]=\"slide.selected\">\n <button type=\"button\"\n [attr.style]=\"safeStyleDotColor\">\n {{i}}\n </button>\n </li>\n </ul>\n </div>\n ","styles":["\n /*\n styles adapted from https://www.w3schools.com/w3css/4/w3.css\n arrow styles adapted from https://codepen.io/minustalent/pen/Frhaw\n */\n .display-none {\n display: none !important; }\n\n .fs-container {\n display: block;\n cursor: pointer;\n position: fixed;\n z-index: 1;\n top: 16px;\n left: 16px;\n width: 46px;\n height: 46px;\n text-align: center;\n padding: 0;\n background-color: rgba(0, 0, 0, 0.2);\n -webkit-transition: all .2s ease-in-out;\n transition: all .2s ease-in-out; }\n .fs-container:hover {\n background-color: rgba(0, 0, 0, 0.33); }\n .fs-container .arrow-exitfs {\n display: block;\n width: 30px;\n height: 30px;\n background: transparent;\n border-top: 2px solid #f2f2f2;\n -webkit-transition: all .2s ease-in-out;\n transition: all .2s ease-in-out; }\n .fs-container .arrow-exitfs.prev {\n -webkit-transform: rotate(-45deg);\n transform: rotate(-45deg);\n position: relative;\n left: 18px;\n top: 18px; }\n .fs-container .arrow-exitfs:after {\n content: '';\n width: 30px;\n height: 30px;\n background: transparent;\n border-top: 2px solid #f2f2f2;\n -webkit-transform: rotate(90deg);\n transform: rotate(90deg);\n position: absolute;\n left: -15px;\n top: -17px; }\n\n .slideshow-container.slideshow-container-fs {\n position: fixed;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%; }\n\n .slideshow-container {\n position: relative;\n display: block;\n margin: auto;\n height: 100%;\n width: 100%;\n overflow: hidden; }\n .slideshow-container .hide-slide {\n visibility: hidden;\n position: absolute;\n top: -100vw;\n left: -100vw;\n opacity: 0; }\n .slideshow-container .slides {\n position: absolute;\n top: 0;\n height: 100%;\n width: 100%;\n visibility: visible;\n opacity: 1;\n display: block; }\n .slideshow-container .slides.selected {\n left: 0; }\n .slideshow-container .slides.left-slide {\n left: -100%; }\n .slideshow-container .slides.right-slide {\n left: 100%; }\n .slideshow-container .slides.slide-in-left {\n left: 0;\n -webkit-animation: slideInLeft 0.5s cubic-bezier(0.42, 0, 0.58, 1);\n animation: slideInLeft 0.5s cubic-bezier(0.42, 0, 0.58, 1); }\n .slideshow-container .slides.slide-in-right {\n left: 0;\n -webkit-animation: slideInRight 0.5s cubic-bezier(0.42, 0, 0.58, 1);\n animation: slideInRight 0.5s cubic-bezier(0.42, 0, 0.58, 1); }\n .slideshow-container .slides.slide-out-left {\n left: -100%;\n -webkit-animation: slideOutLeft 0.5s cubic-bezier(0.42, 0, 0.58, 1);\n animation: slideOutLeft 0.5s cubic-bezier(0.42, 0, 0.58, 1); }\n .slideshow-container .slides.slide-out-right {\n left: 100%;\n -webkit-animation: slideOutRight 0.5s cubic-bezier(0.42, 0, 0.58, 1);\n animation: slideOutRight 0.5s cubic-bezier(0.42, 0, 0.58, 1); }\n .slideshow-container .slides.link {\n cursor: pointer; }\n .slideshow-container .slides:not(.link) {\n cursor: default; }\n .slideshow-container .caption {\n position: absolute;\n bottom: 0;\n padding: 10px;\n width: 100%; }\n .slideshow-container .arrow-container {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n position: absolute;\n top: 0;\n height: 100%;\n width: auto;\n cursor: pointer;\n background-size: 100%;\n background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(transparent));\n background-image: linear-gradient(transparent, transparent);\n z-index: 100;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none; }\n .slideshow-container .arrow-container:before {\n display: block;\n height: 100%;\n position: absolute;\n top: 0;\n left: 0;\n opacity: 0;\n width: 100%;\n z-index: -100;\n -webkit-transition: opacity 0.45s;\n transition: opacity 0.45s; }\n .slideshow-container .arrow-container.prev {\n left: 0; }\n .slideshow-container .arrow-container.prev:before {\n background-image: -webkit-gradient(linear, right top, left top, from(transparent), to(rgba(0, 0, 0, 0.75)));\n background-image: linear-gradient(to left, transparent, rgba(0, 0, 0, 0.75));\n content: ''; }\n .slideshow-container .arrow-container.next {\n right: 0; }\n .slideshow-container .arrow-container.next:before {\n background-image: -webkit-gradient(linear, left top, right top, from(transparent), to(rgba(0, 0, 0, 0.75)));\n background-image: linear-gradient(to right, transparent, rgba(0, 0, 0, 0.75));\n content: ''; }\n .slideshow-container .arrow-container .arrow {\n display: block;\n margin: auto;\n width: 30px;\n height: 30px;\n background: transparent;\n border-top: 2px solid #f2f2f2;\n border-left: 2px solid #f2f2f2;\n -webkit-transition: all .2s ease-in-out;\n transition: all .2s ease-in-out;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none; }\n .slideshow-container .arrow-container .arrow:before {\n display: block;\n height: 200%;\n width: 200%;\n margin-left: -50%;\n margin-top: -50%;\n content: \"\";\n -webkit-transform: rotate(45deg);\n transform: rotate(45deg); }\n .slideshow-container .arrow-container .arrow.prev {\n -webkit-transform: rotate(-45deg);\n transform: rotate(-45deg);\n position: relative;\n left: 20px;\n margin-right: 10px; }\n .slideshow-container .arrow-container .arrow.next {\n -webkit-transform: rotate(135deg);\n transform: rotate(135deg);\n position: relative;\n right: 20px;\n margin-left: 10px; }\n .slideshow-container .slick-dots {\n display: block;\n bottom: 15px;\n z-index: 1;\n text-align: center;\n position: absolute;\n padding: 0;\n left: 0;\n right: 0;\n margin: 0 auto; }\n .slideshow-container .slick-dots li {\n display: inline;\n margin: 0;\n padding: 0; }\n .slideshow-container .slick-dots li button {\n border: none;\n background: none;\n text-indent: -9999px;\n font-size: 0;\n width: 20px;\n height: 20px;\n outline: none;\n position: relative;\n z-index: 1;\n cursor: pointer; }\n .slideshow-container .slick-dots li button:before {\n content: '';\n width: 4px;\n height: 4px;\n background: var(--dot-color, #FFF);\n border-radius: 4px;\n display: block;\n position: absolute;\n top: 50%;\n left: 50%;\n -webkit-transform: translate(-50%, -50%);\n transform: translate(-50%, -50%);\n opacity: .7;\n -webkit-transition: all .5s ease-out;\n transition: all .5s ease-out; }\n .slideshow-container .slick-dots li.slick-active button:before {\n -webkit-transform: translate(-50%, -50%) scale(1.4);\n transform: translate(-50%, -50%) scale(1.4);\n opacity: 1; }\n\n @media screen and (min-width: 768px) {\n .slideshow-container .arrow-container:hover:before {\n opacity: 1; }\n .slideshow-container .arrow-container:hover .arrow {\n border-width: 4px; }\n .slideshow-container .arrow-container .arrow:hover {\n border-width: 4px; } }\n\n @-webkit-keyframes slideInRight {\n 0% {\n left: -100%; }\n 100% {\n left: 0; } }\n\n @keyframes slideInRight {\n 0% {\n left: -100%; }\n 100% {\n left: 0; } }\n\n @-webkit-keyframes slideInLeft {\n 0% {\n left: 100%; }\n 100% {\n left: 0; } }\n\n @keyframes slideInLeft {\n 0% {\n left: 100%; }\n 100% {\n left: 0; } }\n\n @-webkit-keyframes slideOutRight {\n 0% {\n left: 0; }\n 100% {\n left: -100%; } }\n\n @keyframes slideOutRight {\n 0% {\n left: 0; }\n 100% {\n left: -100%; } }\n\n @-webkit-keyframes slideOutLeft {\n 0% {\n left: 0; }\n 100% {\n left: 100%; } }\n\n @keyframes slideOutLeft {\n 0% {\n left: 0; }\n 100% {\n left: 100%; } }\n\n .loader {\n position: absolute;\n left: 50%;\n margin-left: -20px;\n top: 50%;\n margin-top: -20px;\n border: 5px solid #f3f3f3;\n border-top: 5px solid #555;\n border-radius: 50%;\n width: 50px;\n height: 50px;\n -webkit-animation: spin 1s linear infinite;\n animation: spin 1s linear infinite; }\n\n @-webkit-keyframes spin {\n 0% {\n -webkit-transform: rotate(0deg);\n transform: rotate(0deg); }\n 100% {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg); } }\n\n @keyframes spin {\n 0% {\n -webkit-transform: rotate(0deg);\n transform: rotate(0deg); }\n 100% {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg); } }\n "]}]}],"members":{"imageUrls":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"height":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"minHeight":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"arrowSize":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"showArrows":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"disableSwiping":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"autoPlay":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"autoPlayInterval":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"stopAutoPlayOnSlide":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"autoPlayWaitForLazyLoad":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"debug":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"backgroundSize":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"backgroundPosition":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"backgroundRepeat":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"showDots":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"dotColor":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"showCaptions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"captionColor":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"captionBackground":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"lazyLoad":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"hideOnNoSlides":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"fullscreen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"onSlideLeft":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"onSlideRight":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"onSwipeLeft":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"onSwipeRight":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"onFullscreenExit":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"onIndexChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"container":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild"},"arguments":["container"]}]}],"prevArrow":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild"},"arguments":["prevArrow"]}]}],"nextArrow":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild"},"arguments":["nextArrow"]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,null,null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject"},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"PLATFORM_ID"}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject"},"arguments":[{"__symbolic":"reference","module":"@angular/common","name":"DOCUMENT"}]}]],"parameters":[{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2"},{"__symbolic":"reference","module":"@angular/platform-browser","name":"TransferState"},{"__symbolic":"reference","module":"@angular/core","name":"NgZone"},{"__symbolic":"reference","module":"@angular/platform-browser","name":"DomSanitizer"},{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","name":"any"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngDoCheck":[{"__symbolic":"method"}],"onSlide":[{"__symbolic":"method"}],"onSwipe":[{"__symbolic":"method"}],"onClick":[{"__symbolic":"method"}],"goToSlide":[{"__symbolic":"method"}],"getSlideStyle":[{"__symbolic":"method"}],"exitFullScreen":[{"__symbolic":"method"}],"slide":[{"__symbolic":"method"}],"setSlideIndex":[{"__symbolic":"method"}],"slideLeft":[{"__symbolic":"method"}],"slideRight":[{"__symbolic":"method"}],"setSlides":[{"__symbolic":"method"}],"buildLazyLoadSlideArray":[{"__symbolic":"method"}],"buildSlideArray":[{"__symbolic":"method"}],"loadFirstSlide":[{"__symbolic":"method"}],"loadRemainingSlides":[{"__symbolic":"method"}],"handleAutoPlay":[{"__symbolic":"method"}],"setStyles":[{"__symbolic":"method"}],"checkCache":[{"__symbolic":"method"}],"getLeftSideIndex":[{"__symbolic":"method"}],"getRightSideIndex":[{"__symbolic":"method"}],"trackByFn":[{"__symbolic":"method"}]}},"ɵb":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable"}}],"members":{"swipe":[{"__symbolic":"method"}]}}},"origins":{"SlideshowModule":"./src/app/modules/slideshow/slideshow.module","IImage":"./src/app/modules/slideshow/IImage","ɵa":"./src/app/modules/slideshow/slideshow.component","ɵb":"./src/app/modules/slideshow/swipe.service"},"importAs":"ng-simple-slideshow"}