@veeroute/lss-routing-angular
Version:
OpenAPI client for @veeroute/lss-routing-angular
1 lines • 62.4 kB
Source Map (JSON)
{"version":3,"file":"veeroute-lss-routing-angular.mjs","sources":["../../variables.ts","../../encoder.ts","../../configuration.ts","../../api.base.service.ts","../../api/matrixService.ts","../../api/routeService.ts","../../api/systemService.ts","../../api/api.ts","../../model/attribute.ts","../../model/checkResult.ts","../../model/geopoint.ts","../../model/schemaError.ts","../../model/service.ts","../../model/timeWindow.ts","../../model/trackpoint.ts","../../model/transportType.ts","../../model/versionResult.ts","../../api.module.ts","../../provide-api.ts","../../veeroute-lss-routing-angular.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\nexport const BASE_PATH = new InjectionToken<string>('basePath');\nexport const COLLECTION_FORMATS = {\n 'csv': ',',\n 'tsv': ' ',\n 'ssv': ' ',\n 'pipes': '|'\n}\n","import { HttpParameterCodec } from '@angular/common/http';\n\n/**\n * Custom HttpParameterCodec\n * Workaround for https://github.com/angular/angular/issues/18261\n */\nexport class CustomHttpParameterCodec implements HttpParameterCodec {\n encodeKey(k: string): string {\n return encodeURIComponent(k);\n }\n encodeValue(v: string): string {\n return encodeURIComponent(v);\n }\n decodeKey(k: string): string {\n return decodeURIComponent(k);\n }\n decodeValue(v: string): string {\n return decodeURIComponent(v);\n }\n}\n","import { HttpHeaders, HttpParams, HttpParameterCodec } from '@angular/common/http';\nimport { Param } from './param';\n\nexport interface ConfigurationParameters {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Override the default method for encoding path parameters in various\n * <a href=\"https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#style-values\">styles</a>.\n * <p>\n * See {@link README.md} for more details\n * </p>\n */\n encodeParam?: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials?: {[ key: string ]: string | (() => string | undefined)};\n}\n\nexport class Configuration {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Encoding of various path parameter\n * <a href=\"https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#style-values\">styles</a>.\n * <p>\n * See {@link README.md} for more details\n * </p>\n */\n encodeParam: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials: {[ key: string ]: string | (() => string | undefined)};\n\nconstructor({ accessToken, apiKeys, basePath, credentials, encodeParam, encoder, password, username, withCredentials }: ConfigurationParameters = {}) {\n if (apiKeys) {\n this.apiKeys = apiKeys;\n }\n if (username !== undefined) {\n this.username = username;\n }\n if (password !== undefined) {\n this.password = password;\n }\n if (accessToken !== undefined) {\n this.accessToken = accessToken;\n }\n if (basePath !== undefined) {\n this.basePath = basePath;\n }\n if (withCredentials !== undefined) {\n this.withCredentials = withCredentials;\n }\n if (encoder) {\n this.encoder = encoder;\n }\n this.encodeParam = encodeParam ?? (param => this.defaultEncodeParam(param));\n this.credentials = credentials ?? {};\n\n // init default ApiKeyAuth credential\n if (!this.credentials['ApiKeyAuth']) {\n this.credentials['ApiKeyAuth'] = () => {\n return typeof this.accessToken === 'function'\n ? this.accessToken()\n : this.accessToken;\n };\n }\n }\n\n /**\n * Select the correct content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param contentTypes - the array of content types that are available for selection\n * @returns the selected content-type or <code>undefined</code> if no selection could be made.\n */\n public selectHeaderContentType (contentTypes: string[]): string | undefined {\n if (contentTypes.length === 0) {\n return undefined;\n }\n\n const type = contentTypes.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return contentTypes[0];\n }\n return type;\n }\n\n /**\n * Select the correct accept content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct accept content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param accepts - the array of content types that are available for selection.\n * @returns the selected content-type or <code>undefined</code> if no selection could be made.\n */\n public selectHeaderAccept(accepts: string[]): string | undefined {\n if (accepts.length === 0) {\n return undefined;\n }\n\n const type = accepts.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return accepts[0];\n }\n return type;\n }\n\n /**\n * Check if the given MIME is a JSON MIME.\n * JSON MIME examples:\n * application/json\n * application/json; charset=UTF8\n * APPLICATION/JSON\n * application/vnd.company+json\n * @param mime - MIME (Multipurpose Internet Mail Extensions)\n * @return True if the given MIME is JSON, false otherwise.\n */\n public isJsonMime(mime: string): boolean {\n const jsonMime: RegExp = new RegExp('^(application\\/json|[^;/ \\t]+\\/[^;/ \\t]+[+]json)[ \\t]*(;.*)?$', 'i');\n return mime !== null && (jsonMime.test(mime) || mime.toLowerCase() === 'application/json-patch+json');\n }\n\n public lookupCredential(key: string): string | undefined {\n const value = this.credentials[key];\n return typeof value === 'function'\n ? value()\n : value;\n }\n\n public addCredentialToHeaders(credentialKey: string, headerName: string, headers: HttpHeaders, prefix?: string): HttpHeaders {\n const value = this.lookupCredential(credentialKey);\n return value\n ? headers.set(headerName, (prefix ?? '') + value)\n : headers;\n }\n\n public addCredentialToQuery(credentialKey: string, paramName: string, query: HttpParams): HttpParams {\n const value = this.lookupCredential(credentialKey);\n return value\n ? query.set(paramName, value)\n : query;\n }\n\n private defaultEncodeParam(param: Param): string {\n // This implementation exists as fallback for missing configuration\n // and for backwards compatibility to older typescript-angular generator versions.\n // It only works for the 'simple' parameter style.\n // Date-handling only works for the 'date-time' format.\n // All other styles and Date-formats are probably handled incorrectly.\n //\n // But: if that's all you need (i.e.: the most common use-case): no need for customization!\n\n const value = param.dataFormat === 'date-time' && param.value instanceof Date\n ? (param.value as Date).toISOString()\n : param.value;\n\n return encodeURIComponent(String(value));\n }\n}\n","/**\n * VRt.Routing [RT]\n *\n * The version of the OpenAPI document: 7.38.3336\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\nimport { HttpHeaders, HttpParams, HttpParameterCodec } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from './encoder';\nimport { Configuration } from './configuration';\n\nexport class BaseService {\n protected basePath = 'https://api.edge7.veeroute.cloud';\n public defaultHeaders = new HttpHeaders();\n public configuration: Configuration;\n public encoder: HttpParameterCodec;\n\n constructor(basePath?: string|string[], configuration?: Configuration) {\n this.configuration = configuration || new Configuration();\n if (typeof this.configuration.basePath !== 'string') {\n const firstBasePath = Array.isArray(basePath) ? basePath[0] : undefined;\n if (firstBasePath != undefined) {\n basePath = firstBasePath;\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n protected canConsumeForm(consumes: string[]): boolean {\n return consumes.indexOf('multipart/form-data') !== -1;\n }\n\n protected addToHttpParams(httpParams: HttpParams, value: any, key?: string, isDeep: boolean = false): HttpParams {\n // If the value is an object (but not a Date), recursively add its keys.\n if (typeof value === 'object' && !(value instanceof Date)) {\n return this.addToHttpParamsRecursive(httpParams, value, isDeep ? key : undefined, isDeep);\n }\n return this.addToHttpParamsRecursive(httpParams, value, key);\n }\n\n protected addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string, isDeep: boolean = false): HttpParams {\n if (value === null || value === undefined) {\n return httpParams;\n }\n if (typeof value === 'object') {\n // If JSON format is preferred, key must be provided.\n if (key != null) {\n return isDeep\n ? Object.keys(value as Record<string, any>).reduce(\n (hp, k) => hp.append(`${key}[${k}]`, value[k]),\n httpParams,\n )\n : httpParams.append(key, JSON.stringify(value));\n }\n // Otherwise, if it's an array, add each element.\n if (Array.isArray(value)) {\n value.forEach(elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, value.toISOString());\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach(k => {\n const paramKey = key ? `${key}.${k}` : k;\n httpParams = this.addToHttpParamsRecursive(httpParams, value[k], paramKey);\n });\n }\n return httpParams;\n } else if (key != null) {\n return httpParams.append(key, value);\n }\n throw Error(\"key may not be null if value is not object or array\");\n }\n}\n","/**\n * VRt.Routing [RT]\n *\n * The version of the OpenAPI document: 7.38.3336\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { General400Routing } from '../model/general400';\n// @ts-ignore\nimport { General402Routing } from '../model/general402';\n// @ts-ignore\nimport { General404Routing } from '../model/general404';\n// @ts-ignore\nimport { General429Routing } from '../model/general429';\n// @ts-ignore\nimport { General500Routing } from '../model/general500';\n// @ts-ignore\nimport { MatrixResultRouting } from '../model/matrixResult';\n// @ts-ignore\nimport { MatrixTaskRouting } from '../model/matrixTask';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\nimport { BaseService } from '../api.base.service';\nimport {\n MatrixServiceInterface,\n RunMatrixCalculationRequestParams\n} from './matrixServiceInterface';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MatrixService extends BaseService implements MatrixServiceInterface {\n\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string|string[], @Optional() configuration?: Configuration) {\n super(basePath, configuration);\n }\n\n /**\n * Time-distance matrix\n * Creating time-distance matrices between each pair of locations. The result of this method may slightly differ from the `route` method. \n * @param requestParameters\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public runMatrixCalculation(requestParameters: RunMatrixCalculationRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<MatrixResultRouting>;\n public runMatrixCalculation(requestParameters: RunMatrixCalculationRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<MatrixResultRouting>>;\n public runMatrixCalculation(requestParameters: RunMatrixCalculationRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<MatrixResultRouting>>;\n public runMatrixCalculation(requestParameters: RunMatrixCalculationRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n const matrixTaskRouting = requestParameters?.matrixTaskRouting;\n if (matrixTaskRouting === null || matrixTaskRouting === undefined) {\n throw new Error('Required parameter matrixTaskRouting was null or undefined when calling runMatrixCalculation.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n // authentication (ApiKeyAuth) required\n localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n 'application/json'\n ]);\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/routing/matrix/calculation`;\n const { basePath, withCredentials } = this.configuration;\n return this.httpClient.request<MatrixResultRouting>('post', `${basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: matrixTaskRouting,\n responseType: <any>responseType_,\n ...(withCredentials ? { withCredentials } : {}),\n headers: localVarHeaders,\n observe: observe,\n transferCache: localVarTransferCache,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * VRt.Routing [RT]\n *\n * The version of the OpenAPI document: 7.38.3336\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { General400Routing } from '../model/general400';\n// @ts-ignore\nimport { General402Routing } from '../model/general402';\n// @ts-ignore\nimport { General404Routing } from '../model/general404';\n// @ts-ignore\nimport { General429Routing } from '../model/general429';\n// @ts-ignore\nimport { General500Routing } from '../model/general500';\n// @ts-ignore\nimport { RouteResultRouting } from '../model/routeResult';\n// @ts-ignore\nimport { RouteTaskRouting } from '../model/routeTask';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\nimport { BaseService } from '../api.base.service';\nimport {\n RouteServiceInterface,\n RunRouteCalculationRequestParams\n} from './routeServiceInterface';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class RouteService extends BaseService implements RouteServiceInterface {\n\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string|string[], @Optional() configuration?: Configuration) {\n super(basePath, configuration);\n }\n\n /**\n * Route between points\n * Constructing a route between points, taking into account the specified order and time at each stop. When specifying the departure time `departure_time`, traffic jams are taken into account. \n * @param requestParameters\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public runRouteCalculation(requestParameters: RunRouteCalculationRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<RouteResultRouting>;\n public runRouteCalculation(requestParameters: RunRouteCalculationRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<RouteResultRouting>>;\n public runRouteCalculation(requestParameters: RunRouteCalculationRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<RouteResultRouting>>;\n public runRouteCalculation(requestParameters: RunRouteCalculationRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n const routeTaskRouting = requestParameters?.routeTaskRouting;\n if (routeTaskRouting === null || routeTaskRouting === undefined) {\n throw new Error('Required parameter routeTaskRouting was null or undefined when calling runRouteCalculation.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n // authentication (ApiKeyAuth) required\n localVarHeaders = this.configuration.addCredentialToHeaders('ApiKeyAuth', 'Authorization', localVarHeaders, 'Bearer ');\n\n const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n 'application/json'\n ]);\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/routing/route/calculation`;\n const { basePath, withCredentials } = this.configuration;\n return this.httpClient.request<RouteResultRouting>('post', `${basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: routeTaskRouting,\n responseType: <any>responseType_,\n ...(withCredentials ? { withCredentials } : {}),\n headers: localVarHeaders,\n observe: observe,\n transferCache: localVarTransferCache,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * VRt.Routing [RT]\n *\n * The version of the OpenAPI document: 7.38.3336\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { CheckResultRouting } from '../model/checkResult';\n// @ts-ignore\nimport { General404Routing } from '../model/general404';\n// @ts-ignore\nimport { General429Routing } from '../model/general429';\n// @ts-ignore\nimport { General500Routing } from '../model/general500';\n// @ts-ignore\nimport { VersionResultRouting } from '../model/versionResult';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\nimport { BaseService } from '../api.base.service';\nimport {\n SystemServiceInterface,\n FileRequestParams\n} from './systemServiceInterface';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SystemService extends BaseService implements SystemServiceInterface {\n\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string|string[], @Optional() configuration?: Configuration) {\n super(basePath, configuration);\n }\n\n /**\n * Checking the availability\n * Checking the service availability.\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public check(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<CheckResultRouting>;\n public check(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<CheckResultRouting>>;\n public check(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<CheckResultRouting>>;\n public check(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n\n let localVarHeaders = this.defaultHeaders;\n\n const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n 'application/json'\n ]);\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/routing/system/check`;\n const { basePath, withCredentials } = this.configuration;\n return this.httpClient.request<CheckResultRouting>('get', `${basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: <any>responseType_,\n ...(withCredentials ? { withCredentials } : {}),\n headers: localVarHeaders,\n observe: observe,\n transferCache: localVarTransferCache,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * Getting the documentation\n * Getting the file with this service documentation.\n * @param requestParameters\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public file(requestParameters: FileRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/html' | 'text/plain' | 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<string>;\n public file(requestParameters: FileRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/html' | 'text/plain' | 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<string>>;\n public file(requestParameters: FileRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'text/html' | 'text/plain' | 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<string>>;\n public file(requestParameters: FileRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'text/html' | 'text/plain' | 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n const filename = requestParameters?.filename;\n if (filename === null || filename === undefined) {\n throw new Error('Required parameter filename was null or undefined when calling file.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n\n const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n 'text/html',\n 'text/plain',\n 'application/json'\n ]);\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/routing/file/${this.configuration.encodeParam({name: \"filename\", value: filename, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n const { basePath, withCredentials } = this.configuration;\n return this.httpClient.request<string>('get', `${basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: <any>responseType_,\n ...(withCredentials ? { withCredentials } : {}),\n headers: localVarHeaders,\n observe: observe,\n transferCache: localVarTransferCache,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * Getting the service version\n * Getting the service version.\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public version(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<VersionResultRouting>;\n public version(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<VersionResultRouting>>;\n public version(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<VersionResultRouting>>;\n public version(observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n\n let localVarHeaders = this.defaultHeaders;\n\n const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept([\n 'application/json'\n ]);\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();\n\n const localVarTransferCache: boolean = options?.transferCache ?? true;\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/routing/system/version`;\n const { basePath, withCredentials } = this.configuration;\n return this.httpClient.request<VersionResultRouting>('get', `${basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: <any>responseType_,\n ...(withCredentials ? { withCredentials } : {}),\n headers: localVarHeaders,\n observe: observe,\n transferCache: localVarTransferCache,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","export * from './matrixService';\nimport { MatrixService } from './matrixService';\nexport * from './matrixServiceInterface';\nexport * from './routeService';\nimport { RouteService } from './routeService';\nexport * from './routeServiceInterface';\nexport * from './systemService';\nimport { SystemService } from './systemService';\nexport * from './systemServiceInterface';\nexport const APIS = [MatrixService, RouteService, SystemService];\n","/**\n * VRt.Routing [RT]\n *\n * The version of the OpenAPI document: 7.38.3336\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Attribute.\n */\nexport interface AttributeRouting { \n [key: string]: any | any;\n\n\n /**\n * Attribute\\'s key.\n */\n key: string;\n /**\n * Attribute\\'s value.\n */\n value: string;\n /**\n * Attribute processing strategy: * `LASTMILE_REF_TIME` - when sending a task to the scheduler, the value (format [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6)) of the attribute is replaced with a relative time; if the value is not in the format, the calculation stops with the `FAILED` status. \n */\n strategy?: string | null;\n}\n\n","/**\n * VRt.Routing [RT]\n *\n * The version of the OpenAPI document: 7.38.3336\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Service availability result.\n */\nexport interface CheckResultRouting { \n [key: string]: any | any;\n\n\n /**\n * The current health indicator of the service. * `0.0` means the service is not ready to perform tasks. * `1.0` means the service is fully ready to perform tasks. \n */\n health: number;\n}\n\n","/**\n * VRt.Routing [RT]\n *\n * The version of the OpenAPI document: 7.38.3336\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Geographical point.\n */\nexport interface GeopointRouting { \n [key: string]: any | any;\n\n\n /**\n * Latitude in degrees.\n */\n latitude: number;\n /**\n * Longitude in degrees.\n */\n longitude: number;\n}\n\n","/**\n * VRt.Routing [RT]\n *\n * The version of the OpenAPI document: 7.38.3336\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Data error by schema.\n */\nexport interface SchemaErrorRouting { \n [key: string]: any | any;\n\n\n /**\n * Target entity identifier.\n */\n entity: string | null;\n /**\n * Error message.\n */\n message: string;\n}\n\n","/**\n * VRt.Routing [RT]\n *\n * The version of the OpenAPI document: 7.38.3336\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Service name.\n */\nexport enum ServiceRouting {\n\n UNIVERSAL = 'UNIVERSAL',\n\n ROUTING = 'ROUTING',\n\n ACCOUNT = 'ACCOUNT',\n\n ADMIN = 'ADMIN',\n\n STUDIO = 'STUDIO',\n\n MONITOR = 'MONITOR',\n\n PACKER = 'PACKER',\n\n AGRO = 'AGRO',\n\n REGISTRY = 'REGISTRY',\n\n SUPPORT = 'SUPPORT'\n}\n\n","/**\n * VRt.Routing [RT]\n *\n * The version of the OpenAPI document: 7.38.3336\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Time window.\n */\nexport interface TimeWindowRouting { \n [key: string]: any | any;\n\n\n /**\n * Date and time in the [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6) format.\n */\n from: string;\n /**\n * Date and time in the [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6) format.\n */\n to: string;\n}\n\n","/**\n * VRt.Routing [RT]\n *\n * The version of the OpenAPI document: 7.38.3336\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * A geographic point with a time reference.\n */\nexport interface TrackpointRouting { \n [key: string]: any | any;\n\n\n /**\n * Latitude in degrees.\n */\n latitude: number;\n /**\n * Longitude in degrees.\n */\n longitude: number;\n /**\n * Date and time in the [ISO 8601](https://tools.ietf.org/html/rfc3339#section-5.6) format.\n */\n time?: string | null;\n}\n\n","/**\n * VRt.Routing [RT]\n *\n * The version of the OpenAPI document: 7.38.3336\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Transport types: * `CAR` - car * `TRUCK_1500` - truck with permissible weight 1500 kg * `TRUCK_3000` - truck with permissible weight 3000 kg * `TRUCK_5000` - truck with permissible weight 5000 kg * `TRUCK_10000` - truck with permissible weight 10000 kg * `TRUCK_20000` - truck with permissible weight 20000 kg * `TRUCK_10000_L75_H35_W24_6000` - a truck with a permitted weight of no more than 10,000 kg, dimensions of 7.5 x 3.5 x 2.4 meters, and a permissible axle load of 6,000 kg * `TRUCK_18000_L95_H40_W26_11000` - a truck with a permitted weight of no more than 18,000 kg, dimensions of 9.5 x 4.0 x 2.6 meters, and a permissible axle load of 11,000 kg * `TRUCK_26000_L120_H40_W26_8000` - a truck with a permitted weight of no more than 26,000 kg, dimensions of 12.0 x 4.0 x 2.6 meters, and a permissible axle load of 8000 kg * `TRUCK_GARBAGE_1` - truck for transporting garbage (type 1) * `TRUCK_GARBAGE_2` - truck for transporting garbage (type 2) * `TUK_TUK` - tuk-tuk * `BICYCLE` - bicycle * `PEDESTRIAN` - pedestrian * `PUBLIC_TRANSPORT` - public transport * `TELEPORT` - teleport (instant movement between points) Permissible weight is the weight of the equipped transport with cargo and driver, set by the manufacturer as the maximum allowable. \n */\nexport enum TransportTypeRouting {\n\n CAR = 'CAR',\n\n TRUCK_1500 = 'TRUCK_1500',\n\n TRUCK_3000 = 'TRUCK_3000',\n\n TRUCK_5000 = 'TRUCK_5000',\n\n TRUCK_10000 = 'TRUCK_10000',\n\n TRUCK_20000 = 'TRUCK_20000',\n\n TRUCK_10000_L75_H35_W24_6000 = 'TRUCK_10000_L75_H35_W24_6000',\n\n TRUCK_18000_L95_H40_W26_11000 = 'TRUCK_18000_L95_H40_W26_11000',\n\n TRUCK_26000_L120_H40_W26_8000 = 'TRUCK_26000_L120_H40_W26_8000',\n\n TRUCK_GARBAGE_1 = 'TRUCK_GARBAGE_1',\n\n TRUCK_GARBAGE_2 = 'TRUCK_GARBAGE_2',\n\n TUK_TUK = 'TUK_TUK',\n\n BICYCLE = 'BICYCLE',\n\n PEDESTRIAN = 'PEDESTRIAN',\n\n PUBLIC_TRANSPORT = 'PUBLIC_TRANSPORT',\n\n TELEPORT = 'TELEPORT'\n}\n\n","/**\n * VRt.Routing [RT]\n *\n * The version of the OpenAPI document: 7.38.3336\n * Contact: support@veeroute.com\n *\n * NOTE: This class is auto generated by OpenAPI Generator.\n * Do not edit the class manually.\n */\n\n\n/**\n * Service version.\n */\nexport interface VersionResultRouting { \n [key: string]: any | any;\n\n\n /**\n * Product version. Within a single version, compatibility of common data structures between services is guaranteed. A version change indicates changes that are incompatible with previous versions of the product (and all services). \n */\n major: number;\n /**\n * Minor version of the service. A version change indicates new functionality. The update is backward compatible with the major version of the service. \n */\n minor: number;\n /**\n * Build version. Contains backwards compatible bug fixes and docs update. \n */\n build: string;\n}\n\n","import { NgModule, ModuleWithProviders, SkipSelf, Optional } from '@angular/core';\nimport { Configuration } from './configuration';\nimport { HttpClient } from '@angular/common/http';\n\n\n@NgModule({\n imports: [],\n declarations: [],\n exports: [],\n providers: []\n})\nexport class LssRoutingApiModule {\n public static forRoot(configurationFactory: () => Configuration): ModuleWithProviders<LssRoutingApiModule> {\n return {\n ngModule: LssRoutingApiModule,\n providers: [ { provide: Configuration, useFactory: configurationFactory } ]\n };\n }\n\n constructor( @Optional() @SkipSelf() parentModule: LssRoutingApiModule,\n @Optional() http: HttpClient) {\n if (parentModule) {\n throw new Error('LssRoutingApiModule is already loaded. Import in your base AppModule only.');\n }\n if (!http) {\n throw new Error('You need to import the HttpClientModule in your AppModule! \\n' +\n 'See also https://github.com/angular/angular/issues/20575');\n }\n }\n}\n","import { EnvironmentProviders, makeEnvironmentProviders } from \"@angular/core\";\nimport { Configuration, ConfigurationParameters } from './configuration';\nimport { BASE_PATH } from './variables';\n\n// Returns the service class providers, to be used in the [ApplicationConfig](https://angular.dev/api/core/ApplicationConfig).\nexport function provideApi(configOrBasePath: string | ConfigurationParameters): EnvironmentProviders {\n return makeEnvironmentProviders([\n typeof configOrBasePath === \"string\"\n ? { provide: BASE_PATH, useValue: configOrBasePath }\n : {\n provide: Configuration,\n useValue: new Configuration({ ...configOrBasePath }),\n },\n ]);\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2.Configuration"],"mappings":"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