From 8a76cd506f3f215677006e6509513bc33692dcaf Mon Sep 17 00:00:00 2001 From: Raul Ochoa Date: Fri, 17 Feb 2017 13:35:41 +0100 Subject: [PATCH] Fix issue with global Promise object --- .../models/mapconfig/adapter/turbo-carto-adapter.js | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/lib/cartodb/models/mapconfig/adapter/turbo-carto-adapter.js b/lib/cartodb/models/mapconfig/adapter/turbo-carto-adapter.js index b9487095..46efd100 100644 --- a/lib/cartodb/models/mapconfig/adapter/turbo-carto-adapter.js +++ b/lib/cartodb/models/mapconfig/adapter/turbo-carto-adapter.js @@ -4,6 +4,13 @@ var dot = require('dot'); dot.templateSettings.strip = false; var queue = require('queue-async'); var PSQL = require('cartodb-psql'); +/** + * cartodb-psql creates `global.Promise` as an empty constructor. + * However, `turbo-carto` relies on a polyfil that fails to create the polyfil + * as it finds `global.Promise` but it doesn't find `Promise.resolve`. + */ +global.Promise = global.Promise || function() {}; +global.Promise.resolve = global.Promise.resolve || function() {}; var turboCarto = require('turbo-carto'); var SubstitutionTokens = require('../../../utils/substitution-tokens');