@koalarx/ui 20.0.6 → 20.0.8
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.
|
@@ -58,26 +58,26 @@ function generateQuerySelector(elem) {
|
|
|
58
58
|
|
|
59
59
|
class HttpErrorFeedbackAlert {
|
|
60
60
|
snackbar = inject(Snackbar);
|
|
61
|
-
httpClientErrorsMiddleware = AppConfig.httpClientErrorsMiddleware;
|
|
62
|
-
translations = AppConfig.translation.feedbackRequestInterceptor;
|
|
63
61
|
tapError(error) {
|
|
62
|
+
const httpClientErrorsMiddleware = AppConfig.httpClientErrorsMiddleware;
|
|
63
|
+
const translations = AppConfig.translation.feedbackRequestInterceptor;
|
|
64
64
|
const statusCode = error.status.toString();
|
|
65
65
|
if (statusCode.charAt(0) === '4') {
|
|
66
66
|
console.warn(error);
|
|
67
|
-
this.snackbar.warning(
|
|
68
|
-
|
|
67
|
+
this.snackbar.warning(httpClientErrorsMiddleware?.handleError(error) ??
|
|
68
|
+
translations[statusCode]);
|
|
69
69
|
return;
|
|
70
70
|
}
|
|
71
71
|
else if (statusCode.charAt(0) === '5') {
|
|
72
72
|
console.error(error);
|
|
73
|
-
this.snackbar.error(
|
|
74
|
-
|
|
73
|
+
this.snackbar.error(httpClientErrorsMiddleware?.handleError(error) ??
|
|
74
|
+
translations[statusCode]);
|
|
75
75
|
return;
|
|
76
76
|
}
|
|
77
77
|
else {
|
|
78
78
|
console.info(error);
|
|
79
|
-
this.snackbar.info(
|
|
80
|
-
|
|
79
|
+
this.snackbar.info(httpClientErrorsMiddleware?.handleError(error) ??
|
|
80
|
+
translations.unknowError);
|
|
81
81
|
return;
|
|
82
82
|
}
|
|
83
83
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"koalarx-ui-shared-utils.mjs","sources":["../../projects/koala-ui/shared/utils/is-empty.ts","../../projects/koala-ui/shared/utils/generate-query-selector.ts","../../projects/koala-ui/shared/utils/http-error-feedback-alert.ts","../../projects/koala-ui/shared/utils/koalarx-ui-shared-utils.ts"],"sourcesContent":["export function isEmpty(value: any) {\n return value === null || value === undefined || value === ''\n}\n","export function generateQuerySelector(elem: HTMLElement): string {\n const { tagName, id, className, parentElement } = elem;\n\n let str = '';\n\n if (id !== '' && id.match(/^[a-z].*/)) {\n str += `#${id}`;\n return str;\n }\n\n str = tagName.toLowerCase();\n\n if (className) {\n str +=\n '.' +\n className\n .replace(/(^\\s)/gm, '')\n .replace(/(\\s{2,})/gm, ' ')\n .split(/\\s/)\n .filter((c) => !/[[,\\]]/.test(c))\n .join('.');\n }\n\n const needNthPart = (el: HTMLElement): boolean => {\n let sib = el.previousElementSibling;\n\n if (!el.className) {\n return true;\n }\n\n while (sib) {\n if (el.className !== sib.className) {\n return false;\n }\n\n sib = sib.previousElementSibling;\n }\n\n return false;\n };\n\n const getNthPart = (el: HTMLElement): string => {\n let childIndex = 1;\n\n let sib = el.previousElementSibling;\n while (sib) {\n childIndex++;\n sib = sib.previousElementSibling;\n }\n\n return `:nth-child(${childIndex})`;\n };\n\n if (needNthPart(elem)) {\n str += getNthPart(elem);\n }\n\n if (!parentElement) {\n return str;\n }\n\n return `${generateQuerySelector(parentElement)} > ${str}`;\n}\n","import { HttpErrorResponse } from '@angular/common/http';\r\nimport { inject, Injectable } from '@angular/core';\r\nimport { AppConfig } from '@koalarx/ui/core/config';\r\nimport { Snackbar } from '@koalarx/ui/shared/components/snackbar';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class HttpErrorFeedbackAlert {\r\n private readonly snackbar = inject(Snackbar);\r\n
|
|
1
|
+
{"version":3,"file":"koalarx-ui-shared-utils.mjs","sources":["../../projects/koala-ui/shared/utils/is-empty.ts","../../projects/koala-ui/shared/utils/generate-query-selector.ts","../../projects/koala-ui/shared/utils/http-error-feedback-alert.ts","../../projects/koala-ui/shared/utils/koalarx-ui-shared-utils.ts"],"sourcesContent":["export function isEmpty(value: any) {\n return value === null || value === undefined || value === ''\n}\n","export function generateQuerySelector(elem: HTMLElement): string {\n const { tagName, id, className, parentElement } = elem;\n\n let str = '';\n\n if (id !== '' && id.match(/^[a-z].*/)) {\n str += `#${id}`;\n return str;\n }\n\n str = tagName.toLowerCase();\n\n if (className) {\n str +=\n '.' +\n className\n .replace(/(^\\s)/gm, '')\n .replace(/(\\s{2,})/gm, ' ')\n .split(/\\s/)\n .filter((c) => !/[[,\\]]/.test(c))\n .join('.');\n }\n\n const needNthPart = (el: HTMLElement): boolean => {\n let sib = el.previousElementSibling;\n\n if (!el.className) {\n return true;\n }\n\n while (sib) {\n if (el.className !== sib.className) {\n return false;\n }\n\n sib = sib.previousElementSibling;\n }\n\n return false;\n };\n\n const getNthPart = (el: HTMLElement): string => {\n let childIndex = 1;\n\n let sib = el.previousElementSibling;\n while (sib) {\n childIndex++;\n sib = sib.previousElementSibling;\n }\n\n return `:nth-child(${childIndex})`;\n };\n\n if (needNthPart(elem)) {\n str += getNthPart(elem);\n }\n\n if (!parentElement) {\n return str;\n }\n\n return `${generateQuerySelector(parentElement)} > ${str}`;\n}\n","import { HttpErrorResponse } from '@angular/common/http';\r\nimport { inject, Injectable } from '@angular/core';\r\nimport { AppConfig } from '@koalarx/ui/core/config';\r\nimport { Snackbar } from '@koalarx/ui/shared/components/snackbar';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class HttpErrorFeedbackAlert {\r\n private readonly snackbar = inject(Snackbar);\r\n\r\n tapError(error: HttpErrorResponse) {\r\n const httpClientErrorsMiddleware = AppConfig.httpClientErrorsMiddleware;\r\n const translations = AppConfig.translation.feedbackRequestInterceptor;\r\n const statusCode = error.status.toString();\r\n\r\n if (statusCode.charAt(0) === '4') {\r\n console.warn(error);\r\n\r\n this.snackbar.warning(\r\n httpClientErrorsMiddleware?.handleError(error) ??\r\n (translations as any)[statusCode]\r\n );\r\n return;\r\n } else if (statusCode.charAt(0) === '5') {\r\n console.error(error);\r\n\r\n this.snackbar.error(\r\n httpClientErrorsMiddleware?.handleError(error) ??\r\n (translations as any)[statusCode]\r\n );\r\n return;\r\n } else {\r\n console.info(error);\r\n\r\n this.snackbar.info(\r\n httpClientErrorsMiddleware?.handleError(error) ??\r\n translations.unknowError\r\n );\r\n return;\r\n }\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/fesm2022/koalarx-ui.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { HTTP_INTERCEPTORS, HttpClient } from '@angular/common/http';
|
|
1
|
+
import { provideHttpClient, HTTP_INTERCEPTORS, withInterceptorsFromDi, HttpClient } from '@angular/common/http';
|
|
2
2
|
import { provideMarkdown, MARKED_OPTIONS } from 'ngx-markdown';
|
|
3
3
|
import { provideEnvironmentNgxMask } from 'ngx-mask';
|
|
4
4
|
import * as i0 from '@angular/core';
|
|
@@ -135,8 +135,10 @@ function provideKoala(config) {
|
|
|
135
135
|
AppConfig.language = config?.language ?? 'en';
|
|
136
136
|
AppConfig.translation = getTranslationByLanguage(config?.language ?? 'en');
|
|
137
137
|
AppConfig.hostApi = config?.hostApi;
|
|
138
|
+
AppConfig.httpClientErrorsMiddleware = config?.httpClientErrorsMiddleware;
|
|
138
139
|
return [
|
|
139
140
|
provideEnvironmentNgxMask(maskOptions),
|
|
141
|
+
provideHttpClient(withInterceptorsFromDi()),
|
|
140
142
|
provideMarkdown({
|
|
141
143
|
loader: HttpClient,
|
|
142
144
|
markedOptions: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"koalarx-ui.mjs","sources":["../../projects/koala-ui/core/config/constants.ts","../../projects/koala-ui/core/interceptors/feedback-request-interceptor.ts","../../projects/koala-ui/core/translations/en.ts","../../projects/koala-ui/core/translations/ptbr.ts","../../projects/koala-ui/core/translations/get-translation-by-language.ts","../../projects/koala-ui/core/koala-provider.ts","../../projects/koala-ui/koalarx-ui.ts"],"sourcesContent":["import { HttpClientErrorsMiddleware } from '@koalarx/ui/core/middlewares';\nimport { KoalaLanguage, Translation } from '@koalarx/ui/core/translations';\n\nexport const GENERIC_COMPONENT_CONTAINER_NAME =\n '.kl-generic-component-container';\n\nexport class AppConfig {\n static hostApi: string | undefined;\n static language: KoalaLanguage;\n static translation: Translation;\n static httpClientErrorsMiddleware: HttpClientErrorsMiddleware | undefined;\n}\n","import {\n HttpInterceptor as AngularHttpInterceptor,\n HttpEvent,\n HttpHandler,\n HttpRequest,\n} from '@angular/common/http';\nimport { inject, Injectable } from '@angular/core';\nimport { HttpErrorFeedbackAlert } from '@koalarx/ui/shared/utils';\nimport { Observable } from 'rxjs/internal/Observable';\nimport { tap } from 'rxjs/internal/operators/tap';\n\n@Injectable()\nexport class FeedbackRequestInterceptor implements AngularHttpInterceptor {\n private readonly httpError = inject(HttpErrorFeedbackAlert);\n\n intercept(\n request: HttpRequest<any>,\n next: HttpHandler\n ): Observable<HttpEvent<any>> {\n return next.handle(request.clone()).pipe(\n tap({\n error: (error) => this.httpError.tapError(error),\n })\n );\n }\n}\n","import { Translation } from './translation.model';\n\nexport const en: Translation = {\n confirm: {\n btnLabelYes: 'Yes',\n btnLabelNo: 'No',\n },\n codeViewer: {\n copyToClipboard: 'Copy to clipboard',\n copiedToClipboard: 'Copied to clipboard',\n },\n form: {\n required: 'This field is required.',\n invalidEmail: 'Invalid email address',\n invalidMinLength: (minLength: number) =>\n `The field must have at least ${minLength} characters.`,\n invalidCPF: 'Invalid CPF',\n invalidCNPJ: 'Invalid CNPJ',\n invalidURL: 'Invalid URL',\n invalidPasswordHasSpecialCharacters:\n 'The password must contain special characters.',\n invalidPasswordHasLowercase: 'The password must contain lowercase letters.',\n invalidPasswordHasUppercase: 'The password must contain uppercase letters.',\n invalidPasswordHasNumber: 'The password must contain numbers.',\n invalidConfirmPassword: 'The confirmation password does not match.',\n },\n onThisPage: {\n title: 'On this page',\n },\n datatable: {\n btnFilterLabel: 'Filter',\n clearFilterTooltip: 'Clear filters',\n addFilterTooltip: 'Add filter',\n reloadListTooltip: 'Reload data',\n labelItemsPerPage: 'Items per page limit',\n },\n feedbackRequestInterceptor: {\n '400': 'An error occurred related to the submitted data',\n '401': 'Unauthorized access, please log in again.',\n '403': 'Access denied.',\n '404': 'No record found from the provided data.',\n '409': 'This record already exists',\n '422': 'Validation error in the submitted data.',\n '500': 'Please contact our support via WhatsApp.',\n '0': 'We identified an instability in communication with our server, this may occur due to rapid internet drops, slow connection, or server overload, please try again.',\n unknowError: 'An unknown error occurred, please try again.',\n },\n};\n","import { Translation } from './translation.model';\n\nexport const ptBr: Translation = {\n confirm: {\n btnLabelYes: 'Sim',\n btnLabelNo: 'Não',\n },\n codeViewer: {\n copyToClipboard: 'Copiar',\n copiedToClipboard: 'Copiado',\n },\n form: {\n required: 'O campo é obrigatório.',\n invalidEmail: 'E-mail inválido',\n invalidMinLength: (minLength: number) =>\n `O campo deve ter no mínimo ${minLength} caracteres.`,\n invalidCPF: 'CPF inválido',\n invalidCNPJ: 'CNPJ inválido',\n invalidURL: 'URL inválida',\n invalidPasswordHasSpecialCharacters:\n 'A senha deve conter caracteres especiais.',\n invalidPasswordHasLowercase: 'A senha deve conter letras minúsculas.',\n invalidPasswordHasUppercase: 'A senha deve conter letras maiúsculas.',\n invalidPasswordHasNumber: 'A senha deve conter números.',\n invalidConfirmPassword: 'A confirmação da senha não confere.',\n },\n onThisPage: {\n title: 'Nesta página',\n },\n datatable: {\n btnFilterLabel: 'Filtro',\n clearFilterTooltip: 'Limpar filtros',\n addFilterTooltip: 'Adicionar filtro',\n reloadListTooltip: 'Recarregar dados',\n labelItemsPerPage: 'Limite de itens por carregamento',\n },\n feedbackRequestInterceptor: {\n '400': 'Ocorreu um erro relacionado aos dados enviados',\n '401': 'Acesso não autorizado, por favor, faça login novamente.',\n '403': 'Acesso negado.',\n '404': 'Nenhum registro encontrado a partir dos dados informados.',\n '409': 'Este registro já existe',\n '422': 'Erro de validação nos dados enviados.',\n '500': 'Entre em contato com nosso suporte pelo canal do whatsapp.',\n '0': 'Identificamos uma instabilidade na comunicação com nosso servidor, isto pode ocorrer devido a rápidas quedas de internet, conexão lenta ou sobrecarga no servidor, por favor, tente novamente.',\n unknowError: 'Ocorreu um erro desconhecido, por favor, tente novamente.',\n },\n};\n","import { en } from './en';\nimport { ptBr } from './ptbr';\nimport { Translation } from './translation.model';\n\nexport type KoalaLanguage = 'en' | 'ptBr';\n\nexport function getTranslationByLanguage(language: KoalaLanguage): Translation {\n switch (language) {\n case 'en':\n return en;\n case 'ptBr':\n return ptBr;\n }\n}\n","import { HTTP_INTERCEPTORS, HttpClient } from '@angular/common/http';\nimport { Provider } from '@angular/core';\nimport { HttpClientErrorsMiddleware } from '@koalarx/ui/core/middlewares';\nimport { MARKED_OPTIONS, provideMarkdown } from 'ngx-markdown';\nimport { NgxMaskConfig, provideEnvironmentNgxMask } from 'ngx-mask';\nimport { AppConfig } from './config';\nimport { FeedbackRequestInterceptor } from './interceptors/feedback-request-interceptor';\nimport { getTranslationByLanguage, KoalaLanguage } from './translations';\n\nconst maskOptions: Partial<NgxMaskConfig> = {\n validation: false,\n thousandSeparator: '.',\n};\n\ninterface KoalaSettings {\n hostApi?: string;\n language?: KoalaLanguage;\n httpClientErrorsMiddleware?: HttpClientErrorsMiddleware;\n}\n\nexport function provideKoala(config?: KoalaSettings): Provider {\n AppConfig.language = config?.language ?? 'en';\n AppConfig.translation = getTranslationByLanguage(config?.language ?? 'en');\n AppConfig.hostApi = config?.hostApi;\n\n return [\n provideEnvironmentNgxMask(maskOptions),\n provideMarkdown({\n loader: HttpClient,\n markedOptions: {\n provide: MARKED_OPTIONS,\n useValue: {\n gfm: true,\n breaks: true,\n pedantic: false,\n },\n },\n }),\n {\n provide: HTTP_INTERCEPTORS,\n useClass: FeedbackRequestInterceptor,\n multi: true,\n },\n ];\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"koalarx-ui.mjs","sources":["../../projects/koala-ui/core/config/constants.ts","../../projects/koala-ui/core/interceptors/feedback-request-interceptor.ts","../../projects/koala-ui/core/translations/en.ts","../../projects/koala-ui/core/translations/ptbr.ts","../../projects/koala-ui/core/translations/get-translation-by-language.ts","../../projects/koala-ui/core/koala-provider.ts","../../projects/koala-ui/koalarx-ui.ts"],"sourcesContent":["import { HttpClientErrorsMiddleware } from '@koalarx/ui/core/middlewares';\nimport { KoalaLanguage, Translation } from '@koalarx/ui/core/translations';\n\nexport const GENERIC_COMPONENT_CONTAINER_NAME =\n '.kl-generic-component-container';\n\nexport class AppConfig {\n static hostApi: string | undefined;\n static language: KoalaLanguage;\n static translation: Translation;\n static httpClientErrorsMiddleware: HttpClientErrorsMiddleware | undefined;\n}\n","import {\n HttpInterceptor as AngularHttpInterceptor,\n HttpEvent,\n HttpHandler,\n HttpRequest,\n} from '@angular/common/http';\nimport { inject, Injectable } from '@angular/core';\nimport { HttpErrorFeedbackAlert } from '@koalarx/ui/shared/utils';\nimport { Observable } from 'rxjs/internal/Observable';\nimport { tap } from 'rxjs/internal/operators/tap';\n\n@Injectable()\nexport class FeedbackRequestInterceptor implements AngularHttpInterceptor {\n private readonly httpError = inject(HttpErrorFeedbackAlert);\n\n intercept(\n request: HttpRequest<any>,\n next: HttpHandler\n ): Observable<HttpEvent<any>> {\n return next.handle(request.clone()).pipe(\n tap({\n error: (error) => this.httpError.tapError(error),\n })\n );\n }\n}\n","import { Translation } from './translation.model';\n\nexport const en: Translation = {\n confirm: {\n btnLabelYes: 'Yes',\n btnLabelNo: 'No',\n },\n codeViewer: {\n copyToClipboard: 'Copy to clipboard',\n copiedToClipboard: 'Copied to clipboard',\n },\n form: {\n required: 'This field is required.',\n invalidEmail: 'Invalid email address',\n invalidMinLength: (minLength: number) =>\n `The field must have at least ${minLength} characters.`,\n invalidCPF: 'Invalid CPF',\n invalidCNPJ: 'Invalid CNPJ',\n invalidURL: 'Invalid URL',\n invalidPasswordHasSpecialCharacters:\n 'The password must contain special characters.',\n invalidPasswordHasLowercase: 'The password must contain lowercase letters.',\n invalidPasswordHasUppercase: 'The password must contain uppercase letters.',\n invalidPasswordHasNumber: 'The password must contain numbers.',\n invalidConfirmPassword: 'The confirmation password does not match.',\n },\n onThisPage: {\n title: 'On this page',\n },\n datatable: {\n btnFilterLabel: 'Filter',\n clearFilterTooltip: 'Clear filters',\n addFilterTooltip: 'Add filter',\n reloadListTooltip: 'Reload data',\n labelItemsPerPage: 'Items per page limit',\n },\n feedbackRequestInterceptor: {\n '400': 'An error occurred related to the submitted data',\n '401': 'Unauthorized access, please log in again.',\n '403': 'Access denied.',\n '404': 'No record found from the provided data.',\n '409': 'This record already exists',\n '422': 'Validation error in the submitted data.',\n '500': 'Please contact our support via WhatsApp.',\n '0': 'We identified an instability in communication with our server, this may occur due to rapid internet drops, slow connection, or server overload, please try again.',\n unknowError: 'An unknown error occurred, please try again.',\n },\n};\n","import { Translation } from './translation.model';\n\nexport const ptBr: Translation = {\n confirm: {\n btnLabelYes: 'Sim',\n btnLabelNo: 'Não',\n },\n codeViewer: {\n copyToClipboard: 'Copiar',\n copiedToClipboard: 'Copiado',\n },\n form: {\n required: 'O campo é obrigatório.',\n invalidEmail: 'E-mail inválido',\n invalidMinLength: (minLength: number) =>\n `O campo deve ter no mínimo ${minLength} caracteres.`,\n invalidCPF: 'CPF inválido',\n invalidCNPJ: 'CNPJ inválido',\n invalidURL: 'URL inválida',\n invalidPasswordHasSpecialCharacters:\n 'A senha deve conter caracteres especiais.',\n invalidPasswordHasLowercase: 'A senha deve conter letras minúsculas.',\n invalidPasswordHasUppercase: 'A senha deve conter letras maiúsculas.',\n invalidPasswordHasNumber: 'A senha deve conter números.',\n invalidConfirmPassword: 'A confirmação da senha não confere.',\n },\n onThisPage: {\n title: 'Nesta página',\n },\n datatable: {\n btnFilterLabel: 'Filtro',\n clearFilterTooltip: 'Limpar filtros',\n addFilterTooltip: 'Adicionar filtro',\n reloadListTooltip: 'Recarregar dados',\n labelItemsPerPage: 'Limite de itens por carregamento',\n },\n feedbackRequestInterceptor: {\n '400': 'Ocorreu um erro relacionado aos dados enviados',\n '401': 'Acesso não autorizado, por favor, faça login novamente.',\n '403': 'Acesso negado.',\n '404': 'Nenhum registro encontrado a partir dos dados informados.',\n '409': 'Este registro já existe',\n '422': 'Erro de validação nos dados enviados.',\n '500': 'Entre em contato com nosso suporte pelo canal do whatsapp.',\n '0': 'Identificamos uma instabilidade na comunicação com nosso servidor, isto pode ocorrer devido a rápidas quedas de internet, conexão lenta ou sobrecarga no servidor, por favor, tente novamente.',\n unknowError: 'Ocorreu um erro desconhecido, por favor, tente novamente.',\n },\n};\n","import { en } from './en';\nimport { ptBr } from './ptbr';\nimport { Translation } from './translation.model';\n\nexport type KoalaLanguage = 'en' | 'ptBr';\n\nexport function getTranslationByLanguage(language: KoalaLanguage): Translation {\n switch (language) {\n case 'en':\n return en;\n case 'ptBr':\n return ptBr;\n }\n}\n","import {\n HTTP_INTERCEPTORS,\n HttpClient,\n provideHttpClient,\n withInterceptorsFromDi,\n} from '@angular/common/http';\nimport { Provider } from '@angular/core';\nimport { HttpClientErrorsMiddleware } from '@koalarx/ui/core/middlewares';\nimport { MARKED_OPTIONS, provideMarkdown } from 'ngx-markdown';\nimport { NgxMaskConfig, provideEnvironmentNgxMask } from 'ngx-mask';\nimport { AppConfig } from './config';\nimport { FeedbackRequestInterceptor } from './interceptors/feedback-request-interceptor';\nimport { getTranslationByLanguage, KoalaLanguage } from './translations';\n\nconst maskOptions: Partial<NgxMaskConfig> = {\n validation: false,\n thousandSeparator: '.',\n};\n\ninterface KoalaSettings {\n hostApi?: string;\n language?: KoalaLanguage;\n httpClientErrorsMiddleware?: HttpClientErrorsMiddleware;\n}\n\nexport function provideKoala(config?: KoalaSettings): Provider {\n AppConfig.language = config?.language ?? 'en';\n AppConfig.translation = getTranslationByLanguage(config?.language ?? 'en');\n AppConfig.hostApi = config?.hostApi;\n AppConfig.httpClientErrorsMiddleware = config?.httpClientErrorsMiddleware;\n\n return [\n provideEnvironmentNgxMask(maskOptions),\n provideHttpClient(withInterceptorsFromDi()),\n provideMarkdown({\n loader: HttpClient,\n markedOptions: {\n provide: MARKED_OPTIONS,\n useValue: {\n gfm: true,\n breaks: true,\n pedantic: false,\n },\n },\n }),\n {\n provide: HTTP_INTERCEPTORS,\n useClass: FeedbackRequestInterceptor,\n multi: true,\n },\n ];\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/shared/utils/index.d.ts
CHANGED
|
@@ -7,8 +7,6 @@ declare function generateQuerySelector(elem: HTMLElement): string;
|
|
|
7
7
|
|
|
8
8
|
declare class HttpErrorFeedbackAlert {
|
|
9
9
|
private readonly snackbar;
|
|
10
|
-
private readonly httpClientErrorsMiddleware;
|
|
11
|
-
private readonly translations;
|
|
12
10
|
tapError(error: HttpErrorResponse): void;
|
|
13
11
|
static ɵfac: i0.ɵɵFactoryDeclaration<HttpErrorFeedbackAlert, never>;
|
|
14
12
|
static ɵprov: i0.ɵɵInjectableDeclaration<HttpErrorFeedbackAlert>;
|