David,
just for clarification, in your example are you using the window object to inject your constants so they could be globally accessed?
(function() {
"use strict";
angular
.module('custom-bpmnjs', [
// Angular modules
'ngAnimate',
'ngAria',
'ngMessages',
// 3rd Party Modules
'ui.router',
'ui.bootstrap',
'ngStorage',
'pascalprecht.translate',
'toaster'
])
.constant('Modeler', window.BpmnJSCustom.Modeler)
.constant('Viewer', window.BpmnJSCustom.Viewer)
.constant('PropertiesProviders', window.BpmnJSCustom.PropertiesProviders);
})();