80 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			80 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
|  | /** | ||
|  |  * @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 commonjs from 'rollup-plugin-commonjs'; | ||
|  | import * as path from 'path'; | ||
|  | 
 | ||
|  | import 'reflect-metadata'; | ||
|  | 
 | ||
|  | var m = /^\@angular\/((\w|\-)+)(\/(\w|\d|\/|\-)+)?$/; | ||
|  | var location = normalize('../../dist/packages-dist') + '/'; | ||
|  | var rxjsLocation = normalize('../../node_modules/rxjs'); | ||
|  | var tslibLocation = normalize('../../node_modules/tslib'); | ||
|  | var esm = 'esm/'; | ||
|  | 
 | ||
|  | var locations = { | ||
|  |   'tsc-wrapped': normalize('../../dist/tools/@angular') + '/', | ||
|  |   'compiler-cli': normalize('../../dist/packages') + '/' | ||
|  | }; | ||
|  | 
 | ||
|  | var esm_suffixes = {}; | ||
|  | 
 | ||
|  | function normalize(fileName) { | ||
|  |   return path.resolve(__dirname, fileName); | ||
|  | } | ||
|  | 
 | ||
|  | function resolve(id, from) { | ||
|  |   // console.log('Resolve id:', id, 'from', from)
 | ||
|  |   if (id == '@angular/tsc-wrapped') { | ||
|  |     // Hack to restrict the import to not include the index of @angular/tsc-wrapped so we don't
 | ||
|  |     // rollup tsickle.
 | ||
|  |     return locations['tsc-wrapped'] + 'tsc-wrapped/src/collector.js'; | ||
|  |   } | ||
|  |   var match = m.exec(id); | ||
|  |   if (match) { | ||
|  |     var packageName = match[1]; | ||
|  |     var esm_suffix = esm_suffixes[packageName] || ''; | ||
|  |     var loc = locations[packageName] || location; | ||
|  |     var r = loc !== location && (loc + esm_suffix + packageName + (match[3] || '/index') + '.js') || | ||
|  |         loc + packageName + '/@angular/' + packageName + '.es5.js'; | ||
|  |     // console.log('** ANGULAR MAPPED **: ', r);
 | ||
|  |     return r; | ||
|  |   } | ||
|  |   if (id && id.startsWith('rxjs/')) { | ||
|  |     const resolved = `${rxjsLocation}${id.replace('rxjs', '')}.js`; | ||
|  |     return resolved; | ||
|  |   } | ||
|  |   if (id == 'tslib') { | ||
|  |     return tslibLocation + '/tslib.es6.js'; | ||
|  |   } | ||
|  | } | ||
|  | 
 | ||
|  | // hack to get around issues with default exports
 | ||
|  | var banner = `ts['default'] = ts['default'] || ts; fs['default'] = fs['default'] || fs;`; | ||
|  | 
 | ||
|  | export default { | ||
|  |   entry: '../../dist/packages-dist/compiler-cli/src/ngc.js', | ||
|  |   dest: './browser-bundle.umd.js', | ||
|  |   format: 'umd', | ||
|  |   moduleName: 'ng.compiler_cli_browser', | ||
|  |   exports: 'named', | ||
|  |   external: [ | ||
|  |     'fs', | ||
|  |     'path', | ||
|  |     'typescript', | ||
|  |     'reflect-metadata', | ||
|  |   ], | ||
|  |   globals: { | ||
|  |     'typescript': 'ts', | ||
|  |     'path': 'path', | ||
|  |     'fs': 'fs', | ||
|  |   }, | ||
|  |   banner: banner, | ||
|  |   plugins: [{resolveId: resolve}, commonjs()] | ||
|  | } |