@memberjunction/storage 3.3.0 → 4.0.0
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/__tests__/FileStorageBase.test.js +76 -14
- package/dist/__tests__/FileStorageBase.test.js.map +1 -1
- package/dist/__tests__/util.test.js +29 -49
- package/dist/__tests__/util.test.js.map +1 -1
- package/dist/config.js +56 -63
- package/dist/config.js.map +1 -1
- package/dist/drivers/AWSFileStorage.d.ts +28 -6
- package/dist/drivers/AWSFileStorage.d.ts.map +1 -1
- package/dist/drivers/AWSFileStorage.js +92 -73
- package/dist/drivers/AWSFileStorage.js.map +1 -1
- package/dist/drivers/AzureFileStorage.d.ts +26 -3
- package/dist/drivers/AzureFileStorage.d.ts.map +1 -1
- package/dist/drivers/AzureFileStorage.js +101 -65
- package/dist/drivers/AzureFileStorage.js.map +1 -1
- package/dist/drivers/BoxFileStorage.d.ts +21 -17
- package/dist/drivers/BoxFileStorage.d.ts.map +1 -1
- package/dist/drivers/BoxFileStorage.js +76 -107
- package/dist/drivers/BoxFileStorage.js.map +1 -1
- package/dist/drivers/DropboxFileStorage.d.ts +23 -6
- package/dist/drivers/DropboxFileStorage.d.ts.map +1 -1
- package/dist/drivers/DropboxFileStorage.js +62 -61
- package/dist/drivers/DropboxFileStorage.js.map +1 -1
- package/dist/drivers/GoogleDriveFileStorage.d.ts +23 -6
- package/dist/drivers/GoogleDriveFileStorage.d.ts.map +1 -1
- package/dist/drivers/GoogleDriveFileStorage.js +78 -61
- package/dist/drivers/GoogleDriveFileStorage.js.map +1 -1
- package/dist/drivers/GoogleFileStorage.d.ts +25 -2
- package/dist/drivers/GoogleFileStorage.d.ts.map +1 -1
- package/dist/drivers/GoogleFileStorage.js +93 -46
- package/dist/drivers/GoogleFileStorage.js.map +1 -1
- package/dist/drivers/SharePointFileStorage.d.ts +32 -8
- package/dist/drivers/SharePointFileStorage.d.ts.map +1 -1
- package/dist/drivers/SharePointFileStorage.js +92 -137
- package/dist/drivers/SharePointFileStorage.js.map +1 -1
- package/dist/generic/FileStorageBase.d.ts +77 -43
- package/dist/generic/FileStorageBase.d.ts.map +1 -1
- package/dist/generic/FileStorageBase.js +60 -52
- package/dist/generic/FileStorageBase.js.map +1 -1
- package/dist/index.d.ts +10 -10
- package/dist/index.js +10 -26
- package/dist/index.js.map +1 -1
- package/dist/util.d.ts +2 -2
- package/dist/util.d.ts.map +1 -1
- package/dist/util.js +30 -47
- package/dist/util.js.map +1 -1
- package/package.json +24 -23
- package/readme.md +103 -30
|
@@ -1,44 +1,18 @@
|
|
|
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
1
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
19
2
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
20
3
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
21
4
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
22
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
23
6
|
};
|
|
24
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
25
|
-
if (mod && mod.__esModule) return mod;
|
|
26
|
-
var result = {};
|
|
27
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
28
|
-
__setModuleDefault(result, mod);
|
|
29
|
-
return result;
|
|
30
|
-
};
|
|
31
7
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
32
8
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
33
9
|
};
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
const FileStorageBase_1 = require("../generic/FileStorageBase");
|
|
41
|
-
const config_1 = require("../config");
|
|
10
|
+
import { AccountSASPermissions, AccountSASResourceTypes, AccountSASServices, BlobSASPermissions, BlobServiceClient, SASProtocol, StorageSharedKeyCredential, generateAccountSASQueryParameters, } from '@azure/storage-blob';
|
|
11
|
+
import { RegisterClass } from '@memberjunction/global';
|
|
12
|
+
import * as env from 'env-var';
|
|
13
|
+
import * as mime from 'mime-types';
|
|
14
|
+
import { FileStorageBase, } from '../generic/FileStorageBase.js';
|
|
15
|
+
import { getProviderConfig } from '../config.js';
|
|
42
16
|
/**
|
|
43
17
|
* Azure Blob Storage implementation of the FileStorageBase interface.
|
|
44
18
|
*
|
|
@@ -66,19 +40,7 @@ const config_1 = require("../config");
|
|
|
66
40
|
* const files = await azureStorage.ListObjects('documents/');
|
|
67
41
|
* ```
|
|
68
42
|
*/
|
|
69
|
-
let AzureFileStorage = class AzureFileStorage extends
|
|
70
|
-
/** The name of this storage provider, used in error messages */
|
|
71
|
-
providerName = 'Azure Blob Storage';
|
|
72
|
-
/** Azure Storage SharedKeyCredential for authentication */
|
|
73
|
-
_sharedKeyCredential;
|
|
74
|
-
/** The Azure Storage container name */
|
|
75
|
-
_container;
|
|
76
|
-
/** The Azure Storage account name */
|
|
77
|
-
_azureAccountName;
|
|
78
|
-
/** ContainerClient for the specified container */
|
|
79
|
-
_containerClient;
|
|
80
|
-
/** BlobServiceClient for the Azure Storage account */
|
|
81
|
-
_blobServiceClient;
|
|
43
|
+
let AzureFileStorage = class AzureFileStorage extends FileStorageBase {
|
|
82
44
|
/**
|
|
83
45
|
* Creates a new instance of AzureFileStorage.
|
|
84
46
|
*
|
|
@@ -87,23 +49,97 @@ let AzureFileStorage = class AzureFileStorage extends FileStorageBase_1.FileStor
|
|
|
87
49
|
*/
|
|
88
50
|
constructor() {
|
|
89
51
|
super();
|
|
52
|
+
/** The name of this storage provider, used in error messages */
|
|
53
|
+
this.providerName = 'Azure Blob Storage';
|
|
90
54
|
// Try to get config from centralized configuration
|
|
91
|
-
const config =
|
|
55
|
+
const config = getProviderConfig('azure');
|
|
92
56
|
// Extract values from config, fall back to env vars
|
|
93
57
|
this._container = config?.defaultContainer || env.get('STORAGE_AZURE_CONTAINER').required().asString();
|
|
94
58
|
this._azureAccountName = config?.accountName || env.get('STORAGE_AZURE_ACCOUNT_NAME').required().asString();
|
|
95
59
|
const accountKey = config?.accountKey || env.get('STORAGE_AZURE_ACCOUNT_KEY').required().asString();
|
|
96
|
-
this._sharedKeyCredential = new
|
|
60
|
+
this._sharedKeyCredential = new StorageSharedKeyCredential(this._azureAccountName, accountKey);
|
|
97
61
|
const blobServiceUrl = `https://${this._azureAccountName}.blob.core.windows.net`;
|
|
98
|
-
this._blobServiceClient = new
|
|
62
|
+
this._blobServiceClient = new BlobServiceClient(blobServiceUrl, this._sharedKeyCredential);
|
|
99
63
|
this._containerClient = this._blobServiceClient.getContainerClient(this._container);
|
|
100
64
|
}
|
|
65
|
+
/**
|
|
66
|
+
* Initialize Azure Blob Storage provider.
|
|
67
|
+
*
|
|
68
|
+
* **Always call this method** after creating an instance.
|
|
69
|
+
*
|
|
70
|
+
* @example Simple Deployment (Environment Variables)
|
|
71
|
+
* const storage = new AzureFileStorage(); // Constructor loads env vars
|
|
72
|
+
* await storage.initialize(); // No config - uses env vars
|
|
73
|
+
* await storage.ListObjects('/');
|
|
74
|
+
*
|
|
75
|
+
* @example Multi-Tenant (Database Credentials)
|
|
76
|
+
* const storage = new AzureFileStorage();
|
|
77
|
+
* await storage.initialize({
|
|
78
|
+
* accountId: '12345',
|
|
79
|
+
* accountName: 'Azure Account',
|
|
80
|
+
* accountName: 'myaccount',
|
|
81
|
+
* accountKey: '...',
|
|
82
|
+
* defaultContainer: 'my-container'
|
|
83
|
+
* });
|
|
84
|
+
*
|
|
85
|
+
* @param config - Optional. Omit to use env vars, provide to override with database creds.
|
|
86
|
+
*/
|
|
87
|
+
async initialize(config) {
|
|
88
|
+
await super.initialize(config);
|
|
89
|
+
if (!config) {
|
|
90
|
+
return; // Constructor already handled config from env/file
|
|
91
|
+
}
|
|
92
|
+
// Override with provided values
|
|
93
|
+
const azureConfig = config;
|
|
94
|
+
if (azureConfig.defaultContainer) {
|
|
95
|
+
this._container = azureConfig.defaultContainer;
|
|
96
|
+
}
|
|
97
|
+
if (azureConfig.accountName) {
|
|
98
|
+
this._azureAccountName = azureConfig.accountName;
|
|
99
|
+
}
|
|
100
|
+
if (azureConfig.accountKey) {
|
|
101
|
+
this._sharedKeyCredential = new StorageSharedKeyCredential(this._azureAccountName, azureConfig.accountKey);
|
|
102
|
+
const blobServiceUrl = `https://${this._azureAccountName}.blob.core.windows.net`;
|
|
103
|
+
this._blobServiceClient = new BlobServiceClient(blobServiceUrl, this._sharedKeyCredential);
|
|
104
|
+
this._containerClient = this._blobServiceClient.getContainerClient(this._container);
|
|
105
|
+
}
|
|
106
|
+
}
|
|
101
107
|
/**
|
|
102
108
|
* Checks if Azure Blob provider is properly configured.
|
|
103
|
-
* Returns true if account name and container name are present.
|
|
109
|
+
* Returns true if account name, account key, and container name are present.
|
|
110
|
+
* Logs detailed error messages if configuration is incomplete.
|
|
104
111
|
*/
|
|
105
112
|
get IsConfigured() {
|
|
106
|
-
|
|
113
|
+
const hasAccountName = !!this._azureAccountName;
|
|
114
|
+
const hasContainer = !!this._container;
|
|
115
|
+
const hasCredential = !!this._sharedKeyCredential;
|
|
116
|
+
const isConfigured = hasAccountName && hasContainer && hasCredential;
|
|
117
|
+
if (!isConfigured) {
|
|
118
|
+
const missing = [];
|
|
119
|
+
if (!hasAccountName)
|
|
120
|
+
missing.push('Account Name');
|
|
121
|
+
if (!hasContainer)
|
|
122
|
+
missing.push('Container');
|
|
123
|
+
if (!hasCredential)
|
|
124
|
+
missing.push('Account Key');
|
|
125
|
+
console.error(`❌ Azure Blob Storage provider not configured. Missing: ${missing.join(', ')}\n\n` +
|
|
126
|
+
`Configuration Options:\n\n` +
|
|
127
|
+
`Option 1: Environment Variables\n` +
|
|
128
|
+
` export STORAGE_AZURE_ACCOUNT_NAME="myaccount"\n` +
|
|
129
|
+
` export STORAGE_AZURE_ACCOUNT_KEY="..."\n` +
|
|
130
|
+
` export STORAGE_AZURE_CONTAINER="my-container"\n` +
|
|
131
|
+
` const storage = new AzureFileStorage();\n` +
|
|
132
|
+
` await storage.initialize(); // No config needed\n\n` +
|
|
133
|
+
`Option 2: Database Credentials (Multi-Tenant)\n` +
|
|
134
|
+
` const storage = new AzureFileStorage();\n` +
|
|
135
|
+
` await storage.initialize({\n` +
|
|
136
|
+
` accountId: "...",\n` +
|
|
137
|
+
` accountName: "myaccount",\n` +
|
|
138
|
+
` accountKey: "...",\n` +
|
|
139
|
+
` defaultContainer: "my-container"\n` +
|
|
140
|
+
` });\n`);
|
|
141
|
+
}
|
|
142
|
+
return isConfigured;
|
|
107
143
|
}
|
|
108
144
|
/**
|
|
109
145
|
* Creates a BlobClient for the specified object.
|
|
@@ -155,16 +191,16 @@ let AzureFileStorage = class AzureFileStorage extends FileStorageBase_1.FileStor
|
|
|
155
191
|
CreatePreAuthUploadUrl(objectName) {
|
|
156
192
|
const now = new Date();
|
|
157
193
|
const sasOptions = {
|
|
158
|
-
services:
|
|
159
|
-
resourceTypes:
|
|
160
|
-
permissions:
|
|
161
|
-
protocol:
|
|
194
|
+
services: AccountSASServices.parse('b').toString(), // blobs
|
|
195
|
+
resourceTypes: AccountSASResourceTypes.parse('o').toString(), // object
|
|
196
|
+
permissions: AccountSASPermissions.parse('w'), // write-only permissions
|
|
197
|
+
protocol: SASProtocol.Https,
|
|
162
198
|
startsOn: new Date(now.valueOf() - 60 * 1000), // now minus 1 minute
|
|
163
199
|
expiresOn: new Date(now.valueOf() + 10 * 60 * 1000), // 10 minutes from now
|
|
164
200
|
};
|
|
165
201
|
// Using the SAS url to upload e.g.
|
|
166
202
|
// curl -H "x-ms-blob-type: BlockBlob" --upload-file 1236.txt --url "https://bccdpfiles.blob.core.windows.net/ca-temp/1236.txt?sv=2023-11-03&ss=btqf&srt=sco&spr=https&st=2024-03-18T15%3A59%3A19Z&se=2024-03-18T16%3A09%3A19Z&sp=rwdlacupi&sig=Vu68WUzRmVDsTLXpFvRUKiZVQgjWtds1FFiRDXiwtug%3D"
|
|
167
|
-
const sasToken =
|
|
203
|
+
const sasToken = generateAccountSASQueryParameters(sasOptions, this._sharedKeyCredential).toString();
|
|
168
204
|
const queryString = sasToken[0] === '?' ? sasToken : `?${sasToken}`;
|
|
169
205
|
const UploadUrl = `https://${this._azureAccountName}.blob.core.windows.net/${this._container}/${objectName}${queryString}`;
|
|
170
206
|
return Promise.resolve({ UploadUrl });
|
|
@@ -191,14 +227,14 @@ let AzureFileStorage = class AzureFileStorage extends FileStorageBase_1.FileStor
|
|
|
191
227
|
CreatePreAuthDownloadUrl(objectName) {
|
|
192
228
|
const now = new Date();
|
|
193
229
|
const sasOptions = {
|
|
194
|
-
services:
|
|
195
|
-
resourceTypes:
|
|
196
|
-
permissions:
|
|
197
|
-
protocol:
|
|
230
|
+
services: AccountSASServices.parse('b').toString(), // blobs
|
|
231
|
+
resourceTypes: AccountSASResourceTypes.parse('o').toString(), // object
|
|
232
|
+
permissions: AccountSASPermissions.parse('r'), // read-only permissions
|
|
233
|
+
protocol: SASProtocol.Https,
|
|
198
234
|
startsOn: new Date(now.valueOf() - 60 * 1000), // now minus 1 minute
|
|
199
235
|
expiresOn: new Date(now.valueOf() + 10 * 60 * 1000), // 10 minutes from now
|
|
200
236
|
};
|
|
201
|
-
const sasToken =
|
|
237
|
+
const sasToken = generateAccountSASQueryParameters(sasOptions, this._sharedKeyCredential).toString();
|
|
202
238
|
const queryString = sasToken[0] === '?' ? sasToken : `?${sasToken}`;
|
|
203
239
|
const url = `https://${this._azureAccountName}.blob.core.windows.net/${this._container}/${objectName}${queryString}`;
|
|
204
240
|
return Promise.resolve(url);
|
|
@@ -648,9 +684,9 @@ let AzureFileStorage = class AzureFileStorage extends FileStorageBase_1.FileStor
|
|
|
648
684
|
const destinationBlobClient = this._getBlobClient(destinationObjectName);
|
|
649
685
|
// Generate SAS URL for source blob
|
|
650
686
|
const sasOptions = {
|
|
651
|
-
permissions:
|
|
687
|
+
permissions: BlobSASPermissions.parse('r'), // read-only permissions
|
|
652
688
|
expiresOn: new Date(new Date().valueOf() + 10 * 60 * 1000), // 10 minutes
|
|
653
|
-
protocol:
|
|
689
|
+
protocol: SASProtocol.Https,
|
|
654
690
|
};
|
|
655
691
|
const sasUrl = await sourceBlobClient.generateSasUrl(sasOptions);
|
|
656
692
|
// Copy the blob
|
|
@@ -764,9 +800,9 @@ let AzureFileStorage = class AzureFileStorage extends FileStorageBase_1.FileStor
|
|
|
764
800
|
this.throwUnsupportedOperationError('SearchFiles');
|
|
765
801
|
}
|
|
766
802
|
};
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
(0, global_1.RegisterClass)(FileStorageBase_1.FileStorageBase, 'Azure Blob Storage'),
|
|
803
|
+
AzureFileStorage = __decorate([
|
|
804
|
+
RegisterClass(FileStorageBase, 'Azure Blob Storage'),
|
|
770
805
|
__metadata("design:paramtypes", [])
|
|
771
806
|
], AzureFileStorage);
|
|
807
|
+
export { AzureFileStorage };
|
|
772
808
|
//# sourceMappingURL=AzureFileStorage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AzureFileStorage.js","sourceRoot":"","sources":["../../src/drivers/AzureFileStorage.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AzureFileStorage.js","sourceRoot":"","sources":["../../src/drivers/AzureFileStorage.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
import { CreatePreAuthUploadUrlPayload, FileSearchOptions, FileSearchResultSet, FileStorageBase, GetObjectParams, GetObjectMetadataParams, StorageListResult, StorageObjectMetadata } from '../generic/FileStorageBase';
|
|
1
|
+
import { CreatePreAuthUploadUrlPayload, FileSearchOptions, FileSearchResultSet, FileStorageBase, GetObjectParams, GetObjectMetadataParams, StorageListResult, StorageObjectMetadata } from '../generic/FileStorageBase.js';
|
|
3
2
|
/**
|
|
4
3
|
* Callback function called when a new refresh token is issued.
|
|
5
4
|
* Box issues a new refresh token with every token refresh, invalidating the old one.
|
|
6
5
|
*/
|
|
7
6
|
type TokenRefreshCallback = (newRefreshToken: string, newAccessToken?: string) => Promise<void>;
|
|
8
|
-
import { StorageProviderConfig } from '../generic/FileStorageBase';
|
|
7
|
+
import { StorageProviderConfig } from '../generic/FileStorageBase.js';
|
|
9
8
|
/**
|
|
10
9
|
* Configuration interface for Box storage provider.
|
|
11
10
|
* Supports OAuth2 authentication with refresh token.
|
|
@@ -139,27 +138,32 @@ export declare class BoxFileStorage extends FileStorageBase {
|
|
|
139
138
|
constructor();
|
|
140
139
|
/**
|
|
141
140
|
* Checks if Box provider is properly configured.
|
|
142
|
-
* Returns true if client credentials are present.
|
|
141
|
+
* Returns true if client credentials or access token are present.
|
|
142
|
+
* Logs detailed error messages if configuration is incomplete.
|
|
143
143
|
*/
|
|
144
144
|
get IsConfigured(): boolean;
|
|
145
145
|
/**
|
|
146
|
-
*
|
|
146
|
+
* Initialize Box storage provider.
|
|
147
147
|
*
|
|
148
|
-
*
|
|
149
|
-
* It initializes the Box SDK and creates the client for API calls.
|
|
148
|
+
* **Always call this method** after creating an instance.
|
|
150
149
|
*
|
|
151
|
-
*
|
|
152
|
-
*
|
|
150
|
+
* @example Simple Deployment (Environment Variables)
|
|
151
|
+
* const storage = new BoxFileStorage(); // Constructor loads env vars
|
|
152
|
+
* await storage.initialize(); // No config - uses env vars
|
|
153
|
+
* await storage.ListObjects('/');
|
|
153
154
|
*
|
|
154
|
-
* @
|
|
155
|
-
* @returns A Promise that resolves when initialization is complete
|
|
156
|
-
*
|
|
157
|
-
* @example
|
|
158
|
-
* ```typescript
|
|
155
|
+
* @example Multi-Tenant (Database Credentials)
|
|
159
156
|
* const storage = new BoxFileStorage();
|
|
160
|
-
* await storage.initialize(
|
|
161
|
-
*
|
|
162
|
-
*
|
|
157
|
+
* await storage.initialize({
|
|
158
|
+
* accountId: '12345',
|
|
159
|
+
* accountName: 'Box Account',
|
|
160
|
+
* clientID: '...',
|
|
161
|
+
* clientSecret: '...',
|
|
162
|
+
* refreshToken: '...',
|
|
163
|
+
* rootFolderID: '0'
|
|
164
|
+
* });
|
|
165
|
+
*
|
|
166
|
+
* @param config - Optional. Omit to use env vars, provide to override with database creds.
|
|
163
167
|
*/
|
|
164
168
|
initialize(config?: BoxConfig): Promise<void>;
|
|
165
169
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BoxFileStorage.d.ts","sourceRoot":"","sources":["../../src/drivers/BoxFileStorage.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"BoxFileStorage.d.ts","sourceRoot":"","sources":["../../src/drivers/BoxFileStorage.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,45 +1,19 @@
|
|
|
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
1
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
19
2
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
20
3
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
21
4
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
22
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
23
6
|
};
|
|
24
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
25
|
-
if (mod && mod.__esModule) return mod;
|
|
26
|
-
var result = {};
|
|
27
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
28
|
-
__setModuleDefault(result, mod);
|
|
29
|
-
return result;
|
|
30
|
-
};
|
|
31
7
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
32
8
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
33
9
|
};
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
const stream_1 = require("stream");
|
|
42
|
-
const config_1 = require("../config");
|
|
10
|
+
import { RegisterClass } from '@memberjunction/global';
|
|
11
|
+
import * as env from 'env-var';
|
|
12
|
+
import * as mime from 'mime-types';
|
|
13
|
+
import { FileStorageBase, } from '../generic/FileStorageBase.js';
|
|
14
|
+
import { BoxDeveloperTokenAuth, BoxClient } from 'box-node-sdk';
|
|
15
|
+
import { Readable } from 'stream';
|
|
16
|
+
import { getProviderConfig } from '../config.js';
|
|
43
17
|
/**
|
|
44
18
|
* FileStorageBase implementation for Box.com cloud storage
|
|
45
19
|
*
|
|
@@ -87,56 +61,7 @@ const config_1 = require("../config");
|
|
|
87
61
|
* const downloadUrl = await storage.CreatePreAuthDownloadUrl('documents/hello.txt');
|
|
88
62
|
* ```
|
|
89
63
|
*/
|
|
90
|
-
let BoxFileStorage = class BoxFileStorage extends
|
|
91
|
-
/**
|
|
92
|
-
* The name of this storage provider
|
|
93
|
-
*/
|
|
94
|
-
providerName = 'Box';
|
|
95
|
-
/**
|
|
96
|
-
* Box API access token
|
|
97
|
-
*/
|
|
98
|
-
_accessToken;
|
|
99
|
-
/**
|
|
100
|
-
* Box API refresh token
|
|
101
|
-
*/
|
|
102
|
-
_refreshToken;
|
|
103
|
-
/**
|
|
104
|
-
* Box application client ID
|
|
105
|
-
*/
|
|
106
|
-
_clientId;
|
|
107
|
-
/**
|
|
108
|
-
* Box application client secret
|
|
109
|
-
*/
|
|
110
|
-
_clientSecret;
|
|
111
|
-
/**
|
|
112
|
-
* Timestamp when current access token expires
|
|
113
|
-
*/
|
|
114
|
-
_tokenExpiresAt = 0;
|
|
115
|
-
/**
|
|
116
|
-
* Base URL for Box API
|
|
117
|
-
*/
|
|
118
|
-
_baseApiUrl = 'https://api.box.com/2.0';
|
|
119
|
-
/**
|
|
120
|
-
* Base URL for Box Upload API
|
|
121
|
-
*/
|
|
122
|
-
_uploadApiUrl = 'https://upload.box.com/api/2.0';
|
|
123
|
-
/**
|
|
124
|
-
* ID of the Box folder to use as root
|
|
125
|
-
*/
|
|
126
|
-
_rootFolderId;
|
|
127
|
-
/**
|
|
128
|
-
* Box enterprise ID for JWT auth
|
|
129
|
-
*/
|
|
130
|
-
_enterpriseId;
|
|
131
|
-
/**
|
|
132
|
-
* Box SDK client for making API calls
|
|
133
|
-
*/
|
|
134
|
-
_client;
|
|
135
|
-
/**
|
|
136
|
-
* Callback to persist new refresh tokens when they are issued.
|
|
137
|
-
* Box issues new refresh tokens with each token refresh.
|
|
138
|
-
*/
|
|
139
|
-
_onTokenRefresh;
|
|
64
|
+
let BoxFileStorage = class BoxFileStorage extends FileStorageBase {
|
|
140
65
|
/**
|
|
141
66
|
* Creates a new BoxFileStorage instance
|
|
142
67
|
*
|
|
@@ -147,8 +72,24 @@ let BoxFileStorage = class BoxFileStorage extends FileStorageBase_1.FileStorageB
|
|
|
147
72
|
*/
|
|
148
73
|
constructor() {
|
|
149
74
|
super();
|
|
75
|
+
/**
|
|
76
|
+
* The name of this storage provider
|
|
77
|
+
*/
|
|
78
|
+
this.providerName = 'Box';
|
|
79
|
+
/**
|
|
80
|
+
* Timestamp when current access token expires
|
|
81
|
+
*/
|
|
82
|
+
this._tokenExpiresAt = 0;
|
|
83
|
+
/**
|
|
84
|
+
* Base URL for Box API
|
|
85
|
+
*/
|
|
86
|
+
this._baseApiUrl = 'https://api.box.com/2.0';
|
|
87
|
+
/**
|
|
88
|
+
* Base URL for Box Upload API
|
|
89
|
+
*/
|
|
90
|
+
this._uploadApiUrl = 'https://upload.box.com/api/2.0';
|
|
150
91
|
// Try to get config from centralized configuration
|
|
151
|
-
const config =
|
|
92
|
+
const config = getProviderConfig('box');
|
|
152
93
|
// Box auth can be via access token or refresh token
|
|
153
94
|
this._accessToken = config?.accessToken || env.get('STORAGE_BOX_ACCESS_TOKEN').asString();
|
|
154
95
|
this._refreshToken = config?.refreshToken || env.get('STORAGE_BOX_REFRESH_TOKEN').asString();
|
|
@@ -163,29 +104,57 @@ let BoxFileStorage = class BoxFileStorage extends FileStorageBase_1.FileStorageB
|
|
|
163
104
|
}
|
|
164
105
|
/**
|
|
165
106
|
* Checks if Box provider is properly configured.
|
|
166
|
-
* Returns true if client credentials are present.
|
|
107
|
+
* Returns true if client credentials or access token are present.
|
|
108
|
+
* Logs detailed error messages if configuration is incomplete.
|
|
167
109
|
*/
|
|
168
110
|
get IsConfigured() {
|
|
169
|
-
|
|
111
|
+
const hasClientCredentials = !!(this._clientId && this._clientSecret);
|
|
112
|
+
const hasAccessToken = !!this._accessToken;
|
|
113
|
+
const isConfigured = hasClientCredentials || hasAccessToken;
|
|
114
|
+
if (!isConfigured) {
|
|
115
|
+
console.error(`❌ Box provider not configured. Missing: Client ID & Client Secret (or Access Token)\n\n` +
|
|
116
|
+
`Configuration Options:\n\n` +
|
|
117
|
+
`Option 1: Environment Variables (JWT Authentication)\n` +
|
|
118
|
+
` export STORAGE_BOX_CLIENT_ID="..."\n` +
|
|
119
|
+
` export STORAGE_BOX_CLIENT_SECRET="..."\n` +
|
|
120
|
+
` export STORAGE_BOX_ENTERPRISE_ID="..."\n` +
|
|
121
|
+
` export STORAGE_BOX_JWT_KEY_ID="..."\n` +
|
|
122
|
+
` export STORAGE_BOX_PRIVATE_KEY="..." # base64 encoded\n` +
|
|
123
|
+
` const storage = new BoxFileStorage();\n` +
|
|
124
|
+
` await storage.initialize(); // No config needed\n\n` +
|
|
125
|
+
`Option 2: Database Credentials (Multi-Tenant)\n` +
|
|
126
|
+
` const storage = new BoxFileStorage();\n` +
|
|
127
|
+
` await storage.initialize({\n` +
|
|
128
|
+
` accountId: "...",\n` +
|
|
129
|
+
` clientID: "...",\n` +
|
|
130
|
+
` clientSecret: "...",\n` +
|
|
131
|
+
` enterpriseID: "..."\n` +
|
|
132
|
+
` });\n`);
|
|
133
|
+
}
|
|
134
|
+
return isConfigured;
|
|
170
135
|
}
|
|
171
136
|
/**
|
|
172
|
-
*
|
|
137
|
+
* Initialize Box storage provider.
|
|
173
138
|
*
|
|
174
|
-
*
|
|
175
|
-
* It initializes the Box SDK and creates the client for API calls.
|
|
139
|
+
* **Always call this method** after creating an instance.
|
|
176
140
|
*
|
|
177
|
-
*
|
|
178
|
-
*
|
|
141
|
+
* @example Simple Deployment (Environment Variables)
|
|
142
|
+
* const storage = new BoxFileStorage(); // Constructor loads env vars
|
|
143
|
+
* await storage.initialize(); // No config - uses env vars
|
|
144
|
+
* await storage.ListObjects('/');
|
|
179
145
|
*
|
|
180
|
-
* @
|
|
181
|
-
* @returns A Promise that resolves when initialization is complete
|
|
182
|
-
*
|
|
183
|
-
* @example
|
|
184
|
-
* ```typescript
|
|
146
|
+
* @example Multi-Tenant (Database Credentials)
|
|
185
147
|
* const storage = new BoxFileStorage();
|
|
186
|
-
* await storage.initialize(
|
|
187
|
-
*
|
|
188
|
-
*
|
|
148
|
+
* await storage.initialize({
|
|
149
|
+
* accountId: '12345',
|
|
150
|
+
* accountName: 'Box Account',
|
|
151
|
+
* clientID: '...',
|
|
152
|
+
* clientSecret: '...',
|
|
153
|
+
* refreshToken: '...',
|
|
154
|
+
* rootFolderID: '0'
|
|
155
|
+
* });
|
|
156
|
+
*
|
|
157
|
+
* @param config - Optional. Omit to use env vars, provide to override with database creds.
|
|
189
158
|
*/
|
|
190
159
|
async initialize(config) {
|
|
191
160
|
// Always call super to store accountId and accountName
|
|
@@ -229,8 +198,8 @@ let BoxFileStorage = class BoxFileStorage extends FileStorageBase_1.FileStorageB
|
|
|
229
198
|
}
|
|
230
199
|
// If we only have an access token (no refresh token), use it as-is and hope it's still valid
|
|
231
200
|
// Initialize Box client with developer token auth
|
|
232
|
-
const auth = new
|
|
233
|
-
this._client = new
|
|
201
|
+
const auth = new BoxDeveloperTokenAuth({ token: this._accessToken });
|
|
202
|
+
this._client = new BoxClient({ auth });
|
|
234
203
|
}
|
|
235
204
|
/**
|
|
236
205
|
* Obtains an access token using client credentials flow
|
|
@@ -881,8 +850,8 @@ let BoxFileStorage = class BoxFileStorage extends FileStorageBase_1.FileStorageB
|
|
|
881
850
|
this._accessToken = tokenData.access_token;
|
|
882
851
|
this._tokenExpiresAt = Date.now() + tokenData.expires_in * 1000 - 60000;
|
|
883
852
|
// Reinitialize the Box client with the new token
|
|
884
|
-
const auth = new
|
|
885
|
-
this._client = new
|
|
853
|
+
const auth = new BoxDeveloperTokenAuth({ token: this._accessToken });
|
|
854
|
+
this._client = new BoxClient({ auth });
|
|
886
855
|
console.log('[Box] Token refreshed successfully');
|
|
887
856
|
}
|
|
888
857
|
else {
|
|
@@ -1348,7 +1317,7 @@ let BoxFileStorage = class BoxFileStorage extends FileStorageBase_1.FileStorageB
|
|
|
1348
1317
|
}
|
|
1349
1318
|
try {
|
|
1350
1319
|
// Convert Buffer to Readable stream for the SDK
|
|
1351
|
-
const fileStream =
|
|
1320
|
+
const fileStream = Readable.from(data);
|
|
1352
1321
|
console.log(`[Box PutObject] Uploading to parent folder ID: ${parentId}, filename: ${parsedPath.name}`);
|
|
1353
1322
|
if (fileId) {
|
|
1354
1323
|
// Update existing file (upload new version)
|
|
@@ -1866,9 +1835,9 @@ let BoxFileStorage = class BoxFileStorage extends FileStorageBase_1.FileStorageB
|
|
|
1866
1835
|
return /^\d+$/.test(identifier);
|
|
1867
1836
|
}
|
|
1868
1837
|
};
|
|
1869
|
-
|
|
1870
|
-
|
|
1871
|
-
(0, global_1.RegisterClass)(FileStorageBase_1.FileStorageBase, 'Box.com Storage'),
|
|
1838
|
+
BoxFileStorage = __decorate([
|
|
1839
|
+
RegisterClass(FileStorageBase, 'Box.com Storage'),
|
|
1872
1840
|
__metadata("design:paramtypes", [])
|
|
1873
1841
|
], BoxFileStorage);
|
|
1842
|
+
export { BoxFileStorage };
|
|
1874
1843
|
//# sourceMappingURL=BoxFileStorage.js.map
|