@testgorilla/tgo-ui 6.2.3 → 6.2.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.
Files changed (165) hide show
  1. package/README.md +158 -53
  2. package/components/autocomplete/autocomplete.component.d.ts +2 -2
  3. package/components/badge/badge.component.d.ts +6 -6
  4. package/components/button/button.component.d.ts +4 -4
  5. package/components/checklist/checklist.component.d.ts +4 -5
  6. package/components/deprecated-paginator/deprecated-paginator.component.d.ts +2 -6
  7. package/components/dialog/dialog.component.d.ts +1 -1
  8. package/components/dialog/dialog.model.d.ts +2 -2
  9. package/components/dropdown/dropdown.component.d.ts +2 -2
  10. package/components/empty-state/empty-state.component.d.ts +2 -2
  11. package/components/file-upload/file-upload.component.d.ts +1 -1
  12. package/components/icon/icon-svg-content.d.ts +1 -1
  13. package/components/icon/icon.component.d.ts +2 -2
  14. package/components/icon/icon.model.d.ts +3 -3
  15. package/components/icon-label/icon-label.component.d.ts +1 -3
  16. package/components/logo/logo.component.d.ts +1 -1
  17. package/components/multi-input/multi-input.component.d.ts +1 -1
  18. package/components/navbar/mobile-navbar-side-sheet/mobile-navbar-side-sheet.component.d.ts +3 -3
  19. package/components/overflow-menu/overflow-menu.model.d.ts +1 -0
  20. package/components/password-criteria/password.component.d.ts +1 -1
  21. package/components/radial-progress/radial-progress.component.d.ts +2 -2
  22. package/components/radio-button/radio-button.component.d.ts +3 -3
  23. package/components/segmented-bar/segmented-bar.component.d.ts +1 -1
  24. package/components/segmented-button/segmented-button.component.d.ts +1 -1
  25. package/components/side-panel/side-panel.model.d.ts +1 -1
  26. package/components/side-sheet/side-sheet.component.d.ts +1 -1
  27. package/components/spider-chart/spider-chart.component.d.ts +2 -2
  28. package/components/spider-chart/spider-chart.model.d.ts +2 -2
  29. package/components/stepper/step-line-element.directive.d.ts +1 -1
  30. package/components/stepper/step.component.d.ts +1 -1
  31. package/components/stepper/stepper.component.d.ts +2 -2
  32. package/components/table/table.component.d.ts +2 -2
  33. package/components/tabs/tabs.component.d.ts +2 -2
  34. package/components/universal-skills/universal-skills-report.component.d.ts +1 -1
  35. package/fesm2022/testgorilla-tgo-ui-components-accordion.mjs +7 -25
  36. package/fesm2022/testgorilla-tgo-ui-components-accordion.mjs.map +1 -1
  37. package/fesm2022/testgorilla-tgo-ui-components-ai-caveat.mjs +2 -2
  38. package/fesm2022/testgorilla-tgo-ui-components-ai-caveat.mjs.map +1 -1
  39. package/fesm2022/testgorilla-tgo-ui-components-alert-banner.mjs +0 -1
  40. package/fesm2022/testgorilla-tgo-ui-components-alert-banner.mjs.map +1 -1
  41. package/fesm2022/testgorilla-tgo-ui-components-audio-waveform.mjs.map +1 -1
  42. package/fesm2022/testgorilla-tgo-ui-components-autocomplete.mjs +31 -18
  43. package/fesm2022/testgorilla-tgo-ui-components-autocomplete.mjs.map +1 -1
  44. package/fesm2022/testgorilla-tgo-ui-components-avatar.mjs +1 -1
  45. package/fesm2022/testgorilla-tgo-ui-components-avatar.mjs.map +1 -1
  46. package/fesm2022/testgorilla-tgo-ui-components-badge.mjs +6 -6
  47. package/fesm2022/testgorilla-tgo-ui-components-badge.mjs.map +1 -1
  48. package/fesm2022/testgorilla-tgo-ui-components-button.mjs +39 -19
  49. package/fesm2022/testgorilla-tgo-ui-components-button.mjs.map +1 -1
  50. package/fesm2022/testgorilla-tgo-ui-components-card.mjs +2 -2
  51. package/fesm2022/testgorilla-tgo-ui-components-card.mjs.map +1 -1
  52. package/fesm2022/testgorilla-tgo-ui-components-checkbox.mjs +38 -10
  53. package/fesm2022/testgorilla-tgo-ui-components-checkbox.mjs.map +1 -1
  54. package/fesm2022/testgorilla-tgo-ui-components-checklist.mjs +2 -2
  55. package/fesm2022/testgorilla-tgo-ui-components-checklist.mjs.map +1 -1
  56. package/fesm2022/testgorilla-tgo-ui-components-core.mjs +22 -16
  57. package/fesm2022/testgorilla-tgo-ui-components-core.mjs.map +1 -1
  58. package/fesm2022/testgorilla-tgo-ui-components-datepicker.mjs +6 -6
  59. package/fesm2022/testgorilla-tgo-ui-components-datepicker.mjs.map +1 -1
  60. package/fesm2022/testgorilla-tgo-ui-components-dialog.mjs +8 -8
  61. package/fesm2022/testgorilla-tgo-ui-components-dialog.mjs.map +1 -1
  62. package/fesm2022/testgorilla-tgo-ui-components-divider.mjs +2 -2
  63. package/fesm2022/testgorilla-tgo-ui-components-divider.mjs.map +1 -1
  64. package/fesm2022/testgorilla-tgo-ui-components-donut-chart.mjs +2 -2
  65. package/fesm2022/testgorilla-tgo-ui-components-donut-chart.mjs.map +1 -1
  66. package/fesm2022/testgorilla-tgo-ui-components-dropdown.mjs +18 -5
  67. package/fesm2022/testgorilla-tgo-ui-components-dropdown.mjs.map +1 -1
  68. package/fesm2022/testgorilla-tgo-ui-components-elevation-shadow.mjs +2 -2
  69. package/fesm2022/testgorilla-tgo-ui-components-elevation-shadow.mjs.map +1 -1
  70. package/fesm2022/testgorilla-tgo-ui-components-empty-state.mjs.map +1 -1
  71. package/fesm2022/testgorilla-tgo-ui-components-field.mjs +2 -3
  72. package/fesm2022/testgorilla-tgo-ui-components-field.mjs.map +1 -1
  73. package/fesm2022/testgorilla-tgo-ui-components-file-upload.mjs +5 -5
  74. package/fesm2022/testgorilla-tgo-ui-components-file-upload.mjs.map +1 -1
  75. package/fesm2022/testgorilla-tgo-ui-components-filter-button.mjs +2 -3
  76. package/fesm2022/testgorilla-tgo-ui-components-filter-button.mjs.map +1 -1
  77. package/fesm2022/testgorilla-tgo-ui-components-gaussian-chart.mjs +8 -7
  78. package/fesm2022/testgorilla-tgo-ui-components-gaussian-chart.mjs.map +1 -1
  79. package/fesm2022/testgorilla-tgo-ui-components-icon-label.mjs +0 -1
  80. package/fesm2022/testgorilla-tgo-ui-components-icon-label.mjs.map +1 -1
  81. package/fesm2022/testgorilla-tgo-ui-components-icon.mjs +1 -1
  82. package/fesm2022/testgorilla-tgo-ui-components-icon.mjs.map +1 -1
  83. package/fesm2022/testgorilla-tgo-ui-components-inline-field.mjs +1 -1
  84. package/fesm2022/testgorilla-tgo-ui-components-inline-field.mjs.map +1 -1
  85. package/fesm2022/testgorilla-tgo-ui-components-logo.mjs +2 -2
  86. package/fesm2022/testgorilla-tgo-ui-components-logo.mjs.map +1 -1
  87. package/fesm2022/testgorilla-tgo-ui-components-media-card.mjs +2 -7
  88. package/fesm2022/testgorilla-tgo-ui-components-media-card.mjs.map +1 -1
  89. package/fesm2022/testgorilla-tgo-ui-components-media-dialog.mjs +2 -2
  90. package/fesm2022/testgorilla-tgo-ui-components-media-dialog.mjs.map +1 -1
  91. package/fesm2022/testgorilla-tgo-ui-components-multi-input.mjs +1 -3
  92. package/fesm2022/testgorilla-tgo-ui-components-multi-input.mjs.map +1 -1
  93. package/fesm2022/testgorilla-tgo-ui-components-navbar.mjs +5 -5
  94. package/fesm2022/testgorilla-tgo-ui-components-navbar.mjs.map +1 -1
  95. package/fesm2022/testgorilla-tgo-ui-components-overflow-menu.mjs +28 -6
  96. package/fesm2022/testgorilla-tgo-ui-components-overflow-menu.mjs.map +1 -1
  97. package/fesm2022/testgorilla-tgo-ui-components-page-header.mjs +2 -2
  98. package/fesm2022/testgorilla-tgo-ui-components-page-header.mjs.map +1 -1
  99. package/fesm2022/testgorilla-tgo-ui-components-paginator.mjs.map +1 -1
  100. package/fesm2022/testgorilla-tgo-ui-components-password-criteria.mjs +4 -4
  101. package/fesm2022/testgorilla-tgo-ui-components-password-criteria.mjs.map +1 -1
  102. package/fesm2022/testgorilla-tgo-ui-components-password-strength.mjs +3 -3
  103. package/fesm2022/testgorilla-tgo-ui-components-password-strength.mjs.map +1 -1
  104. package/fesm2022/testgorilla-tgo-ui-components-phone-input.mjs +6 -6
  105. package/fesm2022/testgorilla-tgo-ui-components-phone-input.mjs.map +1 -1
  106. package/fesm2022/testgorilla-tgo-ui-components-progress-bar.mjs.map +1 -1
  107. package/fesm2022/testgorilla-tgo-ui-components-prompt.mjs +1 -1
  108. package/fesm2022/testgorilla-tgo-ui-components-prompt.mjs.map +1 -1
  109. package/fesm2022/testgorilla-tgo-ui-components-radial-progress.mjs +5 -3
  110. package/fesm2022/testgorilla-tgo-ui-components-radial-progress.mjs.map +1 -1
  111. package/fesm2022/testgorilla-tgo-ui-components-radio-button.mjs +42 -10
  112. package/fesm2022/testgorilla-tgo-ui-components-radio-button.mjs.map +1 -1
  113. package/fesm2022/testgorilla-tgo-ui-components-rating.mjs +3 -3
  114. package/fesm2022/testgorilla-tgo-ui-components-rating.mjs.map +1 -1
  115. package/fesm2022/testgorilla-tgo-ui-components-scale-table.mjs +2 -2
  116. package/fesm2022/testgorilla-tgo-ui-components-scale-table.mjs.map +1 -1
  117. package/fesm2022/testgorilla-tgo-ui-components-scale.mjs +3 -3
  118. package/fesm2022/testgorilla-tgo-ui-components-scale.mjs.map +1 -1
  119. package/fesm2022/testgorilla-tgo-ui-components-segmented-bar.mjs +4 -4
  120. package/fesm2022/testgorilla-tgo-ui-components-segmented-bar.mjs.map +1 -1
  121. package/fesm2022/testgorilla-tgo-ui-components-segmented-button.mjs +1 -1
  122. package/fesm2022/testgorilla-tgo-ui-components-segmented-button.mjs.map +1 -1
  123. package/fesm2022/testgorilla-tgo-ui-components-selectable-card.mjs.map +1 -1
  124. package/fesm2022/testgorilla-tgo-ui-components-side-panel.mjs +3 -3
  125. package/fesm2022/testgorilla-tgo-ui-components-side-panel.mjs.map +1 -1
  126. package/fesm2022/testgorilla-tgo-ui-components-side-sheet.mjs +4 -4
  127. package/fesm2022/testgorilla-tgo-ui-components-side-sheet.mjs.map +1 -1
  128. package/fesm2022/testgorilla-tgo-ui-components-skeleton.mjs.map +1 -1
  129. package/fesm2022/testgorilla-tgo-ui-components-slider.mjs +2 -2
  130. package/fesm2022/testgorilla-tgo-ui-components-snackbar.mjs +21 -5
  131. package/fesm2022/testgorilla-tgo-ui-components-snackbar.mjs.map +1 -1
  132. package/fesm2022/testgorilla-tgo-ui-components-spider-chart.mjs +3 -3
  133. package/fesm2022/testgorilla-tgo-ui-components-spider-chart.mjs.map +1 -1
  134. package/fesm2022/testgorilla-tgo-ui-components-spinner.mjs.map +1 -1
  135. package/fesm2022/testgorilla-tgo-ui-components-stepper.mjs +14 -11
  136. package/fesm2022/testgorilla-tgo-ui-components-stepper.mjs.map +1 -1
  137. package/fesm2022/testgorilla-tgo-ui-components-table.mjs +5 -5
  138. package/fesm2022/testgorilla-tgo-ui-components-table.mjs.map +1 -1
  139. package/fesm2022/testgorilla-tgo-ui-components-tabs.mjs +3 -3
  140. package/fesm2022/testgorilla-tgo-ui-components-tabs.mjs.map +1 -1
  141. package/fesm2022/testgorilla-tgo-ui-components-tag.mjs +25 -7
  142. package/fesm2022/testgorilla-tgo-ui-components-tag.mjs.map +1 -1
  143. package/fesm2022/testgorilla-tgo-ui-components-toggle.mjs +25 -9
  144. package/fesm2022/testgorilla-tgo-ui-components-toggle.mjs.map +1 -1
  145. package/fesm2022/testgorilla-tgo-ui-components-tooltip.mjs +14 -15
  146. package/fesm2022/testgorilla-tgo-ui-components-tooltip.mjs.map +1 -1
  147. package/fesm2022/testgorilla-tgo-ui-components-universal-skills.mjs +6 -6
  148. package/fesm2022/testgorilla-tgo-ui-components-universal-skills.mjs.map +1 -1
  149. package/fesm2022/testgorilla-tgo-ui-components-validation-error.mjs +2 -2
  150. package/fesm2022/testgorilla-tgo-ui-components-validation-error.mjs.map +1 -1
  151. package/fesm2022/testgorilla-tgo-ui.mjs +2 -7
  152. package/fesm2022/testgorilla-tgo-ui.mjs.map +1 -1
  153. package/package.json +85 -79
  154. package/projects/tgo-canopy-ui/theme/_alert-bars.scss +2 -1
  155. package/projects/tgo-canopy-ui/theme/_breakpoints-mixin.scss +6 -6
  156. package/projects/tgo-canopy-ui/theme/_core.scss +1 -1
  157. package/projects/tgo-canopy-ui/theme/_icon.scss +1 -1
  158. package/projects/tgo-canopy-ui/theme/_input.scss +108 -65
  159. package/projects/tgo-canopy-ui/theme/_lib-styles.scss +8 -7
  160. package/projects/tgo-canopy-ui/theme/_mat-paginator.scss +11 -10
  161. package/projects/tgo-canopy-ui/theme/_palette.scss +41 -29
  162. package/projects/tgo-canopy-ui/theme/_tooltip.scss +30 -30
  163. package/projects/tgo-canopy-ui/theme/_typography.scss +24 -14
  164. package/projects/tgo-canopy-ui/theme/_variables.scss +56 -56
  165. package/projects/tgo-canopy-ui/theme/theme.scss +19 -18
