@oasis-path/gamma-sdk 1.0.14 → 1.0.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/auto-trpc/checkPreparedDownload.d.ts +5 -0
- package/dist/auto-trpc/checkPreparedDownload.js +10 -0
- package/dist/auto-trpc/clearFolderFiles.d.ts +5 -0
- package/dist/auto-trpc/clearFolderFiles.js +11 -0
- package/dist/auto-trpc/createFolder.d.ts +10 -0
- package/dist/auto-trpc/createFolder.js +9 -0
- package/dist/auto-trpc/createNestedFolders.d.ts +9 -0
- package/dist/auto-trpc/createNestedFolders.js +9 -0
- package/dist/auto-trpc/deleteFile.d.ts +5 -0
- package/dist/auto-trpc/deleteFile.js +11 -0
- package/dist/auto-trpc/deleteFolder.d.ts +5 -0
- package/dist/auto-trpc/deleteFolder.js +11 -0
- package/dist/auto-trpc/generateFreeUploadUrl.d.ts +5 -0
- package/dist/auto-trpc/generateFreeUploadUrl.js +11 -0
- package/dist/auto-trpc/generatePresignedFileDownloadUrl.d.ts +10 -0
- package/dist/auto-trpc/generatePresignedFileDownloadUrl.js +9 -0
- package/dist/auto-trpc/generatePresignedFileUploadUrl.d.ts +9 -0
- package/dist/auto-trpc/generatePresignedFileUploadUrl.js +9 -0
- package/dist/auto-trpc/generatePresignedFolderDownloadUrl.d.ts +9 -0
- package/dist/auto-trpc/generatePresignedFolderDownloadUrl.js +9 -0
- package/dist/auto-trpc/getFileMetadata.d.ts +5 -0
- package/dist/auto-trpc/getFileMetadata.js +10 -0
- package/dist/auto-trpc/getFolder.d.ts +5 -0
- package/dist/auto-trpc/getFolder.js +10 -0
- package/dist/auto-trpc/getFolderUsers.d.ts +5 -0
- package/dist/auto-trpc/getFolderUsers.js +10 -0
- package/dist/auto-trpc/getUserFolders.d.ts +5 -0
- package/dist/auto-trpc/getUserFolders.js +7 -0
- package/dist/auto-trpc/index.d.ts +20 -0
- package/dist/auto-trpc/index.js +37 -0
- package/dist/auto-trpc/listFolderFiles.d.ts +5 -0
- package/dist/auto-trpc/listFolderFiles.js +10 -0
- package/dist/auto-trpc/prepareFolderDownload.d.ts +5 -0
- package/dist/auto-trpc/prepareFolderDownload.js +11 -0
- package/dist/auto-trpc/removeUserAccess.d.ts +9 -0
- package/dist/auto-trpc/removeUserAccess.js +9 -0
- package/dist/auto-trpc/shareFolder.d.ts +10 -0
- package/dist/auto-trpc/shareFolder.js +9 -0
- package/dist/auto-trpc/updateFolder.d.ts +10 -0
- package/dist/auto-trpc/updateFolder.js +9 -0
- package/dist/auto-trpc/updateUserRole.d.ts +10 -0
- package/dist/auto-trpc/updateUserRole.js +9 -0
- package/dist/index.d.ts +26 -23
- package/dist/index.js +151 -18
- package/dist/methods/downloadWithToken.d.ts +1 -0
- package/dist/methods/downloadWithToken.js +20 -0
- package/dist/methods/uploadPresigned.d.ts +3 -3
- package/dist/methods/uploadPresigned.js +3 -3
- package/dist/methods/uploadWithToken.d.ts +21 -0
- package/dist/methods/uploadWithToken.js +38 -0
- package/dist/trpc/generatePresignedUrl.d.ts +3 -3
- package/dist/trpc/generatePresignedUrl.js +2 -2
- package/dist/utils/makeTrpcRequest.d.ts +5 -0
- package/dist/utils/makeTrpcRequest.js +46 -0
- package/package.json +11 -9
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.checkPreparedDownload = checkPreparedDownload;
|
|
4
|
+
const makeTrpcRequest_1 = require("../utils/makeTrpcRequest");
|
|
5
|
+
async function checkPreparedDownload(folderId, apiKey, baseUrl) {
|
|
6
|
+
const input = {
|
|
7
|
+
folderId
|
|
8
|
+
};
|
|
9
|
+
return (0, makeTrpcRequest_1.makeTrpcRequest)('GET', `/trpc/checkPreparedDownload?input=${encodeURIComponent(JSON.stringify(input))}`, baseUrl, apiKey);
|
|
10
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.clearFolderFiles = clearFolderFiles;
|
|
4
|
+
const makeTrpcRequest_1 = require("../utils/makeTrpcRequest");
|
|
5
|
+
async function clearFolderFiles(folderId, apiKey, baseUrl) {
|
|
6
|
+
return (0, makeTrpcRequest_1.makeTrpcRequest)('POST', '/trpc/clearFolderFiles', baseUrl, apiKey, {
|
|
7
|
+
body: {
|
|
8
|
+
folderId
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export interface CreateFolderOptions {
|
|
2
|
+
name: string;
|
|
3
|
+
description?: string;
|
|
4
|
+
parentId?: string;
|
|
5
|
+
}
|
|
6
|
+
export interface CreateFolderResponse {
|
|
7
|
+
success: true;
|
|
8
|
+
[key: string]: any;
|
|
9
|
+
}
|
|
10
|
+
export declare function createFolder(options: CreateFolderOptions, apiKey: string, baseUrl: string): Promise<CreateFolderResponse>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createFolder = createFolder;
|
|
4
|
+
const makeTrpcRequest_1 = require("../utils/makeTrpcRequest");
|
|
5
|
+
async function createFolder(options, apiKey, baseUrl) {
|
|
6
|
+
return (0, makeTrpcRequest_1.makeTrpcRequest)('POST', '/trpc/createFolder', baseUrl, apiKey, {
|
|
7
|
+
body: options
|
|
8
|
+
});
|
|
9
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export interface CreateNestedFoldersOptions {
|
|
2
|
+
parentId: string;
|
|
3
|
+
folderPaths: any;
|
|
4
|
+
}
|
|
5
|
+
export interface CreateNestedFoldersResponse {
|
|
6
|
+
success: true;
|
|
7
|
+
[key: string]: any;
|
|
8
|
+
}
|
|
9
|
+
export declare function createNestedFolders(options: CreateNestedFoldersOptions, apiKey: string, baseUrl: string): Promise<CreateNestedFoldersResponse>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createNestedFolders = createNestedFolders;
|
|
4
|
+
const makeTrpcRequest_1 = require("../utils/makeTrpcRequest");
|
|
5
|
+
async function createNestedFolders(options, apiKey, baseUrl) {
|
|
6
|
+
return (0, makeTrpcRequest_1.makeTrpcRequest)('POST', '/trpc/createNestedFolders', baseUrl, apiKey, {
|
|
7
|
+
body: options
|
|
8
|
+
});
|
|
9
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.deleteFile = deleteFile;
|
|
4
|
+
const makeTrpcRequest_1 = require("../utils/makeTrpcRequest");
|
|
5
|
+
async function deleteFile(fileId, apiKey, baseUrl) {
|
|
6
|
+
return (0, makeTrpcRequest_1.makeTrpcRequest)('POST', '/trpc/deleteFile', baseUrl, apiKey, {
|
|
7
|
+
body: {
|
|
8
|
+
fileId
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.deleteFolder = deleteFolder;
|
|
4
|
+
const makeTrpcRequest_1 = require("../utils/makeTrpcRequest");
|
|
5
|
+
async function deleteFolder(folderId, apiKey, baseUrl) {
|
|
6
|
+
return (0, makeTrpcRequest_1.makeTrpcRequest)('POST', '/trpc/deleteFolder', baseUrl, apiKey, {
|
|
7
|
+
body: {
|
|
8
|
+
folderId
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.generateFreeUploadUrl = generateFreeUploadUrl;
|
|
4
|
+
const makeTrpcRequest_1 = require("../utils/makeTrpcRequest");
|
|
5
|
+
async function generateFreeUploadUrl(expiresIn, apiKey, baseUrl) {
|
|
6
|
+
return (0, makeTrpcRequest_1.makeTrpcRequest)('POST', '/trpc/generateFreeUploadUrl', baseUrl, apiKey, {
|
|
7
|
+
body: {
|
|
8
|
+
expiresIn
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export interface GeneratePresignedFileDownloadUrlOptions {
|
|
2
|
+
fileId: string;
|
|
3
|
+
expiresIn?: number;
|
|
4
|
+
maxUsageCount?: number;
|
|
5
|
+
}
|
|
6
|
+
export interface GeneratePresignedFileDownloadUrlResponse {
|
|
7
|
+
success: true;
|
|
8
|
+
[key: string]: any;
|
|
9
|
+
}
|
|
10
|
+
export declare function generatePresignedFileDownloadUrl(options: GeneratePresignedFileDownloadUrlOptions, apiKey: string, baseUrl: string): Promise<GeneratePresignedFileDownloadUrlResponse>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.generatePresignedFileDownloadUrl = generatePresignedFileDownloadUrl;
|
|
4
|
+
const makeTrpcRequest_1 = require("../utils/makeTrpcRequest");
|
|
5
|
+
async function generatePresignedFileDownloadUrl(options, apiKey, baseUrl) {
|
|
6
|
+
return (0, makeTrpcRequest_1.makeTrpcRequest)('POST', '/trpc/generatePresignedFileDownloadUrl', baseUrl, apiKey, {
|
|
7
|
+
body: options
|
|
8
|
+
});
|
|
9
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export interface GeneratePresignedFileUploadUrlOptions {
|
|
2
|
+
folderId?: string;
|
|
3
|
+
expiresIn?: number;
|
|
4
|
+
}
|
|
5
|
+
export interface GeneratePresignedFileUploadUrlResponse {
|
|
6
|
+
success: true;
|
|
7
|
+
[key: string]: any;
|
|
8
|
+
}
|
|
9
|
+
export declare function generatePresignedFileUploadUrl(options: GeneratePresignedFileUploadUrlOptions, apiKey: string, baseUrl: string): Promise<GeneratePresignedFileUploadUrlResponse>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.generatePresignedFileUploadUrl = generatePresignedFileUploadUrl;
|
|
4
|
+
const makeTrpcRequest_1 = require("../utils/makeTrpcRequest");
|
|
5
|
+
async function generatePresignedFileUploadUrl(options, apiKey, baseUrl) {
|
|
6
|
+
return (0, makeTrpcRequest_1.makeTrpcRequest)('POST', '/trpc/generatePresignedFileUploadUrl', baseUrl, apiKey, {
|
|
7
|
+
body: options
|
|
8
|
+
});
|
|
9
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export interface GeneratePresignedFolderDownloadUrlOptions {
|
|
2
|
+
folderId: string;
|
|
3
|
+
expiresIn?: number;
|
|
4
|
+
}
|
|
5
|
+
export interface GeneratePresignedFolderDownloadUrlResponse {
|
|
6
|
+
success: true;
|
|
7
|
+
[key: string]: any;
|
|
8
|
+
}
|
|
9
|
+
export declare function generatePresignedFolderDownloadUrl(options: GeneratePresignedFolderDownloadUrlOptions, apiKey: string, baseUrl: string): Promise<GeneratePresignedFolderDownloadUrlResponse>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.generatePresignedFolderDownloadUrl = generatePresignedFolderDownloadUrl;
|
|
4
|
+
const makeTrpcRequest_1 = require("../utils/makeTrpcRequest");
|
|
5
|
+
async function generatePresignedFolderDownloadUrl(options, apiKey, baseUrl) {
|
|
6
|
+
return (0, makeTrpcRequest_1.makeTrpcRequest)('POST', '/trpc/generatePresignedFolderDownloadUrl', baseUrl, apiKey, {
|
|
7
|
+
body: options
|
|
8
|
+
});
|
|
9
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getFileMetadata = getFileMetadata;
|
|
4
|
+
const makeTrpcRequest_1 = require("../utils/makeTrpcRequest");
|
|
5
|
+
async function getFileMetadata(fileId, apiKey, baseUrl) {
|
|
6
|
+
const input = {
|
|
7
|
+
fileId
|
|
8
|
+
};
|
|
9
|
+
return (0, makeTrpcRequest_1.makeTrpcRequest)('GET', `/trpc/getFileMetadata?input=${encodeURIComponent(JSON.stringify(input))}`, baseUrl, apiKey);
|
|
10
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getFolder = getFolder;
|
|
4
|
+
const makeTrpcRequest_1 = require("../utils/makeTrpcRequest");
|
|
5
|
+
async function getFolder(folderId, apiKey, baseUrl) {
|
|
6
|
+
const input = {
|
|
7
|
+
folderId
|
|
8
|
+
};
|
|
9
|
+
return (0, makeTrpcRequest_1.makeTrpcRequest)('GET', `/trpc/getFolder?input=${encodeURIComponent(JSON.stringify(input))}`, baseUrl, apiKey);
|
|
10
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getFolderUsers = getFolderUsers;
|
|
4
|
+
const makeTrpcRequest_1 = require("../utils/makeTrpcRequest");
|
|
5
|
+
async function getFolderUsers(folderId, apiKey, baseUrl) {
|
|
6
|
+
const input = {
|
|
7
|
+
folderId
|
|
8
|
+
};
|
|
9
|
+
return (0, makeTrpcRequest_1.makeTrpcRequest)('GET', `/trpc/getFolderUsers?input=${encodeURIComponent(JSON.stringify(input))}`, baseUrl, apiKey);
|
|
10
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getUserFolders = getUserFolders;
|
|
4
|
+
const makeTrpcRequest_1 = require("../utils/makeTrpcRequest");
|
|
5
|
+
async function getUserFolders(apiKey, baseUrl) {
|
|
6
|
+
return (0, makeTrpcRequest_1.makeTrpcRequest)('GET', '/trpc/getUserFolders', baseUrl, apiKey);
|
|
7
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export * from './clearFolderFiles';
|
|
2
|
+
export * from './deleteFile';
|
|
3
|
+
export * from './generateFreeUploadUrl';
|
|
4
|
+
export * from './generatePresignedFileDownloadUrl';
|
|
5
|
+
export * from './generatePresignedFileUploadUrl';
|
|
6
|
+
export * from './getFileMetadata';
|
|
7
|
+
export * from './listFolderFiles';
|
|
8
|
+
export * from './checkPreparedDownload';
|
|
9
|
+
export * from './createFolder';
|
|
10
|
+
export * from './createNestedFolders';
|
|
11
|
+
export * from './deleteFolder';
|
|
12
|
+
export * from './generatePresignedFolderDownloadUrl';
|
|
13
|
+
export * from './getFolder';
|
|
14
|
+
export * from './getFolderUsers';
|
|
15
|
+
export * from './getUserFolders';
|
|
16
|
+
export * from './prepareFolderDownload';
|
|
17
|
+
export * from './removeUserAccess';
|
|
18
|
+
export * from './shareFolder';
|
|
19
|
+
export * from './updateFolder';
|
|
20
|
+
export * from './updateUserRole';
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Auto-generated index file
|
|
3
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
4
|
+
if (k2 === undefined) k2 = k;
|
|
5
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
6
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
7
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
8
|
+
}
|
|
9
|
+
Object.defineProperty(o, k2, desc);
|
|
10
|
+
}) : (function(o, m, k, k2) {
|
|
11
|
+
if (k2 === undefined) k2 = k;
|
|
12
|
+
o[k2] = m[k];
|
|
13
|
+
}));
|
|
14
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
15
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
16
|
+
};
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
__exportStar(require("./clearFolderFiles"), exports);
|
|
19
|
+
__exportStar(require("./deleteFile"), exports);
|
|
20
|
+
__exportStar(require("./generateFreeUploadUrl"), exports);
|
|
21
|
+
__exportStar(require("./generatePresignedFileDownloadUrl"), exports);
|
|
22
|
+
__exportStar(require("./generatePresignedFileUploadUrl"), exports);
|
|
23
|
+
__exportStar(require("./getFileMetadata"), exports);
|
|
24
|
+
__exportStar(require("./listFolderFiles"), exports);
|
|
25
|
+
__exportStar(require("./checkPreparedDownload"), exports);
|
|
26
|
+
__exportStar(require("./createFolder"), exports);
|
|
27
|
+
__exportStar(require("./createNestedFolders"), exports);
|
|
28
|
+
__exportStar(require("./deleteFolder"), exports);
|
|
29
|
+
__exportStar(require("./generatePresignedFolderDownloadUrl"), exports);
|
|
30
|
+
__exportStar(require("./getFolder"), exports);
|
|
31
|
+
__exportStar(require("./getFolderUsers"), exports);
|
|
32
|
+
__exportStar(require("./getUserFolders"), exports);
|
|
33
|
+
__exportStar(require("./prepareFolderDownload"), exports);
|
|
34
|
+
__exportStar(require("./removeUserAccess"), exports);
|
|
35
|
+
__exportStar(require("./shareFolder"), exports);
|
|
36
|
+
__exportStar(require("./updateFolder"), exports);
|
|
37
|
+
__exportStar(require("./updateUserRole"), exports);
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.listFolderFiles = listFolderFiles;
|
|
4
|
+
const makeTrpcRequest_1 = require("../utils/makeTrpcRequest");
|
|
5
|
+
async function listFolderFiles(folderId, apiKey, baseUrl) {
|
|
6
|
+
const input = {
|
|
7
|
+
folderId
|
|
8
|
+
};
|
|
9
|
+
return (0, makeTrpcRequest_1.makeTrpcRequest)('GET', `/trpc/listFolderFiles?input=${encodeURIComponent(JSON.stringify(input))}`, baseUrl, apiKey);
|
|
10
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.prepareFolderDownload = prepareFolderDownload;
|
|
4
|
+
const makeTrpcRequest_1 = require("../utils/makeTrpcRequest");
|
|
5
|
+
async function prepareFolderDownload(folderId, apiKey, baseUrl) {
|
|
6
|
+
return (0, makeTrpcRequest_1.makeTrpcRequest)('POST', '/trpc/prepareFolderDownload', baseUrl, apiKey, {
|
|
7
|
+
body: {
|
|
8
|
+
folderId
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export interface RemoveUserAccessOptions {
|
|
2
|
+
folderId: string;
|
|
3
|
+
targetUserId: string;
|
|
4
|
+
}
|
|
5
|
+
export interface RemoveUserAccessResponse {
|
|
6
|
+
success: true;
|
|
7
|
+
[key: string]: any;
|
|
8
|
+
}
|
|
9
|
+
export declare function removeUserAccess(options: RemoveUserAccessOptions, apiKey: string, baseUrl: string): Promise<RemoveUserAccessResponse>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.removeUserAccess = removeUserAccess;
|
|
4
|
+
const makeTrpcRequest_1 = require("../utils/makeTrpcRequest");
|
|
5
|
+
async function removeUserAccess(options, apiKey, baseUrl) {
|
|
6
|
+
return (0, makeTrpcRequest_1.makeTrpcRequest)('POST', '/trpc/removeUserAccess', baseUrl, apiKey, {
|
|
7
|
+
body: options
|
|
8
|
+
});
|
|
9
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export interface ShareFolderOptions {
|
|
2
|
+
folderId: string;
|
|
3
|
+
targetUserId: string;
|
|
4
|
+
role: string;
|
|
5
|
+
}
|
|
6
|
+
export interface ShareFolderResponse {
|
|
7
|
+
success: true;
|
|
8
|
+
[key: string]: any;
|
|
9
|
+
}
|
|
10
|
+
export declare function shareFolder(options: ShareFolderOptions, apiKey: string, baseUrl: string): Promise<ShareFolderResponse>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.shareFolder = shareFolder;
|
|
4
|
+
const makeTrpcRequest_1 = require("../utils/makeTrpcRequest");
|
|
5
|
+
async function shareFolder(options, apiKey, baseUrl) {
|
|
6
|
+
return (0, makeTrpcRequest_1.makeTrpcRequest)('POST', '/trpc/shareFolder', baseUrl, apiKey, {
|
|
7
|
+
body: options
|
|
8
|
+
});
|
|
9
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export interface UpdateFolderOptions {
|
|
2
|
+
folderId: string;
|
|
3
|
+
name?: string;
|
|
4
|
+
description?: string;
|
|
5
|
+
}
|
|
6
|
+
export interface UpdateFolderResponse {
|
|
7
|
+
success: true;
|
|
8
|
+
[key: string]: any;
|
|
9
|
+
}
|
|
10
|
+
export declare function updateFolder(options: UpdateFolderOptions, apiKey: string, baseUrl: string): Promise<UpdateFolderResponse>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.updateFolder = updateFolder;
|
|
4
|
+
const makeTrpcRequest_1 = require("../utils/makeTrpcRequest");
|
|
5
|
+
async function updateFolder(options, apiKey, baseUrl) {
|
|
6
|
+
return (0, makeTrpcRequest_1.makeTrpcRequest)('POST', '/trpc/updateFolder', baseUrl, apiKey, {
|
|
7
|
+
body: options
|
|
8
|
+
});
|
|
9
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export interface UpdateUserRoleOptions {
|
|
2
|
+
folderId: string;
|
|
3
|
+
targetUserId: string;
|
|
4
|
+
role: string;
|
|
5
|
+
}
|
|
6
|
+
export interface UpdateUserRoleResponse {
|
|
7
|
+
success: true;
|
|
8
|
+
[key: string]: any;
|
|
9
|
+
}
|
|
10
|
+
export declare function updateUserRole(options: UpdateUserRoleOptions, apiKey: string, baseUrl: string): Promise<UpdateUserRoleResponse>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.updateUserRole = updateUserRole;
|
|
4
|
+
const makeTrpcRequest_1 = require("../utils/makeTrpcRequest");
|
|
5
|
+
async function updateUserRole(options, apiKey, baseUrl) {
|
|
6
|
+
return (0, makeTrpcRequest_1.makeTrpcRequest)('POST', '/trpc/updateUserRole', baseUrl, apiKey, {
|
|
7
|
+
body: options
|
|
8
|
+
});
|
|
9
|
+
}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import * as autoTrpc from './auto-trpc';
|
|
1
2
|
export interface GammaFilesClientConfig {
|
|
2
3
|
baseUrl: string;
|
|
3
4
|
apiKey?: string;
|
|
@@ -17,14 +18,14 @@ export interface ListFolderFilesResponse {
|
|
|
17
18
|
success: true;
|
|
18
19
|
files: FileMetadata[];
|
|
19
20
|
}
|
|
20
|
-
export interface
|
|
21
|
+
export interface UploadWithTokenOptions {
|
|
21
22
|
file: Buffer | Blob | File | NodeJS.ReadableStream;
|
|
22
23
|
filename: string;
|
|
23
24
|
mimeType?: string;
|
|
24
25
|
folderId?: string;
|
|
25
26
|
token: string;
|
|
26
27
|
}
|
|
27
|
-
export interface
|
|
28
|
+
export interface UploadWithTokenResponse {
|
|
28
29
|
success: true;
|
|
29
30
|
file: {
|
|
30
31
|
id: string;
|
|
@@ -53,27 +54,29 @@ export declare class GammaFilesClient {
|
|
|
53
54
|
private baseUrl;
|
|
54
55
|
private apiKey?;
|
|
55
56
|
constructor(config: GammaFilesClientConfig);
|
|
56
|
-
|
|
57
|
-
|
|
57
|
+
uploadWithToken(options: UploadWithTokenOptions): Promise<UploadWithTokenResponse>;
|
|
58
|
+
downloadWithToken(fileId: string, token: string): Promise<ArrayBuffer>;
|
|
58
59
|
downloadFolder(folderId: string, token: string): Promise<ArrayBuffer>;
|
|
59
60
|
viewFile(fileId: string, token: string, compressionValue?: number): Promise<ViewFileResult>;
|
|
60
|
-
|
|
61
|
-
deleteFile(fileId: string): Promise<
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
getFileMetadata(fileId: string): Promise<
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
61
|
+
clearFolderFiles(folderId: string): Promise<autoTrpc.ClearFolderFilesResponse>;
|
|
62
|
+
deleteFile(fileId: string): Promise<autoTrpc.DeleteFileResponse>;
|
|
63
|
+
generateFreeUploadUrl(expiresIn: number): Promise<autoTrpc.GenerateFreeUploadUrlResponse>;
|
|
64
|
+
generatePresignedFileDownloadUrl(options: autoTrpc.GeneratePresignedFileDownloadUrlOptions): Promise<autoTrpc.GeneratePresignedFileDownloadUrlResponse>;
|
|
65
|
+
generatePresignedFileUploadUrl(options: autoTrpc.GeneratePresignedFileUploadUrlOptions): Promise<autoTrpc.GeneratePresignedFileUploadUrlResponse>;
|
|
66
|
+
getFileMetadata(fileId: string): Promise<autoTrpc.GetFileMetadataResponse>;
|
|
67
|
+
listFolderFiles(folderId: string): Promise<autoTrpc.ListFolderFilesResponse>;
|
|
68
|
+
checkPreparedDownload(folderId: string): Promise<autoTrpc.CheckPreparedDownloadResponse>;
|
|
69
|
+
createFolder(options: autoTrpc.CreateFolderOptions): Promise<autoTrpc.CreateFolderResponse>;
|
|
70
|
+
createNestedFolders(options: autoTrpc.CreateNestedFoldersOptions): Promise<autoTrpc.CreateNestedFoldersResponse>;
|
|
71
|
+
deleteFolder(folderId: string): Promise<autoTrpc.DeleteFolderResponse>;
|
|
72
|
+
generatePresignedFolderDownloadUrl(options: autoTrpc.GeneratePresignedFolderDownloadUrlOptions): Promise<autoTrpc.GeneratePresignedFolderDownloadUrlResponse>;
|
|
73
|
+
getFolder(folderId: string): Promise<autoTrpc.GetFolderResponse>;
|
|
74
|
+
getFolderUsers(folderId: string): Promise<autoTrpc.GetFolderUsersResponse>;
|
|
75
|
+
getUserFolders(): Promise<autoTrpc.GetUserFoldersResponse>;
|
|
76
|
+
prepareFolderDownload(folderId: string): Promise<autoTrpc.PrepareFolderDownloadResponse>;
|
|
77
|
+
removeUserAccess(options: autoTrpc.RemoveUserAccessOptions): Promise<autoTrpc.RemoveUserAccessResponse>;
|
|
78
|
+
shareFolder(options: autoTrpc.ShareFolderOptions): Promise<autoTrpc.ShareFolderResponse>;
|
|
79
|
+
updateFolder(options: autoTrpc.UpdateFolderOptions): Promise<autoTrpc.UpdateFolderResponse>;
|
|
80
|
+
updateUserRole(options: autoTrpc.UpdateUserRoleOptions): Promise<autoTrpc.UpdateUserRoleResponse>;
|
|
79
81
|
}
|
|
82
|
+
export * from './auto-trpc';
|
package/dist/index.js
CHANGED
|
@@ -1,25 +1,58 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
36
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
37
|
+
};
|
|
2
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
39
|
exports.GammaFilesClient = void 0;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
40
|
+
const uploadWithToken_1 = require("./methods/uploadWithToken");
|
|
41
|
+
const downloadWithToken_1 = require("./methods/downloadWithToken");
|
|
6
42
|
const downloadFolder_1 = require("./methods/downloadFolder");
|
|
7
43
|
const viewFile_1 = require("./methods/viewFile");
|
|
8
|
-
const
|
|
9
|
-
const deleteFile_1 = require("./trpc/deleteFile");
|
|
10
|
-
const getFileMetadata_1 = require("./trpc/getFileMetadata");
|
|
11
|
-
const generatePresignedUrl_1 = require("./trpc/generatePresignedUrl");
|
|
44
|
+
const autoTrpc = __importStar(require("./auto-trpc"));
|
|
12
45
|
// Client
|
|
13
46
|
class GammaFilesClient {
|
|
14
47
|
constructor(config) {
|
|
15
48
|
this.baseUrl = config.baseUrl.replace(/\/$/, '');
|
|
16
49
|
this.apiKey = config.apiKey;
|
|
17
50
|
}
|
|
18
|
-
async
|
|
19
|
-
return (0,
|
|
51
|
+
async uploadWithToken(options) {
|
|
52
|
+
return (0, uploadWithToken_1.uploadWithToken)(options, this.baseUrl);
|
|
20
53
|
}
|
|
21
|
-
async
|
|
22
|
-
return (0,
|
|
54
|
+
async downloadWithToken(fileId, token) {
|
|
55
|
+
return (0, downloadWithToken_1.downloadWithToken)(fileId, token, this.baseUrl);
|
|
23
56
|
}
|
|
24
57
|
async downloadFolder(folderId, token) {
|
|
25
58
|
return (0, downloadFolder_1.downloadFolder)(folderId, token, this.baseUrl);
|
|
@@ -27,29 +60,129 @@ class GammaFilesClient {
|
|
|
27
60
|
async viewFile(fileId, token, compressionValue) {
|
|
28
61
|
return (0, viewFile_1.viewFile)(fileId, token, this.baseUrl, compressionValue);
|
|
29
62
|
}
|
|
30
|
-
|
|
63
|
+
// AUTO-GENERATED METHODS START
|
|
64
|
+
// All methods below are auto-generated from cloudStorage tRPC functions
|
|
65
|
+
async clearFolderFiles(folderId) {
|
|
31
66
|
if (!this.apiKey) {
|
|
32
|
-
throw new Error('API key is required for
|
|
67
|
+
throw new Error('API key is required for clearFolderFiles method. Please provide apiKey in the constructor config.');
|
|
33
68
|
}
|
|
34
|
-
return
|
|
69
|
+
return autoTrpc.clearFolderFiles(folderId, this.apiKey, this.baseUrl);
|
|
35
70
|
}
|
|
36
71
|
async deleteFile(fileId) {
|
|
37
72
|
if (!this.apiKey) {
|
|
38
73
|
throw new Error('API key is required for deleteFile method. Please provide apiKey in the constructor config.');
|
|
39
74
|
}
|
|
40
|
-
return
|
|
75
|
+
return autoTrpc.deleteFile(fileId, this.apiKey, this.baseUrl);
|
|
76
|
+
}
|
|
77
|
+
async generateFreeUploadUrl(expiresIn) {
|
|
78
|
+
if (!this.apiKey) {
|
|
79
|
+
throw new Error('API key is required for generateFreeUploadUrl method. Please provide apiKey in the constructor config.');
|
|
80
|
+
}
|
|
81
|
+
return autoTrpc.generateFreeUploadUrl(expiresIn, this.apiKey, this.baseUrl);
|
|
82
|
+
}
|
|
83
|
+
async generatePresignedFileDownloadUrl(options) {
|
|
84
|
+
if (!this.apiKey) {
|
|
85
|
+
throw new Error('API key is required for generatePresignedFileDownloadUrl method. Please provide apiKey in the constructor config.');
|
|
86
|
+
}
|
|
87
|
+
return autoTrpc.generatePresignedFileDownloadUrl(options, this.apiKey, this.baseUrl);
|
|
88
|
+
}
|
|
89
|
+
async generatePresignedFileUploadUrl(options) {
|
|
90
|
+
if (!this.apiKey) {
|
|
91
|
+
throw new Error('API key is required for generatePresignedFileUploadUrl method. Please provide apiKey in the constructor config.');
|
|
92
|
+
}
|
|
93
|
+
return autoTrpc.generatePresignedFileUploadUrl(options, this.apiKey, this.baseUrl);
|
|
41
94
|
}
|
|
42
95
|
async getFileMetadata(fileId) {
|
|
43
96
|
if (!this.apiKey) {
|
|
44
97
|
throw new Error('API key is required for getFileMetadata method. Please provide apiKey in the constructor config.');
|
|
45
98
|
}
|
|
46
|
-
return
|
|
99
|
+
return autoTrpc.getFileMetadata(fileId, this.apiKey, this.baseUrl);
|
|
100
|
+
}
|
|
101
|
+
async listFolderFiles(folderId) {
|
|
102
|
+
if (!this.apiKey) {
|
|
103
|
+
throw new Error('API key is required for listFolderFiles method. Please provide apiKey in the constructor config.');
|
|
104
|
+
}
|
|
105
|
+
return autoTrpc.listFolderFiles(folderId, this.apiKey, this.baseUrl);
|
|
106
|
+
}
|
|
107
|
+
async checkPreparedDownload(folderId) {
|
|
108
|
+
if (!this.apiKey) {
|
|
109
|
+
throw new Error('API key is required for checkPreparedDownload method. Please provide apiKey in the constructor config.');
|
|
110
|
+
}
|
|
111
|
+
return autoTrpc.checkPreparedDownload(folderId, this.apiKey, this.baseUrl);
|
|
112
|
+
}
|
|
113
|
+
async createFolder(options) {
|
|
114
|
+
if (!this.apiKey) {
|
|
115
|
+
throw new Error('API key is required for createFolder method. Please provide apiKey in the constructor config.');
|
|
116
|
+
}
|
|
117
|
+
return autoTrpc.createFolder(options, this.apiKey, this.baseUrl);
|
|
118
|
+
}
|
|
119
|
+
async createNestedFolders(options) {
|
|
120
|
+
if (!this.apiKey) {
|
|
121
|
+
throw new Error('API key is required for createNestedFolders method. Please provide apiKey in the constructor config.');
|
|
122
|
+
}
|
|
123
|
+
return autoTrpc.createNestedFolders(options, this.apiKey, this.baseUrl);
|
|
124
|
+
}
|
|
125
|
+
async deleteFolder(folderId) {
|
|
126
|
+
if (!this.apiKey) {
|
|
127
|
+
throw new Error('API key is required for deleteFolder method. Please provide apiKey in the constructor config.');
|
|
128
|
+
}
|
|
129
|
+
return autoTrpc.deleteFolder(folderId, this.apiKey, this.baseUrl);
|
|
130
|
+
}
|
|
131
|
+
async generatePresignedFolderDownloadUrl(options) {
|
|
132
|
+
if (!this.apiKey) {
|
|
133
|
+
throw new Error('API key is required for generatePresignedFolderDownloadUrl method. Please provide apiKey in the constructor config.');
|
|
134
|
+
}
|
|
135
|
+
return autoTrpc.generatePresignedFolderDownloadUrl(options, this.apiKey, this.baseUrl);
|
|
136
|
+
}
|
|
137
|
+
async getFolder(folderId) {
|
|
138
|
+
if (!this.apiKey) {
|
|
139
|
+
throw new Error('API key is required for getFolder method. Please provide apiKey in the constructor config.');
|
|
140
|
+
}
|
|
141
|
+
return autoTrpc.getFolder(folderId, this.apiKey, this.baseUrl);
|
|
142
|
+
}
|
|
143
|
+
async getFolderUsers(folderId) {
|
|
144
|
+
if (!this.apiKey) {
|
|
145
|
+
throw new Error('API key is required for getFolderUsers method. Please provide apiKey in the constructor config.');
|
|
146
|
+
}
|
|
147
|
+
return autoTrpc.getFolderUsers(folderId, this.apiKey, this.baseUrl);
|
|
148
|
+
}
|
|
149
|
+
async getUserFolders() {
|
|
150
|
+
if (!this.apiKey) {
|
|
151
|
+
throw new Error('API key is required for getUserFolders method. Please provide apiKey in the constructor config.');
|
|
152
|
+
}
|
|
153
|
+
return autoTrpc.getUserFolders(this.apiKey, this.baseUrl);
|
|
154
|
+
}
|
|
155
|
+
async prepareFolderDownload(folderId) {
|
|
156
|
+
if (!this.apiKey) {
|
|
157
|
+
throw new Error('API key is required for prepareFolderDownload method. Please provide apiKey in the constructor config.');
|
|
158
|
+
}
|
|
159
|
+
return autoTrpc.prepareFolderDownload(folderId, this.apiKey, this.baseUrl);
|
|
160
|
+
}
|
|
161
|
+
async removeUserAccess(options) {
|
|
162
|
+
if (!this.apiKey) {
|
|
163
|
+
throw new Error('API key is required for removeUserAccess method. Please provide apiKey in the constructor config.');
|
|
164
|
+
}
|
|
165
|
+
return autoTrpc.removeUserAccess(options, this.apiKey, this.baseUrl);
|
|
166
|
+
}
|
|
167
|
+
async shareFolder(options) {
|
|
168
|
+
if (!this.apiKey) {
|
|
169
|
+
throw new Error('API key is required for shareFolder method. Please provide apiKey in the constructor config.');
|
|
170
|
+
}
|
|
171
|
+
return autoTrpc.shareFolder(options, this.apiKey, this.baseUrl);
|
|
172
|
+
}
|
|
173
|
+
async updateFolder(options) {
|
|
174
|
+
if (!this.apiKey) {
|
|
175
|
+
throw new Error('API key is required for updateFolder method. Please provide apiKey in the constructor config.');
|
|
176
|
+
}
|
|
177
|
+
return autoTrpc.updateFolder(options, this.apiKey, this.baseUrl);
|
|
47
178
|
}
|
|
48
|
-
async
|
|
179
|
+
async updateUserRole(options) {
|
|
49
180
|
if (!this.apiKey) {
|
|
50
|
-
throw new Error('API key is required for
|
|
181
|
+
throw new Error('API key is required for updateUserRole method. Please provide apiKey in the constructor config.');
|
|
51
182
|
}
|
|
52
|
-
return
|
|
183
|
+
return autoTrpc.updateUserRole(options, this.apiKey, this.baseUrl);
|
|
53
184
|
}
|
|
54
185
|
}
|
|
55
186
|
exports.GammaFilesClient = GammaFilesClient;
|
|
187
|
+
// Re-export all auto-generated types and functions
|
|
188
|
+
__exportStar(require("./auto-trpc"), exports);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function downloadWithToken(fileId: string, token: string, baseUrl: string): Promise<ArrayBuffer>;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.downloadWithToken = downloadWithToken;
|
|
4
|
+
async function downloadWithToken(fileId, token, baseUrl) {
|
|
5
|
+
const url = new URL(`/api/files/download-presigned/${fileId}`, baseUrl);
|
|
6
|
+
url.searchParams.append('token', token);
|
|
7
|
+
const response = await fetch(url.toString());
|
|
8
|
+
if (!response.ok) {
|
|
9
|
+
const errorText = await response.text();
|
|
10
|
+
let errorData;
|
|
11
|
+
try {
|
|
12
|
+
errorData = JSON.parse(errorText);
|
|
13
|
+
}
|
|
14
|
+
catch {
|
|
15
|
+
errorData = { error: errorText };
|
|
16
|
+
}
|
|
17
|
+
throw new Error(errorData.error || errorData.message || `Download presigned failed with status ${response.status}`);
|
|
18
|
+
}
|
|
19
|
+
return await response.arrayBuffer();
|
|
20
|
+
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
export interface
|
|
1
|
+
export interface UploadWithTokenOptions {
|
|
2
2
|
file: Buffer | Blob | File | NodeJS.ReadableStream;
|
|
3
3
|
filename: string;
|
|
4
4
|
mimeType?: string;
|
|
5
5
|
folderId?: string;
|
|
6
6
|
token: string;
|
|
7
7
|
}
|
|
8
|
-
export interface
|
|
8
|
+
export interface UploadWithTokenResponse {
|
|
9
9
|
success: true;
|
|
10
10
|
file: {
|
|
11
11
|
id: string;
|
|
@@ -18,4 +18,4 @@ export interface UploadPresignedResponse {
|
|
|
18
18
|
createdAt: string;
|
|
19
19
|
};
|
|
20
20
|
}
|
|
21
|
-
export declare function
|
|
21
|
+
export declare function uploadWithToken(options: UploadWithTokenOptions, baseUrl: string): Promise<UploadWithTokenResponse>;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
async function
|
|
3
|
+
exports.uploadWithToken = uploadWithToken;
|
|
4
|
+
async function uploadWithToken(options, baseUrl) {
|
|
5
5
|
const { file, filename, mimeType, folderId, token } = options;
|
|
6
6
|
const formData = new FormData();
|
|
7
7
|
// Handle different file input types
|
|
8
|
-
if (file instanceof Buffer) {
|
|
8
|
+
if (typeof Buffer !== 'undefined' && file instanceof Buffer) {
|
|
9
9
|
const blob = new Blob([file], { type: mimeType || 'application/octet-stream' });
|
|
10
10
|
formData.append('file', blob, filename);
|
|
11
11
|
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export interface UploadWithTokenOptions {
|
|
2
|
+
file: Buffer | Blob | File | NodeJS.ReadableStream;
|
|
3
|
+
filename: string;
|
|
4
|
+
mimeType?: string;
|
|
5
|
+
folderId?: string;
|
|
6
|
+
token: string;
|
|
7
|
+
}
|
|
8
|
+
export interface UploadWithTokenResponse {
|
|
9
|
+
success: true;
|
|
10
|
+
file: {
|
|
11
|
+
id: string;
|
|
12
|
+
name: string;
|
|
13
|
+
originalName: string;
|
|
14
|
+
mimeType: string;
|
|
15
|
+
size: number;
|
|
16
|
+
folderId: string;
|
|
17
|
+
uploadedBy: string;
|
|
18
|
+
createdAt: string;
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
export declare function uploadWithToken(options: UploadWithTokenOptions, baseUrl: string): Promise<UploadWithTokenResponse>;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.uploadWithToken = uploadWithToken;
|
|
4
|
+
async function uploadWithToken(options, baseUrl) {
|
|
5
|
+
const { file, filename, mimeType, folderId, token } = options;
|
|
6
|
+
const formData = new FormData();
|
|
7
|
+
// Handle different file input types
|
|
8
|
+
if (typeof Buffer !== 'undefined' && file instanceof Buffer) {
|
|
9
|
+
const blob = new Blob([file], { type: mimeType || 'application/octet-stream' });
|
|
10
|
+
formData.append('file', blob, filename);
|
|
11
|
+
}
|
|
12
|
+
else if (typeof file === 'object' && 'pipe' in file) {
|
|
13
|
+
// NodeJS.ReadableStream - not directly supported in FormData in browser
|
|
14
|
+
throw new Error('ReadableStream not supported in browser environment. Use Buffer or Blob.');
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
// Blob or File
|
|
18
|
+
formData.append('file', file, filename);
|
|
19
|
+
}
|
|
20
|
+
const url = new URL(`/api/files/upload-presigned/${folderId || ''}`, baseUrl);
|
|
21
|
+
url.searchParams.append('token', token);
|
|
22
|
+
const response = await fetch(url.toString(), {
|
|
23
|
+
method: 'POST',
|
|
24
|
+
body: formData,
|
|
25
|
+
});
|
|
26
|
+
if (!response.ok) {
|
|
27
|
+
const errorText = await response.text();
|
|
28
|
+
let errorData;
|
|
29
|
+
try {
|
|
30
|
+
errorData = JSON.parse(errorText);
|
|
31
|
+
}
|
|
32
|
+
catch {
|
|
33
|
+
errorData = { error: errorText };
|
|
34
|
+
}
|
|
35
|
+
throw new Error(errorData.error || errorData.message || `Upload presigned failed with status ${response.status}`);
|
|
36
|
+
}
|
|
37
|
+
return await response.json();
|
|
38
|
+
}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
export interface
|
|
1
|
+
export interface GenerateUploadTokenOptions {
|
|
2
2
|
fileId: string;
|
|
3
3
|
expiresIn?: number;
|
|
4
4
|
maxUsageCount?: number;
|
|
5
5
|
}
|
|
6
|
-
export interface
|
|
6
|
+
export interface GenerateUploadTokenResponse {
|
|
7
7
|
success: true;
|
|
8
8
|
token: string;
|
|
9
9
|
url: string;
|
|
10
10
|
expiresAt: string;
|
|
11
11
|
}
|
|
12
|
-
export declare function
|
|
12
|
+
export declare function generateUploadToken(options: GenerateUploadTokenOptions, apiKey: string, baseUrl: string): Promise<GenerateUploadTokenResponse>;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.generateUploadToken = generateUploadToken;
|
|
4
4
|
const request_1 = require("./request");
|
|
5
|
-
async function
|
|
5
|
+
async function generateUploadToken(options, apiKey, baseUrl) {
|
|
6
6
|
const x = (0, request_1.makeRequest)('POST', `/trpc/generatePresignedUrl`, baseUrl, apiKey, {
|
|
7
7
|
body: {
|
|
8
8
|
fileId: options.fileId,
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.makeTrpcRequest = makeTrpcRequest;
|
|
4
|
+
async function makeTrpcRequest(method, path, baseUrl, apiKey, options) {
|
|
5
|
+
const url = new URL(path, baseUrl);
|
|
6
|
+
if (options?.query) {
|
|
7
|
+
Object.entries(options.query).forEach(([key, value]) => {
|
|
8
|
+
if (value !== undefined && value !== null) {
|
|
9
|
+
url.searchParams.append(key, value);
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
const headers = {
|
|
14
|
+
'X-API-Key': apiKey,
|
|
15
|
+
...options?.headers,
|
|
16
|
+
};
|
|
17
|
+
if (options?.body && typeof options.body === 'object' && !(options.body instanceof FormData)) {
|
|
18
|
+
headers['Content-Type'] = 'application/json';
|
|
19
|
+
}
|
|
20
|
+
const fetchOptions = {
|
|
21
|
+
method,
|
|
22
|
+
headers,
|
|
23
|
+
};
|
|
24
|
+
if (options?.body) {
|
|
25
|
+
fetchOptions.body = options.body instanceof FormData || typeof options.body === 'string'
|
|
26
|
+
? options.body
|
|
27
|
+
: JSON.stringify(options.body);
|
|
28
|
+
}
|
|
29
|
+
const response = await fetch(url.toString(), fetchOptions);
|
|
30
|
+
if (!response.ok) {
|
|
31
|
+
const errorText = await response.text();
|
|
32
|
+
let errorData;
|
|
33
|
+
try {
|
|
34
|
+
errorData = JSON.parse(errorText);
|
|
35
|
+
}
|
|
36
|
+
catch {
|
|
37
|
+
errorData = { error: errorText };
|
|
38
|
+
}
|
|
39
|
+
throw new Error(errorData.error || errorData.message || `Request failed with status ${response.status}`);
|
|
40
|
+
}
|
|
41
|
+
const contentType = response.headers.get('content-type');
|
|
42
|
+
if (contentType?.includes('application/json')) {
|
|
43
|
+
return await response.json();
|
|
44
|
+
}
|
|
45
|
+
return response;
|
|
46
|
+
}
|
package/package.json
CHANGED
|
@@ -1,15 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@oasis-path/gamma-sdk",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.17",
|
|
4
4
|
"description": "TypeScript SDK for Gamma Files API",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
|
-
"publishConfig": {
|
|
8
|
-
|
|
9
|
-
"build": "tsc",
|
|
10
|
-
"watch": "tsc --watch",
|
|
11
|
-
"prepublishOnly": "pnpm run build",
|
|
12
|
-
"publish2": "pnpm run build && git add . && git commit -m 'chore: publish new version' && git push && pnpm publish --no-git-checks"
|
|
7
|
+
"publishConfig": {
|
|
8
|
+
"access": "public"
|
|
13
9
|
},
|
|
14
10
|
"keywords": [
|
|
15
11
|
"gamma",
|
|
@@ -30,5 +26,11 @@
|
|
|
30
26
|
},
|
|
31
27
|
"files": [
|
|
32
28
|
"dist"
|
|
33
|
-
]
|
|
34
|
-
|
|
29
|
+
],
|
|
30
|
+
"scripts": {
|
|
31
|
+
"build": "tsc",
|
|
32
|
+
"watch": "tsc --watch",
|
|
33
|
+
"push": "git add sdk/ && git commit -m 'chore: update SDK before publish' && git push",
|
|
34
|
+
"pub": "pnpm run build && pnpm publish --no-git-checks"
|
|
35
|
+
}
|
|
36
|
+
}
|