<commit_before>////
/// @group themes
/// @access public
/// @author <a href="https://github.com/simeonoff" target="_blank"><NAME></a>
////

/// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component.
/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component.
///
/// @param {Color} $idle-text-color [null] - The input text color in the idle state.
/// @param {Color} $filled-text-color [null] - The input text color in the filled state.
/// @param {Color} $focused-text-color [null] - The input text color in the focused state.
/// @param {Color} $disabled-text-color [null] - The input text color in the disabled state.
///
/// @param {Color} $idle-secondary-color [null] - The label color in the idle state.
/// @param {Color} $filled-secondary-color [null] - The label color in the filled state.
/// @param {Color} $focused-secondary-color [null] - The label color in the focused state.
///
/// @param {Color} $idle-bottom-line-color [null] - The bottom line and border colors in the idle state.
/// @param {Color} $hover-bottom-line-color [null] - The bottom line and border colors in the hover state.
/// @param {Color} $focused-bottom-line-color [null] - The bottom line and border colors in the focused state.
/// @param {Color} $interim-bottom-line-color [null] - The bottom line and border colors during the to-focused transition.
/// @param {Color} $disabled-bottom-line-color [null] - The bottom line and border colors in the disabled state.
/// @param {Color} $disabled-border-color [null] - The disabled border color for input groups of type border.
///
/// @param {Color} $box-background [null] - The background color of an input group of type box.
/// @param {Color} $box-disabled-background [null] - The background color of an input group of type box in the disabled state.
///
/// @param {Color} $border-background [null] - The background color of an input group of type border.
/// @param {Color} $border-disabled-background [null] - The background color of an input group of type border in the disabled state.
///
/// @param {Color} $search-background [null] - The background color of an input group of type search.
/// @param {Color} $search-disabled-background [null] - The background color of an input group of type search in the disabled state.
/// @param {Color} $search-shadow-color [null] - The shadow color of an input group of type search.
/// @param {Color} $search-disabled-shadow-color [null] - The shadow color of an input group of type search in the disabled state.
///
/// @param {Color} $success-secondary-color [null] - The success color used in the valid state.
/// @param {Color} $warning-secondary-color [null] - The warning color used in the warning state.
/// @param {Color} $error-secondary-color [null] - The error color used in the error state.
///
/// @requires $default-palette
/// @requires $light-schema
/// @requires apply-palette
/// @requires extend
/// @requires text-contrast
///
/// @example scss Change the focused border and label colors
///   $my-input-group-theme: igx-input-group-theme($focused-secondary-color: pink, $focused-bottom-line-color: pink);
///   // Pass the theme to the igx-input-group component mixin
///   @include igx-input-group($my-input-group-theme);
@function igx-input-group-theme(
    $palette: $default-palette,
    $schema: $light-schema,

    $idle-text-color: null,
    $filled-text-color: null,
    $focused-text-color: null,
    $disabled-text-color: null,

    $idle-secondary-color: null,
    $filled-secondary-color: null,
    $focused-secondary-color: null,

    $idle-bottom-line-color: null,
    $hover-bottom-line-color: null,
    $focused-bottom-line-color: null,
    $interim-bottom-line-color: null,
    $disabled-bottom-line-color: null,
    $disabled-border-color: null,

    $box-background: null,
    $box-disabled-background: null,
    $border-background: null,
    $border-disabled-background: null,

    $search-background: null,
    $search-disabled-background: null,
    $search-shadow-color: null,
    $search-disabled-shadow-color: null,

    $success-secondary-color: null,
    $warning-secondary-color: null,
    $error-secondary-color: null,

    $placeholder-color: null,
    $disabled-placeholder-color: null
) {
    $name: 'igx-input-group';
    $theme: apply-palette(map-get($schema, $name), $palette);

    @return extend($theme, (
        palette: $palette,
        name: $name,

        idle-text-color: $idle-text-color,
        filled-text-color: $filled-text-color,
        focused-text-color: $focused-text-color,
        disabled-text-color: $disabled-text-color,

        idle-secondary-color: $idle-secondary-color,
        filled-secondary-color: $filled-secondary-color,
        focused-secondary-color: $focused-secondary-color,

        idle-bottom-line-color: $idle-bottom-line-color,
        hover-bottom-line-color: $hover-bottom-line-color,
        focused-bottom-line-color: $focused-bottom-line-color,
        interim-bottom-line-color: $interim-bottom-line-color,
        disabled-bottom-line-color: $disabled-bottom-line-color,
        disabled-border-color: $disabled-border-color,

        box-background: $box-background,
        box-disabled-background: $box-disabled-background,

        border-background: $border-background,
        border-disabled-background: $border-disabled-background,

        search-background: $search-background,
        search-disabled-background: $search-disabled-background,
        search-shadow-color: $search-shadow-color,
        search-disabled-shadow-color: $search-disabled-shadow-color,

        success-secondary-color: $success-secondary-color,
        warning-secondary-color: $warning-secondary-color,
        error-secondary-color: $error-secondary-color,
        placeholder-color: $placeholder-color,
        disabled-placeholder-color: $disabled-placeholder-color,
    ));

    @if not($placeholder-color) and $box-background {
        $placeholder-color: text-contrast($box-background);
    }

    @if not($placeholder-color) and $search-background {
        $placeholder-color: text-contrast($search-background);
    }
}



