Skip to content

Commit b50d582

Browse files
committed
docs: Fix legal hold policy docs (box/box-openapi#1554) (box/box-openapi#590)
1 parent 8a95036 commit b50d582

7 files changed

Lines changed: 212 additions & 175 deletions

File tree

.codegen.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{ "engineHash": "7c01dda", "specHash": "2bd751f", "version": "10.5.0" }
1+
{ "engineHash": "7c01dda", "specHash": "74a1e4a", "version": "10.5.0" }

docs/trashedItems.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ attributes that are not returned by default.
1414
This endpoint defaults to use offset-based pagination, yet also supports
1515
marker-based pagination using the `marker` parameter.
1616

17+
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`.
18+
1719
This operation is performed by calling function `getTrashedItems`.
1820

1921
See the endpoint docs at

package-lock.json

Lines changed: 133 additions & 133 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/managers/trashedItems.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,8 @@ export class TrashedItemsManager {
126126
*
127127
* This endpoint defaults to use offset-based pagination, yet also supports
128128
* marker-based pagination using the `marker` parameter.
129+
*
130+
* 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`.
129131
* @param {GetTrashedItemsQueryParams} queryParams Query parameters of getTrashedItems method
130132
* @param {GetTrashedItemsHeadersInput} headersInput Headers of getTrashedItems method
131133
* @param {CancellationToken} cancellationToken Token used for request cancellation.

src/schemas/index.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,7 @@ export * from './integrationMappingSlackOptions';
9595
export * from './integrationMappingSlackCreateRequest';
9696
export * from './keywordSkillCard';
9797
export * from './legalHoldPolicyMini';
98+
export * from './legalHoldPolicyAssignedItem';
9899
export * from './legalHoldPolicyAssignmentBase';
99100
export * from './metadataBase';
100101
export * from './metadata';
@@ -208,6 +209,10 @@ export * from './retentionPolicyAssignment';
208209
export * from './retentionPolicyAssignments';
209210
export * from './retentionPolicy';
210211
export * from './retentionPolicies';
212+
export * from './legalHoldPolicyAssignment';
213+
export * from './legalHoldPolicyAssignments';
214+
export * from './fileVersionLegalHold';
215+
export * from './fileVersionLegalHolds';
211216
export * from './legalHoldPolicy';
212217
export * from './legalHoldPolicies';
213218
export * from './invite';
@@ -261,11 +266,6 @@ export * from './item';
261266
export * from './itemsOffsetPaginated';
262267
export * from './items';
263268
export * from './folder';
264-
export * from './legalHoldPolicyAssignedItem';
265-
export * from './legalHoldPolicyAssignment';
266-
export * from './legalHoldPolicyAssignments';
267-
export * from './fileVersionLegalHold';
268-
export * from './fileVersionLegalHolds';
269269
export * from './folderFull';
270270
export * from './searchResultWithSharedLinkItem';
271271
export * from './searchResultWithSharedLink';
Lines changed: 69 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,3 @@
1-
import { serializeFile } from './file';
2-
import { deserializeFile } from './file';
3-
import { serializeFolder } from './folder';
4-
import { deserializeFolder } from './folder';
5-
import { serializeWebLink } from './webLink';
6-
import { deserializeWebLink } from './webLink';
7-
import { File } from './file';
8-
import { Folder } from './folder';
9-
import { WebLink } from './webLink';
101
import { BoxSdkError } from '../box/errors';
112
import { SerializedData } from '../serialization/json';
123
import { sdIsEmpty } from '../serialization/json';
@@ -15,18 +6,59 @@ import { sdIsNumber } from '../serialization/json';
156
import { sdIsString } from '../serialization/json';
167
import { sdIsList } from '../serialization/json';
178
import { sdIsMap } from '../serialization/json';
18-
export type LegalHoldPolicyAssignedItem = File | Folder | WebLink;
19-
export function serializeLegalHoldPolicyAssignedItem(val: any): SerializedData {
20-
if (val.type == 'file') {
21-
return serializeFile(val);
9+
export type LegalHoldPolicyAssignedItemTypeField =
10+
| 'file'
11+
| 'file_version'
12+
| 'folder'
13+
| 'user'
14+
| 'ownership'
15+
| 'interactions';
16+
export interface LegalHoldPolicyAssignedItem {
17+
/**
18+
* The type of item the policy is assigned to. */
19+
readonly type: LegalHoldPolicyAssignedItemTypeField;
20+
/**
21+
* The ID of the item the policy is assigned to. */
22+
readonly id: string;
23+
readonly rawData?: SerializedData;
24+
}
25+
export function serializeLegalHoldPolicyAssignedItemTypeField(
26+
val: LegalHoldPolicyAssignedItemTypeField,
27+
): SerializedData {
28+
return val;
29+
}
30+
export function deserializeLegalHoldPolicyAssignedItemTypeField(
31+
val: SerializedData,
32+
): LegalHoldPolicyAssignedItemTypeField {
33+
if (val == 'file') {
34+
return val;
35+
}
36+
if (val == 'file_version') {
37+
return val;
38+
}
39+
if (val == 'folder') {
40+
return val;
2241
}
23-
if (val.type == 'folder') {
24-
return serializeFolder(val);
42+
if (val == 'user') {
43+
return val;
2544
}
26-
if (val.type == 'web_link') {
27-
return serializeWebLink(val);
45+
if (val == 'ownership') {
46+
return val;
2847
}
29-
throw new BoxSdkError({ message: 'unknown type' });
48+
if (val == 'interactions') {
49+
return val;
50+
}
51+
throw new BoxSdkError({
52+
message: "Can't deserialize LegalHoldPolicyAssignedItemTypeField",
53+
});
54+
}
55+
export function serializeLegalHoldPolicyAssignedItem(
56+
val: LegalHoldPolicyAssignedItem,
57+
): SerializedData {
58+
return {
59+
['type']: serializeLegalHoldPolicyAssignedItemTypeField(val.type),
60+
['id']: val.id,
61+
};
3062
}
3163
export function deserializeLegalHoldPolicyAssignedItem(
3264
val: SerializedData,
@@ -36,16 +68,26 @@ export function deserializeLegalHoldPolicyAssignedItem(
3668
message: 'Expecting a map for "LegalHoldPolicyAssignedItem"',
3769
});
3870
}
39-
if (val.type == 'file') {
40-
return deserializeFile(val);
71+
if (val.type == void 0) {
72+
throw new BoxSdkError({
73+
message:
74+
'Expecting "type" of type "LegalHoldPolicyAssignedItem" to be defined',
75+
});
4176
}
42-
if (val.type == 'folder') {
43-
return deserializeFolder(val);
77+
const type: LegalHoldPolicyAssignedItemTypeField =
78+
deserializeLegalHoldPolicyAssignedItemTypeField(val.type);
79+
if (val.id == void 0) {
80+
throw new BoxSdkError({
81+
message:
82+
'Expecting "id" of type "LegalHoldPolicyAssignedItem" to be defined',
83+
});
4484
}
45-
if (val.type == 'web_link') {
46-
return deserializeWebLink(val);
85+
if (!sdIsString(val.id)) {
86+
throw new BoxSdkError({
87+
message:
88+
'Expecting string for "id" of type "LegalHoldPolicyAssignedItem"',
89+
});
4790
}
48-
throw new BoxSdkError({
49-
message: "Can't deserialize LegalHoldPolicyAssignedItem",
50-
});
91+
const id: string = val.id;
92+
return { type: type, id: id } satisfies LegalHoldPolicyAssignedItem;
5193
}

src/schemas/legalHoldPolicyAssignment.ts

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,5 @@
11
import { serializeLegalHoldPolicyAssignmentBaseTypeField } from './legalHoldPolicyAssignmentBase';
22
import { deserializeLegalHoldPolicyAssignmentBaseTypeField } from './legalHoldPolicyAssignmentBase';
3-
import { serializeFile } from './file';
4-
import { deserializeFile } from './file';
5-
import { serializeFolder } from './folder';
6-
import { deserializeFolder } from './folder';
7-
import { serializeWebLink } from './webLink';
8-
import { deserializeWebLink } from './webLink';
93
import { serializeLegalHoldPolicyAssignmentBase } from './legalHoldPolicyAssignmentBase';
104
import { deserializeLegalHoldPolicyAssignmentBase } from './legalHoldPolicyAssignmentBase';
115
import { serializeLegalHoldPolicyMini } from './legalHoldPolicyMini';
@@ -17,9 +11,6 @@ import { deserializeUserMini } from './userMini';
1711
import { serializeDateTime } from '../internal/utils';
1812
import { deserializeDateTime } from '../internal/utils';
1913
import { LegalHoldPolicyAssignmentBaseTypeField } from './legalHoldPolicyAssignmentBase';
20-
import { File } from './file';
21-
import { Folder } from './folder';
22-
import { WebLink } from './webLink';
2314
import { LegalHoldPolicyAssignmentBase } from './legalHoldPolicyAssignmentBase';
2415
import { LegalHoldPolicyMini } from './legalHoldPolicyMini';
2516
import { LegalHoldPolicyAssignedItem } from './legalHoldPolicyAssignedItem';

0 commit comments

Comments
 (0)