example of _thirdPartyScripts using promises
define([
'config',
'scriptjs',
'bluebird'
], function (config, $script, Promise) {
'use strict';
return {
load: () => new Promise((resolve, reject) => {
let scripts = [
'/mew20/scripts/util/popStateFix.js',
'/mew20/scripts/util/itunesLoader.js',
'/mew20/scripts/util/gatewayLoader.js'
];
if (App.config.BrightTag.siteId) {
scripts.push('//s.btstatic.com/tag.js#site=' + App.config.BrightTag.siteId);
}
var tealiumKS = ENV_CONFIG.tealium_enabled === 'on' ? true : false;
if (tealiumKS) {
var tealiumEnvironment = ENV_CONFIG.tealium_environment,
brand = App.config.brand,
brandNameForTealium = brand === 'mcom' ? 'macys' : brand;
scripts.push('//tags.tiqcdn.com/utag/' + brandNameForTealium + '/main/' + tealiumEnvironment + '/utag.js');
}
$script(scripts, 'bundle');
$script.ready('bundle', resolve, reject);
})
};
});
// usage
require('_thirdPartyScripts.promise.js').load().then(() => {
console.log('ready!');
});