| /** |
| * @license |
| * Copyright 2023 Google LLC |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| import {SpecVersion} from '../dynamiccolor/color_spec.js'; |
| import {DynamicScheme, Platform} from '../dynamiccolor/dynamic_scheme'; |
| import {Variant} from '../dynamiccolor/variant.js'; |
| import {Hct} from '../hct/hct.js'; |
| |
| /** |
| * A scheme that places the source color in `Scheme.primaryContainer`. |
| * |
| * Primary Container is the source color, adjusted for color relativity. |
| * It maintains constant appearance in light mode and dark mode. |
| * This adds ~5 tone in light mode, and subtracts ~5 tone in dark mode. |
| * Tertiary Container is the complement to the source color, using |
| * `TemperatureCache`. It also maintains constant appearance. |
| */ |
| export class SchemeFidelity extends DynamicScheme { |
| constructor( |
| sourceColorHct: Hct, isDark: boolean, contrastLevel: number, |
| specVersion?: SpecVersion, platform?: Platform); |
| constructor( |
| sourceColorHcts: Hct[], isDark: boolean, contrastLevel: number, |
| specVersion?: SpecVersion, platform?: Platform); |
| constructor( |
| sourceColorOrList: Hct|Hct[], isDark: boolean, contrastLevel: number, |
| specVersion: SpecVersion = DynamicScheme.DEFAULT_SPEC_VERSION, |
| platform: Platform = DynamicScheme.DEFAULT_PLATFORM) { |
| super({ |
| sourceColorHcts: Array.isArray(sourceColorOrList) ? sourceColorOrList : [sourceColorOrList], |
| variant: Variant.FIDELITY, |
| contrastLevel, |
| isDark, |
| platform, |
| specVersion, |
| }); |
| } |
| } |