UNPKG

@granito/ngx-hal-client

Version:

A HAL client to be used in Angular projects

39 lines 3.71 kB
import { Injectable } from '@angular/core'; import { Accessor } from './internal'; import * as i0 from "@angular/core"; import * as i1 from "@angular/common/http"; /** * This service is used to obtain API root accessors. It incapsulates * {@link HttpClient}, which will be passed to all {@link Accessor} * objects originating from this service, directly or indirectly. */ export class HalClientService { /** * @param httpClient Angular HTTP client */ constructor(httpClient) { this.httpClient = httpClient; } /** * Obtain an accessor for the API root entry point specified by the * URI. * * @param uri the URI for the API root * @returns an accessor for the API root */ root(uri) { return new Accessor({ _client: this.httpClient, _links: { self: { href: uri } } }); } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: HalClientService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); } static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: HalClientService, providedIn: 'root' }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: HalClientService, decorators: [{ type: Injectable, args: [{ providedIn: 'root' }] }], ctorParameters: () => [{ type: i1.HttpClient }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFsLWNsaWVudC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9oYWwtY2xpZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sWUFBWSxDQUFDOzs7QUFFdEM7Ozs7R0FJRztBQUVILE1BQU0sT0FBTyxnQkFBZ0I7SUFDekI7O09BRUc7SUFDSCxZQUE2QixVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO0lBQ25ELENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxJQUFJLENBQUMsR0FBVztRQUNaLE9BQU8sSUFBSSxRQUFRLENBQUM7WUFDaEIsT0FBTyxFQUFFLElBQUksQ0FBQyxVQUFVO1lBQ3hCLE1BQU0sRUFBRTtnQkFDSixJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFO2FBQ3RCO1NBQ0osQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs4R0FyQlEsZ0JBQWdCO2tIQUFoQixnQkFBZ0IsY0FESCxNQUFNOzsyRkFDbkIsZ0JBQWdCO2tCQUQ1QixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY2Nlc3NvciB9IGZyb20gJy4vaW50ZXJuYWwnO1xuXG4vKipcbiAqIFRoaXMgc2VydmljZSBpcyB1c2VkIHRvIG9idGFpbiBBUEkgcm9vdCBhY2Nlc3NvcnMuIEl0IGluY2Fwc3VsYXRlc1xuICoge0BsaW5rIEh0dHBDbGllbnR9LCB3aGljaCB3aWxsIGJlIHBhc3NlZCB0byBhbGwge0BsaW5rIEFjY2Vzc29yfVxuICogb2JqZWN0cyBvcmlnaW5hdGluZyBmcm9tIHRoaXMgc2VydmljZSwgZGlyZWN0bHkgb3IgaW5kaXJlY3RseS5cbiAqL1xuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBIYWxDbGllbnRTZXJ2aWNlIHtcbiAgICAvKipcbiAgICAgKiBAcGFyYW0gaHR0cENsaWVudCBBbmd1bGFyIEhUVFAgY2xpZW50XG4gICAgICovXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBodHRwQ2xpZW50OiBIdHRwQ2xpZW50KSB7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogT2J0YWluIGFuIGFjY2Vzc29yIGZvciB0aGUgQVBJIHJvb3QgZW50cnkgcG9pbnQgc3BlY2lmaWVkIGJ5IHRoZVxuICAgICAqIFVSSS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSB1cmkgdGhlIFVSSSBmb3IgdGhlIEFQSSByb290XG4gICAgICogQHJldHVybnMgYW4gYWNjZXNzb3IgZm9yIHRoZSBBUEkgcm9vdFxuICAgICAqL1xuICAgIHJvb3QodXJpOiBzdHJpbmcpOiBBY2Nlc3NvciB7XG4gICAgICAgIHJldHVybiBuZXcgQWNjZXNzb3Ioe1xuICAgICAgICAgICAgX2NsaWVudDogdGhpcy5odHRwQ2xpZW50LFxuICAgICAgICAgICAgX2xpbmtzOiB7XG4gICAgICAgICAgICAgICAgc2VsZjogeyBocmVmOiB1cmkgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=