@nestjs-mod/files-afat
Version:
Files UI components and tools for AFAT (Angular, Formly, Antd, Transloco) and rest-sdk for work with backend of this module from Angular appliaction
1 lines • 113 kB
Source Map (JSON)
{"version":3,"file":"nestjs-mod-files-afat.mjs","sources":["../../../../../libs/feature/files-afat/src/lib/generated/rest-sdk/variables.ts","../../../../../libs/feature/files-afat/src/lib/generated/rest-sdk/configuration.ts","../../../../../libs/feature/files-afat/src/lib/generated/rest-sdk/encoder.ts","../../../../../libs/feature/files-afat/src/lib/generated/rest-sdk/api.base.service.ts","../../../../../libs/feature/files-afat/src/lib/generated/rest-sdk/api/files-rest.service.ts","../../../../../libs/feature/files-afat/src/lib/generated/rest-sdk/api/webhook-rest.service.ts","../../../../../libs/feature/files-afat/src/lib/generated/rest-sdk/api/api.ts","../../../../../libs/feature/files-afat/src/lib/generated/rest-sdk/model/create-webhook-dto.interface.ts","../../../../../libs/feature/files-afat/src/lib/generated/rest-sdk/model/files-error-enum.interface.ts","../../../../../libs/feature/files-afat/src/lib/generated/rest-sdk/model/files-presigned-urls.interface.ts","../../../../../libs/feature/files-afat/src/lib/generated/rest-sdk/model/find-many-response-meta.interface.ts","../../../../../libs/feature/files-afat/src/lib/generated/rest-sdk/model/status-response.interface.ts","../../../../../libs/feature/files-afat/src/lib/generated/rest-sdk/model/update-webhook-dto.interface.ts","../../../../../libs/feature/files-afat/src/lib/generated/rest-sdk/model/webhook-event.interface.ts","../../../../../libs/feature/files-afat/src/lib/generated/rest-sdk/model/webhook-role.interface.ts","../../../../../libs/feature/files-afat/src/lib/generated/rest-sdk/model/webhook-status.interface.ts","../../../../../libs/feature/files-afat/src/lib/generated/rest-sdk/api.module.ts","../../../../../libs/feature/files-afat/src/lib/generated/files-rest_sdk-angular.module.ts","../../../../../libs/feature/files-afat/src/lib/services/files.service.ts","../../../../../libs/feature/files-afat/src/lib/formly/image-file.component.ts","../../../../../libs/feature/files-afat/src/lib/formly/formly-fields.ts","../../../../../libs/feature/files-afat/src/nestjs-mod-files-afat.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 { HttpHeaders, HttpParams, HttpParameterCodec } from '@angular/common/http';\nimport { Param } from './param';\n\nexport interface FilesRestClientConfigurationParameters {\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 FilesRestClientConfiguration {\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 }: FilesRestClientConfigurationParameters = {}) {\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 bearer credential\n if (!this.credentials['bearer']) {\n this.credentials['bearer'] = () => {\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 FilesRestClientConfiguration#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 FilesRestClientConfiguration#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","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","/**\n * \n *\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport { HttpHeaders, HttpParams, HttpParameterCodec } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from './encoder';\nimport { FilesRestClientConfiguration } from './configuration';\n\nexport class BaseService {\n protected basePath = 'http://localhost';\n public defaultHeaders = new HttpHeaders();\n public configuration: FilesRestClientConfiguration;\n public encoder: HttpParameterCodec;\n\n constructor(basePath?: string|string[], configuration?: FilesRestClientConfiguration) {\n this.configuration = configuration || new FilesRestClientConfiguration();\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): 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);\n }\n return this.addToHttpParamsRecursive(httpParams, value, key);\n }\n\n protected addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): 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 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 * \n *\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\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 { FilesPresignedUrlsInterface } from '../model/files-presigned-urls.interface';\n// @ts-ignore\nimport { StatusResponseInterface } from '../model/status-response.interface';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { FilesRestClientConfiguration } from '../configuration';\nimport { BaseService } from '../api.base.service';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class FilesRestService extends BaseService {\n\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string|string[], @Optional() configuration?: FilesRestClientConfiguration) {\n super(basePath, configuration);\n }\n\n /**\n * @param downloadUrl \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 filesControllerDeleteFile(downloadUrl: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<StatusResponseInterface>;\n public filesControllerDeleteFile(downloadUrl: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<StatusResponseInterface>>;\n public filesControllerDeleteFile(downloadUrl: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<StatusResponseInterface>>;\n public filesControllerDeleteFile(downloadUrl: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n if (downloadUrl === null || downloadUrl === undefined) {\n throw new Error('Required parameter downloadUrl was null or undefined when calling filesControllerDeleteFile.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n <any>downloadUrl, 'downloadUrl');\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 = `/api/files/delete-file`;\n const { basePath, withCredentials } = this.configuration;\n return this.httpClient.request<StatusResponseInterface>('post', `${basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\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 * @param ext \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 filesControllerGetPresignedUrl(ext: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<FilesPresignedUrlsInterface>;\n public filesControllerGetPresignedUrl(ext: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<FilesPresignedUrlsInterface>>;\n public filesControllerGetPresignedUrl(ext: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<FilesPresignedUrlsInterface>>;\n public filesControllerGetPresignedUrl(ext: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n if (ext === null || ext === undefined) {\n throw new Error('Required parameter ext was null or undefined when calling filesControllerGetPresignedUrl.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n <any>ext, 'ext');\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 = `/api/files/get-presigned-url`;\n const { basePath, withCredentials } = this.configuration;\n return this.httpClient.request<FilesPresignedUrlsInterface>('get', `${basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\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 * \n *\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\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 { CreateWebhookDtoInterface } from '../model/create-webhook-dto.interface';\n// @ts-ignore\nimport { FindManyWebhookLogResponseInterface } from '../model/find-many-webhook-log-response.interface';\n// @ts-ignore\nimport { FindManyWebhookResponseInterface } from '../model/find-many-webhook-response.interface';\n// @ts-ignore\nimport { StatusResponseInterface } from '../model/status-response.interface';\n// @ts-ignore\nimport { UpdateWebhookDtoInterface } from '../model/update-webhook-dto.interface';\n// @ts-ignore\nimport { ValidationErrorInterface } from '../model/validation-error.interface';\n// @ts-ignore\nimport { WebhookErrorInterface } from '../model/webhook-error.interface';\n// @ts-ignore\nimport { WebhookEventInterface } from '../model/webhook-event.interface';\n// @ts-ignore\nimport { WebhookInterface } from '../model/webhook.interface';\n// @ts-ignore\nimport { WebhookLogInterface } from '../model/webhook-log.interface';\n// @ts-ignore\nimport { WebhookTestRequestResponseInterface } from '../model/webhook-test-request-response.interface';\n// @ts-ignore\nimport { WebhookUserInterface } from '../model/webhook-user.interface';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { FilesRestClientConfiguration } from '../configuration';\nimport { BaseService } from '../api.base.service';\n\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class WebhookRestService extends BaseService {\n\n constructor(protected httpClient: HttpClient, @Optional() @Inject(BASE_PATH) basePath: string|string[], @Optional() configuration?: FilesRestClientConfiguration) {\n super(basePath, configuration);\n }\n\n /**\n * @param createWebhookDtoInterface \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 webhookControllerCreateOne(createWebhookDtoInterface: CreateWebhookDtoInterface, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebhookInterface>;\n public webhookControllerCreateOne(createWebhookDtoInterface: CreateWebhookDtoInterface, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebhookInterface>>;\n public webhookControllerCreateOne(createWebhookDtoInterface: CreateWebhookDtoInterface, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebhookInterface>>;\n public webhookControllerCreateOne(createWebhookDtoInterface: CreateWebhookDtoInterface, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n if (createWebhookDtoInterface === null || createWebhookDtoInterface === undefined) {\n throw new Error('Required parameter createWebhookDtoInterface was null or undefined when calling webhookControllerCreateOne.');\n }\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 // 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 = `/api/webhook`;\n const { basePath, withCredentials } = this.configuration;\n return this.httpClient.request<WebhookInterface>('post', `${basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: createWebhookDtoInterface,\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 * @param id \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 webhookControllerDeleteOne(id: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<StatusResponseInterface>;\n public webhookControllerDeleteOne(id: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<StatusResponseInterface>>;\n public webhookControllerDeleteOne(id: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<StatusResponseInterface>>;\n public webhookControllerDeleteOne(id: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling webhookControllerDeleteOne.');\n }\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 = `/api/webhook/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n const { basePath, withCredentials } = this.configuration;\n return this.httpClient.request<StatusResponseInterface>('delete', `${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 * @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 webhookControllerEvents(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<Array<WebhookEventInterface>>;\n public webhookControllerEvents(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<Array<WebhookEventInterface>>>;\n public webhookControllerEvents(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<Array<WebhookEventInterface>>>;\n public webhookControllerEvents(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 = `/api/webhook/events`;\n const { basePath, withCredentials } = this.configuration;\n return this.httpClient.request<Array<WebhookEventInterface>>('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 * @param curPage \n * @param perPage \n * @param searchText \n * @param sort \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 webhookControllerFindMany(curPage?: number, perPage?: number, searchText?: string, sort?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<FindManyWebhookResponseInterface>;\n public webhookControllerFindMany(curPage?: number, perPage?: number, searchText?: string, sort?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<FindManyWebhookResponseInterface>>;\n public webhookControllerFindMany(curPage?: number, perPage?: number, searchText?: string, sort?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<FindManyWebhookResponseInterface>>;\n public webhookControllerFindMany(curPage?: number, perPage?: number, searchText?: string, sort?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n <any>curPage, 'curPage');\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n <any>perPage, 'perPage');\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n <any>searchText, 'searchText');\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n <any>sort, 'sort');\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 = `/api/webhook`;\n const { basePath, withCredentials } = this.configuration;\n return this.httpClient.request<FindManyWebhookResponseInterface>('get', `${basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\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 * @param id \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 webhookControllerFindOne(id: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebhookInterface>;\n public webhookControllerFindOne(id: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebhookInterface>>;\n public webhookControllerFindOne(id: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebhookInterface>>;\n public webhookControllerFindOne(id: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling webhookControllerFindOne.');\n }\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 = `/api/webhook/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n const { basePath, withCredentials } = this.configuration;\n return this.httpClient.request<WebhookInterface>('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 * @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 webhookControllerProfile(observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebhookUserInterface>;\n public webhookControllerProfile(observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebhookUserInterface>>;\n public webhookControllerProfile(observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebhookUserInterface>>;\n public webhookControllerProfile(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 = `/api/webhook/profile`;\n const { basePath, withCredentials } = this.configuration;\n return this.httpClient.request<WebhookUserInterface>('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 * @param createWebhookDtoInterface \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 webhookControllerTestRequest(createWebhookDtoInterface: CreateWebhookDtoInterface, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebhookTestRequestResponseInterface>;\n public webhookControllerTestRequest(createWebhookDtoInterface: CreateWebhookDtoInterface, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebhookTestRequestResponseInterface>>;\n public webhookControllerTestRequest(createWebhookDtoInterface: CreateWebhookDtoInterface, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebhookTestRequestResponseInterface>>;\n public webhookControllerTestRequest(createWebhookDtoInterface: CreateWebhookDtoInterface, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n if (createWebhookDtoInterface === null || createWebhookDtoInterface === undefined) {\n throw new Error('Required parameter createWebhookDtoInterface was null or undefined when calling webhookControllerTestRequest.');\n }\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 // 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 = `/api/webhook/test-request`;\n const { basePath, withCredentials } = this.configuration;\n return this.httpClient.request<WebhookTestRequestResponseInterface>('post', `${basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: createWebhookDtoInterface,\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 * @param id \n * @param updateWebhookDtoInterface \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 webhookControllerUpdateOne(id: string, updateWebhookDtoInterface: UpdateWebhookDtoInterface, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebhookInterface>;\n public webhookControllerUpdateOne(id: string, updateWebhookDtoInterface: UpdateWebhookDtoInterface, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebhookInterface>>;\n public webhookControllerUpdateOne(id: string, updateWebhookDtoInterface: UpdateWebhookDtoInterface, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebhookInterface>>;\n public webhookControllerUpdateOne(id: string, updateWebhookDtoInterface: UpdateWebhookDtoInterface, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling webhookControllerUpdateOne.');\n }\n if (updateWebhookDtoInterface === null || updateWebhookDtoInterface === undefined) {\n throw new Error('Required parameter updateWebhookDtoInterface was null or undefined when calling webhookControllerUpdateOne.');\n }\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 // 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 = `/api/webhook/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n const { basePath, withCredentials } = this.configuration;\n return this.httpClient.request<WebhookInterface>('put', `${basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: updateWebhookDtoInterface,\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 * @param id \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 webhookLogsControllerDeleteOne(id: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<StatusResponseInterface>;\n public webhookLogsControllerDeleteOne(id: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<StatusResponseInterface>>;\n public webhookLogsControllerDeleteOne(id: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<StatusResponseInterface>>;\n public webhookLogsControllerDeleteOne(id: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling webhookLogsControllerDeleteOne.');\n }\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 = `/api/webhook/logs/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n const { basePath, withCredentials } = this.configuration;\n return this.httpClient.request<StatusResponseInterface>('delete', `${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 * @param webhookId \n * @param curPage \n * @param perPage \n * @param searchText \n * @param sort \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 webhookLogsControllerFindManyLogs(webhookId: string, curPage?: number, perPage?: number, searchText?: string, sort?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<FindManyWebhookLogResponseInterface>;\n public webhookLogsControllerFindManyLogs(webhookId: string, curPage?: number, perPage?: number, searchText?: string, sort?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<FindManyWebhookLogResponseInterface>>;\n public webhookLogsControllerFindManyLogs(webhookId: string, curPage?: number, perPage?: number, searchText?: string, sort?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<FindManyWebhookLogResponseInterface>>;\n public webhookLogsControllerFindManyLogs(webhookId: string, curPage?: number, perPage?: number, searchText?: string, sort?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n if (webhookId === null || webhookId === undefined) {\n throw new Error('Required parameter webhookId was null or undefined when calling webhookLogsControllerFindManyLogs.');\n }\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n <any>curPage, 'curPage');\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n <any>perPage, 'perPage');\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n <any>searchText, 'searchText');\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n <any>sort, 'sort');\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n <any>webhookId, 'webhookId');\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 = `/api/webhook/logs`;\n const { basePath, withCredentials } = this.configuration;\n return this.httpClient.request<FindManyWebhookLogResponseInterface>('get', `${basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\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 * @param id \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 webhookLogsControllerFindOne(id: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<WebhookLogInterface>;\n public webhookLogsControllerFindOne(id: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpResponse<WebhookLogInterface>>;\n public webhookLogsControllerFindOne(id: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<HttpEvent<WebhookLogInterface>>;\n public webhookLogsControllerFindOne(id: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext, transferCache?: boolean}): Observable<any> {\n if (id === null || id === undefined) {\n throw new Error('Required parameter id was null or undefined when calling webhookLogsControllerFindOne.');\n }\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 = `/api/webhook/logs/${this.configuration.encodeParam({name: \"id\", value: id, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n const { basePath, withCredentials } = this.configuration;\n return this.httpClient.request<WebhookLogInterface>('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 './files-rest.service';\nimport { FilesRestService } from './files-rest.service';\nexport * from './webhook-rest.service';\nimport { WebhookRestService } from './webhook-rest.service';\nexport const APIS = [FilesRestService, WebhookRestService];\n","/**\n * \n *\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface CreateWebhookDtoInterface { \n eventName: string;\n endpoint: string;\n enabled: boolean;\n headers?: object | null;\n requestTimeout?: number | null;\n workUntilDate?: string | null;\n}\n\n","/**\n * \n *\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport const FilesErrorEnumInterface = {\n FILES_000: 'FILES-000',\n FILES_001: 'FILES-001'\n} as const;\nexport type FilesErrorEnumInterface = typeof FilesErrorEnumInterface[keyof typeof FilesErrorEnumInterface];\n\n","/**\n * \n *\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface FilesPresignedUrlsInterface { \n downloadUrl: string;\n uploadUrl: string;\n}\n\n","/**\n * \n *\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface FindManyResponseMetaInterface { \n curPage?: number;\n perPage?: number;\n totalResults: number;\n}\n\n","/**\n * \n *\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface StatusResponseInterface { \n message: string;\n}\n\n","/**\n * \n *\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface UpdateWebhookDtoInterface { \n eventName?: string;\n endpoint?: string;\n enabled?: boolean;\n headers?: object | null;\n requestTimeout?: number | null;\n workUntilDate?: string | null;\n}\n\n","/**\n * \n *\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface WebhookEventInterface { \n eventName: string;\n description: string;\n example: object;\n}\n\n","/**\n * \n *\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport const WebhookRoleInterface = {\n Admin: 'Admin',\n User: 'User'\n} as const;\nexport type WebhookRoleInterface = typeof WebhookRoleInterface[keyof typeof WebhookRoleInterface];\n\n","/**\n * \n *\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport const WebhookStatusInterface = {\n Pending: 'Pending',\n Process: 'Process',\n Success: 'Success',\n Error: 'Error',\n Timeout: 'Timeout'\n} as const;\nexport type WebhookStatusInterface = typeof WebhookStatusInterface[keyof typeof WebhookStatusInterface];\n\n","import { NgModule, ModuleWithProviders, SkipSelf, Optional } from '@angular/core';\nimport { FilesRestClientConfiguration } from './configuration';\nimport { HttpClient } from '@angular/common/http';\n\n\n@NgModule({\n imports: [],\n declarations: [],\n exports: [],\n providers: []\n})\nexport class FilesRestClientApiModule {\n public static forRoot(configurationFactory: () => FilesRestClientConfiguration): ModuleWithProviders<FilesRestClientApiModule> {\n return {\n ngModule: FilesRestClientApiModule,\n providers: [ { provide: FilesRestClientConfiguration, useFactory: configurationFactory } ]\n };\n }\n\n constructor( @Optional() @SkipSelf() parentModule: FilesRestClientApiModule,\n @Optional() http: HttpClient) {\n if (parentModule) {\n throw new Error('FilesRestClientApiModule 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 { NgModule, Injectable } from '@angular/core';\nimport {\n FilesRestClientApiModule,\n FilesRestClientConfiguration,\n FilesRestService,\n} from './rest-sdk';\nimport { HttpHeaders } from '@angular/common/http';\nimport { Observable, finalize } from 'rxjs';\n\n@Injectable({ providedIn: 'root' })\nexport class FilesRestSdkAngularService {\n constructor(\n private readonly filesRestClientConfiguration: FilesRestClientConfiguration,\n private readonly filesRestService: FilesRestService\n ) {\n filesRestService.configuration.withCredentials = true;\n }\n\n getFilesApi() {\n if (!this.filesRestService) {\n throw new Error('filesApi not set');\n }\n return this.filesRestService;\n }\n\n updateHeaders(headers: Record<string, string>) {\n this.filesRestService.defaultHeaders = new HttpHeaders(headers);\n }\n\n webSocket<T>({\n path,\n eventName,\n options,\n }: {\n path: string;\n eventName: string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n options?: any;\n }) {\n const wss = new WebSocket(\n (this.filesRestClientConfiguration.basePath || '')\n .replace('/api', '')\n .replace('http', 'ws') + path,\n options\n );\n return new Observable<{ data: T; event: string }>((observer) => {\n wss.addEventListener('open', () => {\n wss.addEventListener('message', ({ data }) => {\n observer.next(JSON.parse(data.toString()));\n });\n wss.addEventListener('error', (err) => {\n observer.error(err);\n if (wss?.readyState == WebSocket.OPEN) {\n wss.close();\n }\n });\n wss.send(\n JSON.stringify({\n event: eventName,\n data: true,\n })\n );\n });\n }).pipe(\n finalize(() => {\n if (wss?.readyState == WebSocket.OPEN) {\n wss.close();\n }\n })\n );\n }\n}\n\n@NgModule({})\nexport class FilesRestSdkAngularModule {\n public static forRoot(configuration: Partial<FilesRestClientConfiguration>) {\n const filesRestClientConfiguration = new FilesRestClientConfiguration(\n configuration\n );\n const filesRestClientApiModule = FilesRestClientApiModule.forRoot(\n () => filesRestClientConfiguration\n );\n return {\n ngModule: FilesRestSdkAngularModule,\n providers: [\n {\n provide: FilesRestClientConfiguration,\n useValue: filesRestClientConfiguration,\n },\n ],\n imports: [filesRestClientApiModule],\n exports: [filesRestClientApiModule, FilesRestClientConfiguration],\n };\n }\n}\n","import { Inject, Injectable, InjectionToken } from '@angular/core';\nimport { Observable, map, mergeMap, of } from 'rxjs';\nimport { FilesRestSdkAngularService } from '../generated/files-rest_sdk-angular.module';\nimport { FilesPresignedUrlsInterface } from '../generated/rest-sdk';\n\n\nexport const MINIO_URL = new InjectionToken<string>('MinioURL');\n\n@Injectable({ providedIn: 'root' })\nexport class FilesService {\n constructor(\n @Inject(MINIO_URL)\n private readonly minioURL: string,\n private readonly ssoRestSdkAngularService: FilesRestSdkAngularService\n ) {}\n\n getPresignedUrlAndUploadFile(file: null | undefined | string | File) {\n if (!file) {\n return of('');\n }\n if (typeof file !== 'string') {\n return this.getPresignedUrl(file).pipe(\n mergeMap((presignedUrls) =>\n this.uploadFile({\n file,\n presignedUrls,\n })\n ),\n map((presignedUrls) => presignedUrls.downloadUrl.replace(this.getMinioURL(), ''))\n );\n }\n return of(file.replace(this.getMinioURL(), ''));\n }\n\n getMinioURL(): string | RegExp {\n // need for override from e2e-tests\n return localStorage.getItem('minioURL') || this.minioURL;\n }\n\n getPresignedUrl(file: File) {\n return this.ssoRestSdkAngularService.getFilesApi().filesControllerGetPresignedUrl(this.getFileExt(file));\n }\n\n uploadFile({ file, presignedUrls }: { file: File; presignedUrls: FilesPresignedUrlsInterface }) {\n return new Observable<FilesPresignedUrlsInterface>((observer) => {\n const outPresignedUrls: FilesPresignedUrlsInterface = {\n downloadUrl:\n (!presignedUrls.downloadUrl.toLowerCase().startsWith('http') ? this.getMinioURL() : '') +\n presignedUrls.downloadUrl,\n uploadUrl:\n (!presignedUrls.downloadUrl.toLowerCase().startsWith('http') ? this.getMinioURL() : '') +\n presignedUrls.uploadUrl,\n };\n if (presignedUrls.uploadUrl) {\n const xhr = new XMLHttpRequest();\n xhr.open('PUT', outPresignedUrls.uploadUrl);\n xhr.onreadystatechange = () => {\n if (xhr.readyState === 4) {\n if (xhr.status === 200) {\n observer.next(outPresignedUrls);\n observer.complete();\n } else {\n observer.error(new Error('Error in upload file'));\n }\n }\n };\n xhr.send(file);\n } else {\n observer.next(outPresignedUrls);\n observer.complete();\n }\n });\n }\n\n deleteFile(downloadUrl: string) {\n return this.ssoRestSdkAngularService.getFilesApi().filesControllerDeleteFile(downloadUrl);\n }\n\n openTargetURI(uri: string) {\n if (this.isIOS()) {\n document.location.href = uri;\n } else {\n const link = document.createElement('a');\n link.target = '_blank';\n link.href = uri;\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n }\n }\n\n private getFileExt(file: File) {\n return file?.type?.split('/')?.[1].toLowerCase();\n }\n\n private isIOS() {\n return (\n ['iPad Simulator', 'iPhone Simulator', 'iPod Simulator', 'iPad', 'iPhone', 'iPod'].includes(navigator.platform) ||\n // iPad on iOS 13 detection\n (navigator.userAgent.includes('Mac') && 'ontouchend' in document)\n );\n }\n}\n","import { AsyncPipe } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, OnInit } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { FieldType, FieldTypeConfig, FormlyModule } from '@ngx-formly/core';\nimport { NzButtonModule } from 'ng-zorro-antd/button';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzInputModule } from 'ng-zorro-antd/input';\nimport { NzModalModule } from 'ng-zorro-antd/modal';\nimport { NzUploadFile, NzUploadModule } from 'ng-zorro-antd/upload';\nimport { BehaviorSubject } from 'rxjs';\nimport { FilesService } from '../services/files.service';\nimport { marker } from '@jsverse/transloco-keys-manager/marker';\nimport { TranslocoPipe } from '@jsverse/transloco';\n\n@Component({\n selector: 'image-file',\n imports: [\n ReactiveFormsModule,\n FormlyModule,\n NzInputModule,\n NzButtonModule,\n NzUploadModule,\n NzModalModule,\n NzIconModule,\n AsyncPipe,\n TranslocoPipe,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <nz-upload\n [nzAccept]=\"'image/png, image/jpeg'\"\n [nzListType]=\"'picture'\"\n [nzFileList]=\"(fileList$ | async)!\"\n (nzFileListChange)=\"onFileListChange($event)\"\n [nzLimit]=\"1\"\n [nzBeforeUpload]=\"beforeUpload\"\n >\n <button nz-button type=\"button\">\n <span nz-icon [nzType]=\"(icon$ | async)!\"></span>\n {{ title$ | async | transloco }}\n </button>\n </nz-upload>\n `,\n standalone: true,\n})\nexport class ImageFileComponent extends FieldType<FieldTypeConfig> implements OnInit {\n fileList$ = new BehaviorSubject<NzUploadFile[]>([]);\n title$ = new BehaviorSubject<string>('');\n icon$ = new BehaviorSubject<string>('');\n\n constructor(private readonly filesService: FilesService) {\n super();\n }\n\n ngOnInit(): void {\n if (this.formControl.value) {\n this.switchToReloadMode();\n if (!this.formControl.value.split) {\n throw new Error('File not uploaded!');\n }\n this.fileList$.next([\n {\n uid: this.formControl.value,\n name: this.formControl.value.split('/').at(-1),\n status: 'done',\n url:\n (!this.formControl.value.toLowerCase().startsWith('http') ? this.filesService.getMinioURL() : '') +\n this.formControl.value,\n },\n ]);\n } else {\n this.switchToUploadMode();\n }\n }\n\n onFileListChange(files: NzUploadFile[]) {\n if (files.length === 0) {\n this.formControl.setValue(null);\n this.fileList$.next([]);\n this.switchToUploadMode();\n }\n }\n\n beforeUpload = (file: NzUploadFile): boolean => {\n this.formControl.setValue(file);\n this.switchToReloadMode();\n this.fileList$.next([file]);\n return false;\n };\n\n private switchToReloadMode() {\n this.icon$.next('reload');\n this.title$.next(marker('files.image-file.change-file'));\n }\n\n private switchToUploadMode() {\n this.icon$.next('upload');\n this.title$.next(marker('files.image-file.select-file'));\n }\n}\n","import { TypeOption } from '@ngx-formly/core/lib/models';\nimport { ImageFileComponent } from './image-file.component';\n\nexport const FILES_FORMLY_FIELDS: TypeOption[] = [\n {\n name: 'image-file',\n component: ImageFileComponent,\n extends: 'input',\n },\n];\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2.FilesRestClientConfiguration","i1.FilesRestClientConfiguration","i1.FilesRestService","i1.FilesRestSdkAngularService","i1.FilesService"],"mappings":"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"}