@api-client/core 0.13.3 → 0.13.4
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/build/src/sdk/FilesSdk.d.ts +9 -9
- package/build/src/sdk/FilesSdk.d.ts.map +1 -1
- package/build/src/sdk/FilesSdk.js +16 -2
- package/build/src/sdk/FilesSdk.js.map +1 -1
- package/build/src/sdk/RouteBuilder.d.ts +2 -3
- package/build/src/sdk/RouteBuilder.d.ts.map +1 -1
- package/build/src/sdk/RouteBuilder.js +3 -4
- package/build/src/sdk/RouteBuilder.js.map +1 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/data/models/example-generator-api.json +9 -9
- package/package.json +1 -1
- package/src/sdk/FilesSdk.ts +25 -17
- package/src/sdk/RouteBuilder.ts +3 -4
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { SdkBase, SdkOptions } from './SdkBase.js';
|
|
2
|
-
import { IUser } from '../models/store/User.js';
|
|
3
|
-
import { FileBreadcrumb, IFile } from '../models/store/File.js';
|
|
2
|
+
import type { IUser } from '../models/store/User.js';
|
|
3
|
+
import type { FileBreadcrumb, IFile } from '../models/store/File.js';
|
|
4
4
|
import { FolderKind, CertificateFileKind, ProjectKind, DomainFileKind } from '../models/kinds.js';
|
|
5
|
-
import { ContextListResult,
|
|
6
|
-
import { PermissionRole } from '../models/store/Permission.js';
|
|
5
|
+
import type { ContextListResult, IBulkOperationResult, ContextListOptions } from '../events/BaseEvents.js';
|
|
6
|
+
import type { PermissionRole } from '../models/store/Permission.js';
|
|
7
7
|
import { type IFolder } from '../models/Folder.js';
|
|
8
8
|
import type { AccessPatchInfo, MediaPatchInfo, MediaPatchRevision, PatchInfo } from '../patch/types.js';
|
|
9
9
|
export interface IMetaCreateOptions {
|
|
@@ -49,7 +49,7 @@ export declare class FilesSdk extends SdkBase {
|
|
|
49
49
|
* @param request Optional request details
|
|
50
50
|
* @returns The id of the created file meta.
|
|
51
51
|
*/
|
|
52
|
-
create(meta: IFile, contents: unknown, organization: string, opts?: IFileCreateOptions, request?: SdkOptions): Promise<
|
|
52
|
+
create(meta: IFile, contents: unknown, organization: string, opts?: IFileCreateOptions, request?: SdkOptions): Promise<IFile>;
|
|
53
53
|
/**
|
|
54
54
|
* Creates a file in the store.
|
|
55
55
|
*
|
|
@@ -58,7 +58,7 @@ export declare class FilesSdk extends SdkBase {
|
|
|
58
58
|
* @param request Optional request options.
|
|
59
59
|
* @returns The key of the creates file.
|
|
60
60
|
*/
|
|
61
|
-
createMeta(file: IFile, organization: string, opts?: IMetaCreateOptions, request?: SdkOptions): Promise<
|
|
61
|
+
createMeta(file: IFile, organization: string, opts?: IMetaCreateOptions, request?: SdkOptions): Promise<IFile>;
|
|
62
62
|
/**
|
|
63
63
|
* Creates a file contents (the media) after the file meta was created.
|
|
64
64
|
*
|
|
@@ -123,7 +123,7 @@ export declare class FilesSdk extends SdkBase {
|
|
|
123
123
|
* @param info The patch operation on the file's ACL
|
|
124
124
|
* @param request Optional request options.
|
|
125
125
|
*/
|
|
126
|
-
patchUsers(oid: string, fid: string, info: AccessPatchInfo, request?: SdkOptions): Promise<
|
|
126
|
+
patchUsers(oid: string, fid: string, info: AccessPatchInfo, request?: SdkOptions): Promise<IFile>;
|
|
127
127
|
/**
|
|
128
128
|
* A shorthand method to add access to the file to a single user.
|
|
129
129
|
*
|
|
@@ -133,7 +133,7 @@ export declare class FilesSdk extends SdkBase {
|
|
|
133
133
|
* @param role The user role to grant
|
|
134
134
|
* @param expires Optionally, when the permission expires.
|
|
135
135
|
*/
|
|
136
|
-
addUser(organization: string, key: string, otherUserKey: string, role: PermissionRole, expires?: number, request?: SdkOptions): Promise<
|
|
136
|
+
addUser(organization: string, key: string, otherUserKey: string, role: PermissionRole, expires?: number, request?: SdkOptions): Promise<IFile>;
|
|
137
137
|
/**
|
|
138
138
|
* A shorthand method to remove access to the organization to a single user.
|
|
139
139
|
*
|
|
@@ -141,7 +141,7 @@ export declare class FilesSdk extends SdkBase {
|
|
|
141
141
|
* @param key The file key
|
|
142
142
|
* @param otherUserKey The key of the user that gets access to the organization
|
|
143
143
|
*/
|
|
144
|
-
removeUser(organization: string, key: string, otherUserKey: string, request?: SdkOptions): Promise<
|
|
144
|
+
removeUser(organization: string, key: string, otherUserKey: string, request?: SdkOptions): Promise<IFile>;
|
|
145
145
|
/**
|
|
146
146
|
* Lists uses having access to the file.
|
|
147
147
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilesSdk.d.ts","sourceRoot":"","sources":["../../../src/sdk/FilesSdk.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EAKP,UAAU,EACX,MAAM,cAAc,CAAA;AAErB,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAA;
|
|
1
|
+
{"version":3,"file":"FilesSdk.d.ts","sourceRoot":"","sources":["../../../src/sdk/FilesSdk.ts"],"names":[],"mappings":"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"}
|
|
@@ -382,15 +382,29 @@ export class FilesSdk extends SdkBase {
|
|
|
382
382
|
*/
|
|
383
383
|
async patchUsers(oid, fid, info, request = {}) {
|
|
384
384
|
const { token } = request;
|
|
385
|
-
const url = this.sdk.getUrl(RouteBuilder.
|
|
385
|
+
const url = this.sdk.getUrl(RouteBuilder.filesAccess(oid, fid));
|
|
386
386
|
const body = JSON.stringify(info);
|
|
387
387
|
const result = await this.sdk.http.patch(url.toString(), { token, body });
|
|
388
388
|
this.inspectCommonStatusCodes(result);
|
|
389
389
|
const E_PREFIX = 'Unable to patch the file. ';
|
|
390
|
-
if (result.status !==
|
|
390
|
+
if (result.status !== 200) {
|
|
391
391
|
this.logInvalidResponse(result);
|
|
392
392
|
throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body);
|
|
393
393
|
}
|
|
394
|
+
if (!result.body) {
|
|
395
|
+
throw new Exception(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`, { code: 'E_RESPONSE_NO_VALUE', status: result.status });
|
|
396
|
+
}
|
|
397
|
+
let data;
|
|
398
|
+
try {
|
|
399
|
+
data = JSON.parse(result.body);
|
|
400
|
+
}
|
|
401
|
+
catch {
|
|
402
|
+
throw new Exception(`${E_PREFIX}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: result.status });
|
|
403
|
+
}
|
|
404
|
+
if (!data.key) {
|
|
405
|
+
throw new Exception(`${E_PREFIX}${E_RESPONSE_UNKNOWN}`, { code: 'E_RESPONSE_UNKNOWN', status: result.status });
|
|
406
|
+
}
|
|
407
|
+
return data;
|
|
394
408
|
}
|
|
395
409
|
/**
|
|
396
410
|
* A shorthand method to add access to the file to a single user.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilesSdk.js","sourceRoot":"","sources":["../../../src/sdk/FilesSdk.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n SdkBase,\n E_RESPONSE_STATUS,\n E_RESPONSE_NO_VALUE,\n E_INVALID_JSON,\n E_RESPONSE_UNKNOWN,\n SdkOptions,\n} from './SdkBase.js'\nimport { RouteBuilder } from './RouteBuilder.js'\nimport { IUser } from '../models/store/User.js'\nimport { FileBreadcrumb, IFile } from '../models/store/File.js'\nimport { FolderKind, CertificateFileKind, ProjectKind, DomainFileKind } from '../models/kinds.js'\nimport {\n ContextListResult,\n ContextChangeRecord,\n IBulkOperationResult,\n ContextListOptions,\n} from '../events/BaseEvents.js'\nimport { IAccessAddOperation, IAccessRemoveOperation, PermissionRole } from '../models/store/Permission.js'\nimport { nanoid } from 'nanoid'\nimport { Folder, type IFolder } from '../models/Folder.js'\nimport type { AccessPatchInfo, MediaPatchInfo, MediaPatchRevision, PatchInfo } from '../patch/types.js'\nimport { Exception } from '../exceptions/exception.js'\n\nexport interface IMetaCreateOptions {\n /**\n * Optional parent file id.\n * When set it creates a file under this parent.\n */\n parent?: string\n}\n\nexport interface IMediaCreateOptions {\n /**\n * Optional contents mime type.\n * Default to `application/json`.\n */\n mime?: string\n}\n\nexport interface IFileCreateOptions extends IMetaCreateOptions, IMediaCreateOptions {}\n\nexport type ListFileKind = typeof ProjectKind | typeof FolderKind | typeof DomainFileKind | typeof CertificateFileKind\n\n/**\n * In the store, the file is represented by the meta and the media.\n *\n * The meta is used to represent the file in the UI when listing files\n * or presenting their metadata (like name, last modified, etc).\n * The media is the actual contents of the file and is only used by application specializing in this file modification.\n */\nexport class FilesSdk extends SdkBase {\n /**\n * Lists files (organizations, projects, etc) in the store.\n *\n * @param organization the parent organization for files.\n * @param kinds Optional list of kinds to limit the file types in the result. organizations are always included.\n * @param options Optional query options.\n * @param request Optional request options.\n */\n async list(\n organization: string,\n options: ContextListOptions = {},\n request: SdkOptions = {}\n ): Promise<ContextListResult<IFile>> {\n const { token } = request\n const opts = { ...options }\n const url = this.sdk.getUrl(RouteBuilder.files(organization))\n this.sdk.appendListOptions(url, opts)\n const result = await this.sdk.http.get(url.toString(), { token })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to list files. '\n if (result.status !== 200) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n if (!result.body) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`, { code: 'E_RESPONSE_NO_VALUE', status: result.status })\n }\n let data: ContextListResult<IFile>\n try {\n data = JSON.parse(result.body)\n } catch {\n throw new Exception(`${E_PREFIX}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: result.status })\n }\n if (!Array.isArray(data.items)) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_UNKNOWN}`, { code: 'E_RESPONSE_UNKNOWN', status: result.status })\n }\n return data\n }\n\n /**\n * Creates both the meta and the media for a file.\n *\n * @param meta The file meta\n * @param contents The file contents\n * @param opts Meta and media create options.\n * @param request Optional request details\n * @returns The id of the created file meta.\n */\n async create(\n meta: IFile,\n contents: unknown,\n organization: string,\n opts: IFileCreateOptions = {},\n request: SdkOptions = {}\n ): Promise<ContextChangeRecord<IFile>> {\n const result = await this.createMeta(meta, organization, opts, request)\n await this.createMedia(contents, organization, result.key, opts, request)\n return result\n }\n\n /**\n * Creates a file in the store.\n *\n * @param file The definition of a file that extends the IFile interface.\n * @param opts Optional options when creating a file\n * @param request Optional request options.\n * @returns The key of the creates file.\n */\n async createMeta(\n file: IFile,\n organization: string,\n opts: IMetaCreateOptions = {},\n request: SdkOptions = {}\n ): Promise<ContextChangeRecord<IFile>> {\n const { token } = request\n const url = this.sdk.getUrl(RouteBuilder.files(organization))\n if (opts.parent) {\n url.searchParams.set('parent', opts.parent)\n }\n const body = JSON.stringify(file)\n const result = await this.sdk.http.post(url.toString(), {\n token,\n body,\n headers: {\n 'content-type': 'application/json',\n },\n })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to create a file. '\n if (result.status !== 201) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n\n if (!result.body) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`, { code: 'E_RESPONSE_NO_VALUE', status: result.status })\n }\n let data: ContextChangeRecord<IFile>\n try {\n data = JSON.parse(result.body)\n } catch {\n throw new Exception(`${E_PREFIX}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: result.status })\n }\n if (!data.key) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_UNKNOWN}`, { code: 'E_RESPONSE_UNKNOWN', status: result.status })\n }\n return data\n }\n\n /**\n * Creates a file contents (the media) after the file meta was created.\n *\n * @param contents The file contents to upload to the server.\n * @param key The created file meta key.\n * @param opts Contents create options. You can define content's mime type here.\n * @param request Optional request.\n */\n async createMedia(\n contents: unknown,\n organization: string,\n key: string,\n opts: IMediaCreateOptions = {},\n request: SdkOptions = {}\n ): Promise<void> {\n const { token } = request\n const path = RouteBuilder.fileMedia(organization, key)\n const url = this.sdk.getUrl(path)\n const mime = opts.mime || 'application/json'\n let body: string\n if (mime.includes('json')) {\n body = JSON.stringify(contents)\n } else {\n body = String(contents)\n }\n const result = await this.sdk.http.put(url.toString(), {\n token,\n body,\n headers: {\n 'content-type': mime,\n },\n })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to create a file. '\n if (result.status !== 200) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n }\n\n async createFolder(\n name: string,\n organization: string,\n opts: IMetaCreateOptions = {},\n request: SdkOptions = {}\n ): Promise<IFolder> {\n const file = Folder.fromName(name, organization)\n const { token } = request\n const url = this.sdk.getUrl(RouteBuilder.files(organization))\n if (opts.parent) {\n url.searchParams.set('parent', opts.parent)\n }\n const body = JSON.stringify(file)\n const result = await this.sdk.http.post(url.toString(), {\n token,\n body,\n headers: {\n 'content-type': 'application/json',\n },\n })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to create a file. '\n if (result.status !== 201) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n\n if (!result.body) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`, { code: 'E_RESPONSE_NO_VALUE', status: result.status })\n }\n let data: IFolder\n try {\n data = JSON.parse(result.body)\n } catch {\n throw new Exception(`${E_PREFIX}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: result.status })\n }\n if (!data.key) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_UNKNOWN}`, { code: 'E_RESPONSE_UNKNOWN', status: result.status })\n }\n return data\n }\n\n /**\n * Reads a file from the store.\n *\n * @param oid Organization ID.\n * @param fid The file key\n * @param request Optional request options.\n */\n async read(oid: string, fid: string, request: SdkOptions = {}): Promise<IFile> {\n const { token } = request\n const url = this.sdk.getUrl(RouteBuilder.file(oid, fid))\n const result = await this.sdk.http.get(url.toString(), { token })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to read a file. '\n if (result.status !== 200) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n if (!result.body) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`, { code: 'E_RESPONSE_NO_VALUE', status: result.status })\n }\n let data: IFile\n try {\n data = JSON.parse(result.body)\n } catch {\n throw new Exception(`${E_PREFIX}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: result.status })\n }\n if (!data.kind) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_UNKNOWN}`, { code: 'E_RESPONSE_UNKNOWN', status: result.status })\n }\n return data\n }\n\n async readMedia(oid: string, fid: string, request: SdkOptions = {}): Promise<{ media: unknown; version: number }> {\n const { token } = request\n const url = this.sdk.getUrl(RouteBuilder.fileMedia(oid, fid))\n const result = await this.sdk.http.get(url.toString(), { token })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to read a file media. '\n if (result.status !== 200) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n if (!result.body) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`, { code: 'E_RESPONSE_NO_VALUE', status: result.status })\n }\n let data: unknown\n try {\n data = JSON.parse(result.body)\n } catch {\n throw new Exception(`${E_PREFIX}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: result.status })\n }\n const versionStr = result.headers.get('x-version')\n if (!versionStr) {\n throw new Exception(`${E_PREFIX}The file media version was not sent by the server.`, {\n status: result.status,\n code: 'E_RESPONSE_NO_VERSION',\n })\n }\n const version = Number(versionStr)\n if (isNaN(version)) {\n throw new Exception(`${E_PREFIX}The file media version is not a number.`, {\n status: result.status,\n code: 'E_RESPONSE_INVALID_VERSION',\n })\n }\n return {\n media: data,\n version,\n }\n }\n\n /**\n * Reads a number of files in a bulk operation.\n *\n * @param keys The list of keys to read. When the user has no access to the file it returns undefined\n * in that place. It also inserts `undefined` in place of a file that doesn't exist.\n * @param request Optional request options.\n */\n async readBulk(organization: string, keys: string[], request: SdkOptions = {}): Promise<IBulkOperationResult<IFile>> {\n const { token } = request\n const url = this.sdk.getUrl(RouteBuilder.filesBatch(organization))\n const body = JSON.stringify({ ids: keys })\n const result = await this.sdk.http.post(url.toString(), { token, body })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to read files in bulk. '\n if (result.status !== 200) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n if (!result.body) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`, { code: 'E_RESPONSE_NO_VALUE', status: result.status })\n }\n let data: IBulkOperationResult<IFile>\n try {\n data = JSON.parse(result.body)\n } catch {\n throw new Exception(`${E_PREFIX}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: result.status })\n }\n if (!Array.isArray(data.items)) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_UNKNOWN}`, { code: 'E_RESPONSE_UNKNOWN', status: result.status })\n }\n return data\n }\n\n /**\n * Patches a file in the store.\n * @param fid The key of the file to patch\n * @param info The JSON patch to be processed.\n * @param request Optional request options.\n * @returns The updated file object after applying the patch\n */\n async patch(oid: string, fid: string, info: PatchInfo, request: SdkOptions = {}): Promise<IFile> {\n const { token } = request\n const path = RouteBuilder.file(oid, fid)\n const url = this.sdk.getUrl(path)\n const body = JSON.stringify(info)\n const result = await this.sdk.http.patch(url.toString(), { token, body })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to patch a file. '\n if (result.status !== 200) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n if (!result.body) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`, { code: 'E_RESPONSE_NO_VALUE', status: result.status })\n }\n let data: IFile\n try {\n data = JSON.parse(result.body)\n } catch {\n throw new Exception(`${E_PREFIX}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: result.status })\n }\n if (!data.kind) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_UNKNOWN}`, { code: 'E_RESPONSE_UNKNOWN', status: result.status })\n }\n return data\n }\n\n /**\n * Patches file media.\n * @param oid Organization id\n * @param fid File id\n * @param info THe patch to send\n * @param req Optional request\n * @returns The server response.\n */\n async patchMedia(oid: string, fid: string, info: MediaPatchInfo, req: SdkOptions = {}): Promise<MediaPatchRevision> {\n const { token } = req\n const path = RouteBuilder.fileMedia(oid, fid)\n const url = this.sdk.getUrl(path)\n const body = JSON.stringify(info)\n const result = await this.sdk.http.patch(url.toString(), { token, body })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to patch a file contents. '\n if (result.status !== 200) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n if (!result.body) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`, { code: 'E_RESPONSE_NO_VALUE', status: result.status })\n }\n let data: MediaPatchRevision\n try {\n data = JSON.parse(result.body)\n } catch {\n throw new Exception(`${E_PREFIX}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: result.status })\n }\n return data\n }\n\n /**\n * Deletes the file in the store.\n *\n * @param fid The key of the file to delete.\n * @param request Optional request options.\n * @returns The key of the created trash entry.\n */\n async delete(oid: string, fid: string, request: SdkOptions = {}): Promise<void> {\n const { token } = request\n const url = this.sdk.getUrl(RouteBuilder.file(oid, fid))\n const result = await this.sdk.http.delete(url.toString(), { token })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to trash a file. '\n if (result.status !== 204) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n }\n\n async deleteBulk(oid: string, fids: string[], request: SdkOptions = {}): Promise<void> {\n const { token } = request\n const url = this.sdk.getUrl(RouteBuilder.files(oid))\n const result = await this.sdk.http.delete(url.toString(), { token, body: JSON.stringify({ ids: fids }) })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to trash files. '\n if (result.status !== 204) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n }\n\n /**\n * Updates the sharing options of the file.\n *\n * @param oid The parent organization key\n * @param fid The file key\n * @param info The patch operation on the file's ACL\n * @param request Optional request options.\n */\n async patchUsers(oid: string, fid: string, info: AccessPatchInfo, request: SdkOptions = {}): Promise<void> {\n const { token } = request\n const url = this.sdk.getUrl(RouteBuilder.fileUsers(oid, fid))\n const body = JSON.stringify(info)\n const result = await this.sdk.http.patch(url.toString(), { token, body })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to patch the file. '\n if (result.status !== 204) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n }\n\n /**\n * A shorthand method to add access to the file to a single user.\n *\n * @param organization The parent organization key\n * @param key The file key\n * @param otherUserKey The key of the user that gets access to the organization\n * @param role The user role to grant\n * @param expires Optionally, when the permission expires.\n */\n async addUser(\n organization: string,\n key: string,\n otherUserKey: string,\n role: PermissionRole,\n expires?: number,\n request?: SdkOptions\n ): Promise<void> {\n const op: IAccessAddOperation = {\n op: 'add',\n type: 'user',\n value: role,\n id: otherUserKey,\n }\n if (typeof expires === 'number') {\n op.expirationTime = expires\n }\n const patch: AccessPatchInfo = {\n patch: [op],\n id: nanoid(),\n }\n return this.patchUsers(organization, key, patch, request)\n }\n\n /**\n * A shorthand method to remove access to the organization to a single user.\n *\n * @param organization The organization key to share\n * @param key The file key\n * @param otherUserKey The key of the user that gets access to the organization\n */\n async removeUser(organization: string, key: string, otherUserKey: string, request?: SdkOptions): Promise<void> {\n const op: IAccessRemoveOperation = {\n op: 'remove',\n type: 'user',\n id: otherUserKey,\n }\n const patch: AccessPatchInfo = {\n patch: [op],\n id: nanoid(),\n }\n return this.patchUsers(organization, key, patch, request)\n }\n\n /**\n * Lists uses having access to the file.\n *\n * @param key The file key\n * @param request Optional request options.\n */\n async listUsers(organization: string, key: string, request: SdkOptions = {}): Promise<ContextListResult<IUser>> {\n const { token } = request\n const url = this.sdk.getUrl(RouteBuilder.fileUsers(organization, key))\n const result = await this.sdk.http.get(url.toString(), { token })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to list users in the file. '\n if (result.status !== 200) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n if (!result.body) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`, { code: 'E_RESPONSE_NO_VALUE', status: result.status })\n }\n let data: ContextListResult<IUser>\n try {\n data = JSON.parse(result.body)\n } catch {\n throw new Exception(`${E_PREFIX}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: result.status })\n }\n if (!Array.isArray(data.items)) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_UNKNOWN}`, { code: 'E_RESPONSE_UNKNOWN', status: result.status })\n }\n return data\n }\n\n /**\n * Lists breadcrumbs to the file.\n * @param key The lowest file in the hierarchy\n */\n async breadcrumbs(\n organization: string,\n key: string,\n request: SdkOptions = {}\n ): Promise<ContextListResult<FileBreadcrumb>> {\n const { token } = request\n const url = this.sdk.getUrl(RouteBuilder.fileBreadcrumbs(organization, key))\n const result = await this.sdk.http.get(url.toString(), { token })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to read a file. '\n if (result.status !== 200) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n if (!result.body) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`, { code: 'E_RESPONSE_NO_VALUE', status: result.status })\n }\n let data: ContextListResult<FileBreadcrumb>\n try {\n data = JSON.parse(result.body)\n } catch {\n throw new Exception(`${E_PREFIX}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: result.status })\n }\n if (!Array.isArray(data.items)) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_UNKNOWN}`, { code: 'E_RESPONSE_UNKNOWN', status: result.status })\n }\n return data\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"FilesSdk.js","sourceRoot":"","sources":["../../../src/sdk/FilesSdk.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n SdkBase,\n E_RESPONSE_STATUS,\n E_RESPONSE_NO_VALUE,\n E_INVALID_JSON,\n E_RESPONSE_UNKNOWN,\n SdkOptions,\n} from './SdkBase.js'\nimport { RouteBuilder } from './RouteBuilder.js'\nimport type { IUser } from '../models/store/User.js'\nimport type { FileBreadcrumb, IFile } from '../models/store/File.js'\nimport { FolderKind, CertificateFileKind, ProjectKind, DomainFileKind } from '../models/kinds.js'\nimport type { ContextListResult, IBulkOperationResult, ContextListOptions } from '../events/BaseEvents.js'\nimport type { IAccessAddOperation, IAccessRemoveOperation, PermissionRole } from '../models/store/Permission.js'\nimport { nanoid } from 'nanoid'\nimport { Folder, type IFolder } from '../models/Folder.js'\nimport type { AccessPatchInfo, MediaPatchInfo, MediaPatchRevision, PatchInfo } from '../patch/types.js'\nimport { Exception } from '../exceptions/exception.js'\n\nexport interface IMetaCreateOptions {\n /**\n * Optional parent file id.\n * When set it creates a file under this parent.\n */\n parent?: string\n}\n\nexport interface IMediaCreateOptions {\n /**\n * Optional contents mime type.\n * Default to `application/json`.\n */\n mime?: string\n}\n\nexport interface IFileCreateOptions extends IMetaCreateOptions, IMediaCreateOptions {}\n\nexport type ListFileKind = typeof ProjectKind | typeof FolderKind | typeof DomainFileKind | typeof CertificateFileKind\n\n/**\n * In the store, the file is represented by the meta and the media.\n *\n * The meta is used to represent the file in the UI when listing files\n * or presenting their metadata (like name, last modified, etc).\n * The media is the actual contents of the file and is only used by application specializing in this file modification.\n */\nexport class FilesSdk extends SdkBase {\n /**\n * Lists files (organizations, projects, etc) in the store.\n *\n * @param organization the parent organization for files.\n * @param kinds Optional list of kinds to limit the file types in the result. organizations are always included.\n * @param options Optional query options.\n * @param request Optional request options.\n */\n async list(\n organization: string,\n options: ContextListOptions = {},\n request: SdkOptions = {}\n ): Promise<ContextListResult<IFile>> {\n const { token } = request\n const opts = { ...options }\n const url = this.sdk.getUrl(RouteBuilder.files(organization))\n this.sdk.appendListOptions(url, opts)\n const result = await this.sdk.http.get(url.toString(), { token })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to list files. '\n if (result.status !== 200) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n if (!result.body) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`, { code: 'E_RESPONSE_NO_VALUE', status: result.status })\n }\n let data: ContextListResult<IFile>\n try {\n data = JSON.parse(result.body)\n } catch {\n throw new Exception(`${E_PREFIX}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: result.status })\n }\n if (!Array.isArray(data.items)) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_UNKNOWN}`, { code: 'E_RESPONSE_UNKNOWN', status: result.status })\n }\n return data\n }\n\n /**\n * Creates both the meta and the media for a file.\n *\n * @param meta The file meta\n * @param contents The file contents\n * @param opts Meta and media create options.\n * @param request Optional request details\n * @returns The id of the created file meta.\n */\n async create(\n meta: IFile,\n contents: unknown,\n organization: string,\n opts: IFileCreateOptions = {},\n request: SdkOptions = {}\n ): Promise<IFile> {\n const result = await this.createMeta(meta, organization, opts, request)\n await this.createMedia(contents, organization, result.key, opts, request)\n return result\n }\n\n /**\n * Creates a file in the store.\n *\n * @param file The definition of a file that extends the IFile interface.\n * @param opts Optional options when creating a file\n * @param request Optional request options.\n * @returns The key of the creates file.\n */\n async createMeta(\n file: IFile,\n organization: string,\n opts: IMetaCreateOptions = {},\n request: SdkOptions = {}\n ): Promise<IFile> {\n const { token } = request\n const url = this.sdk.getUrl(RouteBuilder.files(organization))\n if (opts.parent) {\n url.searchParams.set('parent', opts.parent)\n }\n const body = JSON.stringify(file)\n const result = await this.sdk.http.post(url.toString(), {\n token,\n body,\n headers: {\n 'content-type': 'application/json',\n },\n })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to create a file. '\n if (result.status !== 201) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n\n if (!result.body) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`, { code: 'E_RESPONSE_NO_VALUE', status: result.status })\n }\n let data: IFile\n try {\n data = JSON.parse(result.body)\n } catch {\n throw new Exception(`${E_PREFIX}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: result.status })\n }\n if (!data.key) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_UNKNOWN}`, { code: 'E_RESPONSE_UNKNOWN', status: result.status })\n }\n return data\n }\n\n /**\n * Creates a file contents (the media) after the file meta was created.\n *\n * @param contents The file contents to upload to the server.\n * @param key The created file meta key.\n * @param opts Contents create options. You can define content's mime type here.\n * @param request Optional request.\n */\n async createMedia(\n contents: unknown,\n organization: string,\n key: string,\n opts: IMediaCreateOptions = {},\n request: SdkOptions = {}\n ): Promise<void> {\n const { token } = request\n const path = RouteBuilder.fileMedia(organization, key)\n const url = this.sdk.getUrl(path)\n const mime = opts.mime || 'application/json'\n let body: string\n if (mime.includes('json')) {\n body = JSON.stringify(contents)\n } else {\n body = String(contents)\n }\n const result = await this.sdk.http.put(url.toString(), {\n token,\n body,\n headers: {\n 'content-type': mime,\n },\n })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to create a file. '\n if (result.status !== 200) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n }\n\n async createFolder(\n name: string,\n organization: string,\n opts: IMetaCreateOptions = {},\n request: SdkOptions = {}\n ): Promise<IFolder> {\n const file = Folder.fromName(name, organization)\n const { token } = request\n const url = this.sdk.getUrl(RouteBuilder.files(organization))\n if (opts.parent) {\n url.searchParams.set('parent', opts.parent)\n }\n const body = JSON.stringify(file)\n const result = await this.sdk.http.post(url.toString(), {\n token,\n body,\n headers: {\n 'content-type': 'application/json',\n },\n })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to create a file. '\n if (result.status !== 201) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n\n if (!result.body) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`, { code: 'E_RESPONSE_NO_VALUE', status: result.status })\n }\n let data: IFolder\n try {\n data = JSON.parse(result.body)\n } catch {\n throw new Exception(`${E_PREFIX}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: result.status })\n }\n if (!data.key) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_UNKNOWN}`, { code: 'E_RESPONSE_UNKNOWN', status: result.status })\n }\n return data\n }\n\n /**\n * Reads a file from the store.\n *\n * @param oid Organization ID.\n * @param fid The file key\n * @param request Optional request options.\n */\n async read(oid: string, fid: string, request: SdkOptions = {}): Promise<IFile> {\n const { token } = request\n const url = this.sdk.getUrl(RouteBuilder.file(oid, fid))\n const result = await this.sdk.http.get(url.toString(), { token })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to read a file. '\n if (result.status !== 200) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n if (!result.body) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`, { code: 'E_RESPONSE_NO_VALUE', status: result.status })\n }\n let data: IFile\n try {\n data = JSON.parse(result.body)\n } catch {\n throw new Exception(`${E_PREFIX}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: result.status })\n }\n if (!data.kind) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_UNKNOWN}`, { code: 'E_RESPONSE_UNKNOWN', status: result.status })\n }\n return data\n }\n\n async readMedia(oid: string, fid: string, request: SdkOptions = {}): Promise<{ media: unknown; version: number }> {\n const { token } = request\n const url = this.sdk.getUrl(RouteBuilder.fileMedia(oid, fid))\n const result = await this.sdk.http.get(url.toString(), { token })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to read a file media. '\n if (result.status !== 200) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n if (!result.body) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`, { code: 'E_RESPONSE_NO_VALUE', status: result.status })\n }\n let data: unknown\n try {\n data = JSON.parse(result.body)\n } catch {\n throw new Exception(`${E_PREFIX}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: result.status })\n }\n const versionStr = result.headers.get('x-version')\n if (!versionStr) {\n throw new Exception(`${E_PREFIX}The file media version was not sent by the server.`, {\n status: result.status,\n code: 'E_RESPONSE_NO_VERSION',\n })\n }\n const version = Number(versionStr)\n if (isNaN(version)) {\n throw new Exception(`${E_PREFIX}The file media version is not a number.`, {\n status: result.status,\n code: 'E_RESPONSE_INVALID_VERSION',\n })\n }\n return {\n media: data,\n version,\n }\n }\n\n /**\n * Reads a number of files in a bulk operation.\n *\n * @param keys The list of keys to read. When the user has no access to the file it returns undefined\n * in that place. It also inserts `undefined` in place of a file that doesn't exist.\n * @param request Optional request options.\n */\n async readBulk(organization: string, keys: string[], request: SdkOptions = {}): Promise<IBulkOperationResult<IFile>> {\n const { token } = request\n const url = this.sdk.getUrl(RouteBuilder.filesBatch(organization))\n const body = JSON.stringify({ ids: keys })\n const result = await this.sdk.http.post(url.toString(), { token, body })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to read files in bulk. '\n if (result.status !== 200) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n if (!result.body) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`, { code: 'E_RESPONSE_NO_VALUE', status: result.status })\n }\n let data: IBulkOperationResult<IFile>\n try {\n data = JSON.parse(result.body)\n } catch {\n throw new Exception(`${E_PREFIX}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: result.status })\n }\n if (!Array.isArray(data.items)) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_UNKNOWN}`, { code: 'E_RESPONSE_UNKNOWN', status: result.status })\n }\n return data\n }\n\n /**\n * Patches a file in the store.\n * @param fid The key of the file to patch\n * @param info The JSON patch to be processed.\n * @param request Optional request options.\n * @returns The updated file object after applying the patch\n */\n async patch(oid: string, fid: string, info: PatchInfo, request: SdkOptions = {}): Promise<IFile> {\n const { token } = request\n const path = RouteBuilder.file(oid, fid)\n const url = this.sdk.getUrl(path)\n const body = JSON.stringify(info)\n const result = await this.sdk.http.patch(url.toString(), { token, body })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to patch a file. '\n if (result.status !== 200) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n if (!result.body) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`, { code: 'E_RESPONSE_NO_VALUE', status: result.status })\n }\n let data: IFile\n try {\n data = JSON.parse(result.body)\n } catch {\n throw new Exception(`${E_PREFIX}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: result.status })\n }\n if (!data.kind) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_UNKNOWN}`, { code: 'E_RESPONSE_UNKNOWN', status: result.status })\n }\n return data\n }\n\n /**\n * Patches file media.\n * @param oid Organization id\n * @param fid File id\n * @param info THe patch to send\n * @param req Optional request\n * @returns The server response.\n */\n async patchMedia(oid: string, fid: string, info: MediaPatchInfo, req: SdkOptions = {}): Promise<MediaPatchRevision> {\n const { token } = req\n const path = RouteBuilder.fileMedia(oid, fid)\n const url = this.sdk.getUrl(path)\n const body = JSON.stringify(info)\n const result = await this.sdk.http.patch(url.toString(), { token, body })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to patch a file contents. '\n if (result.status !== 200) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n if (!result.body) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`, { code: 'E_RESPONSE_NO_VALUE', status: result.status })\n }\n let data: MediaPatchRevision\n try {\n data = JSON.parse(result.body)\n } catch {\n throw new Exception(`${E_PREFIX}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: result.status })\n }\n return data\n }\n\n /**\n * Deletes the file in the store.\n *\n * @param fid The key of the file to delete.\n * @param request Optional request options.\n * @returns The key of the created trash entry.\n */\n async delete(oid: string, fid: string, request: SdkOptions = {}): Promise<void> {\n const { token } = request\n const url = this.sdk.getUrl(RouteBuilder.file(oid, fid))\n const result = await this.sdk.http.delete(url.toString(), { token })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to trash a file. '\n if (result.status !== 204) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n }\n\n async deleteBulk(oid: string, fids: string[], request: SdkOptions = {}): Promise<void> {\n const { token } = request\n const url = this.sdk.getUrl(RouteBuilder.files(oid))\n const result = await this.sdk.http.delete(url.toString(), { token, body: JSON.stringify({ ids: fids }) })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to trash files. '\n if (result.status !== 204) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n }\n\n /**\n * Updates the sharing options of the file.\n *\n * @param oid The parent organization key\n * @param fid The file key\n * @param info The patch operation on the file's ACL\n * @param request Optional request options.\n */\n async patchUsers(oid: string, fid: string, info: AccessPatchInfo, request: SdkOptions = {}): Promise<IFile> {\n const { token } = request\n const url = this.sdk.getUrl(RouteBuilder.filesAccess(oid, fid))\n const body = JSON.stringify(info)\n const result = await this.sdk.http.patch(url.toString(), { token, body })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to patch the file. '\n if (result.status !== 200) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n if (!result.body) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`, { code: 'E_RESPONSE_NO_VALUE', status: result.status })\n }\n let data: IFile\n try {\n data = JSON.parse(result.body)\n } catch {\n throw new Exception(`${E_PREFIX}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: result.status })\n }\n if (!data.key) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_UNKNOWN}`, { code: 'E_RESPONSE_UNKNOWN', status: result.status })\n }\n return data\n }\n\n /**\n * A shorthand method to add access to the file to a single user.\n *\n * @param organization The parent organization key\n * @param key The file key\n * @param otherUserKey The key of the user that gets access to the organization\n * @param role The user role to grant\n * @param expires Optionally, when the permission expires.\n */\n async addUser(\n organization: string,\n key: string,\n otherUserKey: string,\n role: PermissionRole,\n expires?: number,\n request?: SdkOptions\n ): Promise<IFile> {\n const op: IAccessAddOperation = {\n op: 'add',\n type: 'user',\n value: role,\n id: otherUserKey,\n }\n if (typeof expires === 'number') {\n op.expirationTime = expires\n }\n const patch: AccessPatchInfo = {\n patch: [op],\n id: nanoid(),\n }\n return this.patchUsers(organization, key, patch, request)\n }\n\n /**\n * A shorthand method to remove access to the organization to a single user.\n *\n * @param organization The organization key to share\n * @param key The file key\n * @param otherUserKey The key of the user that gets access to the organization\n */\n async removeUser(organization: string, key: string, otherUserKey: string, request?: SdkOptions): Promise<IFile> {\n const op: IAccessRemoveOperation = {\n op: 'remove',\n type: 'user',\n id: otherUserKey,\n }\n const patch: AccessPatchInfo = {\n patch: [op],\n id: nanoid(),\n }\n return this.patchUsers(organization, key, patch, request)\n }\n\n /**\n * Lists uses having access to the file.\n *\n * @param key The file key\n * @param request Optional request options.\n */\n async listUsers(organization: string, key: string, request: SdkOptions = {}): Promise<ContextListResult<IUser>> {\n const { token } = request\n const url = this.sdk.getUrl(RouteBuilder.fileUsers(organization, key))\n const result = await this.sdk.http.get(url.toString(), { token })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to list users in the file. '\n if (result.status !== 200) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n if (!result.body) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`, { code: 'E_RESPONSE_NO_VALUE', status: result.status })\n }\n let data: ContextListResult<IUser>\n try {\n data = JSON.parse(result.body)\n } catch {\n throw new Exception(`${E_PREFIX}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: result.status })\n }\n if (!Array.isArray(data.items)) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_UNKNOWN}`, { code: 'E_RESPONSE_UNKNOWN', status: result.status })\n }\n return data\n }\n\n /**\n * Lists breadcrumbs to the file.\n * @param key The lowest file in the hierarchy\n */\n async breadcrumbs(\n organization: string,\n key: string,\n request: SdkOptions = {}\n ): Promise<ContextListResult<FileBreadcrumb>> {\n const { token } = request\n const url = this.sdk.getUrl(RouteBuilder.fileBreadcrumbs(organization, key))\n const result = await this.sdk.http.get(url.toString(), { token })\n this.inspectCommonStatusCodes(result)\n const E_PREFIX = 'Unable to read a file. '\n if (result.status !== 200) {\n this.logInvalidResponse(result)\n throw this.createApiError(`${E_PREFIX}${E_RESPONSE_STATUS}${result.status}`, result.body)\n }\n if (!result.body) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_NO_VALUE}`, { code: 'E_RESPONSE_NO_VALUE', status: result.status })\n }\n let data: ContextListResult<FileBreadcrumb>\n try {\n data = JSON.parse(result.body)\n } catch {\n throw new Exception(`${E_PREFIX}${E_INVALID_JSON}`, { code: 'E_INVALID_JSON', status: result.status })\n }\n if (!Array.isArray(data.items)) {\n throw new Exception(`${E_PREFIX}${E_RESPONSE_UNKNOWN}`, { code: 'E_RESPONSE_UNKNOWN', status: result.status })\n }\n return data\n }\n}\n"]}
|
|
@@ -12,10 +12,9 @@ export declare class RouteBuilder {
|
|
|
12
12
|
*/
|
|
13
13
|
static files(oid: string): string;
|
|
14
14
|
/**
|
|
15
|
-
* Used
|
|
16
|
-
* @returns The path to the /files/access route.
|
|
15
|
+
* Used to patch file access.
|
|
17
16
|
*/
|
|
18
|
-
static filesAccess(oid: string): string;
|
|
17
|
+
static filesAccess(oid: string, fid: string): string;
|
|
19
18
|
/**
|
|
20
19
|
* @returns The path to the /files/{oid}/batch/read-meta route.
|
|
21
20
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RouteBuilder.d.ts","sourceRoot":"","sources":["../../../src/sdk/RouteBuilder.ts"],"names":[],"mappings":"AACA;;GAEG;AACH,qBAAa,YAAY;IACvB;;;OAGG;IACH,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAInC;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAIjC
|
|
1
|
+
{"version":3,"file":"RouteBuilder.d.ts","sourceRoot":"","sources":["../../../src/sdk/RouteBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,11 +17,10 @@ export class RouteBuilder {
|
|
|
17
17
|
return `/v1/orgs/${oid}/files`;
|
|
18
18
|
}
|
|
19
19
|
/**
|
|
20
|
-
* Used
|
|
21
|
-
* @returns The path to the /files/access route.
|
|
20
|
+
* Used to patch file access.
|
|
22
21
|
*/
|
|
23
|
-
static filesAccess(oid) {
|
|
24
|
-
return `${RouteBuilder.
|
|
22
|
+
static filesAccess(oid, fid) {
|
|
23
|
+
return `${RouteBuilder.file(oid, fid)}/access`;
|
|
25
24
|
}
|
|
26
25
|
/**
|
|
27
26
|
* @returns The path to the /files/{oid}/batch/read-meta route.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RouteBuilder.js","sourceRoot":"","sources":["../../../src/sdk/RouteBuilder.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @typescript-eslint/no-extraneous-class */\n/**\n * A helper class to make sure routes user and reported by this service are consistent.\n */\nexport class RouteBuilder {\n /**\n * @param oid The org id.\n * @returns The path to the /folders/{oid} route.\n */\n static folders(oid: string): string {\n return `/v1/orgs/${oid}/folders`\n }\n\n /**\n * @returns The path to the /files/{oid} route.\n */\n static files(oid: string): string {\n return `/v1/orgs/${oid}/files`\n }\n\n /**\n * Used for SSE or WS to inform clients about a file being shared with the user.\n * @returns The path to the /files/access route.\n */\n static filesAccess(oid: string): string {\n return `${RouteBuilder.files(oid)}/access`\n }\n\n /**\n * @returns The path to the /files/{oid}/batch/read-meta route.\n */\n static filesBatch(oid: string): string {\n return `${RouteBuilder.files(oid)}/batch/read-meta`\n }\n\n /**\n * @returns The path to the /files/{oid}/[id] route.\n */\n static file(oid: string, key: string): string {\n return `${RouteBuilder.files(oid)}/${key}`\n }\n\n /**\n * @returns The path to the /files/{oid}/[id] route.\n */\n static fileMedia(oid: string, key: string): string {\n return `${RouteBuilder.file(oid, key)}/media`\n }\n\n /**\n * @returns The path to the /files/{oid}/[id]/users route.\n */\n static fileUsers(oid: string, file: string): string {\n return `${RouteBuilder.file(oid, file)}/users`\n }\n\n /**\n * @returns The path to the /file/{oid}/[id]/revisions route.\n */\n static fileRevisions(oid: string, file: string): string {\n return `${RouteBuilder.file(oid, file)}/revisions`\n }\n\n /**\n * @returns The path to the /file/{oid}/[id]/revisions route.\n */\n static fileBreadcrumbs(oid: string, file: string): string {\n return `${RouteBuilder.file(oid, file)}/breadcrumbs`\n }\n\n /**\n * @deprecated Not used anymore\n */\n static backend(): string {\n return '/store'\n }\n\n /**\n * @deprecated Not used anymore\n */\n static sessions(): string {\n return '/sessions'\n }\n\n /**\n * @deprecated Not used anymore\n */\n static sessionRenew(): string {\n return '/sessions/renew'\n }\n\n static history(): string {\n return `/history`\n }\n\n static historyBatchCreate(): string {\n return `/history/batch/create`\n }\n\n static historyBatchDelete(): string {\n return `/history/batch/delete`\n }\n\n static historyItem(key: string): string {\n return `/history/${key}`\n }\n\n static historyClear(type: 'organization' | 'project' | 'request', ...key: string[]): string {\n return `/history/clear/${type}/${key.join('/')}`\n }\n\n static shared(oid: string): string {\n return `/v1/orgs/${oid}/shared`\n }\n\n static trash(oid: string): string {\n return `/v1/orgs/${oid}/trash`\n }\n\n static trashItem(oid: string, trashKey: string): string {\n // GET + DELETE (link to ./delete)\n return `${RouteBuilder.trash(oid)}/${trashKey}`\n }\n\n static trashRestore(oid: string, trashKey: string): string {\n return `${RouteBuilder.trashItem(oid, trashKey)}/restore`\n }\n\n static trashEmpty(oid: string): string {\n return `${RouteBuilder.trash(oid)}/empty`\n }\n\n static trashBatchRestore(oid: string): string {\n return `${RouteBuilder.trash(oid)}/restore`\n }\n\n static trashBatchDelete(oid: string): string {\n return `${RouteBuilder.trash(oid)}/delete`\n }\n\n static projectExecutions(): string {\n return `/project/execution`\n }\n\n static projectExecution(key: string): string {\n return `/project/execution/${key}`\n }\n\n static projectExecutionBulkDelete(): string {\n return `/project/execution/delete`\n }\n\n static projectExecutionClear(scope: 'organization' | 'project' | 'folder'): string {\n return `/project/execution/clear/${scope}`\n }\n\n static organizations(): string {\n return '/v1/orgs'\n }\n\n static organization(oid: string): string {\n return `/v1/orgs/${oid}`\n }\n\n static organizationUsers(oid: string): string {\n return `${this.organization(oid)}/users`\n }\n\n static organizationUserBatch(oid: string): string {\n return `${this.organization(oid)}/users/batch/read`\n }\n\n static organizationUser(oid: string, key: string): string {\n return `${this.organization(oid)}/users/${key}`\n }\n\n static organizationUserDeactivate(oid: string, key: string): string {\n return `${this.organization(oid)}/users/${key}/deactivate`\n }\n\n static organizationUserActivate(oid: string, key: string): string {\n return `${this.organization(oid)}/users/${key}/activate`\n }\n\n /**\n * @deprecated Use `organizationUsers` instead.\n */\n static users(oid: string): string {\n return `${this.organization(oid)}/users`\n }\n\n /**\n * @deprecated Use `organizationUser` instead.\n */\n static user(oid: string, key: string): string {\n return `${this.organization(oid)}/users/${key}`\n }\n\n static invitations(oid: string): string {\n return `${this.organization(oid)}/invitations`\n }\n\n static invitation(oid: string, id: string): string {\n return `${this.invitations(oid)}/${id}`\n }\n\n static findInvitation(): string {\n return `${this.organizations()}/find-invitation`\n }\n\n static declineInvitation(oid: string, id: string): string {\n return `${this.invitation(oid, id)}/decline`\n }\n\n static resendInvitation(oid: string, id: string): string {\n return `${this.invitation(oid, id)}/resend`\n }\n\n /**\n * @deprecated Not used anymore\n */\n static authLogin(): string {\n return '/auth/login'\n }\n\n static authGoogle(): string {\n return '/auth/google'\n }\n\n static authRenew(): string {\n return '/auth/renew'\n }\n\n /**\n * @deprecated Not used anymore\n */\n static authProvider(provider: string): string {\n return `/auth/${provider}`\n }\n\n /**\n * @deprecated Not used anymore\n */\n static authToken(code: string): string {\n return `/auth/token/${code}`\n }\n\n static usersMe(): string {\n return '/v1/users/me'\n }\n\n static dataCatalog(): string {\n return '/v1/datacatalog'\n }\n\n static dataCatalogStatus(domainId: string): string {\n return `${RouteBuilder.dataCatalog()}/status/${domainId}`\n }\n\n static dataCatalogEntry(domainId: string): string {\n return `${RouteBuilder.dataCatalog()}/${domainId}`\n }\n\n static dataCatalogEntryVersions(entryId: string): string {\n return `${RouteBuilder.dataCatalogEntry(entryId)}/versions`\n }\n\n static dataCatalogDependencies(): string {\n return `${RouteBuilder.dataCatalog()}/dependencies`\n }\n\n static dataCatalogVersion(entryId: string, version: string): string {\n return `${RouteBuilder.dataCatalogEntry(entryId)}/${version}`\n }\n\n static dataCatalogDeprecate(entryId: string): string {\n return `${RouteBuilder.dataCatalogEntry(entryId)}/deprecate`\n }\n\n static dataCatalogUnpublish(entryId: string): string {\n return `${RouteBuilder.dataCatalogEntry(entryId)}/unpublish`\n }\n\n static dataCatalogVersionDeprecate(entryId: string, version: string): string {\n return `${RouteBuilder.dataCatalogVersion(entryId, version)}/deprecate`\n }\n\n static dataCatalogVersionUnpublish(entryId: string, version: string): string {\n return `${RouteBuilder.dataCatalogVersion(entryId, version)}/unpublish`\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"RouteBuilder.js","sourceRoot":"","sources":["../../../src/sdk/RouteBuilder.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @typescript-eslint/no-extraneous-class */\n/**\n * A helper class to make sure routes user and reported by this service are consistent.\n */\nexport class RouteBuilder {\n /**\n * @param oid The org id.\n * @returns The path to the /folders/{oid} route.\n */\n static folders(oid: string): string {\n return `/v1/orgs/${oid}/folders`\n }\n\n /**\n * @returns The path to the /files/{oid} route.\n */\n static files(oid: string): string {\n return `/v1/orgs/${oid}/files`\n }\n\n /**\n * Used to patch file access.\n */\n static filesAccess(oid: string, fid: string): string {\n return `${RouteBuilder.file(oid, fid)}/access`\n }\n\n /**\n * @returns The path to the /files/{oid}/batch/read-meta route.\n */\n static filesBatch(oid: string): string {\n return `${RouteBuilder.files(oid)}/batch/read-meta`\n }\n\n /**\n * @returns The path to the /files/{oid}/[id] route.\n */\n static file(oid: string, key: string): string {\n return `${RouteBuilder.files(oid)}/${key}`\n }\n\n /**\n * @returns The path to the /files/{oid}/[id] route.\n */\n static fileMedia(oid: string, key: string): string {\n return `${RouteBuilder.file(oid, key)}/media`\n }\n\n /**\n * @returns The path to the /files/{oid}/[id]/users route.\n */\n static fileUsers(oid: string, file: string): string {\n return `${RouteBuilder.file(oid, file)}/users`\n }\n\n /**\n * @returns The path to the /file/{oid}/[id]/revisions route.\n */\n static fileRevisions(oid: string, file: string): string {\n return `${RouteBuilder.file(oid, file)}/revisions`\n }\n\n /**\n * @returns The path to the /file/{oid}/[id]/revisions route.\n */\n static fileBreadcrumbs(oid: string, file: string): string {\n return `${RouteBuilder.file(oid, file)}/breadcrumbs`\n }\n\n /**\n * @deprecated Not used anymore\n */\n static backend(): string {\n return '/store'\n }\n\n /**\n * @deprecated Not used anymore\n */\n static sessions(): string {\n return '/sessions'\n }\n\n /**\n * @deprecated Not used anymore\n */\n static sessionRenew(): string {\n return '/sessions/renew'\n }\n\n static history(): string {\n return `/history`\n }\n\n static historyBatchCreate(): string {\n return `/history/batch/create`\n }\n\n static historyBatchDelete(): string {\n return `/history/batch/delete`\n }\n\n static historyItem(key: string): string {\n return `/history/${key}`\n }\n\n static historyClear(type: 'organization' | 'project' | 'request', ...key: string[]): string {\n return `/history/clear/${type}/${key.join('/')}`\n }\n\n static shared(oid: string): string {\n return `/v1/orgs/${oid}/shared`\n }\n\n static trash(oid: string): string {\n return `/v1/orgs/${oid}/trash`\n }\n\n static trashItem(oid: string, trashKey: string): string {\n // GET + DELETE (link to ./delete)\n return `${RouteBuilder.trash(oid)}/${trashKey}`\n }\n\n static trashRestore(oid: string, trashKey: string): string {\n return `${RouteBuilder.trashItem(oid, trashKey)}/restore`\n }\n\n static trashEmpty(oid: string): string {\n return `${RouteBuilder.trash(oid)}/empty`\n }\n\n static trashBatchRestore(oid: string): string {\n return `${RouteBuilder.trash(oid)}/restore`\n }\n\n static trashBatchDelete(oid: string): string {\n return `${RouteBuilder.trash(oid)}/delete`\n }\n\n static projectExecutions(): string {\n return `/project/execution`\n }\n\n static projectExecution(key: string): string {\n return `/project/execution/${key}`\n }\n\n static projectExecutionBulkDelete(): string {\n return `/project/execution/delete`\n }\n\n static projectExecutionClear(scope: 'organization' | 'project' | 'folder'): string {\n return `/project/execution/clear/${scope}`\n }\n\n static organizations(): string {\n return '/v1/orgs'\n }\n\n static organization(oid: string): string {\n return `/v1/orgs/${oid}`\n }\n\n static organizationUsers(oid: string): string {\n return `${this.organization(oid)}/users`\n }\n\n static organizationUserBatch(oid: string): string {\n return `${this.organization(oid)}/users/batch/read`\n }\n\n static organizationUser(oid: string, key: string): string {\n return `${this.organization(oid)}/users/${key}`\n }\n\n static organizationUserDeactivate(oid: string, key: string): string {\n return `${this.organization(oid)}/users/${key}/deactivate`\n }\n\n static organizationUserActivate(oid: string, key: string): string {\n return `${this.organization(oid)}/users/${key}/activate`\n }\n\n /**\n * @deprecated Use `organizationUsers` instead.\n */\n static users(oid: string): string {\n return `${this.organization(oid)}/users`\n }\n\n /**\n * @deprecated Use `organizationUser` instead.\n */\n static user(oid: string, key: string): string {\n return `${this.organization(oid)}/users/${key}`\n }\n\n static invitations(oid: string): string {\n return `${this.organization(oid)}/invitations`\n }\n\n static invitation(oid: string, id: string): string {\n return `${this.invitations(oid)}/${id}`\n }\n\n static findInvitation(): string {\n return `${this.organizations()}/find-invitation`\n }\n\n static declineInvitation(oid: string, id: string): string {\n return `${this.invitation(oid, id)}/decline`\n }\n\n static resendInvitation(oid: string, id: string): string {\n return `${this.invitation(oid, id)}/resend`\n }\n\n /**\n * @deprecated Not used anymore\n */\n static authLogin(): string {\n return '/auth/login'\n }\n\n static authGoogle(): string {\n return '/auth/google'\n }\n\n static authRenew(): string {\n return '/auth/renew'\n }\n\n /**\n * @deprecated Not used anymore\n */\n static authProvider(provider: string): string {\n return `/auth/${provider}`\n }\n\n /**\n * @deprecated Not used anymore\n */\n static authToken(code: string): string {\n return `/auth/token/${code}`\n }\n\n static usersMe(): string {\n return '/v1/users/me'\n }\n\n static dataCatalog(): string {\n return '/v1/datacatalog'\n }\n\n static dataCatalogStatus(domainId: string): string {\n return `${RouteBuilder.dataCatalog()}/status/${domainId}`\n }\n\n static dataCatalogEntry(domainId: string): string {\n return `${RouteBuilder.dataCatalog()}/${domainId}`\n }\n\n static dataCatalogEntryVersions(entryId: string): string {\n return `${RouteBuilder.dataCatalogEntry(entryId)}/versions`\n }\n\n static dataCatalogDependencies(): string {\n return `${RouteBuilder.dataCatalog()}/dependencies`\n }\n\n static dataCatalogVersion(entryId: string, version: string): string {\n return `${RouteBuilder.dataCatalogEntry(entryId)}/${version}`\n }\n\n static dataCatalogDeprecate(entryId: string): string {\n return `${RouteBuilder.dataCatalogEntry(entryId)}/deprecate`\n }\n\n static dataCatalogUnpublish(entryId: string): string {\n return `${RouteBuilder.dataCatalogEntry(entryId)}/unpublish`\n }\n\n static dataCatalogVersionDeprecate(entryId: string, version: string): string {\n return `${RouteBuilder.dataCatalogVersion(entryId, version)}/deprecate`\n }\n\n static dataCatalogVersionUnpublish(entryId: string, version: string): string {\n return `${RouteBuilder.dataCatalogVersion(entryId, version)}/unpublish`\n }\n}\n"]}
|