@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.
Files changed (200) hide show
  1. package/.eslintignore +4 -0
  2. package/.eslintrc.js +19 -0
  3. package/ci/pipelines/ci.yml +219 -0
  4. package/config/helpers.js +0 -6
  5. package/config/webpack.common.js +1 -3
  6. package/config/webpack.dev.js +2 -9
  7. package/config/webpack.prod.js +5 -6
  8. package/dist/docs/.nojekyll +1 -0
  9. package/dist/docs/assets/highlight.css +57 -0
  10. package/dist/docs/assets/icons.css +1043 -0
  11. package/dist/docs/assets/icons.png +0 -0
  12. package/dist/docs/assets/icons@2x.png +0 -0
  13. package/dist/docs/assets/main.js +52 -0
  14. package/dist/docs/assets/search.js +1 -0
  15. package/dist/docs/assets/style.css +1413 -0
  16. package/dist/docs/assets/{images/widgets.png → widgets.png} +0 -0
  17. package/dist/docs/assets/{images/widgets@2x.png → widgets@2x.png} +0 -0
  18. package/dist/docs/classes/BlobBuilder.BlobBuilder-1.html +7 -0
  19. package/dist/docs/classes/Data.Data-1.html +65 -0
  20. package/dist/docs/classes/Expression.BinaryExpression.html +1 -0
  21. package/dist/docs/classes/Expression.ComplexExpression.html +1 -0
  22. package/dist/docs/classes/Expression.ExpressionBase.html +1 -0
  23. package/dist/docs/classes/OrderProperty.OrderProperty-1.html +1 -0
  24. package/dist/docs/classes/Query.Query-1.html +33 -0
  25. package/dist/docs/classes/QueryBase.QueryBase-1.html +7 -0
  26. package/dist/docs/classes/QueryBuilder.QueryBuilder-1.html +1 -0
  27. package/dist/docs/classes/Requests_BatchRequest.BatchRequest.html +17 -0
  28. package/dist/docs/classes/Requests_BatchRequest.Transaction.html +17 -0
  29. package/dist/docs/classes/Requests_ExecutableRequest.ExecutableRequest.html +1 -0
  30. package/dist/docs/classes/Requests_Request.CreateRelatedRequest.html +1 -0
  31. package/dist/docs/classes/Requests_Request.CreateRequest.html +1 -0
  32. package/dist/docs/classes/Requests_Request.DeleteRelatedByIdRequest.html +1 -0
  33. package/dist/docs/classes/Requests_Request.DeleteRelatedRequest.html +1 -0
  34. package/dist/docs/classes/Requests_Request.DeleteRequest.html +1 -0
  35. package/dist/docs/classes/Requests_Request.GetByIdRequest.html +1 -0
  36. package/dist/docs/classes/Requests_Request.GetRelatedByIdRequest.html +1 -0
  37. package/dist/docs/classes/Requests_Request.GetRelatedRequest.html +1 -0
  38. package/dist/docs/classes/Requests_Request.GetRequest.html +1 -0
  39. package/dist/docs/classes/Requests_Request.UpdateRequest.html +1 -0
  40. package/dist/docs/classes/Requests_Request.UploadRequest.html +1 -0
  41. package/dist/docs/classes/Requests_RequestBase.RequestBase.html +1 -0
  42. package/dist/docs/classes/Requests_RequestFactory.RequestFactory.html +1 -0
  43. package/dist/docs/classes/Sitefinity.Sitefinity-1.html +5 -0
  44. package/dist/docs/classes/WhereQuery.WhereQuery-1.html +31 -0
  45. package/dist/docs/classes/utils.utils-1.html +1 -0
  46. package/dist/docs/index.html +54 -242
  47. package/dist/docs/interfaces/Data.CreateRelatedRequestOptions.html +1 -0
  48. package/dist/docs/interfaces/Data.CreateRequestOptions.html +1 -0
  49. package/dist/docs/interfaces/Data.OperationsRequestOptions.html +1 -0
  50. package/dist/docs/interfaces/Data.PropertyRequestOptions.html +1 -0
  51. package/dist/docs/interfaces/Data.RequestOptionsBase.html +1 -0
  52. package/dist/docs/interfaces/Data.SingleRelatedItemRequestOptions.html +1 -0
  53. package/dist/docs/interfaces/Data.UpdateRequestOptions.html +1 -0
  54. package/dist/docs/interfaces/Data.UploadRequestOptions.html +1 -0
  55. package/dist/docs/interfaces/Requests_BatchRequest.BatchCreateRelatedRequestOptions.html +1 -0
  56. package/dist/docs/interfaces/Requests_BatchRequest.BatchCreateRequestOptions.html +1 -0
  57. package/dist/docs/interfaces/Requests_BatchRequest.BatchPropertyRequestOptions.html +1 -0
  58. package/dist/docs/interfaces/Requests_BatchRequest.BatchRequestOptionsBase.html +1 -0
  59. package/dist/docs/interfaces/Requests_BatchRequest.BatchRequestOptionsExtended.html +1 -0
  60. package/dist/docs/interfaces/Requests_BatchRequest.BatchSingleItemRequestOptions.html +1 -0
  61. package/dist/docs/interfaces/Requests_BatchRequest.BatchSingleRelatedItemRequestOptions.html +1 -0
  62. package/dist/docs/interfaces/Requests_BatchRequest.BatchUpdateRequestOptions.html +1 -0
  63. package/dist/docs/interfaces/Requests_ExecutableRequest.ResponseHandlers.html +5 -0
  64. package/dist/docs/interfaces/Requests_Request.PostRequestOptionsExtended.html +1 -0
  65. package/dist/docs/interfaces/Requests_Request.PutRequestOptionsExtended.html +1 -0
  66. package/dist/docs/interfaces/Requests_Request.RelatedByIdRequestOptionsExtended.html +1 -0
  67. package/dist/docs/interfaces/Requests_Request.RelatedRequestOptionsExtended.html +1 -0
  68. package/dist/docs/interfaces/Requests_Request.UploadRequestOptionsExtended.html +1 -0
  69. package/dist/docs/interfaces/Requests_RequestBase.RequestOptionsBaseExtended.html +1 -0
  70. package/dist/docs/interfaces/Sitefinity.SDKOptions.html +9 -0
  71. package/dist/docs/interfaces/Sitefinity.Token.html +1 -0
  72. package/dist/docs/interfaces/Sitefinity.TypeOptions.html +13 -0
  73. package/dist/docs/modules/BlobBuilder.html +1 -0
  74. package/dist/docs/modules/Data.html +1 -0
  75. package/dist/docs/modules/Expression.html +1 -0
  76. package/dist/docs/modules/OrderProperty.html +1 -0
  77. package/dist/docs/modules/Query.html +1 -0
  78. package/dist/docs/modules/QueryBase.html +1 -0
  79. package/dist/docs/modules/QueryBuilder.html +1 -0
  80. package/dist/docs/modules/Requests_BatchRequest.html +1 -0
  81. package/dist/docs/modules/Requests_ExecutableRequest.html +1 -0
  82. package/dist/docs/modules/Requests_Request.html +1 -0
  83. package/dist/docs/modules/Requests_RequestBase.html +1 -0
  84. package/dist/docs/modules/Requests_RequestFactory.html +1 -0
  85. package/dist/docs/modules/Sitefinity.html +1 -0
  86. package/dist/docs/modules/WhereQuery.html +1 -0
  87. package/dist/docs/modules/constants.html +1 -0
  88. package/dist/docs/modules/utils.html +1 -0
  89. package/dist/docs/modules.html +1 -0
  90. package/dist/samples.html +33 -81
  91. package/dist/sitefinity-webservices-sdk.d.ts +16 -0
  92. package/dist/sitefinity-webservices-sdk.js +1139 -1738
  93. package/dist/sitefinity-webservices-sdk.js.map +1 -1
  94. package/dist/sitefinity-webservices-sdk.min.js +2 -16
  95. package/dist/sitefinity-webservices-sdk.min.js.LICENSE.txt +14 -0
  96. package/dist/src/BlobBuilder.d.ts +14 -0
  97. package/dist/src/Data.d.ts +144 -0
  98. package/dist/src/Expression.d.ts +19 -0
  99. package/dist/src/OrderProperty.d.ts +8 -0
  100. package/dist/src/Query.d.ts +59 -0
  101. package/dist/src/QueryBase.d.ts +18 -0
  102. package/dist/src/QueryBuilder.d.ts +13 -0
  103. package/dist/src/Requests/BatchRequest.d.ts +146 -0
  104. package/dist/src/Requests/ExecutableRequest.d.ts +20 -0
  105. package/dist/src/Requests/Request.d.ts +88 -0
  106. package/dist/src/Requests/RequestBase.d.ts +28 -0
  107. package/dist/src/Requests/RequestFactory.d.ts +22 -0
  108. package/dist/src/Sitefinity.d.ts +66 -0
  109. package/dist/src/WhereQuery.d.ts +68 -0
  110. package/dist/src/constants.d.ts +55 -0
  111. package/dist/src/utils.d.ts +16 -0
  112. package/karma.conf.js +29 -0
  113. package/package-lock.json +16108 -6805
  114. package/package.json +28 -10
  115. package/sitefinity-webservices-sdk.ts +16 -0
  116. package/src/BlobBuilder.ts +7 -12
  117. package/src/Data.spec.ts +160 -0
  118. package/src/Data.ts +132 -207
  119. package/src/Expression.ts +0 -1
  120. package/src/OrderProperty.ts +4 -5
  121. package/src/Query.ts +52 -78
  122. package/src/QueryBase.ts +21 -47
  123. package/src/QueryBuilder.ts +64 -82
  124. package/src/Requests/BatchRequest.ts +312 -335
  125. package/src/Requests/ExecutableRequest.ts +46 -73
  126. package/src/Requests/Request.ts +134 -260
  127. package/src/Requests/RequestBase.ts +161 -0
  128. package/src/Requests/RequestFactory.ts +36 -54
  129. package/src/Requests/request.spec.ts +108 -0
  130. package/src/Sitefinity.spec.ts +451 -0
  131. package/src/Sitefinity.ts +77 -146
  132. package/src/WhereQuery.ts +52 -112
  133. package/src/constants.ts +58 -39
  134. package/src/utils.ts +16 -16
  135. package/template.html +33 -35
  136. package/tsconfig.json +8 -1
  137. package/version.txt +1 -1
  138. package/config/html.conf.json +0 -5
  139. package/dist/docs/assets/css/main.css +0 -865
  140. package/dist/docs/assets/css/main.css.map +0 -7
  141. package/dist/docs/assets/images/icons.png +0 -0
  142. package/dist/docs/assets/images/icons@2x.png +0 -0
  143. package/dist/docs/assets/js/main.js +0 -5
  144. package/dist/docs/assets/js/search.js +0 -3
  145. package/dist/docs/classes/_authentication_.authentication.html +0 -527
  146. package/dist/docs/classes/_blobbuilder_.blobbuilder.html +0 -351
  147. package/dist/docs/classes/_data_.data.html +0 -974
  148. package/dist/docs/classes/_expression_.binaryexpression.html +0 -450
  149. package/dist/docs/classes/_expression_.complexexpression.html +0 -374
  150. package/dist/docs/classes/_expression_.expressionbase.html +0 -336
  151. package/dist/docs/classes/_orderproperty_.orderproperty.html +0 -381
  152. package/dist/docs/classes/_query_.query.html +0 -896
  153. package/dist/docs/classes/_querybase_.querybase.html +0 -518
  154. package/dist/docs/classes/_querybuilder_.querybuilder.html +0 -496
  155. package/dist/docs/classes/_requests_batchrequest_.batchrequest.html +0 -1511
  156. package/dist/docs/classes/_requests_batchrequest_.transaction.html +0 -804
  157. package/dist/docs/classes/_requests_executablerequest_.executablerequest.html +0 -549
  158. package/dist/docs/classes/_requests_request_.createrelatedrequest.html +0 -689
  159. package/dist/docs/classes/_requests_request_.createrequest.html +0 -680
  160. package/dist/docs/classes/_requests_request_.deleterelatedbyidrequest.html +0 -687
  161. package/dist/docs/classes/_requests_request_.deleterelatedrequest.html +0 -673
  162. package/dist/docs/classes/_requests_request_.deleterequest.html +0 -666
  163. package/dist/docs/classes/_requests_request_.getbyidrequest.html +0 -666
  164. package/dist/docs/classes/_requests_request_.getrelatedbyidrequest.html +0 -687
  165. package/dist/docs/classes/_requests_request_.getrelatedrequest.html +0 -673
  166. package/dist/docs/classes/_requests_request_.getrequest.html +0 -658
  167. package/dist/docs/classes/_requests_request_.requestbase.html +0 -687
  168. package/dist/docs/classes/_requests_request_.updaterequest.html +0 -686
  169. package/dist/docs/classes/_requests_request_.uploadrequest.html +0 -715
  170. package/dist/docs/classes/_requests_requestfactory_.requestfactory.html +0 -724
  171. package/dist/docs/classes/_sitefinity_.sitefinity.html +0 -521
  172. package/dist/docs/classes/_utils_.utils.html +0 -597
  173. package/dist/docs/classes/_wherequery_.wherequery.html +0 -992
  174. package/dist/docs/globals.html +0 -238
  175. package/dist/docs/modules/_authentication_.html +0 -225
  176. package/dist/docs/modules/_blobbuilder_.html +0 -225
  177. package/dist/docs/modules/_constants_.html +0 -528
  178. package/dist/docs/modules/_contenttypes_.html +0 -248
  179. package/dist/docs/modules/_data_.html +0 -225
  180. package/dist/docs/modules/_expression_.html +0 -233
  181. package/dist/docs/modules/_headers_.html +0 -328
  182. package/dist/docs/modules/_httpmethods_.html +0 -288
  183. package/dist/docs/modules/_main_.html +0 -209
  184. package/dist/docs/modules/_orderproperty_.html +0 -225
  185. package/dist/docs/modules/_query_.html +0 -225
  186. package/dist/docs/modules/_querybase_.html +0 -225
  187. package/dist/docs/modules/_querybuilder_.html +0 -247
  188. package/dist/docs/modules/_requests_batchrequest_.html +0 -265
  189. package/dist/docs/modules/_requests_executablerequest_.html +0 -296
  190. package/dist/docs/modules/_requests_request_.html +0 -333
  191. package/dist/docs/modules/_requests_requestfactory_.html +0 -247
  192. package/dist/docs/modules/_sitefinity_.html +0 -225
  193. package/dist/docs/modules/_utils_.html +0 -225
  194. package/dist/docs/modules/_wherequery_.html +0 -247
  195. package/dist/index.html +0 -474
  196. package/src/Authentication.ts +0 -96
  197. package/src/ContentTypes.ts +0 -5
  198. package/src/Headers.ts +0 -12
  199. package/src/HttpMethods.ts +0 -9
  200. package/src/main.ts +0 -2
