title: Angular 9 production error: Cannot set property ɵfac of (abstract) class MyFilter { } which has only a getter
body: <p>I have an abstract component in a library (without ivy) with a <code>@Directive()</code> decorator that has some basic attributes and functions to inherit to its children. When I'm trying to use the library in any project, I'm getting the following error in the browser's console:</p>
  
  <p><code>Uncaught TypeError: Cannot set property ɵfac of class MyFilter {} which has only a getter</code></p>
  
  <p>Here is the class: </p>
  
  <pre class="lang-js prettyprint-override"><code>@Directive()
  export abstract class MyFilter&lt;T&gt; {
  
    @Input() form: FormGroup;
    @Input() filterOpened: boolean;
    @Input() enableSubmit: boolean;
  
    abstract useFilter();
  }
  
  </code></pre>
  
  <p>a child class: </p>
  
  <pre class="lang-js prettyprint-override"><code>@Component({
    selector: 'my-text-filter',
    templateUrl: './text-filter.html',
    styleUrls: ['./text-filter.scss']
  })
  export class MyTextFilter extends MyFilter&lt;TextFilter&gt; implements OnInit, OnChanges {
  
    constructor() {
      super();
    }
  
    ngOnInit() {
    }
  
    ngOnChanges(changes: SimpleChanges) {
    }
  
    useFilter() {
    }
  
  }
  </code></pre>