@@ -78,11 +78,13 @@ class EllipseTextDirective {
78
78
  this.onChangeTextState = new EventEmitter();
79
79
  }
80
80
  ngOnInit() {
81
- combineLatest([this.checkEllipsis$.pipe(startWith(null)), this.refreshEllipsis$.pipe(startWith(null))]).pipe(debounceTime(100)).subscribe(() => {
81
+ combineLatest([this.checkEllipsis$.pipe(startWith(null)), this.refreshEllipsis$.pipe(startWith(null))])
82
+ .pipe(debounceTime(100))
83
+ .subscribe(() => {
82
84
  const textElement = this.el.nativeElement;
83
85
  this.onChangeTextState.emit(this.isMultiline
84
- ? (textElement.clientHeight + this.maxDiffPixels) < textElement.scrollHeight
85
- : (textElement.clientWidth + this.maxDiffPixels) < textElement.scrollWidth);
86
+ ? textElement.clientHeight + this.maxDiffPixels < textElement.scrollHeight
87
+ : textElement.clientWidth + this.maxDiffPixels < textElement.scrollWidth);
86
88
  });
87
89
  }
88
90
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.19", ngImport: i0, type: EllipseTextDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
@@ -10585,10 +10587,10 @@ var IKeyboardEvent;
10585
10587
 
10586
10588
  const hexToRgbWithAlpha = (hex, alpha = 0.3) => {
10587
10589
  hex = hex.replace(/^#/, '');
10588
- let bigint = parseInt(hex, 16);
10589
- let r = (bigint >> 16) & 255;
10590
- let g = (bigint >> 8) & 255;
10591
- let b = bigint & 255;
10590
+ const bigint = parseInt(hex, 16);
10591
+ const r = (bigint >> 16) & 255;
10592
+ const g = (bigint >> 8) & 255;
10593
+ const b = bigint & 255;
10592
10594
  return `rgba(${r}, ${g}, ${b}, ${alpha})`;
10593
10595
  };
10594
10596
 
@@ -10663,9 +10665,13 @@ class AutocompleteUtils {
10663
10665
  static countMatchingWords(words, query, textField, isGroup = false) {
10664
10666
  const lowerCaseQuery = query.toLowerCase();
10665
10667
  if (isGroup) {
10666
- return words.filter(group => group.items.filter((item) => (typeof item === 'object' && textField) ? item[textField].toLowerCase().includes(lowerCaseQuery) : item.toLowerCase().includes(lowerCaseQuery)).length).length;
10668
+ return words.filter(group => group.items.filter((item) => typeof item === 'object' && textField
10669
+ ? item[textField].toLowerCase().includes(lowerCaseQuery)
10670
+ : item.toLowerCase().includes(lowerCaseQuery)).length).length;
10667
10671
  }
10668
- const matchingWords = words.filter(word => (typeof word === 'object' && textField) ? word[textField].toLowerCase().includes(lowerCaseQuery) : word.toLowerCase().includes(lowerCaseQuery));
10672
+ const matchingWords = words.filter(word => typeof word === 'object' && textField
10673
+ ? word[textField].toLowerCase().includes(lowerCaseQuery)
10674
+ : word.toLowerCase().includes(lowerCaseQuery));
10669
10675
  return matchingWords.length;
10670
10676
  }
10671
10677
  }
@@ -10698,8 +10704,8 @@ class DigitsOnlyDirective {
10698
10704
  }
10699
10705
  }
10700
10706
  onInput(event) {
10701
- if (!this.allowNegative && (event.target.value && +event.target.value < 0)) {
10702
- setTimeout(() => this.el.nativeElement.value = 0, 0);
10707
+ if (!this.allowNegative && event.target.value && +event.target.value < 0) {
10708
+ setTimeout(() => (this.el.nativeElement.value = 0), 0);
10703
10709
  }
10704
10710
  }
10705
10711
  validate(event, text) {
@@ -10803,7 +10809,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImpo
10803
10809
  type: Directive,
10804
10810
  args: [{
10805
10811
  selector: '[selectText]',
10806
- standalone: false
10812
+ standalone: false,
10807
10813
  }]
10808
10814
  }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { selectText: [{
10809
10815
  type: Input
@@ -11003,7 +11009,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.19", ngImpo
11003
11009
  type: Pipe,
11004
11010
  args: [{
11005
11011
  name: 'truncate',
11006
- standalone: true
11012
+ standalone: true,
11007
11013
  }]
11008
11014
  }] });
11009
11015
 
@@ -11015,7 +11021,7 @@ class DataPropertyGetterPipe {
11015
11021
  if (typeof obj === 'undefined' || obj === null) {
11016
11022
  return '';
11017
11023
  }
11018
- const splittedPath = path.split(/[\.\[\]\"\']{1,2}/);
11024
+ const splittedPath = path.split(/[.[\]"']{1,2}/);
11019
11025
  for (let i = 0, l = splittedPath.length; i < l; i++) {
11020
11026
  if (splittedPath[i] === '') {
11021
11027
  continue;
@@ -11234,8 +11240,8 @@ const alertBarsUtil = {
11234
11240
  },
11235
11241
  //Set css class for alertbanner
11236
11242
  setCssClass: (fullWidth, type, position, variant = 'banner') => {
11237
- const isFullWidth = !!fullWidth ? 'full-width' : '';
11238
- const _type = variant === 'banner' ? type : (type === 'success') ? 'info' : type;
11243
+ const isFullWidth = fullWidth ? 'full-width' : '';
11244
+ const _type = variant === 'banner' ? type : type === 'success' ? 'info' : type;
11239
11245
  return `${_type} ${position} ${isFullWidth} ${variant}`;
11240
11246
  },
11241
11247
  };
@@ -1 +1 @@
1
- {"version":3,"file":"testgorilla-tgo-ui-components-core.mjs","sources":["../../../components/core/language.model.ts","../../../components/core/language.service.ts","../../../components/core/ellipse-text.directive.ts","../../../components/core/ui-translate.pipe.ts","../../../components/core/keyboard-events.model.ts","../../../components/core/hex-to-rgb.ts","../../../components/core/autocomplete-utils.ts","../../../components/core/digits-only.directive.ts","../../../components/core/has-validation-error.pipe.ts","../../../components/core/select-text.directive.ts","../../../components/core/screen-breakpoints.model.ts","../../../components/core/is-mobile.ts","../../../components/core/is-large-tablet.ts","../../../components/core/colors.model.ts","../../../components/core/memoize-func.pipe.ts","../../../components/core/ui-ordinal-suffix.pipe.ts","../../../components/core/truncate.pipe.ts","../../../components/core/data-property-getter.pipe.ts","../../../components/core/dynamic-component.directive.ts","../../../components/core/color-contrast.ts","../../../components/core/alert-bars.utils.ts","../../../components/core/testgorilla-tgo-ui-components-core.ts"],"sourcesContent":["export enum Language {\n en = 'en',\n es = 'es',\n nl = 'nl',\n fr = 'fr',\n de = 'de',\n 'it-it' = 'it-it',\n 'ja-jp' = 'ja-jp',\n 'pt-br' = 'pt-br',\n 'da-dk' = 'da-dk',\n 'nb-no' = 'nb-no',\n 'pl-pl' = 'pl-pl',\n 'sv-se' = 'sv-se',\n}\n","import { Injectable } from '@angular/core';\nimport { Language } from './language.model';\nimport { BehaviorSubject, Observable, Subject } from 'rxjs';\n//This type enforces all translations are present when some translation needs to live in the frontend\nexport type TranslationMap = { [key in Language]: string };\n\n//This function retrieves all languages from the enum. It is used to initialize transloco\nexport const getAvailableLangs = () => Object.values(Language);\n\n//This type is intended for UI uses only\nexport type UILanguage = { code: Language | string; label: string };\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LanguageService {\n static readonly defaultLanguage = Language.en;\n\n readonly #currentLang$ = new BehaviorSubject(LanguageService.defaultLanguage);\n\n readonly defaultLanguageList: UILanguage[] = [\n { code: Language.en, label: 'English' },\n { code: Language.es, label: 'Spanish' },\n { code: Language.de, label: 'German' },\n { code: Language.fr, label: 'French' },\n { code: Language.nl, label: 'Dutch' },\n { code: Language['it-it'], label: 'Italian' },\n { code: Language['ja-jp'], label: 'Japanese' },\n { code: Language['pt-br'], label: 'Portuguese' },\n { code: Language['da-dk'], label: 'Danish' },\n { code: Language['nb-no'], label: 'Norwegian' },\n { code: Language['pl-pl'], label: 'Polish' },\n { code: Language['sv-se'], label: 'Swedish' },\n ];\n\n setActiveLang(language: Language): void {\n this.#currentLang$.next(language);\n }\n\n getActiveLang(): Observable<Language> {\n return this.#currentLang$.asObservable();\n }\n}\n","import { Directive, ElementRef, EventEmitter, HostListener, Input, OnInit, Output } from '@angular/core';\nimport { debounceTime, startWith, Subject, combineLatest } from 'rxjs';\n\n/**\n * Checks if element ellipsis\n */\n@Directive({\n selector: '[uiEllipseText]',\n standalone: true,\n})\nexport class EllipseTextDirective implements OnInit {\n @Input() isMultiline = false;\n @Input() maxDiffPixels = 0;\n checkEllipsis$ = new Subject<void>();\n refreshEllipsis$ = new Subject<void>();\n\n @Input() set refresh(_: any) {\n this.refreshEllipsis$.next();\n }\n\n @Output() onChangeTextState = new EventEmitter<boolean>();\n\n @HostListener('window:resize')\n resize(): void {\n this.checkEllipsis$.next();\n }\n\n constructor(private el: ElementRef) {}\n\n ngOnInit() {\n combineLatest([this.checkEllipsis$.pipe(startWith(null)), this.refreshEllipsis$.pipe(startWith(null))]).pipe(\n debounceTime(100)).subscribe(() => {\n const textElement = this.el.nativeElement as HTMLElement;\n this.onChangeTextState.emit(this.isMultiline\n ? (textElement.clientHeight + this.maxDiffPixels) < textElement.scrollHeight\n : (textElement.clientWidth + this.maxDiffPixels) < textElement.scrollWidth\n );\n });\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport en from './assets/i18n/en.json';\nimport es from './assets/i18n/es.json';\nimport de from './assets/i18n/de.json';\nimport * as daDk from './assets/i18n/da-dk.json';\nimport fr from './assets/i18n/fr.json';\nimport * as itIt from './assets/i18n/it-it.json';\nimport * as jaJp from './assets/i18n/ja-jp.json';\nimport * as nbNo from './assets/i18n/nb-no.json';\nimport nl from './assets/i18n/nl.json';\nimport * as plPl from './assets/i18n/pl-pl.json';\nimport * as ptBr from './assets/i18n/pt-br.json';\nimport * as svSe from './assets/i18n/sv-se.json';\nimport { LanguageService } from './language.service';\nimport { map, Observable } from 'rxjs';\n\n/**\n * Used for translations\n */\n@Pipe({\n name: 'uiTranslate',\n standalone: true,\n})\nexport class UiTranslatePipe implements PipeTransform {\n protected readonly LANGS: { [key: string]: any } = {\n en,\n es,\n de,\n 'da-dk': daDk,\n fr,\n 'it-it': itIt,\n 'ja-jp': jaJp,\n 'nb-no': nbNo,\n nl,\n 'pl-pl': plPl,\n 'pt-br': ptBr,\n 'sv-se': svSe,\n };\n\n constructor(private readonly languageService: LanguageService) {}\n /**\n * Finds the translation by keys with interpolation if provided\n * @param translateKey key, can have multiple keys separated with '.' eg ('KEY', 'FIRST_LVL_KEY.SECOND_LVL_KEY')\n * @param activeLang current active language\n * @param interpolationData data that will be used to replace interpolations in translated variant\n * For example, for translate text like this\n * 'You have {{attemptsAmount}} attempts left\n * the interpolation object should be { attemptsAmount: 10 }\n */\n transform(translateKey: string, interpolationData?: any): Observable<string> {\n return this.languageService.getActiveLang().pipe(\n map(activeLang => {\n const currentLangObject = JSON.parse(JSON.stringify(this.LANGS[activeLang]));\n const enLangObject = JSON.parse(JSON.stringify(this.LANGS['en']));\n const keys = translateKey.split('.');\n const translation = keys.reduce((acc, currentKey) => acc && acc[currentKey], currentLangObject);\n\n if (translation) {\n return this.interpolate(translation, interpolationData);\n }\n\n const englishTranslation = keys.reduce((acc, currentKey) => acc && acc[currentKey], enLangObject);\n return this.interpolate(englishTranslation, interpolationData);\n })\n )\n }\n\n /**\n * Used to find and replace interpolation in text\n * @param translation the translation text\n * @param interpolationData the interpolation object\n */\n private interpolate(translation: string, interpolationData: { [key: string]: any }): string {\n return translation?.replace(/{{(.*?)}}/g, (match: string, group: string) => {\n const value = interpolationData[group.trim()] as string;\n return value ?? match;\n });\n }\n}\n","export enum IKeyboardEvent {\n ENTER = 'Enter',\n SPACE = ' ',\n ARROW_DOWN = 'ArrowDown',\n ARROW_UP = 'ArrowUp',\n ESCAPE = 'Escape',\n HOME = 'Home',\n END = 'End',\n PAGE_UP = 'PageUp',\n PAGE_DOWN = 'PageDown',\n}\n","export const hexToRgbWithAlpha = (hex: string, alpha: number = 0.3): string => {\n hex = hex.replace(/^#/, '');\n\n let bigint = parseInt(hex, 16);\n let r = (bigint >> 16) & 255;\n let g = (bigint >> 8) & 255;\n let b = bigint & 255;\n\n return `rgba(${r}, ${g}, ${b}, ${alpha})`;\n}\n","export class AutocompleteUtils {\n static transformDisplayValue(value: any, textField: string): any {\n return AutocompleteUtils.isPrimitive(value) ? value : value?.[textField];\n }\n\n static filterItems(items: any, inputValue: string, textField?: string, isGroup = false): any {\n if (!AutocompleteUtils.isPrimitive(items) && textField) {\n if (isGroup) {\n return items.filter((group: any) => {\n group.filteredItems = group.items.filter((item: any) => item[textField].toLowerCase().includes(inputValue.toLowerCase()));\n return group.filteredItems.length;\n });\n }\n return items.filter((item: any) => item[textField].toLowerCase().includes(inputValue.toLowerCase()));\n } else {\n if (isGroup) {\n return items.filter((group: any) => group.items.filter((item: any) => item.toLowerCase().includes(inputValue.toLowerCase())).length);\n }\n return items.filter((item: any) => item.toLowerCase().includes(inputValue.toLowerCase()));\n }\n }\n\n static isPrimitive(value: any): boolean {\n if (Array.isArray(value)) {\n return value.some(item => typeof item !== 'object');\n } else {\n return typeof value !== 'object';\n }\n }\n\n static isArray(value: any): boolean {\n return Array.isArray(value);\n }\n\n /// NEW\n static throwInvalidSetupError(): void {\n throw new Error(\n `AutocompleteComponent textField/valueField properties are not provided!\\n\n Items list that has non primitive values requires textField & valueField to be passed.`\n );\n }\n\n static excludeSuggestions(items: any[], excludeItems: any[], valueField?: string): any[] {\n if (AutocompleteUtils.isPrimitive(items)) {\n return items?.filter(item => !excludeItems.find(excludeItem => excludeItem === item));\n } else {\n return valueField\n ? items?.filter(item => !excludeItems.find(excludeItem => excludeItem[valueField] === item[valueField]))\n : [];\n }\n }\n\n static shouldBeObject(value: any, textField: string, valueField: string): boolean {\n return !!valueField && !!textField && typeof value !== 'object';\n }\n\n static createValueItem(value: any, textField: string, valueField: string): any {\n return AutocompleteUtils.shouldBeObject(value, textField, valueField)\n ? { [textField]: value, [valueField]: value }\n : value;\n }\n\n static findDuplicate(value: any, selectedValue: any, lookupKey?: string): any {\n if (AutocompleteUtils.isArray(value)) {\n return value.find((v: any) => {\n if (!AutocompleteUtils.isPrimitive(v) && lookupKey) {\n return v[lookupKey] === selectedValue[lookupKey];\n }\n return v === selectedValue;\n });\n } else {\n return value === selectedValue;\n }\n }\n\n static countMatchingWords(words: any[], query: string, textField?: string, isGroup = false): number {\n const lowerCaseQuery = query.toLowerCase();\n if (isGroup) {\n return words.filter(group => group.items.filter((item: any) => (typeof item === 'object' && textField) ? item[textField].toLowerCase().includes(lowerCaseQuery) : item.toLowerCase().includes(lowerCaseQuery)).length).length;\n }\n const matchingWords = words.filter(word => (typeof word === 'object' && textField) ? word[textField].toLowerCase().includes(lowerCaseQuery) : word.toLowerCase().includes(lowerCaseQuery));\n return matchingWords.length;\n }\n}\n","import { Directive, ElementRef, HostListener, Input } from '@angular/core';\n\nconst ARROW_DOWN_KEY_CODE = 40;\n\n@Directive({\n selector: '[digitsOnly]',\n standalone: true,\n})\nexport class DigitsOnlyDirective {\n constructor(private el: ElementRef) {}\n\n @Input() allowNegative = false;\n @Input() allowDecimal = false;\n @Input() allowOnlyDigits = false;\n regex: RegExp;\n\n @HostListener('keypress', ['$event'])\n onKeyPress(event: KeyboardEvent) {\n this.validate(event, event.key);\n }\n\n @HostListener('paste', ['$event'])\n onPaste(event: Event) {\n const pastedText = <ClipboardEvent>event && (<ClipboardEvent>event)?.clipboardData?.getData('text/plain'); // Non-IE browsers\n this.validate(event, pastedText || '');\n }\n\n @HostListener('keydown', [`$event`])\n onKeydown(event: any) {\n if (!this.allowNegative) {\n if ((event as any).which === ARROW_DOWN_KEY_CODE && event.target.value && +event.target.value <= 0) {\n event.preventDefault();\n return;\n } else if ((event as any).which === ARROW_DOWN_KEY_CODE && event.target.value === '') {\n this.el.nativeElement.value = 1;\n return;\n }\n }\n }\n\n @HostListener('input', ['$event'])\n onInput(event: any) {\n if (!this.allowNegative && (event.target.value && +event.target.value < 0)) {\n setTimeout(() => this.el.nativeElement.value = 0, 0);\n }\n }\n\n validate(event: Event, text: string) {\n if (this.allowOnlyDigits) {\n const txtInput = this.el.nativeElement;\n const newValue =\n txtInput.value.substring(0, txtInput.selectionStart) + text + txtInput.value.substring(txtInput.selectionEnd);\n if (!this.regex) {\n this.regex = // eslint-disable-next-line no-eval\n eval(\n `/^${this.allowNegative ? '-?' : ''}${this.allowDecimal ? '((\\\\d+\\\\.?)|(\\\\.?))\\\\d*' : '\\\\d*'}$/g`\n ) as RegExp;\n }\n if (!newValue.match(this.regex)) {\n event.preventDefault();\n return;\n }\n }\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'hasValidationError',\n standalone: true,\n})\nexport class HasValidationErrorPipe implements PipeTransform {\n /**\n * List of the error types that are handled\n */\n private readonly errorTypes = ['maxlength', 'minlength', 'min', 'max', 'required', 'email'];\n\n /**\n * Checks if the error on the NgControl is in the list of handled error types\n * @param value\n */\n transform(value: Record<string, any> | null | undefined): boolean {\n return value ? !!Object.keys(value).filter(key => this.errorTypes.includes(key)).length : false;\n }\n}\n","import { Directive, ElementRef, Input, OnChanges } from '@angular/core';\n\n/**\n * the SelectTextDirective provides a dynamic way to highlight or style specific text within an element.\n */\n@Directive({\n selector: '[selectText]',\n standalone: false\n})\nexport class SelectTextDirective implements OnChanges {\n @Input() selectText: string | null;\n\n constructor(private el: ElementRef) {}\n\n /**\n * this method utilizes setTimeout to defer the execution until the next tick of the event loop.\n * The text content of the element is modified by wrapping occurrences of the specified selectText with a <span> element,\n * applying a bold font-weight style.\n */\n private setTextColor(): void {\n const textElement = this.el.nativeElement as HTMLElement;\n setTimeout(() => {\n const { textContent } = textElement;\n if (this.selectText && textContent) {\n textElement.innerHTML = textContent.replace(\n new RegExp(this.selectText, 'gmi'),\n match => `<span style=\"font-weight: bold\" >${match}</span>`\n );\n }\n }, 0);\n }\n\n ngOnChanges(): void {\n if (this.selectText) {\n this.setTextColor();\n }\n }\n}\n","export enum ScreenBreakpoints {\n MOBILE = 600,\n TABLET = 1023,\n LARGE_TABLET = 1280,\n}\n","import { inject, InjectionToken } from '@angular/core';\nimport { BreakpointObserver } from '@angular/cdk/layout';\nimport { map } from 'rxjs';\nimport { ScreenBreakpoints } from './screen-breakpoints.model';\n\nexport const IS_MOBILE_TOKEN = new InjectionToken('Is mobile', {\n factory: () => {\n const breakpointObserver = inject(BreakpointObserver);\n return breakpointObserver.observe(`(max-width: ${ScreenBreakpoints.MOBILE}px)`).pipe(map(v => v.matches));\n },\n});\n","import { inject, InjectionToken } from '@angular/core';\r\nimport { BreakpointObserver } from '@angular/cdk/layout';\r\nimport { map } from 'rxjs';\r\nimport { ScreenBreakpoints } from './screen-breakpoints.model';\r\n\r\nexport const IS_LARGE_TABLET_TOKEN = new InjectionToken('Is large tablet', {\r\n factory: () => {\r\n const breakpointObserver = inject(BreakpointObserver);\r\n return breakpointObserver.observe(`(max-width: ${ScreenBreakpoints.LARGE_TABLET}px)`).pipe(map(v => v.matches));\r\n },\r\n});\r\n","export enum Color {\n // Teal colors\n TGO_TEAL_60B = '#1C443C',\n TGO_TEAL_30B = '#31766A',\n TGO_TEAL_DEFAULT = '#46A997',\n TGO_TEAL_30W = '#7EC3B6',\n TGO_TEAL_60W = '#B5DDD5',\n TGO_TEAL_SECONDARY = '#CBD6CB',\n TGO_TEAL_90W = '#ECF6F5',\n\n // Petrol colors\n TGO_PETROL_60B = '#102930',\n TGO_PETROL_30B = '#1B4754',\n TGO_PETROL_DEFAULT = '#276678',\n TGO_PETROL_30W = '#6894A0',\n TGO_PETROL_60W = '#A9C2C9',\n TGO_PETROL_SECONDARY = '#C8D7DE',\n TGO_PETROL_90W = '#E9F0F1',\n\n // Error colors\n TGO_ERROR_60B = '#513131',\n TGO_ERROR_30B = '#8E5655',\n TGO_ERROR_60W = '#E3C3C6',\n TGO_ERROR_SECONDARY = '#F0DAD9',\n TGO_ERROR_DEFAULT = '#CB7B7A',\n\n // Warning colors\n TGO_WARNING_SECONDARY = '#F0D6BB',\n TGO_WARNING_DEFAULT = '#CCA45F',\n\n // Black colors - grayscale\n TGO_BLACK = '#000000',\n TGO_DARK = '#888888',\n TGO_MEDIUM = '#E0E0E0',\n TGO_GREY = '#EDEDED',\n TGO_LIGHT = '#F6F6F6',\n TGO_WHITE = '#FFFFFF',\n\n // Brand colors\n BRAND_60 = '#A90686',\n BRAND_50 = '#D410AA',\n BRAND_40 = '#FF54DA',\n BRAND_30 = '#FFB3EE',\n BRAND_20 = '#FFE6FA',\n BRAND_10 = '#FFF2FC',\n\n // Grayscale colors\n GRAYSCALE_50 = '#666666',\n GRAYSCALE_40 = '#919191',\n GRAYSCALE_30 = '#D3D3D3',\n GRAYSCALE_20 = '#E9E9E9',\n GRAYSCALE_10 = '#F4F4F4',\n\n // Additional colors\n BLACK = '#242424',\n\n // Accent colors\n ACCENT_20 = '#FFF5ED',\n ACCENT_10 = '#FFFAF6',\n\n // Informative colors\n INFORMATIVE_50 = '#1A47AA',\n INFORMATIVE_40 = '#0165FC',\n INFORMATIVE_30 = '#277CFD',\n INFORMATIVE_20 = '#99C1FE',\n INFORMATIVE_10 = '#D9E8FF',\n\n // Success colors\n SUCCESS_50 = '#3C9A13',\n SUCCESS_40 = '#56C71A',\n SUCCESS_30 = '#80D63E',\n SUCCESS_20 = '#AAE47A',\n SUCCESS_10 = '#D4F2C3',\n\n // Error additional colors\n ERROR_50 = '#E02800',\n ERROR_40 = '#FF3003',\n ERROR_30 = '#FF6E4F',\n ERROR_20 = '#FFAC9A',\n ERROR_10 = '#FFEAE6',\n\n // Warning additional colors\n WARNING_50 = '#D07D00',\n WARNING_40 = '#FF9A03',\n WARNING_30 = '#FFC268',\n WARNING_20 = '#FFE1B3',\n WARNING_10 = '#FFF5E6',\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n/**\n * USAGE:\n * {{ argument | memoizeFunc : method [: context] }}\n *\n * You could provide multiple arguments for the function like that:\n * {{ [argument1, argument2] | memoizeFunc : method [: context] }}\n *\n *\n * FUNCTION WITH CONTEXT\n * We still could have optimization in impure functions with Angular pipes. Just provide context as second parameter\n * to the memoizeFunc pipe.\n *\n * {{ argument | memoizeFunc : method : this }}\n *\n * Alternative variant use 'bind'\n *\n * {{ argument | memoizeFunc : method.bind(this) }}\n *\n * */\n@Pipe({\n name: 'memoizeFunc',\n standalone: true,\n})\nexport class MemoizeFuncPipe implements PipeTransform {\n transform<T, K>(value: T, handler: (value: T) => K, context?: any): K {\n if (context) {\n return handler.call(context, value);\n }\n\n return handler(value);\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'ordinalSuffix',\n standalone: true,\n})\nexport class OrdinalSuffixPipe implements PipeTransform {\n\n transform(value: number): string {\n const lastDigit = value % 10;\n const lastTwoDigits = value % 100;\n\n if (lastTwoDigits >= 11 && lastTwoDigits <= 13) {\n return 'PERCENTILE_SUFFIXES.TH';\n }\n\n switch (lastDigit) {\n case 1:\n return 'PERCENTILE_SUFFIXES.ST';\n case 2:\n return 'PERCENTILE_SUFFIXES.ND';\n case 3:\n return 'PERCENTILE_SUFFIXES.RD';\n default:\n return 'PERCENTILE_SUFFIXES.TH';\n }\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'truncate',\n standalone: true\n})\nexport class TruncatePipe implements PipeTransform {\n transform(input: any, length?: number, suffix?: string, preserve?: boolean): any {\n if (typeof input !== 'string') {\n return input;\n }\n\n length = length === undefined ? input.length : length;\n\n if (input.length <= length) {\n return input;\n }\n\n preserve = preserve || false;\n suffix = suffix || '';\n let index = length;\n\n if (preserve) {\n if (input.indexOf(' ', length) === -1) {\n index = input.length;\n } else {\n index = input.indexOf(' ', length);\n }\n }\n\n return input.substring(0, index) + suffix;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n// TODO: Check type (backend could return a number)\ntype DataPropertyGetterType = string;\n\n@Pipe({\n name: 'dataPropertyGetter',\n standalone: true,\n})\nexport class DataPropertyGetterPipe implements PipeTransform {\n transform(obj: object, keyName: string = '') {\n return this.getDeepVal(obj, keyName);\n }\n\n private getDeepVal(obj: any, path: string) {\n if (typeof obj === 'undefined' || obj === null) {\n return '';\n }\n const splittedPath = path.split(/[\\.\\[\\]\\\"\\']{1,2}/);\n for (let i = 0, l = splittedPath.length; i < l; i++) {\n if (splittedPath[i] === '') {\n continue;\n }\n obj = obj[splittedPath[i]];\n if (typeof obj === 'undefined' || obj === null) {\n return '';\n }\n }\n return obj;\n }\n}\n","import { ComponentRef, Directive, EventEmitter, Input, OnDestroy, Type, ViewContainerRef } from '@angular/core';\nimport { Subscription } from 'rxjs';\n\ninterface IComponentRenderer {\n component: Type<any>;\n inputs?: any;\n outputs?: { [key: string]: any };\n}\n\n@Directive({\n selector: '[dynamicComponent]',\n standalone: true,\n})\nexport class DynamicComponentDirective implements OnDestroy {\n private subscription = new Subscription();\n private compRef: ComponentRef<any>;\n\n @Input() set dynamicComponent(componentRenderer: IComponentRenderer) {\n if (componentRenderer.component) {\n this.compRef = this.vcr.createComponent(componentRenderer.component);\n\n if (componentRenderer.inputs) {\n Object.keys(componentRenderer.inputs).map(\n inputName => (this.compRef.instance[inputName] = componentRenderer.inputs[inputName])\n );\n }\n\n if (componentRenderer.outputs) {\n Object.keys(componentRenderer.outputs).map(output => {\n this.subscription.add(\n (this.compRef.instance[output] as EventEmitter<any>).subscribe(componentRenderer.outputs?.[output])\n );\n });\n }\n }\n }\n\n constructor(private vcr: ViewContainerRef) {}\n\n ngOnDestroy() {\n if (this.compRef) {\n this.compRef.destroy();\n }\n this.subscription.unsubscribe();\n }\n}\n","/**\n * Function for adjusting the lightness of a color based on different events (hover, pressed, disabled).\n * Accepts a hex color, transforms it to HSL, and based on color's L and event darkens or lightens it.\n * Used to manage different colors based on application configuration\n *\n * @param hexColor color in hex format\n * @param typeEvent interaction event\n * @param theme\n */\nexport const adjustLightness = (hexColor: string, typeEvent: 'hover' | 'pressed' | 'disabled', theme: 'new' | 'classic' = 'new'): string => {\n const hexRegex = /^#([0-9A-F]{3}){1,2}$/i;\n if (hexColor && !hexRegex.test(hexColor)) {\n throw new Error('Invalid HEX color format');\n }\n\n const hslColor = hexToHsl(hexColor);\n const lightness = hslColor.l * 100;\n\n if (theme === 'new') {\n if (lightness > 70 && (typeEvent === 'hover' || typeEvent === 'pressed')) {\n hslColor.l = clamp(hslColor.l - 10 / 100);\n } else if (lightness < 30 && (typeEvent === 'hover' || typeEvent === 'pressed')) {\n hslColor.l = clamp(hslColor.l + 10 / 100);\n } else if (lightness < 70 && lightness > 30 && (typeEvent === 'hover' || typeEvent === 'pressed')) {\n hslColor.l = clamp(hslColor.l - 10 / 100);\n }\n } else {\n if (lightness > 70 && typeEvent === 'hover') {\n hslColor.l = clamp(hslColor.l - 10 / 100);\n } else if (lightness < 30 && typeEvent === 'hover') {\n hslColor.l = clamp(hslColor.l + 10 / 100);\n } else if (lightness < 70 && lightness > 30 && typeEvent === 'hover') {\n hslColor.l = clamp(hslColor.l - 10 / 100);\n } else if (lightness > 70 && typeEvent === 'pressed') {\n hslColor.l = clamp(hslColor.l - 20 / 100);\n } else if (lightness < 30 && typeEvent === 'pressed') {\n hslColor.l = clamp(hslColor.l + 30 / 100);\n } else if (lightness < 70 && lightness > 30 && typeEvent === 'pressed') {\n hslColor.l = clamp(hslColor.l - 20 / 100);\n } else if (lightness > 70 && typeEvent === 'disabled') {\n hslColor.l = clamp(hslColor.l + 10 / 100);\n } else if (lightness < 30 && typeEvent === 'disabled') {\n hslColor.l = clamp(hslColor.l + 50 / 100);\n } else if (lightness < 70 && lightness > 30 && typeEvent === 'disabled') {\n hslColor.l = clamp(hslColor.l + 20 / 100);\n }\n }\n\n return hslToHex(hslColor);\n};\n\n/**\n * Transforms hex color to HSL in object variation.\n * @param hexColor string value with hex color\n */\nexport const hexToHsl = (hexColor: string): { h: number; s: number; l: number } => {\n const rgbColor = parseInt(hexColor.slice(1), 16);\n const r = ((rgbColor >> 16) & 255) / 255;\n const g = ((rgbColor >> 8) & 255) / 255;\n const b = (rgbColor & 255) / 255;\n\n const max = Math.max(r, g, b);\n const min = Math.min(r, g, b);\n\n let h = 0;\n let s;\n const l = (max + min) / 2;\n\n if (max === min) {\n h = s = 0; // grayscale\n } else {\n const d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n h = (r - g) / d + 4;\n break;\n }\n\n h /= 6;\n }\n\n return { h, s, l };\n};\n\n/**\n * Transforms HSL color, represented as an object and transforms it to hex string.\n * @param hslColor accepts the HSL color like an object.\n */\nexport const hslToHex = (hslColor: { h: number; s: number; l: number }): string => {\n const { h, s, l } = hslColor;\n\n const hueToRgb = (p: number, q: number, t: number): number => {\n if (t < 0) {\n t += 1;\n }\n if (t > 1) {\n t -= 1;\n }\n if (t < 1 / 6) {\n return p + (q - p) * 6 * t;\n }\n if (t < 1 / 2) {\n return q;\n }\n if (t < 2 / 3) {\n return p + (q - p) * (2 / 3 - t) * 6;\n }\n return p;\n };\n\n const q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n const p = 2 * l - q;\n\n const r = hueToRgb(p, q, h + 1 / 3);\n const g = hueToRgb(p, q, h);\n const b = hueToRgb(p, q, h - 1 / 3);\n\n const rgbColor = (Math.round(r * 255) << 16) | (Math.round(g * 255) << 8) | Math.round(b * 255);\n\n return `#${rgbColor.toString(16).padStart(6, '0')}`;\n};\n\n/**\n * Restricts the value to be within the range [0, 1].\n * @param value\n */\nconst clamp = (value: number): number => Math.min(Math.max(value, 0), 1);\n","import { AlertVariant } from './alert-bar.model';\n\nexport const alertBarsUtil = {\n //Set css class and iconName according type\n setIcon: (alertType: string): string => {\n if (alertType === 'success') {\n return 'Round-check';\n }\n if (alertType === 'info') {\n return 'Info';\n }\n if (alertType === 'warning') {\n return 'Warning';\n }\n if (alertType === 'error') {\n return 'Error';\n }\n return '';\n },\n\n //Set cssClass for fixed or static position\n setPosition: (fixed: boolean): string => {\n if (fixed === true) {\n return 'fixed';\n } else {\n return 'static';\n }\n },\n\n //Set css class for alertbanner\n setCssClass: (fullWidth: boolean, type: string, position: string, variant: AlertVariant = 'banner'): string => {\n const isFullWidth = !!fullWidth ? 'full-width' : '';\n const _type = variant === 'banner' ? type : (type === 'success') ? 'info' : type;\n return `${_type} ${position} ${isFullWidth} ${variant}`;\n },\n};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["daDk","itIt","jaJp","nbNo","plPl","ptBr","svSe","i1.LanguageService"],"mappings":";;;;;IAAY;AAAZ,CAAA,UAAY,QAAQ,EAAA;AAClB,IAAA,QAAA,CAAA,IAAA,CAAA,GAAA,IAAS;AACT,IAAA,QAAA,CAAA,IAAA,CAAA,GAAA,IAAS;AACT,IAAA,QAAA,CAAA,IAAA,CAAA,GAAA,IAAS;AACT,IAAA,QAAA,CAAA,IAAA,CAAA,GAAA,IAAS;AACT,IAAA,QAAA,CAAA,IAAA,CAAA,GAAA,IAAS;AACT,IAAA,QAAA,CAAA,OAAA,CAAA,GAAA,OAAiB;AACjB,IAAA,QAAA,CAAA,OAAA,CAAA,GAAA,OAAiB;AACjB,IAAA,QAAA,CAAA,OAAA,CAAA,GAAA,OAAiB;AACjB,IAAA,QAAA,CAAA,OAAA,CAAA,GAAA,OAAiB;AACjB,IAAA,QAAA,CAAA,OAAA,CAAA,GAAA,OAAiB;AACjB,IAAA,QAAA,CAAA,OAAA,CAAA,GAAA,OAAiB;AACjB,IAAA,QAAA,CAAA,OAAA,CAAA,GAAA,OAAiB;AACnB,CAAC,EAbW,QAAQ,KAAR,QAAQ,GAAA,EAAA,CAAA,CAAA;;;ACMpB;AACO,MAAM,iBAAiB,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,QAAQ;MAQhD,eAAe,CAAA;AAH5B,IAAA,WAAA,GAAA;QAMW,IAAA,CAAA,aAAa,GAAG,IAAI,eAAe,CAAC,EAAe,CAAC,eAAe,CAAC;AAEpE,QAAA,IAAA,CAAA,mBAAmB,GAAiB;YAC3C,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE;YACvC,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE;YACvC,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE;YACtC,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE;YACtC,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;YACrC,EAAE,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE;YAC7C,EAAE,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE;YAC9C,EAAE,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE;YAChD,EAAE,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE;YAC5C,EAAE,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE;YAC/C,EAAE,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE;YAC5C,EAAE,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE;SAC9C;AASF,IAAA;AA1BiB,IAAA,SAAA,IAAA,CAAA,eAAe,GAAG,QAAQ,CAAC,EAAE,CAAC;AAErC,IAAA,aAAa;AAiBtB,IAAA,aAAa,CAAC,QAAkB,EAAA;AAC9B,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC;IACnC;IAEA,aAAa,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE;IAC1C;+GA1BW,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAf,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,cAFd,MAAM,EAAA,CAAA,CAAA;;;4FAEP,eAAe,EAAA,UAAA,EAAA,CAAA;kBAH3B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA;;;ACXD;;AAEG;MAKU,oBAAoB,CAAA;IAM/B,IAAa,OAAO,CAAC,CAAM,EAAA;AACzB,QAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE;IAC9B;IAKA,MAAM,GAAA;AACJ,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE;IAC5B;AAEA,IAAA,WAAA,CAAoB,EAAc,EAAA;QAAd,IAAA,CAAA,EAAE,GAAF,EAAE;QAhBb,IAAA,CAAA,WAAW,GAAG,KAAK;QACnB,IAAA,CAAA,aAAa,GAAG,CAAC;AAC1B,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,OAAO,EAAQ;AACpC,QAAA,IAAA,CAAA,gBAAgB,GAAG,IAAI,OAAO,EAAQ;AAM5B,QAAA,IAAA,CAAA,iBAAiB,GAAG,IAAI,YAAY,EAAW;IAOpB;IAErC,QAAQ,GAAA;AACN,QAAA,aAAa,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAC1G,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,MAAK;AAClC,YAAA,MAAM,WAAW,GAAG,IAAI,CAAC,EAAE,CAAC,aAA4B;AACxD,YAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC;AAC/B,kBAAE,CAAC,WAAW,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,IAAI,WAAW,CAAC;AAChE,kBAAE,CAAC,WAAW,CAAC,WAAW,GAAG,IAAI,CAAC,aAAa,IAAI,WAAW,CAAC,WAAW,CAC3E;AACH,QAAA,CAAC,CAAC;IACJ;+GA5BW,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAApB,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,aAAA,EAAA,eAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,eAAA,EAAA,UAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAJhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA;+EAEU,WAAW,EAAA,CAAA;sBAAnB;gBACQ,aAAa,EAAA,CAAA;sBAArB;gBAIY,OAAO,EAAA,CAAA;sBAAnB;gBAIS,iBAAiB,EAAA,CAAA;sBAA1B;gBAGD,MAAM,EAAA,CAAA;sBADL,YAAY;uBAAC,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
1
+ {"version":3,"file":"testgorilla-tgo-ui-components-core.mjs","sources":["../../../components/core/language.model.ts","../../../components/core/language.service.ts","../../../components/core/ellipse-text.directive.ts","../../../components/core/ui-translate.pipe.ts","../../../components/core/keyboard-events.model.ts","../../../components/core/hex-to-rgb.ts","../../../components/core/autocomplete-utils.ts","../../../components/core/digits-only.directive.ts","../../../components/core/has-validation-error.pipe.ts","../../../components/core/select-text.directive.ts","../../../components/core/screen-breakpoints.model.ts","../../../components/core/is-mobile.ts","../../../components/core/is-large-tablet.ts","../../../components/core/colors.model.ts","../../../components/core/memoize-func.pipe.ts","../../../components/core/ui-ordinal-suffix.pipe.ts","../../../components/core/truncate.pipe.ts","../../../components/core/data-property-getter.pipe.ts","../../../components/core/dynamic-component.directive.ts","../../../components/core/color-contrast.ts","../../../components/core/alert-bars.utils.ts","../../../components/core/testgorilla-tgo-ui-components-core.ts"],"sourcesContent":["export enum Language {\n en = 'en',\n es = 'es',\n nl = 'nl',\n fr = 'fr',\n de = 'de',\n 'it-it' = 'it-it',\n 'ja-jp' = 'ja-jp',\n 'pt-br' = 'pt-br',\n 'da-dk' = 'da-dk',\n 'nb-no' = 'nb-no',\n 'pl-pl' = 'pl-pl',\n 'sv-se' = 'sv-se',\n}\n","import { Injectable } from '@angular/core';\nimport { Language } from './language.model';\nimport { BehaviorSubject, Observable } from 'rxjs';\n//This type enforces all translations are present when some translation needs to live in the frontend\nexport type TranslationMap = { [key in Language]: string };\n\n//This function retrieves all languages from the enum. It is used to initialize transloco\nexport const getAvailableLangs = () => Object.values(Language);\n\n//This type is intended for UI uses only\nexport type UILanguage = { code: Language | string; label: string };\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LanguageService {\n static readonly defaultLanguage = Language.en;\n\n readonly #currentLang$ = new BehaviorSubject(LanguageService.defaultLanguage);\n\n readonly defaultLanguageList: UILanguage[] = [\n { code: Language.en, label: 'English' },\n { code: Language.es, label: 'Spanish' },\n { code: Language.de, label: 'German' },\n { code: Language.fr, label: 'French' },\n { code: Language.nl, label: 'Dutch' },\n { code: Language['it-it'], label: 'Italian' },\n { code: Language['ja-jp'], label: 'Japanese' },\n { code: Language['pt-br'], label: 'Portuguese' },\n { code: Language['da-dk'], label: 'Danish' },\n { code: Language['nb-no'], label: 'Norwegian' },\n { code: Language['pl-pl'], label: 'Polish' },\n { code: Language['sv-se'], label: 'Swedish' },\n ];\n\n setActiveLang(language: Language): void {\n this.#currentLang$.next(language);\n }\n\n getActiveLang(): Observable<Language> {\n return this.#currentLang$.asObservable();\n }\n}\n","import { Directive, ElementRef, EventEmitter, HostListener, Input, OnInit, Output } from '@angular/core';\nimport { debounceTime, startWith, Subject, combineLatest } from 'rxjs';\n\n/**\n * Checks if element ellipsis\n */\n@Directive({\n selector: '[uiEllipseText]',\n standalone: true,\n})\nexport class EllipseTextDirective implements OnInit {\n @Input() isMultiline = false;\n @Input() maxDiffPixels = 0;\n checkEllipsis$ = new Subject<void>();\n refreshEllipsis$ = new Subject<void>();\n\n @Input() set refresh(_: any) {\n this.refreshEllipsis$.next();\n }\n\n @Output() onChangeTextState = new EventEmitter<boolean>();\n\n @HostListener('window:resize')\n resize(): void {\n this.checkEllipsis$.next();\n }\n\n constructor(private el: ElementRef) {}\n\n ngOnInit() {\n combineLatest([this.checkEllipsis$.pipe(startWith(null)), this.refreshEllipsis$.pipe(startWith(null))])\n .pipe(debounceTime(100))\n .subscribe(() => {\n const textElement = this.el.nativeElement as HTMLElement;\n this.onChangeTextState.emit(\n this.isMultiline\n ? textElement.clientHeight + this.maxDiffPixels < textElement.scrollHeight\n : textElement.clientWidth + this.maxDiffPixels < textElement.scrollWidth\n );\n });\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport en from './assets/i18n/en.json';\nimport es from './assets/i18n/es.json';\nimport de from './assets/i18n/de.json';\nimport * as daDk from './assets/i18n/da-dk.json';\nimport fr from './assets/i18n/fr.json';\nimport * as itIt from './assets/i18n/it-it.json';\nimport * as jaJp from './assets/i18n/ja-jp.json';\nimport * as nbNo from './assets/i18n/nb-no.json';\nimport nl from './assets/i18n/nl.json';\nimport * as plPl from './assets/i18n/pl-pl.json';\nimport * as ptBr from './assets/i18n/pt-br.json';\nimport * as svSe from './assets/i18n/sv-se.json';\nimport { LanguageService } from './language.service';\nimport { map, Observable } from 'rxjs';\n\n/**\n * Used for translations\n */\n@Pipe({\n name: 'uiTranslate',\n standalone: true,\n})\nexport class UiTranslatePipe implements PipeTransform {\n protected readonly LANGS: { [key: string]: any } = {\n en,\n es,\n de,\n 'da-dk': daDk,\n fr,\n 'it-it': itIt,\n 'ja-jp': jaJp,\n 'nb-no': nbNo,\n nl,\n 'pl-pl': plPl,\n 'pt-br': ptBr,\n 'sv-se': svSe,\n };\n\n constructor(private readonly languageService: LanguageService) {}\n /**\n * Finds the translation by keys with interpolation if provided\n * @param translateKey key, can have multiple keys separated with '.' eg ('KEY', 'FIRST_LVL_KEY.SECOND_LVL_KEY')\n * @param activeLang current active language\n * @param interpolationData data that will be used to replace interpolations in translated variant\n * For example, for translate text like this\n * 'You have {{attemptsAmount}} attempts left\n * the interpolation object should be { attemptsAmount: 10 }\n */\n transform(translateKey: string, interpolationData?: any): Observable<string> {\n return this.languageService.getActiveLang().pipe(\n map(activeLang => {\n const currentLangObject = JSON.parse(JSON.stringify(this.LANGS[activeLang]));\n const enLangObject = JSON.parse(JSON.stringify(this.LANGS['en']));\n const keys = translateKey.split('.');\n const translation = keys.reduce((acc, currentKey) => acc && acc[currentKey], currentLangObject);\n\n if (translation) {\n return this.interpolate(translation, interpolationData);\n }\n\n const englishTranslation = keys.reduce((acc, currentKey) => acc && acc[currentKey], enLangObject);\n return this.interpolate(englishTranslation, interpolationData);\n })\n );\n }\n\n /**\n * Used to find and replace interpolation in text\n * @param translation the translation text\n * @param interpolationData the interpolation object\n */\n private interpolate(translation: string, interpolationData: { [key: string]: any }): string {\n return translation?.replace(/{{(.*?)}}/g, (match: string, group: string) => {\n const value = interpolationData[group.trim()] as string;\n return value ?? match;\n });\n }\n}\n","export enum IKeyboardEvent {\n ENTER = 'Enter',\n SPACE = ' ',\n ARROW_DOWN = 'ArrowDown',\n ARROW_UP = 'ArrowUp',\n ESCAPE = 'Escape',\n HOME = 'Home',\n END = 'End',\n PAGE_UP = 'PageUp',\n PAGE_DOWN = 'PageDown',\n}\n","export const hexToRgbWithAlpha = (hex: string, alpha: number = 0.3): string => {\n hex = hex.replace(/^#/, '');\n\n const bigint = parseInt(hex, 16);\n const r = (bigint >> 16) & 255;\n const g = (bigint >> 8) & 255;\n const b = bigint & 255;\n\n return `rgba(${r}, ${g}, ${b}, ${alpha})`;\n};\n","export class AutocompleteUtils {\n static transformDisplayValue(value: any, textField: string): any {\n return AutocompleteUtils.isPrimitive(value) ? value : value?.[textField];\n }\n\n static filterItems(items: any, inputValue: string, textField?: string, isGroup = false): any {\n if (!AutocompleteUtils.isPrimitive(items) && textField) {\n if (isGroup) {\n return items.filter((group: any) => {\n group.filteredItems = group.items.filter((item: any) =>\n item[textField].toLowerCase().includes(inputValue.toLowerCase())\n );\n return group.filteredItems.length;\n });\n }\n return items.filter((item: any) => item[textField].toLowerCase().includes(inputValue.toLowerCase()));\n } else {\n if (isGroup) {\n return items.filter(\n (group: any) =>\n group.items.filter((item: any) => item.toLowerCase().includes(inputValue.toLowerCase())).length\n );\n }\n return items.filter((item: any) => item.toLowerCase().includes(inputValue.toLowerCase()));\n }\n }\n\n static isPrimitive(value: any): boolean {\n if (Array.isArray(value)) {\n return value.some(item => typeof item !== 'object');\n } else {\n return typeof value !== 'object';\n }\n }\n\n static isArray(value: any): boolean {\n return Array.isArray(value);\n }\n\n /// NEW\n static throwInvalidSetupError(): void {\n throw new Error(\n `AutocompleteComponent textField/valueField properties are not provided!\\n\n Items list that has non primitive values requires textField & valueField to be passed.`\n );\n }\n\n static excludeSuggestions(items: any[], excludeItems: any[], valueField?: string): any[] {\n if (AutocompleteUtils.isPrimitive(items)) {\n return items?.filter(item => !excludeItems.find(excludeItem => excludeItem === item));\n } else {\n return valueField\n ? items?.filter(item => !excludeItems.find(excludeItem => excludeItem[valueField] === item[valueField]))\n : [];\n }\n }\n\n static shouldBeObject(value: any, textField: string, valueField: string): boolean {\n return !!valueField && !!textField && typeof value !== 'object';\n }\n\n static createValueItem(value: any, textField: string, valueField: string): any {\n return AutocompleteUtils.shouldBeObject(value, textField, valueField)\n ? { [textField]: value, [valueField]: value }\n : value;\n }\n\n static findDuplicate(value: any, selectedValue: any, lookupKey?: string): any {\n if (AutocompleteUtils.isArray(value)) {\n return value.find((v: any) => {\n if (!AutocompleteUtils.isPrimitive(v) && lookupKey) {\n return v[lookupKey] === selectedValue[lookupKey];\n }\n return v === selectedValue;\n });\n } else {\n return value === selectedValue;\n }\n }\n\n static countMatchingWords(words: any[], query: string, textField?: string, isGroup = false): number {\n const lowerCaseQuery = query.toLowerCase();\n if (isGroup) {\n return words.filter(\n group =>\n group.items.filter((item: any) =>\n typeof item === 'object' && textField\n ? item[textField].toLowerCase().includes(lowerCaseQuery)\n : item.toLowerCase().includes(lowerCaseQuery)\n ).length\n ).length;\n }\n const matchingWords = words.filter(word =>\n typeof word === 'object' && textField\n ? word[textField].toLowerCase().includes(lowerCaseQuery)\n : word.toLowerCase().includes(lowerCaseQuery)\n );\n return matchingWords.length;\n }\n}\n","import { Directive, ElementRef, HostListener, Input } from '@angular/core';\n\nconst ARROW_DOWN_KEY_CODE = 40;\n\n@Directive({\n selector: '[digitsOnly]',\n standalone: true,\n})\nexport class DigitsOnlyDirective {\n constructor(private el: ElementRef) {}\n\n @Input() allowNegative = false;\n @Input() allowDecimal = false;\n @Input() allowOnlyDigits = false;\n regex: RegExp;\n\n @HostListener('keypress', ['$event'])\n onKeyPress(event: KeyboardEvent) {\n this.validate(event, event.key);\n }\n\n @HostListener('paste', ['$event'])\n onPaste(event: Event) {\n const pastedText = (event as ClipboardEvent) && (event as ClipboardEvent)?.clipboardData?.getData('text/plain'); // Non-IE browsers\n this.validate(event, pastedText || '');\n }\n\n @HostListener('keydown', [`$event`])\n onKeydown(event: any) {\n if (!this.allowNegative) {\n if (event.which === ARROW_DOWN_KEY_CODE && event.target.value && +event.target.value <= 0) {\n event.preventDefault();\n return;\n } else if (event.which === ARROW_DOWN_KEY_CODE && event.target.value === '') {\n this.el.nativeElement.value = 1;\n return;\n }\n }\n }\n\n @HostListener('input', ['$event'])\n onInput(event: any) {\n if (!this.allowNegative && event.target.value && +event.target.value < 0) {\n setTimeout(() => (this.el.nativeElement.value = 0), 0);\n }\n }\n\n validate(event: Event, text: string) {\n if (this.allowOnlyDigits) {\n const txtInput = this.el.nativeElement;\n const newValue =\n txtInput.value.substring(0, txtInput.selectionStart) + text + txtInput.value.substring(txtInput.selectionEnd);\n if (!this.regex) {\n this.regex = // eslint-disable-next-line no-eval\n eval(\n `/^${this.allowNegative ? '-?' : ''}${this.allowDecimal ? '((\\\\d+\\\\.?)|(\\\\.?))\\\\d*' : '\\\\d*'}$/g`\n ) as RegExp;\n }\n if (!newValue.match(this.regex)) {\n event.preventDefault();\n return;\n }\n }\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'hasValidationError',\n standalone: true,\n})\nexport class HasValidationErrorPipe implements PipeTransform {\n /**\n * List of the error types that are handled\n */\n private readonly errorTypes = ['maxlength', 'minlength', 'min', 'max', 'required', 'email'];\n\n /**\n * Checks if the error on the NgControl is in the list of handled error types\n * @param value\n */\n transform(value: Record<string, any> | null | undefined): boolean {\n return value ? !!Object.keys(value).filter(key => this.errorTypes.includes(key)).length : false;\n }\n}\n","import { Directive, ElementRef, Input, OnChanges } from '@angular/core';\n\n/**\n * the SelectTextDirective provides a dynamic way to highlight or style specific text within an element.\n */\n@Directive({\n selector: '[selectText]',\n standalone: false,\n})\nexport class SelectTextDirective implements OnChanges {\n @Input() selectText: string | null;\n\n constructor(private el: ElementRef) {}\n\n /**\n * this method utilizes setTimeout to defer the execution until the next tick of the event loop.\n * The text content of the element is modified by wrapping occurrences of the specified selectText with a <span> element,\n * applying a bold font-weight style.\n */\n private setTextColor(): void {\n const textElement = this.el.nativeElement as HTMLElement;\n setTimeout(() => {\n const { textContent } = textElement;\n if (this.selectText && textContent) {\n textElement.innerHTML = textContent.replace(\n new RegExp(this.selectText, 'gmi'),\n match => `<span style=\"font-weight: bold\" >${match}</span>`\n );\n }\n }, 0);\n }\n\n ngOnChanges(): void {\n if (this.selectText) {\n this.setTextColor();\n }\n }\n}\n","export enum ScreenBreakpoints {\n MOBILE = 600,\n TABLET = 1023,\n LARGE_TABLET = 1280,\n}\n","import { inject, InjectionToken } from '@angular/core';\nimport { BreakpointObserver } from '@angular/cdk/layout';\nimport { map } from 'rxjs';\nimport { ScreenBreakpoints } from './screen-breakpoints.model';\n\nexport const IS_MOBILE_TOKEN = new InjectionToken('Is mobile', {\n factory: () => {\n const breakpointObserver = inject(BreakpointObserver);\n return breakpointObserver.observe(`(max-width: ${ScreenBreakpoints.MOBILE}px)`).pipe(map(v => v.matches));\n },\n});\n","import { inject, InjectionToken } from '@angular/core';\r\nimport { BreakpointObserver } from '@angular/cdk/layout';\r\nimport { map } from 'rxjs';\r\nimport { ScreenBreakpoints } from './screen-breakpoints.model';\r\n\r\nexport const IS_LARGE_TABLET_TOKEN = new InjectionToken('Is large tablet', {\r\n factory: () => {\r\n const breakpointObserver = inject(BreakpointObserver);\r\n return breakpointObserver.observe(`(max-width: ${ScreenBreakpoints.LARGE_TABLET}px)`).pipe(map(v => v.matches));\r\n },\r\n});\r\n","export enum Color {\n // Teal colors\n TGO_TEAL_60B = '#1C443C',\n TGO_TEAL_30B = '#31766A',\n TGO_TEAL_DEFAULT = '#46A997',\n TGO_TEAL_30W = '#7EC3B6',\n TGO_TEAL_60W = '#B5DDD5',\n TGO_TEAL_SECONDARY = '#CBD6CB',\n TGO_TEAL_90W = '#ECF6F5',\n\n // Petrol colors\n TGO_PETROL_60B = '#102930',\n TGO_PETROL_30B = '#1B4754',\n TGO_PETROL_DEFAULT = '#276678',\n TGO_PETROL_30W = '#6894A0',\n TGO_PETROL_60W = '#A9C2C9',\n TGO_PETROL_SECONDARY = '#C8D7DE',\n TGO_PETROL_90W = '#E9F0F1',\n\n // Error colors\n TGO_ERROR_60B = '#513131',\n TGO_ERROR_30B = '#8E5655',\n TGO_ERROR_60W = '#E3C3C6',\n TGO_ERROR_SECONDARY = '#F0DAD9',\n TGO_ERROR_DEFAULT = '#CB7B7A',\n\n // Warning colors\n TGO_WARNING_SECONDARY = '#F0D6BB',\n TGO_WARNING_DEFAULT = '#CCA45F',\n\n // Black colors - grayscale\n TGO_BLACK = '#000000',\n TGO_DARK = '#888888',\n TGO_MEDIUM = '#E0E0E0',\n TGO_GREY = '#EDEDED',\n TGO_LIGHT = '#F6F6F6',\n TGO_WHITE = '#FFFFFF',\n\n // Brand colors\n BRAND_60 = '#A90686',\n BRAND_50 = '#D410AA',\n BRAND_40 = '#FF54DA',\n BRAND_30 = '#FFB3EE',\n BRAND_20 = '#FFE6FA',\n BRAND_10 = '#FFF2FC',\n\n // Grayscale colors\n GRAYSCALE_50 = '#666666',\n GRAYSCALE_40 = '#919191',\n GRAYSCALE_30 = '#D3D3D3',\n GRAYSCALE_20 = '#E9E9E9',\n GRAYSCALE_10 = '#F4F4F4',\n\n // Additional colors\n BLACK = '#242424',\n\n // Accent colors\n ACCENT_20 = '#FFF5ED',\n ACCENT_10 = '#FFFAF6',\n\n // Informative colors\n INFORMATIVE_50 = '#1A47AA',\n INFORMATIVE_40 = '#0165FC',\n INFORMATIVE_30 = '#277CFD',\n INFORMATIVE_20 = '#99C1FE',\n INFORMATIVE_10 = '#D9E8FF',\n\n // Success colors\n SUCCESS_50 = '#3C9A13',\n SUCCESS_40 = '#56C71A',\n SUCCESS_30 = '#80D63E',\n SUCCESS_20 = '#AAE47A',\n SUCCESS_10 = '#D4F2C3',\n\n // Error additional colors\n ERROR_50 = '#E02800',\n ERROR_40 = '#FF3003',\n ERROR_30 = '#FF6E4F',\n ERROR_20 = '#FFAC9A',\n ERROR_10 = '#FFEAE6',\n\n // Warning additional colors\n WARNING_50 = '#D07D00',\n WARNING_40 = '#FF9A03',\n WARNING_30 = '#FFC268',\n WARNING_20 = '#FFE1B3',\n WARNING_10 = '#FFF5E6',\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n/**\n * USAGE:\n * {{ argument | memoizeFunc : method [: context] }}\n *\n * You could provide multiple arguments for the function like that:\n * {{ [argument1, argument2] | memoizeFunc : method [: context] }}\n *\n *\n * FUNCTION WITH CONTEXT\n * We still could have optimization in impure functions with Angular pipes. Just provide context as second parameter\n * to the memoizeFunc pipe.\n *\n * {{ argument | memoizeFunc : method : this }}\n *\n * Alternative variant use 'bind'\n *\n * {{ argument | memoizeFunc : method.bind(this) }}\n *\n * */\n@Pipe({\n name: 'memoizeFunc',\n standalone: true,\n})\nexport class MemoizeFuncPipe implements PipeTransform {\n transform<T, K>(value: T, handler: (value: T) => K, context?: any): K {\n if (context) {\n return handler.call(context, value);\n }\n\n return handler(value);\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'ordinalSuffix',\n standalone: true,\n})\nexport class OrdinalSuffixPipe implements PipeTransform {\n transform(value: number): string {\n const lastDigit = value % 10;\n const lastTwoDigits = value % 100;\n\n if (lastTwoDigits >= 11 && lastTwoDigits <= 13) {\n return 'PERCENTILE_SUFFIXES.TH';\n }\n\n switch (lastDigit) {\n case 1:\n return 'PERCENTILE_SUFFIXES.ST';\n case 2:\n return 'PERCENTILE_SUFFIXES.ND';\n case 3:\n return 'PERCENTILE_SUFFIXES.RD';\n default:\n return 'PERCENTILE_SUFFIXES.TH';\n }\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'truncate',\n standalone: true,\n})\nexport class TruncatePipe implements PipeTransform {\n transform(input: any, length?: number, suffix?: string, preserve?: boolean): any {\n if (typeof input !== 'string') {\n return input;\n }\n\n length = length === undefined ? input.length : length;\n\n if (input.length <= length) {\n return input;\n }\n\n preserve = preserve || false;\n suffix = suffix || '';\n let index = length;\n\n if (preserve) {\n if (input.indexOf(' ', length) === -1) {\n index = input.length;\n } else {\n index = input.indexOf(' ', length);\n }\n }\n\n return input.substring(0, index) + suffix;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'dataPropertyGetter',\n standalone: true,\n})\nexport class DataPropertyGetterPipe implements PipeTransform {\n transform(obj: object, keyName: string = '') {\n return this.getDeepVal(obj, keyName);\n }\n\n private getDeepVal(obj: any, path: string) {\n if (typeof obj === 'undefined' || obj === null) {\n return '';\n }\n const splittedPath = path.split(/[.[\\]\"']{1,2}/);\n for (let i = 0, l = splittedPath.length; i < l; i++) {\n if (splittedPath[i] === '') {\n continue;\n }\n obj = obj[splittedPath[i]];\n if (typeof obj === 'undefined' || obj === null) {\n return '';\n }\n }\n return obj;\n }\n}\n","import { ComponentRef, Directive, EventEmitter, Input, OnDestroy, Type, ViewContainerRef } from '@angular/core';\nimport { Subscription } from 'rxjs';\n\ninterface IComponentRenderer {\n component: Type<any>;\n inputs?: any;\n outputs?: { [key: string]: any };\n}\n\n@Directive({\n selector: '[dynamicComponent]',\n standalone: true,\n})\nexport class DynamicComponentDirective implements OnDestroy {\n private subscription = new Subscription();\n private compRef: ComponentRef<any>;\n\n @Input() set dynamicComponent(componentRenderer: IComponentRenderer) {\n if (componentRenderer.component) {\n this.compRef = this.vcr.createComponent(componentRenderer.component);\n\n if (componentRenderer.inputs) {\n Object.keys(componentRenderer.inputs).map(\n inputName => (this.compRef.instance[inputName] = componentRenderer.inputs[inputName])\n );\n }\n\n if (componentRenderer.outputs) {\n Object.keys(componentRenderer.outputs).map(output => {\n this.subscription.add(\n (this.compRef.instance[output] as EventEmitter<any>).subscribe(componentRenderer.outputs?.[output])\n );\n });\n }\n }\n }\n\n constructor(private vcr: ViewContainerRef) {}\n\n ngOnDestroy() {\n if (this.compRef) {\n this.compRef.destroy();\n }\n this.subscription.unsubscribe();\n }\n}\n","/**\n * Function for adjusting the lightness of a color based on different events (hover, pressed, disabled).\n * Accepts a hex color, transforms it to HSL, and based on color's L and event darkens or lightens it.\n * Used to manage different colors based on application configuration\n *\n * @param hexColor color in hex format\n * @param typeEvent interaction event\n * @param theme\n */\nexport const adjustLightness = (\n hexColor: string,\n typeEvent: 'hover' | 'pressed' | 'disabled',\n theme: 'new' | 'classic' = 'new'\n): string => {\n const hexRegex = /^#([0-9A-F]{3}){1,2}$/i;\n if (hexColor && !hexRegex.test(hexColor)) {\n throw new Error('Invalid HEX color format');\n }\n\n const hslColor = hexToHsl(hexColor);\n const lightness = hslColor.l * 100;\n\n if (theme === 'new') {\n if (lightness > 70 && (typeEvent === 'hover' || typeEvent === 'pressed')) {\n hslColor.l = clamp(hslColor.l - 10 / 100);\n } else if (lightness < 30 && (typeEvent === 'hover' || typeEvent === 'pressed')) {\n hslColor.l = clamp(hslColor.l + 10 / 100);\n } else if (lightness < 70 && lightness > 30 && (typeEvent === 'hover' || typeEvent === 'pressed')) {\n hslColor.l = clamp(hslColor.l - 10 / 100);\n }\n } else {\n if (lightness > 70 && typeEvent === 'hover') {\n hslColor.l = clamp(hslColor.l - 10 / 100);\n } else if (lightness < 30 && typeEvent === 'hover') {\n hslColor.l = clamp(hslColor.l + 10 / 100);\n } else if (lightness < 70 && lightness > 30 && typeEvent === 'hover') {\n hslColor.l = clamp(hslColor.l - 10 / 100);\n } else if (lightness > 70 && typeEvent === 'pressed') {\n hslColor.l = clamp(hslColor.l - 20 / 100);\n } else if (lightness < 30 && typeEvent === 'pressed') {\n hslColor.l = clamp(hslColor.l + 30 / 100);\n } else if (lightness < 70 && lightness > 30 && typeEvent === 'pressed') {\n hslColor.l = clamp(hslColor.l - 20 / 100);\n } else if (lightness > 70 && typeEvent === 'disabled') {\n hslColor.l = clamp(hslColor.l + 10 / 100);\n } else if (lightness < 30 && typeEvent === 'disabled') {\n hslColor.l = clamp(hslColor.l + 50 / 100);\n } else if (lightness < 70 && lightness > 30 && typeEvent === 'disabled') {\n hslColor.l = clamp(hslColor.l + 20 / 100);\n }\n }\n\n return hslToHex(hslColor);\n};\n\n/**\n * Transforms hex color to HSL in object variation.\n * @param hexColor string value with hex color\n */\nexport const hexToHsl = (hexColor: string): { h: number; s: number; l: number } => {\n const rgbColor = parseInt(hexColor.slice(1), 16);\n const r = ((rgbColor >> 16) & 255) / 255;\n const g = ((rgbColor >> 8) & 255) / 255;\n const b = (rgbColor & 255) / 255;\n\n const max = Math.max(r, g, b);\n const min = Math.min(r, g, b);\n\n let h = 0;\n let s;\n const l = (max + min) / 2;\n\n if (max === min) {\n h = s = 0; // grayscale\n } else {\n const d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n h = (r - g) / d + 4;\n break;\n }\n\n h /= 6;\n }\n\n return { h, s, l };\n};\n\n/**\n * Transforms HSL color, represented as an object and transforms it to hex string.\n * @param hslColor accepts the HSL color like an object.\n */\nexport const hslToHex = (hslColor: { h: number; s: number; l: number }): string => {\n const { h, s, l } = hslColor;\n\n const hueToRgb = (p: number, q: number, t: number): number => {\n if (t < 0) {\n t += 1;\n }\n if (t > 1) {\n t -= 1;\n }\n if (t < 1 / 6) {\n return p + (q - p) * 6 * t;\n }\n if (t < 1 / 2) {\n return q;\n }\n if (t < 2 / 3) {\n return p + (q - p) * (2 / 3 - t) * 6;\n }\n return p;\n };\n\n const q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n const p = 2 * l - q;\n\n const r = hueToRgb(p, q, h + 1 / 3);\n const g = hueToRgb(p, q, h);\n const b = hueToRgb(p, q, h - 1 / 3);\n\n const rgbColor = (Math.round(r * 255) << 16) | (Math.round(g * 255) << 8) | Math.round(b * 255);\n\n return `#${rgbColor.toString(16).padStart(6, '0')}`;\n};\n\n/**\n * Restricts the value to be within the range [0, 1].\n * @param value\n */\nconst clamp = (value: number): number => Math.min(Math.max(value, 0), 1);\n","import { AlertVariant } from './alert-bar.model';\n\nexport const alertBarsUtil = {\n //Set css class and iconName according type\n setIcon: (alertType: string): string => {\n if (alertType === 'success') {\n return 'Round-check';\n }\n if (alertType === 'info') {\n return 'Info';\n }\n if (alertType === 'warning') {\n return 'Warning';\n }\n if (alertType === 'error') {\n return 'Error';\n }\n return '';\n },\n\n //Set cssClass for fixed or static position\n setPosition: (fixed: boolean): string => {\n if (fixed === true) {\n return 'fixed';\n } else {\n return 'static';\n }\n },\n\n //Set css class for alertbanner\n setCssClass: (fullWidth: boolean, type: string, position: string, variant: AlertVariant = 'banner'): string => {\n const isFullWidth = fullWidth ? 'full-width' : '';\n const _type = variant === 'banner' ? type : type === 'success' ? 'info' : type;\n return `${_type} ${position} ${isFullWidth} ${variant}`;\n },\n};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["daDk","itIt","jaJp","nbNo","plPl","ptBr","svSe","i1.LanguageService"],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}