<commit_before><div class="input-group">
    <span class="input-group-addon"><i class="fa fa-link"> </i></span>
    <input type="url" class="form-control" placeholder="Github/Bitbucket link" ng-model="link" ng-change="linkChange()">
</div>

<hr>

<form name="inputForm" novalidate role="form" class="form-horizontal" ng-submit="submitForm(inputForm.$valid)">
    <div class="form-group" ng-class="{ 'has-error' : inputForm.inputName.$invalid && inputForm.inputName.$pristine }">
        <label for="inputName" class="col-sm-1 control-label">Name</label>
        <div class="col-sm-9">
            <input type="text" class="form-control" ng-model="input.name" id="inputName" name="inputName" required placeholder="Name">
            <p ng-show="inputForm.inputName.$invalid && !inputForm.inputName.$pristine" class="help-block">Project name is required.</p>
        </div>
    </div>
    <div class="form-group" ng-class="{ 'has-error' : inputForm.inputUrl.$invalid && inputForm.inputUrl.$pristine }">
        <label for="inputUrl" class="col-sm-1 control-label">Git URL</label>
        <div class="col-sm-9">
            <input type="text" class="form-control" ng-model="input.url" id="inputUrl" name="inputUrl" required placeholder="URL">
            <p ng-show="inputForm.inputUrl.$invalid && !inputForm.inputUrl.$pristine" class="help-block">Project Git URL is required.</p>
        </div>
    </div>
    <div class="form-group">
        <div class="col-sm-offset-1 col-sm-9">
            <button ng-show="!creatingProject" type="submit" class="btn btn-primary">Create Project</button>
            <button ng-show="creatingProject" class="btn btn-primary"><i class="fa fa-spinner fa-spin"></i></button>
        </div>
    </div>
</form><commit_msg>Disable submit button on createProject if form is invalid<commit_after><div class="input-group">
    <span class="input-group-addon"><i class="fa fa-link"> </i></span>
    <input type="url" class="form-control" placeholder="Github/Bitbucket link" ng-model="link" ng-change="linkChange()">
</div>

<hr>

<form name="inputForm" novalidate role="form" class="form-horizontal" ng-submit="submitForm(inputForm.$valid)">
    <div class="form-group" ng-class="{ 'has-error' : inputForm.inputName.$invalid && inputForm.inputName.$pristine }">
        <label for="inputName" class="col-sm-1 control-label">Name</label>
        <div class="col-sm-9">
            <input type="text" class="form-control" ng-model="input.name" id="inputName" name="inputName" required placeholder="Name">
            <p ng-show="inputForm.inputName.$invalid && !inputForm.inputName.$pristine" class="help-block">Project name is required.</p>
        </div>
    </div>
    <div class="form-group" ng-class="{ 'has-error' : inputForm.inputUrl.$invalid && inputForm.inputUrl.$pristine }">
        <label for="inputUrl" class="col-sm-1 control-label">Git URL</label>
        <div class="col-sm-9">
            <input type="text" class="form-control" ng-model="input.url" id="inputUrl" name="inputUrl" required placeholder="URL">
            <p ng-show="inputForm.inputUrl.$invalid && !inputForm.inputUrl.$pristine" class="help-block">Project Git URL is required.</p>
        </div>
    </div>
    <div class="form-group">
        <div class="col-sm-offset-1 col-sm-9">
            <button ng-show="!creatingProject" ng-disabled="inputForm.$invalid" type="submit" class="btn btn-primary">Create Project</button>
            <button ng-show="creatingProject" class="btn btn-primary"><i class="fa fa-spinner fa-spin"></i></button>
        </div>
    </div>
</form>
{'fraction_non_alphanumeric': 0.18887957530036323, 'fraction_numerical': 0.003352891869237217, 'mean_word_length': 3.8378378378378377, 'pattern_counts': {'":': 0, '<': 79, '<?xml version=': 0, '>': 79, 'https://': 0, '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': '5098121', 'n_tokens_mistral': 1136, 'n_tokens_neox': 1113, 'n_words': 214}