@bravobit/bb-foundation 0.60.2 → 0.60.3

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.
Files changed (36) hide show
  1. package/fesm2022/bravobit-bb-foundation-auth.mjs +22 -22
  2. package/fesm2022/bravobit-bb-foundation-auth.mjs.map +1 -1
  3. package/fesm2022/bravobit-bb-foundation-collections.mjs +43 -43
  4. package/fesm2022/bravobit-bb-foundation-collections.mjs.map +1 -1
  5. package/fesm2022/bravobit-bb-foundation-dashboard.mjs +25 -25
  6. package/fesm2022/bravobit-bb-foundation-dashboard.mjs.map +1 -1
  7. package/fesm2022/bravobit-bb-foundation-dialog.mjs +34 -34
  8. package/fesm2022/bravobit-bb-foundation-dialog.mjs.map +1 -1
  9. package/fesm2022/bravobit-bb-foundation-elements.mjs +100 -100
  10. package/fesm2022/bravobit-bb-foundation-elements.mjs.map +1 -1
  11. package/fesm2022/bravobit-bb-foundation-http.mjs +10 -10
  12. package/fesm2022/bravobit-bb-foundation-http.mjs.map +1 -1
  13. package/fesm2022/bravobit-bb-foundation-localize.mjs +16 -16
  14. package/fesm2022/bravobit-bb-foundation-localize.mjs.map +1 -1
  15. package/fesm2022/bravobit-bb-foundation-masking.mjs +16 -16
  16. package/fesm2022/bravobit-bb-foundation-masking.mjs.map +1 -1
  17. package/fesm2022/bravobit-bb-foundation-notifications.mjs +13 -13
  18. package/fesm2022/bravobit-bb-foundation-notifications.mjs.map +1 -1
  19. package/fesm2022/bravobit-bb-foundation-permissions.mjs +10 -10
  20. package/fesm2022/bravobit-bb-foundation-permissions.mjs.map +1 -1
  21. package/fesm2022/bravobit-bb-foundation-recaptcha.mjs +10 -10
  22. package/fesm2022/bravobit-bb-foundation-recaptcha.mjs.map +1 -1
  23. package/fesm2022/bravobit-bb-foundation-select.mjs +85 -29
  24. package/fesm2022/bravobit-bb-foundation-select.mjs.map +1 -1
  25. package/fesm2022/bravobit-bb-foundation-storage.mjs +3 -3
  26. package/fesm2022/bravobit-bb-foundation-storage.mjs.map +1 -1
  27. package/fesm2022/bravobit-bb-foundation-table.mjs +22 -22
  28. package/fesm2022/bravobit-bb-foundation-table.mjs.map +1 -1
  29. package/fesm2022/bravobit-bb-foundation-tooltip.mjs +10 -10
  30. package/fesm2022/bravobit-bb-foundation-tooltip.mjs.map +1 -1
  31. package/fesm2022/bravobit-bb-foundation-utils.mjs +16 -16
  32. package/fesm2022/bravobit-bb-foundation-utils.mjs.map +1 -1
  33. package/fesm2022/bravobit-bb-foundation.mjs +21 -21
  34. package/fesm2022/bravobit-bb-foundation.mjs.map +1 -1
  35. package/package.json +2 -2
  36. package/types/bravobit-bb-foundation-select.d.ts +15 -2
@@ -108,10 +108,10 @@ class BaseUrlInterceptor {
108
108
  }
109
109
  return null;
110
110
  }
111
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: BaseUrlInterceptor, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
112
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: BaseUrlInterceptor });
111
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: BaseUrlInterceptor, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
112
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: BaseUrlInterceptor });
113
113
  }
114
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: BaseUrlInterceptor, decorators: [{
114
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: BaseUrlInterceptor, decorators: [{
115
115
  type: Injectable
116
116
  }] });
117
117
 
@@ -132,10 +132,10 @@ class ErrorInterceptor {
132
132
  return throwError(() => error);
133
133
  }));
134
134
  }
135
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: ErrorInterceptor, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
136
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: ErrorInterceptor });
135
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: ErrorInterceptor, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
136
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: ErrorInterceptor });
137
137
  }
