<commit_before><div class="header">
    <h3>{{list?.name}}</h3>
    <button md-mini-fab color="accent"
            *ngIf="list !== undefined && !isOwnList() && user !== undefined && !(getUser() | async)?.isAnonymous"
            mdTooltip="Favorite"
            (click)="toggleFavorite()">
        <md-icon *ngIf="!isFavorite()">favorite_border</md-icon>
        <md-icon *ngIf="isFavorite()">favorite</md-icon>
    </button>
    <div class="spacer"></div>
    <button md-mini-fab color="accent" mdTooltip="{{'Reset_progression' | translate}}"
            (click)="resetProgression()">
        <md-icon>refresh</md-icon>
    </button>

    <button md-mini-fab color="accent" *ngIf="isOwnList()"
            mdTooltip="{{'Upgrade_list' | translate}}"
            (click)="upgradeList()">
        <md-icon>update</md-icon>
    </button>
</div>

<md-error *ngIf="list?.isOutDated() && !isOwnList()" class="listError">{{"Not_own_list_outdated"| translate}}</md-error>
<md-error *ngIf="list?.isOutDated() && isOwnList()" class="listError">{{"Own_list_outdated_before_button"| translate}}
    <md-icon>update</md-icon>
    {{"Own_list_outdated_after_button"| translate}}
</md-error>

<md-expansion-panel expanded="true">
    <md-expansion-panel-header>
        <md-panel-title>
            {{'Filters' | translate}}
        </md-panel-title>
    </md-expansion-panel-header>
    <div class="filters">
        <div class="category-header">{{'Game_Term/DoL' | translate}}</div>
        <div class="class-filters">
            <div *ngFor="let filter of gatheringFilters">
                <md-input-container class="class-filter">
                    <md-checkbox mdPrefix class="filter"
                                 [(ngModel)]="filter.checked"
                                 (change)="triggerFilter()">
                    </md-checkbox>
                    <input mdInput type="number"
                           [(ngModel)]="filter.level"
                           min="1" max="70" (change)="triggerFilter()">

                    <img mdSuffix src="https://www.garlandtools.org/db/images/{{filter.job}}.png"
                         alt="{{filter.job}}"
                         class="filter_icons">
                </md-input-container>
            </div>
        </div>
        <div class="category-header">{{'Game_Term/DoH' | translate}}</div>
        <div class="class-filters">
            <div *ngFor="let filter of craftFilters">
                <md-input-container class="class-filter">
                    <md-checkbox mdPrefix class="filter"
                                 [(ngModel)]="filter.checked"
                                 (change)="triggerFilter()"><commit_msg>feature: filters panel now collapsed by default<commit_after><div class="header">
    <h3>{{list?.name}}</h3>
    <button md-mini-fab color="accent"
            *ngIf="list !== undefined && !isOwnList() && user !== undefined && !(getUser() | async)?.isAnonymous"
            mdTooltip="Favorite"
            (click)="toggleFavorite()">
        <md-icon *ngIf="!isFavorite()">favorite_border</md-icon>
        <md-icon *ngIf="isFavorite()">favorite</md-icon>
    </button>
    <div class="spacer"></div>
    <button md-mini-fab color="accent" mdTooltip="{{'Reset_progression' | translate}}"
            (click)="resetProgression()">
        <md-icon>refresh</md-icon>
    </button>

    <button md-mini-fab color="accent" *ngIf="isOwnList()"
            mdTooltip="{{'Upgrade_list' | translate}}"
            (click)="upgradeList()">
        <md-icon>update</md-icon>
    </button>
</div>

<md-error *ngIf="list?.isOutDated() && !isOwnList()" class="listError">{{"Not_own_list_outdated"| translate}}</md-error>
<md-error *ngIf="list?.isOutDated() && isOwnList()" class="listError">{{"Own_list_outdated_before_button"| translate}}
    <md-icon>update</md-icon>
    {{"Own_list_outdated_after_button"| translate}}
</md-error>

<md-expansion-panel expanded="false">
    <md-expansion-panel-header>
        <md-panel-title>
            {{'Filters' | translate}}
        </md-panel-title>
    </md-expansion-panel-header>
    <div class="filters">
        <div class="category-header">{{'Game_Term/DoL' | translate}}</div>
        <div class="class-filters">
            <div *ngFor="let filter of gatheringFilters">
                <md-input-container class="class-filter">
                    <md-checkbox mdPrefix class="filter"
                                 [(ngModel)]="filter.checked"
                                 (change)="triggerFilter()">
                    </md-checkbox>
                    <input mdInput type="number"
                           [(ngModel)]="filter.level"
                           min="1" max="70" (change)="triggerFilter()">

                    <img mdSuffix src="https://www.garlandtools.org/db/images/{{filter.job}}.png"
                         alt="{{filter.job}}"
                         class="filter_icons">
                </md-input-container>
            </div>
        </div>
        <div class="category-header">{{'Game_Term/DoH' | translate}}</div>
        <div class="class-filters">
            <div *ngFor="let filter of craftFilters">
                <md-input-container class="class-filter">
                    <md-checkbox mdPrefix class="filter"
                                 [(ngModel)]="filter.checked"
                                 (change)="triggerFilter()">
{'fraction_non_alphanumeric': 0.17636195752539244, 'fraction_numerical': 0.0018467220683287165, 'mean_word_length': 2.1324465008675535, 'pattern_counts': {'":': 0, '<': 103, '<?xml version=': 0, '>': 103, 'https://': 2, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 8, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1369583', 'n_tokens_mistral': 1633, 'n_tokens_neox': 1565, 'n_words': 233}