@anexia/ngx-interceptor-tools
Version:
This library provides a toolset for common http interceptor tasks, like request matching.
12 lines • 2.28 kB
JavaScript
import { URL_WITH_PARAMS_SELECTOR } from "../selectors/url-with-params-selector";
export class UrlFragmentMatcher {
constructor(urlFragments, selector = URL_WITH_PARAMS_SELECTOR) {
this.urlFragments = urlFragments;
this.selector = selector;
}
match(request) {
const selector = this.selector(request);
return Boolean(this.urlFragments.filter(fragment => selector.indexOf(fragment) !== -1).length);
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJsLWZyYWdtZW50LW1hdGNoZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaW50ZXJjZXB0b3ItdG9vbHMvc3JjL2xpYi9zdHJhdGVnaWVzL3VybC1mcmFnbWVudC1tYXRjaGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLHVDQUF1QyxDQUFDO0FBSS9FLE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsWUFDUyxZQUFzQixFQUN0QixXQUFvQyx3QkFBd0I7UUFENUQsaUJBQVksR0FBWixZQUFZLENBQVU7UUFDdEIsYUFBUSxHQUFSLFFBQVEsQ0FBb0Q7SUFDckUsQ0FBQztJQUVNLEtBQUssQ0FBQyxPQUF5QjtRQUNwQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3hDLE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2pHLENBQUM7Q0FFRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7UmVxdWVzdE1hdGNoU3RyYXRlZ3l9IGZyb20gXCIuLi9pbnRlcmZhY2VzL3JlcXVlc3QtbWF0Y2gtc3RyYXRlZ3lcIjtcbmltcG9ydCB7SHR0cFJlcXVlc3R9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xuaW1wb3J0IHtVUkxfV0lUSF9QQVJBTVNfU0VMRUNUT1J9IGZyb20gXCIuLi9zZWxlY3RvcnMvdXJsLXdpdGgtcGFyYW1zLXNlbGVjdG9yXCI7XG5pbXBvcnQge1JlcXVlc3RTZWxlY3RvclN0cmF0ZWd5fSBmcm9tIFwiLi4vaW50ZXJmYWNlcy9yZXF1ZXN0LXNlbGVjdG9yLXN0cmF0ZWd5XCI7XG5cblxuZXhwb3J0IGNsYXNzIFVybEZyYWdtZW50TWF0Y2hlciBpbXBsZW1lbnRzIFJlcXVlc3RNYXRjaFN0cmF0ZWd5IHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyB1cmxGcmFnbWVudHM6IHN0cmluZ1tdLFxuICAgIHB1YmxpYyBzZWxlY3RvcjogUmVxdWVzdFNlbGVjdG9yU3RyYXRlZ3kgPSBVUkxfV0lUSF9QQVJBTVNfU0VMRUNUT1IpIHtcbiAgfVxuXG4gIHB1YmxpYyBtYXRjaChyZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+KTogYm9vbGVhbiB7XG4gICAgY29uc3Qgc2VsZWN0b3IgPSB0aGlzLnNlbGVjdG9yKHJlcXVlc3QpO1xuICAgIHJldHVybiBCb29sZWFuKHRoaXMudXJsRnJhZ21lbnRzLmZpbHRlcihmcmFnbWVudCA9PiBzZWxlY3Rvci5pbmRleE9mKGZyYWdtZW50KSAhPT0gLTEpLmxlbmd0aCk7XG4gIH1cblxufVxuIl19