@use '../../../../utils/map' as *;
@use '../light/tooltip' as *;
@use '../elevation/tooltip' as *;

////
/// @package theming
/// @group schemas
/// @access public
////

/// Generates a dark material tooltip schema.
/// @type {Map}
/// @requires $material-tooltip
$dark-material-tooltip: extend(
    $material-tooltip,
    (
        _meta: (
            theme: 'material',
            variant: 'dark',
        ),
    )
);

/// Generates a dark fluent tooltip schema.
/// @type {Map}
/// @requires $fluent-tooltip
$dark-fluent-tooltip: extend(
    $fluent-tooltip,
    (
        _meta: (
            theme: 'fluent',
            variant: 'dark',
        ),
    )
);

/// Generates a dark bootstrap tooltip schema.
/// @type {Map}
/// @requires $bootstrap-tooltip
$dark-bootstrap-tooltip: extend(
    $bootstrap-tooltip,
    (
        _meta: (
            theme: 'bootstrap',
            variant: 'dark',
        ),
    )
);

/// Generates a dark indigo tooltip schema.
/// @type {Map}
/// @prop {Map} background [color: ('gray', 300, .9)] - The background color of the tooltip.
/// @prop {Map} text-color [contrast-color: ('gray', 50)] - The text color of the tooltip.
/// @prop {Number} elevation [9] - The elevation level, between 0-24, to be used for the tooltip.
/// @requires {Map} $indigo-tooltip
/// @requires {Map} $dark-indigo-elevation-tooltip
$dark-indigo-tooltip: extend(
    $indigo-tooltip,
    $dark-indigo-elevation-tooltip,
    (
        background: (
            color: (
                'gray',
                300,
                0.9,
            ),
        ),
        text-color: (
            contrast-color: (
                'gray',
                50,
            ),
        ),
        _meta: (
            theme: 'indigo',
            variant: 'dark',
        ),
    )
);
