@wix/wix-data-items-common 1.0.280 → 1.0.282
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/dist/cjs/api/ApiClient.js +1 -1
- package/dist/cjs/api/ApiClient.js.map +1 -1
- package/dist/cjs/api/WixDataApi.js +157 -91
- package/dist/cjs/api/WixDataApi.js.map +1 -1
- package/dist/cjs/api/WixDataQueryBuilder.js +88 -0
- package/dist/cjs/api/WixDataQueryBuilder.js.map +1 -0
- package/dist/cjs/api/index.js +9 -1
- package/dist/cjs/api/index.js.map +1 -1
- package/dist/cjs/api/types.js.map +1 -1
- package/dist/cjs/errors/errors.js +6 -3
- package/dist/cjs/errors/errors.js.map +1 -1
- package/dist/esm/api/ApiClient.js +1 -1
- package/dist/esm/api/ApiClient.js.map +1 -1
- package/dist/esm/api/WixDataApi.js +148 -99
- package/dist/esm/api/WixDataApi.js.map +1 -1
- package/dist/esm/api/WixDataQueryBuilder.js +74 -0
- package/dist/esm/api/WixDataQueryBuilder.js.map +1 -0
- package/dist/esm/api/index.js +1 -0
- package/dist/esm/api/index.js.map +1 -1
- package/dist/esm/errors/errors.js +6 -3
- package/dist/esm/errors/errors.js.map +1 -1
- package/dist/types/api/ApiClient.d.ts.map +1 -1
- package/dist/types/api/WixDataApi.d.ts +17 -2
- package/dist/types/api/WixDataApi.d.ts.map +1 -1
- package/dist/types/api/WixDataQueryBuilder.d.ts +79 -0
- package/dist/types/api/WixDataQueryBuilder.d.ts.map +1 -0
- package/dist/types/api/index.d.ts +2 -1
- package/dist/types/api/index.d.ts.map +1 -1
- package/dist/types/api/types.d.ts +61 -0
- package/dist/types/api/types.d.ts.map +1 -1
- package/dist/types/errors/errors.d.ts +1 -1
- package/dist/types/errors/errors.d.ts.map +1 -1
- package/package.json +4 -3
|
@@ -190,7 +190,7 @@ class ApiClient {
|
|
|
190
190
|
throw parsedError;
|
|
191
191
|
}
|
|
192
192
|
}
|
|
193
|
-
throw (0, _errors.wixDataError)(_errors.messages.internalError('Unknown error.'), _errors.codes.UnknownError);
|
|
193
|
+
throw (0, _errors.wixDataError)(_errors.messages.internalError('Unknown error.'), _errors.codes.UnknownError, null, error);
|
|
194
194
|
}
|
|
195
195
|
}
|
|
196
196
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_utils","require","_errors","_errors2","SUPPORTS_GET_METHOD","apiRequestInterceptor","allowGet","request","preferGet","methodFqn","data","serializeDates","url","base64url","length","method","undefined","ApiClient","constructor","clientFactory","_defineProperty2","default","httpApiClient","getDataItem","r","withErrorHandling","response","parseDates","insertDataItem","saveDataItem","updateDataItem","patchDataItem","bulkPatchDataItems","removeDataItem","countDataItems","queryDistinctValues","queryDataItems","aggregateDataItems","aggregatePipelineDataItems","bulkInsertDataItems","bulkUpdateDataItems","bulkSaveDataItems","bulkRemoveDataItems","queryReferencedDataItems","bulkInsertDataItemReferences","replaceDataItemReferences","bulkRemoveDataItemReferences","isReferencedDataItem","truncateDataItems","searchDataItems","call","error","isHttpError","_error$response","_error$response2","status","wixDataError","messages","payloadIsTooLarge","parsedError","parseError","internalError","codes","UnknownError","exports"],"sources":["../../../src/api/ApiClient.ts"],"sourcesContent":["import type {\n HttpApiClient,\n RequestInterceptor,\n Request,\n HttpApiClientFactory,\n} from '../types/api'\nimport {\n decode as parseDates,\n encode as serializeDates,\n base64url,\n} from '../utils'\nimport { messages, wixDataError, codes } from '../errors'\n\nimport { isHttpError, parseError } from './errors'\nimport {\n AggregateDataItemsRequest,\n AggregateDataItemsResponse,\n AggregatePipelineDataItemsRequest,\n AggregatePipelineDataItemsResponse,\n BulkInsertDataItemReferencesRequest,\n BulkInsertDataItemReferencesResponse,\n BulkInsertDataItemsRequest,\n BulkInsertDataItemsResponse,\n BulkPatchDataItemsRequest,\n BulkPatchDataItemsResponse,\n BulkRemoveDataItemReferencesRequest,\n BulkRemoveDataItemReferencesResponse,\n BulkRemoveDataItemsRequest,\n BulkRemoveDataItemsResponse,\n BulkSaveDataItemsRequest,\n BulkSaveDataItemsResponse,\n BulkUpdateDataItemsRequest,\n BulkUpdateDataItemsResponse,\n CountDataItemsRequest,\n CountDataItemsResponse,\n GetDataItemRequest,\n GetDataItemResponse,\n InsertDataItemRequest,\n InsertDataItemResponse,\n IsReferencedDataItemRequest,\n IsReferencedDataItemResponse,\n PatchDataItemRequest,\n PatchDataItemResponse,\n QueryDataItemsRequest,\n QueryDataItemsResponse,\n QueryDistinctValuesRequest,\n QueryDistinctValuesResponse,\n QueryReferencedDataItemsRequest,\n QueryReferencedDataItemsResponse,\n RemoveDataItemRequest,\n RemoveDataItemResponse,\n ReplaceDataItemReferencesRequest,\n ReplaceDataItemReferencesResponse,\n SaveDataItemRequest,\n SaveDataItemResponse,\n TruncateDataItemsRequest,\n TruncateDataItemsResponse,\n UpdateDataItemRequest,\n UpdateDataItemResponse,\n SearchDataItemsRequest,\n SearchDataItemsResponse,\n} from '../types/data-item-types'\n\nconst SUPPORTS_GET_METHOD: Record<string, boolean> = {\n 'com.wixpress.cloud.data.api.data.DataItemService.QueryDataItems': true,\n}\n\nexport function apiRequestInterceptor<R extends Request>(\n allowGet: boolean\n): RequestInterceptor<R> {\n return (request) => {\n const preferGet = allowGet && SUPPORTS_GET_METHOD[request.methodFqn ?? '']\n const data = serializeDates(request.data)\n if (preferGet) {\n // https://github.com/wix-private/server-infra/tree/master/framework/grpc/rest#complex-requests-messages-with-get-mappings\n const url = `${request.url}?.r=${base64url(data)}`\n if (url.length <= 2048) {\n return {\n ...request,\n method: 'GET',\n url,\n data: undefined,\n }\n }\n }\n return { ...request, data }\n }\n}\n\nexport class ApiClient {\n private httpApiClient: HttpApiClient\n\n constructor(clientFactory: HttpApiClientFactory<any>, allowGet: boolean) {\n this.httpApiClient = clientFactory(apiRequestInterceptor(allowGet))\n }\n\n async getDataItem(r: GetDataItemRequest): Promise<GetDataItemResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.getDataItem(r)\n return parseDates(response.data)\n })\n }\n\n async insertDataItem(\n r: InsertDataItemRequest\n ): Promise<InsertDataItemResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.insertDataItem(r)\n return parseDates(response.data)\n })\n }\n\n async saveDataItem(r: SaveDataItemRequest): Promise<SaveDataItemResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.saveDataItem(r)\n return parseDates(response.data)\n })\n }\n\n async updateDataItem(\n r: UpdateDataItemRequest\n ): Promise<UpdateDataItemResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.updateDataItem(r)\n return parseDates(response.data)\n })\n }\n\n async patchDataItem(r: PatchDataItemRequest): Promise<PatchDataItemResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.patchDataItem(r)\n return parseDates(response.data)\n })\n }\n\n async bulkPatchDataItems(\n r: BulkPatchDataItemsRequest\n ): Promise<BulkPatchDataItemsResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.bulkPatchDataItems(r)\n return parseDates(response.data)\n })\n }\n\n async removeDataItem(\n r: RemoveDataItemRequest\n ): Promise<RemoveDataItemResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.removeDataItem(r)\n return parseDates(response.data)\n })\n }\n\n async countDataItems(\n r: CountDataItemsRequest\n ): Promise<CountDataItemsResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.countDataItems(r)\n return parseDates(response.data)\n })\n }\n\n async queryDistinctValues(\n r: QueryDistinctValuesRequest\n ): Promise<QueryDistinctValuesResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.queryDistinctValues(r)\n return parseDates(response.data)\n })\n }\n\n async queryDataItems(\n r: QueryDataItemsRequest\n ): Promise<QueryDataItemsResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.queryDataItems(r)\n return parseDates(response.data)\n })\n }\n\n async aggregateDataItems(\n r: AggregateDataItemsRequest\n ): Promise<AggregateDataItemsResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.aggregateDataItems(r)\n return parseDates(response.data)\n })\n }\n\n async aggregatePipelineDataItems(\n r: AggregatePipelineDataItemsRequest\n ): Promise<AggregatePipelineDataItemsResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.aggregatePipelineDataItems(r)\n return parseDates(response.data)\n })\n }\n\n async bulkInsertDataItems(\n r: BulkInsertDataItemsRequest\n ): Promise<BulkInsertDataItemsResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.bulkInsertDataItems(r)\n return parseDates(response.data)\n })\n }\n\n async bulkUpdateDataItems(\n r: BulkUpdateDataItemsRequest\n ): Promise<BulkUpdateDataItemsResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.bulkUpdateDataItems(r)\n return parseDates(response.data)\n })\n }\n\n async bulkSaveDataItems(\n r: BulkSaveDataItemsRequest\n ): Promise<BulkSaveDataItemsResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.bulkSaveDataItems(r)\n return parseDates(response.data)\n })\n }\n\n async bulkRemoveDataItems(\n r: BulkRemoveDataItemsRequest\n ): Promise<BulkRemoveDataItemsResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.bulkRemoveDataItems(r)\n return parseDates(response.data)\n })\n }\n\n async queryReferencedDataItems(\n r: QueryReferencedDataItemsRequest\n ): Promise<QueryReferencedDataItemsResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.queryReferencedDataItems(r)\n return parseDates(response.data)\n })\n }\n\n async bulkInsertDataItemReferences(\n r: BulkInsertDataItemReferencesRequest\n ): Promise<BulkInsertDataItemReferencesResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.bulkInsertDataItemReferences(r)\n return parseDates(response.data)\n })\n }\n\n async replaceDataItemReferences(\n r: ReplaceDataItemReferencesRequest\n ): Promise<ReplaceDataItemReferencesResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.replaceDataItemReferences(r)\n return parseDates(response.data)\n })\n }\n\n async bulkRemoveDataItemReferences(\n r: BulkRemoveDataItemReferencesRequest\n ): Promise<BulkRemoveDataItemReferencesResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.bulkRemoveDataItemReferences(r)\n return parseDates(response.data)\n })\n }\n\n async isReferencedDataItem(\n r: IsReferencedDataItemRequest\n ): Promise<IsReferencedDataItemResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.isReferencedDataItem(r)\n return parseDates(response.data)\n })\n }\n\n async truncateDataItems(\n r: TruncateDataItemsRequest\n ): Promise<TruncateDataItemsResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.truncateDataItems(r)\n return parseDates(response.data)\n })\n }\n\n async searchDataItems(\n r: SearchDataItemsRequest\n ): Promise<SearchDataItemsResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.searchDataItems(r)\n return parseDates(response.data)\n })\n }\n\n private async withErrorHandling<T>(call: () => T): Promise<T> {\n try {\n return await call()\n } catch (error: unknown) {\n if (isHttpError(error)) {\n if (error.response?.status === 413) {\n throw wixDataError(messages.payloadIsTooLarge(), 'WDE0109')\n }\n const parsedError = parseError(error.response?.data)\n if (parsedError) {\n throw parsedError\n }\n }\n throw wixDataError(\n messages.internalError('Unknown error.'),\n codes.UnknownError\n )\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_utils","require","_errors","_errors2","SUPPORTS_GET_METHOD","apiRequestInterceptor","allowGet","request","preferGet","methodFqn","data","serializeDates","url","base64url","length","method","undefined","ApiClient","constructor","clientFactory","_defineProperty2","default","httpApiClient","getDataItem","r","withErrorHandling","response","parseDates","insertDataItem","saveDataItem","updateDataItem","patchDataItem","bulkPatchDataItems","removeDataItem","countDataItems","queryDistinctValues","queryDataItems","aggregateDataItems","aggregatePipelineDataItems","bulkInsertDataItems","bulkUpdateDataItems","bulkSaveDataItems","bulkRemoveDataItems","queryReferencedDataItems","bulkInsertDataItemReferences","replaceDataItemReferences","bulkRemoveDataItemReferences","isReferencedDataItem","truncateDataItems","searchDataItems","call","error","isHttpError","_error$response","_error$response2","status","wixDataError","messages","payloadIsTooLarge","parsedError","parseError","internalError","codes","UnknownError","exports"],"sources":["../../../src/api/ApiClient.ts"],"sourcesContent":["import type {\n HttpApiClient,\n RequestInterceptor,\n Request,\n HttpApiClientFactory,\n} from '../types/api'\nimport {\n decode as parseDates,\n encode as serializeDates,\n base64url,\n} from '../utils'\nimport { messages, wixDataError, codes } from '../errors'\n\nimport { isHttpError, parseError } from './errors'\nimport {\n AggregateDataItemsRequest,\n AggregateDataItemsResponse,\n AggregatePipelineDataItemsRequest,\n AggregatePipelineDataItemsResponse,\n BulkInsertDataItemReferencesRequest,\n BulkInsertDataItemReferencesResponse,\n BulkInsertDataItemsRequest,\n BulkInsertDataItemsResponse,\n BulkPatchDataItemsRequest,\n BulkPatchDataItemsResponse,\n BulkRemoveDataItemReferencesRequest,\n BulkRemoveDataItemReferencesResponse,\n BulkRemoveDataItemsRequest,\n BulkRemoveDataItemsResponse,\n BulkSaveDataItemsRequest,\n BulkSaveDataItemsResponse,\n BulkUpdateDataItemsRequest,\n BulkUpdateDataItemsResponse,\n CountDataItemsRequest,\n CountDataItemsResponse,\n GetDataItemRequest,\n GetDataItemResponse,\n InsertDataItemRequest,\n InsertDataItemResponse,\n IsReferencedDataItemRequest,\n IsReferencedDataItemResponse,\n PatchDataItemRequest,\n PatchDataItemResponse,\n QueryDataItemsRequest,\n QueryDataItemsResponse,\n QueryDistinctValuesRequest,\n QueryDistinctValuesResponse,\n QueryReferencedDataItemsRequest,\n QueryReferencedDataItemsResponse,\n RemoveDataItemRequest,\n RemoveDataItemResponse,\n ReplaceDataItemReferencesRequest,\n ReplaceDataItemReferencesResponse,\n SaveDataItemRequest,\n SaveDataItemResponse,\n TruncateDataItemsRequest,\n TruncateDataItemsResponse,\n UpdateDataItemRequest,\n UpdateDataItemResponse,\n SearchDataItemsRequest,\n SearchDataItemsResponse,\n} from '../types/data-item-types'\n\nconst SUPPORTS_GET_METHOD: Record<string, boolean> = {\n 'com.wixpress.cloud.data.api.data.DataItemService.QueryDataItems': true,\n}\n\nexport function apiRequestInterceptor<R extends Request>(\n allowGet: boolean\n): RequestInterceptor<R> {\n return (request) => {\n const preferGet = allowGet && SUPPORTS_GET_METHOD[request.methodFqn ?? '']\n const data = serializeDates(request.data)\n if (preferGet) {\n // https://github.com/wix-private/server-infra/tree/master/framework/grpc/rest#complex-requests-messages-with-get-mappings\n const url = `${request.url}?.r=${base64url(data)}`\n if (url.length <= 2048) {\n return {\n ...request,\n method: 'GET',\n url,\n data: undefined,\n }\n }\n }\n return { ...request, data }\n }\n}\n\nexport class ApiClient {\n private httpApiClient: HttpApiClient\n\n constructor(clientFactory: HttpApiClientFactory<any>, allowGet: boolean) {\n this.httpApiClient = clientFactory(apiRequestInterceptor(allowGet))\n }\n\n async getDataItem(r: GetDataItemRequest): Promise<GetDataItemResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.getDataItem(r)\n return parseDates(response.data)\n })\n }\n\n async insertDataItem(\n r: InsertDataItemRequest\n ): Promise<InsertDataItemResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.insertDataItem(r)\n return parseDates(response.data)\n })\n }\n\n async saveDataItem(r: SaveDataItemRequest): Promise<SaveDataItemResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.saveDataItem(r)\n return parseDates(response.data)\n })\n }\n\n async updateDataItem(\n r: UpdateDataItemRequest\n ): Promise<UpdateDataItemResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.updateDataItem(r)\n return parseDates(response.data)\n })\n }\n\n async patchDataItem(r: PatchDataItemRequest): Promise<PatchDataItemResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.patchDataItem(r)\n return parseDates(response.data)\n })\n }\n\n async bulkPatchDataItems(\n r: BulkPatchDataItemsRequest\n ): Promise<BulkPatchDataItemsResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.bulkPatchDataItems(r)\n return parseDates(response.data)\n })\n }\n\n async removeDataItem(\n r: RemoveDataItemRequest\n ): Promise<RemoveDataItemResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.removeDataItem(r)\n return parseDates(response.data)\n })\n }\n\n async countDataItems(\n r: CountDataItemsRequest\n ): Promise<CountDataItemsResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.countDataItems(r)\n return parseDates(response.data)\n })\n }\n\n async queryDistinctValues(\n r: QueryDistinctValuesRequest\n ): Promise<QueryDistinctValuesResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.queryDistinctValues(r)\n return parseDates(response.data)\n })\n }\n\n async queryDataItems(\n r: QueryDataItemsRequest\n ): Promise<QueryDataItemsResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.queryDataItems(r)\n return parseDates(response.data)\n })\n }\n\n async aggregateDataItems(\n r: AggregateDataItemsRequest\n ): Promise<AggregateDataItemsResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.aggregateDataItems(r)\n return parseDates(response.data)\n })\n }\n\n async aggregatePipelineDataItems(\n r: AggregatePipelineDataItemsRequest\n ): Promise<AggregatePipelineDataItemsResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.aggregatePipelineDataItems(r)\n return parseDates(response.data)\n })\n }\n\n async bulkInsertDataItems(\n r: BulkInsertDataItemsRequest\n ): Promise<BulkInsertDataItemsResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.bulkInsertDataItems(r)\n return parseDates(response.data)\n })\n }\n\n async bulkUpdateDataItems(\n r: BulkUpdateDataItemsRequest\n ): Promise<BulkUpdateDataItemsResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.bulkUpdateDataItems(r)\n return parseDates(response.data)\n })\n }\n\n async bulkSaveDataItems(\n r: BulkSaveDataItemsRequest\n ): Promise<BulkSaveDataItemsResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.bulkSaveDataItems(r)\n return parseDates(response.data)\n })\n }\n\n async bulkRemoveDataItems(\n r: BulkRemoveDataItemsRequest\n ): Promise<BulkRemoveDataItemsResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.bulkRemoveDataItems(r)\n return parseDates(response.data)\n })\n }\n\n async queryReferencedDataItems(\n r: QueryReferencedDataItemsRequest\n ): Promise<QueryReferencedDataItemsResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.queryReferencedDataItems(r)\n return parseDates(response.data)\n })\n }\n\n async bulkInsertDataItemReferences(\n r: BulkInsertDataItemReferencesRequest\n ): Promise<BulkInsertDataItemReferencesResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.bulkInsertDataItemReferences(r)\n return parseDates(response.data)\n })\n }\n\n async replaceDataItemReferences(\n r: ReplaceDataItemReferencesRequest\n ): Promise<ReplaceDataItemReferencesResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.replaceDataItemReferences(r)\n return parseDates(response.data)\n })\n }\n\n async bulkRemoveDataItemReferences(\n r: BulkRemoveDataItemReferencesRequest\n ): Promise<BulkRemoveDataItemReferencesResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.bulkRemoveDataItemReferences(r)\n return parseDates(response.data)\n })\n }\n\n async isReferencedDataItem(\n r: IsReferencedDataItemRequest\n ): Promise<IsReferencedDataItemResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.isReferencedDataItem(r)\n return parseDates(response.data)\n })\n }\n\n async truncateDataItems(\n r: TruncateDataItemsRequest\n ): Promise<TruncateDataItemsResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.truncateDataItems(r)\n return parseDates(response.data)\n })\n }\n\n async searchDataItems(\n r: SearchDataItemsRequest\n ): Promise<SearchDataItemsResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.searchDataItems(r)\n return parseDates(response.data)\n })\n }\n\n private async withErrorHandling<T>(call: () => T): Promise<T> {\n try {\n return await call()\n } catch (error: unknown) {\n if (isHttpError(error)) {\n if (error.response?.status === 413) {\n throw wixDataError(messages.payloadIsTooLarge(), 'WDE0109')\n }\n const parsedError = parseError(error.response?.data)\n if (parsedError) {\n throw parsedError\n }\n }\n throw wixDataError(\n messages.internalError('Unknown error.'),\n codes.UnknownError,\n null,\n error\n )\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -239,97 +239,6 @@ class WixDataApi {
|
|
|
239
239
|
}
|
|
240
240
|
});
|
|
241
241
|
});
|
|
242
|
-
// --- query, count, distinct ---
|
|
243
|
-
(0, _defineProperty2.default)(this, "query", collectionName => {
|
|
244
|
-
const ensureValidQuery = invalidArgs => {
|
|
245
|
-
if (invalidArgs.length > 0) {
|
|
246
|
-
throw (0, _errors.wdeValidationError)(_errors.messages.queryValidations.queryInvalid(collectionName, invalidArgs));
|
|
247
|
-
}
|
|
248
|
-
};
|
|
249
|
-
return new _WixDataQueryImpl.WixDataQueryImpl({
|
|
250
|
-
collectionName,
|
|
251
|
-
onCount: async (args, params, options) => {
|
|
252
|
-
ensureValidQuery([...params.invalidArguments, ...apiValidator().collectionName(collectionName).arity('count', args, 0, 1).options(options).validateAndReturn()]);
|
|
253
|
-
return this.trace('count', {
|
|
254
|
-
collectionName
|
|
255
|
-
})(async env => {
|
|
256
|
-
const {
|
|
257
|
-
totalCount
|
|
258
|
-
} = await this.client.countDataItems({
|
|
259
|
-
...env,
|
|
260
|
-
dataCollectionId: collectionName,
|
|
261
|
-
filter: params.filterTree,
|
|
262
|
-
...toReadOptions(options)
|
|
263
|
-
});
|
|
264
|
-
return totalCount;
|
|
265
|
-
});
|
|
266
|
-
},
|
|
267
|
-
onDistinct: async (args, params, field, options) => {
|
|
268
|
-
var _toSort$find;
|
|
269
|
-
ensureValidQuery([...params.invalidArguments, ...apiValidator().collectionName(collectionName).arity('distinct', args, 1, 2).fieldName(field).options(options).validateAndReturn()]);
|
|
270
|
-
const order = (_toSort$find = toSort(params.orderBy).find(o => o.fieldName === field)) == null ? void 0 : _toSort$find.order;
|
|
271
|
-
const fetch = (cursorOrOffset, returnTotalCount) => this.trace('distinct', {
|
|
272
|
-
collectionName,
|
|
273
|
-
field
|
|
274
|
-
})(async env => {
|
|
275
|
-
const {
|
|
276
|
-
distinctValues,
|
|
277
|
-
pagingMetadata
|
|
278
|
-
} = await this.client.queryDistinctValues({
|
|
279
|
-
...env,
|
|
280
|
-
dataCollectionId: collectionName,
|
|
281
|
-
...toReadOptions(options),
|
|
282
|
-
...toPaging(params.limitNumber, cursorOrOffset),
|
|
283
|
-
...(isOffset(cursorOrOffset) ? {
|
|
284
|
-
fieldName: field,
|
|
285
|
-
filter: params.filterTree,
|
|
286
|
-
order,
|
|
287
|
-
returnTotalCount
|
|
288
|
-
} : {})
|
|
289
|
-
});
|
|
290
|
-
return [distinctValues, pagingMetadata];
|
|
291
|
-
});
|
|
292
|
-
const [items, paging] = await fetch(params.skipNumber, options == null ? void 0 : options.returnTotalCount);
|
|
293
|
-
return new _WixDataResultImpl.WixDataResultImpl(items, paging, fetch, params);
|
|
294
|
-
},
|
|
295
|
-
onFind: async (args, params, options) => {
|
|
296
|
-
ensureValidQuery([...params.invalidArguments, ...apiValidator().collectionName(collectionName).arity('find', args, 0, 1).options(options).validateAndReturn()]);
|
|
297
|
-
const fetch = (cursorOrOffset, returnTotalCount) => this.trace('query', {
|
|
298
|
-
collectionName
|
|
299
|
-
})(async env => {
|
|
300
|
-
const {
|
|
301
|
-
dataItems,
|
|
302
|
-
pagingMetadata
|
|
303
|
-
} = await this.client.queryDataItems({
|
|
304
|
-
...env,
|
|
305
|
-
dataCollectionId: collectionName,
|
|
306
|
-
query: {
|
|
307
|
-
fields: params.projectedFields,
|
|
308
|
-
...toPaging(params.limitNumber, cursorOrOffset),
|
|
309
|
-
...(isOffset(cursorOrOffset) ? {
|
|
310
|
-
filter: params.filterTree,
|
|
311
|
-
sort: toSort(params.orderBy)
|
|
312
|
-
} : {})
|
|
313
|
-
},
|
|
314
|
-
referencedItemOptions: params.included,
|
|
315
|
-
...toReadOptions(options),
|
|
316
|
-
...(isOffset(cursorOrOffset) ? {
|
|
317
|
-
returnTotalCount
|
|
318
|
-
} : {}),
|
|
319
|
-
...(params.randomSortOptions ? {
|
|
320
|
-
sortMode: apiTypes.SortMode.RANDOM,
|
|
321
|
-
randomOptions: {
|
|
322
|
-
seed: params.randomSortOptions.seed
|
|
323
|
-
}
|
|
324
|
-
} : {})
|
|
325
|
-
});
|
|
326
|
-
return [dataItems.map(toDataItem), pagingMetadata];
|
|
327
|
-
});
|
|
328
|
-
const [items, paging] = await fetch(params.skipNumber, options == null ? void 0 : options.returnTotalCount);
|
|
329
|
-
return new _WixDataResultImpl.WixDataResultImpl(items, paging, fetch, params);
|
|
330
|
-
}
|
|
331
|
-
});
|
|
332
|
-
});
|
|
333
242
|
(0, _defineProperty2.default)(this, "search", collectionName => {
|
|
334
243
|
const ensureValidQuery = invalidArgs => {
|
|
335
244
|
if (invalidArgs.length > 0) {
|
|
@@ -685,6 +594,163 @@ class WixDataApi {
|
|
|
685
594
|
}
|
|
686
595
|
get filter() {
|
|
687
596
|
return (0, _common.filterBuilder)();
|
|
597
|
+
} // --- query, count, distinct ---
|
|
598
|
+
/**
|
|
599
|
+
* Returns a query builder for the specified collection.
|
|
600
|
+
* @param collectionName - Name of the collection to query.
|
|
601
|
+
* @returns A `WixDataQuery` builder object.
|
|
602
|
+
*/
|
|
603
|
+
/**
|
|
604
|
+
* Executes a query directly without using the builder pattern.
|
|
605
|
+
* @internal
|
|
606
|
+
* @param collectionName - Name of the collection to query.
|
|
607
|
+
* @param queryRequest - Query parameters including filter, sort, paging, and fields.
|
|
608
|
+
* @param options - Additional options including referencedItemOptions.
|
|
609
|
+
* @returns Promise that resolves to the query results.
|
|
610
|
+
*/
|
|
611
|
+
query(collectionName, queryRequest, options) {
|
|
612
|
+
// Direct query execution mode
|
|
613
|
+
if (queryRequest !== undefined) {
|
|
614
|
+
return this.executeDirectQuery(collectionName, queryRequest, options);
|
|
615
|
+
}
|
|
616
|
+
|
|
617
|
+
// Builder mode
|
|
618
|
+
const ensureValidQuery = invalidArgs => {
|
|
619
|
+
if (invalidArgs.length > 0) {
|
|
620
|
+
throw (0, _errors.wdeValidationError)(_errors.messages.queryValidations.queryInvalid(collectionName, invalidArgs));
|
|
621
|
+
}
|
|
622
|
+
};
|
|
623
|
+
return new _WixDataQueryImpl.WixDataQueryImpl({
|
|
624
|
+
collectionName,
|
|
625
|
+
onCount: async (args, params, options) => {
|
|
626
|
+
ensureValidQuery([...params.invalidArguments, ...apiValidator().collectionName(collectionName).arity('count', args, 0, 1).options(options).validateAndReturn()]);
|
|
627
|
+
return this.trace('count', {
|
|
628
|
+
collectionName
|
|
629
|
+
})(async env => {
|
|
630
|
+
const {
|
|
631
|
+
totalCount
|
|
632
|
+
} = await this.client.countDataItems({
|
|
633
|
+
...env,
|
|
634
|
+
dataCollectionId: collectionName,
|
|
635
|
+
filter: params.filterTree,
|
|
636
|
+
...toReadOptions(options)
|
|
637
|
+
});
|
|
638
|
+
return totalCount;
|
|
639
|
+
});
|
|
640
|
+
},
|
|
641
|
+
onDistinct: async (args, params, field, options) => {
|
|
642
|
+
var _toSort$find;
|
|
643
|
+
ensureValidQuery([...params.invalidArguments, ...apiValidator().collectionName(collectionName).arity('distinct', args, 1, 2).fieldName(field).options(options).validateAndReturn()]);
|
|
644
|
+
const order = (_toSort$find = toSort(params.orderBy).find(o => o.fieldName === field)) == null ? void 0 : _toSort$find.order;
|
|
645
|
+
const fetch = (cursorOrOffset, returnTotalCount) => this.trace('distinct', {
|
|
646
|
+
collectionName,
|
|
647
|
+
field
|
|
648
|
+
})(async env => {
|
|
649
|
+
const {
|
|
650
|
+
distinctValues,
|
|
651
|
+
pagingMetadata
|
|
652
|
+
} = await this.client.queryDistinctValues({
|
|
653
|
+
...env,
|
|
654
|
+
dataCollectionId: collectionName,
|
|
655
|
+
...toReadOptions(options),
|
|
656
|
+
...toPaging(params.limitNumber, cursorOrOffset),
|
|
657
|
+
...(isOffset(cursorOrOffset) ? {
|
|
658
|
+
fieldName: field,
|
|
659
|
+
filter: params.filterTree,
|
|
660
|
+
order,
|
|
661
|
+
returnTotalCount
|
|
662
|
+
} : {})
|
|
663
|
+
});
|
|
664
|
+
return [distinctValues, pagingMetadata];
|
|
665
|
+
});
|
|
666
|
+
const [items, paging] = await fetch(params.skipNumber, options == null ? void 0 : options.returnTotalCount);
|
|
667
|
+
return new _WixDataResultImpl.WixDataResultImpl(items, paging, fetch, params);
|
|
668
|
+
},
|
|
669
|
+
onFind: async (args, params, options) => {
|
|
670
|
+
ensureValidQuery([...params.invalidArguments, ...apiValidator().collectionName(collectionName).arity('find', args, 0, 1).options(options).validateAndReturn()]);
|
|
671
|
+
const fetch = (cursorOrOffset, returnTotalCount) => this.trace('query', {
|
|
672
|
+
collectionName
|
|
673
|
+
})(async env => {
|
|
674
|
+
const {
|
|
675
|
+
dataItems,
|
|
676
|
+
pagingMetadata
|
|
677
|
+
} = await this.client.queryDataItems({
|
|
678
|
+
...env,
|
|
679
|
+
dataCollectionId: collectionName,
|
|
680
|
+
query: {
|
|
681
|
+
fields: params.projectedFields,
|
|
682
|
+
...toPaging(params.limitNumber, cursorOrOffset),
|
|
683
|
+
...(isOffset(cursorOrOffset) ? {
|
|
684
|
+
filter: params.filterTree,
|
|
685
|
+
sort: toSort(params.orderBy)
|
|
686
|
+
} : {})
|
|
687
|
+
},
|
|
688
|
+
referencedItemOptions: params.included,
|
|
689
|
+
...toReadOptions(options),
|
|
690
|
+
...(isOffset(cursorOrOffset) ? {
|
|
691
|
+
returnTotalCount
|
|
692
|
+
} : {}),
|
|
693
|
+
...(params.randomSortOptions ? {
|
|
694
|
+
sortMode: apiTypes.SortMode.RANDOM,
|
|
695
|
+
randomOptions: {
|
|
696
|
+
seed: params.randomSortOptions.seed
|
|
697
|
+
}
|
|
698
|
+
} : {})
|
|
699
|
+
});
|
|
700
|
+
return [dataItems.map(toDataItem), pagingMetadata];
|
|
701
|
+
});
|
|
702
|
+
const [items, paging] = await fetch(params.skipNumber, options == null ? void 0 : options.returnTotalCount);
|
|
703
|
+
return new _WixDataResultImpl.WixDataResultImpl(items, paging, fetch, params);
|
|
704
|
+
}
|
|
705
|
+
});
|
|
706
|
+
}
|
|
707
|
+
async executeDirectQuery(collectionName, request, options) {
|
|
708
|
+
var _request$paging, _request$cursorPaging, _request$paging2, _request$cursorPaging2, _options$referencedIt;
|
|
709
|
+
const validationErrors = apiValidator().collectionName(collectionName).options(options).validateAndReturn();
|
|
710
|
+
if (validationErrors.length > 0) {
|
|
711
|
+
throw (0, _errors.wdeValidationError)(_errors.messages.queryValidations.queryInvalid(collectionName, validationErrors));
|
|
712
|
+
}
|
|
713
|
+
const limit = ((_request$paging = request.paging) == null ? void 0 : _request$paging.limit) ?? ((_request$cursorPaging = request.cursorPaging) == null ? void 0 : _request$cursorPaging.limit);
|
|
714
|
+
const offset = ((_request$paging2 = request.paging) == null ? void 0 : _request$paging2.offset) ?? 0;
|
|
715
|
+
const cursor = (_request$cursorPaging2 = request.cursorPaging) == null ? void 0 : _request$cursorPaging2.cursor;
|
|
716
|
+
const sort = (request.sort ?? []).map(s => ({
|
|
717
|
+
[s.fieldName]: s.order === 'DESC' ? 'desc' : 'asc'
|
|
718
|
+
}));
|
|
719
|
+
const referencedItemOptions = options == null || (_options$referencedIt = options.referencedItemOptions) == null ? void 0 : _options$referencedIt.map(inc => ({
|
|
720
|
+
fieldName: inc.fieldName,
|
|
721
|
+
limit: inc.limit
|
|
722
|
+
}));
|
|
723
|
+
const fetch = (cursorOrOffset, returnTotalCount) => this.trace('query', {
|
|
724
|
+
collectionName
|
|
725
|
+
})(async env => {
|
|
726
|
+
const {
|
|
727
|
+
dataItems,
|
|
728
|
+
pagingMetadata
|
|
729
|
+
} = await this.client.queryDataItems({
|
|
730
|
+
...env,
|
|
731
|
+
dataCollectionId: collectionName,
|
|
732
|
+
query: {
|
|
733
|
+
fields: request.fields,
|
|
734
|
+
...toPaging(limit, cursorOrOffset),
|
|
735
|
+
...(isOffset(cursorOrOffset) ? {
|
|
736
|
+
filter: request.filter,
|
|
737
|
+
sort: toSort(sort)
|
|
738
|
+
} : {})
|
|
739
|
+
},
|
|
740
|
+
referencedItemOptions,
|
|
741
|
+
...toReadOptions(options),
|
|
742
|
+
...(isOffset(cursorOrOffset) ? {
|
|
743
|
+
returnTotalCount
|
|
744
|
+
} : {})
|
|
745
|
+
});
|
|
746
|
+
return [dataItems.map(toDataItem), pagingMetadata];
|
|
747
|
+
});
|
|
748
|
+
const [items, paging] = await fetch(cursor ?? offset, options == null ? void 0 : options.returnTotalCount);
|
|
749
|
+
return new _WixDataResultImpl.WixDataResultImpl(items, paging, fetch, {
|
|
750
|
+
collectionName,
|
|
751
|
+
limitNumber: limit,
|
|
752
|
+
skipNumber: offset
|
|
753
|
+
});
|
|
688
754
|
}
|
|
689
755
|
async runBulkSave(env, collectionName, items, options, overrideExisting = true) {
|
|
690
756
|
const request = {
|