UNPKG

ac-node-hipchat

Version:

A common module plugin for building Atlassian Connect add-ons for HipChat

29 lines (26 loc) 931 B
var _ = require('lodash'); var check = require('check-types'); var verify = check.verify; module.exports = function (nodeEnv, localBaseUrl, servicesFactory) { verify.string(nodeEnv); verify.webUrl(localBaseUrl); verify.fn(servicesFactory); return function (tenant, authToken) { var decoration = {}; var services = servicesFactory(tenant); var tenantBaseUrl = tenant.links.base; _.extend(decoration, services); decoration.locals = { localBaseUrl: localBaseUrl, tenantBaseUrl: tenantBaseUrl, tenantScriptUrl: tenantAsset(tenantBaseUrl, 'js', nodeEnv), tenantStylesheetUrl: tenantAsset(tenantBaseUrl, 'css', nodeEnv), authToken: authToken }; return decoration; }; }; function tenantAsset(tenantBaseUrl, extension, nodeEnv) { var isProd = nodeEnv === 'production'; return tenantBaseUrl + '/atlassian-connect/all' + (isProd ? '' : '-debug') + '.' + extension; }