@memberjunction/storage 3.1.1 → 3.2.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.d.ts +6 -0
- package/dist/__tests__/FileStorageBase.test.d.ts.map +1 -0
- package/dist/__tests__/FileStorageBase.test.js +213 -0
- package/dist/__tests__/FileStorageBase.test.js.map +1 -0
- package/dist/__tests__/util.test.d.ts +7 -0
- package/dist/__tests__/util.test.d.ts.map +1 -0
- package/dist/__tests__/util.test.js +326 -0
- package/dist/__tests__/util.test.js.map +1 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +28 -14
- package/dist/config.js.map +1 -1
- package/dist/drivers/AWSFileStorage.d.ts +20 -0
- package/dist/drivers/AWSFileStorage.d.ts.map +1 -1
- package/dist/drivers/AWSFileStorage.js +43 -18
- package/dist/drivers/AWSFileStorage.js.map +1 -1
- package/dist/drivers/AzureFileStorage.d.ts +1 -1
- package/dist/drivers/AzureFileStorage.d.ts.map +1 -1
- package/dist/drivers/AzureFileStorage.js +17 -17
- package/dist/drivers/AzureFileStorage.js.map +1 -1
- package/dist/drivers/BoxFileStorage.d.ts +47 -1
- package/dist/drivers/BoxFileStorage.d.ts.map +1 -1
- package/dist/drivers/BoxFileStorage.js +219 -95
- package/dist/drivers/BoxFileStorage.js.map +1 -1
- package/dist/drivers/DropboxFileStorage.d.ts +59 -0
- package/dist/drivers/DropboxFileStorage.d.ts.map +1 -1
- package/dist/drivers/DropboxFileStorage.js +314 -62
- package/dist/drivers/DropboxFileStorage.js.map +1 -1
- package/dist/drivers/GoogleDriveFileStorage.d.ts +29 -0
- package/dist/drivers/GoogleDriveFileStorage.d.ts.map +1 -1
- package/dist/drivers/GoogleDriveFileStorage.js +220 -72
- package/dist/drivers/GoogleDriveFileStorage.js.map +1 -1
- package/dist/drivers/GoogleFileStorage.d.ts.map +1 -1
- package/dist/drivers/GoogleFileStorage.js +12 -12
- package/dist/drivers/GoogleFileStorage.js.map +1 -1
- package/dist/drivers/SharePointFileStorage.d.ts +64 -5
- package/dist/drivers/SharePointFileStorage.d.ts.map +1 -1
- package/dist/drivers/SharePointFileStorage.js +265 -94
- package/dist/drivers/SharePointFileStorage.js.map +1 -1
- package/dist/generic/FileStorageBase.d.ts +79 -13
- package/dist/generic/FileStorageBase.d.ts.map +1 -1
- package/dist/generic/FileStorageBase.js +57 -12
- package/dist/generic/FileStorageBase.js.map +1 -1
- package/dist/util.d.ts +429 -11
- package/dist/util.d.ts.map +1 -1
- package/dist/util.js +677 -16
- package/dist/util.js.map +1 -1
- package/package.json +11 -5
|
@@ -1,5 +1,36 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import { CreatePreAuthUploadUrlPayload, FileSearchOptions, FileSearchResultSet, FileStorageBase, GetObjectParams, GetObjectMetadataParams, StorageListResult, StorageObjectMetadata } from '../generic/FileStorageBase';
|
|
3
|
+
/**
|
|
4
|
+
* Callback function called when a new refresh token is issued.
|
|
5
|
+
* Box issues a new refresh token with every token refresh, invalidating the old one.
|
|
6
|
+
*/
|
|
7
|
+
type TokenRefreshCallback = (newRefreshToken: string, newAccessToken?: string) => Promise<void>;
|
|
8
|
+
import { StorageProviderConfig } from '../generic/FileStorageBase';
|
|
9
|
+
/**
|
|
10
|
+
* Configuration interface for Box storage provider.
|
|
11
|
+
* Supports OAuth2 authentication with refresh token.
|
|
12
|
+
* Extends StorageProviderConfig to include accountId and accountName.
|
|
13
|
+
*/
|
|
14
|
+
interface BoxConfig extends StorageProviderConfig {
|
|
15
|
+
/** OAuth2 Client ID */
|
|
16
|
+
clientID?: string;
|
|
17
|
+
/** OAuth2 Client Secret */
|
|
18
|
+
clientSecret?: string;
|
|
19
|
+
/** OAuth2 Refresh Token */
|
|
20
|
+
refreshToken?: string;
|
|
21
|
+
/** OAuth2 Access Token (short-lived) */
|
|
22
|
+
accessToken?: string;
|
|
23
|
+
/** Box Enterprise ID for JWT auth */
|
|
24
|
+
enterpriseID?: string;
|
|
25
|
+
/** Optional root folder ID to restrict operations */
|
|
26
|
+
rootFolderID?: string;
|
|
27
|
+
/**
|
|
28
|
+
* Callback called when a new refresh token is issued.
|
|
29
|
+
* CRITICAL: Box issues new refresh tokens with each refresh, invalidating the old one.
|
|
30
|
+
* This callback must be used to persist the new token.
|
|
31
|
+
*/
|
|
32
|
+
onTokenRefresh?: TokenRefreshCallback;
|
|
33
|
+
}
|
|
3
34
|
/**
|
|
4
35
|
* FileStorageBase implementation for Box.com cloud storage
|
|
5
36
|
*
|
|
@@ -92,6 +123,11 @@ export declare class BoxFileStorage extends FileStorageBase {
|
|
|
92
123
|
* Box SDK client for making API calls
|
|
93
124
|
*/
|
|
94
125
|
private _client;
|
|
126
|
+
/**
|
|
127
|
+
* Callback to persist new refresh tokens when they are issued.
|
|
128
|
+
* Box issues new refresh tokens with each token refresh.
|
|
129
|
+
*/
|
|
130
|
+
private _onTokenRefresh?;
|
|
95
131
|
/**
|
|
96
132
|
* Creates a new BoxFileStorage instance
|
|
97
133
|
*
|
|
@@ -112,6 +148,10 @@ export declare class BoxFileStorage extends FileStorageBase {
|
|
|
112
148
|
* This method must be called after creating a BoxFileStorage instance.
|
|
113
149
|
* It initializes the Box SDK and creates the client for API calls.
|
|
114
150
|
*
|
|
151
|
+
* Can optionally accept a config object with OAuth credentials, which is used
|
|
152
|
+
* for per-user OAuth authentication where credentials come from the database.
|
|
153
|
+
*
|
|
154
|
+
* @param config - Optional configuration object containing OAuth2 credentials
|
|
115
155
|
* @returns A Promise that resolves when initialization is complete
|
|
116
156
|
*
|
|
117
157
|
* @example
|
|
@@ -121,7 +161,7 @@ export declare class BoxFileStorage extends FileStorageBase {
|
|
|
121
161
|
* // Now the storage provider is ready to use
|
|
122
162
|
* ```
|
|
123
163
|
*/
|
|
124
|
-
initialize(): Promise<void>;
|
|
164
|
+
initialize(config?: BoxConfig): Promise<void>;
|
|
125
165
|
/**
|
|
126
166
|
* Obtains an access token using client credentials flow
|
|
127
167
|
*
|
|
@@ -365,6 +405,11 @@ export declare class BoxFileStorage extends FileStorageBase {
|
|
|
365
405
|
* ```
|
|
366
406
|
*/
|
|
367
407
|
ListObjects(prefix: string, delimiter?: string): Promise<StorageListResult>;
|
|
408
|
+
/**
|
|
409
|
+
* Ensures we have a valid access token, refreshing if necessary.
|
|
410
|
+
* Also reinitializes the Box client with the new token.
|
|
411
|
+
*/
|
|
412
|
+
private _ensureValidToken;
|
|
368
413
|
/**
|
|
369
414
|
* Creates a new directory (folder) in Box storage
|
|
370
415
|
*
|
|
@@ -742,4 +787,5 @@ export declare class BoxFileStorage extends FileStorageBase {
|
|
|
742
787
|
*/
|
|
743
788
|
private _isObjectId;
|
|
744
789
|
}
|
|
790
|
+
export {};
|
|
745
791
|
//# sourceMappingURL=BoxFileStorage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BoxFileStorage.d.ts","sourceRoot":"","sources":["../../src/drivers/BoxFileStorage.ts"],"names":[],"mappings":";AAGA,OAAO,EACL,6BAA6B,EAC7B,iBAAiB,EAEjB,mBAAmB,EACnB,eAAe,EACf,eAAe,EACf,uBAAuB,EACvB,iBAAiB,EACjB,qBAAqB,EACtB,MAAM,4BAA4B,CAAC;AAWpC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,qBACa,cAAe,SAAQ,eAAe;IACjD;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,YAAY,SAAS;IAExC;;OAEG;IACH,OAAO,CAAC,YAAY,CAAS;IAE7B;;OAEG;IACH,OAAO,CAAC,aAAa,CAAS;IAE9B;;OAEG;IACH,OAAO,CAAC,SAAS,CAAS;IAE1B;;OAEG;IACH,OAAO,CAAC,aAAa,CAAS;IAE9B;;OAEG;IACH,OAAO,CAAC,eAAe,CAAa;IAEpC;;OAEG;IACH,OAAO,CAAC,WAAW,CAAqC;IAExD;;OAEG;IACH,OAAO,CAAC,aAAa,CAA4C;IAEjE;;OAEG;IACH,OAAO,CAAC,aAAa,CAAS;IAE9B;;OAEG;IACH,OAAO,CAAC,aAAa,CAAS;IAE9B;;OAEG;IACH,OAAO,CAAC,OAAO,CAAY;IAE3B;;;;;;;OAOG;;IAsBH;;;OAGG;IACH,IAAW,YAAY,IAAI,OAAO,CAEjC;IAED
|
|
1
|
+
{"version":3,"file":"BoxFileStorage.d.ts","sourceRoot":"","sources":["../../src/drivers/BoxFileStorage.ts"],"names":[],"mappings":"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"}
|