@progress/sitefinity-webservices-sdk 0.3.1 → 1.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintignore +4 -0
- package/.eslintrc.js +19 -0
- package/ci/pipelines/ci.yml +219 -0
- package/config/helpers.js +0 -6
- package/config/webpack.common.js +1 -3
- package/config/webpack.dev.js +2 -9
- package/config/webpack.prod.js +5 -6
- package/dist/docs/.nojekyll +1 -0
- package/dist/docs/assets/highlight.css +57 -0
- package/dist/docs/assets/icons.css +1043 -0
- package/dist/docs/assets/icons.png +0 -0
- package/dist/docs/assets/icons@2x.png +0 -0
- package/dist/docs/assets/main.js +52 -0
- package/dist/docs/assets/search.js +1 -0
- package/dist/docs/assets/style.css +1413 -0
- package/dist/docs/assets/{images/widgets.png → widgets.png} +0 -0
- package/dist/docs/assets/{images/widgets@2x.png → widgets@2x.png} +0 -0
- package/dist/docs/classes/BlobBuilder.BlobBuilder-1.html +7 -0
- package/dist/docs/classes/Data.Data-1.html +65 -0
- package/dist/docs/classes/Expression.BinaryExpression.html +1 -0
- package/dist/docs/classes/Expression.ComplexExpression.html +1 -0
- package/dist/docs/classes/Expression.ExpressionBase.html +1 -0
- package/dist/docs/classes/OrderProperty.OrderProperty-1.html +1 -0
- package/dist/docs/classes/Query.Query-1.html +33 -0
- package/dist/docs/classes/QueryBase.QueryBase-1.html +7 -0
- package/dist/docs/classes/QueryBuilder.QueryBuilder-1.html +1 -0
- package/dist/docs/classes/Requests_BatchRequest.BatchRequest.html +17 -0
- package/dist/docs/classes/Requests_BatchRequest.Transaction.html +17 -0
- package/dist/docs/classes/Requests_ExecutableRequest.ExecutableRequest.html +1 -0
- package/dist/docs/classes/Requests_Request.CreateRelatedRequest.html +1 -0
- package/dist/docs/classes/Requests_Request.CreateRequest.html +1 -0
- package/dist/docs/classes/Requests_Request.DeleteRelatedByIdRequest.html +1 -0
- package/dist/docs/classes/Requests_Request.DeleteRelatedRequest.html +1 -0
- package/dist/docs/classes/Requests_Request.DeleteRequest.html +1 -0
- package/dist/docs/classes/Requests_Request.GetByIdRequest.html +1 -0
- package/dist/docs/classes/Requests_Request.GetRelatedByIdRequest.html +1 -0
- package/dist/docs/classes/Requests_Request.GetRelatedRequest.html +1 -0
- package/dist/docs/classes/Requests_Request.GetRequest.html +1 -0
- package/dist/docs/classes/Requests_Request.UpdateRequest.html +1 -0
- package/dist/docs/classes/Requests_Request.UploadRequest.html +1 -0
- package/dist/docs/classes/Requests_RequestBase.RequestBase.html +1 -0
- package/dist/docs/classes/Requests_RequestFactory.RequestFactory.html +1 -0
- package/dist/docs/classes/Sitefinity.Sitefinity-1.html +5 -0
- package/dist/docs/classes/WhereQuery.WhereQuery-1.html +31 -0
- package/dist/docs/classes/utils.utils-1.html +1 -0
- package/dist/docs/index.html +54 -242
- package/dist/docs/interfaces/Data.CreateRelatedRequestOptions.html +1 -0
- package/dist/docs/interfaces/Data.CreateRequestOptions.html +1 -0
- package/dist/docs/interfaces/Data.OperationsRequestOptions.html +1 -0
- package/dist/docs/interfaces/Data.PropertyRequestOptions.html +1 -0
- package/dist/docs/interfaces/Data.RequestOptionsBase.html +1 -0
- package/dist/docs/interfaces/Data.SingleRelatedItemRequestOptions.html +1 -0
- package/dist/docs/interfaces/Data.UpdateRequestOptions.html +1 -0
- package/dist/docs/interfaces/Data.UploadRequestOptions.html +1 -0
- package/dist/docs/interfaces/Requests_BatchRequest.BatchCreateRelatedRequestOptions.html +1 -0
- package/dist/docs/interfaces/Requests_BatchRequest.BatchCreateRequestOptions.html +1 -0
- package/dist/docs/interfaces/Requests_BatchRequest.BatchPropertyRequestOptions.html +1 -0
- package/dist/docs/interfaces/Requests_BatchRequest.BatchRequestOptionsBase.html +1 -0
- package/dist/docs/interfaces/Requests_BatchRequest.BatchRequestOptionsExtended.html +1 -0
- package/dist/docs/interfaces/Requests_BatchRequest.BatchSingleItemRequestOptions.html +1 -0
- package/dist/docs/interfaces/Requests_BatchRequest.BatchSingleRelatedItemRequestOptions.html +1 -0
- package/dist/docs/interfaces/Requests_BatchRequest.BatchUpdateRequestOptions.html +1 -0
- package/dist/docs/interfaces/Requests_ExecutableRequest.ResponseHandlers.html +5 -0
- package/dist/docs/interfaces/Requests_Request.PostRequestOptionsExtended.html +1 -0
- package/dist/docs/interfaces/Requests_Request.PutRequestOptionsExtended.html +1 -0
- package/dist/docs/interfaces/Requests_Request.RelatedByIdRequestOptionsExtended.html +1 -0
- package/dist/docs/interfaces/Requests_Request.RelatedRequestOptionsExtended.html +1 -0
- package/dist/docs/interfaces/Requests_Request.UploadRequestOptionsExtended.html +1 -0
- package/dist/docs/interfaces/Requests_RequestBase.RequestOptionsBaseExtended.html +1 -0
- package/dist/docs/interfaces/Sitefinity.SDKOptions.html +9 -0
- package/dist/docs/interfaces/Sitefinity.Token.html +1 -0
- package/dist/docs/interfaces/Sitefinity.TypeOptions.html +13 -0
- package/dist/docs/modules/BlobBuilder.html +1 -0
- package/dist/docs/modules/Data.html +1 -0
- package/dist/docs/modules/Expression.html +1 -0
- package/dist/docs/modules/OrderProperty.html +1 -0
- package/dist/docs/modules/Query.html +1 -0
- package/dist/docs/modules/QueryBase.html +1 -0
- package/dist/docs/modules/QueryBuilder.html +1 -0
- package/dist/docs/modules/Requests_BatchRequest.html +1 -0
- package/dist/docs/modules/Requests_ExecutableRequest.html +1 -0
- package/dist/docs/modules/Requests_Request.html +1 -0
- package/dist/docs/modules/Requests_RequestBase.html +1 -0
- package/dist/docs/modules/Requests_RequestFactory.html +1 -0
- package/dist/docs/modules/Sitefinity.html +1 -0
- package/dist/docs/modules/WhereQuery.html +1 -0
- package/dist/docs/modules/constants.html +1 -0
- package/dist/docs/modules/utils.html +1 -0
- package/dist/docs/modules.html +1 -0
- package/dist/samples.html +33 -81
- package/dist/sitefinity-webservices-sdk.d.ts +16 -0
- package/dist/sitefinity-webservices-sdk.js +1139 -1738
- package/dist/sitefinity-webservices-sdk.js.map +1 -1
- package/dist/sitefinity-webservices-sdk.min.js +2 -16
- package/dist/sitefinity-webservices-sdk.min.js.LICENSE.txt +14 -0
- package/dist/src/BlobBuilder.d.ts +14 -0
- package/dist/src/Data.d.ts +144 -0
- package/dist/src/Expression.d.ts +19 -0
- package/dist/src/OrderProperty.d.ts +8 -0
- package/dist/src/Query.d.ts +59 -0
- package/dist/src/QueryBase.d.ts +18 -0
- package/dist/src/QueryBuilder.d.ts +13 -0
- package/dist/src/Requests/BatchRequest.d.ts +146 -0
- package/dist/src/Requests/ExecutableRequest.d.ts +20 -0
- package/dist/src/Requests/Request.d.ts +88 -0
- package/dist/src/Requests/RequestBase.d.ts +28 -0
- package/dist/src/Requests/RequestFactory.d.ts +22 -0
- package/dist/src/Sitefinity.d.ts +66 -0
- package/dist/src/WhereQuery.d.ts +68 -0
- package/dist/src/constants.d.ts +55 -0
- package/dist/src/utils.d.ts +16 -0
- package/karma.conf.js +29 -0
- package/package-lock.json +16108 -6805
- package/package.json +28 -10
- package/sitefinity-webservices-sdk.ts +16 -0
- package/src/BlobBuilder.ts +7 -12
- package/src/Data.spec.ts +160 -0
- package/src/Data.ts +132 -207
- package/src/Expression.ts +0 -1
- package/src/OrderProperty.ts +4 -5
- package/src/Query.ts +52 -78
- package/src/QueryBase.ts +21 -47
- package/src/QueryBuilder.ts +64 -82
- package/src/Requests/BatchRequest.ts +312 -335
- package/src/Requests/ExecutableRequest.ts +46 -73
- package/src/Requests/Request.ts +134 -260
- package/src/Requests/RequestBase.ts +161 -0
- package/src/Requests/RequestFactory.ts +36 -54
- package/src/Requests/request.spec.ts +108 -0
- package/src/Sitefinity.spec.ts +451 -0
- package/src/Sitefinity.ts +77 -146
- package/src/WhereQuery.ts +52 -112
- package/src/constants.ts +58 -39
- package/src/utils.ts +16 -16
- package/template.html +33 -35
- package/tsconfig.json +8 -1
- package/version.txt +1 -1
- package/config/html.conf.json +0 -5
- package/dist/docs/assets/css/main.css +0 -865
- package/dist/docs/assets/css/main.css.map +0 -7
- package/dist/docs/assets/images/icons.png +0 -0
- package/dist/docs/assets/images/icons@2x.png +0 -0
- package/dist/docs/assets/js/main.js +0 -5
- package/dist/docs/assets/js/search.js +0 -3
- package/dist/docs/classes/_authentication_.authentication.html +0 -527
- package/dist/docs/classes/_blobbuilder_.blobbuilder.html +0 -351
- package/dist/docs/classes/_data_.data.html +0 -974
- package/dist/docs/classes/_expression_.binaryexpression.html +0 -450
- package/dist/docs/classes/_expression_.complexexpression.html +0 -374
- package/dist/docs/classes/_expression_.expressionbase.html +0 -336
- package/dist/docs/classes/_orderproperty_.orderproperty.html +0 -381
- package/dist/docs/classes/_query_.query.html +0 -896
- package/dist/docs/classes/_querybase_.querybase.html +0 -518
- package/dist/docs/classes/_querybuilder_.querybuilder.html +0 -496
- package/dist/docs/classes/_requests_batchrequest_.batchrequest.html +0 -1511
- package/dist/docs/classes/_requests_batchrequest_.transaction.html +0 -804
- package/dist/docs/classes/_requests_executablerequest_.executablerequest.html +0 -549
- package/dist/docs/classes/_requests_request_.createrelatedrequest.html +0 -689
- package/dist/docs/classes/_requests_request_.createrequest.html +0 -680
- package/dist/docs/classes/_requests_request_.deleterelatedbyidrequest.html +0 -687
- package/dist/docs/classes/_requests_request_.deleterelatedrequest.html +0 -673
- package/dist/docs/classes/_requests_request_.deleterequest.html +0 -666
- package/dist/docs/classes/_requests_request_.getbyidrequest.html +0 -666
- package/dist/docs/classes/_requests_request_.getrelatedbyidrequest.html +0 -687
- package/dist/docs/classes/_requests_request_.getrelatedrequest.html +0 -673
- package/dist/docs/classes/_requests_request_.getrequest.html +0 -658
- package/dist/docs/classes/_requests_request_.requestbase.html +0 -687
- package/dist/docs/classes/_requests_request_.updaterequest.html +0 -686
- package/dist/docs/classes/_requests_request_.uploadrequest.html +0 -715
- package/dist/docs/classes/_requests_requestfactory_.requestfactory.html +0 -724
- package/dist/docs/classes/_sitefinity_.sitefinity.html +0 -521
- package/dist/docs/classes/_utils_.utils.html +0 -597
- package/dist/docs/classes/_wherequery_.wherequery.html +0 -992
- package/dist/docs/globals.html +0 -238
- package/dist/docs/modules/_authentication_.html +0 -225
- package/dist/docs/modules/_blobbuilder_.html +0 -225
- package/dist/docs/modules/_constants_.html +0 -528
- package/dist/docs/modules/_contenttypes_.html +0 -248
- package/dist/docs/modules/_data_.html +0 -225
- package/dist/docs/modules/_expression_.html +0 -233
- package/dist/docs/modules/_headers_.html +0 -328
- package/dist/docs/modules/_httpmethods_.html +0 -288
- package/dist/docs/modules/_main_.html +0 -209
- package/dist/docs/modules/_orderproperty_.html +0 -225
- package/dist/docs/modules/_query_.html +0 -225
- package/dist/docs/modules/_querybase_.html +0 -225
- package/dist/docs/modules/_querybuilder_.html +0 -247
- package/dist/docs/modules/_requests_batchrequest_.html +0 -265
- package/dist/docs/modules/_requests_executablerequest_.html +0 -296
- package/dist/docs/modules/_requests_request_.html +0 -333
- package/dist/docs/modules/_requests_requestfactory_.html +0 -247
- package/dist/docs/modules/_sitefinity_.html +0 -225
- package/dist/docs/modules/_utils_.html +0 -225
- package/dist/docs/modules/_wherequery_.html +0 -247
- package/dist/index.html +0 -474
- package/src/Authentication.ts +0 -96
- package/src/ContentTypes.ts +0 -5
- package/src/Headers.ts +0 -12
- package/src/HttpMethods.ts +0 -9
- package/src/main.ts +0 -2
package/src/Data.ts
CHANGED
|
@@ -1,68 +1,49 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
*
|
|
9
|
-
* @param {string} urlOptions.SFParams.culture - The culture name to use in each request.
|
|
1
|
+
import { SF_PARAMS } from "./constants";
|
|
2
|
+
import { Query } from "./Query";
|
|
3
|
+
import { ExecutableRequest } from "./Requests/ExecutableRequest";
|
|
4
|
+
import { RequestFactory } from "./Requests/RequestFactory";
|
|
5
|
+
import { TypeOptions } from "./Sitefinity";
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* The constructor of the Data object. This object is used for requesting data from Sitefinity.
|
|
10
9
|
*/
|
|
11
10
|
export class Data {
|
|
12
|
-
private urlOptions:
|
|
13
|
-
private factory:
|
|
11
|
+
private urlOptions: TypeOptions;
|
|
12
|
+
private factory: RequestFactory;
|
|
14
13
|
|
|
15
|
-
constructor(urlOptions, factory) {
|
|
14
|
+
constructor(urlOptions: TypeOptions, factory: RequestFactory) {
|
|
16
15
|
this.urlOptions = urlOptions;
|
|
17
16
|
this.factory = factory;
|
|
18
17
|
}
|
|
19
18
|
|
|
20
|
-
// TODO: rethink this
|
|
21
19
|
/**
|
|
22
20
|
* Executes a GET request to retrieve a collection of items.
|
|
23
|
-
* @memberOf Data
|
|
24
|
-
* @instance
|
|
25
|
-
* @param {object} parameters - The parameters for the request.
|
|
26
|
-
* @param {string} parameters.action - The OData action along with its parameters.
|
|
27
|
-
* @param {object} parameters.query - The {@link WhereQuery} with which to filter the items.
|
|
28
|
-
* @param {Function} parameters.successCb - The success callback function.
|
|
29
|
-
* @param {Function} parameters.failureCb - The error callback function.
|
|
30
21
|
*/
|
|
31
|
-
get(parameters:
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
// TODO: move to Request
|
|
35
|
-
if (parameters.query)
|
|
36
|
-
this.urlOptions.ODataParams = parameters.query;
|
|
37
|
-
|
|
38
|
-
var request = this.factory.get({
|
|
22
|
+
get(parameters: RequestOptionsBase) {
|
|
23
|
+
const request = this.factory.get({
|
|
39
24
|
urlOptions: this.urlOptions,
|
|
25
|
+
query: parameters.query,
|
|
40
26
|
action: parameters.action,
|
|
41
27
|
successCb: parameters.successCb,
|
|
42
28
|
failureCb: parameters.failureCb,
|
|
43
29
|
fallbackProperties: parameters.fallbackProperties
|
|
44
30
|
});
|
|
45
31
|
|
|
46
|
-
request.
|
|
32
|
+
request.execute();
|
|
47
33
|
}
|
|
48
34
|
|
|
49
35
|
/**
|
|
50
36
|
* Executes a GET request to retrieve an/all item(s) operations.
|
|
51
|
-
* @memberOf Data
|
|
52
|
-
* @instance
|
|
53
|
-
* @param {object} parameters - The parameters for the request.
|
|
54
|
-
* @param {Function} parameters.successCb - The success callback function.
|
|
55
|
-
* @param {Function} parameters.failureCb - The error callback function.
|
|
56
37
|
*/
|
|
57
|
-
getOperations(parameters:
|
|
58
|
-
|
|
59
|
-
|
|
38
|
+
getOperations(parameters: OperationsRequestOptions) {
|
|
39
|
+
let request: ExecutableRequest;
|
|
40
|
+
let action = "operations";
|
|
60
41
|
|
|
61
42
|
// Set parentId if no item key is passed
|
|
62
43
|
if (!parameters.key)
|
|
63
|
-
action +=
|
|
44
|
+
action += `?${SF_PARAMS.parentId}=` + parameters.parentId;
|
|
64
45
|
|
|
65
|
-
|
|
46
|
+
const params: any = {
|
|
66
47
|
urlOptions: this.urlOptions,
|
|
67
48
|
action: action,
|
|
68
49
|
successCb: parameters.successCb,
|
|
@@ -76,88 +57,59 @@ export class Data {
|
|
|
76
57
|
request = this.factory.get(params);
|
|
77
58
|
}
|
|
78
59
|
|
|
79
|
-
request.
|
|
60
|
+
request.execute();
|
|
80
61
|
}
|
|
81
62
|
|
|
82
63
|
/**
|
|
83
64
|
* Executes a GET request for a single item.
|
|
84
|
-
* @memberOf Data
|
|
85
|
-
* @instance
|
|
86
|
-
* @param {object} parameters - The parameters for the request.
|
|
87
|
-
* @param {object} parameters.query - The {@link QueryBase} object containing the OData query options that should be sent to the server.
|
|
88
|
-
* @param {string} parameters.key - The identifier of the item to be retrieved.
|
|
89
|
-
* @param {string} parameters.action - The OData action along with its parameters.
|
|
90
|
-
* @param {Function} parameters.successCb - The success callback function.
|
|
91
|
-
* @param {Function} parameters.failureCb - The error callback function.
|
|
92
65
|
*/
|
|
93
|
-
getSingle(parameters:
|
|
66
|
+
getSingle(parameters: RequestOptionsBase) {
|
|
94
67
|
if (!(parameters.key))
|
|
95
68
|
throw "Parameter 'key' is required!";
|
|
96
69
|
|
|
97
|
-
|
|
98
|
-
this.urlOptions.ODataParams = parameters.query;
|
|
99
|
-
|
|
100
|
-
var request = this.factory.getSingle({
|
|
70
|
+
const request = this.factory.getSingle({
|
|
101
71
|
urlOptions: this.urlOptions,
|
|
102
72
|
key: parameters.key,
|
|
73
|
+
query: parameters.query,
|
|
103
74
|
action: parameters.action,
|
|
104
75
|
successCb: parameters.successCb,
|
|
105
76
|
failureCb: parameters.failureCb,
|
|
106
77
|
fallbackProperties: parameters.fallbackProperties
|
|
107
78
|
});
|
|
108
79
|
|
|
109
|
-
request.
|
|
80
|
+
request.execute();
|
|
110
81
|
}
|
|
111
82
|
|
|
112
83
|
/**
|
|
113
84
|
* Executes a POST request for a single item.
|
|
114
|
-
* @memberOf Data
|
|
115
|
-
* @instance
|
|
116
|
-
* @param {object} parameters - The parameters for the request.
|
|
117
|
-
* @param {string} parameters.key - The identifier of the item.
|
|
118
|
-
* @param {object} parameters.data - The payload of the request.
|
|
119
|
-
* @param {string} parameters.action - The OData action along with its parameters.
|
|
120
|
-
* @param {Function} parameters.successCb - The success callback function.
|
|
121
|
-
* @param {Function} parameters.failureCb - The error callback function.
|
|
122
85
|
*/
|
|
123
|
-
create(parameters:
|
|
86
|
+
create(parameters: CreateRequestOptions) {
|
|
124
87
|
if (!(parameters.data))
|
|
125
88
|
throw "Parameter 'data' is required!";
|
|
126
89
|
|
|
127
|
-
|
|
128
|
-
this.urlOptions.ODataParams = parameters.query;
|
|
129
|
-
|
|
130
|
-
var request = this.factory.create({
|
|
90
|
+
const request = this.factory.create({
|
|
131
91
|
urlOptions: this.urlOptions,
|
|
132
92
|
key: parameters.key,
|
|
93
|
+
query: parameters.query,
|
|
133
94
|
data: parameters.data,
|
|
134
95
|
action: parameters.action,
|
|
135
96
|
successCb: parameters.successCb,
|
|
136
97
|
failureCb: parameters.failureCb
|
|
137
98
|
});
|
|
138
99
|
|
|
139
|
-
request.
|
|
100
|
+
request.execute();
|
|
140
101
|
}
|
|
141
102
|
|
|
142
103
|
/**
|
|
143
104
|
* Executes a PATCH request to update a single item.
|
|
144
|
-
* @memberOf Data
|
|
145
|
-
* @instance
|
|
146
|
-
* @param {object} parameters - The parameters for the request.
|
|
147
|
-
* @param {bool} parameters.saveTemp - A flag indicating whether to save in temp.
|
|
148
|
-
* @param {string} parameters.key - The identifier of the item to be updated.
|
|
149
|
-
* @param {object} parameters.data - The payload of the request.
|
|
150
|
-
* @param {string} parameters.action - The OData action along with its parameters.
|
|
151
|
-
* @param {Function} parameters.successCb - The success callback function.
|
|
152
|
-
* @param {Function} parameters.failureCb - The error callback function.
|
|
153
105
|
* @example
|
|
154
|
-
*
|
|
155
|
-
*
|
|
156
|
-
*
|
|
157
|
-
*
|
|
106
|
+
* const data = sf.data({
|
|
107
|
+
* entitySet: "newsitems",
|
|
108
|
+
* provider: "OpenAccessDataProvider",
|
|
109
|
+
* culture: "en"
|
|
158
110
|
* });
|
|
159
111
|
*
|
|
160
|
-
*
|
|
112
|
+
* const newsItemUpdate = {
|
|
161
113
|
* "Title": 'updated news title'
|
|
162
114
|
* };
|
|
163
115
|
*
|
|
@@ -169,11 +121,11 @@ export class Data {
|
|
|
169
121
|
* failureCb: failureCb
|
|
170
122
|
* });
|
|
171
123
|
*/
|
|
172
|
-
update(parameters:
|
|
124
|
+
update(parameters: UpdateRequestOptions) {
|
|
173
125
|
if (!(parameters.key || parameters.data))
|
|
174
126
|
throw "Parameters: 'data' and 'key' are required!";
|
|
175
127
|
|
|
176
|
-
|
|
128
|
+
const request = this.factory.update({
|
|
177
129
|
urlOptions: this.urlOptions,
|
|
178
130
|
key: parameters.key,
|
|
179
131
|
data: parameters.data,
|
|
@@ -183,47 +135,34 @@ export class Data {
|
|
|
183
135
|
failureCb: parameters.failureCb
|
|
184
136
|
});
|
|
185
137
|
|
|
186
|
-
request.
|
|
138
|
+
request.execute();
|
|
187
139
|
}
|
|
188
140
|
|
|
189
141
|
/**
|
|
190
142
|
* Executes a DELETE request to delete a single item.
|
|
191
|
-
* @memberOf Data
|
|
192
|
-
* @instance
|
|
193
|
-
* @param {object} parameters - The parameters for the request.
|
|
194
|
-
* @param {string} parameters.key - The identifier of the item to be deleted.
|
|
195
|
-
* @param {Function} parameters.successCb - The success callback function.
|
|
196
|
-
* @param {Function} parameters.failureCb - The error callback function.
|
|
197
143
|
*/
|
|
198
|
-
destroy(parameters:
|
|
144
|
+
destroy(parameters: RequestOptionsBase) {
|
|
199
145
|
if (!(parameters.key))
|
|
200
146
|
throw "Parameter 'key' is required!";
|
|
201
147
|
|
|
202
|
-
|
|
148
|
+
const request = this.factory.destroy({
|
|
203
149
|
urlOptions: this.urlOptions,
|
|
204
150
|
key: parameters.key,
|
|
205
151
|
successCb: parameters.successCb,
|
|
206
152
|
failureCb: parameters.failureCb
|
|
207
153
|
});
|
|
208
154
|
|
|
209
|
-
request.
|
|
155
|
+
request.execute();
|
|
210
156
|
}
|
|
211
157
|
|
|
212
158
|
/**
|
|
213
159
|
* Executes a POST request to execute a workflow operation for single item.
|
|
214
|
-
* @memberOf Data
|
|
215
|
-
* @instance
|
|
216
|
-
* @param {object} parameters - The parameters for the request.
|
|
217
|
-
* @param {string} parameters.key - The identifier of the item.
|
|
218
|
-
* @param {object} parameters.data - The payload of the request.
|
|
219
|
-
* @param {Function} parameters.successCb - The success callback function.
|
|
220
|
-
* @param {Function} parameters.failureCb - The error callback function.
|
|
221
160
|
*/
|
|
222
|
-
operation(parameters:
|
|
161
|
+
operation(parameters: CreateRequestOptions) {
|
|
223
162
|
if (!(parameters.key || parameters.data))
|
|
224
163
|
throw "Parameters: 'data' and 'key' are required!";
|
|
225
164
|
|
|
226
|
-
|
|
165
|
+
const request = this.factory.create({
|
|
227
166
|
urlOptions: this.urlOptions,
|
|
228
167
|
key: parameters.key,
|
|
229
168
|
action: "operation",
|
|
@@ -232,186 +171,130 @@ export class Data {
|
|
|
232
171
|
failureCb: parameters.failureCb
|
|
233
172
|
});
|
|
234
173
|
|
|
235
|
-
request.
|
|
174
|
+
request.execute();
|
|
236
175
|
}
|
|
237
176
|
|
|
238
177
|
/**
|
|
239
178
|
* Executes a GET request to get the property of a single item.
|
|
240
|
-
* @memberOf Data
|
|
241
|
-
* @instance
|
|
242
|
-
* @param {object} parameters - The parameters for the request.
|
|
243
|
-
* @param {string} parameters.key - The identifier of the item.
|
|
244
|
-
* @param {string} parameters.property - The name of the property to be retrieved.
|
|
245
|
-
* @param {Function} parameters.successCb - The success callback function.
|
|
246
|
-
* @param {Function} parameters.failureCb - The error callback function.
|
|
247
179
|
*/
|
|
248
|
-
getProperty(parameters:
|
|
180
|
+
getProperty(parameters: PropertyRequestOptions) {
|
|
249
181
|
if (!(parameters.key || parameters.property))
|
|
250
182
|
throw "Parameters: 'data' and 'property' are required!";
|
|
251
183
|
|
|
252
|
-
|
|
184
|
+
const request = this.factory.getProperty({
|
|
253
185
|
urlOptions: this.urlOptions,
|
|
254
186
|
key: parameters.key,
|
|
255
|
-
|
|
187
|
+
property: parameters.property,
|
|
256
188
|
successCb: parameters.successCb,
|
|
257
189
|
failureCb: parameters.failureCb
|
|
258
190
|
});
|
|
259
191
|
|
|
260
|
-
request.
|
|
192
|
+
request.execute();
|
|
261
193
|
}
|
|
262
194
|
|
|
263
195
|
/**
|
|
264
196
|
* Executes a GET request to get the related property value of a single item.
|
|
265
|
-
* @memberOf Data
|
|
266
|
-
* @instance
|
|
267
|
-
* @param {object} parameters - The parameters for the request.
|
|
268
|
-
* @param {string} parameters.key - The identifier of the item.
|
|
269
|
-
* @param {string} parameters.navigationProperty - The name of the navigation property to be retrieved.
|
|
270
|
-
* @param {Function} parameters.successCb - The success callback function.
|
|
271
|
-
* @param {Function} parameters.failureCb - The error callback function.
|
|
272
197
|
*/
|
|
273
|
-
getRelated(parameters:
|
|
274
|
-
if (!(parameters.key || parameters.
|
|
275
|
-
throw "Parameters: 'data' and '
|
|
198
|
+
getRelated(parameters: PropertyRequestOptions) {
|
|
199
|
+
if (!(parameters.key || parameters.property))
|
|
200
|
+
throw "Parameters: 'data' and 'property' are required!";
|
|
276
201
|
|
|
277
|
-
|
|
202
|
+
const request = this.factory.getRelated({
|
|
278
203
|
urlOptions: this.urlOptions,
|
|
279
204
|
key: parameters.key,
|
|
280
|
-
|
|
205
|
+
property: parameters.property,
|
|
281
206
|
successCb: parameters.successCb,
|
|
282
207
|
failureCb: parameters.failureCb
|
|
283
208
|
});
|
|
284
209
|
|
|
285
|
-
request.
|
|
210
|
+
request.execute();
|
|
286
211
|
}
|
|
287
212
|
|
|
288
213
|
/**
|
|
289
214
|
* Executes a GET request to retrieve the related property value of a single item by the id of the related item.
|
|
290
|
-
* @memberOf Data
|
|
291
|
-
* @instance
|
|
292
|
-
* @param {object} parameters - The parameters for the request.
|
|
293
|
-
* @param {string} parameters.key - The identifier of the item.
|
|
294
|
-
* @param {string} parameters.navigationProperty - The name of the navigation property to be retrieved.
|
|
295
|
-
* @param {string} parameters.relatedKey - The identifier of the related item.
|
|
296
|
-
* @param {Function} parameters.successCb - The success callback function.
|
|
297
|
-
* @param {Function} parameters.failureCb - The error callback function.
|
|
298
215
|
*/
|
|
299
|
-
getRelatedById(parameters:
|
|
300
|
-
if (!(parameters.key || parameters.
|
|
301
|
-
throw "Parameters: 'data', '
|
|
216
|
+
getRelatedById(parameters: SingleRelatedItemRequestOptions) {
|
|
217
|
+
if (!(parameters.key || parameters.property || parameters.relatedId))
|
|
218
|
+
throw "Parameters: 'data', 'relatedId' and 'property' are required!";
|
|
302
219
|
|
|
303
|
-
|
|
220
|
+
const request = this.factory.getRelatedById({
|
|
304
221
|
urlOptions: this.urlOptions,
|
|
305
222
|
key: parameters.key,
|
|
306
|
-
|
|
307
|
-
|
|
223
|
+
relatedId: parameters.relatedId,
|
|
224
|
+
property: parameters.property,
|
|
308
225
|
successCb: parameters.successCb,
|
|
309
226
|
failureCb: parameters.failureCb
|
|
310
227
|
});
|
|
311
228
|
|
|
312
|
-
request.
|
|
229
|
+
request.execute();
|
|
313
230
|
}
|
|
314
231
|
|
|
315
232
|
/**
|
|
316
233
|
* Executes a DELETE request to retrieve the delete all of the associated members in the relation property.
|
|
317
|
-
* @memberOf Data
|
|
318
|
-
* @instance
|
|
319
|
-
* @param {object} parameters - The parameters for the request.
|
|
320
|
-
* @param {string} parameters.key - The identifier of the item.
|
|
321
|
-
* @param {string} parameters.navigationProperty - The name of the navigation property.
|
|
322
|
-
* @param {Function} parameters.successCb - The success callback function.
|
|
323
|
-
* @param {Function} parameters.failureCb - The error callback function.
|
|
324
234
|
*/
|
|
325
|
-
destroyRelated(parameters:
|
|
326
|
-
if (!(parameters.key || parameters.
|
|
327
|
-
throw "Parameters: 'data' and '
|
|
235
|
+
destroyRelated(parameters: PropertyRequestOptions) {
|
|
236
|
+
if (!(parameters.key || parameters.property))
|
|
237
|
+
throw "Parameters: 'data' and 'property' are required!";
|
|
328
238
|
|
|
329
|
-
|
|
239
|
+
const request = this.factory.destroyRelated({
|
|
330
240
|
urlOptions: this.urlOptions,
|
|
331
241
|
key: parameters.key,
|
|
332
|
-
|
|
242
|
+
property: parameters.property,
|
|
333
243
|
successCb: parameters.successCb,
|
|
334
244
|
failureCb: parameters.failureCb
|
|
335
245
|
});
|
|
336
246
|
|
|
337
|
-
request.
|
|
247
|
+
request.execute();
|
|
338
248
|
}
|
|
339
249
|
|
|
340
250
|
/**
|
|
341
251
|
* Executes a DELETE request to retrieve the a single entry of the associated members in the relation property.
|
|
342
|
-
* @memberOf Data
|
|
343
|
-
* @instance
|
|
344
|
-
* @param {object} parameters - The parameters for the request.
|
|
345
|
-
* @param {string} parameters.key - The identifier of the item.
|
|
346
|
-
* @param {string} parameters.navigationProperty - The name of the navigation property.
|
|
347
|
-
* @param {string} parameters.relatedKey - The identifier of the related item.
|
|
348
|
-
* @param {Function} parameters.successCb - The success callback function.
|
|
349
|
-
* @param {Function} parameters.failureCb - The error callback function.
|
|
350
252
|
*/
|
|
351
|
-
destroyRelatedById(parameters:
|
|
352
|
-
if (!(parameters.key || parameters.
|
|
353
|
-
throw "Parameters: 'data', '
|
|
253
|
+
destroyRelatedById(parameters: SingleRelatedItemRequestOptions) {
|
|
254
|
+
if (!(parameters.key || parameters.property || parameters.relatedId))
|
|
255
|
+
throw "Parameters: 'data', 'relatedId' and 'property' are required!";
|
|
354
256
|
|
|
355
|
-
|
|
257
|
+
const request = this.factory.destroyRelatedById({
|
|
356
258
|
urlOptions: this.urlOptions,
|
|
357
259
|
key: parameters.key,
|
|
358
|
-
|
|
359
|
-
|
|
260
|
+
relatedId: parameters.relatedId,
|
|
261
|
+
property: parameters.property,
|
|
360
262
|
successCb: parameters.successCb,
|
|
361
263
|
failureCb: parameters.failureCb
|
|
362
264
|
});
|
|
363
265
|
|
|
364
|
-
request.
|
|
266
|
+
request.execute();
|
|
365
267
|
}
|
|
366
268
|
|
|
367
269
|
/**
|
|
368
270
|
* Executes a POST request to add a related item to the property collection.
|
|
369
|
-
* @memberOf Data
|
|
370
|
-
* @instance
|
|
371
|
-
* @param {object} parameters - The parameters for the request.
|
|
372
|
-
* @param {string} parameters.key - The identifier of the item.
|
|
373
|
-
* @param {string} parameters.navigationProperty - The name of the navigation property.
|
|
374
|
-
* @param {string} parameters.link - The URL of the related item.
|
|
375
|
-
* @param {Function} parameters.successCb - The success callback function.
|
|
376
|
-
* @param {Function} parameters.failureCb - The error callback function.
|
|
377
271
|
*/
|
|
378
|
-
createRelated(parameters:
|
|
379
|
-
if (!(parameters.key || parameters.
|
|
380
|
-
throw "Parameters: 'data', 'link' and '
|
|
272
|
+
createRelated(parameters: CreateRelatedRequestOptions) {
|
|
273
|
+
if (!(parameters.key || parameters.property || parameters.link))
|
|
274
|
+
throw "Parameters: 'data', 'link' and 'property' are required!";
|
|
381
275
|
|
|
382
|
-
|
|
276
|
+
const data = {
|
|
383
277
|
"@odata.id": parameters.link
|
|
384
278
|
}
|
|
385
279
|
|
|
386
|
-
|
|
280
|
+
const request = this.factory.createRelated({
|
|
387
281
|
urlOptions: this.urlOptions,
|
|
388
282
|
key: parameters.key,
|
|
389
|
-
|
|
283
|
+
property: parameters.property,
|
|
390
284
|
data: data,
|
|
391
285
|
successCb: parameters.successCb,
|
|
392
286
|
failureCb: parameters.failureCb
|
|
393
287
|
});
|
|
394
288
|
|
|
395
|
-
request.
|
|
289
|
+
request.execute();
|
|
396
290
|
}
|
|
397
291
|
|
|
398
292
|
/**
|
|
399
293
|
* Executes a POST request to upload a media item.
|
|
400
|
-
* @memberOf Data
|
|
401
|
-
* @instance
|
|
402
|
-
* @param {object} parameters - The parameters for the request.
|
|
403
|
-
* @param {string} parameters.data - The data to be uploaded.
|
|
404
|
-
* @param {string} parameters.data.content - The base64 representation of the media item.
|
|
405
|
-
* @param {string} parameters.data.contentType - The content type of the item. E.g. image/jpeg.
|
|
406
|
-
* @param {string} parameters.data.name - The name of the media item.
|
|
407
|
-
* @param {string} parameters.data.payload - Holds the JSON metadata about the image. E.g. Title, Urlname etc.
|
|
408
|
-
* @param {string} parameters.data.uploadProperties - The properties passed on upload. Must contain ParentId and can contain FolderId, Title, UrlName, etc.
|
|
409
|
-
* @param {Function} parameters.successCb - The success callback function.
|
|
410
|
-
* @param {Function} parameters.failureCb - The error callback function.
|
|
411
294
|
* @example
|
|
412
295
|
*
|
|
413
|
-
*
|
|
414
|
-
*
|
|
296
|
+
* const data = sf.data({
|
|
297
|
+
* entitySet: "images"
|
|
415
298
|
* });
|
|
416
299
|
* data.upload({
|
|
417
300
|
* data: {
|
|
@@ -420,7 +303,7 @@ export class Data {
|
|
|
420
303
|
* name: "test.jpg",
|
|
421
304
|
* payload: {
|
|
422
305
|
* Title: "Test",
|
|
423
|
-
*
|
|
306
|
+
* entitySet: "test"
|
|
424
307
|
* },
|
|
425
308
|
* uploadProperties: {
|
|
426
309
|
* ParentId: "4BA7AD46-F29B-4E65-BE17-9BF7CE5BA1FB"
|
|
@@ -430,21 +313,21 @@ export class Data {
|
|
|
430
313
|
* failureCb: failureCb
|
|
431
314
|
* });
|
|
432
315
|
*/
|
|
433
|
-
upload(parameters:
|
|
316
|
+
upload(parameters: UploadRequestOptions) {
|
|
434
317
|
if (!(parameters || parameters.data || parameters.data.content || parameters.data.contentType || parameters.data || parameters.data.name || parameters.data.uploadProperties))
|
|
435
318
|
throw "parameters: content, contentType, name and uploadProperties are required!";
|
|
436
319
|
|
|
437
|
-
|
|
320
|
+
const options = {
|
|
438
321
|
urlOptions: this.urlOptions,
|
|
439
322
|
_factory: this.factory,
|
|
440
323
|
successCb: parameters.successCb,
|
|
441
324
|
failureCb: parameters.failureCb
|
|
442
325
|
}
|
|
443
326
|
|
|
444
|
-
|
|
445
|
-
|
|
327
|
+
const batch = this.factory.batch(options);
|
|
328
|
+
const transaction = batch.beginTransaction();
|
|
446
329
|
|
|
447
|
-
|
|
330
|
+
const uploadedFile = transaction.upload({
|
|
448
331
|
entitySet: this.urlOptions.entitySet,
|
|
449
332
|
data: parameters.data.content,
|
|
450
333
|
contentType: parameters.data.contentType,
|
|
@@ -470,8 +353,50 @@ export class Data {
|
|
|
470
353
|
}
|
|
471
354
|
|
|
472
355
|
batch.endTransaction(transaction);
|
|
473
|
-
|
|
474
|
-
executor._execute();
|
|
356
|
+
batch.execute();
|
|
475
357
|
}
|
|
476
358
|
}
|
|
477
359
|
|
|
360
|
+
export interface RequestOptionsBase {
|
|
361
|
+
query?: Query;
|
|
362
|
+
action?: string;
|
|
363
|
+
successCb?: Function;
|
|
364
|
+
failureCb?: Function;
|
|
365
|
+
fallbackProperties?: string[];
|
|
366
|
+
key?: string | number;
|
|
367
|
+
}
|
|
368
|
+
|
|
369
|
+
export interface OperationsRequestOptions extends RequestOptionsBase {
|
|
370
|
+
parentId?: string;
|
|
371
|
+
}
|
|
372
|
+
|
|
373
|
+
export interface CreateRequestOptions extends RequestOptionsBase {
|
|
374
|
+
data?: object;
|
|
375
|
+
}
|
|
376
|
+
|
|
377
|
+
export interface UpdateRequestOptions extends CreateRequestOptions {
|
|
378
|
+
saveTemp?: boolean;
|
|
379
|
+
}
|
|
380
|
+
|
|
381
|
+
export interface PropertyRequestOptions extends RequestOptionsBase {
|
|
382
|
+
property: string;
|
|
383
|
+
}
|
|
384
|
+
|
|
385
|
+
export interface SingleRelatedItemRequestOptions extends PropertyRequestOptions {
|
|
386
|
+
relatedId: string;
|
|
387
|
+
}
|
|
388
|
+
|
|
389
|
+
export interface CreateRelatedRequestOptions extends PropertyRequestOptions {
|
|
390
|
+
link: string | number;
|
|
391
|
+
}
|
|
392
|
+
|
|
393
|
+
export interface UploadRequestOptions extends CreateRequestOptions {
|
|
394
|
+
data: {
|
|
395
|
+
content: string;
|
|
396
|
+
contentType: string;
|
|
397
|
+
uploadProperties: { [key: string]: string };
|
|
398
|
+
name: string;
|
|
399
|
+
payload: object;
|
|
400
|
+
},
|
|
401
|
+
publish: boolean;
|
|
402
|
+
}
|
package/src/Expression.ts
CHANGED
package/src/OrderProperty.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { utils } from './utils';
|
|
2
2
|
|
|
3
|
-
|
|
4
3
|
export class OrderProperty {
|
|
5
4
|
constructor(private propertyPath: string, private isDesc: boolean = null) {
|
|
6
5
|
if (!utils.isString(propertyPath))
|
|
@@ -8,13 +7,13 @@ export class OrderProperty {
|
|
|
8
7
|
|
|
9
8
|
propertyPath = propertyPath.trim();
|
|
10
9
|
|
|
11
|
-
|
|
10
|
+
const parts = propertyPath.split(' ');
|
|
12
11
|
// parts[0] is the propertyPath; [1] would be whether descending or not.
|
|
13
12
|
if (parts.length > 1 && isDesc !== true && isDesc !== false) {
|
|
14
13
|
isDesc = parts[1].toLowerCase() == 'desc';
|
|
15
14
|
if (!isDesc) {
|
|
16
15
|
// isDesc is false but check to make sure its intended.
|
|
17
|
-
|
|
16
|
+
const isAsc = parts[1].toLowerCase() == 'asc';
|
|
18
17
|
if (!isAsc) {
|
|
19
18
|
throw new Error("the second word in the propertyPath must begin with 'desc' or 'asc'");
|
|
20
19
|
}
|
|
@@ -33,8 +32,8 @@ export class OrderProperty {
|
|
|
33
32
|
return this.isDesc;
|
|
34
33
|
}
|
|
35
34
|
|
|
36
|
-
getValue() {
|
|
37
|
-
|
|
35
|
+
getValue(): string {
|
|
36
|
+
const direction = (this.isDesc) ? 'desc' : 'asc';
|
|
38
37
|
return this.propertyPath + ' ' + direction;
|
|
39
38
|
}
|
|
40
39
|
}
|