@wix/wix-data-items-common 1.0.303 → 1.0.305
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 +18 -0
- package/dist/cjs/api/ApiClient.js.map +1 -1
- package/dist/cjs/api/FieldModification.js +4 -0
- package/dist/cjs/api/FieldModification.js.map +1 -0
- package/dist/cjs/api/WixDataApi.js +193 -42
- package/dist/cjs/api/WixDataApi.js.map +1 -1
- package/dist/cjs/api/WixDataFieldModificationsBuilder.js +51 -0
- package/dist/cjs/api/WixDataFieldModificationsBuilder.js.map +1 -0
- package/dist/cjs/api/WixDataPatch.js.map +1 -1
- package/dist/cjs/api/impl/BaseFieldModificationsBuilder.js +85 -0
- package/dist/cjs/api/impl/BaseFieldModificationsBuilder.js.map +1 -0
- package/dist/cjs/api/impl/WixDataPatchImpl.js +36 -79
- package/dist/cjs/api/impl/WixDataPatchImpl.js.map +1 -1
- package/dist/cjs/api/index.js +19 -3
- package/dist/cjs/api/index.js.map +1 -1
- package/dist/cjs/api/types.js.map +1 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/api.js.map +1 -1
- package/dist/cjs/types/data-item-types.js +9 -1
- package/dist/cjs/types/data-item-types.js.map +1 -1
- package/dist/esm/api/ApiClient.js +18 -0
- package/dist/esm/api/ApiClient.js.map +1 -1
- package/dist/esm/api/FieldModification.js +2 -0
- package/dist/esm/api/FieldModification.js.map +1 -0
- package/dist/esm/api/WixDataApi.js +141 -38
- package/dist/esm/api/WixDataApi.js.map +1 -1
- package/dist/esm/api/WixDataFieldModificationsBuilder.js +38 -0
- package/dist/esm/api/WixDataFieldModificationsBuilder.js.map +1 -0
- package/dist/esm/api/impl/BaseFieldModificationsBuilder.js +87 -0
- package/dist/esm/api/impl/BaseFieldModificationsBuilder.js.map +1 -0
- package/dist/esm/api/impl/WixDataPatchImpl.js +32 -86
- package/dist/esm/api/impl/WixDataPatchImpl.js.map +1 -1
- package/dist/esm/api/index.js +1 -0
- package/dist/esm/api/index.js.map +1 -1
- package/dist/esm/types/data-item-types.js +8 -0
- package/dist/esm/types/data-item-types.js.map +1 -1
- package/dist/types/api/ApiClient.d.ts +4 -1
- package/dist/types/api/ApiClient.d.ts.map +1 -1
- package/dist/types/api/FieldModification.d.ts +41 -0
- package/dist/types/api/FieldModification.d.ts.map +1 -0
- package/dist/types/api/WixDataApi.d.ts +36 -4
- package/dist/types/api/WixDataApi.d.ts.map +1 -1
- package/dist/types/api/WixDataFieldModificationsBuilder.d.ts +88 -0
- package/dist/types/api/WixDataFieldModificationsBuilder.d.ts.map +1 -0
- package/dist/types/api/WixDataPatch.d.ts +25 -109
- package/dist/types/api/WixDataPatch.d.ts.map +1 -1
- package/dist/types/api/impl/BaseFieldModificationsBuilder.d.ts +21 -0
- package/dist/types/api/impl/BaseFieldModificationsBuilder.d.ts.map +1 -0
- package/dist/types/api/impl/WixDataPatchImpl.d.ts +34 -26
- package/dist/types/api/impl/WixDataPatchImpl.d.ts.map +1 -1
- package/dist/types/api/index.d.ts +4 -2
- package/dist/types/api/index.d.ts.map +1 -1
- package/dist/types/api/types.d.ts +13 -11
- package/dist/types/api/types.d.ts.map +1 -1
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/types/api.d.ts +4 -1
- package/dist/types/types/api.d.ts.map +1 -1
- package/dist/types/types/data-item-types.d.ts +73 -0
- package/dist/types/types/data-item-types.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -74,6 +74,12 @@ class ApiClient {
|
|
|
74
74
|
return (0, _utils.decode)(response.data);
|
|
75
75
|
});
|
|
76
76
|
}
|
|
77
|
+
async asyncPatchDataItemsByFilter(r) {
|
|
78
|
+
return this.withErrorHandling(async () => {
|
|
79
|
+
const response = await this.httpApiClient.asyncPatchDataItemsByFilter(r);
|
|
80
|
+
return (0, _utils.decode)(response.data);
|
|
81
|
+
});
|
|
82
|
+
}
|
|
77
83
|
async removeDataItem(r) {
|
|
78
84
|
return this.withErrorHandling(async () => {
|
|
79
85
|
const response = await this.httpApiClient.removeDataItem(r);
|
|
@@ -134,6 +140,18 @@ class ApiClient {
|
|
|
134
140
|
return (0, _utils.decode)(response.data);
|
|
135
141
|
});
|
|
136
142
|
}
|
|
143
|
+
async asyncRemoveDataItemsByFilter(r) {
|
|
144
|
+
return this.withErrorHandling(async () => {
|
|
145
|
+
const response = await this.httpApiClient.asyncRemoveDataItemsByFilter(r);
|
|
146
|
+
return (0, _utils.decode)(response.data);
|
|
147
|
+
});
|
|
148
|
+
}
|
|
149
|
+
async getAsyncJobStatus(r) {
|
|
150
|
+
return this.withErrorHandling(async () => {
|
|
151
|
+
const response = await this.httpApiClient.getAsyncJobStatus(r);
|
|
152
|
+
return (0, _utils.decode)(response.data);
|
|
153
|
+
});
|
|
154
|
+
}
|
|
137
155
|
async queryReferencedDataItems(r) {
|
|
138
156
|
return this.withErrorHandling(async () => {
|
|
139
157
|
const response = await this.httpApiClient.queryReferencedDataItems(r);
|
|
@@ -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","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 } 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 error\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","asyncPatchDataItemsByFilter","removeDataItem","countDataItems","queryDistinctValues","queryDataItems","aggregateDataItems","aggregatePipelineDataItems","bulkInsertDataItems","bulkUpdateDataItems","bulkSaveDataItems","bulkRemoveDataItems","asyncRemoveDataItemsByFilter","getAsyncJobStatus","queryReferencedDataItems","bulkInsertDataItemReferences","replaceDataItemReferences","bulkRemoveDataItemReferences","isReferencedDataItem","truncateDataItems","searchDataItems","call","error","isHttpError","_error$response","_error$response2","status","wixDataError","messages","payloadIsTooLarge","parsedError","parseError","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 } from '../errors'\n\nimport { isHttpError, parseError } from './errors'\nimport {\n AggregateDataItemsRequest,\n AggregateDataItemsResponse,\n AggregatePipelineDataItemsRequest,\n AggregatePipelineDataItemsResponse,\n AsyncPatchDataItemsByFilterRequest,\n AsyncPatchDataItemsByFilterResponse,\n AsyncRemoveDataItemsByFilterRequest,\n AsyncRemoveDataItemsByFilterResponse,\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 GetAsyncJobStatusRequest,\n GetAsyncJobStatusResponse,\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 asyncPatchDataItemsByFilter(\n r: AsyncPatchDataItemsByFilterRequest\n ): Promise<AsyncPatchDataItemsByFilterResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.asyncPatchDataItemsByFilter(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 asyncRemoveDataItemsByFilter(\n r: AsyncRemoveDataItemsByFilterRequest\n ): Promise<AsyncRemoveDataItemsByFilterResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.asyncRemoveDataItemsByFilter(r)\n return parseDates(response.data)\n })\n }\n\n async getAsyncJobStatus(\n r: GetAsyncJobStatusRequest\n ): Promise<GetAsyncJobStatusResponse> {\n return this.withErrorHandling(async () => {\n const response = await this.httpApiClient.getAsyncJobStatus(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 error\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../src/api/FieldModification.ts"],"sourcesContent":["export interface SetField {\n /**\n * Path of the field ID to be modified. Nested fields can be specified using dot notation.\n */\n fieldPath: string\n action: 'SET_FIELD'\n value: any\n}\n\nexport interface RemoveField {\n /**\n * Path of the field ID to be modified. Nested fields can be specified using dot notation.\n */\n fieldPath: string\n action: 'REMOVE_FIELD'\n}\n\nexport interface IncrementField {\n /**\n * Path of the field ID to be modified. Nested fields can be specified using dot notation.\n */\n fieldPath: string\n action: 'INCREMENT_FIELD'\n value: any\n}\n\nexport interface AppendToArray {\n /**\n * Path of the field ID to be modified. Nested fields can be specified using dot notation.\n */\n fieldPath: string\n action: 'APPEND_TO_ARRAY'\n value: any\n}\n\nexport interface RemoveFromArray {\n /**\n * Path of the field ID to be modified. Nested fields can be specified using dot notation.\n */\n fieldPath: string\n action: 'REMOVE_FROM_ARRAY'\n value: any\n}\n\nexport type FieldModification =\n | SetField\n | RemoveField\n | IncrementField\n | AppendToArray\n | RemoveFromArray\n"],"mappings":"","ignoreList":[]}
|
|
@@ -35,6 +35,22 @@ function createFilter(filter) {
|
|
|
35
35
|
}
|
|
36
36
|
return {};
|
|
37
37
|
}
|
|
38
|
+
function createExplicitFilter(filter) {
|
|
39
|
+
if (filter == null) {
|
|
40
|
+
throw (0, _errors.wdeValidationError)(_errors.messages.filterMustBeAnObject());
|
|
41
|
+
}
|
|
42
|
+
const anyFilter = filter;
|
|
43
|
+
if (typeof anyFilter.getFilterModel === 'function') {
|
|
44
|
+
return anyFilter.getFilterModel() ?? {};
|
|
45
|
+
}
|
|
46
|
+
if (anyFilter.filterTree != null) {
|
|
47
|
+
return anyFilter.filterTree;
|
|
48
|
+
}
|
|
49
|
+
if ((0, _utils.isObject)(filter)) {
|
|
50
|
+
return filter;
|
|
51
|
+
}
|
|
52
|
+
throw (0, _errors.wdeValidationError)(_errors.messages.filterMustBeAnObject());
|
|
53
|
+
}
|
|
38
54
|
class WixDataApi {
|
|
39
55
|
constructor(clientFactory, allowGet, environment, gridAppId, tracer) {
|
|
40
56
|
this.environment = environment;
|
|
@@ -160,7 +176,7 @@ class WixDataApi {
|
|
|
160
176
|
action: apiTypes.ACTION.SET_FIELD,
|
|
161
177
|
fieldPath: fieldModification.fieldPath,
|
|
162
178
|
setFieldOptions: {
|
|
163
|
-
value: fieldModification.
|
|
179
|
+
value: fieldModification.value
|
|
164
180
|
}
|
|
165
181
|
};
|
|
166
182
|
case 'REMOVE_FIELD':
|
|
@@ -173,7 +189,7 @@ class WixDataApi {
|
|
|
173
189
|
action: apiTypes.ACTION.INCREMENT_FIELD,
|
|
174
190
|
fieldPath: fieldModification.fieldPath,
|
|
175
191
|
incrementFieldOptions: {
|
|
176
|
-
value: fieldModification.
|
|
192
|
+
value: fieldModification.value
|
|
177
193
|
}
|
|
178
194
|
};
|
|
179
195
|
case 'APPEND_TO_ARRAY':
|
|
@@ -181,7 +197,7 @@ class WixDataApi {
|
|
|
181
197
|
action: apiTypes.ACTION.APPEND_TO_ARRAY,
|
|
182
198
|
fieldPath: fieldModification.fieldPath,
|
|
183
199
|
appendToArrayOptions: {
|
|
184
|
-
value: fieldModification.
|
|
200
|
+
value: fieldModification.value
|
|
185
201
|
}
|
|
186
202
|
};
|
|
187
203
|
case 'REMOVE_FROM_ARRAY':
|
|
@@ -189,61 +205,69 @@ class WixDataApi {
|
|
|
189
205
|
action: apiTypes.ACTION.REMOVE_FROM_ARRAY,
|
|
190
206
|
fieldPath: fieldModification.fieldPath,
|
|
191
207
|
removeFromArrayOptions: {
|
|
192
|
-
value: fieldModification.
|
|
208
|
+
value: fieldModification.value
|
|
193
209
|
}
|
|
194
210
|
};
|
|
195
|
-
default:
|
|
196
|
-
throw new Error('Invalid patch action');
|
|
197
211
|
}
|
|
198
212
|
});
|
|
199
|
-
(0, _defineProperty2.default)(this, "
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
itemId,
|
|
203
|
-
onRun: async (_args, patchParams, options) => {
|
|
204
|
-
const fieldModifications = patchParams.fieldModifications.map(this.toFieldModificationApi);
|
|
205
|
-
return this.trace('patch', {
|
|
206
|
-
collectionName
|
|
207
|
-
})(async env => {
|
|
208
|
-
const result = await this.client.patchDataItem({
|
|
209
|
-
...env,
|
|
210
|
-
dataCollectionId: patchParams.collectionName,
|
|
211
|
-
patch: {
|
|
212
|
-
dataItemId: patchParams.itemId,
|
|
213
|
-
fieldModifications
|
|
214
|
-
},
|
|
215
|
-
...toPatchOptions(options)
|
|
216
|
-
});
|
|
217
|
-
return result.dataItem ? toDataItem(result.dataItem) : null;
|
|
218
|
-
});
|
|
219
|
-
}
|
|
220
|
-
});
|
|
221
|
-
});
|
|
222
|
-
(0, _defineProperty2.default)(this, "bulkPatch", (collectionName, itemIds) => {
|
|
223
|
-
return new _WixDataPatchImpl.WixDataBulkPatchImpl({
|
|
213
|
+
(0, _defineProperty2.default)(this, "asyncPatchByFilter", (collectionName, filter) => {
|
|
214
|
+
const apiFilter = createExplicitFilter(filter);
|
|
215
|
+
return new _WixDataPatchImpl.WixDataPatchByFilterImpl({
|
|
224
216
|
collectionName,
|
|
225
|
-
|
|
217
|
+
filter: apiFilter,
|
|
226
218
|
onRun: async (_args, patchParams, options) => {
|
|
227
219
|
const fieldModifications = patchParams.fieldModifications.map(this.toFieldModificationApi);
|
|
228
|
-
return this.trace('
|
|
220
|
+
return this.trace('asyncPatchByFilter', {
|
|
229
221
|
collectionName
|
|
230
222
|
})(async env => {
|
|
231
223
|
const {
|
|
232
|
-
|
|
233
|
-
} = await this.client.
|
|
224
|
+
jobId
|
|
225
|
+
} = await this.client.asyncPatchDataItemsByFilter({
|
|
234
226
|
...env,
|
|
235
227
|
dataCollectionId: patchParams.collectionName,
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
})),
|
|
240
|
-
...toPatchOptions(options)
|
|
228
|
+
filter: patchParams.filter,
|
|
229
|
+
fieldModifications,
|
|
230
|
+
...toAsyncByFilterOptions(options)
|
|
241
231
|
});
|
|
242
|
-
return
|
|
232
|
+
return {
|
|
233
|
+
jobId: jobId
|
|
234
|
+
};
|
|
243
235
|
});
|
|
244
236
|
}
|
|
245
237
|
});
|
|
246
238
|
});
|
|
239
|
+
(0, _defineProperty2.default)(this, "asyncRemoveByFilter", withArgs(async (args, collectionName, filter, options) => {
|
|
240
|
+
await apiValidator().arity('asyncRemoveByFilter', args, 2, 3).collectionName(collectionName).options(options).validateAndReject();
|
|
241
|
+
const apiFilter = createExplicitFilter(filter);
|
|
242
|
+
return this.trace('asyncRemoveByFilter', {
|
|
243
|
+
collectionName
|
|
244
|
+
})(async env => {
|
|
245
|
+
const {
|
|
246
|
+
jobId
|
|
247
|
+
} = await this.client.asyncRemoveDataItemsByFilter({
|
|
248
|
+
...env,
|
|
249
|
+
dataCollectionId: collectionName,
|
|
250
|
+
filter: apiFilter,
|
|
251
|
+
...toAsyncByFilterOptions(options)
|
|
252
|
+
});
|
|
253
|
+
return {
|
|
254
|
+
jobId: jobId
|
|
255
|
+
};
|
|
256
|
+
});
|
|
257
|
+
}));
|
|
258
|
+
(0, _defineProperty2.default)(this, "getAsyncJobStatus", withArgs(async (args, jobId) => {
|
|
259
|
+
await apiValidator().arity('getAsyncJobStatus', args, 1, 1).isNonEmptyString(jobId, 'jobId').validateAndReject();
|
|
260
|
+
const {
|
|
261
|
+
status,
|
|
262
|
+
successCount
|
|
263
|
+
} = await this.client.getAsyncJobStatus({
|
|
264
|
+
jobId
|
|
265
|
+
});
|
|
266
|
+
return {
|
|
267
|
+
status,
|
|
268
|
+
successCount
|
|
269
|
+
};
|
|
270
|
+
}));
|
|
247
271
|
// NOTE find method is not implemented
|
|
248
272
|
(0, _defineProperty2.default)(this, "fetch", withArgs(async (args, collectionName, cursor, limit, options) => {
|
|
249
273
|
await apiValidator().arity('fetch', args, 2, 4).collectionName(collectionName).isNonEmptyString(cursor, 'cursor').validateAndReject();
|
|
@@ -565,12 +589,132 @@ class WixDataApi {
|
|
|
565
589
|
}
|
|
566
590
|
get filter() {
|
|
567
591
|
return (0, _common.filterBuilder)();
|
|
568
|
-
}
|
|
592
|
+
}
|
|
593
|
+
/**
|
|
594
|
+
* Returns a patch builder for the specified collection and item.
|
|
595
|
+
* @param collectionName - Name of the collection containing the item to patch.
|
|
596
|
+
* @param itemId - ID of the item to patch.
|
|
597
|
+
* @returns A `WixDataPatch` builder object.
|
|
598
|
+
*/
|
|
599
|
+
/**
|
|
600
|
+
* Executes a patch directly without using the builder pattern.
|
|
601
|
+
* @internal
|
|
602
|
+
* @param collectionName - Name of the collection containing the item to patch.
|
|
603
|
+
* @param itemId - ID of the item to patch.
|
|
604
|
+
* @param fieldModifications - Field modifications to apply to the item.
|
|
605
|
+
* @param options - Additional options for the patch operation.
|
|
606
|
+
* @returns Promise that resolves to the patched item, or `null` if no item was returned.
|
|
607
|
+
*/
|
|
608
|
+
patch(collectionName, itemId, fieldModifications, options) {
|
|
609
|
+
if (arguments.length >= 3) {
|
|
610
|
+
return this.executeDirectPatch(collectionName, itemId, fieldModifications, options);
|
|
611
|
+
}
|
|
612
|
+
return new _WixDataPatchImpl.WixDataPatchImpl({
|
|
613
|
+
collectionName,
|
|
614
|
+
itemId,
|
|
615
|
+
onRun: async (_args, patchParams, options) => {
|
|
616
|
+
const fieldModifications = patchParams.fieldModifications.map(this.toFieldModificationApi);
|
|
617
|
+
return this.trace('patch', {
|
|
618
|
+
collectionName
|
|
619
|
+
})(async env => {
|
|
620
|
+
const result = await this.client.patchDataItem({
|
|
621
|
+
...env,
|
|
622
|
+
dataCollectionId: patchParams.collectionName,
|
|
623
|
+
patch: {
|
|
624
|
+
dataItemId: patchParams.itemId,
|
|
625
|
+
fieldModifications
|
|
626
|
+
},
|
|
627
|
+
...toPatchOptions(options)
|
|
628
|
+
});
|
|
629
|
+
return result.dataItem ? toDataItem(result.dataItem) : null;
|
|
630
|
+
});
|
|
631
|
+
}
|
|
632
|
+
});
|
|
633
|
+
}
|
|
634
|
+
async executeDirectPatch(collectionName, itemId, fieldModifications, options) {
|
|
635
|
+
const apiFieldModifications = fieldModifications == null ? void 0 : fieldModifications.map(this.toFieldModificationApi);
|
|
636
|
+
return this.trace('patch', {
|
|
637
|
+
collectionName
|
|
638
|
+
})(async env => {
|
|
639
|
+
const result = await this.client.patchDataItem({
|
|
640
|
+
...env,
|
|
641
|
+
dataCollectionId: collectionName,
|
|
642
|
+
patch: {
|
|
643
|
+
dataItemId: itemId,
|
|
644
|
+
fieldModifications: apiFieldModifications
|
|
645
|
+
},
|
|
646
|
+
...toPatchOptions(options)
|
|
647
|
+
});
|
|
648
|
+
return result.dataItem ? toDataItem(result.dataItem) : null;
|
|
649
|
+
});
|
|
650
|
+
}
|
|
651
|
+
|
|
652
|
+
/**
|
|
653
|
+
* Executes a bulk patch directly without using the builder pattern.
|
|
654
|
+
* @internal
|
|
655
|
+
* @param collectionName - Name of the collection containing the items to patch.
|
|
656
|
+
* @param itemIds - IDs of the items to patch.
|
|
657
|
+
* @param fieldModifications - Field modifications to apply to the items.
|
|
658
|
+
* @param options - Additional options for the bulk patch operation.
|
|
659
|
+
* @returns Promise that resolves to bulk operation results.
|
|
660
|
+
*/
|
|
661
|
+
|
|
662
|
+
bulkPatch(collectionName, itemIds, fieldModifications, options) {
|
|
663
|
+
if (arguments.length >= 3) {
|
|
664
|
+
return this.executeDirectBulkPatch(collectionName, itemIds, fieldModifications, options);
|
|
665
|
+
}
|
|
666
|
+
return new _WixDataPatchImpl.WixDataBulkPatchImpl({
|
|
667
|
+
collectionName,
|
|
668
|
+
itemIds,
|
|
669
|
+
onRun: async (_args, patchParams, options) => {
|
|
670
|
+
const fieldModifications = patchParams.fieldModifications.map(this.toFieldModificationApi);
|
|
671
|
+
return this.trace('bulkPatch', {
|
|
672
|
+
collectionName
|
|
673
|
+
})(async env => {
|
|
674
|
+
const {
|
|
675
|
+
results
|
|
676
|
+
} = await this.client.bulkPatchDataItems({
|
|
677
|
+
...env,
|
|
678
|
+
dataCollectionId: patchParams.collectionName,
|
|
679
|
+
patches: patchParams.itemIds.map(itemId => ({
|
|
680
|
+
dataItemId: itemId,
|
|
681
|
+
fieldModifications
|
|
682
|
+
})),
|
|
683
|
+
...toPatchOptions(options)
|
|
684
|
+
});
|
|
685
|
+
return toBulkResult(itemIds, results, ['WDE0073']);
|
|
686
|
+
});
|
|
687
|
+
}
|
|
688
|
+
});
|
|
689
|
+
}
|
|
690
|
+
async executeDirectBulkPatch(collectionName, itemIds, fieldModifications, options) {
|
|
691
|
+
const apiFieldModifications = fieldModifications == null ? void 0 : fieldModifications.map(this.toFieldModificationApi);
|
|
692
|
+
return this.trace('bulkPatch', {
|
|
693
|
+
collectionName
|
|
694
|
+
})(async env => {
|
|
695
|
+
const {
|
|
696
|
+
results
|
|
697
|
+
} = await this.client.bulkPatchDataItems({
|
|
698
|
+
...env,
|
|
699
|
+
dataCollectionId: collectionName,
|
|
700
|
+
patches: itemIds.map(itemId => ({
|
|
701
|
+
dataItemId: itemId,
|
|
702
|
+
fieldModifications: apiFieldModifications
|
|
703
|
+
})),
|
|
704
|
+
...toPatchOptions(options)
|
|
705
|
+
});
|
|
706
|
+
return toBulkResult(itemIds, results, ['WDE0073']);
|
|
707
|
+
});
|
|
708
|
+
}
|
|
709
|
+
|
|
710
|
+
// --- query, count, distinct ---
|
|
711
|
+
|
|
569
712
|
/**
|
|
570
713
|
* Returns a query builder for the specified collection.
|
|
571
714
|
* @param collectionName - Name of the collection to query.
|
|
572
715
|
* @returns A `WixDataQuery` builder object.
|
|
573
716
|
*/
|
|
717
|
+
|
|
574
718
|
/**
|
|
575
719
|
* Executes a query directly without using the builder pattern.
|
|
576
720
|
* @internal
|
|
@@ -579,6 +723,7 @@ class WixDataApi {
|
|
|
579
723
|
* @param options - Additional options including includeReferences.
|
|
580
724
|
* @returns Promise that resolves to the query results.
|
|
581
725
|
*/
|
|
726
|
+
|
|
582
727
|
query(collectionName, queryRequest, options) {
|
|
583
728
|
// Direct query execution mode
|
|
584
729
|
if (queryRequest !== undefined) {
|
|
@@ -944,6 +1089,12 @@ function toPatchOptions(options) {
|
|
|
944
1089
|
...conditionOptions(options == null ? void 0 : options.condition)
|
|
945
1090
|
};
|
|
946
1091
|
}
|
|
1092
|
+
function toAsyncByFilterOptions(options) {
|
|
1093
|
+
return {
|
|
1094
|
+
suppressHooks: options == null ? void 0 : options.suppressHooks,
|
|
1095
|
+
...draftsOptions(options == null ? void 0 : options.showDrafts)
|
|
1096
|
+
};
|
|
1097
|
+
}
|
|
947
1098
|
function toInsertOptions(options) {
|
|
948
1099
|
return {
|
|
949
1100
|
...toOptions(options),
|