diff --git a/.codegen.json b/.codegen.json index bdafad515..15ee8f95f 100644 --- a/.codegen.json +++ b/.codegen.json @@ -1 +1 @@ -{ "engineHash": "7c01dda", "specHash": "2bd751f", "version": "4.5.0" } +{ "engineHash": "7c01dda", "specHash": "74a1e4a", "version": "4.5.0" } diff --git a/docs/sdk-gen/trashedItems.md b/docs/sdk-gen/trashedItems.md index bfc38809d..affac7041 100644 --- a/docs/sdk-gen/trashedItems.md +++ b/docs/sdk-gen/trashedItems.md @@ -13,7 +13,9 @@ in with the `fields` parameter to retrieve those specific attributes that are not returned by default. This endpoint defaults to use offset-based pagination, yet also supports -marker-based pagination using the `marker` parameter. +marker-based pagination using the `marker` parameter. + +The number of entries returned may be less than `total_count`. For example, if a user deletes items from a shared folder and is later removed as a collaborator, those deleted items will no longer appear in this endpoint’s results, even though they are still included in `total_count`. This operation is performed by calling function `getTrashedItems`. diff --git a/src/sdk-gen/managers/trashedItems.ts b/src/sdk-gen/managers/trashedItems.ts index 3e0abfc6f..8603bc81c 100644 --- a/src/sdk-gen/managers/trashedItems.ts +++ b/src/sdk-gen/managers/trashedItems.ts @@ -126,6 +126,8 @@ export class TrashedItemsManager { * * This endpoint defaults to use offset-based pagination, yet also supports * marker-based pagination using the `marker` parameter. + * + * The number of entries returned may be less than `total_count`. For example, if a user deletes items from a shared folder and is later removed as a collaborator, those deleted items will no longer appear in this endpoint’s results, even though they are still included in `total_count`. * @param {GetTrashedItemsQueryParams} queryParams Query parameters of getTrashedItems method * @param {GetTrashedItemsHeadersInput} headersInput Headers of getTrashedItems method * @param {CancellationToken} cancellationToken Token used for request cancellation. diff --git a/src/sdk-gen/schemas/index.ts b/src/sdk-gen/schemas/index.ts index a8847c9cb..3ca7e9645 100644 --- a/src/sdk-gen/schemas/index.ts +++ b/src/sdk-gen/schemas/index.ts @@ -95,6 +95,7 @@ export * from './integrationMappingSlackOptions'; export * from './integrationMappingSlackCreateRequest'; export * from './keywordSkillCard'; export * from './legalHoldPolicyMini'; +export * from './legalHoldPolicyAssignedItem'; export * from './legalHoldPolicyAssignmentBase'; export * from './metadataBase'; export * from './metadata'; @@ -208,6 +209,10 @@ export * from './retentionPolicyAssignment'; export * from './retentionPolicyAssignments'; export * from './retentionPolicy'; export * from './retentionPolicies'; +export * from './legalHoldPolicyAssignment'; +export * from './legalHoldPolicyAssignments'; +export * from './fileVersionLegalHold'; +export * from './fileVersionLegalHolds'; export * from './legalHoldPolicy'; export * from './legalHoldPolicies'; export * from './invite'; @@ -261,11 +266,6 @@ export * from './item'; export * from './itemsOffsetPaginated'; export * from './items'; export * from './folder'; -export * from './legalHoldPolicyAssignedItem'; -export * from './legalHoldPolicyAssignment'; -export * from './legalHoldPolicyAssignments'; -export * from './fileVersionLegalHold'; -export * from './fileVersionLegalHolds'; export * from './folderFull'; export * from './searchResultWithSharedLinkItem'; export * from './searchResultWithSharedLink'; diff --git a/src/sdk-gen/schemas/legalHoldPolicyAssignedItem.ts b/src/sdk-gen/schemas/legalHoldPolicyAssignedItem.ts index 05b6031a3..bf789d72f 100644 --- a/src/sdk-gen/schemas/legalHoldPolicyAssignedItem.ts +++ b/src/sdk-gen/schemas/legalHoldPolicyAssignedItem.ts @@ -1,12 +1,3 @@ -import { serializeFile } from './file'; -import { deserializeFile } from './file'; -import { serializeFolder } from './folder'; -import { deserializeFolder } from './folder'; -import { serializeWebLink } from './webLink'; -import { deserializeWebLink } from './webLink'; -import { File } from './file'; -import { Folder } from './folder'; -import { WebLink } from './webLink'; import { BoxSdkError } from '../box/errors'; import { SerializedData } from '../serialization/json'; import { sdIsEmpty } from '../serialization/json'; @@ -15,18 +6,59 @@ import { sdIsNumber } from '../serialization/json'; import { sdIsString } from '../serialization/json'; import { sdIsList } from '../serialization/json'; import { sdIsMap } from '../serialization/json'; -export type LegalHoldPolicyAssignedItem = File | Folder | WebLink; -export function serializeLegalHoldPolicyAssignedItem(val: any): SerializedData { - if (val.type == 'file') { - return serializeFile(val); +export type LegalHoldPolicyAssignedItemTypeField = + | 'file' + | 'file_version' + | 'folder' + | 'user' + | 'ownership' + | 'interactions'; +export interface LegalHoldPolicyAssignedItem { + /** + * The type of item the policy is assigned to. */ + readonly type: LegalHoldPolicyAssignedItemTypeField; + /** + * The ID of the item the policy is assigned to. */ + readonly id: string; + readonly rawData?: SerializedData; +} +export function serializeLegalHoldPolicyAssignedItemTypeField( + val: LegalHoldPolicyAssignedItemTypeField +): SerializedData { + return val; +} +export function deserializeLegalHoldPolicyAssignedItemTypeField( + val: SerializedData +): LegalHoldPolicyAssignedItemTypeField { + if (val == 'file') { + return val; + } + if (val == 'file_version') { + return val; + } + if (val == 'folder') { + return val; } - if (val.type == 'folder') { - return serializeFolder(val); + if (val == 'user') { + return val; } - if (val.type == 'web_link') { - return serializeWebLink(val); + if (val == 'ownership') { + return val; } - throw new BoxSdkError({ message: 'unknown type' }); + if (val == 'interactions') { + return val; + } + throw new BoxSdkError({ + message: "Can't deserialize LegalHoldPolicyAssignedItemTypeField", + }); +} +export function serializeLegalHoldPolicyAssignedItem( + val: LegalHoldPolicyAssignedItem +): SerializedData { + return { + ['type']: serializeLegalHoldPolicyAssignedItemTypeField(val.type), + ['id']: val.id, + }; } export function deserializeLegalHoldPolicyAssignedItem( val: SerializedData @@ -36,16 +68,26 @@ export function deserializeLegalHoldPolicyAssignedItem( message: 'Expecting a map for "LegalHoldPolicyAssignedItem"', }); } - if (val.type == 'file') { - return deserializeFile(val); + if (val.type == void 0) { + throw new BoxSdkError({ + message: + 'Expecting "type" of type "LegalHoldPolicyAssignedItem" to be defined', + }); } - if (val.type == 'folder') { - return deserializeFolder(val); + const type: LegalHoldPolicyAssignedItemTypeField = + deserializeLegalHoldPolicyAssignedItemTypeField(val.type); + if (val.id == void 0) { + throw new BoxSdkError({ + message: + 'Expecting "id" of type "LegalHoldPolicyAssignedItem" to be defined', + }); } - if (val.type == 'web_link') { - return deserializeWebLink(val); + if (!sdIsString(val.id)) { + throw new BoxSdkError({ + message: + 'Expecting string for "id" of type "LegalHoldPolicyAssignedItem"', + }); } - throw new BoxSdkError({ - message: "Can't deserialize LegalHoldPolicyAssignedItem", - }); + const id: string = val.id; + return { type: type, id: id } satisfies LegalHoldPolicyAssignedItem; } diff --git a/src/sdk-gen/schemas/legalHoldPolicyAssignment.ts b/src/sdk-gen/schemas/legalHoldPolicyAssignment.ts index fb0861d01..7e8c40648 100644 --- a/src/sdk-gen/schemas/legalHoldPolicyAssignment.ts +++ b/src/sdk-gen/schemas/legalHoldPolicyAssignment.ts @@ -1,11 +1,5 @@ import { serializeLegalHoldPolicyAssignmentBaseTypeField } from './legalHoldPolicyAssignmentBase'; import { deserializeLegalHoldPolicyAssignmentBaseTypeField } from './legalHoldPolicyAssignmentBase'; -import { serializeFile } from './file'; -import { deserializeFile } from './file'; -import { serializeFolder } from './folder'; -import { deserializeFolder } from './folder'; -import { serializeWebLink } from './webLink'; -import { deserializeWebLink } from './webLink'; import { serializeLegalHoldPolicyAssignmentBase } from './legalHoldPolicyAssignmentBase'; import { deserializeLegalHoldPolicyAssignmentBase } from './legalHoldPolicyAssignmentBase'; import { serializeLegalHoldPolicyMini } from './legalHoldPolicyMini'; @@ -17,9 +11,6 @@ import { deserializeUserMini } from './userMini'; import { serializeDateTime } from '../internal/utils'; import { deserializeDateTime } from '../internal/utils'; import { LegalHoldPolicyAssignmentBaseTypeField } from './legalHoldPolicyAssignmentBase'; -import { File } from './file'; -import { Folder } from './folder'; -import { WebLink } from './webLink'; import { LegalHoldPolicyAssignmentBase } from './legalHoldPolicyAssignmentBase'; import { LegalHoldPolicyMini } from './legalHoldPolicyMini'; import { LegalHoldPolicyAssignedItem } from './legalHoldPolicyAssignedItem';