UNPKG

@speakr/speakr-module-services

Version:
82 lines (77 loc) 5.67 kB
'use strict'; let config = require('../config'); let env = getEnv(process.env.NODE_ENV); function getEnv(environment) { switch (environment) { case 'development': return setEnv(config.development); break; case 'test': return setEnv(config.test); break; case 'demo': return setEnv(config.demo); break; case 'stage': return setEnv(config.stage); break; case 'iheart': return setEnv(config.iheart); break; case 'production': return setEnv(config.production); break; default: return setEnv(config.development); break; } } function setEnv(config) { return { DOMAIN: config.domain || 'jptr.io', INFLUENCER_APP: config.influencer_app || 'http://influencer.speakr.com', INFLUENCER_API: config.influencer_api || 'http://api.speakr.com/app', PLATFORM: config.platform || 'speakr', NODE_ENV: config.environment || 'development', PORT: config.service.port || 8080, ISSUER: config.service.issuer || 'http://speakr.com', FORCE_SSL_ONLY: config.service.ssl || false, SERVICE_PREFIX: config.service.prefix || null, DATABASE_URL: config.database.url || 'http://localhost:5432', DATABASE_NAME: config.database.database || null, DATABASE_HOST: config.database.host || null, DATABASE_USERNAME: config.database.username || null, DATABASE_PASSWORD: config.database.password || null, DATABASE_PORT: config.database.port || 5432, DATABASE_DIALECT: config.database.dialect || 'postgres', REDIS_HOST: config.redis.host || 'localhost', REDIS_PASSWORD: config.redis.password || null, REDIS_PORT: config.redis.port || 6370, AUTH_EXPIRES: config.session.expires || 60000 * 60 * 24 * 30, //@info expires in 30 days AUTH_ALGORITHM: config.crypto.algorithm || 'HS256', //@info HMAC + SIGNED @ 256 AWS_S3_ACCESS_KEY: config.aws.access_key || null, AWS_S3_SECRET_KEY: config.aws.secret_key || null, AWS_REGION: config.aws.reqion || 'us-west-1', AWS_S3_BUCKET_LOCAL_PATH: config.aws.aws_s3_bucket_local_path || null, AWS_S3_BUCKET: config.aws.aws_s3_bucket || null, AWS_S3_BUCKET_HOST: config.aws.aws_s3_bucket_host || null, MANDRILL_API_KEY: config.mandrill.api_key || null, MAILCHIMP_API_KEY: config.mailchimp.api_key || null, MAILCHIMP_INSTANCE: config.mailchimp.instance || null, MAILCHIMP_INFLUENCER_LIST: config.mailchimp.influencer_list || null, INTERCOM_HMAC: config.intercom.hmacKey || '', MASSPAY: config.masspay || null, PAYPAL: config.paypal || null, // FACEBOOK_CLIENT_ID: config.facebook.client_id || '1501663793441088', // FACEBOOK_CLIENT_SECRET: config.facebook.client_secret || '00dfb7c4fc5536fd8c2d906184346d52', // FACEBOOK_TWTMOB_ACCESS_TOKEN: config.facebook.access_token || '', ACCESS_CONTROL_ALLOW_ORIGIN: config.cors.origin || '*', ACCESS_CONTROL_ALLOW_METHODS: config.cors.methods || 'GET,HEAD,PUT,POST,DELETE,OPTIONS,PATCH', ACCESS_CONTROL_ALLOW_MAX_AGE: config.cors.max_age || 3600000, ACCESS_CONTROL_EXPOSE_HEADERS: config.cors.headers || 'X-Auth-Token, Accept, Accept-CH, Accept-Charset, Accept-Datetime, Accept-Encoding, Accept-Ext, Accept-Features, Accept-Language, Accept-Params, Accept-Ranges, Access-Control-Allow-Credentials, Access-Control-Allow-Headers, Access-Control-Allow-Methods, Access-Control-Allow-Origin, Access-Control-Expose-Headers, Access-Control-Max-Age, Access-Control-Request-Headers, Access-Control-Request-Method, Age, Allow, Alternates, Authentication-Info, Authorization, C-Ext, C-Man, C-Opt, C-PEP, C-PEP-Info, CONNECT, Cache-Control, Compliance, Connection, Content-Base, Content-Disposition, Content-Encoding, Content-ID, Content-Language, Content-Length, Content-Location, Content-MD5, Content-Range, Content-Script-Type, Content-Security-Policy, Content-Style-Type, Content-Transfer-Encoding, Content-Type, Content-Version, Cookie, Cost, DAV, DELETE, DNT, DPR, Date, Default-Style, Delta-Base, Depth, Derived-From, Destination, Differential-ID, Digest, ETag, Expect, Expires, Ext, From, GET, GetProfile, HEAD, HTTP-date, Host, IM, If, If-Match, If-Modified-Since, If-None-Match, If-Range, If-Unmodified-Since, Keep-Alive, Label, Last-Event-ID, Last-Modified, Link, Location, Lock-Token, MIME-Version, Man, Max-Forwards, Media-Range, Message-ID, Meter, Negotiate, Non-Compliance, OPTION, OPTIONS, OWS, Opt, Optional, Ordering-Type, Origin, Overwrite, P3P, PEP, PICS-Label, POST, PUT, Pep-Info, Permanent, Position, Pragma, ProfileObject, Protocol, Protocol-Query, Protocol-Request, Proxy-Authenticate, Proxy-Authentication-Info, Proxy-Authorization, Proxy-Features, Proxy-Instruction, Public, RWS, Range, Referer, Refresh, Resolution-Hint, Resolver-Location, Retry-After, Safe, Sec-Websocket-Extensions, Sec-Websocket-Key, Sec-Websocket-Origin, Sec-Websocket-Protocol, Sec-Websocket-Version, Security-Scheme, Server, Set-Cookie, Set-Cookie2, SetProfile, SoapAction, Status, Status-URI, Strict-Transport-Security, SubOK, Subst, Surrogate-Capability, Surrogate-Control, TCN, TE, TRACE, Timeout, Title, Trailer, Transfer-Encoding, UA-Color, UA-Media, UA-Pixels, UA-Resolution, UA-Windowpixels, URI, Upgrade, User-Agent, Variant-Vary, Vary, Version, Via, Viewport-Width, WWW-Authenticate, Want-Digest, Warning, Width, X-Content-Duration, X-Content-Security-Policy, X-Content-Type-Options, X-CustomHeader, X-DNSPrefetch-Control, X-Forwarded-For, X-Forwarded-Port, X-Forwarded-Proto, X-Frame-Options, X-Modified, X-OTHER, X-PING, X-PINGOTHER, X-Powered-By, X-Requested-With' }; } module.exports = env;