UNPKG

angular-t9n

Version:

A translation tool for Angular i18n

28 lines (21 loc) 627 B
import { HalLink } from './hal-link'; export class LinkBuilder { private _links: { [key: string]: HalLink } = {}; self(href: string) { return this.href('self', href); } hrefWhen(condition: boolean, name: string, hrefFactory: () => string) { return condition ? this.href(name, hrefFactory()) : this; } href(name: string, href: string) { this._links[name] = { href }; return this; } templatedHref(name: string, href: string) { this._links[name] = { href, templated: true }; return this; } build() { return Object.keys(this._links).length > 0 ? this._links : undefined; } }