code: function getComponentConstructor(name) {
      var serviceName = name + 'Directive';
      if ($injector.has(serviceName)) {
        var definitions = $injector.get(serviceName);
        if (definitions.length > 1) {
          throw new Error('too many directives named "' + name + '"');
        }
        return definitions[0].controller;
      } else {
        throw new Error('directive "' + name + '" is not registered');
      }
    }
docs: When this file is processed, the line below is replaced with the contents of the compiled TypeScript classes. {{SHARED_CODE}}