igniteui-angular 20.2.0-alpha.2 → 20.2.0-alpha.4

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 (41) hide show
  1. package/README.md +3 -1
  2. package/fesm2022/igniteui-angular.mjs +135 -68
  3. package/fesm2022/igniteui-angular.mjs.map +1 -1
  4. package/index.d.ts +30 -11
  5. package/lib/core/styles/components/action-strip/_action-strip-theme.scss +0 -58
  6. package/lib/core/styles/components/carousel/_carousel-theme.scss +12 -11
  7. package/lib/core/styles/components/checkbox/_checkbox-theme.scss +4 -10
  8. package/lib/core/styles/components/combo/_combo-theme.scss +23 -1
  9. package/lib/core/styles/components/date-range-picker/_date-range-picker-theme.scss +9 -4
  10. package/lib/core/styles/components/grid/_pivot-data-selector-theme.scss +0 -25
  11. package/lib/core/styles/components/input/_file-input-theme.scss +0 -82
  12. package/lib/core/styles/components/input/_input-group-theme.scss +70 -70
  13. package/lib/core/styles/components/time-picker/_time-picker-theme.scss +15 -1
  14. package/lib/core/styles/typography/_bootstrap.scss +3 -1
  15. package/package.json +2 -2
  16. package/styles/igniteui-angular-dark.css +1 -1
  17. package/styles/igniteui-angular.css +1 -1
  18. package/styles/igniteui-bootstrap-dark.css +1 -1
  19. package/styles/igniteui-bootstrap-light.css +1 -1
  20. package/styles/igniteui-dark-green.css +1 -1
  21. package/styles/igniteui-fluent-dark-excel.css +1 -1
  22. package/styles/igniteui-fluent-dark-word.css +1 -1
  23. package/styles/igniteui-fluent-dark.css +1 -1
  24. package/styles/igniteui-fluent-light-excel.css +1 -1
  25. package/styles/igniteui-fluent-light-word.css +1 -1
  26. package/styles/igniteui-fluent-light.css +1 -1
  27. package/styles/igniteui-indigo-dark.css +1 -1
  28. package/styles/igniteui-indigo-light.css +1 -1
  29. package/styles/maps/igniteui-angular-dark.css.map +1 -1
  30. package/styles/maps/igniteui-angular.css.map +1 -1
  31. package/styles/maps/igniteui-bootstrap-dark.css.map +1 -1
  32. package/styles/maps/igniteui-bootstrap-light.css.map +1 -1
  33. package/styles/maps/igniteui-dark-green.css.map +1 -1
  34. package/styles/maps/igniteui-fluent-dark-excel.css.map +1 -1
  35. package/styles/maps/igniteui-fluent-dark-word.css.map +1 -1
  36. package/styles/maps/igniteui-fluent-dark.css.map +1 -1
  37. package/styles/maps/igniteui-fluent-light-excel.css.map +1 -1
  38. package/styles/maps/igniteui-fluent-light-word.css.map +1 -1
  39. package/styles/maps/igniteui-fluent-light.css.map +1 -1
  40. package/styles/maps/igniteui-indigo-dark.css.map +1 -1
  41. package/styles/maps/igniteui-indigo-light.css.map +1 -1
package/index.d.ts CHANGED
@@ -11,7 +11,7 @@ import { DomSanitizer, SafeHtml, EventManager, HammerGestureConfig } from '@angu
11
11
  import { HttpClient } from '@angular/common/http';
12
12
  import * as igniteui_angular from 'igniteui-angular';
13
13
  import { IMXIcon } from '@igniteui/material-icons-extended';
14
- import { ChatRenderers, ChatAttachmentRenderContext, ChatMessageRenderContext, ChatInputRenderContext, ChatRenderContext, IgcChatMessageAttachment, IgcChatMessage, IgcChatOptions } from 'igniteui-webcomponents';
14
+ import { ChatRenderers, ChatAttachmentRenderContext, ChatMessageRenderContext, ChatInputRenderContext, ChatRenderContext, IgcChatMessageAttachment, IgcChatMessage, IgcChatOptions, IgcChatMessageReaction } from 'igniteui-webcomponents';
15
15
 
