igniteui-angular 18.2.25 → 18.2.26

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 (34) hide show
  1. package/esm2022/lib/directives/tooltip/tooltip-target.directive.mjs +9 -8
  2. package/esm2022/lib/directives/tooltip/tooltip.directive.mjs +20 -1
  3. package/fesm2022/igniteui-angular.mjs +27 -8
  4. package/fesm2022/igniteui-angular.mjs.map +1 -1
  5. package/lib/core/styles/components/input/_input-group-component.scss +2 -1
  6. package/lib/core/styles/components/input/_input-group-theme.scss +53 -5
  7. package/lib/directives/tooltip/tooltip.directive.d.ts +11 -2
  8. package/package.json +1 -1
  9. package/styles/igniteui-angular-dark.css +1 -1
  10. package/styles/igniteui-angular.css +1 -1
  11. package/styles/igniteui-bootstrap-dark.css +1 -1
  12. package/styles/igniteui-bootstrap-light.css +1 -1
  13. package/styles/igniteui-dark-green.css +1 -1
  14. package/styles/igniteui-fluent-dark-excel.css +1 -1
  15. package/styles/igniteui-fluent-dark-word.css +1 -1
  16. package/styles/igniteui-fluent-dark.css +1 -1
  17. package/styles/igniteui-fluent-light-excel.css +1 -1
  18. package/styles/igniteui-fluent-light-word.css +1 -1
  19. package/styles/igniteui-fluent-light.css +1 -1
  20. package/styles/igniteui-indigo-dark.css +1 -1
  21. package/styles/igniteui-indigo-light.css +1 -1
  22. package/styles/maps/igniteui-angular-dark.css.map +1 -1
  23. package/styles/maps/igniteui-angular.css.map +1 -1
  24. package/styles/maps/igniteui-bootstrap-dark.css.map +1 -1
  25. package/styles/maps/igniteui-bootstrap-light.css.map +1 -1
  26. package/styles/maps/igniteui-dark-green.css.map +1 -1
  27. package/styles/maps/igniteui-fluent-dark-excel.css.map +1 -1
  28. package/styles/maps/igniteui-fluent-dark-word.css.map +1 -1
  29. package/styles/maps/igniteui-fluent-dark.css.map +1 -1
  30. package/styles/maps/igniteui-fluent-light-excel.css.map +1 -1
  31. package/styles/maps/igniteui-fluent-light-word.css.map +1 -1
  32. package/styles/maps/igniteui-fluent-light.css.map +1 -1
  33. package/styles/maps/igniteui-indigo-dark.css.map +1 -1
  34. package/styles/maps/igniteui-indigo-light.css.map +1 -1
@@ -51,7 +51,7 @@
51
51
 
52
52
  @include e(input) {
53
53
  @extend %form-group-input !optional;
54
- @extend %chrome-autofill-fix !optional;
54
+ @extend %autofill-background-fix !optional;
55
55
  @extend %edge-clear-icon-fix !optional;
56
56
 
57
57
  &:hover {
@@ -403,6 +403,7 @@
403
403
 
404
404
  // Type border START
405
405
  @include m(border) {
406
+ @extend %form-group-display--border !optional;
406
407
  @extend %form-group-display--no-margin !optional;
407
408
 
408
409
  @include e(bundle) {
@@ -393,6 +393,25 @@
393
393
  }
394
394
  }
395
395
 
396
+ @if $variant == 'material' {
397
+ %form-group-display--border {
398
+ &:has(input:-webkit-autofill, input:autofill) {
399
+ %igx-input-group__notch--border {
400
+ border-block-start-color: transparent;
401
+ }
402
+
403
+ %form-group-label {
404
+ --label-position: #{sizable(18px, 22px, 26px)};
405
+
406
+ transform: translateY(calc(var(--label-position) * -1));
407
+ margin-top: 0;
408
+ overflow: hidden;
409
+ will-change: font-size, color, transform;
410
+ }
411
+ }
412
+ }
413
+ }
414
+
396
415
  %form-group-display--box {
397
416
  %form-group-border {
398
417
  margin-bottom: 0;
@@ -463,6 +482,20 @@
463
482
  --size: var(--input-icon) !important;
464
483
  }
465
484
  }
485
+
486
+ @if $variant == 'material' {
487
+ &:not(%form-group-display--border) {
488
+ &:has(input:-webkit-autofill, input:autofill) {
489
+ %form-group-label {
490
+ --floating-label-position: -73%;
491
+
492
+ @include type-style('caption');
493
+
494
+ transform: translateY(var(--floating-label-position));
495
+ }
496
+ }
497
+ }
498
+ }
466
499
  }
467
500
 
468
501
  %form-group-placeholder {
@@ -1179,13 +1212,20 @@
1179
1212
  }
1180
1213
  }
1181
1214
 
