From 4c46317f249417fcd7421c3f5c38edf33d2f447d Mon Sep 17 00:00:00 2001 From: Kyle Spearrin Date: Mon, 7 Aug 2017 21:08:15 -0400 Subject: [PATCH] extension appsettings with runtime loadable props --- gulpfile.js | 7 ++++++- settings.Preview.json | 5 ++++- settings.Production.json | 5 ++++- settings.json | 5 ++++- src/app/config.js | 4 +++- src/app/settings.js | 2 +- src/index.html | 2 ++ src/js/settings.js | 1 + 8 files changed, 25 insertions(+), 6 deletions(-) create mode 100644 src/js/settings.js 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 = {};