<commit_before>class Account {
  constructor(login) {
    this.login = login;
    this._repositories = [];
  }

  get handle() {
    return '@' + this.login;
  }

  get profileURL() {
    return 'https://github.com/' + this.login;
  }

  get repositoriesURL() {
    return 'https://github.com/' + this.login + '?tab=repositories';
  }

  get issuesURL() {
    return 'https://github.com/search?utf8=%E2%9C%93&q=author%3A' + this.login + '+is%3Aissue&ref=simplesearch';
  }

  get pullRequestsURL() {
    return 'https://github.com/search?utf8=%E2%9C%93&q=author%3A' + this.login + '+is%3Apr&ref=simplesearch';
  }

  get gistsURL() {
    return 'https://gist.github.com/' + this.login;
  }

  repositories() {
    this._fetchRepositories();
    return this._repositories;
  }

  _fetchRepositories(cursor) {
    const query = `
      query($login: String!, $cursor: String) {
        repositoryOwner(login: $login) {
          repositories(first: 30, after: $cursor, orderBy: {field: CREATED_AT, direction: DESC}) {
            edges {
              cursor
              node {
                name
                description
                url
              }
            }
          }
        }
      }
    `;

    let variables = {
      login: this.login,
      cursor: cursor,
    };

    let result = this._executeQuery(query, variables);
    let repositoryEdges = result.data.repositoryOwner.repositories.edges;

    if (repositoryEdges.length > 0) {
      let repos = repositoryEdges.map(function(edge) {
        let repo = edge.node;
        return new Repository(this, repo.name, repo.description);
      }, this);

      this._repositories = this._repositories.concat(repos);

      let lastEdge = repositoryEdges[repositoryEdges.length - 1];
      this._fetchRepositories(lastEdge.cursor);
    } else {
      return;
    }
  }

  _executeQuery(query, variables) {
    let result;

    if (!Action.preferences.token) {
      LaunchBar.openURL('https://github.com/prerelease/agreement');
      LaunchBar.openURL('https://github.com/settings/tokens');
      LaunchBar.alert("It looks like this is the first time you're using " +
        "this action.\n\nPlease go to https://github.com/settings/tokens" +
        "and create token with 'repo' scope and set it by invoking the " +
        "github action and typing !set-token <token>");
      return;
    }

    result = HTTP.post('https://api.github.com/graphql', {
      headerFields: { authorization: 'token ' + Action.preferences.token },
      body: JSON.stringify({ query: query, variables: variables })
    });

    LaunchBar.debugLog(JSON.stringify(result));

    if (result.data) {
      return JSON.parse(result.data);
    }
  }
}

module.exports.Account = Account;<commit_msg>Add missing space<commit_after>class Account {
  constructor(login) {
    this.login = login;
    this._repositories = [];
  }

  get handle() {
    return '@' + this.login;
  }

  get profileURL() {
    return 'https://github.com/' + this.login;
  }

  get repositoriesURL() {
    return 'https://github.com/' + this.login + '?tab=repositories';
  }

  get issuesURL() {
    return 'https://github.com/search?utf8=%E2%9C%93&q=author%3A' + this.login + '+is%3Aissue&ref=simplesearch';
  }

  get pullRequestsURL() {
    return 'https://github.com/search?utf8=%E2%9C%93&q=author%3A' + this.login + '+is%3Apr&ref=simplesearch';
  }

  get gistsURL() {
    return 'https://gist.github.com/' + this.login;
  }

  repositories() {
    this._fetchRepositories();
    return this._repositories;
  }

  _fetchRepositories(cursor) {
    const query = `
      query($login: String!, $cursor: String) {
        repositoryOwner(login: $login) {
          repositories(first: 30, after: $cursor, orderBy: {field: CREATED_AT, direction: DESC}) {
            edges {
              cursor
              node {
                name
                description
                url
              }
            }
          }
        }
      }
    `;

    let variables = {
      login: this.login,
      cursor: cursor,
    };

    let result = this._executeQuery(query, variables);
    let repositoryEdges = result.data.repositoryOwner.repositories.edges;

    if (repositoryEdges.length > 0) {
      let repos = repositoryEdges.map(function(edge) {
        let repo = edge.node;
        return new Repository(this, repo.name, repo.description);
      }, this);

      this._repositories = this._repositories.concat(repos);

      let lastEdge = repositoryEdges[repositoryEdges.length - 1];
      this._fetchRepositories(lastEdge.cursor);
    } else {
      return;
    }
  }

  _executeQuery(query, variables) {
    let result;

    if (!Action.preferences.token) {
      LaunchBar.openURL('https://github.com/prerelease/agreement');
      LaunchBar.openURL('https://github.com/settings/tokens');
      LaunchBar.alert("It looks like this is the first time you're using " +
        "this action.\n\nPlease go to https://github.com/settings/tokens " +
        "and create token with 'repo' scope and set it by invoking the " +
        "github action and typing !set-token <token>");
      return;
    }

    result = HTTP.post('https://api.github.com/graphql', {
      headerFields: { authorization: 'token ' + Action.preferences.token },
      body: JSON.stringify({ query: query, variables: variables })
    });

    LaunchBar.debugLog(JSON.stringify(result));

    if (result.data) {
      return JSON.parse(result.data);
    }
  }
}

module.exports.Account = Account;
{'fraction_non_alphanumeric': 0.13784324422622296, 'fraction_numerical': 0.006546644844517185, 'mean_word_length': 2.4547738693467336, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 7, 'https://': 18, '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': '744615', 'n_tokens_mistral': 1775, 'n_tokens_neox': 1671, 'n_words': 329}