138
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: ErrorInterceptor, decorators: [{
138
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: ErrorInterceptor, decorators: [{
139
139
  type: Injectable
140
140
  }] });
141
141
 
@@ -167,11 +167,11 @@ class HttpModule {
167
167
  ]
168
168
  };
169
169
  }
170
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: HttpModule, deps: [{ token: HttpModule, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule });
171
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.7", ngImport: i0, type: HttpModule });
172
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: HttpModule });
170
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: HttpModule, deps: [{ token: HttpModule, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule });
171
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.12", ngImport: i0, type: HttpModule });
172
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: HttpModule });
173
173
  }
174
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: HttpModule, decorators: [{
174
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: HttpModule, decorators: [{
175
175
  type: NgModule
176
176
  }], ctorParameters: () => [{ type: HttpModule, decorators: [{
177
177
  type: Optional
@@ -1 +1 @@
1
- {"version":3,"file":"bravobit-bb-foundation-http.mjs","sources":["../../../projects/bb-foundation/http/src/lib/http.interfaces.ts","../../../projects/bb-foundation/http/src/lib/classes/http.config.ts","../../../projects/bb-foundation/http/src/lib/classes/http.error.ts","../../../projects/bb-foundation/http/src/lib/interceptors/base-url.interceptor.ts","../../../projects/bb-foundation/http/src/lib/interceptors/error.interceptor.ts","../../../projects/bb-foundation/http/src/lib/http.config.ts","../../../projects/bb-foundation/http/src/lib/http.module.ts","../../../projects/bb-foundation/http/src/bravobit-bb-foundation-http.ts"],"sourcesContent":["import {HttpConfig} from './classes/http.config';\nimport {InjectionToken} from '@angular/core';\n\nexport interface HttpConfigData {\n url: HttpConfigUrl;\n alias?: {\n prefix?: string;\n standard?: string;\n };\n disableErrorParsing?: boolean;\n}\n\nexport type HttpConfigPlatformUrl = string | { browser: string, server: string };\nexport type HttpConfigAlias = { alias: string, url: HttpConfigPlatformUrl };\nexport type HttpConfigUrl = HttpConfigPlatformUrl | HttpConfigAlias[];\n\nexport const HTTP_CONFIG = new InjectionToken<HttpConfig>('http config');\nexport const HTTP_CONFIG_DATA = new InjectionToken<HttpConfigData>('http config data');\n","import {HttpConfigAlias, HttpConfigData, HttpConfigUrl} from '../http.interfaces';\n\ndeclare let ngDevMode;\n\nexport class HttpConfig {\n\n readonly aliases: HttpConfigAlias[];\n readonly prefix: string;\n readonly defaultAlias: string;\n readonly disableErrorParsing: boolean;\n\n constructor(data: HttpConfigData) {\n // Get the data from the config.\n this.prefix = data?.alias?.prefix ?? '$';\n this.disableErrorParsing = data?.disableErrorParsing ?? false;\n\n // Parse the aliases.\n const standardAlias = data?.alias?.standard ?? 'api';\n this.aliases = this.parseAliases(data?.url, standardAlias);\n\n // Get the default alias.\n const firstAvailableAlias = this.aliases?.[0]?.alias ?? null;\n this.defaultAlias = `${this.prefix}${firstAvailableAlias}`;\n }\n\n private parseAliases = (value: HttpConfigUrl, standardAlias: string) => {\n if (!Array.isArray(value)) {\n value = [{alias: standardAlias, url: value}];\n }\n\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n const stringRegex = /^[a-zA-Z]+$/;\n for (const item of value) {\n if (!!item?.alias && !stringRegex.test(item?.alias)) {\n console?.warn?.(`[HttpModule]: Invalid HTTP-alias in HttpConfig named \"${item?.alias}\"; only latin characters should be used.`);\n }\n }\n }\n\n return value;\n };\n\n}\n","import {HttpErrorResponse} from '@angular/common/http';\n\nexport class HttpError extends HttpErrorResponse {\n\n constructor(error: HttpErrorResponse) {\n super(error);\n }\n\n get<T = any>(token: string, delimiter: string = '.') {\n const error = this.error ?? {};\n return (token ?? '')\n .split(delimiter)\n .reduce((previous, current) => previous?.[current] ? previous?.[current] : null, error) as T;\n }\n\n has(token: string, delimiter: string = '.') {\n return !!this.get(token, delimiter);\n }\n\n includes<T = any>(token: string, value: T) {\n const array = this.get<T[]>(token);\n return (array ?? []).includes(value);\n }\n\n}\n","import {HTTP_CONFIG, HttpConfigAlias, HttpConfigPlatformUrl} from '../http.interfaces';\nimport {HttpHandler, HttpInterceptor, HttpRequest} from '@angular/common/http';\nimport {inject, Injectable, PLATFORM_ID} from '@angular/core';\nimport {HttpConfig} from '../classes/http.config';\nimport {isPlatformServer} from '@angular/common';\n\ndeclare let ngDevMode;\n\n@Injectable()\nexport class BaseUrlInterceptor implements HttpInterceptor {\n\n // Dependencies.\n private readonly _config: HttpConfig = inject(HTTP_CONFIG);\n private readonly _platformId: Object = inject(PLATFORM_ID);\n\n // Aliases.\n private readonly _aliases: HttpConfigAlias[] = this._config?.aliases;\n private readonly _prefix: string = this._config?.prefix;\n private readonly _extractRegex: RegExp = new RegExp(`\\\\${this._prefix}[a-zA-Z]+`);\n\n intercept(request: HttpRequest<unknown>, next: HttpHandler) {\n const url = this.getUrlBasedOnAlias(request.url);\n const modified = request.clone({url});\n\n return next.handle(modified);\n }\n\n private getUrlBasedOnAlias(url: string) {\n const matches = this._extractRegex.exec(url);\n if (!matches) {\n return url;\n }\n\n return matches.reduce((previous, current) => {\n const alias = this.getAlias(current);\n const stringAlias = this.convertUrlToString(alias?.url);\n if (!stringAlias) {\n return previous;\n }\n\n return previous.replace(current, stringAlias);\n }, url);\n }\n\n private convertUrlToString(url: HttpConfigPlatformUrl) {\n if (typeof url === 'string') {\n return url;\n }\n\n return isPlatformServer(this._platformId)\n ? url?.server ?? url?.browser ?? null\n : url?.browser ?? null;\n }\n\n private getAlias(value: string) {\n const alias = value.replace(this._prefix, '');\n const fetched = this._aliases?.find(item => item.alias === alias) ?? null;\n if (fetched) {\n return fetched;\n }\n\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n const available = this._aliases\n .map(item => `\\$${item?.alias}`)\n .join(', ');\n console?.warn?.(`[HttpModule]: Used an invalid HTTP-alias named \"${value}\", skipped parsing; Available aliases is one of (${available}).`);\n }\n\n return null;\n }\n\n}\n","import {HttpErrorResponse, HttpHandler, HttpInterceptor, HttpRequest} from '@angular/common/http';\nimport {HttpConfig} from '../classes/http.config';\nimport {inject, Injectable} from '@angular/core';\nimport {HttpError} from '../classes/http.error';\nimport {HTTP_CONFIG} from '../http.interfaces';\nimport {catchError} from 'rxjs/operators';\nimport {throwError} from 'rxjs';\n\n@Injectable()\nexport class ErrorInterceptor implements HttpInterceptor {\n\n // Dependencies.\n private readonly _config: HttpConfig = inject(HTTP_CONFIG);\n\n // State.\n private readonly _disabled = this._config?.disableErrorParsing ?? false;\n\n intercept(request: HttpRequest<unknown>, next: HttpHandler) {\n return next.handle(request).pipe(\n catchError(error => {\n // If we have a matching http error response\n // re-map it with our custom class (if not disabled).\n if (!this._disabled && error instanceof HttpErrorResponse) {\n const parsed = new HttpError(error);\n return throwError(() => parsed);\n }\n\n // We did not match anything, just re-trow the error.\n return throwError(() => error);\n })\n );\n }\n\n}\n","import {HTTP_CONFIG, HTTP_CONFIG_DATA, HttpConfigData} from './http.interfaces';\nimport {EnvironmentProviders, makeEnvironmentProviders} from '@angular/core';\nimport {BaseUrlInterceptor} from './interceptors/base-url.interceptor';\nimport {ErrorInterceptor} from './interceptors/error.interceptor';\nimport {HTTP_INTERCEPTORS} from '@angular/common/http';\nimport {HttpConfig} from './classes/http.config';\n\nexport function provideHttpConfig(config: HttpConfigData): EnvironmentProviders {\n return makeEnvironmentProviders([\n {provide: HTTP_CONFIG_DATA, useValue: config},\n {provide: HTTP_CONFIG, useFactory: createHttpConfig, deps: [HTTP_CONFIG_DATA]},\n {provide: HTTP_INTERCEPTORS, useClass: BaseUrlInterceptor, multi: true},\n {provide: HTTP_INTERCEPTORS, useClass: ErrorInterceptor, multi: true}\n ]);\n}\n\nexport function createHttpConfig(data: HttpConfigData) {\n return new HttpConfig(data);\n}\n","import {ModuleWithProviders, NgModule, Optional, SkipSelf} from '@angular/core';\nimport {HttpConfigData} from './http.interfaces';\nimport {provideHttpConfig} from './http.config';\n\n@NgModule()\nexport class HttpModule {\n\n constructor(@Optional() @SkipSelf() private _parent?: HttpModule) {\n if (this._parent) {\n throw new Error('HttpModule is already loaded; Import it in the core module only.');\n }\n }\n\n static forRoot(config: HttpConfigData): ModuleWithProviders<HttpModule> {\n return {\n ngModule: HttpModule,\n providers: [\n provideHttpConfig(config)\n ]\n };\n }\n\n}\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":"bravobit-bb-foundation-http.mjs","sources":["../../../projects/bb-foundation/http/src/lib/http.interfaces.ts","../../../projects/bb-foundation/http/src/lib/classes/http.config.ts","../../../projects/bb-foundation/http/src/lib/classes/http.error.ts","../../../projects/bb-foundation/http/src/lib/interceptors/base-url.interceptor.ts","../../../projects/bb-foundation/http/src/lib/interceptors/error.interceptor.ts","../../../projects/bb-foundation/http/src/lib/http.config.ts","../../../projects/bb-foundation/http/src/lib/http.module.ts","../../../projects/bb-foundation/http/src/bravobit-bb-foundation-http.ts"],"sourcesContent":["import {HttpConfig} from './classes/http.config';\nimport {InjectionToken} from '@angular/core';\n\nexport interface HttpConfigData {\n url: HttpConfigUrl;\n alias?: {\n prefix?: string;\n standard?: string;\n };\n disableErrorParsing?: boolean;\n}\n\nexport type HttpConfigPlatformUrl = string | { browser: string, server: string };\nexport type HttpConfigAlias = { alias: string, url: HttpConfigPlatformUrl };\nexport type HttpConfigUrl = HttpConfigPlatformUrl | HttpConfigAlias[];\n\nexport const HTTP_CONFIG = new InjectionToken<HttpConfig>('http config');\nexport const HTTP_CONFIG_DATA = new InjectionToken<HttpConfigData>('http config data');\n","import {HttpConfigAlias, HttpConfigData, HttpConfigUrl} from '../http.interfaces';\n\ndeclare let ngDevMode;\n\nexport class HttpConfig {\n\n readonly aliases: HttpConfigAlias[];\n readonly prefix: string;\n readonly defaultAlias: string;\n readonly disableErrorParsing: boolean;\n\n constructor(data: HttpConfigData) {\n // Get the data from the config.\n this.prefix = data?.alias?.prefix ?? '$';\n this.disableErrorParsing = data?.disableErrorParsing ?? false;\n\n // Parse the aliases.\n const standardAlias = data?.alias?.standard ?? 'api';\n this.aliases = this.parseAliases(data?.url, standardAlias);\n\n // Get the default alias.\n const firstAvailableAlias = this.aliases?.[0]?.alias ?? null;\n this.defaultAlias = `${this.prefix}${firstAvailableAlias}`;\n }\n\n private parseAliases = (value: HttpConfigUrl, standardAlias: string) => {\n if (!Array.isArray(value)) {\n value = [{alias: standardAlias, url: value}];\n }\n\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n const stringRegex = /^[a-zA-Z]+$/;\n for (const item of value) {\n if (!!item?.alias && !stringRegex.test(item?.alias)) {\n console?.warn?.(`[HttpModule]: Invalid HTTP-alias in HttpConfig named \"${item?.alias}\"; only latin characters should be used.`);\n }\n }\n }\n\n return value;\n };\n\n}\n","import {HttpErrorResponse} from '@angular/common/http';\n\nexport class HttpError extends HttpErrorResponse {\n\n constructor(error: HttpErrorResponse) {\n super(error);\n }\n\n get<T = any>(token: string, delimiter: string = '.') {\n const error = this.error ?? {};\n return (token ?? '')\n .split(delimiter)\n .reduce((previous, current) => previous?.[current] ? previous?.[current] : null, error) as T;\n }\n\n has(token: string, delimiter: string = '.') {\n return !!this.get(token, delimiter);\n }\n\n includes<T = any>(token: string, value: T) {\n const array = this.get<T[]>(token);\n return (array ?? []).includes(value);\n }\n\n}\n","import {HTTP_CONFIG, HttpConfigAlias, HttpConfigPlatformUrl} from '../http.interfaces';\nimport {HttpHandler, HttpInterceptor, HttpRequest} from '@angular/common/http';\nimport {inject, Injectable, PLATFORM_ID} from '@angular/core';\nimport {HttpConfig} from '../classes/http.config';\nimport {isPlatformServer} from '@angular/common';\n\ndeclare let ngDevMode;\n\n@Injectable()\nexport class BaseUrlInterceptor implements HttpInterceptor {\n\n // Dependencies.\n private readonly _config: HttpConfig = inject(HTTP_CONFIG);\n private readonly _platformId: Object = inject(PLATFORM_ID);\n\n // Aliases.\n private readonly _aliases: HttpConfigAlias[] = this._config?.aliases;\n private readonly _prefix: string = this._config?.prefix;\n private readonly _extractRegex: RegExp = new RegExp(`\\\\${this._prefix}[a-zA-Z]+`);\n\n intercept(request: HttpRequest<unknown>, next: HttpHandler) {\n const url = this.getUrlBasedOnAlias(request.url);\n const modified = request.clone({url});\n\n return next.handle(modified);\n }\n\n private getUrlBasedOnAlias(url: string) {\n const matches = this._extractRegex.exec(url);\n if (!matches) {\n return url;\n }\n\n return matches.reduce((previous, current) => {\n const alias = this.getAlias(current);\n const stringAlias = this.convertUrlToString(alias?.url);\n if (!stringAlias) {\n return previous;\n }\n\n return previous.replace(current, stringAlias);\n }, url);\n }\n\n private convertUrlToString(url: HttpConfigPlatformUrl) {\n if (typeof url === 'string') {\n return url;\n }\n\n return isPlatformServer(this._platformId)\n ? url?.server ?? url?.browser ?? null\n : url?.browser ?? null;\n }\n\n private getAlias(value: string) {\n const alias = value.replace(this._prefix, '');\n const fetched = this._aliases?.find(item => item.alias === alias) ?? null;\n if (fetched) {\n return fetched;\n }\n\n if (typeof ngDevMode === 'undefined' || ngDevMode) {\n const available = this._aliases\n .map(item => `\\$${item?.alias}`)\n .join(', ');\n console?.warn?.(`[HttpModule]: Used an invalid HTTP-alias named \"${value}\", skipped parsing; Available aliases is one of (${available}).`);\n }\n\n return null;\n }\n\n}\n","import {HttpErrorResponse, HttpHandler, HttpInterceptor, HttpRequest} from '@angular/common/http';\nimport {HttpConfig} from '../classes/http.config';\nimport {inject, Injectable} from '@angular/core';\nimport {HttpError} from '../classes/http.error';\nimport {HTTP_CONFIG} from '../http.interfaces';\nimport {catchError} from 'rxjs/operators';\nimport {throwError} from 'rxjs';\n\n@Injectable()\nexport class ErrorInterceptor implements HttpInterceptor {\n\n // Dependencies.\n private readonly _config: HttpConfig = inject(HTTP_CONFIG);\n\n // State.\n private readonly _disabled = this._config?.disableErrorParsing ?? false;\n\n intercept(request: HttpRequest<unknown>, next: HttpHandler) {\n return next.handle(request).pipe(\n catchError(error => {\n // If we have a matching http error response\n // re-map it with our custom class (if not disabled).\n if (!this._disabled && error instanceof HttpErrorResponse) {\n const parsed = new HttpError(error);\n return throwError(() => parsed);\n }\n\n // We did not match anything, just re-trow the error.\n return throwError(() => error);\n })\n );\n }\n\n}\n","import {HTTP_CONFIG, HTTP_CONFIG_DATA, HttpConfigData} from './http.interfaces';\nimport {EnvironmentProviders, makeEnvironmentProviders} from '@angular/core';\nimport {BaseUrlInterceptor} from './interceptors/base-url.interceptor';\nimport {ErrorInterceptor} from './interceptors/error.interceptor';\nimport {HTTP_INTERCEPTORS} from '@angular/common/http';\nimport {HttpConfig} from './classes/http.config';\n\nexport function provideHttpConfig(config: HttpConfigData): EnvironmentProviders {\n return makeEnvironmentProviders([\n {provide: HTTP_CONFIG_DATA, useValue: config},\n {provide: HTTP_CONFIG, useFactory: createHttpConfig, deps: [HTTP_CONFIG_DATA]},\n {provide: HTTP_INTERCEPTORS, useClass: BaseUrlInterceptor, multi: true},\n {provide: HTTP_INTERCEPTORS, useClass: ErrorInterceptor, multi: true}\n ]);\n}\n\nexport function createHttpConfig(data: HttpConfigData) {\n return new HttpConfig(data);\n}\n","import {ModuleWithProviders, NgModule, Optional, SkipSelf} from '@angular/core';\nimport {HttpConfigData} from './http.interfaces';\nimport {provideHttpConfig} from './http.config';\n\n@NgModule()\nexport class HttpModule {\n\n constructor(@Optional() @SkipSelf() private _parent?: HttpModule) {\n if (this._parent) {\n throw new Error('HttpModule is already loaded; Import it in the core module only.');\n }\n }\n\n static forRoot(config: HttpConfigData): ModuleWithProviders<HttpModule> {\n return {\n ngModule: HttpModule,\n providers: [\n provideHttpConfig(config)\n ]\n };\n }\n\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -845,10 +845,10 @@ class Localize {
845
845
  // If the parameter is a string fill in the blanks.
846
846
  return { token: tokenOrParams, optional: false, dictionary: null, data: {} };
847
847
  };
848
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: Localize, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
849
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: Localize, providedIn: 'root' });
848
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: Localize, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
849
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: Localize, providedIn: 'root' });
850
850
  }
851
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: Localize, decorators: [{
851
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: Localize, decorators: [{
852
852
  type: Injectable,
853
853
  args: [{
854
854
  providedIn: 'root'
@@ -980,10 +980,10 @@ class BbLocalizeTemplate {
980
980
  constructor(templateRef) {
981
981
  this.templateRef = templateRef;
982
982
  }
983
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: BbLocalizeTemplate, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
984
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.7", type: BbLocalizeTemplate, isStandalone: true, selector: "ng-template[bbLocalizeTemplate]", inputs: { name: ["bbLocalizeTemplate", "name"] }, ngImport: i0 });
983
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: BbLocalizeTemplate, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
984
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.12", type: BbLocalizeTemplate, isStandalone: true, selector: "ng-template[bbLocalizeTemplate]", inputs: { name: ["bbLocalizeTemplate", "name"] }, ngImport: i0 });
985
985
  }
986
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: BbLocalizeTemplate, decorators: [{
986
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: BbLocalizeTemplate, decorators: [{
987
987
  type: Directive,
988
988
  args: [{
989
989
  selector: 'ng-template[bbLocalizeTemplate]'
@@ -1060,10 +1060,10 @@ class BbLocalizeString {
1060
1060
  end.replace(escape, '\\$&')
1061
1061
  ];
1062
1062
  }
1063
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: BbLocalizeString, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
1064
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.7", type: BbLocalizeString, isStandalone: true, selector: "[bb-localize-string]", inputs: { substitutions: "substitutions", value: ["bb-localize-string", "value"] }, host: { classAttribute: "bb-localize-string" }, queries: [{ propertyName: "items", predicate: BbLocalizeTemplate }], ngImport: i0, template: "@for (component of components; track component) {\n <ng-template [bbTemplate]=\"component\">{{ component }}</ng-template>\n}\n", styles: [""], dependencies: [{ kind: "directive", type: BbTemplate, selector: "[bbTemplate]", inputs: ["bbTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1063
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: BbLocalizeString, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
1064
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.12", type: BbLocalizeString, isStandalone: true, selector: "[bb-localize-string]", inputs: { substitutions: "substitutions", value: ["bb-localize-string", "value"] }, host: { classAttribute: "bb-localize-string" }, queries: [{ propertyName: "items", predicate: BbLocalizeTemplate }], ngImport: i0, template: "@for (component of components; track component) {\n <ng-template [bbTemplate]=\"component\">{{ component }}</ng-template>\n}\n", styles: [""], dependencies: [{ kind: "directive", type: BbTemplate, selector: "[bbTemplate]", inputs: ["bbTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1065
1065
  }
1066
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: BbLocalizeString, decorators: [{
1066
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: BbLocalizeString, decorators: [{
1067
1067
  type: Component,
1068
1068
  args: [{ selector: '[bb-localize-string]', changeDetection: ChangeDetectionStrategy.OnPush, host: { 'class': 'bb-localize-string' }, encapsulation: ViewEncapsulation.None, imports: [BbTemplate], template: "@for (component of components; track component) {\n <ng-template [bbTemplate]=\"component\">{{ component }}</ng-template>\n}\n" }]
1069
1069
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { items: [{
@@ -1108,10 +1108,10 @@ class BbLocalize {
1108
1108
  // Return the combined params and options.
1109
1109
  return { ...params, ...options };
1110
1110
  }
1111
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: BbLocalize, deps: [{ token: Localize, optional: true }], target: i0.ɵɵFactoryTarget.Pipe });
1112
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.7", ngImport: i0, type: BbLocalize, isStandalone: true, name: "bbLocalize" });
1111
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: BbLocalize, deps: [{ token: Localize, optional: true }], target: i0.ɵɵFactoryTarget.Pipe });
1112
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.12", ngImport: i0, type: BbLocalize, isStandalone: true, name: "bbLocalize" });
1113
1113
  }
1114
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: BbLocalize, decorators: [{
1114
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: BbLocalize, decorators: [{
1115
1115
  type: Pipe,
1116
1116
  args: [{
1117
1117
  name: 'bbLocalize'
@@ -1159,15 +1159,15 @@ class LocalizeModule {
1159
1159
  ]
1160
1160
  };
1161
1161
  }
1162
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: LocalizeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1163
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.7", ngImport: i0, type: LocalizeModule, imports: [BbLocalize,
1162
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: LocalizeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1163
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.12", ngImport: i0, type: LocalizeModule, imports: [BbLocalize,
1164
1164
  BbLocalizeString,
1165
1165
  BbLocalizeTemplate], exports: [BbLocalize,
1166
1166
  BbLocalizeString,
1167
1167
  BbLocalizeTemplate] });
1168
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: LocalizeModule });
1168
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: LocalizeModule });
1169
1169
  }
1170
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.7", ngImport: i0, type: LocalizeModule, decorators: [{
1170
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.12", ngImport: i0, type: LocalizeModule, decorators: [{
1171
1171
  type: NgModule,
1172
1172
  args: [{
1173
1173
  imports: [