[Framework] Add RequireJS configurator

Add a configuration step (as part of the resolve phase)
to the framework layer, where bundle-defined paths and shims
are passed to RequireJS configuration. This permits both
the use of non-AMD modules and the exposure of libraries
across bundles. WTD-568.
This commit is contained in:
Victor Woeltjen
2015-01-02 17:46:50 -08:00
parent d281bd52de
commit 96aaea5e58
8 changed files with 191 additions and 9 deletions

View File

@ -23,6 +23,7 @@ define(
'./resolve/ImplementationLoader',
'./resolve/ExtensionResolver',
'./resolve/BundleResolver',
'./resolve/RequireConfigurator',
'./register/CustomRegistrars',
'./register/ExtensionRegistrar',
'./bootstrap/ApplicationBootstrapper'
@ -37,6 +38,7 @@ define(
ImplementationLoader,
ExtensionResolver,
BundleResolver,
RequireConfigurator,
CustomRegistrars,
ExtensionRegistrar,
ApplicationBootstrapper
@ -55,10 +57,14 @@ define(
function initializeApplication($http, $log) {
var app = angular.module(Constants.MODULE_NAME, ["ngRoute"]),
loader = new BundleLoader($http, $log),
resolver = new BundleResolver(new ExtensionResolver(
new ImplementationLoader(require),
resolver = new BundleResolver(
new ExtensionResolver(
new ImplementationLoader(require),
$log
),
new RequireConfigurator(requirejs),
$log
), $log),
),
registrar = new ExtensionRegistrar(
app,
new CustomRegistrars(app, $log),