From 5143e7bf065a3cbdf8400cf095b653d51bc83b8f Mon Sep 17 00:00:00 2001 From: Misko Hevery Date: Fri, 6 Jan 2012 18:10:47 -0800 Subject: feat(module): new module loader --- src/AngularPublic.js | 80 ++++++++++++++++++++++++++-------------------------- 1 file changed, 40 insertions(+), 40 deletions(-) (limited to 'src/AngularPublic.js') diff --git a/src/AngularPublic.js b/src/AngularPublic.js index 7664ed8c..ef3d3ccb 100644 --- a/src/AngularPublic.js +++ b/src/AngularPublic.js @@ -30,7 +30,7 @@ function publishExternalAPI(angular){ 'equals': equals, 'element': jqLite, 'forEach': forEach, - 'injector': function(){ return createInjector(arguments, angularModule); }, + 'injector': function(){ return createInjector(arguments); }, 'noop':noop, 'bind':bind, 'toJson': toJson, @@ -51,46 +51,46 @@ function publishExternalAPI(angular){ 'callbacks': {counter: 0} }); - angularModule.ng = ngModule; -} - -ngModule.$inject = ['$provide', '$injector']; -function ngModule($provide, $injector) { -// TODO(misko): temporary services to get the compiler working; - $provide.value('$textMarkup', angularTextMarkup); - $provide.value('$attrMarkup', angularAttrMarkup); - $provide.value('$directive', angularDirective); - $provide.value('$widget', angularWidget); + angularModule = setupModuleLoader(window); + try { + angularModule('ngLocale'); + } catch (e) { + angularModule('ngLocale', []).service('$locale', $LocaleProvider); + } - // load the LOCALE if present - $injector.invoke(null, angularModule.ngLocale || function(){ - $provide.service('$locale', $LocaleProvider); - }); + angularModule('ng', ['ngLocale'], ['$provide', '$injector', + function ngModule($provide, $injector) { + // TODO(misko): temporary services to get the compiler working; + $provide.value('$textMarkup', angularTextMarkup); + $provide.value('$attrMarkup', angularAttrMarkup); + $provide.value('$directive', angularDirective); + $provide.value('$widget', angularWidget); - $provide.service('$autoScroll', $AutoScrollProvider); - $provide.service('$browser', $BrowserProvider); - $provide.service('$cacheFactory', $CacheFactoryProvider); - $provide.service('$compile', $CompileProvider); - $provide.service('$cookies', $CookiesProvider); - $provide.service('$cookieStore', $CookieStoreProvider); - $provide.service('$defer', $DeferProvider); - $provide.service('$document', $DocumentProvider); - $provide.service('$exceptionHandler', $ExceptionHandlerProvider); - $provide.service('$filter', $FilterProvider); - $provide.service('$interpolate', $InterpolateProvider); - $provide.service('$formFactory', $FormFactoryProvider); - $provide.service('$http', $HttpProvider); - $provide.service('$httpBackend', $HttpBackendProvider); - $provide.service('$location', $LocationProvider); - $provide.service('$log', $LogProvider); - $provide.service('$parse', $ParseProvider); - $provide.service('$resource', $ResourceProvider); - $provide.service('$route', $RouteProvider); - $provide.service('$routeParams', $RouteParamsProvider); - $provide.service('$rootScope', $RootScopeProvider); - $provide.service('$q', $QProvider); - $provide.service('$sniffer', $SnifferProvider); - $provide.service('$templateCache', $TemplateCacheProvider); - $provide.service('$window', $WindowProvider); + $provide.service('$autoScroll', $AutoScrollProvider); + $provide.service('$browser', $BrowserProvider); + $provide.service('$cacheFactory', $CacheFactoryProvider); + $provide.service('$compile', $CompileProvider); + $provide.service('$cookies', $CookiesProvider); + $provide.service('$cookieStore', $CookieStoreProvider); + $provide.service('$defer', $DeferProvider); + $provide.service('$document', $DocumentProvider); + $provide.service('$exceptionHandler', $ExceptionHandlerProvider); + $provide.service('$filter', $FilterProvider); + $provide.service('$interpolate', $InterpolateProvider); + $provide.service('$formFactory', $FormFactoryProvider); + $provide.service('$http', $HttpProvider); + $provide.service('$httpBackend', $HttpBackendProvider); + $provide.service('$location', $LocationProvider); + $provide.service('$log', $LogProvider); + $provide.service('$parse', $ParseProvider); + $provide.service('$resource', $ResourceProvider); + $provide.service('$route', $RouteProvider); + $provide.service('$routeParams', $RouteParamsProvider); + $provide.service('$rootScope', $RootScopeProvider); + $provide.service('$q', $QProvider); + $provide.service('$sniffer', $SnifferProvider); + $provide.service('$templateCache', $TemplateCacheProvider); + $provide.service('$window', $WindowProvider); + }]); } -- cgit v1.2.3