diff --git a/src/dev-app/tsconfig.json b/src/dev-app/tsconfig.json
index 84331cf36914..970d538c1003 100644
--- a/src/dev-app/tsconfig.json
+++ b/src/dev-app/tsconfig.json
@@ -16,7 +16,8 @@
"@angular/material-moment-adapter": ["../material-moment-adapter/public-api.ts"],
"@angular/google-maps": ["../google-maps"],
"@angular/components-examples": ["../components-examples"],
- "@angular/components-examples/*": ["../components-examples/*"]
+ "@angular/components-examples/*": ["../components-examples/*"],
+ "@angular/youtube-player": ["../youtube-player"]
}
},
"include": ["./**/*.ts"]
diff --git a/src/dev-app/youtube-player/youtube-player-demo.html b/src/dev-app/youtube-player/youtube-player-demo.html
index 5b30c7ae0f4b..2bf7ab032c91 100644
--- a/src/dev-app/youtube-player/youtube-player-demo.html
+++ b/src/dev-app/youtube-player/youtube-player-demo.html
@@ -1,15 +1,16 @@
-
+
Basic Example
-
+
{{video.name}}
Unset
-
+
diff --git a/src/dev-app/youtube-player/youtube-player-demo.scss b/src/dev-app/youtube-player/youtube-player-demo.scss
index 6c01b687a96b..78605c57b26d 100644
--- a/src/dev-app/youtube-player/youtube-player-demo.scss
+++ b/src/dev-app/youtube-player/youtube-player-demo.scss
@@ -1,7 +1,7 @@
.demo-video-selection {
margin-bottom: 20px;
- mat-radio-button {
+ .mat-radio-button {
margin: 8px;
}
}
diff --git a/src/dev-app/youtube-player/youtube-player-demo.ts b/src/dev-app/youtube-player/youtube-player-demo.ts
index 2a5b22ffee61..ae8aebb31d53 100644
--- a/src/dev-app/youtube-player/youtube-player-demo.ts
+++ b/src/dev-app/youtube-player/youtube-player-demo.ts
@@ -6,7 +6,14 @@
* found in the LICENSE file at https://angular.io/license
*/
- import {Component} from '@angular/core';
+import {
+ AfterViewInit,
+ ChangeDetectorRef,
+ Component,
+ ElementRef,
+ OnDestroy,
+ ViewChild
+} from '@angular/core';
interface Video {
id: string;
@@ -33,8 +40,28 @@ const VIDEOS: Video[] = [
templateUrl: 'youtube-player-demo.html',
styleUrls: ['youtube-player-demo.css'],
})
-export class YouTubePlayerDemo {
- video: Video | undefined = VIDEOS[0];
+export class YouTubePlayerDemo implements AfterViewInit, OnDestroy {
+ @ViewChild('demoYouTubePlayer') demoYouTubePlayer: ElementRef
;
+ selectedVideo: Video | undefined = VIDEOS[0];
videos = VIDEOS;
- apiLoaded = false;
+ videoWidth: number | undefined;
+ videoHeight: number | undefined;
+
+ constructor(private _changeDetectorRef: ChangeDetectorRef) {}
+
+ ngAfterViewInit(): void {
+ this.onResize();
+ window.addEventListener('resize', this.onResize);
+ }
+
+ onResize = (): void => {
+ // Automatically expand the video to fit the page up to 1200px x 720px
+ this.videoWidth = Math.min(this.demoYouTubePlayer.nativeElement.clientWidth, 1200);
+ this.videoHeight = this.videoWidth * 0.6;
+ this._changeDetectorRef.detectChanges();
+ }
+
+ ngOnDestroy(): void {
+ window.removeEventListener('resize', this.onResize);
+ }
}