• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

box / box-typescript-sdk-gen / 6814673855

09 Nov 2023 04:31PM UTC coverage: 31.432% (+1.3%) from 30.127%
6814673855

Pull #41

github

web-flow
Merge 3aec2106f into 1aa8f5afc
Pull Request #41: codegen output 13ed41f186c7473db272e90659610b17

1501 of 9137 branches covered (0.0%)

Branch coverage included in aggregate %.

492 of 992 new or added lines in 75 files covered. (49.6%)

160 existing lines in 14 files now uncovered.

5124 of 11940 relevant lines covered (42.91%)

27.06 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

46.67
/src/managers/webLinks.generated.ts
1
import { serializeWebLink } from '../schemas.generated.js';
2
import { deserializeWebLink } from '../schemas.generated.js';
70✔
3
import { serializeClientError } from '../schemas.generated.js';
4
import { deserializeClientError } from '../schemas.generated.js';
5
import { WebLink } from '../schemas.generated.js';
6
import { ClientError } from '../schemas.generated.js';
7
import { Authentication } from '../auth.js';
8
import { NetworkSession } from '../network.js';
9
import { prepareParams } from '../utils.js';
70✔
10
import { toString } from '../utils.js';
70✔
11
import { ByteStream } from '../utils.js';
12
import { CancellationToken } from '../utils.js';
13
import { fetch } from '../fetch.js';
70✔
14
import { FetchOptions } from '../fetch.js';
15
import { FetchResponse } from '../fetch.js';
16
import { SerializedData } from '../json.js';
17
import { sdToJson } from '../json.js';
18
import { sdIsEmpty } from '../json.js';
19
import { sdIsBoolean } from '../json.js';
20
import { sdIsNumber } from '../json.js';
21
import { sdIsString } from '../json.js';
70✔
22
import { sdIsList } from '../json.js';
23
import { sdIsMap } from '../json.js';
24
export interface CreateWebLinkRequestBodyArgParentField {
25
  readonly id: string;
26
}
27
export interface CreateWebLinkRequestBodyArg {
28
  readonly url: string;
29
  readonly parent: CreateWebLinkRequestBodyArgParentField;
30
  readonly name?: string;
31
  readonly description?: string;
32
}
33
export class CreateWebLinkHeadersArg {
70✔
34
  readonly extraHeaders?: {
4✔
35
    readonly [key: string]: undefined | string;
36
  } = {};
37
  constructor(
38
    fields:
39
      | Omit<CreateWebLinkHeadersArg, 'extraHeaders'>
40
      | Partial<Pick<CreateWebLinkHeadersArg, 'extraHeaders'>>
41
  ) {
42
    Object.assign(this, fields);
4✔
43
  }
44
}
45
export class GetWebLinkByIdHeadersArg {
70✔
46
  readonly boxapi?: string;
47
  readonly extraHeaders?: {
8✔
48
    readonly [key: string]: undefined | string;
49
  } = {};
50
  constructor(
51
    fields:
52
      | Omit<GetWebLinkByIdHeadersArg, 'extraHeaders'>
53
      | Partial<Pick<GetWebLinkByIdHeadersArg, 'extraHeaders'>>
54
  ) {
55
    Object.assign(this, fields);
8✔
56
  }
57
}
58
export interface UpdateWebLinkByIdRequestBodyArgParentField {
59
  readonly id?: string;
60
}
61
export type UpdateWebLinkByIdRequestBodyArgSharedLinkFieldAccessField =
62
  | 'open'
63
  | 'company'
64
  | 'collaborators';
