The following code results in a warning and does not produce correct output.
import { DirMixin } from '@vaadin/vaadin-element-mixin/vaadin-dir-mixin.js';
/**
* @polymerMixin
* @mixes DirMixin
*/
export const ItemMixin = superClass => class VaadinItemMixin extends DirMixin(superClass) {
// mixin contents
}
Warning
export const ItemMixin = superClass => class VaadinItemMixin extends DirMixin(superClass) {
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
warning [GEN_TYPESCRIPT_DECLARATIONS_WARNING] - Found 0 features for mixin DirMixin, expected 1.
Expected Output
declare function ItemMixin<T extends new (...args: any[]) => {}>(base: T): T & ItemMixinConstructor & DirMixinConstructor;
interface ItemMixin extends DirMixin {
// mixin contents
}
Actual Output
declare function ItemMixin<T extends new (...args: any[]) => {}>(base: T): T & ItemMixinConstructor;
interface ItemMixin {
// mixin contents
}
Note
I was able to track this down to this method call:
|
private transitiveMixins( |
And now I feel like 3rd party mixins are not picked up by analyzePackage() 🤔
@aomarks any suggestions?
The following code results in a warning and does not produce correct output.
Warning
Expected Output
Actual Output
Note
I was able to track this down to this method call:
tools/packages/gen-typescript-declarations/src/gen-ts.ts
Line 746 in 2f57496
And now I feel like 3rd party mixins are not picked up by
analyzePackage()🤔@aomarks any suggestions?