@testgorilla/tgo-ui 4.1.0-beta → 4.1.2-beta

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 (174) hide show
  1. package/components/accordion/accordion.component.d.ts +2 -2
  2. package/components/accordion/accordion.component.module.d.ts +2 -2
  3. package/components/ai-feedback/ai-feedback.module.d.ts +2 -2
  4. package/components/alert-banner/alert-banner.component.d.ts +2 -2
  5. package/components/alert-banner/alert-banner.component.module.d.ts +3 -3
  6. package/components/autocomplete/autocomplete.component.d.ts +1 -1
  7. package/components/autocomplete/autocomplete.component.module.d.ts +2 -2
  8. package/components/avatar/avatar.component.d.ts +2 -2
  9. package/components/avatar/avatar.component.module.d.ts +3 -3
  10. package/components/avatar/avatar.model.d.ts +1 -1
  11. package/components/badge/badge.component.d.ts +2 -2
  12. package/components/badge/badge.component.module.d.ts +1 -1
  13. package/components/badge/index.d.ts +5 -0
  14. package/components/badge/public-api.d.ts +4 -0
  15. package/components/breadcrumb/breadcrumb.component.d.ts +1 -1
  16. package/components/breadcrumb/breadcrumb.component.module.d.ts +3 -3
  17. package/components/button/button.component.d.ts +2 -2
  18. package/components/button/button.component.module.d.ts +4 -5
  19. package/components/button/button.model.d.ts +1 -1
  20. package/components/button/color-contrast.d.ts +28 -0
  21. package/components/button/index.d.ts +5 -0
  22. package/components/button/public-api.d.ts +5 -0
  23. package/components/card/card.component.d.ts +2 -2
  24. package/components/card/card.component.module.d.ts +1 -1
  25. package/components/checkbox/checkbox.component.d.ts +1 -1
  26. package/components/checkbox/checkbox.component.module.d.ts +5 -6
  27. package/components/checklist/checklist.component.d.ts +2 -2
  28. package/components/confirm-dialog/confirm-dialog.component.d.ts +4 -4
  29. package/components/confirm-dialog/confirm-dialog.component.module.d.ts +2 -2
  30. package/components/confirm-dialog/confirm-dialog.model.d.ts +3 -3
  31. package/components/core/application-theme.model.d.ts +7 -0
  32. package/components/core/index.d.ts +5 -0
  33. package/components/core/public-api.d.ts +5 -0
  34. package/{pipes → components/core}/ui-translate.pipe.d.ts +1 -1
  35. package/components/datepicker/datepicker.component.d.ts +1 -1
  36. package/components/datepicker/datepicker.component.module.d.ts +2 -2
  37. package/components/dialog/dialog.component.d.ts +4 -4
  38. package/components/dialog/dialog.component.module.d.ts +2 -2
  39. package/components/dialog/dialog.model.d.ts +1 -1
  40. package/components/dialog/dialog.service.d.ts +1 -1
  41. package/components/divider/divider.component.d.ts +1 -1
  42. package/components/divider/public-api.d.ts +1 -1
  43. package/components/donut-chart/donut-chart.component.d.ts +1 -1
  44. package/components/dropdown/dropdown.component.d.ts +2 -2
  45. package/components/dropdown/dropdown.component.module.d.ts +3 -3
  46. package/components/elevation-shadow/elevation-shadow.component.d.ts +1 -1
  47. package/components/elevation-shadow/index.d.ts +5 -0
  48. package/components/elevation-shadow/public-api.d.ts +3 -0
  49. package/components/empty-state/empty-state.component.d.ts +3 -3
  50. package/components/empty-state/empty-state.component.module.d.ts +3 -3
  51. package/components/field/field.component.d.ts +3 -3
  52. package/components/field/field.component.module.d.ts +4 -4
  53. package/components/file-upload/file-upload.component.d.ts +1 -1
  54. package/components/file-upload/file-upload.component.module.d.ts +2 -2
  55. package/components/filter-button/filter-button.component.d.ts +3 -3
  56. package/components/filter-button/filter-button.component.module.d.ts +5 -6
  57. package/components/filter-button/filter-button.model.d.ts +1 -1
  58. package/components/gaussian-chart/gaussian-chart.component.d.ts +1 -1
  59. package/components/gaussian-chart/gaussian-chart.module.d.ts +2 -2
  60. package/components/icon/icon.component.d.ts +2 -2
  61. package/components/icon/index.d.ts +5 -0
  62. package/components/icon/public-api.d.ts +5 -0
  63. package/components/icon-label/icon-label.component.d.ts +2 -2
  64. package/components/icon-label/icon-label.component.module.d.ts +1 -1
  65. package/components/inline-field/inline-field.component.d.ts +1 -1
  66. package/components/inline-field/inline-field.component.module.d.ts +2 -2
  67. package/components/inline-field/inline-field.model.d.ts +1 -1
  68. package/components/logo/logo.component.d.ts +1 -1
  69. package/components/multi-input/multi-input.component.module.d.ts +1 -1
  70. package/components/navbar/mobile-navbar-side-sheet/mobile-navbar-side-sheet.component.d.ts +1 -1
  71. package/components/navbar/navbar.component.d.ts +1 -1
  72. package/components/navbar/navbar.component.module.d.ts +4 -4
  73. package/components/navbar/navbar.model.d.ts +2 -2
  74. package/components/overflow-menu/overflow-menu.component.d.ts +3 -3
  75. package/components/overflow-menu/overflow-menu.component.module.d.ts +4 -5
  76. package/components/overflow-menu/overflow-menu.model.d.ts +1 -1
  77. package/components/page-header/page-header.component.d.ts +1 -1
  78. package/components/page-header/page-header.component.module.d.ts +2 -2
  79. package/components/paginator/paginator.component.d.ts +1 -1
  80. package/components/password-criteria/password.component.module.d.ts +2 -2
  81. package/components/password-strength/password-strength.component.d.ts +2 -2
  82. package/components/password-strength/password-strength.component.module.d.ts +2 -2
  83. package/components/phone-input/phone-input.component.d.ts +1 -1
  84. package/components/phone-input/phone-input.component.module.d.ts +2 -2
  85. package/components/progress-bar/progress-bar.component.d.ts +1 -1
  86. package/components/progress-bar/progress-bar.component.module.d.ts +1 -1
  87. package/components/prompt/prompt.module.d.ts +4 -4
  88. package/components/radial-progress/radial-progress.component.d.ts +2 -2
  89. package/components/radial-progress/radial-progress.component.module.d.ts +1 -1
  90. package/components/radio-button/radio-button.component.d.ts +1 -1
  91. package/components/radio-button/radio-button.component.module.d.ts +1 -1
  92. package/components/rating/rating.component.d.ts +1 -1
  93. package/components/scale/scale.component.d.ts +1 -1
  94. package/components/scale-table/scale-table.component.d.ts +1 -1
  95. package/components/segmented-bar/segmented-bar.component.d.ts +1 -1
  96. package/components/segmented-bar/segmented-bar.component.module.d.ts +2 -2
  97. package/components/segmented-bar/segmented-bar.model.d.ts +1 -1
  98. package/components/segmented-button/segmented-button.component.d.ts +1 -1
  99. package/components/side-panel/side-panel.component.d.ts +1 -1
  100. package/components/side-sheet/side-sheet.component.d.ts +1 -1
  101. package/components/side-sheet/side-sheet.component.module.d.ts +3 -3
  102. package/components/skeleton/public-api.d.ts +1 -1
  103. package/components/skeleton/skeleton.component.d.ts +1 -1
  104. package/components/slider/slider.component.d.ts +1 -1
  105. package/components/snackbar/snackbar.component.d.ts +2 -2
  106. package/components/snackbar/snackbar.component.module.d.ts +3 -3
  107. package/components/snackbar/snackbar.service.d.ts +1 -1
  108. package/components/spider-chart/spider-chart.component.d.ts +1 -1
  109. package/components/spider-chart/spider-chart.module.d.ts +1 -1
  110. package/components/spinner/spinner.component.d.ts +2 -2
  111. package/components/spinner/spinner.module.d.ts +2 -2
  112. package/components/step/step.component.d.ts +3 -3
  113. package/components/step/step.component.module.d.ts +2 -2
  114. package/components/stepper/stepper.component.d.ts +1 -1
  115. package/components/stepper/stepper.component.module.d.ts +2 -2
  116. package/components/stepper/stepper.model.d.ts +1 -1
  117. package/components/table/table.component.d.ts +1 -1
  118. package/components/table/table.component.module.d.ts +3 -3
  119. package/components/tabs/tab.directive.d.ts +1 -1
  120. package/components/tabs/tabs.component.d.ts +1 -1
  121. package/components/tabs/tabs.component.module.d.ts +2 -2
  122. package/components/tabs/tabs.model.d.ts +1 -1
  123. package/components/tag/tag.component.d.ts +2 -2
  124. package/components/tag/tag.component.module.d.ts +3 -3
  125. package/components/toggle/toggle.component.d.ts +1 -1
  126. package/components/toggle/toggle.component.module.d.ts +4 -5
  127. package/components/tooltip/index.d.ts +5 -0
  128. package/components/tooltip/public-api.d.ts +5 -0
  129. package/components/tooltip/tooltip.component.d.ts +1 -1
  130. package/components/tooltip/tooltip.component.module.d.ts +2 -3
  131. package/components/universal-skills-report/universal-skills-report.component.d.ts +2 -2
  132. package/components/universal-skills-report/universal-skills-report.component.module.d.ts +2 -2
  133. package/components/universal-skills-spider-charts/universal-skills-spider-charts.component.d.ts +2 -2
  134. package/components/universal-skills-spider-charts/universal-skills-spider-charts.component.module.d.ts +2 -2
  135. package/components/validation-error/validation-error.component.d.ts +1 -1
  136. package/components/validation-error/validation-error.module.d.ts +2 -2
  137. package/fesm2022/testgorilla-tgo-ui-components-badge.mjs +180 -0
  138. package/fesm2022/testgorilla-tgo-ui-components-badge.mjs.map +1 -0
  139. package/fesm2022/testgorilla-tgo-ui-components-button.mjs +635 -0
  140. package/fesm2022/testgorilla-tgo-ui-components-button.mjs.map +1 -0
  141. package/fesm2022/testgorilla-tgo-ui-components-core.mjs +10568 -0
  142. package/fesm2022/testgorilla-tgo-ui-components-core.mjs.map +1 -0
  143. package/fesm2022/testgorilla-tgo-ui-components-divider.mjs.map +1 -1
  144. package/fesm2022/testgorilla-tgo-ui-components-elevation-shadow.mjs +75 -0
  145. package/fesm2022/testgorilla-tgo-ui-components-elevation-shadow.mjs.map +1 -0
  146. package/fesm2022/testgorilla-tgo-ui-components-icon.mjs +1496 -0
  147. package/fesm2022/testgorilla-tgo-ui-components-icon.mjs.map +1 -0
  148. package/fesm2022/testgorilla-tgo-ui-components-skeleton.mjs.map +1 -1
  149. package/fesm2022/testgorilla-tgo-ui-components-tooltip.mjs +272 -0
  150. package/fesm2022/testgorilla-tgo-ui-components-tooltip.mjs.map +1 -0
  151. package/fesm2022/testgorilla-tgo-ui.mjs +446 -13437
  152. package/fesm2022/testgorilla-tgo-ui.mjs.map +1 -1
  153. package/package.json +28 -4
  154. package/public-api.d.ts +0 -20
  155. package/utils/alert-bars.utils.d.ts +1 -1
  156. package/components/divider/application-theme.model.d.ts +0 -1
  157. package/components/skeleton/application-theme.model.d.ts +0 -1
  158. package/models/application-theme.model.d.ts +0 -1
  159. package/projects/tgo-canopy-ui/assets/i18n/da-dk.json +0 -820
  160. package/projects/tgo-canopy-ui/assets/i18n/de.json +0 -820
  161. package/projects/tgo-canopy-ui/assets/i18n/en.json +0 -829
  162. package/projects/tgo-canopy-ui/assets/i18n/es.json +0 -820
  163. package/projects/tgo-canopy-ui/assets/i18n/fr.json +0 -820
  164. package/projects/tgo-canopy-ui/assets/i18n/it-it.json +0 -820
  165. package/projects/tgo-canopy-ui/assets/i18n/ja-jp.json +0 -820
  166. package/projects/tgo-canopy-ui/assets/i18n/nb-no.json +0 -820
  167. package/projects/tgo-canopy-ui/assets/i18n/nl.json +0 -820
  168. package/projects/tgo-canopy-ui/assets/i18n/pl-pl.json +0 -820
  169. package/projects/tgo-canopy-ui/assets/i18n/pt-br.json +0 -820
  170. package/projects/tgo-canopy-ui/assets/i18n/sv-se.json +0 -820
  171. /package/{directives → components/core}/ellipse-text.directive.d.ts +0 -0
  172. /package/{utils/localization → components/core}/language.model.d.ts +0 -0
  173. /package/{utils/localization → components/core}/language.service.d.ts +0 -0
  174. /package/{services → components/icon}/icons.service.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"testgorilla-tgo-ui-components-skeleton.mjs","sources":["../../../components/skeleton/skeleton.component.ts","../../../components/skeleton/skeleton.component.html","../../../components/skeleton/testgorilla-tgo-ui-components-skeleton.ts"],"sourcesContent":["import { Component, Inject, Input, Optional } from '@angular/core';\nimport { NgxSkeletonLoaderConfigTheme, NgxSkeletonLoaderModule } from 'ngx-skeleton-loader';\nimport { CommonModule } from '@angular/common';\nimport { BehaviorSubject, combineLatest, map } from 'rxjs';\nimport { Appearance } from './skeleton.model';\nimport { ApplicationTheme } from './application-theme.model';\n\n@Component({\n selector: 'ui-skeleton',\n templateUrl: './skeleton.component.html',\n styleUrls: ['./skeleton.component.scss'],\n imports: [CommonModule, NgxSkeletonLoaderModule]\n})\nexport class SkeletonComponent {\n @Input() count: number | string = '';\n @Input() set theme(value: NgxSkeletonLoaderConfigTheme) {\n this.theme$.next(value ?? {});\n }\n @Input() set appearance(value: Appearance) {\n this.appearance$.next(value ?? 'line');\n }\n @Input() isAiTheme = false;\n\n /**\n *\n * Defines the application theme\n *\n * @type {ApplicationTheme}\n * @memberof SkeletonComponent\n */\n @Input() applicationTheme: ApplicationTheme = 'light';\n\n constructor(\n @Optional() @Inject('CANOPYUI_DEFAULT_APPLICATION_THEME') private readonly defaultAppTheme: ApplicationTheme,\n ) {\n if (defaultAppTheme) {\n this.applicationTheme = defaultAppTheme;\n }\n }\n\n protected readonly theme$ = new BehaviorSubject<NgxSkeletonLoaderConfigTheme>({});\n protected readonly appearance$ = new BehaviorSubject<Appearance>('line');\n protected readonly currentTheme$ = combineLatest([this.theme$, this.appearance$]).pipe(\n map(([theme, appearance]) => this.getThemeWithDefaultValues(theme, appearance))\n );\n\n private getThemeWithDefaultValues(\n theme: NgxSkeletonLoaderConfigTheme,\n appearance: Appearance\n ): NgxSkeletonLoaderConfigTheme {\n if (theme && appearance === 'circle') {\n return {\n ...theme,\n height: theme['height'] || theme['width'] || '48px',\n width: theme['width'] || theme['height'] || '48px',\n };\n } else if (theme && appearance !== 'circle' && !theme['height']) {\n return {\n ...theme,\n height: '24px',\n };\n } else {\n return theme;\n }\n }\n}\n","<ngx-skeleton-loader\n [class.skeleton-ai]=\"isAiTheme\"\n [count]=\"count\"\n [theme]=\"currentTheme$ | async\"\n [appearance]=\"(appearance$ | async) || 'line'\"\n></ngx-skeleton-loader>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"testgorilla-tgo-ui-components-skeleton.mjs","sources":["../../../components/skeleton/skeleton.component.ts","../../../components/skeleton/skeleton.component.html","../../../components/skeleton/testgorilla-tgo-ui-components-skeleton.ts"],"sourcesContent":["import { Component, Inject, Input, Optional } from '@angular/core';\nimport { NgxSkeletonLoaderConfigTheme, NgxSkeletonLoaderModule } from 'ngx-skeleton-loader';\nimport { CommonModule } from '@angular/common';\nimport { BehaviorSubject, combineLatest, map } from 'rxjs';\nimport { Appearance } from './skeleton.model';\nimport { ApplicationTheme } from '@testgorilla/tgo-ui/components/core';\n\n@Component({\n selector: 'ui-skeleton',\n templateUrl: './skeleton.component.html',\n styleUrls: ['./skeleton.component.scss'],\n imports: [CommonModule, NgxSkeletonLoaderModule]\n})\nexport class SkeletonComponent {\n @Input() count: number | string = '';\n @Input() set theme(value: NgxSkeletonLoaderConfigTheme) {\n this.theme$.next(value ?? {});\n }\n @Input() set appearance(value: Appearance) {\n this.appearance$.next(value ?? 'line');\n }\n @Input() isAiTheme = false;\n\n /**\n *\n * Defines the application theme\n *\n * @type {ApplicationTheme}\n * @memberof SkeletonComponent\n */\n @Input() applicationTheme: ApplicationTheme = 'light';\n\n constructor(\n @Optional() @Inject('CANOPYUI_DEFAULT_APPLICATION_THEME') private readonly defaultAppTheme: ApplicationTheme,\n ) {\n if (defaultAppTheme) {\n this.applicationTheme = defaultAppTheme;\n }\n }\n\n protected readonly theme$ = new BehaviorSubject<NgxSkeletonLoaderConfigTheme>({});\n protected readonly appearance$ = new BehaviorSubject<Appearance>('line');\n protected readonly currentTheme$ = combineLatest([this.theme$, this.appearance$]).pipe(\n map(([theme, appearance]) => this.getThemeWithDefaultValues(theme, appearance))\n );\n\n private getThemeWithDefaultValues(\n theme: NgxSkeletonLoaderConfigTheme,\n appearance: Appearance\n ): NgxSkeletonLoaderConfigTheme {\n if (theme && appearance === 'circle') {\n return {\n ...theme,\n height: theme['height'] || theme['width'] || '48px',\n width: theme['width'] || theme['height'] || '48px',\n };\n } else if (theme && appearance !== 'circle' && !theme['height']) {\n return {\n ...theme,\n height: '24px',\n };\n } else {\n return theme;\n }\n }\n}\n","<ngx-skeleton-loader\n [class.skeleton-ai]=\"isAiTheme\"\n [count]=\"count\"\n [theme]=\"currentTheme$ | async\"\n [appearance]=\"(appearance$ | async) || 'line'\"\n></ngx-skeleton-loader>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,272 @@
1
+ import * as i0 from '@angular/core';
2
+ import { HostListener, Input, Inject, Directive, booleanAttribute, Optional, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
3
+ import * as i1$1 from '@angular/material/tooltip';
4
+ import { MatTooltipModule } from '@angular/material/tooltip';
5
+ import * as i2$1 from '@angular/common';
6
+ import { CommonModule } from '@angular/common';
7
+ import { ComponentPortal } from '@angular/cdk/portal';
8
+ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
9
+ import * as i1 from '@angular/cdk/overlay';
10
+ import * as i2 from '@angular/cdk/a11y';
11
+ import * as i4 from '@testgorilla/tgo-ui/components/core';
12
+ import { EllipseTextDirective, UiTranslatePipe } from '@testgorilla/tgo-ui/components/core';
13
+
14
+ var TooltipPositionType;
15
+ (function (TooltipPositionType) {
16
+ TooltipPositionType["TOP"] = "top";
17
+ TooltipPositionType["BOTTOM"] = "bottom";
18
+ TooltipPositionType["LEFT"] = "left";
19
+ TooltipPositionType["RIGHT"] = "right";
20
+ })(TooltipPositionType || (TooltipPositionType = {}));
21
+
22
+ class TooltipTemplateDirective {
23
+ constructor(_overlay, _overlayPositionBuilder, _elementRef, focusMonitor, ngZone, injector, tooltipComponentToken) {
24
+ this._overlay = _overlay;
25
+ this._overlayPositionBuilder = _overlayPositionBuilder;
26
+ this._elementRef = _elementRef;
27
+ this.focusMonitor = focusMonitor;
28
+ this.ngZone = ngZone;
29
+ this.injector = injector;
30
+ this.tooltipComponentToken = tooltipComponentToken;
31
+ this.tooltipPosition = TooltipPositionType.RIGHT;
32
+ this.showTooltip = true;
33
+ if (this._elementRef.nativeElement) {
34
+ this.focusMonitor.monitor(this._elementRef.nativeElement).pipe(takeUntilDestroyed()).subscribe(origin => this.ngZone.run(() => {
35
+ if (origin === 'keyboard') {
36
+ this.show();
37
+ }
38
+ else {
39
+ this.hide();
40
+ }
41
+ }));
42
+ }
43
+ }
44
+ ngOnChanges() {
45
+ this.setPosition(this.tooltipPosition);
46
+ }
47
+ show() {
48
+ if (!this.showTooltip) {
49
+ return;
50
+ }
51
+ if (this._overlayRef && !this._overlayRef.hasAttached()) {
52
+ const tooltipRef = this._overlayRef.attach(new ComponentPortal(this.tooltipComponentToken, null, this.injector));
53
+ tooltipRef.instance.templateRef = this.templateRef;
54
+ tooltipRef.instance.position = this.tooltipPosition;
55
+ }
56
+ }
57
+ hide() {
58
+ this.closeToolTip();
59
+ }
60
+ ngOnDestroy() {
61
+ this.closeToolTip();
62
+ }
63
+ closeToolTip() {
64
+ if (this._overlayRef) {
65
+ this._overlayRef.detach();
66
+ }
67
+ }
68
+ setPosition(position) {
69
+ const positions = {
70
+ [TooltipPositionType.TOP]: {
71
+ originX: 'center',
72
+ originY: 'top',
73
+ overlayX: 'center',
74
+ overlayY: 'bottom',
75
+ offsetX: 0,
76
+ offsetY: -8,
77
+ panelClass: TooltipPositionType.TOP
78
+ },
79
+ [TooltipPositionType.BOTTOM]: {
80
+ originX: 'center',
81
+ originY: 'bottom',
82
+ overlayX: 'center',
83
+ overlayY: 'top',
84
+ offsetX: 0,
85
+ offsetY: 8,
86
+ panelClass: TooltipPositionType.BOTTOM
87
+ },
88
+ [TooltipPositionType.LEFT]: {
89
+ originX: 'start',
90
+ originY: 'center',
91
+ overlayX: 'end',
92
+ overlayY: 'center',
93
+ offsetX: -8,
94
+ offsetY: 0,
95
+ panelClass: TooltipPositionType.LEFT
96
+ },
97
+ [TooltipPositionType.RIGHT]: {
98
+ originX: 'end',
99
+ originY: 'center',
100
+ overlayX: 'start',
101
+ overlayY: 'center',
102
+ offsetX: 8,
103
+ offsetY: 0,
104
+ panelClass: TooltipPositionType.RIGHT
105
+ }
106
+ };
107
+ const fallbackPositions = {
108
+ [TooltipPositionType.TOP]: positions[TooltipPositionType.BOTTOM],
109
+ [TooltipPositionType.BOTTOM]: positions[TooltipPositionType.TOP],
110
+ [TooltipPositionType.LEFT]: positions[TooltipPositionType.RIGHT],
111
+ [TooltipPositionType.RIGHT]: positions[TooltipPositionType.BOTTOM]
112
+ };
113
+ const positionConfig = positions[position];
114
+ const fallbackPositionConfig = fallbackPositions[position];
115
+ const positionStrategy = this._overlayPositionBuilder
116
+ .flexibleConnectedTo(this._elementRef)
117
+ .withPositions([positionConfig, fallbackPositionConfig])
118
+ .withPush(true);
119
+ this._overlayRef = this._overlay.create({ positionStrategy });
120
+ }
121
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TooltipTemplateDirective, deps: [{ token: i1.Overlay }, { token: i1.OverlayPositionBuilder }, { token: i0.ElementRef }, { token: i2.FocusMonitor }, { token: i0.NgZone }, { token: i0.Injector }, { token: 'TooltipComponentToken' }], target: i0.ɵɵFactoryTarget.Directive }); }
122
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.17", type: TooltipTemplateDirective, isStandalone: true, selector: "[uiTooltipTemplate]", inputs: { tooltipPosition: "tooltipPosition", showTooltip: "showTooltip", templateRef: ["uiTooltipTemplate", "templateRef"] }, host: { listeners: { "mouseenter": "show()", "mouseleave": "hide()" } }, usesOnChanges: true, ngImport: i0 }); }
123
+ }
124
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TooltipTemplateDirective, decorators: [{
125
+ type: Directive,
126
+ args: [{
127
+ selector: '[uiTooltipTemplate]',
128
+ standalone: true,
129
+ }]
130
+ }], ctorParameters: () => [{ type: i1.Overlay }, { type: i1.OverlayPositionBuilder }, { type: i0.ElementRef }, { type: i2.FocusMonitor }, { type: i0.NgZone }, { type: i0.Injector }, { type: undefined, decorators: [{
131
+ type: Inject,
132
+ args: ['TooltipComponentToken']
133
+ }] }], propDecorators: { tooltipPosition: [{
134
+ type: Input
135
+ }], showTooltip: [{
136
+ type: Input
137
+ }], templateRef: [{
138
+ type: Input,
139
+ args: ['uiTooltipTemplate']
140
+ }], show: [{
141
+ type: HostListener,
142
+ args: ['mouseenter']
143
+ }], hide: [{
144
+ type: HostListener,
145
+ args: ['mouseleave']
146
+ }] } });
147
+
148
+ class TooltipComponent {
149
+ constructor(defaultAppTheme) {
150
+ this.defaultAppTheme = defaultAppTheme;
151
+ /**
152
+ * Allows the user to define the position of the tooltip relative to the parent element.
153
+ *
154
+ * @type {TooltipPositionType}
155
+ * @memberof TooltipComponent
156
+ */
157
+ this.position = TooltipPositionType.TOP;
158
+ /**
159
+ * Disables the display of the tooltip.
160
+ *
161
+ * @type {boolean}
162
+ * @memberof TooltipComponent
163
+ */
164
+ this.disabled = false;
165
+ /**
166
+ * The message to be displayed in the tooltip.
167
+ *
168
+ * @type {string}
169
+ * @memberof TooltipComponent
170
+ */
171
+ this.message = '';
172
+ /**
173
+ *
174
+ * Defines the application theme
175
+ *
176
+ * @type {ApplicationTheme}
177
+ * @memberof TooltipComponent
178
+ */
179
+ this.applicationTheme = 'light';
180
+ /**
181
+ * The label for definition variant
182
+ * @type {string}
183
+ * @memberof TooltipComponent
184
+ */
185
+ this.labelForDefinition = '';
186
+ /**
187
+ * Defines size for definition variant
188
+ * @type {string}
189
+ * @memberof TooltipComponent
190
+ */
191
+ this.definitionTooltipSize = 'medium';
192
+ /**
193
+ * Variant render tooltip
194
+ * @type {string}
195
+ * @memberof TooltipComponent
196
+ */
197
+ this.variant = 'basic';
198
+ this.isLabelEllipse = false;
199
+ if (defaultAppTheme) {
200
+ this.applicationTheme = defaultAppTheme;
201
+ }
202
+ }
203
+ ngOnInit() {
204
+ this.setPosition();
205
+ }
206
+ //set position
207
+ setPosition() {
208
+ switch (this.position) {
209
+ case TooltipPositionType.TOP:
210
+ this.matPosition = 'above';
211
+ break;
212
+ case TooltipPositionType.BOTTOM:
213
+ this.matPosition = 'below';
214
+ break;
215
+ default:
216
+ this.matPosition = this.position;
217
+ break;
218
+ }
219
+ }
220
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TooltipComponent, deps: [{ token: 'CANOPYUI_DEFAULT_APPLICATION_THEME', optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
221
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.17", type: TooltipComponent, isStandalone: false, selector: "ui-tooltip", inputs: { position: "position", disabled: ["disabled", "disabled", booleanAttribute], message: "message", applicationTheme: "applicationTheme", labelForDefinition: "labelForDefinition", definitionTooltipSize: "definitionTooltipSize", variant: "variant" }, ngImport: i0, template: "@if (variant === 'definition') {\n <div\n [tabindex]=\"0\"\n class=\"definition-tooltip\"\n [attr.aria-label]=\"labelForDefinition + ', ' + ('TOOLTIP.DETAILS' | uiTranslate | async) + ':' + message\"\n style=\"position: relative;\"\n [tooltipPosition]=\"position\"\n [uiTooltipTemplate]=\"dif\"\n >\n <span\n class=\"label-definition-outside\"\n [ngClass]=\"'tooltip-size-' + definitionTooltipSize\"\n uiEllipseText\n (onChangeTextState)=\"isLabelEllipse = $event\"\n >\n {{ labelForDefinition }}\n </span>\n </div>\n\n <ng-template #dif>\n <div [attr.aria-label]=\"labelForDefinition + ' ' + message\"></div>\n <div class=\"label-definition-inner\" *ngIf=\"isLabelEllipse\">\n {{ labelForDefinition }}\n </div>\n <div class=\"text-definition\">\n {{ message }}\n </div>\n </ng-template>\n\n} @else {\n <div\n [matTooltip]=\"message\"\n [matTooltipDisabled]=\"disabled\"\n [matTooltipPosition]=\"matPosition\"\n [matTooltipClass]=\"applicationTheme\"\n [attr.aria-label]=\"message\"\n tabindex=\"0\"\n style=\"position: relative;\"\n >\n <div\n style=\"position: absolute; left: -9999px\"\n [attr.aria-live]=\"'polite'\"\n >{{ message }}\n </div>\n <ng-content></ng-content>\n @if (templateRef) {\n <div [class]=\"'template-tooltip'\">\n <ng-container *ngTemplateOutlet=\"templateRef\"></ng-container>\n </div>\n }\n </div>\n}\n", dependencies: [{ kind: "directive", type: i1$1.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i2$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: TooltipTemplateDirective, selector: "[uiTooltipTemplate]", inputs: ["tooltipPosition", "showTooltip", "uiTooltipTemplate"] }, { kind: "directive", type: i4.EllipseTextDirective, selector: "[uiEllipseText]", inputs: ["isMultiline", "maxDiffPixels", "refresh"], outputs: ["onChangeTextState"] }, { kind: "pipe", type: i2$1.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.UiTranslatePipe, name: "uiTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
222
+ }
223
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TooltipComponent, decorators: [{
224
+ type: Component,
225
+ args: [{ selector: 'ui-tooltip', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "@if (variant === 'definition') {\n <div\n [tabindex]=\"0\"\n class=\"definition-tooltip\"\n [attr.aria-label]=\"labelForDefinition + ', ' + ('TOOLTIP.DETAILS' | uiTranslate | async) + ':' + message\"\n style=\"position: relative;\"\n [tooltipPosition]=\"position\"\n [uiTooltipTemplate]=\"dif\"\n >\n <span\n class=\"label-definition-outside\"\n [ngClass]=\"'tooltip-size-' + definitionTooltipSize\"\n uiEllipseText\n (onChangeTextState)=\"isLabelEllipse = $event\"\n >\n {{ labelForDefinition }}\n </span>\n </div>\n\n <ng-template #dif>\n <div [attr.aria-label]=\"labelForDefinition + ' ' + message\"></div>\n <div class=\"label-definition-inner\" *ngIf=\"isLabelEllipse\">\n {{ labelForDefinition }}\n </div>\n <div class=\"text-definition\">\n {{ message }}\n </div>\n </ng-template>\n\n} @else {\n <div\n [matTooltip]=\"message\"\n [matTooltipDisabled]=\"disabled\"\n [matTooltipPosition]=\"matPosition\"\n [matTooltipClass]=\"applicationTheme\"\n [attr.aria-label]=\"message\"\n tabindex=\"0\"\n style=\"position: relative;\"\n >\n <div\n style=\"position: absolute; left: -9999px\"\n [attr.aria-live]=\"'polite'\"\n >{{ message }}\n </div>\n <ng-content></ng-content>\n @if (templateRef) {\n <div [class]=\"'template-tooltip'\">\n <ng-container *ngTemplateOutlet=\"templateRef\"></ng-container>\n </div>\n }\n </div>\n}\n" }]
226
+ }], ctorParameters: () => [{ type: undefined, decorators: [{
227
+ type: Optional
228
+ }, {
229
+ type: Inject,
230
+ args: ['CANOPYUI_DEFAULT_APPLICATION_THEME']
231
+ }] }], propDecorators: { position: [{
232
+ type: Input
233
+ }], disabled: [{
234
+ type: Input,
235
+ args: [{ transform: booleanAttribute }]
236
+ }], message: [{
237
+ type: Input
238
+ }], applicationTheme: [{
239
+ type: Input
240
+ }], labelForDefinition: [{
241
+ type: Input
242
+ }], definitionTooltipSize: [{
243
+ type: Input
244
+ }], variant: [{
245
+ type: Input
246
+ }] } });
247
+
248
+ class TooltipComponentModule {
249
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TooltipComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
250
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.17", ngImport: i0, type: TooltipComponentModule, declarations: [TooltipComponent], imports: [MatTooltipModule, CommonModule, TooltipTemplateDirective, EllipseTextDirective, UiTranslatePipe], exports: [TooltipComponent, TooltipTemplateDirective] }); }
251
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TooltipComponentModule, providers: [
252
+ { provide: 'TooltipComponentToken', useValue: TooltipComponent }
253
+ ], imports: [MatTooltipModule, CommonModule] }); }
254
+ }
255
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TooltipComponentModule, decorators: [{
256
+ type: NgModule,
257
+ args: [{
258
+ declarations: [TooltipComponent],
259
+ imports: [MatTooltipModule, CommonModule, TooltipTemplateDirective, EllipseTextDirective, UiTranslatePipe],
260
+ exports: [TooltipComponent, TooltipTemplateDirective],
261
+ providers: [
262
+ { provide: 'TooltipComponentToken', useValue: TooltipComponent }
263
+ ]
264
+ }]
265
+ }] });
266
+
267
+ /**
268
+ * Generated bundle index. Do not edit.
269
+ */
270
+
271
+ export { TooltipComponent, TooltipComponentModule, TooltipPositionType, TooltipTemplateDirective };
272
+ //# sourceMappingURL=testgorilla-tgo-ui-components-tooltip.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"testgorilla-tgo-ui-components-tooltip.mjs","sources":["../../../components/tooltip/tooltip.model.ts","../../../components/tooltip/tooltip-template.directive.ts","../../../components/tooltip/tooltip.component.ts","../../../components/tooltip/tooltip.component.html","../../../components/tooltip/tooltip.component.module.ts","../../../components/tooltip/testgorilla-tgo-ui-components-tooltip.ts"],"sourcesContent":["export enum TooltipPositionType {\n TOP = 'top',\n BOTTOM = 'bottom',\n LEFT = 'left',\n RIGHT = 'right'\n}\n\nexport type TooltipVariant = 'basic' | 'definition';\nexport type TooltipDefinitionSize = 'small' | 'medium' | 'large';\n","import {\n ComponentRef,\n Directive,\n ElementRef,\n HostListener, Inject, Injector,\n Input,\n NgZone,\n OnChanges,\n OnDestroy,\n TemplateRef\n} from '@angular/core';\nimport {\n ConnectedPosition,\n Overlay,\n OverlayPositionBuilder,\n OverlayRef\n} from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { TooltipPositionType } from './tooltip.model';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { FocusMonitor } from '@angular/cdk/a11y';\n\n@Directive({\n selector: '[uiTooltipTemplate]',\n standalone: true,\n})\nexport class TooltipTemplateDirective implements OnChanges, OnDestroy {\n @Input() tooltipPosition: TooltipPositionType = TooltipPositionType.RIGHT;\n @Input() showTooltip = true;\n @Input('uiTooltipTemplate') templateRef: TemplateRef<any>;\n\n private _overlayRef: OverlayRef;\n\n constructor(\n private _overlay: Overlay,\n private _overlayPositionBuilder: OverlayPositionBuilder,\n private _elementRef: ElementRef,\n private focusMonitor: FocusMonitor,\n private ngZone: NgZone,\n private injector: Injector,\n @Inject('TooltipComponentToken') private tooltipComponentToken: any\n ) {\n if (this._elementRef.nativeElement) {\n this.focusMonitor.monitor(this._elementRef.nativeElement).pipe(\n takeUntilDestroyed()\n ).subscribe(origin =>\n this.ngZone.run(() => {\n if (origin === 'keyboard') {\n this.show();\n } else {\n this.hide();\n }\n }),\n );\n }\n }\n\n ngOnChanges(): void {\n this.setPosition(this.tooltipPosition);\n }\n\n @HostListener('mouseenter')\n show() {\n if (!this.showTooltip) {\n return;\n }\n\n if (this._overlayRef && !this._overlayRef.hasAttached()) {\n const tooltipRef: ComponentRef<any> = this._overlayRef.attach(new ComponentPortal(this.tooltipComponentToken, null, this.injector));\n tooltipRef.instance.templateRef = this.templateRef;\n tooltipRef.instance.position = this.tooltipPosition;\n }\n }\n\n @HostListener('mouseleave')\n hide() {\n this.closeToolTip();\n }\n\n ngOnDestroy() {\n this.closeToolTip();\n }\n\n private closeToolTip() {\n if (this._overlayRef) {\n this._overlayRef.detach();\n }\n }\n\n private setPosition(position: TooltipPositionType) {\n const positions: Record<string, ConnectedPosition> = {\n [TooltipPositionType.TOP]: {\n originX: 'center',\n originY: 'top',\n overlayX: 'center',\n overlayY: 'bottom',\n offsetX: 0,\n offsetY: -8,\n panelClass: TooltipPositionType.TOP\n },\n [TooltipPositionType.BOTTOM]: {\n originX: 'center',\n originY: 'bottom',\n overlayX: 'center',\n overlayY: 'top',\n offsetX: 0,\n offsetY: 8,\n panelClass: TooltipPositionType.BOTTOM\n },\n [TooltipPositionType.LEFT]: {\n originX: 'start',\n originY: 'center',\n overlayX: 'end',\n overlayY: 'center',\n offsetX: -8,\n offsetY: 0,\n panelClass: TooltipPositionType.LEFT\n },\n [TooltipPositionType.RIGHT]: {\n originX: 'end',\n originY: 'center',\n overlayX: 'start',\n overlayY: 'center',\n offsetX: 8,\n offsetY: 0,\n panelClass: TooltipPositionType.RIGHT\n }\n };\n\n const fallbackPositions = {\n [TooltipPositionType.TOP]: positions[TooltipPositionType.BOTTOM],\n [TooltipPositionType.BOTTOM]: positions[TooltipPositionType.TOP],\n [TooltipPositionType.LEFT]: positions[TooltipPositionType.RIGHT],\n [TooltipPositionType.RIGHT]: positions[TooltipPositionType.BOTTOM]\n };\n\n const positionConfig = positions[position];\n\n const fallbackPositionConfig = fallbackPositions[position];\n\n const positionStrategy = this._overlayPositionBuilder\n .flexibleConnectedTo(this._elementRef)\n .withPositions([positionConfig, fallbackPositionConfig])\n .withPush(true);\n\n this._overlayRef = this._overlay.create({ positionStrategy });\n }\n}\n","import {\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n Inject,\n Input,\n OnInit,\n Optional,\n} from '@angular/core';\nimport { TooltipDefinitionSize, TooltipPositionType, TooltipVariant } from './tooltip.model';\nimport { TooltipPosition } from '@angular/material/tooltip';\nimport { ApplicationTheme } from '@testgorilla/tgo-ui/components/core';\n\n@Component({\n selector: 'ui-tooltip',\n templateUrl: './tooltip.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false\n})\nexport class TooltipComponent implements OnInit {\n /**\n * Allows the user to define the position of the tooltip relative to the parent element.\n *\n * @type {TooltipPositionType}\n * @memberof TooltipComponent\n */\n @Input() position: TooltipPositionType = TooltipPositionType.TOP;\n\n /**\n * Disables the display of the tooltip.\n *\n * @type {boolean}\n * @memberof TooltipComponent\n */\n @Input({ transform: booleanAttribute }) disabled = false;\n\n /**\n * The message to be displayed in the tooltip.\n *\n * @type {string}\n * @memberof TooltipComponent\n */\n @Input() message = '';\n\n /**\n *\n * Defines the application theme\n *\n * @type {ApplicationTheme}\n * @memberof TooltipComponent\n */\n @Input() applicationTheme: ApplicationTheme = 'light';\n\n /**\n * The label for definition variant\n * @type {string}\n * @memberof TooltipComponent\n */\n @Input() labelForDefinition = '';\n\n /**\n * Defines size for definition variant\n * @type {string}\n * @memberof TooltipComponent\n */\n @Input() definitionTooltipSize: TooltipDefinitionSize = 'medium'\n\n /**\n * Variant render tooltip\n * @type {string}\n * @memberof TooltipComponent\n */\n @Input() variant: TooltipVariant = 'basic'\n\n isLabelEllipse = false;\n templateRef: any;\n\n constructor(\n @Optional() @Inject('CANOPYUI_DEFAULT_APPLICATION_THEME') private readonly defaultAppTheme: ApplicationTheme,\n ) {\n if (defaultAppTheme) {\n this.applicationTheme = defaultAppTheme;\n }\n }\n\n matPosition: TooltipPosition;\n\n ngOnInit() {\n this.setPosition();\n }\n\n //set position\n setPosition(): void {\n switch (this.position) {\n case TooltipPositionType.TOP:\n this.matPosition = 'above';\n break;\n case TooltipPositionType.BOTTOM:\n this.matPosition = 'below';\n break;\n default:\n this.matPosition = this.position;\n break;\n }\n }\n}\n","@if (variant === 'definition') {\n <div\n [tabindex]=\"0\"\n class=\"definition-tooltip\"\n [attr.aria-label]=\"labelForDefinition + ', ' + ('TOOLTIP.DETAILS' | uiTranslate | async) + ':' + message\"\n style=\"position: relative;\"\n [tooltipPosition]=\"position\"\n [uiTooltipTemplate]=\"dif\"\n >\n <span\n class=\"label-definition-outside\"\n [ngClass]=\"'tooltip-size-' + definitionTooltipSize\"\n uiEllipseText\n (onChangeTextState)=\"isLabelEllipse = $event\"\n >\n {{ labelForDefinition }}\n </span>\n </div>\n\n <ng-template #dif>\n <div [attr.aria-label]=\"labelForDefinition + ' ' + message\"></div>\n <div class=\"label-definition-inner\" *ngIf=\"isLabelEllipse\">\n {{ labelForDefinition }}\n </div>\n <div class=\"text-definition\">\n {{ message }}\n </div>\n </ng-template>\n\n} @else {\n <div\n [matTooltip]=\"message\"\n [matTooltipDisabled]=\"disabled\"\n [matTooltipPosition]=\"matPosition\"\n [matTooltipClass]=\"applicationTheme\"\n [attr.aria-label]=\"message\"\n tabindex=\"0\"\n style=\"position: relative;\"\n >\n <div\n style=\"position: absolute; left: -9999px\"\n [attr.aria-live]=\"'polite'\"\n >{{ message }}\n </div>\n <ng-content></ng-content>\n @if (templateRef) {\n <div [class]=\"'template-tooltip'\">\n <ng-container *ngTemplateOutlet=\"templateRef\"></ng-container>\n </div>\n }\n </div>\n}\n","import { NgModule } from '@angular/core';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { TooltipComponent } from './tooltip.component';\nimport { CommonModule } from '@angular/common';\nimport { TooltipTemplateDirective } from './tooltip-template.directive';\nimport { EllipseTextDirective } from '@testgorilla/tgo-ui/components/core';\nimport { UiTranslatePipe } from '@testgorilla/tgo-ui/components/core';\n\n@NgModule({\n declarations: [TooltipComponent],\n imports: [MatTooltipModule, CommonModule, TooltipTemplateDirective, EllipseTextDirective, UiTranslatePipe],\n exports: [TooltipComponent, TooltipTemplateDirective],\n providers: [\n { provide: 'TooltipComponentToken', useValue: TooltipComponent }\n ]\n})\nexport class TooltipComponentModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i3.TooltipTemplateDirective"],"mappings":"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"}