65
export interface UpdateWebLinkByIdRequestBodyArgSharedLinkField {
66
  readonly access?: UpdateWebLinkByIdRequestBodyArgSharedLinkFieldAccessField;
67
  readonly password?: string;
68
  readonly vanityName?: string;
69
  readonly unsharedAt?: string;
70
}
71
export interface UpdateWebLinkByIdRequestBodyArg {
72
  readonly url?: string;
73
  readonly parent?: UpdateWebLinkByIdRequestBodyArgParentField;
74
  readonly name?: string;
75
  readonly description?: string;
76
  readonly sharedLink?: UpdateWebLinkByIdRequestBodyArgSharedLinkField;
77
}
78
export class UpdateWebLinkByIdHeadersArg {
70✔
79
  readonly extraHeaders?: {
2✔
80
    readonly [key: string]: undefined | string;
81
  } = {};
82
  constructor(
83
    fields:
84
      | Omit<UpdateWebLinkByIdHeadersArg, 'extraHeaders'>
85
      | Partial<Pick<UpdateWebLinkByIdHeadersArg, 'extraHeaders'>>
86
  ) {
87
    Object.assign(this, fields);
2✔
88
  }
89
}
90
export class DeleteWebLinkByIdHeadersArg {
70✔
91
  readonly extraHeaders?: {
6✔
92
    readonly [key: string]: undefined | string;
93
  } = {};
94
  constructor(
95
    fields:
96
      | Omit<DeleteWebLinkByIdHeadersArg, 'extraHeaders'>
97
      | Partial<Pick<DeleteWebLinkByIdHeadersArg, 'extraHeaders'>>
98
  ) {
99
    Object.assign(this, fields);
6✔
100
  }
101
}
102
export class WebLinksManager {
70✔
103
  readonly auth?: Authentication;
104
  readonly networkSession?: NetworkSession;
105
  constructor(
106
    fields: Omit<
107
      WebLinksManager,
108
      | 'createWebLink'
109
      | 'getWebLinkById'
110
      | 'updateWebLinkById'
111
      | 'deleteWebLinkById'
112
    >
113
  ) {
114
    Object.assign(this, fields);
104✔
115
  }
116
  async createWebLink(
117
    requestBody: CreateWebLinkRequestBodyArg,
118
    headers: CreateWebLinkHeadersArg = new CreateWebLinkHeadersArg({}),
4✔
119
    cancellationToken?: CancellationToken
120
  ): Promise<WebLink> {
121
    const headersMap: {
122
      readonly [key: string]: string;
123
    } = prepareParams({ ...{}, ...headers.extraHeaders });
4✔
124
    const response: FetchResponse = (await fetch(
4✔
125
      ''.concat('https://api.box.com/2.0/web_links') as string,
126
      {
127
        method: 'POST',
128
        headers: headersMap,
129
        data: serializeCreateWebLinkRequestBodyArg(requestBody),
130
        contentType: 'application/json',
131
        responseFormat: 'json',
132
        auth: this.auth,
133
        networkSession: this.networkSession,
134
        cancellationToken: cancellationToken,
135
      } satisfies FetchOptions
136
    )) as FetchResponse;
137
    return deserializeWebLink(response.data);
4✔
138
  }
139
  async getWebLinkById(
140
    webLinkId: string,
141
    headers: GetWebLinkByIdHeadersArg = new GetWebLinkByIdHeadersArg({}),
8✔
142
    cancellationToken?: CancellationToken
143
  ): Promise<WebLink> {
144
    const headersMap: {
145
      readonly [key: string]: string;
146
    } = prepareParams({
8✔
147
      ...{ ['boxapi']: toString(headers.boxapi) as string },
148
      ...headers.extraHeaders,
149
    });
150
    const response: FetchResponse = (await fetch(
8✔
151
      ''.concat(
152
        'https://api.box.com/2.0/web_links/',
153
        toString(webLinkId) as string
154
      ) as string,
155
      {
156
        method: 'GET',
157
        headers: headersMap,
158
        responseFormat: 'json',
159
        auth: this.auth,
160
        networkSession: this.networkSession,
161
        cancellationToken: cancellationToken,
162
      } satisfies FetchOptions
163
    )) as FetchResponse;
164
    return deserializeWebLink(response.data);
8✔
165
  }
166
  async updateWebLinkById(
167
    webLinkId: string,
168
    requestBody: UpdateWebLinkByIdRequestBodyArg = {} satisfies UpdateWebLinkByIdRequestBodyArg,
×
169
    headers: UpdateWebLinkByIdHeadersArg = new UpdateWebLinkByIdHeadersArg({}),
2✔
170
    cancellationToken?: CancellationToken
171
  ): Promise<WebLink> {
172
    const headersMap: {
173
      readonly [key: string]: string;
174
    } = prepareParams({ ...{}, ...headers.extraHeaders });
2✔
175
    const response: FetchResponse = (await fetch(
2✔
176
      ''.concat(
177
        'https://api.box.com/2.0/web_links/',
178
        toString(webLinkId) as string
179
      ) as string,
180
      {
181
        method: 'PUT',
182
        headers: headersMap,
183
        data: serializeUpdateWebLinkByIdRequestBodyArg(requestBody),
184
        contentType: 'application/json',
185
        responseFormat: 'json',
186
        auth: this.auth,
187
        networkSession: this.networkSession,
188
        cancellationToken: cancellationToken,
189
      } satisfies FetchOptions
190
    )) as FetchResponse;
191
    return deserializeWebLink(response.data);
2✔
192
  }
193
  async deleteWebLinkById(
194
    webLinkId: string,
195
    headers: DeleteWebLinkByIdHeadersArg = new DeleteWebLinkByIdHeadersArg({}),
6✔
196
    cancellationToken?: CancellationToken
197
  ): Promise<undefined> {
198
    const headersMap: {
199
      readonly [key: string]: string;
200
    } = prepareParams({ ...{}, ...headers.extraHeaders });
6✔
201
    const response: FetchResponse = (await fetch(
6✔
202
      ''.concat(
203
        'https://api.box.com/2.0/web_links/',
204
        toString(webLinkId) as string
205
      ) as string,
206
      {
207
        method: 'DELETE',
208
        headers: headersMap,
209
        responseFormat: void 0,
210
        auth: this.auth,
211
        networkSession: this.networkSession,
212
        cancellationToken: cancellationToken,
213
      } satisfies FetchOptions
214
    )) as FetchResponse;
215
    return void 0;
6✔
216
  }
217
}
218
export function serializeCreateWebLinkRequestBodyArgParentField(
70✔
219
  val: CreateWebLinkRequestBodyArgParentField
220
): SerializedData {
221
  return { ['id']: val.id };
4✔
222
}
223
export function deserializeCreateWebLinkRequestBodyArgParentField(
70✔
224
  val: any
225
): CreateWebLinkRequestBodyArgParentField {
226
  const id: string = val.id;
×
227
  return { id: id } satisfies CreateWebLinkRequestBodyArgParentField;
×
228
}
229
export function serializeCreateWebLinkRequestBodyArg(
70✔
230
  val: CreateWebLinkRequestBodyArg
231
): SerializedData {
232
  return {
4✔
233
    ['url']: val.url,
234
    ['parent']: serializeCreateWebLinkRequestBodyArgParentField(val.parent),
235
    ['name']: val.name == void 0 ? void 0 : val.name,
4!
236
    ['description']: val.description == void 0 ? void 0 : val.description,
4!
237
  };
238
}
239
export function deserializeCreateWebLinkRequestBodyArg(
70✔
240
  val: any
241
): CreateWebLinkRequestBodyArg {
242
  const url: string = val.url;
×
243
  const parent: CreateWebLinkRequestBodyArgParentField =
244
    deserializeCreateWebLinkRequestBodyArgParentField(val.parent);
×
245
  const name: undefined | string = val.name == void 0 ? void 0 : val.name;
×
246
  const description: undefined | string =
247
    val.description == void 0 ? void 0 : val.description;
×
248
  return {
×
249
    url: url,
250
    parent: parent,
251
    name: name,
252
    description: description,
253
  } satisfies CreateWebLinkRequestBodyArg;
254
}
255
export function serializeUpdateWebLinkByIdRequestBodyArgParentField(
70✔
256
  val: UpdateWebLinkByIdRequestBodyArgParentField
257
): SerializedData {
258
  return { ['id']: val.id == void 0 ? void 0 : val.id };
×
259
}
260
export function deserializeUpdateWebLinkByIdRequestBodyArgParentField(
70✔
261
  val: any
262
): UpdateWebLinkByIdRequestBodyArgParentField {
263
  const id: undefined | string = val.id == void 0 ? void 0 : val.id;
×
264
  return { id: id } satisfies UpdateWebLinkByIdRequestBodyArgParentField;
×
265
}
266
export function serializeUpdateWebLinkByIdRequestBodyArgSharedLinkFieldAccessField(
70✔
267
  val: UpdateWebLinkByIdRequestBodyArgSharedLinkFieldAccessField
268
): SerializedData {
269
  return val;
2✔
270
}
271
export function deserializeUpdateWebLinkByIdRequestBodyArgSharedLinkFieldAccessField(
70✔
272
  val: any
273
): UpdateWebLinkByIdRequestBodyArgSharedLinkFieldAccessField {
NEW
274
  if (!sdIsString(val)) {
×
275
    throw 'Expecting a string for "UpdateWebLinkByIdRequestBodyArgSharedLinkFieldAccessField"';
×
276
  }
277
  if (val == 'open') {
×
278
    return 'open';
×
279
  }
280
  if (val == 'company') {
×
281
    return 'company';
×
282
  }
283
  if (val == 'collaborators') {
×
284
    return 'collaborators';
×
285
  }
286
  throw ''.concat('Invalid value: ', val) as string;
×
287
}
288
export function serializeUpdateWebLinkByIdRequestBodyArgSharedLinkField(
70✔
289
  val: UpdateWebLinkByIdRequestBodyArgSharedLinkField
290
): SerializedData {
291
  return {
2✔
292
    ['access']:
293
      val.access == void 0
2!
294
        ? void 0
295
        : serializeUpdateWebLinkByIdRequestBodyArgSharedLinkFieldAccessField(
296
            val.access
297
          ),
298
    ['password']: val.password == void 0 ? void 0 : val.password,
2!
299
    ['vanity_name']: val.vanityName == void 0 ? void 0 : val.vanityName,
2!
300
    ['unshared_at']: val.unsharedAt == void 0 ? void 0 : val.unsharedAt,
2!
301
  };
302
}
303
export function deserializeUpdateWebLinkByIdRequestBodyArgSharedLinkField(
70✔
304
  val: any
305
): UpdateWebLinkByIdRequestBodyArgSharedLinkField {
306
  const access:
307
    | undefined
308
    | UpdateWebLinkByIdRequestBodyArgSharedLinkFieldAccessField =
309
    val.access == void 0
×
310
      ? void 0
311
      : deserializeUpdateWebLinkByIdRequestBodyArgSharedLinkFieldAccessField(
312
          val.access
313
        );
314
  const password: undefined | string =
315
    val.password == void 0 ? void 0 : val.password;
×
316
  const vanityName: undefined | string =
317
    val.vanity_name == void 0 ? void 0 : val.vanity_name;
×
318
  const unsharedAt: undefined | string =
319
    val.unshared_at == void 0 ? void 0 : val.unshared_at;
×
320
  return {
×
321
    access: access,
322
    password: password,
323
    vanityName: vanityName,
324
    unsharedAt: unsharedAt,
325
  } satisfies UpdateWebLinkByIdRequestBodyArgSharedLinkField;
326
}
327
export function serializeUpdateWebLinkByIdRequestBodyArg(
70✔
328
  val: UpdateWebLinkByIdRequestBodyArg
329
): SerializedData {
330
  return {
2✔
331
    ['url']: val.url == void 0 ? void 0 : val.url,
2!
332
    ['parent']:
333
      val.parent == void 0
2!
334
        ? void 0
335
        : serializeUpdateWebLinkByIdRequestBodyArgParentField(val.parent),
336
    ['name']: val.name == void 0 ? void 0 : val.name,
2!
337
    ['description']: val.description == void 0 ? void 0 : val.description,
2!
338
    ['shared_link']:
339
      val.sharedLink == void 0
2!
340
        ? void 0
341
        : serializeUpdateWebLinkByIdRequestBodyArgSharedLinkField(
342
            val.sharedLink
343
          ),
344
  };
345
}
346
export function deserializeUpdateWebLinkByIdRequestBodyArg(
70✔
347
  val: any
348
): UpdateWebLinkByIdRequestBodyArg {
349
  const url: undefined | string = val.url == void 0 ? void 0 : val.url;
×
350
  const parent: undefined | UpdateWebLinkByIdRequestBodyArgParentField =
351
    val.parent == void 0
×
352
      ? void 0
353
      : deserializeUpdateWebLinkByIdRequestBodyArgParentField(val.parent);
354
  const name: undefined | string = val.name == void 0 ? void 0 : val.name;
×
355
  const description: undefined | string =
356
    val.description == void 0 ? void 0 : val.description;
×
357
  const sharedLink: undefined | UpdateWebLinkByIdRequestBodyArgSharedLinkField =
358
    val.shared_link == void 0
×
359
      ? void 0
360
      : deserializeUpdateWebLinkByIdRequestBodyArgSharedLinkField(
361
          val.shared_link
362
        );
363
  return {
×
364
    url: url,
365
    parent: parent,
366
    name: name,
367
    description: description,
368
    sharedLink: sharedLink,
369
  } satisfies UpdateWebLinkByIdRequestBodyArg;
370
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc