UNPKG

@vendasta/store

Version:

Components and data for Store

91 lines 14.6 kB
import { Component, Input } from '@angular/core'; import { DomSanitizer } from '@angular/platform-browser'; import * as i0 from "@angular/core"; import * as i1 from "@angular/platform-browser"; import * as i2 from "@angular/common"; export class VideosComponent { constructor(sanitizer) { this.sanitizer = sanitizer; this.videoTOs = []; } ngOnInit() { if (this.videos && this.videos.length > 0) { for (let i = 0; i < this.videos.length; i++) { const videoTO = this.createVideo(this.videos[i]); if (videoTO && videoTO.videoType && videoTO.videoId && videoTO.videoId.length > 2) { this.videoTOs.push(videoTO); } } } } parseWistiaVideo(url) { if (url.includes('fast.wistia.net/embed/iframe')) { return { type: 'wistia-embeded', id: url, }; } url.match(/https?:\/\/[^.]+\.(wistia\.com|wi\.st)\/(medias|embed)\/.*?([A-Za-z0-9._%-]*)(\&\S+)?/); return { type: 'wistia', id: RegExp.$3, }; } parseVideo(url) { url.match(/(http:|https:|)\/\/(player.|www.)?(vimeo\.com|youtu(be\.com|\.be|be\.googleapis\.com)|dailymotion.com)\/(video\/|embed\/|watch\?v=|v\/)?([A-Za-z0-9._%-]*)(\&\S+)?/); let type = ''; if (RegExp.$3.indexOf('youtu') > -1) { type = 'youtube'; } else if (RegExp.$3.indexOf('vimeo') > -1) { type = 'vimeo'; } else if (RegExp.$3.indexOf('dailymotion') > -1) { type = 'dailymotion'; } return { type: type, id: RegExp.$6, }; } createVideo(url) { const videoObj = url && url.includes('wistia') ? this.parseWistiaVideo(url) : this.parseVideo(url); let videoURL; if (videoObj.type === 'youtube') { videoURL = 'https://www.youtube.com/embed/' + videoObj.id; } else if (videoObj.type === 'vimeo') { videoURL = 'https://player.vimeo.com/video/' + videoObj.id; } else if (videoObj.type === 'dailymotion') { videoURL = 'https://www.dailymotion.com/embed/video/' + videoObj.id + '?color=ffffff&title=0&byline=0&portrait=0'; } else if (videoObj.type === 'wistia') { videoURL = 'https://fast.wistia.net/embed/iframe/' + videoObj.id; } else if (videoObj.type === 'wistia-embeded') { videoURL = videoObj.id; } const video = new VideoTO(videoURL, videoObj.type, videoObj.id, this.sanitizer); return video; } } VideosComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: VideosComponent, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component }); VideosComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: VideosComponent, selector: "app-videos", inputs: { videos: "videos" }, ngImport: i0, template: "<div *ngFor=\"let video of videoTOs\">\n <iframe\n *ngIf=\"video.videoType !== 'vimeo'\"\n [src]=\"video.safeUrl\"\n id=\"player\"\n frameborder=\"0\"\n width=\"100%\"\n height=\"auto\"\n allowfullscreen=\"allowfullscreen\"\n mozallowfullscreen=\"mozallowfullscreen\"\n msallowfullscreen=\"msallowfullscreen\"\n oallowfullscreen=\"oallowfullscreen\"\n webkitallowfullscreen=\"webkitallowfullscreen\"\n allowFullScreen\n ></iframe>\n\n <div\n *ngIf=\"video.videoType === 'vimeo'\"\n style=\"padding: 56.25% 0 12px 0; position: relative\"\n >\n <iframe\n [src]=\"video.safeUrl\"\n style=\"position: absolute; top: 0; left: 0; width: 100%; height: 100%\"\n frameborder=\"0\"\n allow=\"autoplay; fullscreen\"\n allowfullscreen\n ></iframe>\n </div>\n</div>\n", directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: VideosComponent, decorators: [{ type: Component, args: [{ selector: 'app-videos', template: "<div *ngFor=\"let video of videoTOs\">\n <iframe\n *ngIf=\"video.videoType !== 'vimeo'\"\n [src]=\"video.safeUrl\"\n id=\"player\"\n frameborder=\"0\"\n width=\"100%\"\n height=\"auto\"\n allowfullscreen=\"allowfullscreen\"\n mozallowfullscreen=\"mozallowfullscreen\"\n msallowfullscreen=\"msallowfullscreen\"\n oallowfullscreen=\"oallowfullscreen\"\n webkitallowfullscreen=\"webkitallowfullscreen\"\n allowFullScreen\n ></iframe>\n\n <div\n *ngIf=\"video.videoType === 'vimeo'\"\n style=\"padding: 56.25% 0 12px 0; position: relative\"\n >\n <iframe\n [src]=\"video.safeUrl\"\n style=\"position: absolute; top: 0; left: 0; width: 100%; height: 100%\"\n frameborder=\"0\"\n allow=\"autoplay; fullscreen\"\n allowfullscreen\n ></iframe>\n </div>\n</div>\n" }] }], ctorParameters: function () { return [{ type: i1.DomSanitizer }]; }, propDecorators: { videos: [{ type: Input }] } }); export class VideoTO { constructor(url, type, id, sanitizer) { this.videoUrl = url; this.videoType = type; this.videoId = id; this.safeUrl = sanitizer.bypassSecurityTrustResourceUrl(url); } } export class Video { } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlkZW9zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc3RvcmUvc3JjL2xpYi9wcm9kdWN0LWRldGFpbHMtdjIvdmlkZW9zL3ZpZGVvcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3N0b3JlL3NyYy9saWIvcHJvZHVjdC1kZXRhaWxzLXYyL3ZpZGVvcy92aWRlb3MuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBbUIsTUFBTSwyQkFBMkIsQ0FBQzs7OztBQUsxRSxNQUFNLE9BQU8sZUFBZTtJQUMxQixZQUFvQixTQUF1QjtRQUF2QixjQUFTLEdBQVQsU0FBUyxDQUFjO1FBRTNDLGFBQVEsR0FBYyxFQUFFLENBQUM7SUFGcUIsQ0FBQztJQUcvQyxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUN6QyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7Z0JBQzNDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNqRCxJQUFJLE9BQU8sSUFBSSxPQUFPLENBQUMsU0FBUyxJQUFJLE9BQU8sQ0FBQyxPQUFPLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO29CQUNqRixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztpQkFDN0I7YUFDRjtTQUNGO0lBQ0gs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O1FBQ3RCLElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxPQUFPLEdBQUcsU0FBUyxDQUFDLDhCQUE4QixDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQy9ELENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyxLQUFLO0NBR2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIsIFNhZmVSZXNvdXJjZVVybCB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLXZpZGVvcycsXG4gIHRlbXBsYXRlVXJsOiAnLi92aWRlb3MuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBWaWRlb3NDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHNhbml0aXplcjogRG9tU2FuaXRpemVyKSB7fVxuICBASW5wdXQoKSB2aWRlb3M6IHN0cmluZ1tdO1xuICB2aWRlb1RPczogVmlkZW9UT1tdID0gW107XG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnZpZGVvcyAmJiB0aGlzLnZpZGVvcy5sZW5ndGggPiAwKSB7XG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMudmlkZW9zLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGNvbnN0IHZpZGVvVE8gPSB0aGlzLmNyZWF0ZVZpZGVvKHRoaXMudmlkZW9zW2ldKTtcbiAgICAgICAgaWYgKHZpZGVvVE8gJiYgdmlkZW9UTy52aWRlb1R5cGUgJiYgdmlkZW9UTy52aWRlb0lkICYmIHZpZGVvVE8udmlkZW9JZC5sZW5ndGggPiAyKSB7XG4gICAgICAgICAgdGhpcy52aWRlb1RPcy5wdXNoKHZpZGVvVE8pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcGFyc2VXaXN0aWFWaWRlbyh1cmw6IHN0cmluZyk6IFZpZGVvIHtcbiAgICBpZiAodXJsLmluY2x1ZGVzKCdmYXN0Lndpc3RpYS5uZXQvZW1iZWQvaWZyYW1lJykpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHR5cGU6ICd3aXN0aWEtZW1iZWRlZCcsXG4gICAgICAgIGlkOiB1cmwsXG4gICAgICB9O1xuICAgIH1cblxuICAgIHVybC5tYXRjaCgvaHR0cHM/OlxcL1xcL1teLl0rXFwuKHdpc3RpYVxcLmNvbXx3aVxcLnN0KVxcLyhtZWRpYXN8ZW1iZWQpXFwvLio/KFtBLVphLXowLTkuXyUtXSopKFxcJlxcUyspPy8pO1xuICAgIHJldHVybiB7XG4gICAgICB0eXBlOiAnd2lzdGlhJyxcbiAgICAgIGlkOiBSZWdFeHAuJDMsXG4gICAgfTtcbiAgfVxuXG4gIHBhcnNlVmlkZW8odXJsOiBzdHJpbmcpOiBWaWRlbyB7XG4gICAgdXJsLm1hdGNoKFxuICAgICAgLyhodHRwOnxodHRwczp8KVxcL1xcLyhwbGF5ZXIufHd3dy4pPyh2aW1lb1xcLmNvbXx5b3V0dShiZVxcLmNvbXxcXC5iZXxiZVxcLmdvb2dsZWFwaXNcXC5jb20pfGRhaWx5bW90aW9uLmNvbSlcXC8odmlkZW9cXC98ZW1iZWRcXC98d2F0Y2hcXD92PXx2XFwvKT8oW0EtWmEtejAtOS5fJS1dKikoXFwmXFxTKyk/LyxcbiAgICApO1xuICAgIGxldCB0eXBlID0gJyc7XG4gICAgaWYgKFJlZ0V4cC4kMy5pbmRleE9mKCd5b3V0dScpID4gLTEpIHtcbiAgICAgIHR5cGUgPSAneW91dHViZSc7XG4gICAgfSBlbHNlIGlmIChSZWdFeHAuJDMuaW5kZXhPZigndmltZW8nKSA+IC0xKSB7XG4gICAgICB0eXBlID0gJ3ZpbWVvJztcbiAgICB9IGVsc2UgaWYgKFJlZ0V4cC4kMy5pbmRleE9mKCdkYWlseW1vdGlvbicpID4gLTEpIHtcbiAgICAgIHR5cGUgPSAnZGFpbHltb3Rpb24nO1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgdHlwZTogdHlwZSxcbiAgICAgIGlkOiBSZWdFeHAuJDYsXG4gICAgfTtcbiAgfVxuXG4gIGNyZWF0ZVZpZGVvKHVybDogc3RyaW5nKTogVmlkZW9UTyB7XG4gICAgY29uc3QgdmlkZW9PYmogPSB1cmwgJiYgdXJsLmluY2x1ZGVzKCd3aXN0aWEnKSA/IHRoaXMucGFyc2VXaXN0aWFWaWRlbyh1cmwpIDogdGhpcy5wYXJzZVZpZGVvKHVybCk7XG4gICAgbGV0IHZpZGVvVVJMOiBzdHJpbmc7XG4gICAgaWYgKHZpZGVvT2JqLnR5cGUgPT09ICd5b3V0dWJlJykge1xuICAgICAgdmlkZW9VUkwgPSAnaHR0cHM6Ly93d3cueW91dHViZS5jb20vZW1iZWQvJyArIHZpZGVvT2JqLmlkO1xuICAgIH0gZWxzZSBpZiAodmlkZW9PYmoudHlwZSA9PT0gJ3ZpbWVvJykge1xuICAgICAgdmlkZW9VUkwgPSAnaHR0cHM6Ly9wbGF5ZXIudmltZW8uY29tL3ZpZGVvLycgKyB2aWRlb09iai5pZDtcbiAgICB9IGVsc2UgaWYgKHZpZGVvT2JqLnR5cGUgPT09ICdkYWlseW1vdGlvbicpIHtcbiAgICAgIHZpZGVvVVJMID0gJ2h0dHBzOi8vd3d3LmRhaWx5bW90aW9uLmNvbS9lbWJlZC92aWRlby8nICsgdmlkZW9PYmouaWQgKyAnP2NvbG9yPWZmZmZmZiZ0aXRsZT0wJmJ5bGluZT0wJnBvcnRyYWl0PTAnO1xuICAgIH0gZWxzZSBpZiAodmlkZW9PYmoudHlwZSA9PT0gJ3dpc3RpYScpIHtcbiAgICAgIHZpZGVvVVJMID0gJ2h0dHBzOi8vZmFzdC53aXN0aWEubmV0L2VtYmVkL2lmcmFtZS8nICsgdmlkZW9PYmouaWQ7XG4gICAgfSBlbHNlIGlmICh2aWRlb09iai50eXBlID09PSAnd2lzdGlhLWVtYmVkZWQnKSB7XG4gICAgICB2aWRlb1VSTCA9IHZpZGVvT2JqLmlkO1xuICAgIH1cbiAgICBjb25zdCB2aWRlbyA9IG5ldyBWaWRlb1RPKHZpZGVvVVJMLCB2aWRlb09iai50eXBlLCB2aWRlb09iai5pZCwgdGhpcy5zYW5pdGl6ZXIpO1xuICAgIHJldHVybiB2aWRlbztcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgVmlkZW9UTyB7XG4gIHZpZGVvVXJsOiBzdHJpbmc7XG4gIHZpZGVvVHlwZTogc3RyaW5nO1xuICB2aWRlb0lkOiBzdHJpbmc7XG4gIHNhZmVVcmw6IFNhZmVSZXNvdXJjZVVybDtcbiAgcHVibGljIGNvbnN0cnVjdG9yKHVybDogc3RyaW5nLCB0eXBlOiBzdHJpbmcsIGlkOiBzdHJpbmcsIHNhbml0aXplcjogRG9tU2FuaXRpemVyKSB7XG4gICAgdGhpcy52aWRlb1VybCA9IHVybDtcbiAgICB0aGlzLnZpZGVvVHlwZSA9IHR5cGU7XG4gICAgdGhpcy52aWRlb0lkID0gaWQ7XG4gICAgdGhpcy5zYWZlVXJsID0gc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RSZXNvdXJjZVVybCh1cmwpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBWaWRlbyB7XG4gIHR5cGU6IHN0cmluZztcbiAgaWQ6IHN0cmluZztcbn1cbiIsIjxkaXYgKm5nRm9yPVwibGV0IHZpZGVvIG9mIHZpZGVvVE9zXCI+XG4gIDxpZnJhbWVcbiAgICAqbmdJZj1cInZpZGVvLnZpZGVvVHlwZSAhPT0gJ3ZpbWVvJ1wiXG4gICAgW3NyY109XCJ2aWRlby5zYWZlVXJsXCJcbiAgICBpZD1cInBsYXllclwiXG4gICAgZnJhbWVib3JkZXI9XCIwXCJcbiAgICB3aWR0aD1cIjEwMCVcIlxuICAgIGhlaWdodD1cImF1dG9cIlxuICAgIGFsbG93ZnVsbHNjcmVlbj1cImFsbG93ZnVsbHNjcmVlblwiXG4gICAgbW96YWxsb3dmdWxsc2NyZWVuPVwibW96YWxsb3dmdWxsc2NyZWVuXCJcbiAgICBtc2FsbG93ZnVsbHNjcmVlbj1cIm1zYWxsb3dmdWxsc2NyZWVuXCJcbiAgICBvYWxsb3dmdWxsc2NyZWVuPVwib2FsbG93ZnVsbHNjcmVlblwiXG4gICAgd2Via2l0YWxsb3dmdWxsc2NyZWVuPVwid2Via2l0YWxsb3dmdWxsc2NyZWVuXCJcbiAgICBhbGxvd0Z1bGxTY3JlZW5cbiAgPjwvaWZyYW1lPlxuXG4gIDxkaXZcbiAgICAqbmdJZj1cInZpZGVvLnZpZGVvVHlwZSA9PT0gJ3ZpbWVvJ1wiXG4gICAgc3R5bGU9XCJwYWRkaW5nOiA1Ni4yNSUgMCAxMnB4IDA7IHBvc2l0aW9uOiByZWxhdGl2ZVwiXG4gID5cbiAgICA8aWZyYW1lXG4gICAgICBbc3JjXT1cInZpZGVvLnNhZmVVcmxcIlxuICAgICAgc3R5bGU9XCJwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDogMDsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJVwiXG4gICAgICBmcmFtZWJvcmRlcj1cIjBcIlxuICAgICAgYWxsb3c9XCJhdXRvcGxheTsgZnVsbHNjcmVlblwiXG4gICAgICBhbGxvd2Z1bGxzY3JlZW5cbiAgICA+PC9pZnJhbWU+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=