angular2
Version:
Angular 2 - a web framework for modern web apps
23 lines (20 loc) • 632 B
text/typescript
import {CONST, Type, stringify} from "angular2/src/facade/lang";
export abstract class RouteMetadata {
abstract get path(): string;
abstract get component(): Type;
}
()
export class Route implements RouteMetadata {
path: string;
component: Type;
constructor({path, component}: {path?: string, component?: Type} = {}) {
this.path = path;
this.component = component;
}
toString(): string { return `@Route(${this.path}, ${stringify(this.component)})`; }
}
()
export class RoutesMetadata {
constructor(public routes: RouteMetadata[]) {}
toString(): string { return `@Routes(${this.routes})`; }
}