//@import "../../../abstracts/abstracts";

.dbq-file-download-manager-container {
    position: absolute;
    top: $download-manager-offset;
    right: $download-manager-offset;
    width: $download-manager-width;
    background: $download-manager-background-color;
    border-radius: $download-manager-border-radius;
    z-index: 999999;
    box-shadow: 0 3px 10px RGBA(0, 0, 0, 0.2);

    &.dbqfdm-expanded {
        max-height: 500px;

        .dbqfdm-header {
            border-bottom: 2px solid $download-manager-divider-color;
        }
    }

    &.dbqfdm-collapsed {
        .dbqfdm-collapse-button {
            -webkit-transition: -webkit-transform .8s ease-in-out;
            -ms-transition: -ms-transform .8s ease-in-out;
            transition: transform .8s ease-in-out;  

            svg {
                transform:rotate(180deg);
                -ms-transform:rotate(180deg);
                -webkit-transform:rotate(180deg);
            }
        }
    }

    .dbqfdm-header {
        float: left;
        width: 100%;

        .dbqfdm-header-icon {
            float: left;
            margin: $margin-default;
            background: $color-primary;
            border-radius: 50%;
            padding: 15px;

            svg {
                fill: $download-manager-button-svg-color;
            }
        }

        .dbqfdm-header-title {
            float: left;
            margin: $margin-default 0;
            color: $download-manager-title-color;
         
            .dbqfdm-download-title {
                float: left;
                font-size: $font-size-large;
            }

            .dbqfdm-file-progress {
                float: left;
                clear: both;
            }
        }

        .dbqfdm-header-buttons {
            float: right;
            margin: 25px 15px;

            .dbqfdm-button {
                display: flex;
                align-items: center;
                justify-content: center;
                float: left;
                position: relative;
                padding: 5px;
                background: $download-manager-button-background-color;
                border-radius: 50%;
                width: $download-manager-button-size;
                height: $download-manager-button-size;
                margin-left: 15px;
                cursor: pointer;
 
                &:first-of-type {
                    margin-left: 0px;
                }

                svg {
                    fill: $download-manager-button-svg-color;
                }
            }
        }
    }
    .dbqfdm-download-items-container {
        float: left;
        clear: both;
        width: 100%;
        max-height: 400px;
        overflow-y: auto;
        
        .dbqfdm-file-container {
            margin: $margin-default;
            padding: $padding-default;
            background: $download-manager-item-background-color;
            border-radius: $border-radius-default;
            overflow: hidden;
            position: relative;

            .dbqfdm-file {
                height: 40px;
                line-height: 40px;
                display: flex;
                justify-content: space-between;
                align-items: center;

                .dbqfdm-file-type {
                    width: $download-manager-button-size;
                    height: $download-manager-button-size;
                    flex-shrink: 0;

                    img {
                        width: 100%;
                        height: 100%;
                        object-fit: cover;
                        vertical-align: inherit;
                    }
                }

                .dbqfdm-file-name {
                    margin: 0 5px;
                    white-space: nowrap;
                    overflow: hidden;
                    text-overflow: ellipsis;
                    flex-grow: 1;
                }

                .dbqfdm-file-buttons {
                    .dbqfdm-cancel-button {
                        border: 2px solid $download-manager-title-color;
                        border-radius: 25px;
                        padding: 0px 10px;
                        cursor: pointer;
                        height: $download-manager-button-size;
                        line-height: 28px;
                    }

                    .dbqfdm-download-button,
                    .dbqfdm-aborted-button {
                        position: relative;
                        width: $download-manager-button-size;
                        height: $download-manager-button-size;
                        background: $download-manager-button-background-color;
                        border-radius: 50%;

                        svg {
                            position: absolute;
                            display: block;
                            width: 12px;
                            height: 12px;
                            fill: $download-manager-button-svg-color;
                            top: 9px;
                            left: 9px;
                        }
                    }

                    .dbqfdm-download-button {
                        svg.download {
                            display: none;
                        }

                    //     &:hover {
                    //         svg {
                    //             display: none; 
                    //         }
                    //         svg.download {
                    //             display: block;
                    //         }
                    //     }
                    }

                    .dbqfdm-aborted-button {
                        cursor: pointer;

                        svg.retry {
                            display: none;
                        }

                        &:hover {
                            svg {
                                display: none; 
                            }
                            svg.retry {
                                display: block;
                            }
                        }
                    }
                }
            }

            .dbqfdm-file-progress-bar {
                position: absolute;
                bottom: 0;
                left: 0;
                height: 5px;
                width: 0%;
                background: $download-manager-item-progress-bar-color;
            }

            .dbqfdm-cancel-button,
            .dbqfdm-download-button,
            .dbqfdm-aborted-button {    
                display: none;
            }

            // DbqFileDownloadItem.DownloadState = {
            //     Idle: 0,
            //     Downloading: 1,
            //     Downloaded: 2,
            //     Aborted: 3,
            //     Failed: 4
            // };
            &[data-download-state="0"],
            &[data-download-state="1"] {
                .dbqfdm-cancel-button {
                    display: block;
                }
            }
            &[data-download-state="2"] {
                .dbqfdm-download-button {
                    display: block; 
                }
            }
            &[data-download-state="3"],
            &[data-download-state="4"] {
                .dbqfdm-file-name {
                    color: red;
                }
                
                .dbqfdm-aborted-button {
                    display: block;
                }
            }
        }
    }
}
