first-npm-package-nicule
Version:
This isi first npm package
30 lines (25 loc) • 1.26 kB
text/typescript
import { Router } from '@angular/router';
import { Injectable } from '@angular/core';
import { Store } from '@ngrx/store';
import { ResourceSelector } from './resource-selector';
import { HypermediaState } from '../reducers';
import { ReflectiveModelBinderFactory } from '../../models/services/reflective-model-binder';
import { ReflectiveQueryMatcherFactory } from '../../models/services/reflective-query-matcher';
()
export class HypermediaStore {
constructor(private router: Router,
private store: Store<{ hypermedia: HypermediaState}>,
private modelBinderFactory: ReflectiveModelBinderFactory,
private queryMatcherFactory: ReflectiveQueryMatcherFactory) { }
select(path: string, scope: string = 'local', authorize = true, tokenOverride?: string): ResourceSelector {
return new ResourceSelector(
path, scope, authorize, tokenOverride,
this.store,
this.modelBinderFactory,
this.queryMatcherFactory
);
}
selectCurrent(scope: string = 'local', authorize = true, tokenOverride?: string): ResourceSelector {
return this.select(this.router.url, scope, authorize, tokenOverride);
}
}