|
| 1 | +@use 'sass:map'; |
| 2 | +@use '../../base' as *; |
| 3 | +@use '../_common/extract-theme-schema' as *; |
| 4 | + |
| 5 | +/// Column actions internal components theming |
| 6 | +@mixin column-actions-derived-themes($theme) { |
| 7 | + $theme-info: extract-theme-schema($theme); |
| 8 | + $schema: map.get($theme-info, 'schema'); |
| 9 | + |
| 10 | + :where(igx-column-actions) { |
| 11 | + --_column-actions-background: var(--background, var(--ig-column-actions-background)); |
| 12 | + --_column-actions-foreground: var(--foreground, var(--ig-column-actions-foreground)); |
| 13 | + --_column-actions-accent-color: var(--accent-color, var(--ig-column-actions-accent-color)); |
| 14 | + |
| 15 | + @include tokens( |
| 16 | + checkbox-theme( |
| 17 | + $schema: $schema, |
| 18 | + $empty-color: color-mix(in srgb, var(--_column-actions-foreground) 80%, var(--_column-actions-background)), |
| 19 | + $empty-fill-color: var(--_column-actions-background), |
| 20 | + $tick-color-hover: color-mix(in srgb, var(--_column-actions-foreground) 40%, var(--_column-actions-background)), |
| 21 | + $fill-color: var(--_column-actions-accent-color), |
| 22 | + $label-color: var(--_column-actions-foreground), |
| 23 | + $disabled-color: color-mix(in srgb, var(--_column-actions-foreground) 50%, var(--_column-actions-background)), |
| 24 | + ) |
| 25 | + ); |
| 26 | + |
| 27 | + @include tokens( |
| 28 | + drop-down-theme( |
| 29 | + $schema: $schema, |
| 30 | + $background-color: var(--_column-actions-background), |
| 31 | + $item-text-color: var(--_column-actions-foreground), |
| 32 | + $border-color: color-mix(in srgb, var(--_column-actions-foreground) 12%, var(--_column-actions-background)), |
| 33 | + $hover-item-background: color-mix(in srgb, var(--_column-actions-accent-color) 8%, var(--_column-actions-background)), |
| 34 | + $focused-item-background: color-mix(in srgb, var(--_column-actions-accent-color) 12%, var(--_column-actions-background)), |
| 35 | + $selected-item-background: color-mix(in srgb, var(--_column-actions-accent-color) 12%, var(--_column-actions-background)), |
| 36 | + $selected-hover-item-background: color-mix(in srgb, var(--_column-actions-accent-color) 16%, var(--_column-actions-background)), |
| 37 | + $selected-focus-item-background: color-mix(in srgb, var(--_column-actions-accent-color) 24%, var(--_column-actions-background)), |
| 38 | + ) |
| 39 | + ); |
| 40 | + |
| 41 | + @include tokens( |
| 42 | + flat-button-theme( |
| 43 | + $schema: $schema, |
| 44 | + $foreground: var(--_column-actions-accent-color), |
| 45 | + $disabled-background: transparent, |
| 46 | + $disabled-foreground: color-mix(in srgb, var(--_column-actions-accent-color) 50%, var(--_column-actions-background)), |
| 47 | + ) |
| 48 | + ); |
| 49 | + |
| 50 | + @include tokens( |
| 51 | + input-group-theme( |
| 52 | + $schema: $schema, |
| 53 | + $idle-bottom-line-color: var(--_column-actions-accent-color), |
| 54 | + $border-color: var(--_column-actions-accent-color), |
| 55 | + $idle-text-color: var(--_column-actions-foreground), |
| 56 | + $placeholder-color: color-mix(in srgb, var(--_column-actions-foreground) 80%, var(--_column-actions-background)), |
| 57 | + ) |
| 58 | + ); |
| 59 | + |
| 60 | + $scrollbar-theme: digest-schema(map.get($schema, 'scrollbar')); |
| 61 | + $scrollbar-bg-color: map.get($scrollbar-theme, 'sb-track-bg-color'); |
| 62 | + $scrollbar-thumb-color: map.get($scrollbar-theme, 'sb-thumb-bg-color'); |
| 63 | + $scrollbar-track-border-color: map.get($scrollbar-theme, 'sb-track-border-color'); |
| 64 | + |
| 65 | + --_scrollbar-thumb-color: color-mix(in srgb, var(--_column-actions-foreground) 50%, var(--_column-actions-background)); |
| 66 | + --_scrollbar-track-border-color: color-mix(in srgb, var(--_column-actions-foreground) 16%, var(--_column-actions-background)); |
| 67 | + |
| 68 | + @include tokens( |
| 69 | + scrollbar-theme( |
| 70 | + $schema: $schema, |
| 71 | + $sb-track-bg-color: var(--_column-actions-background, $scrollbar-bg-color), |
| 72 | + $sb-thumb-bg-color: var(--_scrollbar-thumb-color, $scrollbar-thumb-color), |
| 73 | + $sb-track-border-color: var(--_scrollbar-track-border-color, $scrollbar-track-border-color), |
| 74 | + ), |
| 75 | + $mode: 'scoped' |
| 76 | + ); |
| 77 | + } |
| 78 | +} |
0 commit comments