Skip to content

Commit 2c96e9e

Browse files
committed
Merge pull request DefinitelyTyped#4755 from devnixs/master
Added typescript definitions for angular-odata-resources
2 parents 82b2745 + af8ab18 commit 2c96e9e

File tree

2 files changed

+492
-0
lines changed

2 files changed

+492
-0
lines changed
Lines changed: 188 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,188 @@
1+
/// <reference path="angular-odata-resources.d.ts" />
2+
3+
interface IMyResource extends OData.IResource<IMyResource> { };
4+
interface IMyResourceClass extends OData.IResourceClass<IMyResource> { };
5+
6+
///////////////////////////////////////
7+
// IActionDescriptor
8+
///////////////////////////////////////
9+
var actionDescriptor: OData.IActionDescriptor;
10+
11+
actionDescriptor.url = '/api/test-url/'
12+
actionDescriptor.headers = { header: 'value' };
13+
actionDescriptor.isArray = true;
14+
actionDescriptor.method = 'method action';
15+
actionDescriptor.params = { key: 'value' };
16+
17+
///////////////////////////////////////
18+
// IResourceClass
19+
///////////////////////////////////////
20+
var resourceClass: IMyResourceClass;
21+
var resource: IMyResource;
22+
var resourceArray: OData.IResourceArray<IMyResource>;
23+
24+
resource = resourceClass.delete();
25+
resource = resourceClass.delete({ key: 'value' });
26+
resource = resourceClass.delete({ key: 'value' }, function() { });
27+
resource = resourceClass.delete(function() { });
28+
resource = resourceClass.delete(function() { }, function() { });
29+
resource = resourceClass.delete({ key: 'value' }, { key: 'value' });
30+
resource = resourceClass.delete({ key: 'value' }, { key: 'value' }, function() { });
31+
resource = resourceClass.delete({ key: 'value' }, { key: 'value' }, function() { }, function() { });
32+
resource.$promise.then(function(data: IMyResource) { });
33+
34+
resource = resourceClass.get();
35+
resource = resourceClass.get({ key: 'value' });
36+
resource = resourceClass.get({ key: 'value' }, function() { });
37+
resource = resourceClass.get(function() { });
38+
resource = resourceClass.get(function() { }, function() { });
39+
resource = resourceClass.get({ key: 'value' }, { key: 'value' });
40+
resource = resourceClass.get({ key: 'value' }, { key: 'value' }, function() { });
41+
resource = resourceClass.get({ key: 'value' }, { key: 'value' }, function() { }, function() { });
42+
43+
resourceArray = resourceClass.query();
44+
resourceArray = resourceClass.query({ key: 'value' });
45+
resourceArray = resourceClass.query({ key: 'value' }, function() { });
46+
resourceArray = resourceClass.query(function() { });
47+
resourceArray = resourceClass.query(function() { }, function() { });
48+
resourceArray = resourceClass.query({ key: 'value' }, { key: 'value' });
49+
resourceArray = resourceClass.query({ key: 'value' }, { key: 'value' }, function() { });
50+
resourceArray = resourceClass.query({ key: 'value' }, { key: 'value' }, function() { }, function() { });
51+
resourceArray.push(resource);
52+
resourceArray.$promise.then(function(data: OData.IResourceArray<IMyResource>) { });
53+
54+
resource = resourceClass.remove();
55+
resource = resourceClass.remove({ key: 'value' });
56+
resource = resourceClass.remove({ key: 'value' }, function() { });
57+
resource = resourceClass.remove(function() { });
58+
resource = resourceClass.remove(function() { }, function() { });
59+
resource = resourceClass.remove({ key: 'value' }, { key: 'value' });
60+
resource = resourceClass.remove({ key: 'value' }, { key: 'value' }, function() { });
61+
resource = resourceClass.remove({ key: 'value' }, { key: 'value' }, function() { }, function() { });
62+
63+
resource = resourceClass.save();
64+
resource = resourceClass.save({ key: 'value' });
65+
resource = resourceClass.save({ key: 'value' }, function() { });
66+
resource = resourceClass.save(function() { });
67+
resource = resourceClass.save(function() { }, function() { });
68+
resource = resourceClass.save({ key: 'value' }, { key: 'value' });
69+
resource = resourceClass.save({ key: 'value' }, { key: 'value' }, function() { });
70+
resource = resourceClass.save({ key: 'value' }, { key: 'value' }, function() { }, function() { });
71+
72+
///////////////////////////////////////
73+
// IResource
74+
///////////////////////////////////////
75+
76+
var promise: angular.IPromise<IMyResource>;
77+
var arrayPromise: angular.IPromise<IMyResource[]>;
78+
79+
promise = resource.$delete();
80+
promise = resource.$delete({ key: 'value' });
81+
promise = resource.$delete({ key: 'value' }, function() { });
82+
promise = resource.$delete(function() { });
83+
promise = resource.$delete(function() { }, function() { });
84+
promise = resource.$delete({ key: 'value' }, function() { }, function() { });
85+
promise.then(function(data: IMyResource) { });
86+
87+
promise = resource.$get();
88+
promise = resource.$get({ key: 'value' });
89+
promise = resource.$get({ key: 'value' }, function() { });
90+
promise = resource.$get(function() { });
91+
promise = resource.$get(function() { }, function() { });
92+
promise = resource.$get({ key: 'value' }, function() { }, function() { });
93+
94+
arrayPromise = resourceArray[0].$query();
95+
arrayPromise = resourceArray[0].$query({ key: 'value' });
96+
arrayPromise = resourceArray[0].$query({ key: 'value' }, function() { });
97+
arrayPromise = resourceArray[0].$query(function() { });
98+
arrayPromise = resourceArray[0].$query(function() { }, function() { });
99+
arrayPromise = resourceArray[0].$query({ key: 'value' }, function() { }, function() { });
100+
arrayPromise.then(function(data: OData.IResourceArray<IMyResource>) { });
101+
102+
promise = resource.$remove();
103+
promise = resource.$remove({ key: 'value' });
104+
promise = resource.$remove({ key: 'value' }, function() { });
105+
promise = resource.$remove(function() { });
106+
promise = resource.$remove(function() { }, function() { });
107+
promise = resource.$remove({ key: 'value' }, function() { }, function() { });
108+
109+
promise = resource.$save();
110+
promise = resource.$save({ key: 'value' });
111+
promise = resource.$save({ key: 'value' }, function() { });
112+
promise = resource.$save(function() { });
113+
promise = resource.$save(function() { }, function() { });
114+
promise = resource.$save({ key: 'value' }, function() { }, function() { });
115+
116+
///////////////////////////////////////
117+
// IResourceService
118+
///////////////////////////////////////
119+
var resourceService: OData.IResourceService;
120+
resourceClass = resourceService<IMyResource, IMyResourceClass>('test');
121+
resourceClass = resourceService<IMyResource>('test');
122+
resourceClass = resourceService('test');
123+
124+
///////////////////////////////////////
125+
// IModule
126+
///////////////////////////////////////
127+
var mod: ng.IModule;
128+
var resourceServiceFactoryFunction: OData.IResourceServiceFactoryFunction<IMyResource>;
129+
var resourceService: OData.IResourceService;
130+
131+
resourceClass = resourceServiceFactoryFunction<IMyResourceClass>(resourceService);
132+
133+
resourceServiceFactoryFunction = function(resourceService: OData.IResourceService) { return <any>resourceClass; };
134+
mod = mod.factory('factory name', resourceServiceFactoryFunction);
135+
136+
///////////////////////////////////////
137+
// IResource
138+
///////////////////////////////////////
139+
140+
141+
///////////////////////////////////////
142+
// IResourceServiceProvider
143+
///////////////////////////////////////
144+
var resourceServiceProvider: OData.IResourceServiceProvider;
145+
resourceServiceProvider.defaults.stripTrailingSlashes = false;
146+
147+
148+
149+
///////////////////////////////////////
150+
// OData
151+
///////////////////////////////////////
152+
153+
interface User extends OData.IResource<User> {
154+
name: string;
155+
}
156+
157+
var resourceService: OData.IResourceService;
158+
var odataResourceClass = resourceService<User>("my/url", {}, {}, { odata: { method: 'POST' } });
159+
160+
var Value: OData.ValueFactory;
161+
var Property: OData.PropertyFactory;
162+
var Predicate: OData.PredicateFactory;
163+
164+
var users = odataResourceClass.odata().query();
165+
166+
users[0].name;
167+
users[0].$save;
168+
169+
var user = odataResourceClass.odata()
170+
.filter(new Value("1", OData.ValueTypes.Int32), new Property("abc"))
171+
.filter("Name", "John")
172+
.filter("Age", ">", 20)
173+
.skip(10)
174+
.take(20)
175+
.orderBy("Name", "desc")
176+
.single();
177+
user.$save();
178+
179+
var predicate1 = new Predicate("a", "b");
180+
var predicate2 = new Predicate("c", "d");
181+
var predicate3 = new Predicate("Age", '>', 10);
182+
183+
var combination1 = Predicate.or([predicate1, predicate2]);
184+
var combination2 = Predicate.and([combination1, predicate2]);
185+
186+
var predicate = new Predicate("FirstName", "John")
187+
.or(new Predicate("LastName", '!=', "Doe"))
188+
.and(new Predicate("Age", '>', 10));

0 commit comments

Comments
 (0)