* No longer builds the example e2e tests using "tsc". The examples are now built with Bazel and can therefore be built with Ivy by using the `--define=compile=aot` switch. * No longer runs the example e2e tests using the protractor CLI. example e2e tests are executed with the Bazel protractor rule and can therefore run incrementally. NOTE: Unit tests found within the examples are still running within the legacy jobs. PR Close #28402
		
			
				
	
	
		
			41 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| /**
 | |
|  * @license
 | |
|  * Copyright Google Inc. All Rights Reserved.
 | |
|  *
 | |
|  * Use of this source code is governed by an MIT-style license that can be
 | |
|  * found in the LICENSE file at https://angular.io/license
 | |
|  */
 | |
| 
 | |
| import {UrlResolver} from '@angular/compiler';
 | |
| import {Component, NgModule} from '@angular/core';
 | |
| import {BrowserModule} from '@angular/platform-browser';
 | |
| import {platformBrowserDynamic} from '@angular/platform-browser-dynamic';
 | |
| 
 | |
| @Component({selector: 'my-app', template: 'empty'})
 | |
| class MyApp {
 | |
| }
 | |
| 
 | |
| // #docregion url_resolver
 | |
| class MyUrlResolver extends UrlResolver {
 | |
|   resolve(baseUrl: string, url: string): string {
 | |
|     // Serve CSS files from a special CDN.
 | |
|     if (url.substr(-4) === '.css') {
 | |
|       return super.resolve('http://cdn.myapp.com/css/', url);
 | |
|     }
 | |
|     return super.resolve(baseUrl, url);
 | |
|   }
 | |
| }
 | |
| 
 | |
| @NgModule({
 | |
|   imports: [BrowserModule],
 | |
|   providers: [{provide: UrlResolver, useClass: MyUrlResolver}],
 | |
|   bootstrap: [MyApp]
 | |
| })
 | |
| class AppModule {
 | |
| }
 | |
| 
 | |
| export function main() {
 | |
|   platformBrowserDynamic().bootstrapModule(AppModule);
 | |
| }
 | |
| // #enddocregion
 |