16
16
  /**
17
17
  * Common interface for Components with show and collapse functionality
@@ -12120,7 +12120,7 @@ interface ICachedViewLoadedEventArgs extends IViewChangeEventArgs {
12120
12120
  * <span #tooltipRef="tooltip" igxTooltip>Hello there, I am a tooltip!</span>
12121
12121
  * ```
12122
12122
  */
12123
- declare class IgxTooltipDirective extends IgxToggleDirective implements OnDestroy {
12123
+ declare class IgxTooltipDirective extends IgxToggleDirective implements AfterViewInit, OnDestroy {
12124
12124
  /**
12125
12125
  * @hidden
12126
12126
  */
@@ -12183,9 +12183,13 @@ declare class IgxTooltipDirective extends IgxToggleDirective implements OnDestro
12183
12183
  private _role;
12184
12184
  private _destroy$;
12185
12185
  private _document;
12186
+ private _renderer;
12187
+ private _platformUtil;
12186
12188
  /** @hidden */
12187
12189
  constructor(elementRef: ElementRef, cdr: ChangeDetectorRef, overlayService: IgxOverlayService, navigationService: IgxNavigationService);
12188
12190
  /** @hidden */
12191
+ ngAfterViewInit(): void;
12192
+ /** @hidden */
12189
12193
  ngOnDestroy(): void;
12190
12194
  /**
12191
12195
  * @hidden
@@ -12197,12 +12201,20 @@ declare class IgxTooltipDirective extends IgxToggleDirective implements OnDestro
12197
12201
  onMouseLeave(): void;
12198
12202
  /**
12199
12203
  * If there is an animation in progress, this method will reset it to its initial state.
12200
- * Optional `force` parameter that ends the animation.
12204
+ * Allows hovering over the tooltip while an open/close animation is running.
12205
+ * Stops the animation and immediately shows the tooltip.
12206
+ *
12207
+ * @hidden
12208
+ */
12209
+ stopAnimations(): void;
12210
+ /**
12211
+ * If there is a close animation in progress, this method will end it.
12212
+ * If there is no close animation in progress, this method will close the tooltip with no animation.
12201
12213
  *
12214
+ * @param overlaySettings settings to use for closing the tooltip
12202
12215
  * @hidden
12203
- * @param force if set to `true`, the animation will be ended.
12204
12216
  */
12205
- stopAnimations(force?: boolean): void;
12217
+ forceClose(overlaySettings: OverlaySettings): void;
12206
12218
  private _createArrow;
12207
12219
  private _removeArrow;
12208
12220
  private onDocumentTouchStart;
@@ -12234,7 +12246,7 @@ interface ITooltipHideEventArgs extends IBaseEventArgs {
12234
12246
  * <span #tooltipRef="tooltip" igxTooltip>Hello there, I am a tooltip!</span>
12235
12247
  * ```
12236
12248
  */
12237
- declare class IgxTooltipTargetDirective extends IgxToggleActionDirective implements OnChanges, OnInit, OnDestroy {
12249
+ declare class IgxTooltipTargetDirective extends IgxToggleActionDirective implements OnInit, AfterViewInit, OnDestroy {
12238
12250
  private _element;
12239
12251
  private _navigationService;
12240
12252
  private _viewContainerRef;
@@ -12469,11 +12481,11 @@ declare class IgxTooltipTargetDirective extends IgxToggleActionDirective impleme
12469
12481
  /**
12470
12482
  * @hidden
12471
12483
  */
12472
- ngOnChanges(changes: SimpleChanges): void;
12484
+ ngOnInit(): void;
12473
12485
  /**
12474
12486
  * @hidden
12475
12487
  */
12476
- ngOnInit(): void;
12488
+ ngAfterViewInit(): void;
12477
12489
  /**
12478
12490
  * @hidden
12479
12491
  */
@@ -12515,8 +12527,6 @@ declare class IgxTooltipTargetDirective extends IgxToggleActionDirective impleme
12515
12527
  private _stopTimeoutAndAnimation;
12516
12528
  /**
12517
12529
  * Used when a single tooltip is used for multiple targets.
12518
- * If the tooltip is shown for one target and the user interacts with another target,
12519
- * the tooltip is instantly hidden for the first target.
12520
12530
  */
12521
12531
  private _checkTooltipForMultipleTargets;
12522
12532
  /**
@@ -16211,6 +16221,7 @@ declare abstract class IgxCalendarViewDirective implements ControlValueAccessor
16211
16221
  declare class IgxMonthsViewComponent extends IgxCalendarViewDirective implements ControlValueAccessor {
16212
16222
  #private;
16213
16223
  el: ElementRef;
16224
+ private platform;
16214
16225
  /**
16215
16226
  * Sets/gets the `id` of the months view.
16216
16227
  * If not set, the `id` will have value `"igx-months-view-0"`.
@@ -16299,6 +16310,7 @@ declare class IgxMonthsViewComponent extends IgxCalendarViewDirective implements
16299
16310
  declare class IgxYearsViewComponent extends IgxCalendarViewDirective implements ControlValueAccessor {
16300
16311
  #private;
16301
16312
  el: ElementRef;
16313
+ private platform;
16302
16314
  /**
16303
16315
  * The default css class applied to the component.
16304
16316
  *
@@ -16400,6 +16412,7 @@ declare class KeyboardNavigationService {
16400
16412
  private ngZone;
16401
16413
  private keyHandlers;
16402
16414
  private eventUnsubscribeFn;
16415
+ private platform;
16403
16416
  constructor(eventManager: EventManager, ngZone: NgZone);
16404
16417
  attachKeyboardHandlers(elementRef: ElementRef, context: any): this;
16405
16418
  detachKeyboardHandlers(): void;
@@ -34169,6 +34182,7 @@ declare abstract class IgxGridBaseDirective implements GridType, OnInit, DoCheck
34169
34182
  * @hidden @internal
34170
34183
  */
34171
34184
  repositionRowEditingOverlay(row: RowType): void;
34185
+ protected viewDetachHandler(args: any): void;
34172
34186
  /**
34173
34187
  * @hidden @internal
34174
34188
  */
@@ -37303,6 +37317,10 @@ declare class IgxGridComponent extends IgxGridBaseDirective implements GridType,
37303
37317
  * @hidden @internal
37304
37318
  */
37305
37319
  protected onColumnsAddedOrRemoved(): void;
37320
+ /**
37321
+ * @hidden
37322
+ */
37323
+ protected onColumnsChanged(change: QueryList<IgxColumnComponent>): void;
37306
37324
  /**
37307
37325
  * @hidden @internal
37308
37326
  */
@@ -44319,6 +44337,7 @@ declare class IgxChatComponent implements OnInit, OnDestroy {
44319
44337
  readonly options: i0.InputSignal<IgxChatOptions>;
44320
44338
  readonly templates: i0.InputSignal<IgxChatTemplates>;
44321
44339
  readonly messageCreated: i0.OutputEmitterRef<IgcChatMessage>;
44340
+ readonly messageReact: i0.OutputEmitterRef<IgcChatMessageReaction>;
44322
44341
  readonly attachmentClick: i0.OutputEmitterRef<IgcChatMessageAttachment>;
44323
44342
  readonly attachmentDrag: i0.OutputEmitterRef<void>;
44324
44343
  readonly attachmentDrop: i0.OutputEmitterRef<void>;
@@ -44335,7 +44354,7 @@ declare class IgxChatComponent implements OnInit, OnDestroy {
44335
44354
  private _setTemplates;
44336
44355
  private _createTemplateRenderer;
44337
44356
  static ɵfac: i0.ɵɵFactoryDeclaration<IgxChatComponent, never>;
44338
- static ɵcmp: i0.ɵɵComponentDeclaration<IgxChatComponent, "igx-chat", never, { "messages": { "alias": "messages"; "required": false; "isSignal": true; }; "draftMessage": { "alias": "draftMessage"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "templates": { "alias": "templates"; "required": false; "isSignal": true; }; }, { "messageCreated": "messageCreated"; "attachmentClick": "attachmentClick"; "attachmentDrag": "attachmentDrag"; "attachmentDrop": "attachmentDrop"; "typingChange": "typingChange"; "inputFocus": "inputFocus"; "inputBlur": "inputBlur"; "inputChange": "inputChange"; }, never, never, true, never>;
44357
+ static ɵcmp: i0.ɵɵComponentDeclaration<IgxChatComponent, "igx-chat", never, { "messages": { "alias": "messages"; "required": false; "isSignal": true; }; "draftMessage": { "alias": "draftMessage"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "templates": { "alias": "templates"; "required": false; "isSignal": true; }; }, { "messageCreated": "messageCreated"; "messageReact": "messageReact"; "attachmentClick": "attachmentClick"; "attachmentDrag": "attachmentDrag"; "attachmentDrop": "attachmentDrop"; "typingChange": "typingChange"; "inputFocus": "inputFocus"; "inputBlur": "inputBlur"; "inputChange": "inputChange"; }, never, ["*"], true, never>;
44339
44358
  }
44340
44359
  interface ChatTemplateContext<T> {
44341
44360
  $implicit: T;
@@ -2,64 +2,6 @@
2
2
  @use '../../base' as *;
3
3
  @use '../../themes/schemas' as *;
4
4
 
5
- ////
6
- /// @group themes
7
- /// @access public
8
- /// @author <a href="https://github.com/simeonoff" target="_blank">Simeon Simeonoff</a>
9
- /// @author <a href="https://github.com/desig9stein" target="_blank">Marin Popov</a>
10
- ////
11
-
12
- /// If only background color is specified, text/icon color will be assigned automatically to a contrasting color.
13
- /// @param {Map} $schema [$light-material-schema] - The schema used as basis for styling the component.
14
- ///
15
- /// @param {Color} $icon-color [null] - The color used for the actions icons.
16
- /// @param {Color} $background [null] - The color used for the action strip component content background.
17
- /// @param {Color} $actions-background [null] - The color used for the actions background.
18
- /// @param {Color} $delete-action [null] - The color used for the delete icon in action strip component.
19
- /// @param {List} $actions-border-radius [null] - The border radius used for actions container inside action strip component.
20
- ///
21
- /// @example scss Change the background and icon colors in action strip
22
- /// $my-action-strip-theme: action-strip-theme($background: black);
23
- /// // Pass the theme to the css-vars() mixin
24
- /// @include css-vars($my-action-strip-theme);
25
- @function action-strip-theme(
26
- $schema: $light-material-schema,
27
-
28
- $background: null,
29
- $actions-background: null,
30
- $icon-color: null,
31
- $delete-action: null,
32
- $actions-border-radius: null,
33
- ) {
34
- $name: 'igx-action-strip';
35
- $action-strip-schema: ();
36
-
37
- @if map.has-key($schema, 'action-strip') {
38
- $action-strip-schema: map.get($schema, 'action-strip');
39
- } @else {
40
- $action-strip-schema: $schema;
41
- }
42
-
43
- $theme: digest-schema($action-strip-schema);
44
-
45
- @if not($icon-color) and $actions-background {
46
- $icon-color: adaptive-contrast(var(--actions-background));
47
- }
48
-
49
- @if not($actions-border-radius) {
50
- $actions-border-radius: map.get($theme, 'actions-border-radius');
51
- }
52
-
53
- @return extend($theme, (
54
- name: $name,
55
- background: $background,
56
- actions-background: $actions-background,
57
- icon-color: $icon-color,
58
- delete-action: $delete-action,
59
- actions-border-radius: $actions-border-radius,
60
- ));
61
- }
62
-
63
5
  /// @deprecated Use the `css-vars` mixin instead.
64
6
  /// @see {mixin} css-vars
65
7
  /// @param {Map} $theme - The theme used to style the component.
@@ -247,7 +247,6 @@
247
247
  background: var-get($theme, 'indicator-dot-color');
248
248
 
249
249
  @if $variant != 'indigo' {
250
- @include animation('scale-out-center' .15s $ease-out-quad forwards);
251
250
  inset: rem(1px);
252
251
  } @else {
253
252
  width: rem(8px);
@@ -261,11 +260,11 @@
261
260
  &:hover {
262
261
  border-color: var-get($theme, 'indicator-active-border-color');
263
262
 
264
- @if $variant == 'indigo' {
265
- &::after {
266
- background: var-get($theme, 'indicator-hover-dot-color');
267
- }
263
+ &::after {
264
+ background: var-get($theme, 'indicator-hover-dot-color');
265
+ }
268
266
 
267
+ @if $variant == 'indigo' {
269
268
  &::before {
270
269
  position: absolute;
271
270
  content: '';
@@ -290,7 +289,7 @@
290
289
  content: '';
291
290
  width: inherit;
292
291
  height: inherit;
293
- border: rem(2px) solid var-get($theme, 'indicator-active-dot-color');
292
+ border: rem(2px) solid var-get($theme, 'indicator-active-border-color');
294
293
  inset-inline-start: 0;
295
294
  top: 0;
296
295
  border-radius: border-radius(50%);
@@ -304,12 +303,14 @@
304
303
  }
305
304
  }
306
305
 
307
- @if $variant == 'indigo' {
308
- &:hover {
309
- &::after {
310
- background: var-get($theme, 'indicator-active-hover-dot-color');
311
- }
306
+ &:hover {
307
+ border-color: var-get($theme, 'indicator-active-hover-dot-color');
312
308
 
309
+ &::after {
310
+ background: var-get($theme, 'indicator-active-hover-dot-color');
311
+ }
312
+
313
+ @if $variant == 'indigo' {
313
314
  &::before {
314
315
  border-color: var-get($theme, 'indicator-active-hover-dot-color');
315
316
  }
@@ -1,3 +1,4 @@
1
+ /* stylelint-disable max-nesting-depth */
1
2
  @use 'sass:map';
2
3
  @use 'sass:math';
3
4
  @use '../../base' as *;
@@ -49,13 +50,6 @@
49
50
  'indigo': rem(8px),
50
51
  ), $variant);
51
52
 
52
- $mark-stroke: map.get((
53
- 'material': 3,
54
- 'fluent': 1,
55
- 'bootstrap': 3,
56
- 'indigo': 3,
57
- ), $variant);
58
-
59
53
  $mark-offset: map.get((
60
54
  'material': 0,
61
55
  'fluent': -1px,
@@ -64,7 +58,7 @@
64
58
  ), $variant);
65
59
 
66
60
  $mark-length: 24;
67
- $mark-x-factor: math.div($mark-stroke, $mark-length);
61
+ $mark-x-factor: calc(#{var-get($theme, 'tick-width')} / $mark-length);
68
62
 
69
63
  $ripple-size: rem(40px);
70
64
  $ripple-radius: math.div($ripple-size, 2);
@@ -205,7 +199,7 @@
205
199
  inset: 0;
206
200
  stroke: var-get($theme, 'tick-color');
207
201
  stroke-linecap: square;
208
- stroke-width: $mark-stroke;
202
+ stroke-width: var-get($theme, 'tick-width');
209
203
  stroke-dasharray: $mark-length;
210
204
  stroke-dashoffset: $mark-length;
211
205
  fill: none;
@@ -366,7 +360,7 @@
366
360
  %cbx-composite-mark--in {
367
361
  stroke-dashoffset: 41; /* length of path - adjacent line length */
368
362
  opacity: 1;
369
- transform: rotate(45deg) translateX(-#{$mark-x-factor}em);
363
+ transform: rotate(45deg) translateX(calc(#{$mark-x-factor} * -1em));
370
364
  }
371
365
 
372
366
  %cbx-composite-mark--fluent {
@@ -13,7 +13,7 @@
13
13
  'material': pad-inline(rem(4px), rem(8px), rem(16px)),
14
14
  'fluent': pad-inline(rem(2px), rem(4px), rem(8px)),
15
15
  'bootstrap': pad-inline(rem(4px), rem(8px), rem(16px)),
16
- 'indigo': pad-inline(rem(12px))
16
+ 'indigo': pad-inline(rem(8px), rem(12px), rem(12px))
17
17
  ), $variant);
18
18
 
19
19
  $search-input-block-padding: map.get((
@@ -73,6 +73,16 @@
73
73
  igx-input-group {
74
74
  --theme: #{if($variant == 'indigo', 'indigo', 'material')};
75
75
  --ig-size: #{if($variant == 'indigo', 2, 1)};
76
+
77
+ @if $variant == 'bootstrap' or $variant == 'indigo' {
78
+ input {
79
+ height: rem(28px);
80
+ }
81
+ } @else if $variant == 'fluent' {
82
+ input {
83
+ height: rem(32px);
84
+ }
85
+ }
76
86
  }
77
87
  }
78
88
 
@@ -151,6 +161,18 @@
151
161
  %igx-combo__search {
152
162
  --igx-input-group-input-suffix-background: transparent;
153
163
  --igx-input-group-input-suffix-background--focused: transparent;
164
+
165
+ .igx-input-group__bundle::after {
166
+ border-block-end-color: var(--border-color);
167
+ }
168
+
169
+ .igx-input-group__bundle:hover::after {
170
+ border-block-end-color: #{if($variant == 'fluent', var(--hover-border-color), var(--border-color))};;
171
+ }
172
+
173
+ .igx-input-group--focused .igx-input-group__bundle::after {
174
+ border-block-end-color: var(--focused-bottom-line-color);
175
+ }
154
176
  }
155
177
  }
156
178
 
@@ -23,6 +23,11 @@
23
23
  }
24
24
  }
25
25
 
26
+ igx-date-range-start,
27
+ igx-date-range-end {
28
+ min-width: 0;
29
+ }
30
+
26
31
  igx-date-range-start,
27
32
  igx-date-range-end,
28
33
  %igx-date-range-picker__start,
@@ -57,18 +62,18 @@
57
62
  }
58
63
 
59
64
  /// Adds typography styles for the igx-date-range-picker component.
60
- /// Uses the 'subtitle-1'
65
+ /// Uses the 'caption'
61
66
  /// categories from the typographic scale.
62
67
  /// @group typography
63
- /// @param {Map} $categories [(label: 'subtitle-1')] - The categories from the typographic scale used for type styles.
68
+ /// @param {Map} $categories [(label: 'caption')] - The categories from the typographic scale used for type styles.
64
69
  @mixin date-range-typography(
65
70
  $categories: (
66
- label: 'subtitle-1',
71
+ label: 'caption',
67
72
  )
68
73
  ) {
69
74
  $label: map.get($categories, 'label');
70
75
 
71
- %igx-date-range__label {
76
+ %igx-date-range-picker__label {
72
77
  @include type-style($label);
73
78
  }
74
79
  }
@@ -3,31 +3,6 @@
3
3
  @use '../../base' as *;
4
4
  @use '../../themes/schemas' as *;
5
5
 
6
- /// @deprecated Use the `css-vars` mixin instead.
7
- /// @see {mixin} css-vars
8
- /// @param {Map} $schema [$light-material-schema] - The schema used as basis for styling the component.
9
- @function pivot-data-selector-theme(
10
- $schema: $light-material-schema,
11
- $background: null
12
- ) {
13
- $name: 'igx-pivot-data-selector';
14
- $selector: '.igx-pivot-data-selector';
15
- $pivot-data-selector-schema: ();
16
-
17
- @if map.has-key($schema, 'pivot-data-selector') {
18
- $pivot-data-selector-schema: map.get($schema, 'pivot-data-selector');
19
- } @else {
20
- $pivot-data-selector-schema: $schema;
21
- }
22
-
23
- $theme: digest-schema($pivot-data-selector-schema);
24
-
25
- @return extend($theme, (
26
- name: $name,
27
- selector: $selector,
28
- ));
29
- }
30
-
31
6
  /// @deprecated Use the `css-vars` mixin instead.
32
7
  /// @see {mixin} css-vars
33
8
  /// @param {Map} $theme - The theme used to style the component.
@@ -4,88 +4,6 @@
4
4
  @use '../../themes/schemas' as *;
5
5
  @use 'igniteui-theming/sass/animations/easings' as *;
6
6
 
7
- ////
8
- /// @group themes
9
- /// @access public
10
- ////
11
-
12
- /// @param {Map} $schema [$light-material-schema] - The schema used as basis for styling the component.
13
- /// @param {Color} $file-names-background [null] - The file names container background color.
14
- /// @param {Color} $file-names-background--focused [null] - The file names container background color when the file input is focused.
15
- /// @param {Color} $file-names-background--filled [null] - The file names container background color when the file input is filled.
16
- /// @param {Color} $file-names-background--disabled [null] - The file names container background color when the file input is disabled.
17
- /// @param {Color} $file-names-foreground [null] - The file names color.
18
- /// @param {Color} $file-names-foreground--focused [null] - The file names color when the file input is focused.
19
- /// @param {Color} $file-names-foreground--filled [null] - The file names color when the file input is filled.
20
- /// @param {Color} $file-names-foreground--disabled [null] - The file names color when the file input is disabled.
21
- /// @param {Color} $file-selector-button-background [null] - The file input selector button background color.
22
- /// @param {Color} $file-selector-button-background--focused [null] - The selector button background color when the file input is focused.
23
- /// @param {Color} $file-selector-button-background--filled [null] - The selector button background color when the file input is filled.
24
- /// @param {Color} $file-selector-button-background--disabled [null] - The selector button background color when the file input is disabled.
25
- /// @param {Color} $file-selector-button-foreground [null] - The file input selector button foreground color.
26
- /// @param {Color} $file-selector-button-foreground--focused [null] - The selector button foreground color when the file input is focused.
27
- /// @param {Color} $file-selector-button-foreground--filled [null] - The selector button foreground color when the file input is filled.
28
- /// @param {Color} $file-selector-button-foreground--disabled [null] - The selector button foreground color when the file input is disabled.
29
- /// @example scss Change the focused border and label colors
30
- /// $my-file-input-theme: file-input-theme($file-names-foreground: #09f);
31
- /// // Pass the theme to the css-vars() mixin
32
- /// @include css-vars($my-file-input-theme);
33
- @function file-input-theme(
34
- $schema: $light-material-schema,
35
- $file-names-background: null,
36
- $file-names-background--focused: null,
37
- $file-names-background--filled: null,
38
- $file-names-background--disabled: null,
39
- $file-names-foreground: null,
40
- $file-names-foreground--focused: null,
41
- $file-names-foreground--filled: null,
42
- $file-names-foreground--disabled: null,
43
-
44
- $file-selector-button-background: null,
45
- $file-selector-button-background--focused: null,
46
- $file-selector-button-background--filled: null,
47
- $file-selector-button-background--disabled: null,
48
- $file-selector-button-foreground: null,
49
- $file-selector-button-foreground--focused: null,
50
- $file-selector-button-foreground--filled: null,
51
- $file-selector-button-foreground--disabled: null,
52
- ) {
53
- $name: 'igx-file-input';
54
- $file-input-schema: ();
55
-
56
- @if map.has-key($schema, 'file-input') {
57
- $file-input-schema: map.get($schema, 'file-input');
58
- } @else {
59
- $file-input-schema: $schema;
60
- }
61
-
62
- $theme: digest-schema($file-input-schema);
63
-
64
- @return extend(
65
- $theme,
66
- (
67
- name: $name,
68
- file-names-background: $file-names-background,
69
- file-names-background--focused: $file-names-background--focused,
70
- file-names-background--filled: $file-names-background--filled,
71
- file-names-background--disabled: $file-names-background--disabled,
72
- file-names-foreground: $file-names-foreground,
73
- file-names-foreground--focused: $file-names-foreground--focused,
74
- file-names-foreground--filled: $file-names-foreground--filled,
75
- file-names-foreground--disabled: $file-names-foreground--disabled,
76
-
77
- file-selector-button-background: $file-selector-button-background,
78
- file-selector-button-background--focused: $file-selector-button-background--focused,
79
- file-selector-button-background--filled: $file-selector-button-background--filled,
80
- file-selector-button-background--disabled: $file-selector-button-background--disabled,
81
- file-selector-button-foreground: $file-selector-button-foreground,
82
- file-selector-button-foreground--focused: $file-selector-button-foreground--focused,
83
- file-selector-button-foreground--filled: $file-selector-button-foreground--filled,
84
- file-selector-button-foreground--disabled: $file-selector-button-foreground--disabled,
85
- ),
86
- );
87
- }
88
-
89
7
  /// @deprecated Use the `css-vars` mixin instead.
90
8
  /// @see {mixin} css-vars
91
9
  /// @param {Map} $theme - The theme used to style the component.