@custom-elements-manifest/analyzer
Version:
<!-- [=> See Source <=](../../docs/analyzer/index.md) -->
23 lines (19 loc) • 537 B
JavaScript
/**
* FIELD-DENY-LIST
*
* Excludes fields from the manifest
*/
export function fieldDenyListPlugin() {
const FIELD_DENY_LIST = [
'observedAttributes',
];
return {
name: 'CORE - FIELD-DENYLIST',
moduleLinkPhase({moduleDoc}){
const classes = moduleDoc?.declarations?.filter(declaration => declaration.kind === 'class' || declaration.kind === 'mixin');
classes?.forEach(klass => {
klass.members = klass?.members?.filter(member => !FIELD_DENY_LIST.includes(member.name));
});
},
}
}