angular/projects/ng-devtools-backend/src/lib/utils.ts

22 lines
603 B
TypeScript

export const runOutsideAngular = (f: () => any): void => {
const w = window as any;
if (!w.Zone || w.Zone.current._name !== 'angular') {
return;
}
w.Zone.current._parent.run(f);
};
export const componentMetadata = (instance: any) => instance.constructor.ɵcmp;
export const patchTemplate = (instance: any, fn: () => void) => {
const metadata = componentMetadata(instance);
const original = metadata.template;
metadata.tView.template = metadata.template = function(): any {
const result = original.apply(this, arguments);
fn();
return result;
};
return original;
};