/// This is equivalent to `visibility: visble;`.
/// @example visibility: visble;
/// @name .k-visible
/// @group visibility
/// @contextType css

/// This is equivalent to `visibility: hidden;`.
/// @example visibility: hidden;
/// @name .k-invisible
/// @group visibility
/// @contextType css

/// This is equivalent to `visibility: collapse;`.
/// @example visibility: collapse;
/// @name .k-collapse
/// @group visibility
/// @contextType css

@use "sass:map";
@use "../_globals.scss" as *;

// Register
@use "@progress/kendo-theme-core/scss/mixins/import-once.scss" as *;

@mixin kendo-utils--layout--visibility() {
    @include import-once("utils-layout-visibility") {

        // Visibility utility classes
        $kendo-utils-visibility: map.get( $kendo-utils, "visibility" ) !default;
        @include generate-utils( visibility, visibility, $kendo-utils-visibility );

        // Legacy aliases
        .#{$kendo-prefix}visible { @extend .#{$kendo-prefix}visibility-visible !optional; }
        .\!#{$kendo-prefix}visible { @extend .\!#{$kendo-prefix}visibility-visible !optional; }
        .#{$kendo-prefix}invisible { @extend .#{$kendo-prefix}visibility-hidden !optional; }
        .\!#{$kendo-prefix}invisible { @extend .\!#{$kendo-prefix}visibility-hidden !optional; }

    }
}
