diff --git a/scripts/generate/js_api.js b/scripts/generate/js_api.js index edaa1f203..a1b971149 100644 --- a/scripts/generate/js_api.js +++ b/scripts/generate/js_api.js @@ -75,11 +75,11 @@ module.exports = function (branch, done) { // collect the namespaces from the action locations var namespaces = _.filter(_.map(actions, function (action) { - if (~action.location.indexOf('.')) { - var path = action.location.split('.').slice(0, -1); - _.pull(path, 'prototype'); - return path.join('.'); - } + return action.location + .split('.') + .slice(0, -1) + .filter(step => step !== 'prototype') + .join('.prototype.') })); // seperate the proxy actions diff --git a/scripts/generate/templates/api_file.tmpl b/scripts/generate/templates/api_file.tmpl index daf749b3d..569de5035 100644 --- a/scripts/generate/templates/api_file.tmpl +++ b/scripts/generate/templates/api_file.tmpl @@ -10,7 +10,12 @@ var api = module.exports = {}; api._namespaces = <%= stringify(namespaces) %>;<% _.each(actions, function (action) { - var namespace = action.location.split('.').shift(); + const namespace = action.location + .split('.') + .slice(0, -1) + .filter(step => step !== 'prototype') + .join('.prototype.'); + if (_.include(namespaces, namespace)) { _.pull(namespaces, namespace); %>