@progress/sitefinity-webservices-sdk 1.1.16 → 2.0.0
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/README.md +84 -51
- package/esm/chunks/chunk-2ID24RPE.mjs +179 -0
- package/esm/chunks/chunk-2ID24RPE.mjs.map +7 -0
- package/esm/chunks/chunk-AHDZ2CWQ.mjs +93 -0
- package/esm/chunks/chunk-AHDZ2CWQ.mjs.map +7 -0
- package/esm/chunks/chunk-BFLQBM7R.mjs +136 -0
- package/esm/chunks/chunk-BFLQBM7R.mjs.map +7 -0
- package/esm/chunks/chunk-CMGV26CS.mjs +66 -0
- package/esm/chunks/chunk-CMGV26CS.mjs.map +7 -0
- package/esm/chunks/chunk-DHWDJAGV.mjs +180 -0
- package/esm/chunks/chunk-DHWDJAGV.mjs.map +7 -0
- package/esm/chunks/chunk-EH4CERVO.mjs +82 -0
- package/esm/chunks/chunk-EH4CERVO.mjs.map +7 -0
- package/esm/chunks/chunk-F4CWOE7M.mjs +57 -0
- package/esm/chunks/chunk-F4CWOE7M.mjs.map +7 -0
- package/esm/chunks/chunk-FUFBYOIF.mjs +98 -0
- package/esm/chunks/chunk-FUFBYOIF.mjs.map +7 -0
- package/esm/chunks/chunk-J2B7UDVZ.mjs +132 -0
- package/esm/chunks/chunk-J2B7UDVZ.mjs.map +7 -0
- package/esm/chunks/chunk-L3IMDFA5.mjs +1 -0
- package/esm/chunks/chunk-L3IMDFA5.mjs.map +7 -0
- package/esm/chunks/chunk-NNYY2VBC.mjs +383 -0
- package/esm/chunks/chunk-NNYY2VBC.mjs.map +7 -0
- package/esm/chunks/chunk-PI55MBSL.mjs +256 -0
- package/esm/chunks/chunk-PI55MBSL.mjs.map +7 -0
- package/esm/chunks/chunk-PXPK2IV6.mjs +568 -0
- package/esm/chunks/chunk-PXPK2IV6.mjs.map +7 -0
- package/esm/chunks/chunk-QPSEKUOI.mjs +35 -0
- package/esm/chunks/chunk-QPSEKUOI.mjs.map +7 -0
- package/esm/chunks/chunk-RQAAYOY6.mjs +72 -0
- package/esm/chunks/chunk-RQAAYOY6.mjs.map +7 -0
- package/esm/chunks/chunk-TTVNTTW5.mjs +145 -0
- package/esm/chunks/chunk-TTVNTTW5.mjs.map +7 -0
- package/esm/chunks/chunk-VLDX2FH2.mjs +235 -0
- package/esm/chunks/chunk-VLDX2FH2.mjs.map +7 -0
- package/esm/chunks/chunk-VWT2RJET.mjs +102 -0
- package/esm/chunks/chunk-VWT2RJET.mjs.map +7 -0
- package/esm/chunks/chunk-W2OWM3L7.mjs +19 -0
- package/esm/chunks/chunk-W2OWM3L7.mjs.map +7 -0
- package/esm/chunks/chunk-WX5J7F5D.mjs +43 -0
- package/esm/chunks/chunk-WX5J7F5D.mjs.map +7 -0
- package/esm/chunks/chunk-YB2LMPUX.mjs +54 -0
- package/esm/chunks/chunk-YB2LMPUX.mjs.map +7 -0
- package/package.json +67 -36
- package/sitefinity-webservices-sdk.cjs +2761 -0
- package/sitefinity-webservices-sdk.cjs.map +7 -0
- package/sitefinity-webservices-sdk.d.mts +1 -0
- package/{dist/sitefinity-webservices-sdk.d.ts → sitefinity-webservices-sdk.d.ts} +6 -0
- package/sitefinity-webservices-sdk.global.d.ts +5 -0
- package/sitefinity-webservices-sdk.js +2764 -0
- package/sitefinity-webservices-sdk.js.map +7 -0
- package/sitefinity-webservices-sdk.min.js +3 -0
- package/sitefinity-webservices-sdk.mjs +124 -0
- package/sitefinity-webservices-sdk.mjs.map +7 -0
- package/src/BlobBuilder.d.ts +12 -0
- package/src/Data.d.ts +259 -0
- package/src/Expression.d.ts +37 -0
- package/src/OrderProperty.d.ts +24 -0
- package/src/Query.d.ts +104 -0
- package/src/QueryBase.d.ts +40 -0
- package/src/QueryBuilder.d.ts +29 -0
- package/src/Requests/BatchRequest.d.ts +174 -0
- package/src/Requests/ExecutableRequest.d.ts +43 -0
- package/src/Requests/Request.d.ts +225 -0
- package/src/Requests/RequestBase.d.ts +58 -0
- package/{dist/src → src}/Requests/RequestFactory.d.ts +24 -2
- package/src/Sitefinity.d.ts +141 -0
- package/src/Transport/FetchTransport.d.ts +17 -0
- package/src/Transport/HttpTransport.d.ts +69 -0
- package/src/Transport/XhrTransport.d.ts +8 -0
- package/src/WhereQuery.d.ts +88 -0
- package/src/chunk-upload/chunk-upload.sdk.d.ts +305 -0
- package/src/chunk-upload/chunked-file-upload.utilities.d.ts +58 -0
- package/{dist/src → src}/constants.d.ts +21 -0
- package/src/utils.d.ts +103 -0
- package/.editorconfig +0 -29
- package/.eslintignore +0 -4
- package/.eslintrc.js +0 -40
- package/.github/copilot-instructions.md +0 -72
- package/.github/instructions/sitefinity-webservices-sdk.instructions.md +0 -53
- package/config/helpers.ts +0 -8
- package/config/webpack.common.ts +0 -39
- package/config/webpack.dev.ts +0 -37
- package/config/webpack.prod.ts +0 -17
- package/dist/docs/.nojekyll +0 -1
- package/dist/docs/assets/highlight.css +0 -71
- package/dist/docs/assets/main.js +0 -58
- package/dist/docs/assets/search.js +0 -1
- package/dist/docs/assets/style.css +0 -1280
- package/dist/docs/classes/BlobBuilder.BlobBuilder.html +0 -137
- package/dist/docs/classes/Data.Data.html +0 -387
- package/dist/docs/classes/Expression.BinaryExpression.html +0 -184
- package/dist/docs/classes/Expression.ComplexExpression.html +0 -146
- package/dist/docs/classes/Expression.ExpressionBase.html +0 -125
- package/dist/docs/classes/OrderProperty.OrderProperty.html +0 -151
- package/dist/docs/classes/Query.Query.html +0 -353
- package/dist/docs/classes/QueryBase.QueryBase.html +0 -185
- package/dist/docs/classes/QueryBuilder.QueryBuilder.html +0 -206
- package/dist/docs/classes/Requests_BatchRequest.BatchRequest.html +0 -731
- package/dist/docs/classes/Requests_BatchRequest.Transaction.html +0 -332
- package/dist/docs/classes/Requests_ExecutableRequest.ExecutableRequest.html +0 -340
- package/dist/docs/classes/Requests_Request.CommitChunksRequest.html +0 -303
- package/dist/docs/classes/Requests_Request.CreateRelatedRequest.html +0 -310
- package/dist/docs/classes/Requests_Request.CreateRequest.html +0 -307
- package/dist/docs/classes/Requests_Request.DeleteRelatedByIdRequest.html +0 -309
- package/dist/docs/classes/Requests_Request.DeleteRelatedRequest.html +0 -302
- package/dist/docs/classes/Requests_Request.DeleteRequest.html +0 -298
- package/dist/docs/classes/Requests_Request.GetByIdRequest.html +0 -298
- package/dist/docs/classes/Requests_Request.GetRelatedByIdRequest.html +0 -309
- package/dist/docs/classes/Requests_Request.GetRelatedRequest.html +0 -302
- package/dist/docs/classes/Requests_Request.GetRequest.html +0 -295
- package/dist/docs/classes/Requests_Request.UpdateRequest.html +0 -309
- package/dist/docs/classes/Requests_Request.UploadChunkRequest.html +0 -359
- package/dist/docs/classes/Requests_Request.UploadRequest.html +0 -329
- package/dist/docs/classes/Requests_RequestBase.RequestBase.html +0 -275
- package/dist/docs/classes/Requests_RequestFactory.RequestFactory.html +0 -344
- package/dist/docs/classes/Sitefinity.Sitefinity.html +0 -188
- package/dist/docs/classes/WhereQuery.WhereQuery.html +0 -436
- package/dist/docs/classes/chunk_upload_chunk_upload_sdk.ChunkUploadSdk.html +0 -231
- package/dist/docs/classes/chunk_upload_chunked_file_upload_utilities.ChunkedFileUploadUtilities.html +0 -131
- package/dist/docs/classes/utils.utils.html +0 -303
- package/dist/docs/index.html +0 -129
- package/dist/docs/interfaces/Data.CreateRelatedRequestOptions.html +0 -155
- package/dist/docs/interfaces/Data.CreateRequestOptions.html +0 -153
- package/dist/docs/interfaces/Data.OperationsRequestOptions.html +0 -145
- package/dist/docs/interfaces/Data.PropertyRequestOptions.html +0 -149
- package/dist/docs/interfaces/Data.RequestOptionsBase.html +0 -136
- package/dist/docs/interfaces/Data.SingleRelatedItemRequestOptions.html +0 -155
- package/dist/docs/interfaces/Data.UpdateRequestOptions.html +0 -155
- package/dist/docs/interfaces/Data.UploadRequestOptions.html +0 -169
- package/dist/docs/interfaces/Requests_BatchRequest.BatchCreateRelatedRequestOptions.html +0 -161
- package/dist/docs/interfaces/Requests_BatchRequest.BatchCreateRequestOptions.html +0 -153
- package/dist/docs/interfaces/Requests_BatchRequest.BatchPropertyRequestOptions.html +0 -153
- package/dist/docs/interfaces/Requests_BatchRequest.BatchRequestOptionsBase.html +0 -145
- package/dist/docs/interfaces/Requests_BatchRequest.BatchRequestOptionsExtended.html +0 -153
- package/dist/docs/interfaces/Requests_BatchRequest.BatchSingleItemRequestOptions.html +0 -145
- package/dist/docs/interfaces/Requests_BatchRequest.BatchSingleRelatedItemRequestOptions.html +0 -161
- package/dist/docs/interfaces/Requests_BatchRequest.BatchUpdateRequestOptions.html +0 -161
- package/dist/docs/interfaces/Requests_ExecutableRequest.ResponseHandlers.html +0 -98
- package/dist/docs/interfaces/Requests_Request.CommitChunksRequestOptionsExtended.html +0 -215
- package/dist/docs/interfaces/Requests_Request.PostRequestOptionsExtended.html +0 -159
- package/dist/docs/interfaces/Requests_Request.PutRequestOptionsExtended.html +0 -161
- package/dist/docs/interfaces/Requests_Request.RelatedByIdRequestOptionsExtended.html +0 -169
- package/dist/docs/interfaces/Requests_Request.RelatedRequestOptionsExtended.html +0 -163
- package/dist/docs/interfaces/Requests_Request.UploadChunkRequestOptionsExtended.html +0 -217
- package/dist/docs/interfaces/Requests_Request.UploadRequestOptionsExtended.html +0 -180
- package/dist/docs/interfaces/Requests_RequestBase.RequestOptionsBaseExtended.html +0 -148
- package/dist/docs/interfaces/Sitefinity.SDKOptions.html +0 -128
- package/dist/docs/interfaces/Sitefinity.Token.html +0 -94
- package/dist/docs/interfaces/Sitefinity.TypeOptions.html +0 -160
- package/dist/docs/interfaces/chunk_upload_chunk_upload_sdk.ChunkUploadInfoDTO.html +0 -159
- package/dist/docs/interfaces/chunk_upload_chunk_upload_sdk.ChunkUploadResult.html +0 -111
- package/dist/docs/interfaces/chunk_upload_chunk_upload_sdk.CleanUpChunksRequestOptions.html +0 -171
- package/dist/docs/interfaces/chunk_upload_chunk_upload_sdk.CommitChunksRequestOptions.html +0 -204
- package/dist/docs/interfaces/chunk_upload_chunk_upload_sdk.GetChunkUploadInfoRequestOptions.html +0 -166
- package/dist/docs/interfaces/chunk_upload_chunk_upload_sdk.UploadChunkRequestOptions.html +0 -206
- package/dist/docs/interfaces/chunk_upload_chunked_file_upload_utilities.ChunkFileResult.html +0 -101
- package/dist/docs/interfaces/chunk_upload_chunked_file_upload_utilities.FileUploadChunk.html +0 -94
- package/dist/docs/modules/BlobBuilder.html +0 -73
- package/dist/docs/modules/Data.html +0 -92
- package/dist/docs/modules/Expression.html +0 -77
- package/dist/docs/modules/OrderProperty.html +0 -73
- package/dist/docs/modules/Query.html +0 -73
- package/dist/docs/modules/QueryBase.html +0 -73
- package/dist/docs/modules/QueryBuilder.html +0 -73
- package/dist/docs/modules/Requests_BatchRequest.html +0 -94
- package/dist/docs/modules/Requests_ExecutableRequest.html +0 -78
- package/dist/docs/modules/Requests_Request.html +0 -114
- package/dist/docs/modules/Requests_RequestBase.html +0 -78
- package/dist/docs/modules/Requests_RequestFactory.html +0 -73
- package/dist/docs/modules/Sitefinity.html +0 -82
- package/dist/docs/modules/WhereQuery.html +0 -73
- package/dist/docs/modules/chunk_upload_chunk_upload_sdk.html +0 -88
- package/dist/docs/modules/chunk_upload_chunked_file_upload_utilities.html +0 -80
- package/dist/docs/modules/constants.html +0 -83
- package/dist/docs/modules/utils.html +0 -73
- package/dist/docs/modules.html +0 -80
- package/dist/docs/variables/constants.CONTENT_TYPES.html +0 -76
- package/dist/docs/variables/constants.EXPRESSION_TYPE.html +0 -106
- package/dist/docs/variables/constants.HEADER_NAMES.html +0 -102
- package/dist/docs/variables/constants.HTTP_METHODS.html +0 -84
- package/dist/docs/variables/constants.ODATA_PARAMS.html +0 -90
- package/dist/docs/variables/constants.SF_PARAMS.html +0 -84
- package/dist/samples.html +0 -625
- package/dist/sitefinity-webservices-sdk.js +0 -3243
- package/dist/sitefinity-webservices-sdk.js.map +0 -1
- package/dist/sitefinity-webservices-sdk.min.js +0 -1
- package/dist/src/BlobBuilder.d.ts +0 -14
- package/dist/src/Data.d.ts +0 -154
- package/dist/src/Data.spec.d.ts +0 -1
- package/dist/src/Expression.d.ts +0 -19
- package/dist/src/OrderProperty.d.ts +0 -8
- package/dist/src/Query.d.ts +0 -59
- package/dist/src/QueryBase.d.ts +0 -18
- package/dist/src/QueryBuilder.d.ts +0 -13
- package/dist/src/Requests/BatchRequest.d.ts +0 -146
- package/dist/src/Requests/ExecutableRequest.d.ts +0 -22
- package/dist/src/Requests/Request.d.ts +0 -132
- package/dist/src/Requests/RequestBase.d.ts +0 -27
- package/dist/src/Requests/request.spec.d.ts +0 -1
- package/dist/src/Sitefinity.d.ts +0 -75
- package/dist/src/Sitefinity.spec.d.ts +0 -1
- package/dist/src/WhereQuery.d.ts +0 -72
- package/dist/src/chunk-upload/chunk-upload.sdk.d.ts +0 -295
- package/dist/src/chunk-upload/chunk-upload.sdk.spec.d.ts +0 -1
- package/dist/src/chunk-upload/chunked-file-upload.utilities.d.ts +0 -13
- package/dist/src/utils.d.ts +0 -16
- package/karma.conf.js +0 -29
- package/sitefinity-webservices-sdk.ts +0 -15
- package/src/BlobBuilder.ts +0 -20
- package/src/Data.spec.ts +0 -160
- package/src/Data.ts +0 -418
- package/src/Expression.ts +0 -36
- package/src/OrderProperty.ts +0 -39
- package/src/Query.ts +0 -106
- package/src/QueryBase.ts +0 -57
- package/src/QueryBuilder.ts +0 -180
- package/src/Requests/BatchRequest.ts +0 -807
- package/src/Requests/ExecutableRequest.ts +0 -117
- package/src/Requests/Request.ts +0 -327
- package/src/Requests/RequestBase.ts +0 -163
- package/src/Requests/RequestFactory.ts +0 -75
- package/src/Requests/request.spec.ts +0 -154
- package/src/Sitefinity.spec.ts +0 -483
- package/src/Sitefinity.ts +0 -125
- package/src/WhereQuery.ts +0 -145
- package/src/chunk-upload/chunk-upload.sdk.spec.ts +0 -347
- package/src/chunk-upload/chunk-upload.sdk.ts +0 -439
- package/src/chunk-upload/chunked-file-upload.utilities.ts +0 -64
- package/src/constants.ts +0 -66
- package/src/utils.ts +0 -125
- package/template.html +0 -625
- package/tsconfig.json +0 -38
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import {
|
|
2
|
+
QueryBase
|
|
3
|
+
} from "./chunk-CMGV26CS.mjs";
|
|
4
|
+
import {
|
|
5
|
+
QueryBuilder
|
|
6
|
+
} from "./chunk-DHWDJAGV.mjs";
|
|
7
|
+
import {
|
|
8
|
+
WhereQuery
|
|
9
|
+
} from "./chunk-BFLQBM7R.mjs";
|
|
10
|
+
import {
|
|
11
|
+
OrderProperty
|
|
12
|
+
} from "./chunk-YB2LMPUX.mjs";
|
|
13
|
+
|
|
14
|
+
// src/Query.ts
|
|
15
|
+
var Query = class extends QueryBase {
|
|
16
|
+
/** Creates an empty query with no selected fields, filters, ordering, or paging. */
|
|
17
|
+
constructor() {
|
|
18
|
+
super();
|
|
19
|
+
/** The order-by clauses, when an order has been configured. */
|
|
20
|
+
this.orderProperties = null;
|
|
21
|
+
/** The number of records to skip, when paging is configured. */
|
|
22
|
+
this.skipValue = null;
|
|
23
|
+
/** The maximum number of records to return, when paging is configured. */
|
|
24
|
+
this.takeValue = null;
|
|
25
|
+
/** The full-text search expression, when configured. */
|
|
26
|
+
this.searchValue = null;
|
|
27
|
+
/** The root filter expression, when a where clause has been configured. */
|
|
28
|
+
this.filter = null;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Starts a filter expression.
|
|
32
|
+
*
|
|
33
|
+
* The returned builder is generic over its parent query. Call `done()` to
|
|
34
|
+
* return to this query; nested logical groups require one `done()` per group.
|
|
35
|
+
*
|
|
36
|
+
* @returns A fluent filter builder.
|
|
37
|
+
*/
|
|
38
|
+
where() {
|
|
39
|
+
const clone = this.clone((newObj) => {
|
|
40
|
+
newObj.filter = new WhereQuery(newObj);
|
|
41
|
+
});
|
|
42
|
+
return clone.filter;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Specifies one or more order-by clauses.
|
|
46
|
+
*
|
|
47
|
+
* Each property may be followed by `asc` or `desc`; ascending order is the
|
|
48
|
+
* default. Property names must be simple paths without a dot.
|
|
49
|
+
*
|
|
50
|
+
* @param properties Property names and optional directions.
|
|
51
|
+
* @returns A cloned query containing the requested ordering.
|
|
52
|
+
* @throws Error If a property is not a string, contains a nested path, or
|
|
53
|
+
* has an invalid direction.
|
|
54
|
+
*
|
|
55
|
+
* @example
|
|
56
|
+
* new Query().order("Title desc", "PublicationDate asc");
|
|
57
|
+
*/
|
|
58
|
+
order(...properties) {
|
|
59
|
+
properties = properties ?? [];
|
|
60
|
+
this.validatePropertyPaths(properties);
|
|
61
|
+
return this.clone((newObj) => {
|
|
62
|
+
const orderItems = [];
|
|
63
|
+
for (let i = 0; i < properties.length; i++) {
|
|
64
|
+
const member = properties[i];
|
|
65
|
+
const orderProp = new OrderProperty(member);
|
|
66
|
+
orderItems.push(orderProp);
|
|
67
|
+
}
|
|
68
|
+
newObj.orderProperties = orderItems;
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Skips a number of records before returning results.
|
|
73
|
+
*
|
|
74
|
+
* @param value Number of records to skip.
|
|
75
|
+
* @returns A cloned query with `$skip` configured.
|
|
76
|
+
*/
|
|
77
|
+
skip(value) {
|
|
78
|
+
return this.clone((newObj) => {
|
|
79
|
+
newObj.skipValue = value;
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Limits the number of records returned.
|
|
84
|
+
*
|
|
85
|
+
* @param value Maximum number of records to return.
|
|
86
|
+
* @returns A cloned query with `$top` configured.
|
|
87
|
+
*/
|
|
88
|
+
take(value) {
|
|
89
|
+
return this.clone((newObj) => {
|
|
90
|
+
newObj.takeValue = value;
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Adds a full-text search expression.
|
|
95
|
+
*
|
|
96
|
+
* @param value Search text understood by the Sitefinity service.
|
|
97
|
+
* @returns A cloned query with `$search` configured.
|
|
98
|
+
*/
|
|
99
|
+
search(value) {
|
|
100
|
+
return this.clone((newObj) => {
|
|
101
|
+
newObj.searchValue = value;
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Requests the total matching count with the result.
|
|
106
|
+
*
|
|
107
|
+
* @param inline Whether `$count` should be enabled. Defaults to `true`.
|
|
108
|
+
* @returns A cloned query with `$count` configured.
|
|
109
|
+
*/
|
|
110
|
+
count(inline = true) {
|
|
111
|
+
return this.clone((newObj) => {
|
|
112
|
+
newObj.inlineCount = inline;
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Converts this query into OData query parameters.
|
|
117
|
+
*
|
|
118
|
+
* The returned object may contain `$filter`, `$select`, `$expand`,
|
|
119
|
+
* `$orderby`, `$skip`, `$top`, `$count`, and `$search`. Empty clauses are
|
|
120
|
+
* omitted. Building does not mutate the query.
|
|
121
|
+
*
|
|
122
|
+
* @returns The query parameter object for a data request.
|
|
123
|
+
*/
|
|
124
|
+
build() {
|
|
125
|
+
return new QueryBuilder(this).build();
|
|
126
|
+
}
|
|
127
|
+
};
|
|
128
|
+
|
|
129
|
+
export {
|
|
130
|
+
Query
|
|
131
|
+
};
|
|
132
|
+
//# sourceMappingURL=chunk-J2B7UDVZ.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/Query.ts"],
|
|
4
|
+
"sourcesContent": ["\uFEFFimport { QueryBase } from \"./QueryBase\";\nimport { WhereQuery } from \"./WhereQuery\";\nimport { OrderProperty } from \"./OrderProperty\";\nimport { QueryBuilder } from \"./QueryBuilder\";\n\n/**\n * Builds an immutable, fluent OData query.\n *\n * Each modifier returns a cloned query, so a base query can be reused to create\n * independent variants. Call {@link build} after completing the chain to obtain\n * the query parameter object passed to a Sitefinity data request.\n *\n * @example\n * const query = new Query()\n * .select(\"Title\", \"Content\")\n * .where()\n * .eq(\"Status\", \"Live\")\n * .done()\n * .order(\"Title desc\")\n * .skip(10)\n * .take(10);\n *\n * query.build();\n * // { $select: \"Title, Content\", $filter: \"(Status eq 'Live')\",\n * // $orderby: \"Title desc\", $skip: 10, $top: 10 }\n */\nexport class Query extends QueryBase {\n /** The order-by clauses, when an order has been configured. */\n orderProperties: OrderProperty[] = null;\n /** The number of records to skip, when paging is configured. */\n skipValue: number = null;\n /** The maximum number of records to return, when paging is configured. */\n takeValue: number = null;\n /** The full-text search expression, when configured. */\n searchValue: string = null;\n /** Whether the service should include the total count in the response. */\n inlineCount: boolean;\n /** The root filter expression, when a where clause has been configured. */\n filter: WhereQuery<Query> = null;\n\n /** Creates an empty query with no selected fields, filters, ordering, or paging. */\n constructor() {\n super();\n }\n\n /**\n * Starts a filter expression.\n *\n * The returned builder is generic over its parent query. Call `done()` to\n * return to this query; nested logical groups require one `done()` per group.\n *\n * @returns A fluent filter builder.\n */\n where(): WhereQuery<Query> {\n const clone: Query = this.clone((newObj: Query) => {\n newObj.filter = new WhereQuery(newObj);\n });\n\n return clone.filter;\n }\n\n /**\n * Specifies one or more order-by clauses.\n *\n * Each property may be followed by `asc` or `desc`; ascending order is the\n * default. Property names must be simple paths without a dot.\n *\n * @param properties Property names and optional directions.\n * @returns A cloned query containing the requested ordering.\n * @throws Error If a property is not a string, contains a nested path, or\n * has an invalid direction.\n *\n * @example\n * new Query().order(\"Title desc\", \"PublicationDate asc\");\n */\n order(...properties: string[]): Query {\n properties = properties ?? [];\n this.validatePropertyPaths(properties);\n\n return this.clone((newObj: Query) => {\n const orderItems: OrderProperty[] = [];\n for (let i = 0; i < properties.length; i++) {\n const member = properties[i];\n const orderProp = new OrderProperty(member);\n orderItems.push(orderProp);\n }\n newObj.orderProperties = orderItems;\n });\n }\n\n /**\n * Skips a number of records before returning results.\n *\n * @param value Number of records to skip.\n * @returns A cloned query with `$skip` configured.\n */\n skip(value: number): Query {\n return this.clone((newObj: Query) => {\n newObj.skipValue = value;\n });\n }\n\n /**\n * Limits the number of records returned.\n *\n * @param value Maximum number of records to return.\n * @returns A cloned query with `$top` configured.\n */\n take(value: number): Query {\n return this.clone((newObj: Query) => {\n newObj.takeValue = value;\n });\n }\n\n /**\n * Adds a full-text search expression.\n *\n * @param value Search text understood by the Sitefinity service.\n * @returns A cloned query with `$search` configured.\n */\n search(value: string): Query {\n return this.clone((newObj: Query) => {\n newObj.searchValue = value;\n });\n }\n\n /**\n * Requests the total matching count with the result.\n *\n * @param inline Whether `$count` should be enabled. Defaults to `true`.\n * @returns A cloned query with `$count` configured.\n */\n count(inline = true): Query {\n return this.clone((newObj: Query) => {\n newObj.inlineCount = inline;\n });\n }\n\n /**\n * Converts this query into OData query parameters.\n *\n * The returned object may contain `$filter`, `$select`, `$expand`,\n * `$orderby`, `$skip`, `$top`, `$count`, and `$search`. Empty clauses are\n * omitted. Building does not mutate the query.\n *\n * @returns The query parameter object for a data request.\n */\n build() {\n return new QueryBuilder(this).build();\n }\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;AA0BO,IAAM,QAAN,cAAoB,UAAU;AAAA;AAAA,EAejC,cAAc;AACV,UAAM;AAdV;AAAA,2BAAmC;AAEnC;AAAA,qBAAoB;AAEpB;AAAA,qBAAoB;AAEpB;AAAA,uBAAsB;AAItB;AAAA,kBAA4B;AAAA,EAK5B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,QAA2B;AACvB,UAAM,QAAe,KAAK,MAAM,CAAC,WAAkB;AAC/C,aAAO,SAAS,IAAI,WAAW,MAAM;AAAA,IACzC,CAAC;AAED,WAAO,MAAM;AAAA,EACjB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAgBA,SAAS,YAA6B;AAClC,iBAAa,cAAc,CAAC;AAC5B,SAAK,sBAAsB,UAAU;AAErC,WAAO,KAAK,MAAM,CAAC,WAAkB;AACjC,YAAM,aAA8B,CAAC;AACrC,eAAS,IAAI,GAAG,IAAI,WAAW,QAAQ,KAAK;AACxC,cAAM,SAAS,WAAW,CAAC;AAC3B,cAAM,YAAY,IAAI,cAAc,MAAM;AAC1C,mBAAW,KAAK,SAAS;AAAA,MAC7B;AACA,aAAO,kBAAkB;AAAA,IAC7B,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,KAAK,OAAsB;AACvB,WAAO,KAAK,MAAM,CAAC,WAAkB;AACjC,aAAO,YAAY;AAAA,IACvB,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,KAAK,OAAsB;AACvB,WAAO,KAAK,MAAM,CAAC,WAAkB;AACjC,aAAO,YAAY;AAAA,IACvB,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,OAAO,OAAsB;AACzB,WAAO,KAAK,MAAM,CAAC,WAAkB;AACjC,aAAO,cAAc;AAAA,IACzB,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,MAAM,SAAS,MAAa;AACxB,WAAO,KAAK,MAAM,CAAC,WAAkB;AACjC,aAAO,cAAc;AAAA,IACzB,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,QAAQ;AACJ,WAAO,IAAI,aAAa,IAAI,EAAE,MAAM;AAAA,EACxC;AACJ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=chunk-L3IMDFA5.mjs.map
|
|
@@ -0,0 +1,383 @@
|
|
|
1
|
+
import {
|
|
2
|
+
ChunkUploadSdk
|
|
3
|
+
} from "./chunk-VLDX2FH2.mjs";
|
|
4
|
+
import {
|
|
5
|
+
SF_PARAMS
|
|
6
|
+
} from "./chunk-RQAAYOY6.mjs";
|
|
7
|
+
|
|
8
|
+
// src/Data.ts
|
|
9
|
+
var Data = class {
|
|
10
|
+
/**
|
|
11
|
+
* Creates an entity-set data client.
|
|
12
|
+
*
|
|
13
|
+
* @param urlOptions Entity-set and request URL options.
|
|
14
|
+
* @param factory Internal request factory used to create SDK requests.
|
|
15
|
+
*/
|
|
16
|
+
constructor(urlOptions, factory) {
|
|
17
|
+
this.urlOptions = urlOptions;
|
|
18
|
+
this.factory = factory;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Returns the chunk-upload service for this entity set.
|
|
22
|
+
*
|
|
23
|
+
* Use it for uploads that must be sent in chunks and committed after all chunks
|
|
24
|
+
* complete. A new service instance is returned for each access.
|
|
25
|
+
*
|
|
26
|
+
* @returns The chunk-upload service.
|
|
27
|
+
*/
|
|
28
|
+
get chunkUpload() {
|
|
29
|
+
const service = new ChunkUploadSdk(this.urlOptions, this.factory);
|
|
30
|
+
return service;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Executes a GET request to retrieve a collection of items.
|
|
34
|
+
*
|
|
35
|
+
* @param parameters Query, action, fallback-property, and callback options.
|
|
36
|
+
* @returns Nothing. The result is delivered to `successCb` or `failureCb`.
|
|
37
|
+
* @throws If request creation fails.
|
|
38
|
+
*/
|
|
39
|
+
get(parameters) {
|
|
40
|
+
const request = this.factory.get({
|
|
41
|
+
urlOptions: this.urlOptions,
|
|
42
|
+
query: parameters.query,
|
|
43
|
+
action: parameters.action,
|
|
44
|
+
successCb: parameters.successCb,
|
|
45
|
+
failureCb: parameters.failureCb,
|
|
46
|
+
fallbackProperties: parameters.fallbackProperties
|
|
47
|
+
});
|
|
48
|
+
request.execute();
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Executes a GET request to retrieve operations for an item or its parent collection.
|
|
52
|
+
*
|
|
53
|
+
* When `key` is omitted, `parentId` is added to the operations URL.
|
|
54
|
+
*
|
|
55
|
+
* @param parameters Operation and callback options.
|
|
56
|
+
* @returns Nothing. The result is delivered to `successCb` or `failureCb`.
|
|
57
|
+
* @throws If the underlying request cannot be created.
|
|
58
|
+
*/
|
|
59
|
+
getOperations(parameters) {
|
|
60
|
+
let request;
|
|
61
|
+
let action = "operations";
|
|
62
|
+
if (!parameters.key)
|
|
63
|
+
action += `?${SF_PARAMS.parentId}=` + parameters.parentId;
|
|
64
|
+
const params = {
|
|
65
|
+
urlOptions: this.urlOptions,
|
|
66
|
+
action,
|
|
67
|
+
successCb: parameters.successCb,
|
|
68
|
+
failureCb: parameters.failureCb
|
|
69
|
+
};
|
|
70
|
+
if (parameters.key) {
|
|
71
|
+
params.key = parameters.key;
|
|
72
|
+
request = this.factory.getSingle(params);
|
|
73
|
+
} else {
|
|
74
|
+
request = this.factory.get(params);
|
|
75
|
+
}
|
|
76
|
+
request.execute();
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Executes a GET request for a single item.
|
|
80
|
+
*
|
|
81
|
+
* @param parameters Item key, query, action, and callback options.
|
|
82
|
+
* @returns Nothing. The item is delivered to `successCb` or `failureCb`.
|
|
83
|
+
* @throws If `key` is missing.
|
|
84
|
+
*/
|
|
85
|
+
getSingle(parameters) {
|
|
86
|
+
if (!parameters.key)
|
|
87
|
+
throw "Parameter 'key' is required!";
|
|
88
|
+
const request = this.factory.getSingle({
|
|
89
|
+
urlOptions: this.urlOptions,
|
|
90
|
+
key: parameters.key,
|
|
91
|
+
query: parameters.query,
|
|
92
|
+
action: parameters.action,
|
|
93
|
+
successCb: parameters.successCb,
|
|
94
|
+
failureCb: parameters.failureCb,
|
|
95
|
+
fallbackProperties: parameters.fallbackProperties
|
|
96
|
+
});
|
|
97
|
+
request.execute();
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Executes a POST request for a single item.
|
|
101
|
+
*
|
|
102
|
+
* @param parameters Item data, optional key/action, and callbacks.
|
|
103
|
+
* @returns Nothing. The created item or error is delivered to a callback.
|
|
104
|
+
* @throws If `data` is missing.
|
|
105
|
+
*/
|
|
106
|
+
create(parameters) {
|
|
107
|
+
if (!parameters.data)
|
|
108
|
+
throw "Parameter 'data' is required!";
|
|
109
|
+
const request = this.factory.create({
|
|
110
|
+
urlOptions: this.urlOptions,
|
|
111
|
+
key: parameters.key,
|
|
112
|
+
query: parameters.query,
|
|
113
|
+
data: parameters.data,
|
|
114
|
+
action: parameters.action,
|
|
115
|
+
successCb: parameters.successCb,
|
|
116
|
+
failureCb: parameters.failureCb
|
|
117
|
+
});
|
|
118
|
+
request.execute();
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Executes a PATCH request to update a single item.
|
|
122
|
+
*
|
|
123
|
+
* @param parameters Item key, update data, optional temporary-save flag, and callbacks.
|
|
124
|
+
* @returns Nothing. The updated item or error is delivered to a callback.
|
|
125
|
+
* @throws If `key` or `data` is missing.
|
|
126
|
+
*
|
|
127
|
+
* @example
|
|
128
|
+
* const data = sf.data({
|
|
129
|
+
* entitySet: "newsitems",
|
|
130
|
+
* provider: "OpenAccessDataProvider",
|
|
131
|
+
* culture: "en"
|
|
132
|
+
* });
|
|
133
|
+
*
|
|
134
|
+
* data.update({
|
|
135
|
+
* key: "00000000-0000-0000-0000-000000000000",
|
|
136
|
+
* data: { Title: "Updated news title" },
|
|
137
|
+
* saveTemp: true,
|
|
138
|
+
* successCb,
|
|
139
|
+
* failureCb
|
|
140
|
+
* });
|
|
141
|
+
*/
|
|
142
|
+
update(parameters) {
|
|
143
|
+
if (parameters.key === void 0 || parameters.key === null || !parameters.data)
|
|
144
|
+
throw "Parameters: 'data' and 'key' are required!";
|
|
145
|
+
const request = this.factory.update({
|
|
146
|
+
urlOptions: this.urlOptions,
|
|
147
|
+
key: parameters.key,
|
|
148
|
+
data: parameters.data,
|
|
149
|
+
action: parameters.action,
|
|
150
|
+
saveTemp: parameters.saveTemp,
|
|
151
|
+
successCb: parameters.successCb,
|
|
152
|
+
failureCb: parameters.failureCb
|
|
153
|
+
});
|
|
154
|
+
request.execute();
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* Executes a DELETE request to delete a single item.
|
|
158
|
+
*
|
|
159
|
+
* @param parameters Item key, optional action, and callbacks.
|
|
160
|
+
* @returns Nothing. The result is delivered to `successCb` or `failureCb`.
|
|
161
|
+
* @throws If `key` is missing.
|
|
162
|
+
*/
|
|
163
|
+
destroy(parameters) {
|
|
164
|
+
if (!parameters.key)
|
|
165
|
+
throw "Parameter 'key' is required!";
|
|
166
|
+
const request = this.factory.destroy({
|
|
167
|
+
urlOptions: this.urlOptions,
|
|
168
|
+
key: parameters.key,
|
|
169
|
+
action: parameters.action,
|
|
170
|
+
successCb: parameters.successCb,
|
|
171
|
+
failureCb: parameters.failureCb
|
|
172
|
+
});
|
|
173
|
+
request.execute();
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Executes a POST request to execute a workflow operation for a single item.
|
|
177
|
+
*
|
|
178
|
+
* @param parameters Item key, operation data, and callbacks.
|
|
179
|
+
* @returns Nothing. The operation result is delivered to a callback.
|
|
180
|
+
* @throws If `key` or `data` is missing.
|
|
181
|
+
*/
|
|
182
|
+
operation(parameters) {
|
|
183
|
+
if (parameters.key === void 0 || parameters.key === null || !parameters.data)
|
|
184
|
+
throw "Parameters: 'data' and 'key' are required!";
|
|
185
|
+
const request = this.factory.create({
|
|
186
|
+
urlOptions: this.urlOptions,
|
|
187
|
+
key: parameters.key,
|
|
188
|
+
action: "operation",
|
|
189
|
+
data: parameters.data,
|
|
190
|
+
successCb: parameters.successCb,
|
|
191
|
+
failureCb: parameters.failureCb
|
|
192
|
+
});
|
|
193
|
+
request.execute();
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* Executes a GET request to retrieve a property of a single item.
|
|
197
|
+
*
|
|
198
|
+
* @param parameters Item key, property name, and callbacks.
|
|
199
|
+
* @returns Nothing. The property value is delivered to a callback.
|
|
200
|
+
* @throws If `key` or `property` is missing.
|
|
201
|
+
*/
|
|
202
|
+
getProperty(parameters) {
|
|
203
|
+
if (parameters.key === void 0 || parameters.key === null || !parameters.property)
|
|
204
|
+
throw "Parameters: 'data' and 'property' are required!";
|
|
205
|
+
const request = this.factory.getProperty({
|
|
206
|
+
urlOptions: this.urlOptions,
|
|
207
|
+
key: parameters.key,
|
|
208
|
+
property: parameters.property,
|
|
209
|
+
successCb: parameters.successCb,
|
|
210
|
+
failureCb: parameters.failureCb
|
|
211
|
+
});
|
|
212
|
+
request.execute();
|
|
213
|
+
}
|
|
214
|
+
/**
|
|
215
|
+
* Executes a GET request to retrieve a related property value of a single item.
|
|
216
|
+
*
|
|
217
|
+
* @param parameters Item key, relation property name, and callbacks.
|
|
218
|
+
* @returns Nothing. The related value is delivered to a callback.
|
|
219
|
+
* @throws If `key` or `property` is missing.
|
|
220
|
+
*/
|
|
221
|
+
getRelated(parameters) {
|
|
222
|
+
if (parameters.key === void 0 || parameters.key === null || !parameters.property)
|
|
223
|
+
throw "Parameters: 'data' and 'property' are required!";
|
|
224
|
+
const request = this.factory.getRelated({
|
|
225
|
+
urlOptions: this.urlOptions,
|
|
226
|
+
key: parameters.key,
|
|
227
|
+
property: parameters.property,
|
|
228
|
+
successCb: parameters.successCb,
|
|
229
|
+
failureCb: parameters.failureCb
|
|
230
|
+
});
|
|
231
|
+
request.execute();
|
|
232
|
+
}
|
|
233
|
+
/**
|
|
234
|
+
* Executes a GET request to retrieve a related item by its ID.
|
|
235
|
+
*
|
|
236
|
+
* @param parameters Item key, relation property, related item ID, and callbacks.
|
|
237
|
+
* @returns Nothing. The related item is delivered to a callback.
|
|
238
|
+
* @throws If `key`, `property`, or `relatedId` is missing.
|
|
239
|
+
*/
|
|
240
|
+
getRelatedById(parameters) {
|
|
241
|
+
if (parameters.key === void 0 || parameters.key === null || !parameters.property || parameters.relatedId === void 0 || parameters.relatedId === null)
|
|
242
|
+
throw "Parameters: 'data', 'relatedId' and 'property' are required!";
|
|
243
|
+
const request = this.factory.getRelatedById({
|
|
244
|
+
urlOptions: this.urlOptions,
|
|
245
|
+
key: parameters.key,
|
|
246
|
+
relatedId: parameters.relatedId,
|
|
247
|
+
property: parameters.property,
|
|
248
|
+
successCb: parameters.successCb,
|
|
249
|
+
failureCb: parameters.failureCb
|
|
250
|
+
});
|
|
251
|
+
request.execute();
|
|
252
|
+
}
|
|
253
|
+
/**
|
|
254
|
+
* Executes a DELETE request for all members associated with a relation property.
|
|
255
|
+
*
|
|
256
|
+
* @param parameters Item key, relation property, and callbacks.
|
|
257
|
+
* @returns Nothing. The result is delivered to `successCb` or `failureCb`.
|
|
258
|
+
* @throws If `key` or `property` is missing.
|
|
259
|
+
*/
|
|
260
|
+
destroyRelated(parameters) {
|
|
261
|
+
if (parameters.key === void 0 || parameters.key === null || !parameters.property)
|
|
262
|
+
throw "Parameters: 'data' and 'property' are required!";
|
|
263
|
+
const request = this.factory.destroyRelated({
|
|
264
|
+
urlOptions: this.urlOptions,
|
|
265
|
+
key: parameters.key,
|
|
266
|
+
property: parameters.property,
|
|
267
|
+
successCb: parameters.successCb,
|
|
268
|
+
failureCb: parameters.failureCb
|
|
269
|
+
});
|
|
270
|
+
request.execute();
|
|
271
|
+
}
|
|
272
|
+
/**
|
|
273
|
+
* Executes a DELETE request for one member of a relation property.
|
|
274
|
+
*
|
|
275
|
+
* @param parameters Item key, relation property, related item ID, and callbacks.
|
|
276
|
+
* @returns Nothing. The result is delivered to `successCb` or `failureCb`.
|
|
277
|
+
* @throws If `key`, `property`, or `relatedId` is missing.
|
|
278
|
+
*/
|
|
279
|
+
destroyRelatedById(parameters) {
|
|
280
|
+
if (parameters.key === void 0 || parameters.key === null || !parameters.property || parameters.relatedId === void 0 || parameters.relatedId === null)
|
|
281
|
+
throw "Parameters: 'data', 'relatedId' and 'property' are required!";
|
|
282
|
+
const request = this.factory.destroyRelatedById({
|
|
283
|
+
urlOptions: this.urlOptions,
|
|
284
|
+
key: parameters.key,
|
|
285
|
+
relatedId: parameters.relatedId,
|
|
286
|
+
property: parameters.property,
|
|
287
|
+
successCb: parameters.successCb,
|
|
288
|
+
failureCb: parameters.failureCb
|
|
289
|
+
});
|
|
290
|
+
request.execute();
|
|
291
|
+
}
|
|
292
|
+
/**
|
|
293
|
+
* Executes a POST request to add a related item to a property collection.
|
|
294
|
+
*
|
|
295
|
+
* @param parameters Item key, relation property, related item link, and callbacks.
|
|
296
|
+
* @returns Nothing. The result is delivered to `successCb` or `failureCb`.
|
|
297
|
+
* @throws If `key`, `property`, or `link` is missing.
|
|
298
|
+
*/
|
|
299
|
+
createRelated(parameters) {
|
|
300
|
+
if (parameters.key === void 0 || parameters.key === null || !parameters.property || parameters.link === void 0 || parameters.link === null)
|
|
301
|
+
throw "Parameters: 'data', 'link' and 'property' are required!";
|
|
302
|
+
const data = {
|
|
303
|
+
"@odata.id": parameters.link
|
|
304
|
+
};
|
|
305
|
+
const request = this.factory.createRelated({
|
|
306
|
+
urlOptions: this.urlOptions,
|
|
307
|
+
key: parameters.key,
|
|
308
|
+
property: parameters.property,
|
|
309
|
+
data,
|
|
310
|
+
successCb: parameters.successCb,
|
|
311
|
+
failureCb: parameters.failureCb
|
|
312
|
+
});
|
|
313
|
+
request.execute();
|
|
314
|
+
}
|
|
315
|
+
/**
|
|
316
|
+
* Executes a POST request to upload a media item and optionally update or publish it.
|
|
317
|
+
*
|
|
318
|
+
* The SDK orchestrates the upload in a transaction. `content`, `contentType`, `name`,
|
|
319
|
+
* and `uploadProperties` are required. When `payload` is supplied, it updates the
|
|
320
|
+
* uploaded item; when `publish` is `true`, it then executes the `Publish` operation.
|
|
321
|
+
*
|
|
322
|
+
* @param parameters Upload data, optional post-upload payload, publish flag, and callbacks.
|
|
323
|
+
* @returns Nothing. The result is delivered to `successCb` or `failureCb`.
|
|
324
|
+
* @throws If required upload data is missing.
|
|
325
|
+
*
|
|
326
|
+
* @example
|
|
327
|
+
* const data = sf.data({ entitySet: "images" });
|
|
328
|
+
* data.upload({
|
|
329
|
+
* data: {
|
|
330
|
+
* content: "base64 file content",
|
|
331
|
+
* contentType: "image/jpeg",
|
|
332
|
+
* name: "test.jpg",
|
|
333
|
+
* payload: { Title: "Test" },
|
|
334
|
+
* uploadProperties: {
|
|
335
|
+
* ParentId: "4BA7AD46-F29B-4E65-BE17-9BF7CE5BA1FB"
|
|
336
|
+
* }
|
|
337
|
+
* },
|
|
338
|
+
* successCb,
|
|
339
|
+
* failureCb
|
|
340
|
+
* });
|
|
341
|
+
*/
|
|
342
|
+
upload(parameters) {
|
|
343
|
+
if (!parameters?.data?.content || !parameters.data.contentType || !parameters.data.name || !parameters.data.uploadProperties)
|
|
344
|
+
throw "parameters: content, contentType, name and uploadProperties are required!";
|
|
345
|
+
const options = {
|
|
346
|
+
urlOptions: this.urlOptions,
|
|
347
|
+
_factory: this.factory,
|
|
348
|
+
successCb: parameters.successCb,
|
|
349
|
+
failureCb: parameters.failureCb
|
|
350
|
+
};
|
|
351
|
+
const batch = this.factory.batch(options);
|
|
352
|
+
const transaction = batch.beginTransaction();
|
|
353
|
+
const uploadedFile = transaction.upload({
|
|
354
|
+
entitySet: this.urlOptions.entitySet,
|
|
355
|
+
data: parameters.data.content,
|
|
356
|
+
contentType: parameters.data.contentType,
|
|
357
|
+
fileName: parameters.data.name,
|
|
358
|
+
uploadProperties: parameters.data.uploadProperties
|
|
359
|
+
});
|
|
360
|
+
if (parameters.data.payload)
|
|
361
|
+
transaction.update({
|
|
362
|
+
entitySet: this.urlOptions.entitySet,
|
|
363
|
+
key: uploadedFile,
|
|
364
|
+
data: parameters.data.payload
|
|
365
|
+
});
|
|
366
|
+
if (parameters.publish === true) {
|
|
367
|
+
transaction.operation({
|
|
368
|
+
entitySet: this.urlOptions.entitySet,
|
|
369
|
+
key: uploadedFile,
|
|
370
|
+
data: {
|
|
371
|
+
action: "Publish"
|
|
372
|
+
}
|
|
373
|
+
});
|
|
374
|
+
}
|
|
375
|
+
batch.endTransaction(transaction);
|
|
376
|
+
return batch.execute();
|
|
377
|
+
}
|
|
378
|
+
};
|
|
379
|
+
|
|
380
|
+
export {
|
|
381
|
+
Data
|
|
382
|
+
};
|
|
383
|
+
//# sourceMappingURL=chunk-NNYY2VBC.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/Data.ts"],
|
|
4
|
+
"sourcesContent": ["\uFEFFimport { ChunkUploadSdk } from \"./chunk-upload/chunk-upload.sdk\";\nimport { SF_PARAMS } from \"./constants\";\nimport { Query } from \"./Query\";\nimport { ExecutableRequest } from \"./Requests/ExecutableRequest\";\nimport { RequestFactory } from \"./Requests/RequestFactory\";\nimport { TypeOptions } from \"./Sitefinity\";\n\n/**\n * Client for issuing requests against one Sitefinity entity set.\n */\nexport class Data {\n private urlOptions: TypeOptions;\n private factory: RequestFactory;\n\n /**\n * Creates an entity-set data client.\n *\n * @param urlOptions Entity-set and request URL options.\n * @param factory Internal request factory used to create SDK requests.\n */\n constructor(urlOptions: TypeOptions, factory: RequestFactory) {\n this.urlOptions = urlOptions;\n this.factory = factory;\n }\n\n\n /**\n * Returns the chunk-upload service for this entity set.\n *\n * Use it for uploads that must be sent in chunks and committed after all chunks\n * complete. A new service instance is returned for each access.\n *\n * @returns The chunk-upload service.\n */\n public get chunkUpload(): ChunkUploadSdk {\n const service = new ChunkUploadSdk(this.urlOptions, this.factory);\n return service;\n }\n\n /**\n * Executes a GET request to retrieve a collection of items.\n *\n * @param parameters Query, action, fallback-property, and callback options.\n * @returns Nothing. The result is delivered to `successCb` or `failureCb`.\n * @throws If request creation fails.\n */\n get(parameters: RequestOptionsBase) {\n const request = this.factory.get({\n urlOptions: this.urlOptions,\n query: parameters.query,\n action: parameters.action,\n successCb: parameters.successCb,\n failureCb: parameters.failureCb,\n fallbackProperties: parameters.fallbackProperties\n });\n\n request.execute();\n }\n\n /**\n * Executes a GET request to retrieve operations for an item or its parent collection.\n *\n * When `key` is omitted, `parentId` is added to the operations URL.\n *\n * @param parameters Operation and callback options.\n * @returns Nothing. The result is delivered to `successCb` or `failureCb`.\n * @throws If the underlying request cannot be created.\n */\n getOperations(parameters: OperationsRequestOptions) {\n let request: ExecutableRequest;\n let action = \"operations\";\n\n // Set parentId if no item key is passed\n if (!parameters.key)\n action += `?${SF_PARAMS.parentId}=` + parameters.parentId;\n\n const params: any = {\n urlOptions: this.urlOptions,\n action: action,\n successCb: parameters.successCb,\n failureCb: parameters.failureCb\n };\n\n if (parameters.key) {\n params.key = parameters.key;\n request = this.factory.getSingle(params);\n } else {\n request = this.factory.get(params);\n }\n\n request.execute();\n }\n\n /**\n * Executes a GET request for a single item.\n *\n * @param parameters Item key, query, action, and callback options.\n * @returns Nothing. The item is delivered to `successCb` or `failureCb`.\n * @throws If `key` is missing.\n */\n getSingle(parameters: RequestOptionsBase) {\n if (!(parameters.key))\n throw \"Parameter 'key' is required!\";\n\n const request = this.factory.getSingle({\n urlOptions: this.urlOptions,\n key: parameters.key,\n query: parameters.query,\n action: parameters.action,\n successCb: parameters.successCb,\n failureCb: parameters.failureCb,\n fallbackProperties: parameters.fallbackProperties\n });\n\n request.execute();\n }\n\n /**\n * Executes a POST request for a single item.\n *\n * @param parameters Item data, optional key/action, and callbacks.\n * @returns Nothing. The created item or error is delivered to a callback.\n * @throws If `data` is missing.\n */\n create(parameters: CreateRequestOptions) {\n if (!(parameters.data))\n throw \"Parameter 'data' is required!\";\n\n const request = this.factory.create({\n urlOptions: this.urlOptions,\n key: parameters.key,\n query: parameters.query,\n data: parameters.data,\n action: parameters.action,\n successCb: parameters.successCb,\n failureCb: parameters.failureCb\n });\n\n request.execute();\n }\n\n /**\n * Executes a PATCH request to update a single item.\n *\n * @param parameters Item key, update data, optional temporary-save flag, and callbacks.\n * @returns Nothing. The updated item or error is delivered to a callback.\n * @throws If `key` or `data` is missing.\n *\n * @example\n * const data = sf.data({\n * entitySet: \"newsitems\",\n * provider: \"OpenAccessDataProvider\",\n * culture: \"en\"\n * });\n *\n * data.update({\n * key: \"00000000-0000-0000-0000-000000000000\",\n * data: { Title: \"Updated news title\" },\n * saveTemp: true,\n * successCb,\n * failureCb\n * });\n */\n update(parameters: UpdateRequestOptions) {\n if (parameters.key === undefined || parameters.key === null || !parameters.data)\n throw \"Parameters: 'data' and 'key' are required!\";\n\n const request = this.factory.update({\n urlOptions: this.urlOptions,\n key: parameters.key,\n data: parameters.data,\n action: parameters.action,\n saveTemp: parameters.saveTemp,\n successCb: parameters.successCb,\n failureCb: parameters.failureCb\n });\n\n request.execute();\n }\n\n /**\n * Executes a DELETE request to delete a single item.\n *\n * @param parameters Item key, optional action, and callbacks.\n * @returns Nothing. The result is delivered to `successCb` or `failureCb`.\n * @throws If `key` is missing.\n */\n destroy(parameters: RequestOptionsBase) {\n if (!(parameters.key))\n throw \"Parameter 'key' is required!\";\n\n const request = this.factory.destroy({\n urlOptions: this.urlOptions,\n key: parameters.key,\n action: parameters.action,\n successCb: parameters.successCb,\n failureCb: parameters.failureCb\n });\n\n request.execute();\n }\n\n /**\n * Executes a POST request to execute a workflow operation for a single item.\n *\n * @param parameters Item key, operation data, and callbacks.\n * @returns Nothing. The operation result is delivered to a callback.\n * @throws If `key` or `data` is missing.\n */\n operation(parameters: CreateRequestOptions) {\n if (parameters.key === undefined || parameters.key === null || !parameters.data)\n throw \"Parameters: 'data' and 'key' are required!\";\n\n const request = this.factory.create({\n urlOptions: this.urlOptions,\n key: parameters.key,\n action: \"operation\",\n data: parameters.data,\n successCb: parameters.successCb,\n failureCb: parameters.failureCb\n });\n\n request.execute();\n }\n\n /**\n * Executes a GET request to retrieve a property of a single item.\n *\n * @param parameters Item key, property name, and callbacks.\n * @returns Nothing. The property value is delivered to a callback.\n * @throws If `key` or `property` is missing.\n */\n getProperty(parameters: PropertyRequestOptions) {\n if (parameters.key === undefined || parameters.key === null || !parameters.property)\n throw \"Parameters: 'data' and 'property' are required!\";\n\n const request = this.factory.getProperty({\n urlOptions: this.urlOptions,\n key: parameters.key,\n property: parameters.property,\n successCb: parameters.successCb,\n failureCb: parameters.failureCb\n });\n\n request.execute();\n }\n\n /**\n * Executes a GET request to retrieve a related property value of a single item.\n *\n * @param parameters Item key, relation property name, and callbacks.\n * @returns Nothing. The related value is delivered to a callback.\n * @throws If `key` or `property` is missing.\n */\n getRelated(parameters: PropertyRequestOptions) {\n if (parameters.key === undefined || parameters.key === null || !parameters.property)\n throw \"Parameters: 'data' and 'property' are required!\";\n\n const request = this.factory.getRelated({\n urlOptions: this.urlOptions,\n key: parameters.key,\n property: parameters.property,\n successCb: parameters.successCb,\n failureCb: parameters.failureCb\n });\n\n request.execute();\n }\n\n /**\n * Executes a GET request to retrieve a related item by its ID.\n *\n * @param parameters Item key, relation property, related item ID, and callbacks.\n * @returns Nothing. The related item is delivered to a callback.\n * @throws If `key`, `property`, or `relatedId` is missing.\n */\n getRelatedById(parameters: SingleRelatedItemRequestOptions) {\n if (parameters.key === undefined || parameters.key === null || !parameters.property ||\n parameters.relatedId === undefined || parameters.relatedId === null)\n throw \"Parameters: 'data', 'relatedId' and 'property' are required!\";\n\n const request = this.factory.getRelatedById({\n urlOptions: this.urlOptions,\n key: parameters.key,\n relatedId: parameters.relatedId,\n property: parameters.property,\n successCb: parameters.successCb,\n failureCb: parameters.failureCb\n });\n\n request.execute();\n }\n\n /**\n * Executes a DELETE request for all members associated with a relation property.\n *\n * @param parameters Item key, relation property, and callbacks.\n * @returns Nothing. The result is delivered to `successCb` or `failureCb`.\n * @throws If `key` or `property` is missing.\n */\n destroyRelated(parameters: PropertyRequestOptions) {\n if (parameters.key === undefined || parameters.key === null || !parameters.property)\n throw \"Parameters: 'data' and 'property' are required!\";\n\n const request = this.factory.destroyRelated({\n urlOptions: this.urlOptions,\n key: parameters.key,\n property: parameters.property,\n successCb: parameters.successCb,\n failureCb: parameters.failureCb\n });\n\n request.execute();\n }\n\n /**\n * Executes a DELETE request for one member of a relation property.\n *\n * @param parameters Item key, relation property, related item ID, and callbacks.\n * @returns Nothing. The result is delivered to `successCb` or `failureCb`.\n * @throws If `key`, `property`, or `relatedId` is missing.\n */\n destroyRelatedById(parameters: SingleRelatedItemRequestOptions) {\n if (parameters.key === undefined || parameters.key === null || !parameters.property ||\n parameters.relatedId === undefined || parameters.relatedId === null)\n throw \"Parameters: 'data', 'relatedId' and 'property' are required!\";\n\n const request = this.factory.destroyRelatedById({\n urlOptions: this.urlOptions,\n key: parameters.key,\n relatedId: parameters.relatedId,\n property: parameters.property,\n successCb: parameters.successCb,\n failureCb: parameters.failureCb\n });\n\n request.execute();\n }\n\n /**\n * Executes a POST request to add a related item to a property collection.\n *\n * @param parameters Item key, relation property, related item link, and callbacks.\n * @returns Nothing. The result is delivered to `successCb` or `failureCb`.\n * @throws If `key`, `property`, or `link` is missing.\n */\n createRelated(parameters: CreateRelatedRequestOptions) {\n if (parameters.key === undefined || parameters.key === null || !parameters.property ||\n parameters.link === undefined || parameters.link === null)\n throw \"Parameters: 'data', 'link' and 'property' are required!\";\n\n const data = {\n \"@odata.id\": parameters.link\n };\n\n const request = this.factory.createRelated({\n urlOptions: this.urlOptions,\n key: parameters.key,\n property: parameters.property,\n data: data,\n successCb: parameters.successCb,\n failureCb: parameters.failureCb\n });\n\n request.execute();\n }\n\n /**\n * Executes a POST request to upload a media item and optionally update or publish it.\n *\n * The SDK orchestrates the upload in a transaction. `content`, `contentType`, `name`,\n * and `uploadProperties` are required. When `payload` is supplied, it updates the\n * uploaded item; when `publish` is `true`, it then executes the `Publish` operation.\n *\n * @param parameters Upload data, optional post-upload payload, publish flag, and callbacks.\n * @returns Nothing. The result is delivered to `successCb` or `failureCb`.\n * @throws If required upload data is missing.\n *\n * @example\n * const data = sf.data({ entitySet: \"images\" });\n * data.upload({\n * data: {\n * content: \"base64 file content\",\n * contentType: \"image/jpeg\",\n * name: \"test.jpg\",\n * payload: { Title: \"Test\" },\n * uploadProperties: {\n * ParentId: \"4BA7AD46-F29B-4E65-BE17-9BF7CE5BA1FB\"\n * }\n * },\n * successCb,\n * failureCb\n * });\n */\n upload(parameters: UploadRequestOptions) {\n if (!parameters?.data?.content || !parameters.data.contentType || !parameters.data.name || !parameters.data.uploadProperties)\n throw \"parameters: content, contentType, name and uploadProperties are required!\";\n\n const options = {\n urlOptions: this.urlOptions,\n _factory: this.factory,\n successCb: parameters.successCb,\n failureCb: parameters.failureCb\n };\n\n const batch = this.factory.batch(options);\n const transaction = batch.beginTransaction();\n\n const uploadedFile = transaction.upload({\n entitySet: this.urlOptions.entitySet,\n data: parameters.data.content,\n contentType: parameters.data.contentType,\n fileName: parameters.data.name,\n uploadProperties: parameters.data.uploadProperties\n });\n\n if (parameters.data.payload)\n transaction.update({\n entitySet: this.urlOptions.entitySet,\n key: uploadedFile,\n data: parameters.data.payload\n });\n\n if (parameters.publish === true) {\n transaction.operation({\n entitySet: this.urlOptions.entitySet,\n key: uploadedFile,\n data: {\n action: \"Publish\"\n }\n });\n }\n\n batch.endTransaction(transaction);\n return batch.execute();\n }\n}\n\n/**\n * Common query, URL-action, callback, and item-key options for data requests.\n */\nexport interface RequestOptionsBase {\n /** OData query to apply to the request. */\n query?: Query;\n /** Optional action appended to the request URL. */\n action?: string;\n /** Called with the successful response payload. */\n successCb?: Function;\n /** Called with the failure payload, including the HTTP status when available. */\n failureCb?: Function;\n /** Called with the upload or request progress event when available. */\n progressCb?: Function;\n /** Additional property names requested for culture fallback. */\n fallbackProperties?: string[];\n /** Item key used by single-item and relation requests. */\n key?: string | number;\n}\n\n/**\n * Options for retrieving the operations available to an item or parent collection.\n */\nexport interface OperationsRequestOptions extends RequestOptionsBase {\n /** Parent item ID used when retrieving collection operations without a `key`. */\n parentId?: string;\n}\n\n/**\n * Options for creating an item or executing an item operation.\n */\nexport interface CreateRequestOptions extends RequestOptionsBase {\n /** Entity data sent in the request body. Required by `create` and `operation`. */\n data?: object;\n}\n\n/**\n * Options for updating an existing item.\n */\nexport interface UpdateRequestOptions extends CreateRequestOptions {\n /** Saves the update as temporary data when true. */\n saveTemp?: boolean;\n}\n\n/**\n * Options for addressing an item property or relation.\n */\nexport interface PropertyRequestOptions extends RequestOptionsBase {\n /** Relation or property name addressed by the request. */\n property: string;\n}\n\n/**\n * Options for addressing one item within a relation.\n */\nexport interface SingleRelatedItemRequestOptions extends PropertyRequestOptions {\n /** ID of the related item addressed by the request. */\n relatedId: string;\n}\n\n/**\n * Options for adding an item to a relation.\n */\nexport interface CreateRelatedRequestOptions extends PropertyRequestOptions {\n /** OData link or ID of the related item to add. */\n link: string | number;\n}\n\n/**\n * Options for uploading a media item and optionally updating or publishing it.\n */\nexport interface UploadRequestOptions extends CreateRequestOptions {\n /** Upload content and metadata. */\n data: {\n /** Base64 or other content representation accepted by the upload endpoint. */\n content: string;\n /** MIME type of the uploaded file. */\n contentType: string;\n /** Upload-specific properties such as a media-library parent ID. */\n uploadProperties: { [key: string]: string };\n /** File name sent to Sitefinity. */\n name: string;\n /** Properties applied to the uploaded item after upload. */\n payload?: object;\n },\n /** Publishes the uploaded item after any payload update when true. */\n publish?: boolean;\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;AAUO,IAAM,OAAN,MAAW;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUd,YAAY,YAAyB,SAAyB;AAC1D,SAAK,aAAa;AAClB,SAAK,UAAU;AAAA,EACnB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,IAAW,cAA8B;AACrC,UAAM,UAAU,IAAI,eAAe,KAAK,YAAY,KAAK,OAAO;AAChE,WAAO;AAAA,EACX;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,IAAI,YAAgC;AAChC,UAAM,UAAU,KAAK,QAAQ,IAAI;AAAA,MAC7B,YAAY,KAAK;AAAA,MACjB,OAAO,WAAW;AAAA,MAClB,QAAQ,WAAW;AAAA,MACnB,WAAW,WAAW;AAAA,MACtB,WAAW,WAAW;AAAA,MACtB,oBAAoB,WAAW;AAAA,IACnC,CAAC;AAED,YAAQ,QAAQ;AAAA,EACpB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,cAAc,YAAsC;AAChD,QAAI;AACJ,QAAI,SAAS;AAGb,QAAI,CAAC,WAAW;AACZ,gBAAU,IAAI,UAAU,QAAQ,MAAM,WAAW;AAErD,UAAM,SAAc;AAAA,MAChB,YAAY,KAAK;AAAA,MACjB;AAAA,MACA,WAAW,WAAW;AAAA,MACtB,WAAW,WAAW;AAAA,IAC1B;AAEA,QAAI,WAAW,KAAK;AAChB,aAAO,MAAM,WAAW;AACxB,gBAAU,KAAK,QAAQ,UAAU,MAAM;AAAA,IAC3C,OAAO;AACH,gBAAU,KAAK,QAAQ,IAAI,MAAM;AAAA,IACrC;AAEA,YAAQ,QAAQ;AAAA,EACpB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,UAAU,YAAgC;AACtC,QAAI,CAAE,WAAW;AACb,YAAM;AAEV,UAAM,UAAU,KAAK,QAAQ,UAAU;AAAA,MACnC,YAAY,KAAK;AAAA,MACjB,KAAK,WAAW;AAAA,MAChB,OAAO,WAAW;AAAA,MAClB,QAAQ,WAAW;AAAA,MACnB,WAAW,WAAW;AAAA,MACtB,WAAW,WAAW;AAAA,MACtB,oBAAoB,WAAW;AAAA,IACnC,CAAC;AAED,YAAQ,QAAQ;AAAA,EACpB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,OAAO,YAAkC;AACrC,QAAI,CAAE,WAAW;AACb,YAAM;AAEV,UAAM,UAAU,KAAK,QAAQ,OAAO;AAAA,MAChC,YAAY,KAAK;AAAA,MACjB,KAAK,WAAW;AAAA,MAChB,OAAO,WAAW;AAAA,MAClB,MAAM,WAAW;AAAA,MACjB,QAAQ,WAAW;AAAA,MACnB,WAAW,WAAW;AAAA,MACtB,WAAW,WAAW;AAAA,IAC1B,CAAC;AAED,YAAQ,QAAQ;AAAA,EACpB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAwBA,OAAO,YAAkC;AACrC,QAAI,WAAW,QAAQ,UAAa,WAAW,QAAQ,QAAQ,CAAC,WAAW;AACvE,YAAM;AAEV,UAAM,UAAU,KAAK,QAAQ,OAAO;AAAA,MAChC,YAAY,KAAK;AAAA,MACjB,KAAK,WAAW;AAAA,MAChB,MAAM,WAAW;AAAA,MACjB,QAAQ,WAAW;AAAA,MACnB,UAAU,WAAW;AAAA,MACrB,WAAW,WAAW;AAAA,MACtB,WAAW,WAAW;AAAA,IAC1B,CAAC;AAED,YAAQ,QAAQ;AAAA,EACpB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,QAAQ,YAAgC;AACpC,QAAI,CAAE,WAAW;AACb,YAAM;AAEV,UAAM,UAAU,KAAK,QAAQ,QAAQ;AAAA,MACjC,YAAY,KAAK;AAAA,MACjB,KAAK,WAAW;AAAA,MAChB,QAAQ,WAAW;AAAA,MACnB,WAAW,WAAW;AAAA,MACtB,WAAW,WAAW;AAAA,IAC1B,CAAC;AAED,YAAQ,QAAQ;AAAA,EACpB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,UAAU,YAAkC;AACxC,QAAI,WAAW,QAAQ,UAAa,WAAW,QAAQ,QAAQ,CAAC,WAAW;AACvE,YAAM;AAEV,UAAM,UAAU,KAAK,QAAQ,OAAO;AAAA,MAChC,YAAY,KAAK;AAAA,MACjB,KAAK,WAAW;AAAA,MAChB,QAAQ;AAAA,MACR,MAAM,WAAW;AAAA,MACjB,WAAW,WAAW;AAAA,MACtB,WAAW,WAAW;AAAA,IAC1B,CAAC;AAED,YAAQ,QAAQ;AAAA,EACpB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,YAAY,YAAoC;AAC5C,QAAI,WAAW,QAAQ,UAAa,WAAW,QAAQ,QAAQ,CAAC,WAAW;AACvE,YAAM;AAEV,UAAM,UAAU,KAAK,QAAQ,YAAY;AAAA,MACrC,YAAY,KAAK;AAAA,MACjB,KAAK,WAAW;AAAA,MAChB,UAAU,WAAW;AAAA,MACrB,WAAW,WAAW;AAAA,MACtB,WAAW,WAAW;AAAA,IAC1B,CAAC;AAED,YAAQ,QAAQ;AAAA,EACpB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,WAAW,YAAoC;AAC3C,QAAI,WAAW,QAAQ,UAAa,WAAW,QAAQ,QAAQ,CAAC,WAAW;AACvE,YAAM;AAEV,UAAM,UAAU,KAAK,QAAQ,WAAW;AAAA,MACpC,YAAY,KAAK;AAAA,MACjB,KAAK,WAAW;AAAA,MAChB,UAAU,WAAW;AAAA,MACrB,WAAW,WAAW;AAAA,MACtB,WAAW,WAAW;AAAA,IAC1B,CAAC;AAED,YAAQ,QAAQ;AAAA,EACpB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,eAAe,YAA6C;AACxD,QAAI,WAAW,QAAQ,UAAa,WAAW,QAAQ,QAAQ,CAAC,WAAW,YACvE,WAAW,cAAc,UAAa,WAAW,cAAc;AAC/D,YAAM;AAEV,UAAM,UAAU,KAAK,QAAQ,eAAe;AAAA,MACxC,YAAY,KAAK;AAAA,MACjB,KAAK,WAAW;AAAA,MAChB,WAAW,WAAW;AAAA,MACtB,UAAU,WAAW;AAAA,MACrB,WAAW,WAAW;AAAA,MACtB,WAAW,WAAW;AAAA,IAC1B,CAAC;AAED,YAAQ,QAAQ;AAAA,EACpB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,eAAe,YAAoC;AAC/C,QAAI,WAAW,QAAQ,UAAa,WAAW,QAAQ,QAAQ,CAAC,WAAW;AACvE,YAAM;AAEV,UAAM,UAAU,KAAK,QAAQ,eAAe;AAAA,MACxC,YAAY,KAAK;AAAA,MACjB,KAAK,WAAW;AAAA,MAChB,UAAU,WAAW;AAAA,MACrB,WAAW,WAAW;AAAA,MACtB,WAAW,WAAW;AAAA,IAC1B,CAAC;AAED,YAAQ,QAAQ;AAAA,EACpB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,mBAAmB,YAA6C;AAC5D,QAAI,WAAW,QAAQ,UAAa,WAAW,QAAQ,QAAQ,CAAC,WAAW,YACvE,WAAW,cAAc,UAAa,WAAW,cAAc;AAC/D,YAAM;AAEV,UAAM,UAAU,KAAK,QAAQ,mBAAmB;AAAA,MAC5C,YAAY,KAAK;AAAA,MACjB,KAAK,WAAW;AAAA,MAChB,WAAW,WAAW;AAAA,MACtB,UAAU,WAAW;AAAA,MACrB,WAAW,WAAW;AAAA,MACtB,WAAW,WAAW;AAAA,IAC1B,CAAC;AAED,YAAQ,QAAQ;AAAA,EACpB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,cAAc,YAAyC;AACnD,QAAI,WAAW,QAAQ,UAAa,WAAW,QAAQ,QAAQ,CAAC,WAAW,YACvE,WAAW,SAAS,UAAa,WAAW,SAAS;AACrD,YAAM;AAEV,UAAM,OAAO;AAAA,MACT,aAAa,WAAW;AAAA,IAC5B;AAEA,UAAM,UAAU,KAAK,QAAQ,cAAc;AAAA,MACvC,YAAY,KAAK;AAAA,MACjB,KAAK,WAAW;AAAA,MAChB,UAAU,WAAW;AAAA,MACrB;AAAA,MACA,WAAW,WAAW;AAAA,MACtB,WAAW,WAAW;AAAA,IAC1B,CAAC;AAED,YAAQ,QAAQ;AAAA,EACpB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EA6BA,OAAO,YAAkC;AACrC,QAAI,CAAC,YAAY,MAAM,WAAW,CAAC,WAAW,KAAK,eAAe,CAAC,WAAW,KAAK,QAAQ,CAAC,WAAW,KAAK;AACxG,YAAM;AAEV,UAAM,UAAU;AAAA,MACZ,YAAY,KAAK;AAAA,MACjB,UAAU,KAAK;AAAA,MACf,WAAW,WAAW;AAAA,MACtB,WAAW,WAAW;AAAA,IAC1B;AAEA,UAAM,QAAQ,KAAK,QAAQ,MAAM,OAAO;AACxC,UAAM,cAAc,MAAM,iBAAiB;AAE3C,UAAM,eAAe,YAAY,OAAO;AAAA,MACpC,WAAW,KAAK,WAAW;AAAA,MAC3B,MAAM,WAAW,KAAK;AAAA,MACtB,aAAa,WAAW,KAAK;AAAA,MAC7B,UAAU,WAAW,KAAK;AAAA,MAC1B,kBAAkB,WAAW,KAAK;AAAA,IACtC,CAAC;AAED,QAAI,WAAW,KAAK;AAChB,kBAAY,OAAO;AAAA,QACf,WAAW,KAAK,WAAW;AAAA,QAC3B,KAAK;AAAA,QACL,MAAM,WAAW,KAAK;AAAA,MAC1B,CAAC;AAEL,QAAI,WAAW,YAAY,MAAM;AAC7B,kBAAY,UAAU;AAAA,QAClB,WAAW,KAAK,WAAW;AAAA,QAC3B,KAAK;AAAA,QACL,MAAM;AAAA,UACF,QAAQ;AAAA,QACZ;AAAA,MACJ,CAAC;AAAA,IACL;AAEA,UAAM,eAAe,WAAW;AAChC,WAAO,MAAM,QAAQ;AAAA,EACzB;AACJ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|