<commit_before>// #config development
const mode = 'development'; // development, production
const project = 'nodetomic-api';

import path from 'path';

export default {
  mode : mode, // Mode
  root : path.normalize(`${__dirname}/../../`), // Path Root
  base : path.normalize(`${__dirname}/..`), // Path Root
  client : 'client', // Folder Client
  server : { // Server listen
    ip: 'localhost',
    port: 8000
  },
  secret : `s3kr3t_$k3y_&5ess10n?%-${project}-${mode}`, // Secret key
  session : 'defaultStore', // defaultStore, mongoStore, redisStore / [Required for Twitter oAuth or sessions local...]
  login : {
    redirect: '/home' // redirect when login success
  },
  // Roles
  roles : [
    {
      rol: 'user',
      time: 120 // 120 minutes
    },
    {
      rol: 'admin',
      time: 1440 // 24 hours
    }
  ],
  router : {
    ignore: ['example'] //Ignore Routers in /api/example
  },
  path : { // paths 404
    disabled: '/:url(api|assets|lib|bower_components)/*'
  },
  database : { // DataBase
    mongo: { // MongoDb
      db: {
        uri: `mongodb://localhost:27017/${project}-${mode}`, // [format-> mongodb://username:password@host:port/database?options]
        options: {
          useMongoClient: false
        },
        seeds: [
          {
            model: 'User',
            seed: 'alway' //once - alway - never
          }, {
            model: 'Hello',
            seed: 'alway'
          }
        ]
      }
    }
    // Other DataBase
  },
  email : { // Email Config
    host: 'hostexample',
    secure: true,
    port: 465,
    auth: {
      user: '<EMAIL>',
      pass: '<PASSWORD>'
    }
  },
  swagger : { // Swagger Config
    enabled: true,
    info: {
      title: 'Swagger API',
      version: '1.9.13',
      description: `RESTful API ${project}`,
      "contact": {
        "name": "Developer",
        "url": "http://www.example.com",
        "email": "<EMAIL>"
      },
      "license": {
        "name": "MIT",
        "url": "https://github.com/kevoj/nodetomic-api/blob/master/LICENSE"
      }
    }
  },
  redis : { // Redis
    token: {
      uri: 'redis://127.0.0.1:6379/0', // [format-> redis://user:password@host:port/db-number?db=db-number&password=bar&option=value]
      time: 1440, // by default 1440 minutes = 24 hours,
      multiple: false // if you want multiples logins or only one device in same time
    }
  },
  oAuth : { // oAuth
    facebook: {
      clientID: '',
      clientSecret: '',
      callbackURL: '/auth/facebook/callback'
    },
    twitter: {
      clientID: '',
      clientSecret: '',
      callbackURL: '/auth/twitter/callback'
    },
    google: {
      clientID: '',
      clientSecret: '',
      callbackURL: '/auth/google/callback'
    },<commit_msg>refactor swagger api<commit_after>// #config development
const mode = 'development'; // development, production
const project = 'nodetomic-api';

import path from 'path';

export default {
  mode : mode, // Mode
  root : path.normalize(`${__dirname}/../../`), // Path Root
  base : path.normalize(`${__dirname}/..`), // Path Base
  client : 'client', // Folder Client
  server : { // Server listen
    ip: 'localhost',
    port: 8000
  },
  secret : `s3kr3t_$k3y_&5ess10n?%-${project}-${mode}`, // Secret key
  session : 'defaultStore', // defaultStore, mongoStore, redisStore / [Required for Twitter oAuth or sessions local...]
  login : {
    redirect: '/home' // redirect when login success
  },
  // Roles
  roles : [
    {
      rol: 'user',
      time: 120 // 120 minutes
    }, {
      rol: 'admin',
      time: 1440 // 24 hours
    }
  ],
  router : {
    ignore: ['example'] //Ignore Routers in /api/example
  },
  path : { // paths 404
    disabled: '/:url(api|assets|lib|bower_components)/*'
  },
  database : { // DataBase
    mongo: { // MongoDb
      db: {
        uri: `mongodb://localhost:27017/${project}-${mode}`, // [format-> mongodb://username:password@host:port/database?options]
        options: {
          useMongoClient: false
        },
        seeds: [
          {
            model: 'User',
            path: '../api/v1/user/user.seed',
            seed: 'alway' //once - alway - never
          }, {
            model: 'Hello',
            path: '../api/v2/hello/hello.seed',
            seed: 'alway'
          }
        ]
      }
    }
    // Other DataBase
  },
  email : { // Email Config
    host: 'hostexample',
    secure: true,
    port: 465,
    auth: {
      user: '<EMAIL>',
      pass: '<PASSWORD>'
    }
  },
  swagger : { // Swagger Config
    enabled: true,
    title: `${project}`,
    description: `RESTful API ${project}`,
    "contact": {
      "name": "Developer",
      "url": "http://www.example.com",
      "email": "<EMAIL>"
    },
    "license": {
      "name": "MIT",
      "url": "https://github.com/kevoj/nodetomic-api/blob/master/LICENSE"
    }
  },
  redis : { // Redis
    token: {
      uri: 'redis://127.0.0.1:6379/0', // [format-> redis://user:password@host:port/db-number?db=db-number&password=bar&option=value]
      time: 1440, // by default 1440 minutes = 24 hours,
      multiple: false // if you want multiples logins or only one device in same time
    }
  },
  oAuth : { // oAuth
    facebook: {
      clientID: '',
      clientSecret: '',
      callbackURL: '/auth/facebook/callback'
    },
    twitter: {
      clientID: '',
      clientSecret: '',
      callbackURL: '/auth/twitter/callback'
    },
    google: {
      clientID: '',
      clientSecret: '',
      callbackURL: '/auth/google/callback'
    },
{'fraction_non_alphanumeric': 0.1739916802315066, 'fraction_numerical': 0.020618556701030927, 'mean_word_length': 1.997289972899729, 'pattern_counts': {'":': 14, '<': 9, '<?xml version=': 0, '>': 13, 'https://': 2, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 2, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5749813', 'n_tokens_mistral': 1880, 'n_tokens_neox': 1789, 'n_words': 404}