Version Status Build Status npm bundle size (minified + gzip) Coverage Status
Lightweight ES Module implementation of reflect-metadata to work with TypeScript's experimental decorator support.
The main reason for this library is to provide a much smaller implementation that can be included as a module.
- ES module
reflectioncan be loaded with<script type="module" src="..."></script>
- Size (uncompressed)
reflect-metadatais ~50Kcore-js/es7/reflectis ~80K@abraham/reflectionis ~3K
Read about how to drop 20K from your production Angular app by switching to this.
npm install @abraham/reflection
import '@abraham/reflection'; Reflect.defineMetadata(metadataKey, metadataValue, target);
You can also import Reflection:
import { Reflection as Reflect } from '@abraham/reflection'; Reflect.defineMetadata(metadataKey, metadataValue, target);
Reflection does not currently cover the complete API surface of reflect-metadata. The following methods are available:
Reflect.decorate(...); Reflect.defineMetadata(...); Reflect.getMetadata(...); Reflect.hasMetadata(...); Reflect.getOwnMetadata(...); Reflect.hasOwnMetadata(...); Reflect.metadata(...);