@opra/angular 1.2.3 → 1.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/opra-angular.mjs +4 -4
- package/fesm2022/opra-angular.mjs.map +1 -1
- package/package.json +6 -8
- package/esm2022/angular-backend.mjs +0 -188
- package/esm2022/angular-client.mjs +0 -15
- package/esm2022/client.module.mjs +0 -115
- package/esm2022/constants.mjs +0 -2
- package/esm2022/interfaces/module-options.interface.mjs +0 -2
- package/esm2022/opra-angular.mjs +0 -5
- package/esm2022/public_api.mjs +0 -6
|
@@ -304,11 +304,11 @@ class OpraClientModule {
|
|
|
304
304
|
}
|
|
305
305
|
throw new Error('Invalid configuration. Must provide useFactory, useClass or useExisting');
|
|
306
306
|
}
|
|
307
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
308
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
309
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
307
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: OpraClientModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
308
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.1", ngImport: i0, type: OpraClientModule });
|
|
309
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: OpraClientModule });
|
|
310
310
|
}
|
|
311
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
311
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: OpraClientModule, decorators: [{
|
|
312
312
|
type: NgModule,
|
|
313
313
|
args: [{}]
|
|
314
314
|
}] });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"opra-angular.mjs","sources":["../../../packages/angular/src/angular-backend.ts","../../../packages/angular/src/angular-client.ts","../../../packages/angular/src/constants.ts","../../../packages/angular/src/client.module.ts","../../../packages/angular/src/public_api.ts","../../../packages/angular/src/opra-angular.ts"],"sourcesContent":["import { HttpContext, HttpHeaders, HttpParams } from '@angular/common/http';\nimport * as Angular from '@angular/common/http';\nimport typeIs from '@browsery/type-is';\nimport {\n HttpBackend,\n type HttpDownloadProgressEvent,\n type HttpEvent,\n HttpEventType,\n HttpResponse,\n type HttpResponseEvent,\n type HttpResponseHeaderEvent,\n type HttpSentEvent,\n type HttpUploadProgressEvent,\n} from '@opra/client';\nimport { isBlob } from '@opra/common';\nimport { Observable } from 'rxjs';\nimport { isReadableStreamLike } from 'rxjs/internal/util/isReadableStreamLike';\nimport type { StrictOmit } from 'ts-gems';\n\n/**\n *\n * @class AngularBackend\n */\nexport class AngularBackend extends HttpBackend {\n defaults: AngularBackend.RequestDefaults;\n\n constructor(\n readonly httpClient: Angular.HttpClient,\n serviceUrl: string,\n options?: AngularBackend.Options,\n ) {\n super(serviceUrl, options);\n this.defaults = {\n ...options?.defaults,\n headers:\n options?.defaults?.headers instanceof Headers\n ? options?.defaults?.headers\n : new Headers(options?.defaults?.headers),\n params:\n options?.defaults?.params instanceof URLSearchParams\n ? options?.defaults?.params\n : new URLSearchParams(options?.defaults?.params),\n };\n }\n\n handle(init: AngularBackend.RequestInit): Observable<HttpEvent> {\n const requestInit = this.prepareRequest(init);\n const request = new Angular.HttpRequest(requestInit.method, requestInit.url.toString(), {\n ...requestInit,\n headers: new HttpHeaders(requestInit.headers),\n });\n\n const _this = this;\n return new Observable<HttpEvent>(subscriber => {\n // Send request\n this.send(request).subscribe({\n next(event) {\n if (event.type === Angular.HttpEventType.Sent) {\n // Emit 'Sent' event\n subscriber.next({\n type: HttpEventType.Sent,\n request,\n } satisfies HttpSentEvent);\n return;\n }\n\n if (event.type === Angular.HttpEventType.ResponseHeader) {\n // Emit 'ResponseHeader' event\n const headersResponse = _this.createResponse({\n url: request.url,\n headers: requestInit.headers,\n status: event.status,\n statusText: event.statusText,\n hasBody: event.headers.has('Content-Type') || event.headers.has('Content-Length'),\n }) as HttpResponse<never>;\n subscriber.next({\n request,\n type: HttpEventType.ResponseHeader,\n response: headersResponse,\n } satisfies HttpResponseHeaderEvent);\n return;\n }\n\n if (event.type === Angular.HttpEventType.DownloadProgress) {\n // Emit 'DownloadProgress' event\n subscriber.next({\n request,\n type: HttpEventType.DownloadProgress,\n loaded: event.loaded,\n total: event.total,\n } satisfies HttpDownloadProgressEvent);\n }\n\n if (event.type === Angular.HttpEventType.UploadProgress) {\n // Emit 'UploadProgress' event\n subscriber.next({\n request,\n type: HttpEventType.UploadProgress,\n loaded: event.loaded,\n total: event.total,\n } satisfies HttpUploadProgressEvent);\n }\n\n if (event.type === Angular.HttpEventType.Response) {\n const headers = new Headers();\n event.headers.keys().forEach(k => headers.set(k, event.headers.get(k) || ''));\n const response = _this.createResponse({\n url: request.url,\n headers,\n status: event.status,\n statusText: event.statusText,\n hasBody: !!event.body,\n body: event.body,\n });\n // Emit 'Response' event\n subscriber.next({\n type: HttpEventType.Response,\n request,\n response,\n } satisfies HttpResponseEvent);\n }\n },\n error(error) {\n subscriber.error(error);\n },\n complete() {\n subscriber.complete();\n },\n });\n });\n }\n\n protected send(request: Angular.HttpRequest<any>) {\n return this.httpClient.request(request);\n }\n\n protected prepareRequest(init: AngularBackend.RequestInit): AngularBackend.RequestInit {\n const headers = init.headers || new Headers();\n const requestInit: AngularBackend.RequestInit = {\n ...init,\n headers,\n };\n this.defaults.headers.forEach((val, key) => {\n if (!headers.has(key)) headers.set(key, val);\n });\n const url = new URL(requestInit.url, this.serviceUrl);\n if (this.defaults.params.size) {\n this.defaults.params.forEach((val, key) => {\n if (!url.searchParams.has(key)) url.searchParams.set(key, val);\n });\n requestInit.url = url.toString();\n }\n if (requestInit.body) {\n let body: any;\n let contentType: string;\n if (\n typeof requestInit.body === 'string' ||\n typeof requestInit.body === 'number' ||\n typeof requestInit.body === 'boolean'\n ) {\n contentType = 'text/plain; charset=UTF-8\"';\n body = String(requestInit.body);\n headers.delete('Content-Size');\n } else if (isReadableStreamLike(requestInit.body)) {\n contentType = 'application/octet-stream';\n body = requestInit.body;\n } else if (Buffer.isBuffer(requestInit.body)) {\n contentType = 'application/octet-stream';\n body = requestInit.body;\n headers.set('Content-Size', String(requestInit.body.length));\n } else if (isBlob(requestInit.body)) {\n contentType = requestInit.body.type || 'application/octet-stream';\n body = requestInit.body;\n headers.set('Content-Size', String(requestInit.body.size));\n } else {\n contentType = 'application/json';\n body = JSON.stringify(requestInit.body);\n headers.delete('Content-Size');\n }\n if (!headers.has('Content-Type') && contentType) headers.set('Content-Type', contentType);\n requestInit.body = body;\n }\n return requestInit;\n }\n\n protected createResponse(init: HttpResponse.Initiator): HttpResponse {\n return new HttpResponse(init);\n }\n\n protected async parseBody(fetchResponse: Response): Promise<any> {\n let body: any;\n const contentType = fetchResponse.headers.get('Content-Type') || '';\n if (typeIs.is(contentType, ['json', 'application/*+json'])) {\n body = await fetchResponse.json();\n if (typeof body === 'string') body = JSON.parse(body);\n } else if (typeIs.is(contentType, ['text'])) body = await fetchResponse.text();\n else if (typeIs.is(contentType, ['multipart'])) body = await fetchResponse.formData();\n else {\n const buf = await fetchResponse.arrayBuffer();\n if (buf.byteLength) body = buf;\n }\n return body;\n }\n}\n\n/**\n * @namespace AngularBackend\n */\nexport namespace AngularBackend {\n export interface Options extends HttpBackend.Options {\n defaults?: RequestDefaults;\n }\n\n export interface RequestInit extends HttpBackend.RequestInit {\n context?: HttpContext;\n reportProgress?: boolean;\n params?: HttpParams;\n responseType?: 'arraybuffer' | 'blob' | 'json' | 'text';\n withCredentials?: boolean;\n }\n\n export interface RequestOptions extends Pick<RequestInit, 'context' | 'reportProgress' | 'withCredentials'> {}\n\n export type RequestDefaults = StrictOmit<RequestOptions, 'context'> & {\n headers: Headers;\n params: URLSearchParams;\n };\n}\n","/* eslint-disable import-x/extensions */\nimport { HttpClient } from '@angular/common/http';\nimport { HttpClientBase, kBackend } from '@opra/client';\nimport { AngularBackend } from './angular-backend';\n\n/**\n *\n * @class OpraAngularClient\n */\nexport class OpraAngularClient extends HttpClientBase<AngularBackend.RequestOptions> {\n declare [kBackend]: AngularBackend;\n\n constructor(httpClient: HttpClient, serviceUrl: string, options?: AngularBackend.Options) {\n super(new AngularBackend(httpClient, serviceUrl, options));\n }\n\n get defaults(): AngularBackend.RequestDefaults {\n return this[kBackend].defaults;\n }\n}\n","export const OPRA_CLIENT_MODULE_OPTIONS = 'OPRA_CLIENT_MODULE_OPTIONS';\n","/* eslint-disable import-x/extensions */\nimport { HttpClient } from '@angular/common/http';\nimport { type ModuleWithProviders, NgModule, type Provider, Type } from '@angular/core';\nimport { kClient } from '@opra/client';\nimport { OpraAngularClient } from './angular-client';\nimport { OPRA_CLIENT_MODULE_OPTIONS } from './constants';\nimport type { OpraClientModuleAsyncOptions, OpraClientModuleOptions } from './interfaces/module-options.interface';\n\n@NgModule({})\nexport class OpraClientModule {\n public static registerClient(options: OpraClientModuleOptions): ModuleWithProviders<OpraClientModule> {\n const CLIENT_TOKEN = options.token || OpraAngularClient;\n return {\n ngModule: OpraClientModule,\n providers: [\n {\n provide: CLIENT_TOKEN,\n deps: [HttpClient],\n useFactory: (httpClient: HttpClient) => new OpraAngularClient(httpClient, options.serviceUrl, options),\n },\n ],\n };\n }\n\n public static registerService<T>(\n serviceClass: Type<T>,\n options: OpraClientModuleOptions,\n ): ModuleWithProviders<OpraClientModule> {\n const SERVICE_TOKEN = options.token || serviceClass;\n return {\n ngModule: OpraClientModule,\n providers: [\n {\n provide: SERVICE_TOKEN,\n deps: [HttpClient],\n useFactory: (httpClient: HttpClient) => {\n const opraAngularClient = new OpraAngularClient(httpClient, options.serviceUrl, options);\n const service = new serviceClass(opraAngularClient);\n service[kClient] = opraAngularClient;\n return service;\n },\n },\n ],\n };\n }\n\n public static registerClientAsync(options: OpraClientModuleAsyncOptions): ModuleWithProviders<OpraClientModule> {\n const CLIENT_TOKEN = options.token || OpraAngularClient;\n const asyncProviders = this._createAsyncProviders(options);\n return {\n ngModule: OpraClientModule,\n providers: [\n ...asyncProviders,\n {\n provide: CLIENT_TOKEN,\n deps: [HttpClient, OPRA_CLIENT_MODULE_OPTIONS],\n useFactory: (httpClient: HttpClient, opts: OpraClientModuleOptions) =>\n new OpraAngularClient(httpClient, opts.serviceUrl, opts),\n },\n ],\n };\n }\n\n public static registerServiceAsync<T>(\n serviceClass: Type<T>,\n options: OpraClientModuleAsyncOptions,\n ): ModuleWithProviders<OpraClientModule> {\n const SERVICE_TOKEN = options.token || serviceClass;\n const asyncProviders = this._createAsyncProviders(options);\n return {\n ngModule: OpraClientModule,\n providers: [\n ...asyncProviders,\n {\n provide: SERVICE_TOKEN,\n deps: [HttpClient, OPRA_CLIENT_MODULE_OPTIONS],\n useFactory: (httpClient: HttpClient, opts: OpraClientModuleOptions) => {\n const opraAngularClient = new OpraAngularClient(httpClient, opts.serviceUrl, opts);\n const service = new serviceClass(opraAngularClient);\n service[kClient] = opraAngularClient;\n return service;\n },\n },\n ],\n };\n }\n\n private static _createAsyncProviders(options: OpraClientModuleAsyncOptions): Provider[] {\n if (options.useExisting || options.useFactory) return [this._createAsyncOptionsProvider(options)];\n\n if (options.useClass) {\n return [\n this._createAsyncOptionsProvider(options),\n {\n provide: options.useClass,\n useClass: options.useClass,\n },\n ];\n }\n\n throw new Error('Invalid configuration. Must provide useFactory, useClass or useExisting');\n }\n\n private static _createAsyncOptionsProvider(options: OpraClientModuleAsyncOptions): Provider {\n if (options.useFactory) {\n return {\n provide: OPRA_CLIENT_MODULE_OPTIONS,\n useFactory: options.useFactory,\n deps: options.deps || [],\n };\n }\n const useClass = options.useClass || options.useExisting;\n if (useClass) {\n return {\n provide: OPRA_CLIENT_MODULE_OPTIONS,\n useFactory: o => o,\n deps: [useClass],\n };\n }\n throw new Error('Invalid configuration. Must provide useFactory, useClass or useExisting');\n }\n}\n","/* eslint-disable import-x/extensions */\nexport * from './angular-backend';\nexport * from './client.module';\nexport * from './constants';\nexport * from './interfaces/module-options.interface';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"opra-angular.mjs","sources":["../../../packages/angular/src/angular-backend.ts","../../../packages/angular/src/angular-client.ts","../../../packages/angular/src/constants.ts","../../../packages/angular/src/client.module.ts","../../../packages/angular/src/public_api.ts","../../../packages/angular/src/opra-angular.ts"],"sourcesContent":["import { HttpContext, HttpHeaders, HttpParams } from '@angular/common/http';\nimport * as Angular from '@angular/common/http';\nimport typeIs from '@browsery/type-is';\nimport {\n HttpBackend,\n type HttpDownloadProgressEvent,\n type HttpEvent,\n HttpEventType,\n HttpResponse,\n type HttpResponseEvent,\n type HttpResponseHeaderEvent,\n type HttpSentEvent,\n type HttpUploadProgressEvent,\n} from '@opra/client';\nimport { isBlob } from '@opra/common';\nimport { Observable } from 'rxjs';\nimport { isReadableStreamLike } from 'rxjs/internal/util/isReadableStreamLike';\nimport type { StrictOmit } from 'ts-gems';\n\n/**\n *\n * @class AngularBackend\n */\nexport class AngularBackend extends HttpBackend {\n defaults: AngularBackend.RequestDefaults;\n\n constructor(\n readonly httpClient: Angular.HttpClient,\n serviceUrl: string,\n options?: AngularBackend.Options,\n ) {\n super(serviceUrl, options);\n this.defaults = {\n ...options?.defaults,\n headers:\n options?.defaults?.headers instanceof Headers\n ? options?.defaults?.headers\n : new Headers(options?.defaults?.headers),\n params:\n options?.defaults?.params instanceof URLSearchParams\n ? options?.defaults?.params\n : new URLSearchParams(options?.defaults?.params),\n };\n }\n\n handle(init: AngularBackend.RequestInit): Observable<HttpEvent> {\n const requestInit = this.prepareRequest(init);\n const request = new Angular.HttpRequest(requestInit.method, requestInit.url.toString(), {\n ...requestInit,\n headers: new HttpHeaders(requestInit.headers),\n });\n\n const _this = this;\n return new Observable<HttpEvent>(subscriber => {\n // Send request\n this.send(request).subscribe({\n next(event) {\n if (event.type === Angular.HttpEventType.Sent) {\n // Emit 'Sent' event\n subscriber.next({\n type: HttpEventType.Sent,\n request,\n } satisfies HttpSentEvent);\n return;\n }\n\n if (event.type === Angular.HttpEventType.ResponseHeader) {\n // Emit 'ResponseHeader' event\n const headersResponse = _this.createResponse({\n url: request.url,\n headers: requestInit.headers,\n status: event.status,\n statusText: event.statusText,\n hasBody: event.headers.has('Content-Type') || event.headers.has('Content-Length'),\n }) as HttpResponse<never>;\n subscriber.next({\n request,\n type: HttpEventType.ResponseHeader,\n response: headersResponse,\n } satisfies HttpResponseHeaderEvent);\n return;\n }\n\n if (event.type === Angular.HttpEventType.DownloadProgress) {\n // Emit 'DownloadProgress' event\n subscriber.next({\n request,\n type: HttpEventType.DownloadProgress,\n loaded: event.loaded,\n total: event.total,\n } satisfies HttpDownloadProgressEvent);\n }\n\n if (event.type === Angular.HttpEventType.UploadProgress) {\n // Emit 'UploadProgress' event\n subscriber.next({\n request,\n type: HttpEventType.UploadProgress,\n loaded: event.loaded,\n total: event.total,\n } satisfies HttpUploadProgressEvent);\n }\n\n if (event.type === Angular.HttpEventType.Response) {\n const headers = new Headers();\n event.headers.keys().forEach(k => headers.set(k, event.headers.get(k) || ''));\n const response = _this.createResponse({\n url: request.url,\n headers,\n status: event.status,\n statusText: event.statusText,\n hasBody: !!event.body,\n body: event.body,\n });\n // Emit 'Response' event\n subscriber.next({\n type: HttpEventType.Response,\n request,\n response,\n } satisfies HttpResponseEvent);\n }\n },\n error(error) {\n subscriber.error(error);\n },\n complete() {\n subscriber.complete();\n },\n });\n });\n }\n\n protected send(request: Angular.HttpRequest<any>) {\n return this.httpClient.request(request);\n }\n\n protected prepareRequest(init: AngularBackend.RequestInit): AngularBackend.RequestInit {\n const headers = init.headers || new Headers();\n const requestInit: AngularBackend.RequestInit = {\n ...init,\n headers,\n };\n this.defaults.headers.forEach((val, key) => {\n if (!headers.has(key)) headers.set(key, val);\n });\n const url = new URL(requestInit.url, this.serviceUrl);\n if (this.defaults.params.size) {\n this.defaults.params.forEach((val, key) => {\n if (!url.searchParams.has(key)) url.searchParams.set(key, val);\n });\n requestInit.url = url.toString();\n }\n if (requestInit.body) {\n let body: any;\n let contentType: string;\n if (\n typeof requestInit.body === 'string' ||\n typeof requestInit.body === 'number' ||\n typeof requestInit.body === 'boolean'\n ) {\n contentType = 'text/plain; charset=UTF-8\"';\n body = String(requestInit.body);\n headers.delete('Content-Size');\n } else if (isReadableStreamLike(requestInit.body)) {\n contentType = 'application/octet-stream';\n body = requestInit.body;\n } else if (Buffer.isBuffer(requestInit.body)) {\n contentType = 'application/octet-stream';\n body = requestInit.body;\n headers.set('Content-Size', String(requestInit.body.length));\n } else if (isBlob(requestInit.body)) {\n contentType = requestInit.body.type || 'application/octet-stream';\n body = requestInit.body;\n headers.set('Content-Size', String(requestInit.body.size));\n } else {\n contentType = 'application/json';\n body = JSON.stringify(requestInit.body);\n headers.delete('Content-Size');\n }\n if (!headers.has('Content-Type') && contentType) headers.set('Content-Type', contentType);\n requestInit.body = body;\n }\n return requestInit;\n }\n\n protected createResponse(init: HttpResponse.Initiator): HttpResponse {\n return new HttpResponse(init);\n }\n\n protected async parseBody(fetchResponse: Response): Promise<any> {\n let body: any;\n const contentType = fetchResponse.headers.get('Content-Type') || '';\n if (typeIs.is(contentType, ['json', 'application/*+json'])) {\n body = await fetchResponse.json();\n if (typeof body === 'string') body = JSON.parse(body);\n } else if (typeIs.is(contentType, ['text'])) body = await fetchResponse.text();\n else if (typeIs.is(contentType, ['multipart'])) body = await fetchResponse.formData();\n else {\n const buf = await fetchResponse.arrayBuffer();\n if (buf.byteLength) body = buf;\n }\n return body;\n }\n}\n\n/**\n * @namespace AngularBackend\n */\nexport namespace AngularBackend {\n export interface Options extends HttpBackend.Options {\n defaults?: RequestDefaults;\n }\n\n export interface RequestInit extends HttpBackend.RequestInit {\n context?: HttpContext;\n reportProgress?: boolean;\n params?: HttpParams;\n responseType?: 'arraybuffer' | 'blob' | 'json' | 'text';\n withCredentials?: boolean;\n }\n\n export interface RequestOptions extends Pick<RequestInit, 'context' | 'reportProgress' | 'withCredentials'> {}\n\n export type RequestDefaults = StrictOmit<RequestOptions, 'context'> & {\n headers: Headers;\n params: URLSearchParams;\n };\n}\n","/* eslint-disable import-x/extensions */\nimport { HttpClient } from '@angular/common/http';\nimport { HttpClientBase, kBackend } from '@opra/client';\nimport { AngularBackend } from './angular-backend';\n\n/**\n *\n * @class OpraAngularClient\n */\nexport class OpraAngularClient extends HttpClientBase<AngularBackend.RequestOptions> {\n declare [kBackend]: AngularBackend;\n\n constructor(httpClient: HttpClient, serviceUrl: string, options?: AngularBackend.Options) {\n super(new AngularBackend(httpClient, serviceUrl, options));\n }\n\n get defaults(): AngularBackend.RequestDefaults {\n return this[kBackend].defaults;\n }\n}\n","export const OPRA_CLIENT_MODULE_OPTIONS = 'OPRA_CLIENT_MODULE_OPTIONS';\n","/* eslint-disable import-x/extensions */\nimport { HttpClient } from '@angular/common/http';\nimport { type ModuleWithProviders, NgModule, type Provider, Type } from '@angular/core';\nimport { kClient } from '@opra/client';\nimport { OpraAngularClient } from './angular-client';\nimport { OPRA_CLIENT_MODULE_OPTIONS } from './constants';\nimport type { OpraClientModuleAsyncOptions, OpraClientModuleOptions } from './interfaces/module-options.interface';\n\n@NgModule({})\nexport class OpraClientModule {\n public static registerClient(options: OpraClientModuleOptions): ModuleWithProviders<OpraClientModule> {\n const CLIENT_TOKEN = options.token || OpraAngularClient;\n return {\n ngModule: OpraClientModule,\n providers: [\n {\n provide: CLIENT_TOKEN,\n deps: [HttpClient],\n useFactory: (httpClient: HttpClient) => new OpraAngularClient(httpClient, options.serviceUrl, options),\n },\n ],\n };\n }\n\n public static registerService<T>(\n serviceClass: Type<T>,\n options: OpraClientModuleOptions,\n ): ModuleWithProviders<OpraClientModule> {\n const SERVICE_TOKEN = options.token || serviceClass;\n return {\n ngModule: OpraClientModule,\n providers: [\n {\n provide: SERVICE_TOKEN,\n deps: [HttpClient],\n useFactory: (httpClient: HttpClient) => {\n const opraAngularClient = new OpraAngularClient(httpClient, options.serviceUrl, options);\n const service = new serviceClass(opraAngularClient);\n service[kClient] = opraAngularClient;\n return service;\n },\n },\n ],\n };\n }\n\n public static registerClientAsync(options: OpraClientModuleAsyncOptions): ModuleWithProviders<OpraClientModule> {\n const CLIENT_TOKEN = options.token || OpraAngularClient;\n const asyncProviders = this._createAsyncProviders(options);\n return {\n ngModule: OpraClientModule,\n providers: [\n ...asyncProviders,\n {\n provide: CLIENT_TOKEN,\n deps: [HttpClient, OPRA_CLIENT_MODULE_OPTIONS],\n useFactory: (httpClient: HttpClient, opts: OpraClientModuleOptions) =>\n new OpraAngularClient(httpClient, opts.serviceUrl, opts),\n },\n ],\n };\n }\n\n public static registerServiceAsync<T>(\n serviceClass: Type<T>,\n options: OpraClientModuleAsyncOptions,\n ): ModuleWithProviders<OpraClientModule> {\n const SERVICE_TOKEN = options.token || serviceClass;\n const asyncProviders = this._createAsyncProviders(options);\n return {\n ngModule: OpraClientModule,\n providers: [\n ...asyncProviders,\n {\n provide: SERVICE_TOKEN,\n deps: [HttpClient, OPRA_CLIENT_MODULE_OPTIONS],\n useFactory: (httpClient: HttpClient, opts: OpraClientModuleOptions) => {\n const opraAngularClient = new OpraAngularClient(httpClient, opts.serviceUrl, opts);\n const service = new serviceClass(opraAngularClient);\n service[kClient] = opraAngularClient;\n return service;\n },\n },\n ],\n };\n }\n\n private static _createAsyncProviders(options: OpraClientModuleAsyncOptions): Provider[] {\n if (options.useExisting || options.useFactory) return [this._createAsyncOptionsProvider(options)];\n\n if (options.useClass) {\n return [\n this._createAsyncOptionsProvider(options),\n {\n provide: options.useClass,\n useClass: options.useClass,\n },\n ];\n }\n\n throw new Error('Invalid configuration. Must provide useFactory, useClass or useExisting');\n }\n\n private static _createAsyncOptionsProvider(options: OpraClientModuleAsyncOptions): Provider {\n if (options.useFactory) {\n return {\n provide: OPRA_CLIENT_MODULE_OPTIONS,\n useFactory: options.useFactory,\n deps: options.deps || [],\n };\n }\n const useClass = options.useClass || options.useExisting;\n if (useClass) {\n return {\n provide: OPRA_CLIENT_MODULE_OPTIONS,\n useFactory: o => o,\n deps: [useClass],\n };\n }\n throw new Error('Invalid configuration. Must provide useFactory, useClass or useExisting');\n }\n}\n","/* eslint-disable import-x/extensions */\nexport * from './angular-backend';\nexport * from './client.module';\nexport * from './constants';\nexport * from './interfaces/module-options.interface';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@opra/angular",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.3.1",
|
|
4
4
|
"description": "Opra internationalization package",
|
|
5
5
|
"author": "Panates",
|
|
6
6
|
"license": "MIT",
|
|
@@ -8,12 +8,12 @@
|
|
|
8
8
|
"tslib": "^2.8.1"
|
|
9
9
|
},
|
|
10
10
|
"peerDependencies": {
|
|
11
|
-
"@angular/common": ">=
|
|
12
|
-
"@angular/core": ">=
|
|
13
|
-
"@browsery/type-is": "^1.6.18-
|
|
14
|
-
"@opra/client": "^1.
|
|
11
|
+
"@angular/common": ">=18.0.0",
|
|
12
|
+
"@angular/core": ">=18.0.0",
|
|
13
|
+
"@browsery/type-is": "^1.6.18-r8",
|
|
14
|
+
"@opra/client": "^1.3.1",
|
|
15
15
|
"rxjs": "^7.8.1",
|
|
16
|
-
"ts-gems": "^3.
|
|
16
|
+
"ts-gems": "^3.10.0"
|
|
17
17
|
},
|
|
18
18
|
"repository": {
|
|
19
19
|
"type": "git",
|
|
@@ -39,8 +39,6 @@
|
|
|
39
39
|
},
|
|
40
40
|
".": {
|
|
41
41
|
"types": "./index.d.ts",
|
|
42
|
-
"esm2022": "./esm2022/opra-angular.mjs",
|
|
43
|
-
"esm": "./esm2022/opra-angular.mjs",
|
|
44
42
|
"default": "./fesm2022/opra-angular.mjs"
|
|
45
43
|
}
|
|
46
44
|
},
|
|
@@ -1,188 +0,0 @@
|
|
|
1
|
-
import { HttpHeaders } from '@angular/common/http';
|
|
2
|
-
import * as Angular from '@angular/common/http';
|
|
3
|
-
import typeIs from '@browsery/type-is';
|
|
4
|
-
import { HttpBackend, HttpEventType, HttpResponse, } from '@opra/client';
|
|
5
|
-
import { isBlob } from '@opra/common';
|
|
6
|
-
import { Observable } from 'rxjs';
|
|
7
|
-
import { isReadableStreamLike } from 'rxjs/internal/util/isReadableStreamLike';
|
|
8
|
-
/**
|
|
9
|
-
*
|
|
10
|
-
* @class AngularBackend
|
|
11
|
-
*/
|
|
12
|
-
export class AngularBackend extends HttpBackend {
|
|
13
|
-
httpClient;
|
|
14
|
-
defaults;
|
|
15
|
-
constructor(httpClient, serviceUrl, options) {
|
|
16
|
-
super(serviceUrl, options);
|
|
17
|
-
this.httpClient = httpClient;
|
|
18
|
-
this.defaults = {
|
|
19
|
-
...options?.defaults,
|
|
20
|
-
headers: options?.defaults?.headers instanceof Headers
|
|
21
|
-
? options?.defaults?.headers
|
|
22
|
-
: new Headers(options?.defaults?.headers),
|
|
23
|
-
params: options?.defaults?.params instanceof URLSearchParams
|
|
24
|
-
? options?.defaults?.params
|
|
25
|
-
: new URLSearchParams(options?.defaults?.params),
|
|
26
|
-
};
|
|
27
|
-
}
|
|
28
|
-
handle(init) {
|
|
29
|
-
const requestInit = this.prepareRequest(init);
|
|
30
|
-
const request = new Angular.HttpRequest(requestInit.method, requestInit.url.toString(), {
|
|
31
|
-
...requestInit,
|
|
32
|
-
headers: new HttpHeaders(requestInit.headers),
|
|
33
|
-
});
|
|
34
|
-
const _this = this;
|
|
35
|
-
return new Observable(subscriber => {
|
|
36
|
-
// Send request
|
|
37
|
-
this.send(request).subscribe({
|
|
38
|
-
next(event) {
|
|
39
|
-
if (event.type === Angular.HttpEventType.Sent) {
|
|
40
|
-
// Emit 'Sent' event
|
|
41
|
-
subscriber.next({
|
|
42
|
-
type: HttpEventType.Sent,
|
|
43
|
-
request,
|
|
44
|
-
});
|
|
45
|
-
return;
|
|
46
|
-
}
|
|
47
|
-
if (event.type === Angular.HttpEventType.ResponseHeader) {
|
|
48
|
-
// Emit 'ResponseHeader' event
|
|
49
|
-
const headersResponse = _this.createResponse({
|
|
50
|
-
url: request.url,
|
|
51
|
-
headers: requestInit.headers,
|
|
52
|
-
status: event.status,
|
|
53
|
-
statusText: event.statusText,
|
|
54
|
-
hasBody: event.headers.has('Content-Type') || event.headers.has('Content-Length'),
|
|
55
|
-
});
|
|
56
|
-
subscriber.next({
|
|
57
|
-
request,
|
|
58
|
-
type: HttpEventType.ResponseHeader,
|
|
59
|
-
response: headersResponse,
|
|
60
|
-
});
|
|
61
|
-
return;
|
|
62
|
-
}
|
|
63
|
-
if (event.type === Angular.HttpEventType.DownloadProgress) {
|
|
64
|
-
// Emit 'DownloadProgress' event
|
|
65
|
-
subscriber.next({
|
|
66
|
-
request,
|
|
67
|
-
type: HttpEventType.DownloadProgress,
|
|
68
|
-
loaded: event.loaded,
|
|
69
|
-
total: event.total,
|
|
70
|
-
});
|
|
71
|
-
}
|
|
72
|
-
if (event.type === Angular.HttpEventType.UploadProgress) {
|
|
73
|
-
// Emit 'UploadProgress' event
|
|
74
|
-
subscriber.next({
|
|
75
|
-
request,
|
|
76
|
-
type: HttpEventType.UploadProgress,
|
|
77
|
-
loaded: event.loaded,
|
|
78
|
-
total: event.total,
|
|
79
|
-
});
|
|
80
|
-
}
|
|
81
|
-
if (event.type === Angular.HttpEventType.Response) {
|
|
82
|
-
const headers = new Headers();
|
|
83
|
-
event.headers.keys().forEach(k => headers.set(k, event.headers.get(k) || ''));
|
|
84
|
-
const response = _this.createResponse({
|
|
85
|
-
url: request.url,
|
|
86
|
-
headers,
|
|
87
|
-
status: event.status,
|
|
88
|
-
statusText: event.statusText,
|
|
89
|
-
hasBody: !!event.body,
|
|
90
|
-
body: event.body,
|
|
91
|
-
});
|
|
92
|
-
// Emit 'Response' event
|
|
93
|
-
subscriber.next({
|
|
94
|
-
type: HttpEventType.Response,
|
|
95
|
-
request,
|
|
96
|
-
response,
|
|
97
|
-
});
|
|
98
|
-
}
|
|
99
|
-
},
|
|
100
|
-
error(error) {
|
|
101
|
-
subscriber.error(error);
|
|
102
|
-
},
|
|
103
|
-
complete() {
|
|
104
|
-
subscriber.complete();
|
|
105
|
-
},
|
|
106
|
-
});
|
|
107
|
-
});
|
|
108
|
-
}
|
|
109
|
-
send(request) {
|
|
110
|
-
return this.httpClient.request(request);
|
|
111
|
-
}
|
|
112
|
-
prepareRequest(init) {
|
|
113
|
-
const headers = init.headers || new Headers();
|
|
114
|
-
const requestInit = {
|
|
115
|
-
...init,
|
|
116
|
-
headers,
|
|
117
|
-
};
|
|
118
|
-
this.defaults.headers.forEach((val, key) => {
|
|
119
|
-
if (!headers.has(key))
|
|
120
|
-
headers.set(key, val);
|
|
121
|
-
});
|
|
122
|
-
const url = new URL(requestInit.url, this.serviceUrl);
|
|
123
|
-
if (this.defaults.params.size) {
|
|
124
|
-
this.defaults.params.forEach((val, key) => {
|
|
125
|
-
if (!url.searchParams.has(key))
|
|
126
|
-
url.searchParams.set(key, val);
|
|
127
|
-
});
|
|
128
|
-
requestInit.url = url.toString();
|
|
129
|
-
}
|
|
130
|
-
if (requestInit.body) {
|
|
131
|
-
let body;
|
|
132
|
-
let contentType;
|
|
133
|
-
if (typeof requestInit.body === 'string' ||
|
|
134
|
-
typeof requestInit.body === 'number' ||
|
|
135
|
-
typeof requestInit.body === 'boolean') {
|
|
136
|
-
contentType = 'text/plain; charset=UTF-8"';
|
|
137
|
-
body = String(requestInit.body);
|
|
138
|
-
headers.delete('Content-Size');
|
|
139
|
-
}
|
|
140
|
-
else if (isReadableStreamLike(requestInit.body)) {
|
|
141
|
-
contentType = 'application/octet-stream';
|
|
142
|
-
body = requestInit.body;
|
|
143
|
-
}
|
|
144
|
-
else if (Buffer.isBuffer(requestInit.body)) {
|
|
145
|
-
contentType = 'application/octet-stream';
|
|
146
|
-
body = requestInit.body;
|
|
147
|
-
headers.set('Content-Size', String(requestInit.body.length));
|
|
148
|
-
}
|
|
149
|
-
else if (isBlob(requestInit.body)) {
|
|
150
|
-
contentType = requestInit.body.type || 'application/octet-stream';
|
|
151
|
-
body = requestInit.body;
|
|
152
|
-
headers.set('Content-Size', String(requestInit.body.size));
|
|
153
|
-
}
|
|
154
|
-
else {
|
|
155
|
-
contentType = 'application/json';
|
|
156
|
-
body = JSON.stringify(requestInit.body);
|
|
157
|
-
headers.delete('Content-Size');
|
|
158
|
-
}
|
|
159
|
-
if (!headers.has('Content-Type') && contentType)
|
|
160
|
-
headers.set('Content-Type', contentType);
|
|
161
|
-
requestInit.body = body;
|
|
162
|
-
}
|
|
163
|
-
return requestInit;
|
|
164
|
-
}
|
|
165
|
-
createResponse(init) {
|
|
166
|
-
return new HttpResponse(init);
|
|
167
|
-
}
|
|
168
|
-
async parseBody(fetchResponse) {
|
|
169
|
-
let body;
|
|
170
|
-
const contentType = fetchResponse.headers.get('Content-Type') || '';
|
|
171
|
-
if (typeIs.is(contentType, ['json', 'application/*+json'])) {
|
|
172
|
-
body = await fetchResponse.json();
|
|
173
|
-
if (typeof body === 'string')
|
|
174
|
-
body = JSON.parse(body);
|
|
175
|
-
}
|
|
176
|
-
else if (typeIs.is(contentType, ['text']))
|
|
177
|
-
body = await fetchResponse.text();
|
|
178
|
-
else if (typeIs.is(contentType, ['multipart']))
|
|
179
|
-
body = await fetchResponse.formData();
|
|
180
|
-
else {
|
|
181
|
-
const buf = await fetchResponse.arrayBuffer();
|
|
182
|
-
if (buf.byteLength)
|
|
183
|
-
body = buf;
|
|
184
|
-
}
|
|
185
|
-
return body;
|
|
186
|
-
}
|
|
187
|
-
}
|
|
188
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci1iYWNrZW5kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci9zcmMvYW5ndWxhci1iYWNrZW5kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZSxXQUFXLEVBQWMsTUFBTSxzQkFBc0IsQ0FBQztBQUM1RSxPQUFPLEtBQUssT0FBTyxNQUFNLHNCQUFzQixDQUFDO0FBQ2hELE9BQU8sTUFBTSxNQUFNLG1CQUFtQixDQUFDO0FBQ3ZDLE9BQU8sRUFDTCxXQUFXLEVBR1gsYUFBYSxFQUNiLFlBQVksR0FLYixNQUFNLGNBQWMsQ0FBQztBQUN0QixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbEMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFHL0U7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLGNBQWUsU0FBUSxXQUFXO0lBSWxDO0lBSFgsUUFBUSxDQUFpQztJQUV6QyxZQUNXLFVBQThCLEVBQ3ZDLFVBQWtCLEVBQ2xCLE9BQWdDO1FBRWhDLEtBQUssQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFKbEIsZUFBVSxHQUFWLFVBQVUsQ0FBb0I7UUFLdkMsSUFBSSxDQUFDLFFBQVEsR0FBRztZQUNkLEdBQUcsT0FBTyxFQUFFLFFBQVE7WUFDcEIsT0FBTyxFQUNMLE9BQU8sRUFBRSxRQUFRLEVBQUUsT0FBTyxZQUFZLE9BQU87Z0JBQzNDLENBQUMsQ0FBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE9BQU87Z0JBQzVCLENBQUMsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQztZQUM3QyxNQUFNLEVBQ0osT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFlBQVksZUFBZTtnQkFDbEQsQ0FBQyxDQUFDLE9BQU8sRUFB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QUNkLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDb250ZXh0LCBIdHRwSGVhZGVycywgSHR0cFBhcmFtcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCAqIGFzIEFuZ3VsYXIgZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHR5cGVJcyBmcm9tICdAYnJvd3NlcnkvdHlwZS1pcyc7XG5pbXBvcnQge1xuICBIdHRwQmFja2VuZCxcbiAgdHlwZSBIdHRwRG93bmxvYWRQcm9ncmVzc0V2ZW50LFxuICB0eXBlIEh0dHBFdmVudCxcbiAgSHR0cEV2ZW50VHlwZSxcbiAgSHR0cFJlc3BvbnNlLFxuICB0eXBlIEh0dHBSZXNwb25zZUV2ZW50LFxuICB0eXBlIEh0dHBSZXNwb25zZUhlYWRlckV2ZW50LFxuICB0eXBlIEh0dHBTZW50RXZlbnQsXG4gIHR5cGUgSHR0cFVwbG9hZFByb2dyZXNzRXZlbnQsXG59IGZyb20gJ0BvcHJhL2NsaWVudCc7XG5pbXBvcnQgeyBpc0Jsb2IgfSBmcm9tICdAb3ByYS9jb21tb24nO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgaXNSZWFkYWJsZVN0cmVhbUxpa2UgfSBmcm9tICdyeGpzL2ludGVybmFsL3V0aWwvaXNSZWFkYWJsZVN0cmVhbUxpa2UnO1xuaW1wb3J0IHR5cGUgeyBTdHJpY3RPbWl0IH0gZnJvbSAndHMtZ2Vtcyc7XG5cbi8qKlxuICpcbiAqIEBjbGFzcyBBbmd1bGFyQmFja2VuZFxuICovXG5leHBvcnQgY2xhc3MgQW5ndWxhckJhY2tlbmQgZXh0ZW5kcyBIdHRwQmFja2VuZCB7XG4gIGRlZmF1bHRzOiBBbmd1bGFyQmFja2VuZC5SZXF1ZXN0RGVmYXVsdHM7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcmVhZG9ubHkgaHR0cENsaWVudDogQW5ndWxhci5IdHRwQ2xpZW50LFxuICAgIHNlcnZpY2VVcmw6IHN0cmluZyxcbiAgICBvcHRpb25zPzogQW5ndWxhckJhY2tlbmQuT3B0aW9ucyxcbiAgKSB7XG4gICAgc3VwZXIoc2VydmljZVVybCwgb3B0aW9ucyk7XG4gICAgdGhpcy5kZWZhdWx0cyA9IHtcbiAgICAgIC4uLm9wdGlvbnM/LmRlZmF1bHRzLFxuICAgICAgaGVhZGVyczpcbiAgICAgICAgb3B0aW9ucz8uZGVmYXVsdHM/LmhlYWRlcnMgaW5zdGFuY2VvZiBIZWFkZXJzXG4gICAgICAgICAgPyBvcHRpb25zPy5kZWZhdWx0cz8uaGVhZGVyc1xuICAgICAgICAgIDogbmV3IEhlYWRlcnMob3B0aW9ucz8uZGVmYXVsdHM/LmhlYWRlcnMpLFxuICAgICAgcGFyYW1zOlxuICAgICAgICBvcHRpb25zPy5kZWZhdWx0cz8ucGFyYW1zIGluc3RhbmNlb2YgVVJMU2VhcmNoUGFyYW1zXG4gICAgICAgICAgPyBvcHRpb25zPy5kZWZhdWx0cz8ucGFyYW1zXG4gICAgICAgICAgOiBuZXcgVVJMU2VhcmNoUGFyYW1zKG9wdGlvbnM/LmRlZmF1bHRzPy5wYXJhbXMpLFxuICAgIH07XG4gIH1cblxuICBoYW5kbGUoaW5pdDogQW5ndWxhckJhY2tlbmQuUmVxdWVzdEluaXQpOiBPYnNlcnZhYmxlPEh0dHBFdmVudD4ge1xuICAgIGNvbnN0IHJlcXVlc3RJbml0ID0gdGhpcy5wcmVwYXJlUmVxdWVzdChpbml0KTtcbiAgICBjb25zdCByZXF1ZXN0ID0gbmV3IEFuZ3VsYXIuSHR0cFJlcXVlc3QocmVxdWVzdEluaXQubWV0aG9kLCByZXF1ZXN0SW5pdC51cmwudG9TdHJpbmcoKSwge1xuICAgICAgLi4ucmVxdWVzdEluaXQsXG4gICAgICBoZWFkZXJzOiBuZXcgSHR0cEhlYWRlcnMocmVxdWVzdEluaXQuaGVhZGVycyksXG4gICAgfSk7XG5cbiAgICBjb25zdCBfdGhpcyA9IHRoaXM7XG4gICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlPEh0dHBFdmVudD4oc3Vic2NyaWJlciA9PiB7XG4gICAgICAvLyBTZW5kIHJlcXVlc3RcbiAgICAgIHRoaXMuc2VuZChyZXF1ZXN0KS5zdWJzY3JpYmUoe1xuICAgICAgICBuZXh0KGV2ZW50KSB7XG4gICAgICAgICAgaWYgKGV2ZW50LnR5cGUgPT09IEFuZ3VsYXIuSHR0cEV2ZW50VHlwZS5TZW50KSB7XG4gICAgICAgICAgICAvLyBFbWl0ICdTZW50JyBldmVudFxuICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHtcbiAgICAgICAgICAgICAgdHlwZTogSHR0cEV2ZW50VHlwZS5TZW50LFxuICAgICAgICAgICAgICByZXF1ZXN0LFxuICAgICAgICAgICAgfSBzYXRpc2ZpZXMgSHR0cFNlbnRFdmVudCk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKGV2ZW50LnR5cGUgPT09IEFuZ3VsYXIuSHR0cEV2ZW50VHlwZS5SZXNwb25zZUhlYWRlcikge1xuICAgICAgICAgICAgLy8gRW1pdCAnUmVzcG9uc2VIZWFkZXInIGV2ZW50XG4gICAgICAgICAgICBjb25zdCBoZWFkZXJzUmVzcG9uc2UgPSBfdGhpcy5jcmVhdGVSZXNwb25zZSh7XG4gICAgICAgICAgICAgIHVybDogcmVxdWVzdC51cmwsXG4gICAgICAgICAgICAgIGhlYWRlcnM6IHJlcXVlc3RJbml0LmhlYWRlcnMsXG4gICAgICAgICAgICAgIHN0YXR1czogZXZlbnQuc3RhdHVzLFxuICAgICAgICAgICAgICBzdGF0dXNUZXh0OiBldmVudC5zdGF0dXNUZXh0LFxuICAgICAgICAgICAgICBoYXNCb2R5OiBldmVudC5oZWFkZXJzLmhhcygnQ29udGVudC1UeXBlJykgfHwgZXZlbnQuaGVhZGVycy5oYXMoJ0NvbnRlbnQtTGVuZ3RoJyksXG4gICAgICAgICAgICB9KSBhcyBIdHRwUmVzcG9uc2U8bmV2ZXI+O1xuICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHtcbiAgICAgICAgICAgICAgcmVxdWVzdCxcbiAgICAgICAgICAgICAgdHlwZTogSHR0cEV2ZW50VHlwZS5SZXNwb25zZUhlYWRlcixcbiAgICAgICAgICAgICAgcmVzcG9uc2U6IGhlYWRlcnNSZXNwb25zZSxcbiAgICAgICAgICAgIH0gc2F0aXNmaWVzIEh0dHBSZXNwb25zZUhlYWRlckV2ZW50KTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoZXZlbnQudHlwZSA9PT0gQW5ndWxhci5IdHRwRXZlbnRUeXBlLkRvd25sb2FkUHJvZ3Jlc3MpIHtcbiAgICAgICAgICAgIC8vIEVtaXQgJ0Rvd25sb2FkUHJvZ3Jlc3MnIGV2ZW50XG4gICAgICAgICAgICBzdWJzY3JpYmVyLm5leHQoe1xuICAgICAgICAgICAgICByZXF1ZXN0LFxuICAgICAgICAgICAgICB0eXBlOiBIdHRwRXZlbnRUeXBlLkRvd25sb2FkUHJvZ3Jlc3MsXG4gICAgICAgICAgICAgIGxvYWRlZDogZXZlbnQubG9hZGVkLFxuICAgICAgICAgICAgICB0b3RhbDogZXZlbnQudG90YWwsXG4gICAgICAgICAgICB9IHNhdGlzZmllcyBIdHRwRG93bmxvYWRQcm9ncmVzc0V2ZW50KTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoZXZlbnQudHlwZSA9PT0gQW5ndWxhci5IdHRwRXZlbnRUeXBlLlVwbG9hZFByb2dyZXNzKSB7XG4gICAgICAgICAgICAvLyBFbWl0ICdVcGxvYWRQcm9ncmVzcycgZXZlbnRcbiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh7XG4gICAgICAgICAgICAgIHJlcXVlc3QsXG4gICAgICAgICAgICAgIHR5cGU6IEh0dHBFdmVudFR5cGUuVXBsb2FkUHJvZ3Jlc3MsXG4gICAgICAgICAgICAgIGxvYWRlZDogZXZlbnQubG9hZGVkLFxuICAgICAgICAgICAgICB0b3RhbDogZXZlbnQudG90YWwsXG4gICAgICAgICAgICB9IHNhdGlzZmllcyBIdHRwVXBsb2FkUHJvZ3Jlc3NFdmVudCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKGV2ZW50LnR5cGUgPT09IEFuZ3VsYXIuSHR0cEV2ZW50VHlwZS5SZXNwb25zZSkge1xuICAgICAgICAgICAgY29uc3QgaGVhZGVycyA9IG5ldyBIZWFkZXJzKCk7XG4gICAgICAgICAgICBldmVudC5oZWFkZXJzLmtleXMoKS5mb3JFYWNoKGsgPT4gaGVhZGVycy5zZXQoaywgZXZlbnQuaGVhZGVycy5nZXQoaykgfHwgJycpKTtcbiAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlID0gX3RoaXMuY3JlYXRlUmVzcG9uc2Uoe1xuICAgICAgICAgICAgICB1cmw6IHJlcXVlc3QudXJsLFxuICAgICAgICAgICAgICBoZWFkZXJzLFxuICAgICAgICAgICAgICBzdGF0dXM6IGV2ZW50LnN0YXR1cyxcbiAgICAgICAgICAgICAgc3RhdHVzVGV4dDogZXZlbnQuc3RhdHVzVGV4dCxcbiAgICAgICAgICAgICAgaGFzQm9keTogISFldmVudC5ib2R5LFxuICAgICAgICAgICAgICBib2R5OiBldmVudC5ib2R5LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAvLyBFbWl0ICdSZXNwb25zZScgZXZlbnRcbiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh7XG4gICAgICAgICAgICAgIHR5cGU6IEh0dHBFdmVudFR5cGUuUmVzcG9uc2UsXG4gICAgICAgICAgICAgIHJlcXVlc3QsXG4gICAgICAgICAgICAgIHJlc3BvbnNlLFxuICAgICAgICAgICAgfSBzYXRpc2ZpZXMgSHR0cFJlc3BvbnNlRXZlbnQpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgZXJyb3IoZXJyb3IpIHtcbiAgICAgICAgICBzdWJzY3JpYmVyLmVycm9yKGVycm9yKTtcbiAgICAgICAgfSxcbiAgICAgICAgY29tcGxldGUoKSB7XG4gICAgICAgICAgc3Vic2NyaWJlci5jb21wbGV0ZSgpO1xuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgc2VuZChyZXF1ZXN0OiBBbmd1bGFyLkh0dHBSZXF1ZXN0PGFueT4pIHtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnJlcXVlc3QocmVxdWVzdCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgcHJlcGFyZVJlcXVlc3QoaW5pdDogQW5ndWxhckJhY2tlbmQuUmVxdWVzdEluaXQpOiBBbmd1bGFyQmFja2VuZC5SZXF1ZXN0SW5pdCB7XG4gICAgY29uc3QgaGVhZGVycyA9IGluaXQuaGVhZGVycyB8fCBuZXcgSGVhZGVycygpO1xuICAgIGNvbnN0IHJlcXVlc3RJbml0OiBBbmd1bGFyQmFja2VuZC5SZXF1ZXN0SW5pdCA9IHtcbiAgICAgIC4uLmluaXQsXG4gICAgICBoZWFkZXJzLFxuICAgIH07XG4gICAgdGhpcy5kZWZhdWx0cy5oZWFkZXJzLmZvckVhY2goKHZhbCwga2V5KSA9PiB7XG4gICAgICBpZiAoIWhlYWRlcnMuaGFzKGtleSkpIGhlYWRlcnMuc2V0KGtleSwgdmFsKTtcbiAgICB9KTtcbiAgICBjb25zdCB1cmwgPSBuZXcgVVJMKHJlcXVlc3RJbml0LnVybCwgdGhpcy5zZXJ2aWNlVXJsKTtcbiAgICBpZiAodGhpcy5kZWZhdWx0cy5wYXJhbXMuc2l6ZSkge1xuICAgICAgdGhpcy5kZWZhdWx0cy5wYXJhbXMuZm9yRWFjaCgodmFsLCBrZXkpID0+IHtcbiAgICAgICAgaWYgKCF1cmwuc2VhcmNoUGFyYW1zLmhhcyhrZXkpKSB1cmwuc2VhcmNoUGFyYW1zLnNldChrZXksIHZhbCk7XG4gICAgICB9KTtcbiAgICAgIHJlcXVlc3RJbml0LnVybCA9IHVybC50b1N0cmluZygpO1xuICAgIH1cbiAgICBpZiAocmVxdWVzdEluaXQuYm9keSkge1xuICAgICAgbGV0IGJvZHk6IGFueTtcbiAgICAgIGxldCBjb250ZW50VHlwZTogc3RyaW5nO1xuICAgICAgaWYgKFxuICAgICAgICB0eXBlb2YgcmVxdWVzdEluaXQuYm9keSA9PT0gJ3N0cmluZycgfHxcbiAgICAgICAgdHlwZW9mIHJlcXVlc3RJbml0LmJvZHkgPT09ICdudW1iZXInIHx8XG4gICAgICAgIHR5cGVvZiByZXF1ZXN0SW5pdC5ib2R5ID09PSAnYm9vbGVhbidcbiAgICAgICkge1xuICAgICAgICBjb250ZW50VHlwZSA9ICd0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XCInO1xuICAgICAgICBib2R5ID0gU3RyaW5nKHJlcXVlc3RJbml0LmJvZHkpO1xuICAgICAgICBoZWFkZXJzLmRlbGV0ZSgnQ29udGVudC1TaXplJyk7XG4gICAgICB9IGVsc2UgaWYgKGlzUmVhZGFibGVTdHJlYW1MaWtlKHJlcXVlc3RJbml0LmJvZHkpKSB7XG4gICAgICAgIGNvbnRlbnRUeXBlID0gJ2FwcGxpY2F0aW9uL29jdGV0LXN0cmVhbSc7XG4gICAgICAgIGJvZHkgPSByZXF1ZXN0SW5pdC5ib2R5O1xuICAgICAgfSBlbHNlIGlmIChCdWZmZXIuaXNCdWZmZXIocmVxdWVzdEluaXQuYm9keSkpIHtcbiAgICAgICAgY29udGVudFR5cGUgPSAnYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtJztcbiAgICAgICAgYm9keSA9IHJlcXVlc3RJbml0LmJvZHk7XG4gICAgICAgIGhlYWRlcnMuc2V0KCdDb250ZW50LVNpemUnLCBTdHJpbmcocmVxdWVzdEluaXQuYm9keS5sZW5ndGgpKTtcbiAgICAgIH0gZWxzZSBpZiAoaXNCbG9iKHJlcXVlc3RJbml0LmJvZHkpKSB7XG4gICAgICAgIGNvbnRlbnRUeXBlID0gcmVxdWVzdEluaXQuYm9keS50eXBlIHx8ICdhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0nO1xuICAgICAgICBib2R5ID0gcmVxdWVzdEluaXQuYm9keTtcbiAgICAgICAgaGVhZGVycy5zZXQoJ0NvbnRlbnQtU2l6ZScsIFN0cmluZyhyZXF1ZXN0SW5pdC5ib2R5LnNpemUpKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnRlbnRUeXBlID0gJ2FwcGxpY2F0aW9uL2pzb24nO1xuICAgICAgICBib2R5ID0gSlNPTi5zdHJpbmdpZnkocmVxdWVzdEluaXQuYm9keSk7XG4gICAgICAgIGhlYWRlcnMuZGVsZXRlKCdDb250ZW50LVNpemUnKTtcbiAgICAgIH1cbiAgICAgIGlmICghaGVhZGVycy5oYXMoJ0NvbnRlbnQtVHlwZScpICYmIGNvbnRlbnRUeXBlKSBoZWFkZXJzLnNldCgnQ29udGVudC1UeXBlJywgY29udGVudFR5cGUpO1xuICAgICAgcmVxdWVzdEluaXQuYm9keSA9IGJvZHk7XG4gICAgfVxuICAgIHJldHVybiByZXF1ZXN0SW5pdDtcbiAgfVxuXG4gIHByb3RlY3RlZCBjcmVhdGVSZXNwb25zZShpbml0OiBIdHRwUmVzcG9uc2UuSW5pdGlhdG9yKTogSHR0cFJlc3BvbnNlIHtcbiAgICByZXR1cm4gbmV3IEh0dHBSZXNwb25zZShpbml0KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyBwYXJzZUJvZHkoZmV0Y2hSZXNwb25zZTogUmVzcG9uc2UpOiBQcm9taXNlPGFueT4ge1xuICAgIGxldCBib2R5OiBhbnk7XG4gICAgY29uc3QgY29udGVudFR5cGUgPSBmZXRjaFJlc3BvbnNlLmhlYWRlcnMuZ2V0KCdDb250ZW50LVR5cGUnKSB8fCAnJztcbiAgICBpZiAodHlwZUlzLmlzKGNvbnRlbnRUeXBlLCBbJ2pzb24nLCAnYXBwbGljYXRpb24vKitqc29uJ10pKSB7XG4gICAgICBib2R5ID0gYXdhaXQgZmV0Y2hSZXNwb25zZS5qc29uKCk7XG4gICAgICBpZiAodHlwZW9mIGJvZHkgPT09ICdzdHJpbmcnKSBib2R5ID0gSlNPTi5wYXJzZShib2R5KTtcbiAgICB9IGVsc2UgaWYgKHR5cGVJcy5pcyhjb250ZW50VHlwZSwgWyd0ZXh0J10pKSBib2R5ID0gYXdhaXQgZmV0Y2hSZXNwb25zZS50ZXh0KCk7XG4gICAgZWxzZSBpZiAodHlwZUlzLmlzKGNvbnRlbnRUeXBlLCBbJ211bHRpcGFydCddKSkgYm9keSA9IGF3YWl0IGZldGNoUmVzcG9uc2UuZm9ybURhdGEoKTtcbiAgICBlbHNlIHtcbiAgICAgIGNvbnN0IGJ1ZiA9IGF3YWl0IGZldGNoUmVzcG9uc2UuYXJyYXlCdWZmZXIoKTtcbiAgICAgIGlmIChidWYuYnl0ZUxlbmd0aCkgYm9keSA9IGJ1ZjtcbiAgICB9XG4gICAgcmV0dXJuIGJvZHk7XG4gIH1cbn1cblxuLyoqXG4gKiBAbmFtZXNwYWNlIEFuZ3VsYXJCYWNrZW5kXG4gKi9cbmV4cG9ydCBuYW1lc3BhY2UgQW5ndWxhckJhY2tlbmQge1xuICBleHBvcnQgaW50ZXJmYWNlIE9wdGlvbnMgZXh0ZW5kcyBIdHRwQmFja2VuZC5PcHRpb25zIHtcbiAgICBkZWZhdWx0cz86IFJlcXVlc3REZWZhdWx0cztcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgUmVxdWVzdEluaXQgZXh0ZW5kcyBIdHRwQmFja2VuZC5SZXF1ZXN0SW5pdCB7XG4gICAgY29udGV4dD86IEh0dHBDb250ZXh0O1xuICAgIHJlcG9ydFByb2dyZXNzPzogYm9vbGVhbjtcbiAgICBwYXJhbXM/OiBIdHRwUGFyYW1zO1xuICAgIHJlc3BvbnNlVHlwZT86ICdhcnJheWJ1ZmZlcicgfCAnYmxvYicgfCAnanNvbicgfCAndGV4dCc7XG4gICAgd2l0aENyZWRlbnRpYWxzPzogYm9vbGVhbjtcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgUmVxdWVzdE9wdGlvbnMgZXh0ZW5kcyBQaWNrPFJlcXVlc3RJbml0LCAnY29udGV4dCcgfCAncmVwb3J0UHJvZ3Jlc3MnIHwgJ3dpdGhDcmVkZW50aWFscyc+IHt9XG5cbiAgZXhwb3J0IHR5cGUgUmVxdWVzdERlZmF1bHRzID0gU3RyaWN0T21pdDxSZXF1ZXN0T3B0aW9ucywgJ2NvbnRleHQnPiAmIHtcbiAgICBoZWFkZXJzOiBIZWFkZXJzO1xuICAgIHBhcmFtczogVVJMU2VhcmNoUGFyYW1zO1xuICB9O1xufVxuIl19
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { HttpClientBase, kBackend } from '@opra/client';
|
|
2
|
-
import { AngularBackend } from './angular-backend';
|
|
3
|
-
/**
|
|
4
|
-
*
|
|
5
|
-
* @class OpraAngularClient
|
|
6
|
-
*/
|
|
7
|
-
export class OpraAngularClient extends HttpClientBase {
|
|
8
|
-
constructor(httpClient, serviceUrl, options) {
|
|
9
|
-
super(new AngularBackend(httpClient, serviceUrl, options));
|
|
10
|
-
}
|
|
11
|
-
get defaults() {
|
|
12
|
-
return this[kBackend].defaults;
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci1jbGllbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyL3NyYy9hbmd1bGFyLWNsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN4RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbkQ7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLGlCQUFrQixTQUFRLGNBQTZDO0lBR2xGLFlBQVksVUFBc0IsRUFBRSxVQUFrQixFQUFFLE9BQWdDO1FBQ3RGLEtBQUssQ0FBQyxJQUFJLGNBQWMsQ0FBQyxVQUFVLEVBQUUsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVELElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFFBQVEsQ0FBQztJQUNqQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBpbXBvcnQteC9leHRlbnNpb25zICovXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSHR0cENsaWVudEJhc2UsIGtCYWNrZW5kIH0gZnJvbSAnQG9wcmEvY2xpZW50JztcbmltcG9ydCB7IEFuZ3VsYXJCYWNrZW5kIH0gZnJvbSAnLi9hbmd1bGFyLWJhY2tlbmQnO1xuXG4vKipcbiAqXG4gKiBAY2xhc3MgT3ByYUFuZ3VsYXJDbGllbnRcbiAqL1xuZXhwb3J0IGNsYXNzIE9wcmFBbmd1bGFyQ2xpZW50IGV4dGVuZHMgSHR0cENsaWVudEJhc2U8QW5ndWxhckJhY2tlbmQuUmVxdWVzdE9wdGlvbnM+IHtcbiAgZGVjbGFyZSBba0JhY2tlbmRdOiBBbmd1bGFyQmFja2VuZDtcblxuICBjb25zdHJ1Y3RvcihodHRwQ2xpZW50OiBIdHRwQ2xpZW50LCBzZXJ2aWNlVXJsOiBzdHJpbmcsIG9wdGlvbnM/OiBBbmd1bGFyQmFja2VuZC5PcHRpb25zKSB7XG4gICAgc3VwZXIobmV3IEFuZ3VsYXJCYWNrZW5kKGh0dHBDbGllbnQsIHNlcnZpY2VVcmwsIG9wdGlvbnMpKTtcbiAgfVxuXG4gIGdldCBkZWZhdWx0cygpOiBBbmd1bGFyQmFja2VuZC5SZXF1ZXN0RGVmYXVsdHMge1xuICAgIHJldHVybiB0aGlzW2tCYWNrZW5kXS5kZWZhdWx0cztcbiAgfVxufVxuIl19
|
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
/* eslint-disable import-x/extensions */
|
|
2
|
-
import { HttpClient } from '@angular/common/http';
|
|
3
|
-
import { NgModule } from '@angular/core';
|
|
4
|
-
import { kClient } from '@opra/client';
|
|
5
|
-
import { OpraAngularClient } from './angular-client';
|
|
6
|
-
import { OPRA_CLIENT_MODULE_OPTIONS } from './constants';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
export class OpraClientModule {
|
|
9
|
-
static registerClient(options) {
|
|
10
|
-
const CLIENT_TOKEN = options.token || OpraAngularClient;
|
|
11
|
-
return {
|
|
12
|
-
ngModule: OpraClientModule,
|
|
13
|
-
providers: [
|
|
14
|
-
{
|
|
15
|
-
provide: CLIENT_TOKEN,
|
|
16
|
-
deps: [HttpClient],
|
|
17
|
-
useFactory: (httpClient) => new OpraAngularClient(httpClient, options.serviceUrl, options),
|
|
18
|
-
},
|
|
19
|
-
],
|
|
20
|
-
};
|
|
21
|
-
}
|
|
22
|
-
static registerService(serviceClass, options) {
|
|
23
|
-
const SERVICE_TOKEN = options.token || serviceClass;
|
|
24
|
-
return {
|
|
25
|
-
ngModule: OpraClientModule,
|
|
26
|
-
providers: [
|
|
27
|
-
{
|
|
28
|
-
provide: SERVICE_TOKEN,
|
|
29
|
-
deps: [HttpClient],
|
|
30
|
-
useFactory: (httpClient) => {
|
|
31
|
-
const opraAngularClient = new OpraAngularClient(httpClient, options.serviceUrl, options);
|
|
32
|
-
const service = new serviceClass(opraAngularClient);
|
|
33
|
-
service[kClient] = opraAngularClient;
|
|
34
|
-
return service;
|
|
35
|
-
},
|
|
36
|
-
},
|
|
37
|
-
],
|
|
38
|
-
};
|
|
39
|
-
}
|
|
40
|
-
static registerClientAsync(options) {
|
|
41
|
-
const CLIENT_TOKEN = options.token || OpraAngularClient;
|
|
42
|
-
const asyncProviders = this._createAsyncProviders(options);
|
|
43
|
-
return {
|
|
44
|
-
ngModule: OpraClientModule,
|
|
45
|
-
providers: [
|
|
46
|
-
...asyncProviders,
|
|
47
|
-
{
|
|
48
|
-
provide: CLIENT_TOKEN,
|
|
49
|
-
deps: [HttpClient, OPRA_CLIENT_MODULE_OPTIONS],
|
|
50
|
-
useFactory: (httpClient, opts) => new OpraAngularClient(httpClient, opts.serviceUrl, opts),
|
|
51
|
-
},
|
|
52
|
-
],
|
|
53
|
-
};
|
|
54
|
-
}
|
|
55
|
-
static registerServiceAsync(serviceClass, options) {
|
|
56
|
-
const SERVICE_TOKEN = options.token || serviceClass;
|
|
57
|
-
const asyncProviders = this._createAsyncProviders(options);
|
|
58
|
-
return {
|
|
59
|
-
ngModule: OpraClientModule,
|
|
60
|
-
providers: [
|
|
61
|
-
...asyncProviders,
|
|
62
|
-
{
|
|
63
|
-
provide: SERVICE_TOKEN,
|
|
64
|
-
deps: [HttpClient, OPRA_CLIENT_MODULE_OPTIONS],
|
|
65
|
-
useFactory: (httpClient, opts) => {
|
|
66
|
-
const opraAngularClient = new OpraAngularClient(httpClient, opts.serviceUrl, opts);
|
|
67
|
-
const service = new serviceClass(opraAngularClient);
|
|
68
|
-
service[kClient] = opraAngularClient;
|
|
69
|
-
return service;
|
|
70
|
-
},
|
|
71
|
-
},
|
|
72
|
-
],
|
|
73
|
-
};
|
|
74
|
-
}
|
|
75
|
-
static _createAsyncProviders(options) {
|
|
76
|
-
if (options.useExisting || options.useFactory)
|
|
77
|
-
return [this._createAsyncOptionsProvider(options)];
|
|
78
|
-
if (options.useClass) {
|
|
79
|
-
return [
|
|
80
|
-
this._createAsyncOptionsProvider(options),
|
|
81
|
-
{
|
|
82
|
-
provide: options.useClass,
|
|
83
|
-
useClass: options.useClass,
|
|
84
|
-
},
|
|
85
|
-
];
|
|
86
|
-
}
|
|
87
|
-
throw new Error('Invalid configuration. Must provide useFactory, useClass or useExisting');
|
|
88
|
-
}
|
|
89
|
-
static _createAsyncOptionsProvider(options) {
|
|
90
|
-
if (options.useFactory) {
|
|
91
|
-
return {
|
|
92
|
-
provide: OPRA_CLIENT_MODULE_OPTIONS,
|
|
93
|
-
useFactory: options.useFactory,
|
|
94
|
-
deps: options.deps || [],
|
|
95
|
-
};
|
|
96
|
-
}
|
|
97
|
-
const useClass = options.useClass || options.useExisting;
|
|
98
|
-
if (useClass) {
|
|
99
|
-
return {
|
|
100
|
-
provide: OPRA_CLIENT_MODULE_OPTIONS,
|
|
101
|
-
useFactory: o => o,
|
|
102
|
-
deps: [useClass],
|
|
103
|
-
};
|
|
104
|
-
}
|
|
105
|
-
throw new Error('Invalid configuration. Must provide useFactory, useClass or useExisting');
|
|
106
|
-
}
|
|
107
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OpraClientModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
108
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.12", ngImport: i0, type: OpraClientModule });
|
|
109
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OpraClientModule });
|
|
110
|
-
}
|
|
111
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OpraClientModule, decorators: [{
|
|
112
|
-
type: NgModule,
|
|
113
|
-
args: [{}]
|
|
114
|
-
}] });
|
|
115
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXIvc3JjL2NsaWVudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsd0NBQXdDO0FBQ3hDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQTRCLFFBQVEsRUFBdUIsTUFBTSxlQUFlLENBQUM7QUFDeEYsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN2QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxhQUFhLENBQUM7O0FBSXpELE1BQU0sT0FBTyxnQkFBZ0I7SUFDcEIsTUFBTSxDQUFDLGNBQWMsQ0FBQyxPQUFnQztRQUMzRCxNQUFNLFlBQVksR0FBRyxPQUFPLENBQUMsS0FBSyxJQUFJLGlCQUFpQixDQUFDO1FBQ3hELE9BQU87WUFDTCxRQUFRLEVBQUUsZ0JBQWdCO1lBQzFCLFNBQVMsRUFBRTtnQkFDVDtvQkFDRSxPQUFPLEVBQUUsWUFBWTtvQkFDckIsSUFBSSxFQUFFLENBQUMsVUFBVSxDQUFDO29CQUNsQixVQUFVLEVBQUUsQ0FBQyxVQUFzQixFQUFFLEVBQUUsQ0FBQyxJQUFJLGlCQUFpQixDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQztpQkFDdkc7YUFDRjtTQUNGLENBQUM7SUFDSixDQUFDO0lBRU0sTUFBTSxDQUFDLGVBQWUsQ0FDM0IsWUFBcUIsRUFDckIsT0FBZ0M7UUFFaEMsTUFBTSxhQUFhLEdBQUcsT0FBTyxDQUFDLEtBQUssSUFBSSxZQUFZLENBQUM7UUFDcEQsT0FBTztZQUNMLFFBQVEsRUFBRSxnQkFBZ0I7WUFDMUIsU0FBUyxFQUFFO2dCQUNUO29CQUNFLE9BQU8sRUFBRSxhQUFhO29CQUN0QixJQUFJLEVB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LFVBQVUsRUFBRSxPQUFPLENBQUMsVUFBVTtnQkFDOUIsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJLElBQUksRUFBRTthQUN6QixDQUFDO1FBQ0osQ0FBQztRQUNELE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxRQUFRLElBQUksT0FBTyxDQUFDLFdBQVcsQ0FBQztRQUN6RCxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQ2IsT0FBTztnQkFDTCxPQUFPLEVBQUUsMEJBQTBCO2dCQUNuQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUNsQixJQUFJLEVBQUUsQ0FBQyxRQUFRLENBQUM7YUFDakIsQ0FBQztRQUNKLENBQUM7UUFDRCxNQUFNLElBQUksS0FBSyxDQUFDLHlFQUF5RSxDQUFDLENBQUM7SUFDN0YsQ0FBQzt3R0EvR1UsZ0JBQWdCO3lHQUFoQixnQkFBZ0I7eUdBQWhCLGdCQUFnQjs7NEZBQWhCLGdCQUFnQjtrQkFENUIsUUFBUTttQkFBQyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgaW1wb3J0LXgvZXh0ZW5zaW9ucyAqL1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IHR5cGUgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUsIHR5cGUgUHJvdmlkZXIsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGtDbGllbnQgfSBmcm9tICdAb3ByYS9jbGllbnQnO1xuaW1wb3J0IHsgT3ByYUFuZ3VsYXJDbGllbnQgfSBmcm9tICcuL2FuZ3VsYXItY2xpZW50JztcbmltcG9ydCB7IE9QUkFfQ0xJRU5UX01PRFVMRV9PUFRJT05TIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuaW1wb3J0IHR5cGUgeyBPcHJhQ2xpZW50TW9kdWxlQXN5bmNPcHRpb25zLCBPcHJhQ2xpZW50TW9kdWxlT3B0aW9ucyB9IGZyb20gJy4vaW50ZXJmYWNlcy9tb2R1bGUtb3B0aW9ucy5pbnRlcmZhY2UnO1xuXG5ATmdNb2R1bGUoe30pXG5leHBvcnQgY2xhc3MgT3ByYUNsaWVudE1vZHVsZSB7XG4gIHB1YmxpYyBzdGF0aWMgcmVnaXN0ZXJDbGllbnQob3B0aW9uczogT3ByYUNsaWVudE1vZHVsZU9wdGlvbnMpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPE9wcmFDbGllbnRNb2R1bGU+IHtcbiAgICBjb25zdCBDTElFTlRfVE9LRU4gPSBvcHRpb25zLnRva2VuIHx8IE9wcmFBbmd1bGFyQ2xpZW50O1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogT3ByYUNsaWVudE1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogQ0xJRU5UX1RPS0VOLFxuICAgICAgICAgIGRlcHM6IFtIdHRwQ2xpZW50XSxcbiAgICAgICAgICB1c2VGYWN0b3J5OiAoaHR0cENsaWVudDogSHR0cENsaWVudCkgPT4gbmV3IE9wcmFBbmd1bGFyQ2xpZW50KGh0dHBDbGllbnQsIG9wdGlvbnMuc2VydmljZVVybCwgb3B0aW9ucyksXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH07XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIHJlZ2lzdGVyU2VydmljZTxUPihcbiAgICBzZXJ2aWNlQ2xhc3M6IFR5cGU8VD4sXG4gICAgb3B0aW9uczogT3ByYUNsaWVudE1vZHVsZU9wdGlvbnMsXG4gICk6IE1vZHVsZVdpdGhQcm92aWRlcnM8T3ByYUNsaWVudE1vZHVsZT4ge1xuICAgIGNvbnN0IFNFUlZJQ0VfVE9LRU4gPSBvcHRpb25zLnRva2VuIHx8IHNlcnZpY2VDbGFzcztcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IE9wcmFDbGllbnRNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IFNFUlZJQ0VfVE9LRU4sXG4gICAgICAgICAgZGVwczogW0h0dHBDbGllbnRdLFxuICAgICAgICAgIHVzZUZhY3Rvcnk6IChodHRwQ2xpZW50OiBIdHRwQ2xpZW50KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBvcHJhQW5ndWxhckNsaWVudCA9IG5ldyBPcHJhQW5ndWxhckNsaWVudChodHRwQ2xpZW50LCBvcHRpb25zLnNlcnZpY2VVcmwsIG9wdGlvbnMpO1xuICAgICAgICAgICAgY29uc3Qgc2VydmljZSA9IG5ldyBzZXJ2aWNlQ2xhc3Mob3ByYUFuZ3VsYXJDbGllbnQpO1xuICAgICAgICAgICAgc2VydmljZVtrQ2xpZW50XSA9IG9wcmFBbmd1bGFyQ2xpZW50O1xuICAgICAgICAgICAgcmV0dXJuIHNlcnZpY2U7XG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfTtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgcmVnaXN0ZXJDbGllbnRBc3luYyhvcHRpb25zOiBPcHJhQ2xpZW50TW9kdWxlQXN5bmNPcHRpb25zKTogTW9kdWxlV2l0aFByb3ZpZGVyczxPcHJhQ2xpZW50TW9kdWxlPiB7XG4gICAgY29uc3QgQ0xJRU5UX1RPS0VOID0gb3B0aW9ucy50b2tlbiB8fCBPcHJhQW5ndWxhckNsaWVudDtcbiAgICBjb25zdCBhc3luY1Byb3ZpZGVycyA9IHRoaXMuX2NyZWF0ZUFzeW5jUHJvdmlkZXJzKG9wdGlvbnMpO1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogT3ByYUNsaWVudE1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICAuLi5hc3luY1Byb3ZpZGVycyxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IENMSUVOVF9UT0tFTixcbiAgICAgICAgICBkZXBzOiBbSHR0cENsaWVudCwgT1BSQV9DTElFTlRfTU9EVUxFX09QVElPTlNdLFxuICAgICAgICAgIHVzZUZhY3Rvcnk6IChodHRwQ2xpZW50OiBIdHRwQ2xpZW50LCBvcHRzOiBPcHJhQ2xpZW50TW9kdWxlT3B0aW9ucykgPT5cbiAgICAgICAgICAgIG5ldyBPcHJhQW5ndWxhckNsaWVudChodHRwQ2xpZW50LCBvcHRzLnNlcnZpY2VVcmwsIG9wdHMpLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9O1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyByZWdpc3RlclNlcnZpY2VBc3luYzxUPihcbiAgICBzZXJ2aWNlQ2xhc3M6IFR5cGU8VD4sXG4gICAgb3B0aW9uczogT3ByYUNsaWVudE1vZHVsZUFzeW5jT3B0aW9ucyxcbiAgKTogTW9kdWxlV2l0aFByb3ZpZGVyczxPcHJhQ2xpZW50TW9kdWxlPiB7XG4gICAgY29uc3QgU0VSVklDRV9UT0tFTiA9IG9wdGlvbnMudG9rZW4gfHwgc2VydmljZUNsYXNzO1xuICAgIGNvbnN0IGFzeW5jUHJvdmlkZXJzID0gdGhpcy5fY3JlYXRlQXN5bmNQcm92aWRlcnMob3B0aW9ucyk7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBPcHJhQ2xpZW50TW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIC4uLmFzeW5jUHJvdmlkZXJzLFxuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogU0VSVklDRV9UT0tFTixcbiAgICAgICAgICBkZXBzOiBbSHR0cENsaWVudCwgT1BSQV9DTElFTlRfTU9EVUxFX09QVElPTlNdLFxuICAgICAgICAgIHVzZUZhY3Rvcnk6IChodHRwQ2xpZW50OiBIdHRwQ2xpZW50LCBvcHRzOiBPcHJhQ2xpZW50TW9kdWxlT3B0aW9ucykgPT4ge1xuICAgICAgICAgICAgY29uc3Qgb3ByYUFuZ3VsYXJDbGllbnQgPSBuZXcgT3ByYUFuZ3VsYXJDbGllbnQoaHR0cENsaWVudCwgb3B0cy5zZXJ2aWNlVXJsLCBvcHRzKTtcbiAgICAgICAgICAgIGNvbnN0IHNlcnZpY2UgPSBuZXcgc2VydmljZUNsYXNzKG9wcmFBbmd1bGFyQ2xpZW50KTtcbiAgICAgICAgICAgIHNlcnZpY2Vba0NsaWVudF0gPSBvcHJhQW5ndWxhckNsaWVudDtcbiAgICAgICAgICAgIHJldHVybiBzZXJ2aWNlO1xuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBfY3JlYXRlQXN5bmNQcm92aWRlcnMob3B0aW9uczogT3ByYUNsaWVudE1vZHVsZUFzeW5jT3B0aW9ucyk6IFByb3ZpZGVyW10ge1xuICAgIGlmIChvcHRpb25zLnVzZUV4aXN0aW5nIHx8IG9wdGlvbnMudXNlRmFjdG9yeSkgcmV0dXJuIFt0aGlzLl9jcmVhdGVBc3luY09wdGlvbnNQcm92aWRlcihvcHRpb25zKV07XG5cbiAgICBpZiAob3B0aW9ucy51c2VDbGFzcykge1xuICAgICAgcmV0dXJuIFtcbiAgICAgICAgdGhpcy5fY3JlYXRlQXN5bmNPcHRpb25zUHJvdmlkZXIob3B0aW9ucyksXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBvcHRpb25zLnVzZUNsYXNzLFxuICAgICAgICAgIHVzZUNsYXNzOiBvcHRpb25zLnVzZUNsYXNzLFxuICAgICAgICB9LFxuICAgICAgXTtcbiAgICB9XG5cbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgY29uZmlndXJhdGlvbi4gTXVzdCBwcm92aWRlIHVzZUZhY3RvcnksIHVzZUNsYXNzIG9yIHVzZUV4aXN0aW5nJyk7XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBfY3JlYXRlQXN5bmNPcHRpb25zUHJvdmlkZXIob3B0aW9uczogT3ByYUNsaWVudE1vZHVsZUFzeW5jT3B0aW9ucyk6IFByb3ZpZGVyIHtcbiAgICBpZiAob3B0aW9ucy51c2VGYWN0b3J5KSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBwcm92aWRlOiBPUFJBX0NMSUVOVF9NT0RVTEVfT1BUSU9OUyxcbiAgICAgICAgdXNlRmFjdG9yeTogb3B0aW9ucy51c2VGYWN0b3J5LFxuICAgICAgICBkZXBzOiBvcHRpb25zLmRlcHMgfHwgW10sXG4gICAgICB9O1xuICAgIH1cbiAgICBjb25zdCB1c2VDbGFzcyA9IG9wdGlvbnMudXNlQ2xhc3MgfHwgb3B0aW9ucy51c2VFeGlzdGluZztcbiAgICBpZiAodXNlQ2xhc3MpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHByb3ZpZGU6IE9QUkFfQ0xJRU5UX01PRFVMRV9PUFRJT05TLFxuICAgICAgICB1c2VGYWN0b3J5OiBvID0+IG8sXG4gICAgICAgIGRlcHM6IFt1c2VDbGFzc10sXG4gICAgICB9O1xuICAgIH1cbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgY29uZmlndXJhdGlvbi4gTXVzdCBwcm92aWRlIHVzZUZhY3RvcnksIHVzZUNsYXNzIG9yIHVzZUV4aXN0aW5nJyk7XG4gIH1cbn1cbiJdfQ==
|
package/esm2022/constants.mjs
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export const OPRA_CLIENT_MODULE_OPTIONS = 'OPRA_CLIENT_MODULE_OPTIONS';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci9zcmMvY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHLDRCQUE0QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IE9QUkFfQ0xJRU5UX01PRFVMRV9PUFRJT05TID0gJ09QUkFfQ0xJRU5UX01PRFVMRV9PUFRJT05TJztcbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLW9wdGlvbnMuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci9zcmMvaW50ZXJmYWNlcy9tb2R1bGUtb3B0aW9ucy5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuLCBOZ01vZHVsZSwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHR5cGUgeyBTdHJpY3RPbWl0IH0gZnJvbSAndHMtZ2Vtcyc7XG5pbXBvcnQgeyBBbmd1bGFyQmFja2VuZCB9IGZyb20gJy4uL2FuZ3VsYXItYmFja2VuZC5qcyc7XG5cbmV4cG9ydCB0eXBlIE9wcmFDbGllbnRNb2R1bGVPcHRpb25zID0gQW5ndWxhckJhY2tlbmQuT3B0aW9ucyAmIHtcbiAgc2VydmljZVVybDogc3RyaW5nO1xuICB0b2tlbj86IHN0cmluZyB8IEluamVjdGlvblRva2VuPGFueT47XG59O1xuXG50eXBlIF9PcHJhQ2xpZW50TW9kdWxlT3B0aW9ucyA9IFN0cmljdE9taXQ8T3ByYUNsaWVudE1vZHVsZU9wdGlvbnMsICd0b2tlbic+O1xuXG5leHBvcnQgaW50ZXJmYWNlIE9wcmFNb2R1bGVPcHRpb25zRmFjdG9yeSB7XG4gIGNyZWF0ZU9wdGlvbnMoKTogUHJvbWlzZTxfT3ByYUNsaWVudE1vZHVsZU9wdGlvbnM+IHwgX09wcmFDbGllbnRNb2R1bGVPcHRpb25zO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE9wcmFDbGllbnRNb2R1bGVBc3luY09wdGlvbnMgZXh0ZW5kcyBQaWNrPE5nTW9kdWxlLCAnaW1wb3J0cycgfCAncHJvdmlkZXJzJz4ge1xuICB0b2tlbj86IHN0cmluZyB8IEluamVjdGlvblRva2VuPGFueT47XG4gIHVzZUV4aXN0aW5nPzogVHlwZTxPcHJhTW9kdWxlT3B0aW9uc0ZhY3Rvcnk+O1xuICB1c2VDbGFzcz86IFR5cGU8YW55PjtcbiAgdXNlRmFjdG9yeT86ICguLi5hcmdzOiBhbnlbXSkgPT4gUHJvbWlzZTxfT3ByYUNsaWVudE1vZHVsZU9wdGlvbnM+IHwgX09wcmFDbGllbnRNb2R1bGVPcHRpb25zO1xuICBkZXBzPzogYW55W107XG59XG4iXX0=
|
package/esm2022/opra-angular.mjs
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './public_api';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ByYS1hbmd1bGFyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci9zcmMvb3ByYS1hbmd1bGFyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljX2FwaSc7XG4iXX0=
|
package/esm2022/public_api.mjs
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
/* eslint-disable import-x/extensions */
|
|
2
|
-
export * from './angular-backend';
|
|
3
|
-
export * from './client.module';
|
|
4
|
-
export * from './constants';
|
|
5
|
-
export * from './interfaces/module-options.interface';
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXIvc3JjL3B1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsd0NBQXdDO0FBQ3hDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLHVDQUF1QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgaW1wb3J0LXgvZXh0ZW5zaW9ucyAqL1xuZXhwb3J0ICogZnJvbSAnLi9hbmd1bGFyLWJhY2tlbmQnO1xuZXhwb3J0ICogZnJvbSAnLi9jbGllbnQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vY29uc3RhbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vaW50ZXJmYWNlcy9tb2R1bGUtb3B0aW9ucy5pbnRlcmZhY2UnO1xuIl19
|