<commit_before>import * as React from "react";
import "bootstrap";
import "./site.css";

interface IProps {
    children?: React.ReactNode;
};

export const Layout = (props: IProps) =>
    <div className="container">
        <Header/>
        <div className="row">
            <div className="w-100">
                { props.children }
            </div>
        </div>
        <Footer/>
    </div>;

const Header = () =>
    <header className="row">
        <h1>
            <a href="./">
                <img src="logo_filterlists.png" alt="FilterLists" className="img-fluid"/>
            </a>
        </h1>
    </header>;

const Footer = () =>
    <footer className="row justify-content-center">
        <p className="mt-2 ml-1 mr-1">
            <HubLink/> | <GitHubLink/> | <ApiLink/> | <DonateLink/> | By <OwnerLink/>
        </p>
    </footer>;

const ApiLink = () =>
    <a href="/api/docs/index.html"
       title="API Swagger Docs">
        API
    </a>;

const HubLink = () =>
    <a href="https://hub.filterlists.com">
        Hub
    </a>;

const GitHubLink = () =>
    <a href="https://github.com/collinbarrett/FilterLists">
        GitHub
    </a>;

const DonateLink = () =>
    <a href="https://beerpay.io/collinbarrett/FilterLists"
       title="Support with Beerpay">
        Donate
    </a>;
<commit_msg>add title to Hub href<commit_after>import * as React from "react";
import "bootstrap";
import "./site.css";

interface IProps {
    children?: React.ReactNode;
};

export const Layout = (props: IProps) =>
    <div className="container">
        <Header/>
        <div className="row">
            <div className="w-100">
                { props.children }
            </div>
        </div>
        <Footer/>
    </div>;

const Header = () =>
    <header className="row">
        <h1>
            <a href="./">
                <img src="logo_filterlists.png" alt="FilterLists" className="img-fluid"/>
            </a>
        </h1>
    </header>;

const Footer = () =>
    <footer className="row justify-content-center">
        <p className="mt-2 ml-1 mr-1">
            <HubLink/> | <GitHubLink/> | <ApiLink/> | <DonateLink/> | By <OwnerLink/>
        </p>
    </footer>;

const HubLink = () =>
    <a href="https://hub.filterlists.com"
       title="Discourse community forum">
        Hub
    </a>;

const GitHubLink = () =>
    <a href="https://github.com/collinbarrett/FilterLists">
        GitHub
    </a>;

const ApiLink = () =>
    <a href="/api/docs/index.html"
       title="API Swagger docs">
        API
    </a>;

const DonateLink = () =>
    <a href="https://beerpay.io/collinbarrett/FilterLists"
       title="Support with Beerpay">
        Donate
    </a>;

{'fraction_non_alphanumeric': 0.1761216166110493, 'fraction_numerical': 0.005932517612161661, 'mean_word_length': 1.9944506104328523, 'pattern_counts': {'":': 0, '<': 67, '<?xml version=': 0, '>': 81, 'https://': 6, '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': '6875276', 'n_tokens_mistral': 878, 'n_tokens_neox': 858, 'n_words': 189}