@@ -0,0 +1,146 @@
1
+ import { RequestFactory } from "./RequestFactory";
2
+ import { ExecutableRequest } from "./ExecutableRequest";
3
+ import { SDKOptions, Token, TypeOptions } from "../Sitefinity";
4
+ import { RequestBase, RequestOptionsBaseExtended } from "./RequestBase";
5
+ import { CreateRelatedRequestOptions, RequestOptionsBase, PropertyRequestOptions, SingleRelatedItemRequestOptions, CreateRequestOptions, UpdateRequestOptions } from "../Data";
6
+ /**
7
+ * The transaction class is used to group operations that involve data manipulation together and execute them as a single atomic operation.
8
+ */
9
+ export declare class Transaction {
10
+ id: number;
11
+ counter: number;
12
+ requests: TransactionRequest[];
13
+ private urlOptions;
14
+ private factory;
15
+ constructor(urlOptions: TypeOptions, factory: RequestFactory);
16
+ upload(parameters: any): number;
17
+ /**
18
+ * Adds a POST request to create a single item.
19
+ */
20
+ create(parameters: BatchCreateRequestOptions): number;
21
+ /**
22
+ * Adds a POST request to execute an operation on single item.
23
+ */
24
+ operation(parameters: BatchCreateRequestOptions): void;
25
+ /**
26
+ * Adds a PATCH request to update a single item.
27
+ */
28
+ update(parameters: BatchUpdateRequestOptions): void;
29
+ /**
30
+ * Adds a DELETE request to delete a single item.
31
+ */
32
+ destroy(parameters: BatchSingleItemRequestOptions): void;
33
+ /**
34
+ * Adds a DELETE request to delete all of the associated members in the relation property.
35
+ */
36
+ destroyRelated(parameters: BatchPropertyRequestOptions): void;
37
+ /**
38
+ * Adds a DELETE request to retrieve the a single entry of the associated members in the relation property.
39
+ */
40
+ destroyRelatedById(parameters: BatchSingleRelatedItemRequestOptions): void;
41
+ /**
42
+ * Adds a POST request to add a related item to the property collection.
43
+ */
44
+ createRelated(parameters: BatchCreateRelatedRequestOptions): number;
45
+ private overrideUrlGeneration;
46
+ private addRequest;
47
+ private urlParametersClone;
48
+ }
49
+ /**
50
+ * The batch request class is used for grouping requests into a single batch request to execute on the server.
51
+ */
52
+ export declare class BatchRequest extends ExecutableRequest {
53
+ counter: number;
54
+ requests: BatchInnerRequest[];
55
+ private factory;
56
+ private boundary;
57
+ private responseHeaderRegex;
58
+ private responseStatusRegex;
59
+ static constants: {
60
+ newLine: string;
61
+ };
62
+ constructor(requestOptions: BatchRequestOptionsExtended, token: Token, sdkOptions: SDKOptions);
63
+ /**
64
+ * Adds a GET request to retrieve a collection of items.
65
+ */
66
+ get(parameters: BatchRequestOptionsBase): void;
67
+ /**
68
+ * Adds a GET request for the retrieval of a single item.
69
+ */
70
+ getSingle(parameters: BatchSingleItemRequestOptions): void;
71
+ /**
72
+ * Adds a GET request to get the property of a single item.
73
+ */
74
+ getProperty(parameters: BatchPropertyRequestOptions): void;
75
+ /**
76
+ * Adds a GET request to get the related property value of a single item.
77
+ */
78
+ getRelated(parameters: BatchPropertyRequestOptions): void;
79
+ /**
80
+ * Adds a GET request to retrieve the related property value of a single item by the id of the related item.
81
+ */
82
+ getRelatedById(parameters: BatchSingleRelatedItemRequestOptions): void;
83
+ /**
84
+ * Begins a transaction.
85
+ */
86
+ beginTransaction(): Transaction;
87
+ /**
88
+ * Ends a transaction.
89
+ */
90
+ endTransaction(transaction: Transaction): void;
91
+ getBody(): object;
92
+ getMethod(): string;
93
+ getHeaders(): {
94
+ [key: string]: string;
95
+ };
96
+ buildUrl(): string;
97
+ protected parseResponse(http: XMLHttpRequest): any;
98
+ private parseBatchResponse;
99
+ private getResponseResult;
100
+ private currentBoundary;
101
+ private contentType;
102
+ private readTo;
103
+ private readLine;
104
+ private readHeaders;
105
+ private readResponse;
106
+ private buildRequestBody;
107
+ private buildRequest;
108
+ private buildTransaction;
109
+ private createDelimeter;
110
+ private createBoundary;
111
+ private addRequest;
112
+ private urlParametersClone;
113
+ }
114
+ interface TransactionRequest {
115
+ id: number;
116
+ request: RequestBase;
117
+ }
118
+ interface BatchInnerRequest {
119
+ id: number;
120
+ request: RequestBase | Transaction;
121
+ }
122
+ export interface BatchRequestOptionsExtended extends RequestOptionsBaseExtended {
123
+ factory: RequestFactory;
124
+ }
125
+ export interface BatchRequestOptionsBase extends RequestOptionsBase {
126
+ entitySet: string;
127
+ }
128
+ export interface BatchCreateRequestOptions extends CreateRequestOptions {
129
+ entitySet: string;
130
+ }
131
+ export interface BatchUpdateRequestOptions extends UpdateRequestOptions {
132
+ entitySet: string;
133
+ }
134
+ export interface BatchSingleItemRequestOptions extends RequestOptionsBase {
135
+ entitySet: string;
136
+ }
137
+ export interface BatchPropertyRequestOptions extends PropertyRequestOptions {
138
+ entitySet: string;
139
+ }
140
+ export interface BatchSingleRelatedItemRequestOptions extends SingleRelatedItemRequestOptions {
141
+ entitySet: string;
142
+ }
143
+ export interface BatchCreateRelatedRequestOptions extends CreateRelatedRequestOptions {
144
+ entitySet: string;
145
+ }
146
+ export {};
@@ -0,0 +1,20 @@
1
+ import { RequestBase, RequestOptionsBaseExtended } from './RequestBase';
2
+ import { SDKOptions, Token } from "../Sitefinity";
3
+ export declare class ExecutableRequest extends RequestBase {
4
+ private token;
5
+ private enableUnlimitedChoices;
6
+ private integrationMode;
7
+ constructor(requestOptions: RequestOptionsBaseExtended, token: Token, sdkOptions: SDKOptions);
8
+ execute(): void;
9
+ private setHeaders;
10
+ }
11
+ export interface ResponseHandlers {
12
+ /**
13
+ * The success handler.
14
+ */
15
+ successCb?: Function;
16
+ /**
17
+ * The failure handler.
18
+ */
19
+ failureCb?: Function;
20
+ }
@@ -0,0 +1,88 @@
1
+ import { SDKOptions, Token } from "../Sitefinity";
2
+ import { ExecutableRequest } from "./ExecutableRequest";
3
+ import { RequestOptionsBaseExtended } from "./RequestBase";
4
+ export declare class GetRequest extends ExecutableRequest {
5
+ constructor(requestOptions: RequestOptionsBaseExtended, token: Token, sdkOptions: SDKOptions);
6
+ getMethod(): string;
7
+ }
8
+ export declare class GetByIdRequest extends ExecutableRequest {
9
+ constructor(requestOptions: RequestOptionsBaseExtended, token: Token, sdkOptions: SDKOptions);
10
+ getMethod(): string;
11
+ }
12
+ export declare class DeleteRequest extends ExecutableRequest {
13
+ constructor(requestOptions: RequestOptionsBaseExtended, token: Token, sdkOptions: SDKOptions);
14
+ getMethod(): string;
15
+ }
16
+ export declare class UpdateRequest extends ExecutableRequest {
17
+ private data;
18
+ private saveTemp;
19
+ constructor(requestOptions: PutRequestOptionsExtended, token: Token, sdkOptions: SDKOptions);
20
+ getMethod(): string;
21
+ getBody(): object;
22
+ getHeaders(): {
23
+ [key: string]: string;
24
+ };
25
+ }
26
+ export declare class CreateRequest extends ExecutableRequest {
27
+ protected data: object;
28
+ constructor(requestOptions: PostRequestOptionsExtended, token: Token, sdkOptions: SDKOptions);
29
+ getMethod(): string;
30
+ getBody(): object;
31
+ }
32
+ export declare class GetRelatedRequest extends GetByIdRequest {
33
+ private property;
34
+ constructor(requestOptions: RelatedRequestOptionsExtended, token: Token, sdkOptions: SDKOptions);
35
+ buildUrl(): string;
36
+ }
37
+ export declare class GetRelatedByIdRequest extends GetByIdRequest {
38
+ private property;
39
+ private relatedId;
40
+ constructor(requestOptions: RelatedByIdRequestOptionsExtended, token: Token, sdkOptions: SDKOptions);
41
+ buildUrl(): string;
42
+ }
43
+ export declare class DeleteRelatedRequest extends DeleteRequest {
44
+ private property;
45
+ constructor(requestOptions: RelatedRequestOptionsExtended, token: Token, sdkOptions: SDKOptions);
46
+ buildUrl(): string;
47
+ }
48
+ export declare class DeleteRelatedByIdRequest extends DeleteRequest {
49
+ private property;
50
+ private relatedId;
51
+ constructor(requestOptions: RelatedByIdRequestOptionsExtended, token: Token, sdkOptions: SDKOptions);
52
+ buildUrl(): string;
53
+ }
54
+ export declare class CreateRelatedRequest extends CreateRequest {
55
+ private property;
56
+ constructor(requestOptions: RelatedRequestOptionsExtended, token: Token, sdkOptions: SDKOptions);
57
+ buildUrl(): string;
58
+ }
59
+ export declare class UploadRequest extends CreateRequest {
60
+ private fileName;
61
+ private uploadProperties;
62
+ private contentType;
63
+ constructor(requestOptions: UploadRequestOptionsExtended, token: Token, sdkOptions: SDKOptions);
64
+ getHeaders(): {
65
+ [key: string]: string;
66
+ };
67
+ getBody(): object;
68
+ getMethod(): string;
69
+ }
70
+ export interface PostRequestOptionsExtended extends RequestOptionsBaseExtended {
71
+ data?: object;
72
+ }
73
+ export interface PutRequestOptionsExtended extends PostRequestOptionsExtended {
74
+ saveTemp: boolean;
75
+ }
76
+ export interface RelatedRequestOptionsExtended extends PostRequestOptionsExtended {
77
+ property: string;
78
+ }
79
+ export interface RelatedByIdRequestOptionsExtended extends RelatedRequestOptionsExtended {
80
+ relatedId: string;
81
+ }
82
+ export interface UploadRequestOptionsExtended extends PostRequestOptionsExtended {
83
+ fileName: string;
84
+ contentType: string;
85
+ uploadProperties: {
86
+ [key: string]: string;
87
+ };
88
+ }
@@ -0,0 +1,28 @@
1
+ import { RequestOptionsBase } from "../Data";
2
+ import { Query } from "../Query";
3
+ import { TypeOptions } from "../Sitefinity";
4
+ export declare class RequestBase {
5
+ successCb: Function;
6
+ failureCb: Function;
7
+ progressCb: Function;
8
+ key: string | number;
9
+ urlOptions: TypeOptions;
10
+ protected query: Query;
11
+ private action;
12
+ private fallbackProperties;
13
+ constructor(options: RequestOptionsBaseExtended);
14
+ getQueryString(urlOptions: TypeOptions, query: Query): string;
15
+ getBody(): object;
16
+ getMethod(): string;
17
+ getHeaders(): {
18
+ [key: string]: string;
19
+ };
20
+ buildUrl(): string;
21
+ protected parseResponse(http: XMLHttpRequest): string | any;
22
+ protected addQueryParameters(url: string): string;
23
+ private getQueryParameters;
24
+ }
25
+ export interface RequestOptionsBaseExtended extends RequestOptionsBase {
26
+ progressCb?: Function;
27
+ urlOptions: TypeOptions;
28
+ }
@@ -0,0 +1,22 @@
1
+ import { GetRequest, GetByIdRequest, CreateRequest, UpdateRequest, DeleteRequest, GetRelatedRequest, GetRelatedByIdRequest, DeleteRelatedRequest, DeleteRelatedByIdRequest, CreateRelatedRequest, UploadRequest, PostRequestOptionsExtended, PutRequestOptionsExtended, RelatedRequestOptionsExtended, RelatedByIdRequestOptionsExtended, UploadRequestOptionsExtended } from "./Request";
2
+ import { SDKOptions, Token } from "../Sitefinity";
3
+ import { BatchRequest } from "./BatchRequest";
4
+ import { RequestOptionsBaseExtended } from "./RequestBase";
5
+ export declare class RequestFactory {
6
+ token: Token;
7
+ private options;
8
+ constructor(options: SDKOptions);
9
+ get(parameters: RequestOptionsBaseExtended): GetRequest;
10
+ getSingle(parameters: RequestOptionsBaseExtended): GetByIdRequest;
11
+ create(parameters: PostRequestOptionsExtended): CreateRequest;
12
+ update(parameters: PutRequestOptionsExtended): UpdateRequest;
13
+ destroy(parameters: RequestOptionsBaseExtended): DeleteRequest;
14
+ getProperty(parameters: RelatedRequestOptionsExtended): GetRelatedRequest;
15
+ getRelated(parameters: RelatedRequestOptionsExtended): GetRelatedRequest;
16
+ getRelatedById(parameters: RelatedByIdRequestOptionsExtended): GetRelatedByIdRequest;
17
+ destroyRelated(parameters: RelatedRequestOptionsExtended): DeleteRelatedRequest;
18
+ destroyRelatedById(parameters: RelatedByIdRequestOptionsExtended): DeleteRelatedByIdRequest;
19
+ createRelated(parameters: RelatedRequestOptionsExtended): CreateRelatedRequest;
20
+ upload(parameters: UploadRequestOptionsExtended): UploadRequest;
21
+ batch(parameters: RequestOptionsBaseExtended): BatchRequest;
22
+ }
@@ -0,0 +1,66 @@
1
+ import { Data } from './Data';
2
+ import { Query } from './Query';
3
+ import { ResponseHandlers } from "./Requests/ExecutableRequest";
4
+ import { BatchRequest } from "./Requests/BatchRequest";
5
+ export declare class Sitefinity {
6
+ static Query: typeof Query;
7
+ private factory;
8
+ private baseUrl;
9
+ private siteId;
10
+ /**
11
+ * The constructor of the Sitefinity JavaScript SDK. This is the entry point for the SDK.
12
+ */
13
+ constructor(options: SDKOptions);
14
+ data(options: TypeOptions): Data;
15
+ batch(success?: Function, failure?: Function, progress?: Function, options?: TypeOptions): BatchRequest;
16
+ /**
17
+ * Sets the authentication token.
18
+ */
19
+ setToken(token: Token): void;
20
+ }
21
+ interface OptionsBase {
22
+ /**
23
+ * Your service url that points to the configured instance of Sitefinity service.
24
+ */
25
+ baseUrl?: string;
26
+ /**
27
+ * The ID of the site, for which the queries will be executed.
28
+ */
29
+ siteId?: string;
30
+ }
31
+ /**
32
+ * Defines an object containing configuration options for the SDK object.
33
+ */
34
+ export interface SDKOptions extends OptionsBase {
35
+ /**
36
+ * The global handlers for request execution
37
+ */
38
+ handlers?: ResponseHandlers;
39
+ enableUnlimitedChoices?: boolean;
40
+ integrationMode?: boolean;
41
+ }
42
+ /**
43
+ * Defines an object containing configuration options related to a specific type.
44
+ */
45
+ export interface TypeOptions extends OptionsBase {
46
+ /**
47
+ * The URL name of the type.
48
+ */
49
+ entitySet?: string;
50
+ /**
51
+ * The name of the provider. If empty the default provider for the site will be used.
52
+ */
53
+ provider?: string;
54
+ /**
55
+ * The name of the culture. If empty the default culture for the site will be used.
56
+ */
57
+ culture?: string;
58
+ additionalQueryParams?: {
59
+ [key: string]: string;
60
+ };
61
+ }
62
+ export interface Token {
63
+ type: string;
64
+ value: string;
65
+ }
66
+ export {};
@@ -0,0 +1,68 @@
1
+ import { ComplexExpression } from './Expression';
2
+ /**
3
+ * A fluent API operation for creating a filter for a query by chaining different rules.
4
+ */
5
+ export declare class WhereQuery<QueryType> {
6
+ private parent;
7
+ private expression;
8
+ constructor(parent: QueryType, type?: string);
9
+ /**
10
+ * Adds an `and` clause to the current condition and returns it for further chaining.
11
+ */
12
+ and(): WhereQuery<WhereQuery<QueryType>>;
13
+ /**
14
+ * Adds an `or` clause to the current condition and returns it for further chaining.
15
+ */
16
+ or(): WhereQuery<WhereQuery<QueryType>>;
17
+ /**
18
+ * Adds an `any` clause to the current condition and returns it for further chaining.
19
+ */
20
+ any(): WhereQuery<WhereQuery<QueryType>>;
21
+ /**
22
+ * Adds a `not` clause to the current condition and returns it for further chaining.
23
+ */
24
+ not(): WhereQuery<WhereQuery<QueryType>>;
25
+ /**
26
+ * Adds a condition that a field must be equal to a specific value.
27
+ */
28
+ eq(parameter: string, constant: any): WhereQuery<QueryType>;
29
+ /**
30
+ * Adds a condition that a field must *not* be equal to a specific value.
31
+ */
32
+ ne(parameter: string, constant: any): WhereQuery<QueryType>;
33
+ /**
34
+ * Adds a condition that a field must be `greater than` a certain value. Applicable to Number, String, and Date fields.
35
+ */
36
+ gt(parameter: string, constant: any): WhereQuery<QueryType>;
37
+ /**
38
+ * Adds a condition that a field must be `greater than or equal` to a certain value. Applicable to Number, String, and Date fields.
39
+ */
40
+ gte(parameter: string, constant: any): WhereQuery<QueryType>;
41
+ /**
42
+ * Adds a condition that a field must be `less than` a certain value. Applicable to Number, String, and Date fields.
43
+ */
44
+ lt(parameter: string, constant: any): WhereQuery<QueryType>;
45
+ /**
46
+ * Adds a condition that a field must be `less than or equal` to a certain value. Applicable to Number, String, and Date fields.
47
+ */
48
+ lte(parameter: string, constant: any): WhereQuery<QueryType>;
49
+ /**
50
+ * Adds a condition that a field value must *start* with a specified string.
51
+ */
52
+ startsWith(parameter: string, constant: any, caseSensitive?: boolean): WhereQuery<QueryType>;
53
+ /**
54
+ * Adds a condition that a field value must *contain* a specified string.
55
+ */
56
+ contains(parameter: string, constant: any, caseSensitive?: boolean): WhereQuery<QueryType>;
57
+ /**
58
+ * Adds a condition that a field value must *end* with a specified string.
59
+ */
60
+ endsWith(parameter: string, constant: any, caseSensitive?: boolean): WhereQuery<QueryType>;
61
+ /**
62
+ * Ends the definition of the current WhereQuery. You need to call this method in order to continue with the definition of the parent {@link QueryBase}. All other `WhereQuery` methods return the current instance of `WhereQuery` to allow chaining.
63
+ */
64
+ done(): QueryType;
65
+ getExpression(): ComplexExpression;
66
+ private simple;
67
+ private addComplexExpression;
68
+ }
@@ -0,0 +1,55 @@
1
+ export declare const EXPRESSION_TYPE: {
2
+ query: number;
3
+ where: number;
4
+ and: string;
5
+ or: string;
6
+ not: string;
7
+ eq: string;
8
+ ne: string;
9
+ lt: string;
10
+ le: string;
11
+ gt: string;
12
+ ge: string;
13
+ any: string;
14
+ contains: string;
15
+ startsWith: string;
16
+ endsWith: string;
17
+ };
18
+ export declare const ODATA_PARAMS: {
19
+ $filter: string;
20
+ $select: string;
21
+ $expand: string;
22
+ $orderby: string;
23
+ $skip: string;
24
+ $top: string;
25
+ $count: string;
26
+ $search: string;
27
+ };
28
+ export declare const SF_PARAMS: {
29
+ provider: string;
30
+ culture: string;
31
+ siteId: string;
32
+ fallbackParams: string;
33
+ parentId: string;
34
+ };
35
+ export declare const HEADER_NAMES: {
36
+ contentType: string;
37
+ authorization: string;
38
+ contentEncoding: string;
39
+ operation: string;
40
+ properties: string;
41
+ fileName: string;
42
+ serviceRequest: string;
43
+ choicesBinaryRepresentation: string;
44
+ integrationMode: string;
45
+ };
46
+ export declare const HTTP_METHODS: {
47
+ get: string;
48
+ put: string;
49
+ post: string;
50
+ patch: string;
51
+ delete: string;
52
+ };
53
+ export declare const CONTENT_TYPES: {
54
+ json: string;
55
+ };
@@ -0,0 +1,16 @@
1
+ export declare class utils {
2
+ static isString(obj: any): boolean;
3
+ static isBoolean(obj: any): boolean;
4
+ static isBlob(obj: any): boolean;
5
+ static isNumber(value: any): boolean;
6
+ static isFunction(func: any): boolean;
7
+ static serializeToJSON(data: any): string;
8
+ static parseStringToJson(data: any): any;
9
+ static convertDateFieldToISOString(data: object): object;
10
+ static hex16(): string;
11
+ static addTrailingSlash(url: string): string;
12
+ static removeSlashes(url: string): string;
13
+ static clone(from: any, to?: {}, action?: Function): any;
14
+ private static _parseDateProperties;
15
+ private static _tryFormatFieldToDate;
16
+ }
package/karma.conf.js ADDED
@@ -0,0 +1,29 @@
1
+ module.exports = (config) => {
2
+ config.set({
3
+ frameworks: [ 'jasmine-ajax', 'jasmine', 'karma-typescript' ],
4
+ plugins: [
5
+ 'karma-jasmine',
6
+ 'karma-chrome-launcher',
7
+ 'karma-jasmine-ajax',
8
+ 'karma-typescript',
9
+ 'karma-spec-reporter'
10
+ ],
11
+ karmaTypescriptConfig: {
12
+ tsconfig: "./tsconfig.json",
13
+ },
14
+ client: {
15
+ // leave Jasmine Spec Runner output visible in browser
16
+ clearContext: false
17
+ },
18
+ files: [ { pattern: 'src/**/*.ts' } ],
19
+ preprocessors: {
20
+ 'src/**/*.ts': [ 'karma-typescript' ]
21
+ },
22
+ reporters: [ 'spec', 'karma-typescript' ],
23
+ colors: true,
24
+ logLevel: config.LOG_INFO,
25
+ autoWatch: true,
26
+ browsers: ["Chrome"],
27
+ singleRun: config.single_run
28
+ })
29
+ }