@koalarx/ui
Version:
Koala UI is a modern and accessible component library designed to speed up interface development in Angular projects. With simple integration and clear documentation, you can easily build robust and visually appealing applications.
1 lines • 5.86 kB
Source Map (JSON)
{"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 private readonly appConfig = inject(AppConfig);\r\n\r\n tapError(error: HttpErrorResponse) {\r\n const httpClientErrorsMiddleware =\r\n this.appConfig.httpClientErrorsMiddleware;\r\n const translations = this.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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"}