1182
- %chrome-autofill-fix {
1215
+ // This is a hack that removes the autofill background and it's essential,
1216
+ // otherwise the background is on top of the floating label in material theme.
1217
+ // The !important flag is because bootstrap theme(and potentially feature themes) is overriding the transition delay.
1218
+ %autofill-background-fix {
1183
1219
  &:-webkit-autofill,
1184
1220
  &:-webkit-autofill:hover,
1185
1221
  &:-webkit-autofill:focus,
1186
- &:-webkit-autofill:active {
1187
- -webkit-transition-delay: 99999s;
1188
- transition-delay: 99999s;
1222
+ &:-webkit-autofill:active,
1223
+ &:autofill,
1224
+ &:autofill:hover,
1225
+ &:autofill:focus,
1226
+ &:autofill:active, {
1227
+ -webkit-transition-delay: 99999s !important;
1228
+ transition-delay: 99999s !important;
1189
1229
  }
1190
1230
  }
1191
1231
 
@@ -1980,7 +2020,15 @@
1980
2020
  map.get($bootstrap-inline-padding, 'cosy'),
1981
2021
  map.get($bootstrap-inline-padding, 'comfortable')
1982
2022
  );
1983
- transition: box-shadow .15s ease-out, border .15s ease-out;
2023
+ }
2024
+
2025
+ // The :not selector is needed otherwise bootstrap will override the %autofill-background-fix
2026
+ %form-group-display--bootstrap {
2027
+ :not(:has(input:-webkit-autofill, input:autofill)) {
2028
+ %bootstrap-input {
2029
+ transition: box-shadow .15s ease-out, border .15s ease-out;
2030
+ }
2031
+ }
1984
2032
  }
1985
2033
 
1986
2034
  %bootstrap-input,
@@ -1,8 +1,9 @@
1
- import { ElementRef, ChangeDetectorRef } from '@angular/core';
1
+ import { ElementRef, ChangeDetectorRef, OnDestroy } from '@angular/core';
2
2
  import { IgxOverlayService } from '../../services/overlay/overlay';
3
3
  import { OverlaySettings } from '../../services/public_api';
4
4
  import { IgxNavigationService } from '../../core/navigation';
5
5
  import { IgxToggleDirective } from '../toggle/toggle.directive';
6
+ import { IgxTooltipTargetDirective } from './tooltip-target.directive';
6
7
  import * as i0 from "@angular/core";
7
8
  /**
8
9
  * **Ignite UI for Angular Tooltip** -
@@ -18,7 +19,7 @@ import * as i0 from "@angular/core";
18
19
  * <span #tooltipRef="tooltip" igxTooltip>Hello there, I am a tooltip!</span>
19
20
  * ```
20
21
  */
21
- export declare class IgxTooltipDirective extends IgxToggleDirective {
22
+ export declare class IgxTooltipDirective extends IgxToggleDirective implements OnDestroy {
22
23
  /**
23
24
  * @hidden
24
25
  */
@@ -74,8 +75,15 @@ export declare class IgxTooltipDirective extends IgxToggleDirective {
74
75
  * Returns whether open time out has started
75
76
  */
76
77
  toBeShown: boolean;
78
+ /**
79
+ * @hidden
80
+ */
81
+ tooltipTarget: IgxTooltipTargetDirective;
82
+ private _destroy$;
77
83
  /** @hidden */
78
84
  constructor(elementRef: ElementRef, cdr: ChangeDetectorRef, overlayService: IgxOverlayService, navigationService: IgxNavigationService);
85
+ /** @hidden */
86
+ ngOnDestroy(): void;
79
87
  /**
80
88
  * If there is open animation in progress this method will finish is.
81
89
  * If there is no open animation in progress this method will open the toggle with no animation.
@@ -90,6 +98,7 @@ export declare class IgxTooltipDirective extends IgxToggleDirective {
90
98
  * @param overlaySettings settings to use for closing the toggle
91
99
  */
92
100
  protected forceClose(overlaySettings?: OverlaySettings): void;
101
+ private onDocumentTouchStart;
93
102
  static ɵfac: i0.ɵɵFactoryDeclaration<IgxTooltipDirective, [null, null, null, { optional: true; }]>;
94
103
  static ɵdir: i0.ɵɵDirectiveDeclaration<IgxTooltipDirective, "[igxTooltip]", ["tooltip"], { "context": { "alias": "context"; "required": false; }; "id": { "alias": "id"; "required": false; }; }, {}, never, never, true, never>;
95
104
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "igniteui-angular",
3
- "version": "18.2.25",
3
+ "version": "18.2.26",
4
4
  "description": "Ignite UI for Angular is a dependency-free Angular toolkit for building modern web apps",
5
5
  "author": "Infragistics",
6
6
  "license": "SEE LICENSE IN LICENSE",