feat(ST2.WebPackages): AngularJS type definitions

- Alpha version - awaiting a number of new features in
   the CoffeeComplete Plus package to make this more
   functional, simplify the type definitions.
 - Awaiting inheritance, return types for properties and functions,
   display customization of property / function names, ctor support,
   ability to store Angular definitions separately
 - Adds support for all Angular APIs
This commit is contained in:
Iristyle
2013-04-15 08:35:28 -04:00
committed by Iristyle
parent 6ad8dc2ce1
commit 0eff36c438
3 changed files with 3568 additions and 1 deletions

View File

@@ -0,0 +1,153 @@
{
"coffee_autocomplete_plus_no_implicit_parens": true,
// Map function names to types.
"coffee_autocomplete_plus_function_return_types":
[
{
"function_names": ["$", "jQuery"],
"type_name": "$"
},
// HACK: need "class" + method name for correctness, prefer "return" in custom types
// https://github.com/justinmahar/SublimeCSAutocompletePlus/issues/24
{
"function_names": ["$animation"],
"type_name": "$animation"
},
{
"function_names": ["$animator"],
"type_name": "$animator"
},
{
"function_names": ["$cacheFactory"],
"type_name": "$cacheFactory"
},
{
"function_names": ["$compile"],
"type_name": "ngLinkFunction"
},
{
"function_names": [
"$controller",
"controller", //Module.controller
"register" //$controllerProvider.register
],
"type_name": "$controller"
},
{
"function_names": [
"$exceptionHandler"
],
"type_name": "$exceptionHandler"
},
{
"function_names": [
"$parse"
],
"type_name": "ngParseFunction"
},
{
"function_names": [
"$http", // empty $http() is a special config fn
"delete", // $http.delete
"get", // $http.get
"head", // $http.head
"jsonp", // $http.jsonp
"post", // $http.post
"put" // $http.put
],
"type_name": "ngHttpPromise"
},
{
"function_names": [
"expect", // $httpBackend.expect
"expectDELETE", // $httpBackend.expectDELETE
"expectGET", // $httpBackend.expectGET
"expectHEAD", // $httpBackend.expectHEAD
"expectJSONP", // $httpBackend.expectJSONP
"expectPATCH", // $httpBackend.expectPATCH
"expectPOST", // $httpBackend.expectPOST
"expectPUT", // $httpBackend.expectPUT
"when", // $httpBackend.when
"whenDELETE", // $httpBackend.whenDELETE
"whenGET", // $httpBackend.whenGET
"whenHEAD", // $httpBackend.whenHEAD
"whenJSONP", // $httpBackend.whenJSONP
"whenPATCH", // $httpBackend.whenPATCH
"whenPOST", // $httpBackend.whenPOST
"whenPUT" // $httpBackend.whenPUT
],
"type_name": "ngHttpBackendResponse"
},
{
"function_names": [
"all", // $q.all
"reject", // $q.reject
"promise", // deferred.promise
"then" // promise.then
//"when" // $q.when -- conflicts with above $httpBackend stuff
],
"type_name": "ngPromise"
},
{
"function_names": [
"defer" // $q.defer
],
"type_name": "ngDeferred"
},
{
"function_names": [
"element" // "angular.element"
],
"type_name": "jqLite"
},
{
"function_names": [
"bootstrap", //angular.bootstrap
"injector" //angular.injector
//"$rootElement.injector"
],
"type_name": "$injector"
},
{
"function_names": [
"TzDate" //"angular.mock.TzDate"
],
"type_name": "ngTzDate"
},
{
"function_names": [
"directive", //"Module.directive"
"urlSanitizationWhitelist" // $compileProvider.urlSanitizationWhitelist(regexp)
],
"type_name": "$compileProvider"
},
{
"function_names": [
"module" //"angular.module", "angular.mock.module"
],
"type_name": "ngModule"
},
{
"function_names": [
"$broadcast" // Scope.$broadcast / $rootscope.$broadcast
],
"type_name": "ngEvent"
},
{
"function_names": [
"scope", //jqLite.scope / $document.scope
//"Scope",
"$new" // Scope.$new / $rootscope.$new
],
"type_name": "ngScope"
},
{
"function_names": ["$resource"],
"type_name": "$resource"
},
{
"function_names": ["$timeout"],
"type_name": "$timeout"
}
]
}

View File

@@ -23,7 +23,9 @@ try {
$sublimeUserDataPath = Get-SublimeUserPath
#straight file copies
'CoffeeScript.sublime-settings' |
'CoffeeScript.sublime-settings',
'CoffeeComplete Plus Custom Types.sublime-settings',
'CoffeeComplete Plus.sublime-settings' |
% {
$params = @{
Path = Join-Path $current $_;