/// @param {Map} $theme - The theme used to style the component.
/// @requires {mixin} igx-root-css-vars
/// @requires igx-elevation
/// @requires $elevations
/// @requires rem
/// @requires {mixin} ellipsis
/// @requires --var
@mixin igx-input-group($theme) {
    @include igx-root-css-vars($theme);

    $palette: map-get($theme, 'palette');

    $transition-timing: .25s $ease-out-cubic;
    $search-shadow: igx-elevation($elevations, 1);
    $search-shadow-hover: igx-elevation($elevations, 2);
    $search-shadow-disabled: igx-elevation($elevations, 1);
    $required-symbol: '*';
    $required-symbol-margin: 2px;

    // This should become configurable by the user.
    $group-bundle-border-radius: 4px;

    // This creates an inverse relationship
    // between the value of the base scale size and
    // the sizing of all inner elements.
    // i.e. the bigger the scale size,
    // the smaller the padding of the inner items.
    $base-scale-size: (
        'comfortable': 16px,
        'cosy': 19px,
        'compact': 22px
    );

    $hint-padding-top: rem(6px, map-get($base-scale-size, 'comfortable'));
    $hint--box-margin: rem(12px, map-get($base-scale-size, 'comfortable'));

    %form-group-display {
        position: relative;
        display: block;
        color: --var($theme, 'idle-text-color');

        igx-prefix,
        [igxPrefix] {
            @extend %form-group-prefix;
            outline-style: none;
        }

        igx-suffix,
        [igxSuffix] {
            @extend %form-group-suffix;
            outline-style: none;
        }
    }

    %form-group-display--cosy {
        igx-prefix,
        [igxPrefix] {
            @extend %form-group-prefix--cosy;
        }

        igx-suffix,
        [igxSuffix] {
            @extend %form-group-suffix--cosy;
        }
    }

    %form-group-display--compact {
        igx-prefix,
        [igxPrefix] {
            @extend %form-group-prefix--compact;
        }

        igx-suffix,
        [igxSuffix] {
            @extend %form-group-suffix--compact;<commit_msg>refactor(themes): don't show spinner for input-groups of type number<commit_after>////
/// @group themes
/// @access public
/// @author <a href="https://github.com/simeonoff" target="_blank"><NAME></a>
////

/// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component.
/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component.
///
/// @param {Color} $idle-text-color [null] - The input text color in the idle state.
/// @param {Color} $filled-text-color [null] - The input text color in the filled state.
/// @param {Color} $focused-text-color [null] - The input text color in the focused state.
/// @param {Color} $disabled-text-color [null] - The input text color in the disabled state.
///
/// @param {Color} $idle-secondary-color [null] - The label color in the idle state.
/// @param {Color} $filled-secondary-color [null] - The label color in the filled state.
/// @param {Color} $focused-secondary-color [null] - The label color in the focused state.
///
/// @param {Color} $idle-bottom-line-color [null] - The bottom line and border colors in the idle state.
/// @param {Color} $hover-bottom-line-color [null] - The bottom line and border colors in the hover state.
/// @param {Color} $focused-bottom-line-color [null] - The bottom line and border colors in the focused state.
/// @param {Color} $interim-bottom-line-color [null] - The bottom line and border colors during the to-focused transition.
/// @param {Color} $disabled-bottom-line-color [null] - The bottom line and border colors in the disabled state.
/// @param {Color} $disabled-border-color [null] - The disabled border color for input groups of type border.
///
/// @param {Color} $box-background [null] - The background color of an input group of type box.
/// @param {Color} $box-disabled-background [null] - The background color of an input group of type box in the disabled state.
///
/// @param {Color} $border-background [null] - The background color of an input group of type border.
/// @param {Color} $border-disabled-background [null] - The background color of an input group of type border in the disabled state.
///
/// @param {Color} $search-background [null] - The background color of an input group of type search.
/// @param {Color} $search-disabled-background [null] - The background color of an input group of type search in the disabled state.
/// @param {Color} $search-shadow-color [null] - The shadow color of an input group of type search.
/// @param {Color} $search-disabled-shadow-color [null] - The shadow color of an input group of type search in the disabled state.
///
/// @param {Color} $success-secondary-color [null] - The success color used in the valid state.
/// @param {Color} $warning-secondary-color [null] - The warning color used in the warning state.
/// @param {Color} $error-secondary-color [null] - The error color used in the error state.
///
/// @requires $default-palette
/// @requires $light-schema
/// @requires apply-palette
/// @requires extend
/// @requires text-contrast
///
/// @example scss Change the focused border and label colors
///   $my-input-group-theme: igx-input-group-theme($focused-secondary-color: pink, $focused-bottom-line-color: pink);
///   // Pass the theme to the igx-input-group component mixin
///   @include igx-input-group($my-input-group-theme);
@function igx-input-group-theme(
    $palette: $default-palette,
    $schema: $light-schema,

    $idle-text-color: null,
    $filled-text-color: null,
    $focused-text-color: null,
    $disabled-text-color: null,

    $idle-secondary-color: null,
    $filled-secondary-color: null,
    $focused-secondary-color: null,

    $idle-bottom-line-color: null,
    $hover-bottom-line-color: null,
    $focused-bottom-line-color: null,
    $interim-bottom-line-color: null,
    $disabled-bottom-line-color: null,
    $disabled-border-color: null,

    $box-background: null,
    $box-disabled-background: null,
    $border-background: null,
    $border-disabled-background: null,

    $search-background: null,
    $search-disabled-background: null,
    $search-shadow-color: null,
    $search-disabled-shadow-color: null,

    $success-secondary-color: null,
    $warning-secondary-color: null,
    $error-secondary-color: null,

    $placeholder-color: null,
    $disabled-placeholder-color: null
) {
    $name: 'igx-input-group';
    $theme: apply-palette(map-get($schema, $name), $palette);

    @return extend($theme, (
        palette: $palette,
        name: $name,

        idle-text-color: $idle-text-color,
        filled-text-color: $filled-text-color,
        focused-text-color: $focused-text-color,
        disabled-text-color: $disabled-text-color,

        idle-secondary-color: $idle-secondary-color,
        filled-secondary-color: $filled-secondary-color,
        focused-secondary-color: $focused-secondary-color,

        idle-bottom-line-color: $idle-bottom-line-color,
        hover-bottom-line-color: $hover-bottom-line-color,
        focused-bottom-line-color: $focused-bottom-line-color,
        interim-bottom-line-color: $interim-bottom-line-color,
        disabled-bottom-line-color: $disabled-bottom-line-color,
        disabled-border-color: $disabled-border-color,

        box-background: $box-background,
        box-disabled-background: $box-disabled-background,

        border-background: $border-background,
        border-disabled-background: $border-disabled-background,

        search-background: $search-background,
        search-disabled-background: $search-disabled-background,
        search-shadow-color: $search-shadow-color,
        search-disabled-shadow-color: $search-disabled-shadow-color,

        success-secondary-color: $success-secondary-color,
        warning-secondary-color: $warning-secondary-color,
        error-secondary-color: $error-secondary-color,
        placeholder-color: $placeholder-color,
        disabled-placeholder-color: $disabled-placeholder-color,
    ));

    @if not($placeholder-color) and $box-background {
        $placeholder-color: text-contrast($box-background);
    }

    @if not($placeholder-color) and $search-background {
        $placeholder-color: text-contrast($search-background);
    }
}



/// @param {Map} $theme - The theme used to style the component.
/// @requires {mixin} igx-root-css-vars
/// @requires igx-elevation
/// @requires $elevations
/// @requires rem
/// @requires {mixin} ellipsis
/// @requires --var
@mixin igx-input-group($theme) {
    @include igx-root-css-vars($theme);

    $palette: map-get($theme, 'palette');

    $transition-timing: .25s $ease-out-cubic;
    $search-shadow: igx-elevation($elevations, 1);
    $search-shadow-hover: igx-elevation($elevations, 2);
    $search-shadow-disabled: igx-elevation($elevations, 1);
    $required-symbol: '*';
    $required-symbol-margin: 2px;

    // This should become configurable by the user.
    $group-bundle-border-radius: 4px;

    // This creates an inverse relationship
    // between the value of the base scale size and
    // the sizing of all inner elements.
    // i.e. the bigger the scale size,
    // the smaller the padding of the inner items.
    $base-scale-size: (
        'comfortable': 16px,
        'cosy': 19px,
        'compact': 22px
    );

    $hint-padding-top: rem(6px, map-get($base-scale-size, 'comfortable'));
    $hint--box-margin: rem(12px, map-get($base-scale-size, 'comfortable'));

    %form-group-display {
        position: relative;
        display: block;
        color: --var($theme, 'idle-text-color');

        igx-prefix,
        [igxPrefix] {
            @extend %form-group-prefix;
            outline-style: none;
        }

        igx-suffix,
        [igxSuffix] {
            @extend %form-group-suffix;
            outline-style: none;
        }

        // Don't show the number spinner
        input[type='number']::-webkit-inner-spin-button {
            -webkit-appearance: none;
        }
    }

    %form-group-display--cosy {
        igx-prefix,
        [igxPrefix] {
            @extend %form-group-prefix--cosy;
        }

        igx-suffix,
        [igxSuffix] {
            @extend %form-group-suffix--cosy;
        }
    }

    %form-group-display--compact {
        igx-prefix,
        [igxPrefix] {
            @extend %form-group-prefix--compact;
        }

        igx-suffix,
        [igxSuffix] {
            @extend %form-group-suffix--compact;
{'fraction_non_alphanumeric': 0.14492666866207723, 'fraction_numerical': 0.001915594133492966, 'mean_word_length': 2.7745142340713964, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 9, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5940167', 'n_tokens_mistral': 5136, 'n_tokens_neox': 4976, 'n_words': 1363}