text: /**
   * @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';
  
  var m = /^\@angular\/((\w|\-)+)(\/(\w|\d|\/|\-)+)?$/;
  var location = normalize('../../dist/packages-dist') + '/';
  var rxjsLocation = normalize('../../node_modules/rxjs');
  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;
    }
  }
  
  var banner = `
  var $reflect = {defineMetadata: function() {}, getOwnMetadata: function(){}};
  ((typeof global !== 'undefined' && global)||{})['Reflect'] = $reflect;
  var $deferred, $resolved, $provided;
  function $getModule(name) { return $provided[name] || require(name); }
  function define(modules, cb) { $deferred = { modules: modules, cb: cb }; }
  module.exports = function(provided) {
    if ($resolved) return $resolved;
    var result = {};
    $provided = Object.assign({'reflect-metadata': $reflect}, provided || {}, { exports: result });
    $deferred.cb.apply(this, $deferred.modules.map($getModule));
    $resolved = result;
    return result;
  }
  `;
  
  export default {
    entry: '../../dist/packages-dist/language-service/@angular/language-service.es5.js',
    dest: '../../dist/packages-dist/language-service/bundles/language-service.umd.js',
    format: 'amd',
    moduleName: 'ng.language_service',
    exports: 'named',
    external: [
      'fs',
      'path',
      'typescript',
    ],
    globals: {
      'typescript': 'ts',
      'path': 'path',
      'fs': 'fs',
    },
    banner: banner,
    plugins: [{resolveId: resolve}, commonjs()]
  }
  