diff --git a/gulpfile.js b/gulpfile.js
index 7ebe428c9d..b719d287ca 100644
--- a/gulpfile.js
+++ b/gulpfile.js
@@ -71,7 +71,8 @@ gulp.task('min:js', ['clean:js'], function () {
'!' + paths.minJs,
'!' + paths.jsDir + 'fallback*.js',
'!' + paths.jsDir + 'u2f-connector.js',
- '!' + paths.jsDir + 'duo.js'
+ '!' + paths.jsDir + 'duo.js',
+ '!' + paths.jsDir + 'settings.js'
], { base: '.' })
.pipe(concat(paths.concatJsDest))
.pipe(uglify())
@@ -332,6 +333,10 @@ gulp.task('dist:move', function () {
src: paths.jsDir + 'duo.js',
dest: paths.dist + 'js'
},
+ {
+ src: paths.jsDir + 'settings.js',
+ dest: paths.dist + 'js'
+ },
{
src: paths.jsDir + 'bw.min.js',
dest: paths.dist + 'js'
diff --git a/settings.Preview.json b/settings.Preview.json
index 9312e40652..d12e8b4af1 100644
--- a/settings.Preview.json
+++ b/settings.Preview.json
@@ -3,6 +3,9 @@
"apiUri": "https://preview-api.bitwarden.com",
"identityUri": "https://preview-identity.bitwarden.com",
"stripeKey": "pk_test_KPoCfZXu7mznb9uSCPZ2JpTD",
- "braintreeKey": "sandbox_r72q8jq6_9pnxkwm75f87sdc2"
+ "braintreeKey": "sandbox_r72q8jq6_9pnxkwm75f87sdc2",
+ "whitelistDomains": [
+ "preview-api.bitwarden.com"
+ ]
}
}
diff --git a/settings.Production.json b/settings.Production.json
index b79d874b52..45d76f6f37 100644
--- a/settings.Production.json
+++ b/settings.Production.json
@@ -3,6 +3,9 @@
"apiUri": "https://api.bitwarden.com",
"identityUri": "https://identity.bitwarden.com",
"stripeKey": "pk_live_bpN0P37nMxrMQkcaHXtAybJk",
- "braintreeKey": "production_qfbsv8kc_njj2zjtyngtjmbjd"
+ "braintreeKey": "production_qfbsv8kc_njj2zjtyngtjmbjd",
+ "whitelistDomains": [
+ "api.bitwarden.com"
+ ]
}
}
diff --git a/settings.json b/settings.json
index 4b546a078d..ac9bf0bb5e 100644
--- a/settings.json
+++ b/settings.json
@@ -3,6 +3,9 @@
"apiUri": "http://localhost:4000",
"identityUri": "http://localhost:33656",
"stripeKey": "pk_test_KPoCfZXu7mznb9uSCPZ2JpTD",
- "braintreeKey": "sandbox_r72q8jq6_9pnxkwm75f87sdc2"
+ "braintreeKey": "sandbox_r72q8jq6_9pnxkwm75f87sdc2",
+ "whitelistDomains": [
+ "localhost"
+ ]
}
}
diff --git a/src/app/config.js b/src/app/config.js
index 8509faa074..0c02e59b78 100644
--- a/src/app/config.js
+++ b/src/app/config.js
@@ -3,11 +3,13 @@ angular
.config(function ($stateProvider, $urlRouterProvider, $httpProvider, jwtInterceptorProvider, jwtOptionsProvider,
$uibTooltipProvider, toastrConfig, $locationProvider, $qProvider, stripeProvider, appSettings) {
+ angular.extend(appSettings, window.bitwardenAppSettings);
+
$qProvider.errorOnUnhandledRejections(false);
$locationProvider.hashPrefix('');
jwtOptionsProvider.config({
urlParam: 'access_token3',
- whiteListedDomains: ['api.bitwarden.com', 'preview-api.bitwarden.com', 'localhost', '192.168.1.3']
+ whiteListedDomains: appSettings.whitelistDomains
});
var refreshPromise;
jwtInterceptorProvider.tokenGetter = /*@ngInject*/ function (options, tokenService, authService) {
diff --git a/src/app/settings.js b/src/app/settings.js
index 91069ae595..f610d3b67e 100644
--- a/src/app/settings.js
+++ b/src/app/settings.js
@@ -1,2 +1,2 @@
angular.module("bit")
-.constant("appSettings", {"apiUri":"https://api.bitwarden.com","identityUri":"https://identity.bitwarden.com","stripeKey":"pk_live_bpN0P37nMxrMQkcaHXtAybJk","braintreeKey":"production_qfbsv8kc_njj2zjtyngtjmbjd","version":"1.14.3","environment":"Production"});
+.constant("appSettings", {"apiUri":"https://api.bitwarden.com","identityUri":"https://identity.bitwarden.com","stripeKey":"pk_live_bpN0P37nMxrMQkcaHXtAybJk","braintreeKey":"production_qfbsv8kc_njj2zjtyngtjmbjd","whitelistDomains":["api.bitwarden.com"],"version":"1.14.3","environment":"Production"});
diff --git a/src/index.html b/src/index.html
index 152f978105..af3acd4c67 100644
--- a/src/index.html
+++ b/src/index.html
@@ -85,6 +85,7 @@
+
@@ -102,6 +103,7 @@
+
diff --git a/src/js/settings.js b/src/js/settings.js
new file mode 100644
index 0000000000..7e8aedb468
--- /dev/null
+++ b/src/js/settings.js
@@ -0,0 +1 @@
+var bitwardenAppSettings = {};