<commit_before>import { Component, ElementRef, Input } from '@angular/core';
import { trigger, state, style, transition, animate } from '@angular/animations';
import { NavigationEnd, NavigationStart, Router } from '@angular/router';
import { FilterService } from 'primeng/api';
import { DomHandler } from 'primeng/dom';
import { AppConfigService } from './service/appconfigservice';
import { Subscription } from 'rxjs';
import { AppConfig } from './domain/appconfig';

declare let gtag: Function;

@Component({
    selector: 'app-menu',
    template: `
        <div class="layout-sidebar" [ngClass]="{'active': active}">
            <a [routerLink]="['/']" class="logo">
                <img alt="logo" [src]="'assets/showcase/images/' + (config.dark ? 'primeng-logo-light.svg' : 'primeng-logo-dark.svg')" />
            </a>
            <div class="layout-sidebar-filter p-fluid p-input-filled">
                <p-autoComplete [group]="true" [(ngModel)]="selectedRoute" [minLength]="2" [suggestions]="filteredRoutes" scrollHeight="300px" (onSelect)="onSelect($event)" placeholder="Search by name..." (completeMethod)="filterGroupedRoute($event)" field="label">
                </p-autoComplete>
            </div>
            <div class="layout-menu">
                <div class="menu-category">General</div>
                <div class="menu-items">
                    <a [routerLink]=" ['/setup']" routerLinkActive="router-link-exact-active">Get Started</a>
                    <a [routerLink]=" ['/i18n']" routerLinkActive="router-link-exact-active">Locale</a>
                    <a href="https://github.com/primefaces/primeng/wiki/Migration-Guide" target="_blank">Migration Guide</a>

                </div>

                <div class="menu-category">Support</div>
                <div class="menu-items">
                    <a href="https://forum.primefaces.org/viewforum.php?f=35" target="_blank">Forum</a>
                    <a href="https://discord.gg/gzKFYnpmCY" target="_blank">Discord Chat</a>
                    <a [routerLink]="['/lts']" routerLinkActive="router-link-exact-active">Long Term Support</a>
                    <a [routerLink]="['/support']" routerLinkActive="router-link-exact-active">PRO Support</a>
                </div>

                <div class="menu-category">Resources</div>
                <div class="menu-items">
                    <a href="https://www.youtube.com/channel/UCTgmp69aBOlLnPEqlUyetWw" target="_blank">PrimeTV</a>
                    <a href="https://github.com/primefaces/primeng" target="_blank">Source Code</a>
                    <a href="https://www.primefaces.org/store">Store</a>
                    <a href="https://twitter.com/prime_ng?lang=en">Twitter</a>
                </div>

                <div class="menu-category">Theming</div>
                <div class="menu-items">
                    <a [routerLink]=" ['/theming']" routerLinkActive="router-link-exact-active">Guide</a>
                    <a href="https://www.primefaces.org/designer/primeng">Theme Designer</a>
                    <a href="https://www.primefaces.org/designer-ng">Visual Editor</a>
                    <a [routerLink]="['/colors']" routerLinkActive="router-link-exact-active">Colors</a>
                    <a href="https://www.primefaces.org/designer/api/primeng/11.1.0">SASS API</a>
                </div>

                <div class="menu-category">PrimeBlocks</div>
                <div class="menu-items menu-banner">
                    <a href="https://www.primefaces.org/primeblocks-ng"><img width="100%" alt="PrimeBlocks Logo" [src]="'assets/showcase/images/' + (config.dark ? 'banner-primeblocks-dark.png' : 'banner-primeblocks.png')" /></a>
                </div>

                <div class="menu-category">PrimeFlex v3.0.0</div>
                <div class="menu-items menu-banner">
                    <a href="https://www.primefaces.org/primeflex"><img width="100%" alt="PrimeFlex Logo" [src]="'assets/showcase/images/' + (config.dark ? 'banner-primeflex-dark.svg' : 'banner-primeflex.svg')" /></a>
                </div>

                <div class="menu-category">PrimeFlex v2.0.0</div>
                <div class="menu-items">
                    <a [routerLink]=" ['/primeflex']" routerLinkActive="router-link-exact-active" [routerLinkActiveOptions]="{exact:true}">Setup</a>
                    <a [routerLink]=" ['/primeflex/display']" routerLinkActive="router-link-exact-active" [routerLinkActiveOptions]="{exact:true}">Display</a>
                    <a [routerLink]=" ['/primeflex/elevation']" routerLinkActive="router-link-exact-active" [routerLinkActiveOptions]="{exact:true}">Elevation</a>
                    <a [routerLink]=" ['/primeflex/flexbox']" routerLinkActive="router-link-exact-active" [routerLinkActiveOptions]="{exact:true}">FlexBox</a>
                    <a [routerLink]=" ['/primeflex/formlayout']" routerLinkActive="router-link-exact-active" [routerLinkActiveOptions]="{exact:true}">Form Layout</a>
                    <a [routerLink]=" ['/primeflex/grid']" routerLinkActive="router-link-exact-active" [routerLinkActiveOptions]="{exact:true}">Grid System</a>
                    <a [routerLink]=" ['/primeflex/spacing']" routerLinkActive="router-link-exact-active" [routerLinkActiveOptions]="{exact:true}">Spacing</a>
                    <a [routerLink]=" ['/primeflex/text']" routerLinkActive="router-link-exact-active" [routerLinkActiveOptions]="{exact:true}">Text</a>
                </div>

                <div class="menu-category">PrimeIcons</div>
                <div class="menu-items">
                    <a [routerLink]=" ['/icons']" routerLinkActive="router-link-exact-active">Icons v4.1</a>
                </div>

                <div class="menu-category">Form</div>
                <div class="menu-items">
                    <a [routerLink]=" ['/autocomplete']" routerLinkActive="router-link-exact-active">AutoComplete</a>
                    <a [routerLink]=" ['/calendar']" routerLinkActive="router-link-exact-active">Calendar</a>
                    <a [routerLink]=" ['/cascadeselect']" routerLinkActive="router-link-exact-active">CascadeSelect</a>
                    <a [routerLink]=" ['/checkbox']" routerLinkActive="router-link-exact-active">Checkbox</a>
                    <a [routerLink]=" ['/chips']" routerLinkActive="router-link-exact-active">Chips</a>
                    <a [routerLink]=" ['/colorpicker']" routerLinkActive="router-link-exact-active">ColorPicker</a>
                    <a [routerLink]=" ['/dropdown']" routerLinkActive="router-link-exact-active">Dropdown</a>
                    <a [routerLink]=" ['/editor']" routerLinkActive="router-link-exact-active">Editor</a>
                    <a [routerLink]=" ['/floatlabel']" routerLinkActive="router-link-exact-active">FloatLabel</a>
                    <a [routerLink]=" ['/inputgroup']" routerLinkActive="router-link-exact-active">InputGroup</a>
                    <a [routerLink]=" ['/inputmask']" routerLinkActive="router-link-exact-active">InputMask</a>
                    <a [routerLink]=" ['/inputswitch']" routerLinkActive="router-link-exact-active">InputSwitch</a>
                    <a [routerLink]=" ['/inputtext']" routerLinkActive="router-link-exact-active">InputText</a>
                    <a [routerLink]=" ['/inputtextarea']" routerLinkActive="router-link-exact-active">InputTextArea</a>
                    <a [routerLink]=" ['/inputnumber']" routerLinkActive="router-link-exact-active">InputNumber</a>
                    <a [routerLink]=" ['/invalid']" routerLinkActive="router-link-exact-active">InvalidState</a>
                    <a [routerLink]=" ['/knob']" routerLinkActive="router-link-exact-active">Knob</a>
                    <a [routerLink]=" ['/keyfilter']" routerLinkActive="router-link-exact-active">KeyFilter</a>
                    <a [routerLink]=" ['/listbox']" routerLinkActive="router-link-exact-active">Listbox</a>
                    <a [routerLink]=" ['/multiselect']" routerLinkActive="router-link-exact-active">MultiSelect</a>
                    <a [routerLink]=" ['/password']" routerLinkActive="router-link-exact-active">Password</a>
                    <a [routerLink]=" ['/radiobutton']" routerLinkActive="router-link-exact-active">RadioButton</a>
                    <a [routerLink]=" ['/rating']" routerLinkActive="router-link-exact-active">Rating</a>
                    <a [routerLink]=" ['/slider']" routerLinkActive="router-link-exact-active">Slider</a>
                    <a [routerLink]=" ['/selectbutton']" routerLinkActive="router-link-exact-active">SelectButton</a>
                    <a [routerLink]=" ['/togglebutton']" routerLinkActive="router-link-exact-active">ToggleButton</a>
                    <a [routerLink]=" ['/treeselect']" routerLinkActive="router-link-exact-active">TreeSelect</a>
                    <a [routerLink]=" ['/tristatecheckbox']" routerLinkActive="router-link-exact-active">TriCheckbox</a>
                </div>

                <div class="menu-category">Button</div>
                <div class="menu-items">
                    <a [routerLink]=" ['/button']" routerLinkActive="router-link-exact-active">Button</a>
                    <a [routerLink]=" ['/splitbutton']" routerLinkActive="router-link-exact-active">SplitButton</a>
                    <a [routerLink]=" ['/speeddial']" routerLinkActive="router-link-exact-active">SpeedDial <span class="p-tag">New</span></a>
                </div>

                <div class="menu-category">Data</div>
                <div class="menu-items">
                    <a [routerLink]=" ['/dataview']" routerLinkActive="router-link-exact-active">DataView</a>
                    <a [routerLink]=" ['/fullcalendar']" routerLinkActive="router-link-exact-active">FullCalendar</a>
                    <a [routerLink]=" ['/gmap']" routerLinkActive="router-link-exact-active">GMap</a>
                    <a [routerLink]=" ['/orderlist']" routerLinkActive="router-link-exact-active">OrderList</a>
                    <a [routerLink]=" ['/organizationchart']" routerLinkActive="router-link-exact-active">Org Chart</a>
                    <a [routerLink]=" ['/paginator']" routerLinkActive="router-link-exact-active">Paginator</a>
                    <a [routerLink]=" ['/picklist']" routerLinkActive="router-link-exact-active">PickList</a>
                    <div><commit_msg>Add new badge to treeselect<commit_after>import { Component, ElementRef, Input } from '@angular/core';
import { trigger, state, style, transition, animate } from '@angular/animations';
import { NavigationEnd, NavigationStart, Router } from '@angular/router';
import { FilterService } from 'primeng/api';
import { DomHandler } from 'primeng/dom';
import { AppConfigService } from './service/appconfigservice';
import { Subscription } from 'rxjs';
import { AppConfig } from './domain/appconfig';

declare let gtag: Function;

@Component({
    selector: 'app-menu',
    template: `
        <div class="layout-sidebar" [ngClass]="{'active': active}">
            <a [routerLink]="['/']" class="logo">
                <img alt="logo" [src]="'assets/showcase/images/' + (config.dark ? 'primeng-logo-light.svg' : 'primeng-logo-dark.svg')" />
            </a>
            <div class="layout-sidebar-filter p-fluid p-input-filled">
                <p-autoComplete [group]="true" [(ngModel)]="selectedRoute" [minLength]="2" [suggestions]="filteredRoutes" scrollHeight="300px" (onSelect)="onSelect($event)" placeholder="Search by name..." (completeMethod)="filterGroupedRoute($event)" field="label">
                </p-autoComplete>
            </div>
            <div class="layout-menu">
                <div class="menu-category">General</div>
                <div class="menu-items">
                    <a [routerLink]=" ['/setup']" routerLinkActive="router-link-exact-active">Get Started</a>
                    <a [routerLink]=" ['/i18n']" routerLinkActive="router-link-exact-active">Locale</a>
                    <a href="https://github.com/primefaces/primeng/wiki/Migration-Guide" target="_blank">Migration Guide</a>

                </div>

                <div class="menu-category">Support</div>
                <div class="menu-items">
                    <a href="https://forum.primefaces.org/viewforum.php?f=35" target="_blank">Forum</a>
                    <a href="https://discord.gg/gzKFYnpmCY" target="_blank">Discord Chat</a>
                    <a [routerLink]="['/lts']" routerLinkActive="router-link-exact-active">Long Term Support</a>
                    <a [routerLink]="['/support']" routerLinkActive="router-link-exact-active">PRO Support</a>
                </div>

                <div class="menu-category">Resources</div>
                <div class="menu-items">
                    <a href="https://www.youtube.com/channel/UCTgmp69aBOlLnPEqlUyetWw" target="_blank">PrimeTV</a>
                    <a href="https://github.com/primefaces/primeng" target="_blank">Source Code</a>
                    <a href="https://www.primefaces.org/store">Store</a>
                    <a href="https://twitter.com/prime_ng?lang=en">Twitter</a>
                </div>

                <div class="menu-category">Theming</div>
                <div class="menu-items">
                    <a [routerLink]=" ['/theming']" routerLinkActive="router-link-exact-active">Guide</a>
                    <a href="https://www.primefaces.org/designer/primeng">Theme Designer</a>
                    <a href="https://www.primefaces.org/designer-ng">Visual Editor</a>
                    <a [routerLink]="['/colors']" routerLinkActive="router-link-exact-active">Colors</a>
                    <a href="https://www.primefaces.org/designer/api/primeng/11.1.0">SASS API</a>
                </div>

                <div class="menu-category">PrimeBlocks</div>
                <div class="menu-items menu-banner">
                    <a href="https://www.primefaces.org/primeblocks-ng"><img width="100%" alt="PrimeBlocks Logo" [src]="'assets/showcase/images/' + (config.dark ? 'banner-primeblocks-dark.png' : 'banner-primeblocks.png')" /></a>
                </div>

                <div class="menu-category">PrimeFlex v3.0.0</div>
                <div class="menu-items menu-banner">
                    <a href="https://www.primefaces.org/primeflex"><img width="100%" alt="PrimeFlex Logo" [src]="'assets/showcase/images/' + (config.dark ? 'banner-primeflex-dark.svg' : 'banner-primeflex.svg')" /></a>
                </div>

                <div class="menu-category">PrimeFlex v2.0.0</div>
                <div class="menu-items">
                    <a [routerLink]=" ['/primeflex']" routerLinkActive="router-link-exact-active" [routerLinkActiveOptions]="{exact:true}">Setup</a>
                    <a [routerLink]=" ['/primeflex/display']" routerLinkActive="router-link-exact-active" [routerLinkActiveOptions]="{exact:true}">Display</a>
                    <a [routerLink]=" ['/primeflex/elevation']" routerLinkActive="router-link-exact-active" [routerLinkActiveOptions]="{exact:true}">Elevation</a>
                    <a [routerLink]=" ['/primeflex/flexbox']" routerLinkActive="router-link-exact-active" [routerLinkActiveOptions]="{exact:true}">FlexBox</a>
                    <a [routerLink]=" ['/primeflex/formlayout']" routerLinkActive="router-link-exact-active" [routerLinkActiveOptions]="{exact:true}">Form Layout</a>
                    <a [routerLink]=" ['/primeflex/grid']" routerLinkActive="router-link-exact-active" [routerLinkActiveOptions]="{exact:true}">Grid System</a>
                    <a [routerLink]=" ['/primeflex/spacing']" routerLinkActive="router-link-exact-active" [routerLinkActiveOptions]="{exact:true}">Spacing</a>
                    <a [routerLink]=" ['/primeflex/text']" routerLinkActive="router-link-exact-active" [routerLinkActiveOptions]="{exact:true}">Text</a>
                </div>

                <div class="menu-category">PrimeIcons</div>
                <div class="menu-items">
                    <a [routerLink]=" ['/icons']" routerLinkActive="router-link-exact-active">Icons v4.1</a>
                </div>

                <div class="menu-category">Form</div>
                <div class="menu-items">
                    <a [routerLink]=" ['/autocomplete']" routerLinkActive="router-link-exact-active">AutoComplete</a>
                    <a [routerLink]=" ['/calendar']" routerLinkActive="router-link-exact-active">Calendar</a>
                    <a [routerLink]=" ['/cascadeselect']" routerLinkActive="router-link-exact-active">CascadeSelect</a>
                    <a [routerLink]=" ['/checkbox']" routerLinkActive="router-link-exact-active">Checkbox</a>
                    <a [routerLink]=" ['/chips']" routerLinkActive="router-link-exact-active">Chips</a>
                    <a [routerLink]=" ['/colorpicker']" routerLinkActive="router-link-exact-active">ColorPicker</a>
                    <a [routerLink]=" ['/dropdown']" routerLinkActive="router-link-exact-active">Dropdown</a>
                    <a [routerLink]=" ['/editor']" routerLinkActive="router-link-exact-active">Editor</a>
                    <a [routerLink]=" ['/floatlabel']" routerLinkActive="router-link-exact-active">FloatLabel</a>
                    <a [routerLink]=" ['/inputgroup']" routerLinkActive="router-link-exact-active">InputGroup</a>
                    <a [routerLink]=" ['/inputmask']" routerLinkActive="router-link-exact-active">InputMask</a>
                    <a [routerLink]=" ['/inputswitch']" routerLinkActive="router-link-exact-active">InputSwitch</a>
                    <a [routerLink]=" ['/inputtext']" routerLinkActive="router-link-exact-active">InputText</a>
                    <a [routerLink]=" ['/inputtextarea']" routerLinkActive="router-link-exact-active">InputTextArea</a>
                    <a [routerLink]=" ['/inputnumber']" routerLinkActive="router-link-exact-active">InputNumber</a>
                    <a [routerLink]=" ['/invalid']" routerLinkActive="router-link-exact-active">InvalidState</a>
                    <a [routerLink]=" ['/knob']" routerLinkActive="router-link-exact-active">Knob</a>
                    <a [routerLink]=" ['/keyfilter']" routerLinkActive="router-link-exact-active">KeyFilter</a>
                    <a [routerLink]=" ['/listbox']" routerLinkActive="router-link-exact-active">Listbox</a>
                    <a [routerLink]=" ['/multiselect']" routerLinkActive="router-link-exact-active">MultiSelect</a>
                    <a [routerLink]=" ['/password']" routerLinkActive="router-link-exact-active">Password</a>
                    <a [routerLink]=" ['/radiobutton']" routerLinkActive="router-link-exact-active">RadioButton</a>
                    <a [routerLink]=" ['/rating']" routerLinkActive="router-link-exact-active">Rating</a>
                    <a [routerLink]=" ['/slider']" routerLinkActive="router-link-exact-active">Slider</a>
                    <a [routerLink]=" ['/selectbutton']" routerLinkActive="router-link-exact-active">SelectButton</a>
                    <a [routerLink]=" ['/togglebutton']" routerLinkActive="router-link-exact-active">ToggleButton</a>
                    <a [routerLink]=" ['/treeselect']" routerLinkActive="router-link-exact-active">TreeSelect <span class="p-tag">New</span></a>
                    <a [routerLink]=" ['/tristatecheckbox']" routerLinkActive="router-link-exact-active">TriCheckbox</a>
                </div>

                <div class="menu-category">Button</div>
                <div class="menu-items">
                    <a [routerLink]=" ['/button']" routerLinkActive="router-link-exact-active">Button</a>
                    <a [routerLink]=" ['/splitbutton']" routerLinkActive="router-link-exact-active">SplitButton</a>
                    <a [routerLink]=" ['/speeddial']" routerLinkActive="router-link-exact-active">SpeedDial <span class="p-tag">New</span></a>
                </div>

                <div class="menu-category">Data</div>
                <div class="menu-items">
                    <a [routerLink]=" ['/dataview']" routerLinkActive="router-link-exact-active">DataView</a>
                    <a [routerLink]=" ['/fullcalendar']" routerLinkActive="router-link-exact-active">FullCalendar</a>
                    <a [routerLink]=" ['/gmap']" routerLinkActive="router-link-exact-active">GMap</a>
                    <a [routerLink]=" ['/orderlist']" routerLinkActive="router-link-exact-active">OrderList</a>
                    <a [routerLink]=" ['/organizationchart']" routerLinkActive="router-link-exact-active">Org Chart</a>
                    <a [routerLink]=" ['/paginator']" routerLinkActive="router-link-exact-active">Paginator</a>
                    <a [routerLink]=" ['/picklist']" routerLinkActive="router-link-exact-active">PickList</a>
                    <div>
{'fraction_non_alphanumeric': 0.18117714779104907, 'fraction_numerical': 0.002686237827984842, 'mean_word_length': 2.613797885248743, 'pattern_counts': {'":': 0, '<': 379, '<?xml version=': 0, '>': 379, 'https://': 24, 'lorem ipsum': 0, 'www.': 14, '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': '3817284', 'n_tokens_mistral': 6418, 'n_tokens_neox': 5958, 'n_words': 843}