// This is a default configuration for your development environment.
// You can duplicate this configuration for any of your Backend Environments.
// Different configurations are loaded setting a NODE_ENV variable that contain the config file name.
// `NODE_ENV=local npm start`
//
// If xoscsrftoken or xossessionid are not specified the browser value are used
// (works only for local environment as both application are served on the same domain)

module.exports = {
  host: 'http://xos.dev:9999/',
  xoscsrftoken: 'p5xTzNM2gHDnCpZO4GphloROs0kXmTDX',
  xossessionid: 'fw0fio7kuwi9z5sm100xtat5cm5jbp5j'
};
