@memberjunction/storage 2.39.0 → 2.41.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.
Files changed (38) hide show
  1. package/dist/drivers/AWSFileStorage.d.ts +360 -4
  2. package/dist/drivers/AWSFileStorage.d.ts.map +1 -1
  3. package/dist/drivers/AWSFileStorage.js +357 -4
  4. package/dist/drivers/AWSFileStorage.js.map +1 -1
  5. package/dist/drivers/AzureFileStorage.d.ts +362 -2
  6. package/dist/drivers/AzureFileStorage.d.ts.map +1 -1
  7. package/dist/drivers/AzureFileStorage.js +357 -2
  8. package/dist/drivers/AzureFileStorage.js.map +1 -1
  9. package/dist/drivers/BoxFileStorage.d.ts +648 -20
  10. package/dist/drivers/BoxFileStorage.d.ts.map +1 -1
  11. package/dist/drivers/BoxFileStorage.js +951 -126
  12. package/dist/drivers/BoxFileStorage.js.map +1 -1
  13. package/dist/drivers/DropboxFileStorage.d.ts +437 -15
  14. package/dist/drivers/DropboxFileStorage.d.ts.map +1 -1
  15. package/dist/drivers/DropboxFileStorage.js +431 -15
  16. package/dist/drivers/DropboxFileStorage.js.map +1 -1
  17. package/dist/drivers/GoogleDriveFileStorage.d.ts +342 -16
  18. package/dist/drivers/GoogleDriveFileStorage.d.ts.map +1 -1
  19. package/dist/drivers/GoogleDriveFileStorage.js +340 -16
  20. package/dist/drivers/GoogleDriveFileStorage.js.map +1 -1
  21. package/dist/drivers/GoogleFileStorage.d.ts +358 -2
  22. package/dist/drivers/GoogleFileStorage.d.ts.map +1 -1
  23. package/dist/drivers/GoogleFileStorage.js +356 -2
  24. package/dist/drivers/GoogleFileStorage.js.map +1 -1
  25. package/dist/drivers/SharePointFileStorage.d.ts +434 -20
  26. package/dist/drivers/SharePointFileStorage.d.ts.map +1 -1
  27. package/dist/drivers/SharePointFileStorage.js +453 -22
  28. package/dist/drivers/SharePointFileStorage.js.map +1 -1
  29. package/dist/generic/FileStorageBase.d.ts +326 -108
  30. package/dist/generic/FileStorageBase.d.ts.map +1 -1
  31. package/dist/generic/FileStorageBase.js +54 -6
  32. package/dist/generic/FileStorageBase.js.map +1 -1
  33. package/dist/util.d.ts +125 -18
  34. package/dist/util.d.ts.map +1 -1
  35. package/dist/util.js +125 -18
  36. package/dist/util.js.map +1 -1
  37. package/package.json +8 -7
  38. package/readme.md +211 -1
@@ -38,9 +38,59 @@ const global_1 = require("@memberjunction/global");
38
38
  const env = __importStar(require("env-var"));
39
39
  const mime = __importStar(require("mime-types"));
40
40
  const FileStorageBase_1 = require("../generic/FileStorageBase");
41
+ /**
42
+ * FileStorageBase implementation for Dropbox cloud storage
43
+ *
44
+ * This provider allows working with files stored in Dropbox. It supports
45
+ * authentication via access token or refresh token with app credentials.
46
+ *
47
+ * @remarks
48
+ * This implementation requires one of the following authentication methods:
49
+ *
50
+ * 1. Access Token:
51
+ * - STORAGE_DROPBOX_ACCESS_TOKEN - A valid Dropbox API access token
52
+ *
53
+ * 2. Refresh Token:
54
+ * - STORAGE_DROPBOX_REFRESH_TOKEN - A valid Dropbox API refresh token
55
+ * - STORAGE_DROPBOX_APP_KEY - Your Dropbox application key (client ID)
56
+ * - STORAGE_DROPBOX_APP_SECRET - Your Dropbox application secret
57
+ *
58
+ * Optional configuration:
59
+ * - STORAGE_DROPBOX_ROOT_PATH - Path within Dropbox to use as the root (defaults to empty which is the root)
60
+ *
61
+ * @example
62
+ * ```typescript
63
+ * // Set required environment variables
64
+ * process.env.STORAGE_DROPBOX_ACCESS_TOKEN = 'your-access-token';
65
+ *
66
+ * // Create the provider
67
+ * const storage = new DropboxFileStorage();
68
+ *
69
+ * // Upload a file
70
+ * const fileContent = Buffer.from('Hello, Dropbox!');
71
+ * await storage.PutObject('documents/hello.txt', fileContent, 'text/plain');
72
+ *
73
+ * // Download a file
74
+ * const downloadedContent = await storage.GetObject('documents/hello.txt');
75
+ *
76
+ * // Get a temporary download URL
77
+ * const downloadUrl = await storage.CreatePreAuthDownloadUrl('documents/hello.txt');
78
+ * ```
79
+ */
41
80
  let DropboxFileStorage = class DropboxFileStorage extends FileStorageBase_1.FileStorageBase {
81
+ /**
82
+ * Creates a new DropboxFileStorage instance
83
+ *
84
+ * This constructor initializes the Dropbox client using the provided credentials
85
+ * from environment variables.
86
+ *
87
+ * @throws Error if neither access token nor refresh token with app credentials are provided
88
+ */
42
89
  constructor() {
43
90
  super();
91
+ /**
92
+ * The name of this storage provider
93
+ */
44
94
  this.providerName = 'Dropbox';
45
95
  // Dropbox auth can be via access token or refresh token
46
96
  const accessToken = env.get('STORAGE_DROPBOX_ACCESS_TOKEN').asString();
@@ -70,7 +120,14 @@ let DropboxFileStorage = class DropboxFileStorage extends FileStorageBase_1.File
70
120
  }
71
121
  }
72
122
  /**
73
- * Normalize a path to be compatible with Dropbox API
123
+ * Normalizes a path to be compatible with Dropbox API
124
+ *
125
+ * This helper method ensures paths are formatted correctly for the Dropbox API,
126
+ * including proper handling of the root path prefix.
127
+ *
128
+ * @private
129
+ * @param path - The path to normalize
130
+ * @returns A normalized path string suitable for Dropbox API calls
74
131
  */
75
132
  _normalizePath(path) {
76
133
  // Combine root path with the given path
@@ -90,7 +147,14 @@ let DropboxFileStorage = class DropboxFileStorage extends FileStorageBase_1.File
90
147
  return fullPath;
91
148
  }
92
149
  /**
93
- * Get metadata for a file or folder
150
+ * Gets metadata for a file or folder from Dropbox
151
+ *
152
+ * This helper method retrieves metadata for a file or folder using the Dropbox API.
153
+ *
154
+ * @private
155
+ * @param path - The path to get metadata for
156
+ * @returns A Promise that resolves to the Dropbox metadata object
157
+ * @throws Error if the item doesn't exist or cannot be accessed
94
158
  */
95
159
  async _getMetadata(path) {
96
160
  const normalizedPath = this._normalizePath(path);
@@ -107,6 +171,14 @@ let DropboxFileStorage = class DropboxFileStorage extends FileStorageBase_1.File
107
171
  }
108
172
  /**
109
173
  * Converts a Dropbox file/folder to StorageObjectMetadata
174
+ *
175
+ * This helper method transforms Dropbox-specific metadata into the
176
+ * standard StorageObjectMetadata format used by FileStorageBase.
177
+ *
178
+ * @private
179
+ * @param item - The Dropbox item metadata
180
+ * @param parentPath - Optional parent path string
181
+ * @returns A StorageObjectMetadata object
110
182
  */
111
183
  _convertToMetadata(item, parentPath = '') {
112
184
  const isDirectory = item['.tag'] === 'folder';
@@ -150,7 +222,27 @@ let DropboxFileStorage = class DropboxFileStorage extends FileStorageBase_1.File
150
222
  };
151
223
  }
152
224
  /**
153
- * Dropbox doesn't support pre-auth upload URLs directly
225
+ * Creates a pre-authenticated upload URL (not supported in Dropbox)
226
+ *
227
+ * This method is not supported for Dropbox storage as Dropbox doesn't provide
228
+ * a way to generate pre-authenticated upload URLs like object storage services.
229
+ * Instead, use the PutObject method for file uploads.
230
+ *
231
+ * @param objectName - The object name (path) to create a pre-auth URL for
232
+ * @throws UnsupportedOperationError always, as this operation is not supported
233
+ * @example
234
+ * ```typescript
235
+ * // This will throw an UnsupportedOperationError
236
+ * try {
237
+ * await storage.CreatePreAuthUploadUrl('documents/report.docx');
238
+ * } catch (error) {
239
+ * if (error instanceof UnsupportedOperationError) {
240
+ * console.log('Pre-authenticated upload URLs are not supported in Dropbox.');
241
+ * // Use PutObject instead
242
+ * await storage.PutObject('documents/report.docx', fileContent);
243
+ * }
244
+ * }
245
+ * ```
154
246
  */
155
247
  async CreatePreAuthUploadUrl(objectName) {
156
248
  // Dropbox doesn't support pre-signed URLs for uploads in the same way as S3
@@ -158,7 +250,33 @@ let DropboxFileStorage = class DropboxFileStorage extends FileStorageBase_1.File
158
250
  this.throwUnsupportedOperationError('CreatePreAuthUploadUrl');
159
251
  }
160
252
  /**
161
- * Create a pre-authenticated download URL
253
+ * Creates a pre-authenticated download URL for a file
254
+ *
255
+ * This method generates a time-limited URL that can be used to download
256
+ * a file without authentication.
257
+ *
258
+ * @param objectName - Path to the file to download (e.g., 'documents/report.pdf')
259
+ * @returns A Promise that resolves to the download URL string
260
+ * @throws Error if the file doesn't exist or URL creation fails
261
+ *
262
+ * @remarks
263
+ * - Dropbox temporary download links typically expire after 4 hours
264
+ * - Generated URLs can be shared with users who don't have Dropbox access
265
+ *
266
+ * @example
267
+ * ```typescript
268
+ * try {
269
+ * // Generate a pre-authenticated download URL
270
+ * const downloadUrl = await storage.CreatePreAuthDownloadUrl('documents/financial-report.pdf');
271
+ *
272
+ * console.log(`Download the file using this URL: ${downloadUrl}`);
273
+ *
274
+ * // The URL can be shared or used in a browser to download the file
275
+ * // without requiring Dropbox authentication
276
+ * } catch (error) {
277
+ * console.error('Error creating download URL:', error.message);
278
+ * }
279
+ * ```
162
280
  */
163
281
  async CreatePreAuthDownloadUrl(objectName) {
164
282
  try {
@@ -175,7 +293,34 @@ let DropboxFileStorage = class DropboxFileStorage extends FileStorageBase_1.File
175
293
  }
176
294
  }
177
295
  /**
178
- * Move an object
296
+ * Moves a file or folder from one location to another
297
+ *
298
+ * This method moves a file or folder to a new location in Dropbox.
299
+ * It handles both renaming and changing the parent folder.
300
+ *
301
+ * @param oldObjectName - Current path of the object (e.g., 'old-folder/document.docx')
302
+ * @param newObjectName - New path for the object (e.g., 'new-folder/renamed-document.docx')
303
+ * @returns A Promise that resolves to true if successful, false otherwise
304
+ *
305
+ * @remarks
306
+ * - Works with both files and folders
307
+ * - For folders, all contents will move with the folder
308
+ * - If the destination already exists, the operation will fail
309
+ *
310
+ * @example
311
+ * ```typescript
312
+ * // Move a file to a different folder and rename it
313
+ * const moveResult = await storage.MoveObject(
314
+ * 'documents/old-report.pdf',
315
+ * 'archive/2023/annual-report.pdf'
316
+ * );
317
+ *
318
+ * if (moveResult) {
319
+ * console.log('File moved successfully');
320
+ * } else {
321
+ * console.error('Failed to move file');
322
+ * }
323
+ * ```
179
324
  */
180
325
  async MoveObject(oldObjectName, newObjectName) {
181
326
  try {
@@ -194,7 +339,29 @@ let DropboxFileStorage = class DropboxFileStorage extends FileStorageBase_1.File
194
339
  }
195
340
  }
196
341
  /**
197
- * Delete an object
342
+ * Deletes a file or folder from Dropbox
343
+ *
344
+ * This method permanently deletes a file or folder from Dropbox storage.
345
+ *
346
+ * @param objectName - Path to the object to delete (e.g., 'documents/old-report.docx')
347
+ * @returns A Promise that resolves to true if successful, false if an error occurs
348
+ *
349
+ * @remarks
350
+ * - Returns true if the object doesn't exist (for idempotency)
351
+ * - Dropbox puts deleted items in the trash, where they can be recovered for a limited time
352
+ * - For deleting folders with contents, use DeleteDirectory with recursive=true
353
+ *
354
+ * @example
355
+ * ```typescript
356
+ * // Delete a file
357
+ * const deleteResult = await storage.DeleteObject('temp/draft-document.docx');
358
+ *
359
+ * if (deleteResult) {
360
+ * console.log('File deleted successfully or already didn\'t exist');
361
+ * } else {
362
+ * console.error('Failed to delete file');
363
+ * }
364
+ * ```
198
365
  */
199
366
  async DeleteObject(objectName) {
200
367
  try {
@@ -214,7 +381,38 @@ let DropboxFileStorage = class DropboxFileStorage extends FileStorageBase_1.File
214
381
  }
215
382
  }
216
383
  /**
217
- * List objects in a directory
384
+ * Lists files and folders in a given directory
385
+ *
386
+ * This method retrieves all files and subfolders in the specified directory.
387
+ * It returns both a list of object metadata and a list of directory prefixes.
388
+ *
389
+ * @param prefix - Path to the directory to list (e.g., 'documents/reports')
390
+ * @param delimiter - Optional delimiter character (default: '/')
391
+ * @returns A Promise that resolves to a StorageListResult containing objects and prefixes
392
+ *
393
+ * @remarks
394
+ * - The `objects` array includes both files and folders
395
+ * - The `prefixes` array includes only folder paths (with trailing slashes)
396
+ * - Returns empty arrays if the directory doesn't exist or an error occurs
397
+ * - The delimiter parameter is included for interface compatibility but not used internally
398
+ *
399
+ * @example
400
+ * ```typescript
401
+ * // List all files and folders in the 'documents' directory
402
+ * const result = await storage.ListObjects('documents');
403
+ *
404
+ * // Process files and folders
405
+ * console.log(`Found ${result.objects.length} items:`);
406
+ * for (const obj of result.objects) {
407
+ * console.log(`- ${obj.name} (${obj.isDirectory ? 'Folder' : 'File'}, ${obj.size} bytes)`);
408
+ * }
409
+ *
410
+ * // List subfolders only
411
+ * console.log(`Found ${result.prefixes.length} subfolders:`);
412
+ * for (const prefix of result.prefixes) {
413
+ * console.log(`- ${prefix}`);
414
+ * }
415
+ * ```
218
416
  */
219
417
  async ListObjects(prefix, delimiter = '/') {
220
418
  try {
@@ -247,7 +445,36 @@ let DropboxFileStorage = class DropboxFileStorage extends FileStorageBase_1.File
247
445
  }
248
446
  }
249
447
  /**
250
- * Create a directory
448
+ * Creates a new directory (folder) in Dropbox
449
+ *
450
+ * This method creates a folder at the specified path.
451
+ *
452
+ * @param directoryPath - Path where the directory should be created (e.g., 'documents/reports/2023')
453
+ * @returns A Promise that resolves to true if successful, false if an error occurs
454
+ *
455
+ * @remarks
456
+ * - Returns true if the directory already exists (idempotent operation)
457
+ * - Trailing slashes in the path are automatically removed
458
+ * - Parent directories must already exist; this method doesn't create them recursively
459
+ *
460
+ * @example
461
+ * ```typescript
462
+ * // Create a new folder
463
+ * const createResult = await storage.CreateDirectory('documents/reports/2023');
464
+ *
465
+ * if (createResult) {
466
+ * console.log('Directory created successfully');
467
+ *
468
+ * // Now we can put files in this directory
469
+ * await storage.PutObject(
470
+ * 'documents/reports/2023/annual-summary.xlsx',
471
+ * fileContent,
472
+ * 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
473
+ * );
474
+ * } else {
475
+ * console.error('Failed to create directory');
476
+ * }
477
+ * ```
251
478
  */
252
479
  async CreateDirectory(directoryPath) {
253
480
  try {
@@ -271,7 +498,36 @@ let DropboxFileStorage = class DropboxFileStorage extends FileStorageBase_1.File
271
498
  }
272
499
  }
273
500
  /**
274
- * Delete a directory
501
+ * Deletes a directory from Dropbox
502
+ *
503
+ * This method deletes a folder and optionally ensures it's empty first.
504
+ * Note that Dropbox API always deletes folders recursively, so we perform
505
+ * an additional check when recursive=false to protect against accidental deletion.
506
+ *
507
+ * @param directoryPath - Path to the directory to delete (e.g., 'documents/old-reports')
508
+ * @param recursive - If true, delete the directory and all its contents; if false, only delete if empty
509
+ * @returns A Promise that resolves to true if successful, false if an error occurs
510
+ *
511
+ * @remarks
512
+ * - Returns true if the directory doesn't exist (idempotent operation)
513
+ * - If recursive=false and the directory contains files, the operation will fail
514
+ * - Dropbox puts deleted folders in the trash, where they can be recovered for a limited time
515
+ * - Trailing slashes in the path are automatically removed
516
+ *
517
+ * @example
518
+ * ```typescript
519
+ * // Attempt to delete an empty folder
520
+ * const deleteResult = await storage.DeleteDirectory('temp/empty-folder', false);
521
+ *
522
+ * // Delete a folder and all its contents
523
+ * const recursiveDeleteResult = await storage.DeleteDirectory('archive/old-data', true);
524
+ *
525
+ * if (recursiveDeleteResult) {
526
+ * console.log('Folder and all its contents deleted successfully');
527
+ * } else {
528
+ * console.error('Failed to delete folder');
529
+ * }
530
+ * ```
275
531
  */
276
532
  async DeleteDirectory(directoryPath, recursive = true) {
277
533
  try {
@@ -306,7 +562,35 @@ let DropboxFileStorage = class DropboxFileStorage extends FileStorageBase_1.File
306
562
  }
307
563
  }
308
564
  /**
309
- * Get object metadata
565
+ * Gets metadata for a file or folder
566
+ *
567
+ * This method retrieves metadata information about a file or folder, such as
568
+ * its name, size, content type, and last modified date.
569
+ *
570
+ * @param objectName - Path to the object to get metadata for (e.g., 'documents/report.pdf')
571
+ * @returns A Promise that resolves to a StorageObjectMetadata object
572
+ * @throws Error if the object doesn't exist or cannot be accessed
573
+ *
574
+ * @example
575
+ * ```typescript
576
+ * try {
577
+ * // Get metadata for a file
578
+ * const metadata = await storage.GetObjectMetadata('presentations/quarterly-update.pptx');
579
+ *
580
+ * console.log(`Name: ${metadata.name}`);
581
+ * console.log(`Path: ${metadata.path}`);
582
+ * console.log(`Size: ${metadata.size} bytes`);
583
+ * console.log(`Content Type: ${metadata.contentType}`);
584
+ * console.log(`Last Modified: ${metadata.lastModified}`);
585
+ * console.log(`Is Directory: ${metadata.isDirectory}`);
586
+ *
587
+ * // Dropbox-specific metadata is available in customMetadata
588
+ * console.log(`Dropbox ID: ${metadata.customMetadata.id}`);
589
+ * console.log(`Revision: ${metadata.customMetadata.rev}`);
590
+ * } catch (error) {
591
+ * console.error('Error getting metadata:', error.message);
592
+ * }
593
+ * ```
310
594
  */
311
595
  async GetObjectMetadata(objectName) {
312
596
  try {
@@ -323,7 +607,34 @@ let DropboxFileStorage = class DropboxFileStorage extends FileStorageBase_1.File
323
607
  }
324
608
  }
325
609
  /**
326
- * Get an object's contents
610
+ * Downloads a file's contents
611
+ *
612
+ * This method retrieves the raw content of a file as a Buffer.
613
+ *
614
+ * @param objectName - Path to the file to download (e.g., 'documents/report.pdf')
615
+ * @returns A Promise that resolves to a Buffer containing the file's contents
616
+ * @throws Error if the file doesn't exist or cannot be downloaded
617
+ *
618
+ * @remarks
619
+ * - This method will throw an error if the object is a folder
620
+ * - For large files, consider using CreatePreAuthDownloadUrl instead
621
+ *
622
+ * @example
623
+ * ```typescript
624
+ * try {
625
+ * // Download a text file
626
+ * const fileContent = await storage.GetObject('documents/notes.txt');
627
+ *
628
+ * // Convert Buffer to string for text files
629
+ * const textContent = fileContent.toString('utf8');
630
+ * console.log('File content:', textContent);
631
+ *
632
+ * // For binary files, you can write the buffer to disk
633
+ * // or process it as needed
634
+ * } catch (error) {
635
+ * console.error('Error downloading file:', error.message);
636
+ * }
637
+ * ```
327
638
  */
328
639
  async GetObject(objectName) {
329
640
  try {
@@ -341,7 +652,42 @@ let DropboxFileStorage = class DropboxFileStorage extends FileStorageBase_1.File
341
652
  }
342
653
  }
343
654
  /**
344
- * Upload an object
655
+ * Uploads a file to Dropbox
656
+ *
657
+ * This method uploads a file to the specified path in Dropbox. It automatically
658
+ * determines whether to use a simple upload or chunked upload based on file size.
659
+ *
660
+ * @param objectName - Path where the file should be uploaded (e.g., 'documents/report.pdf')
661
+ * @param data - Buffer containing the file content
662
+ * @param contentType - Optional MIME type of the file (not used in Dropbox implementation)
663
+ * @param metadata - Optional metadata to associate with the file (not used in Dropbox implementation)
664
+ * @returns A Promise that resolves to true if successful, false if an error occurs
665
+ *
666
+ * @remarks
667
+ * - Files smaller than 150MB use a simple upload
668
+ * - Files 150MB or larger use a chunked upload process
669
+ * - If a file with the same name exists, it will be overwritten
670
+ * - Parent folders must exist before uploading files to them
671
+ *
672
+ * @example
673
+ * ```typescript
674
+ * // Upload a simple text file
675
+ * const textContent = Buffer.from('This is a sample document', 'utf8');
676
+ * const uploadResult = await storage.PutObject('documents/sample.txt', textContent);
677
+ *
678
+ * // Upload a large file using chunked upload
679
+ * const largeFileBuffer = fs.readFileSync('/path/to/large-presentation.pptx');
680
+ * const largeUploadResult = await storage.PutObject(
681
+ * 'presentations/quarterly-results.pptx',
682
+ * largeFileBuffer
683
+ * );
684
+ *
685
+ * if (largeUploadResult) {
686
+ * console.log('Large file uploaded successfully');
687
+ * } else {
688
+ * console.error('Failed to upload large file');
689
+ * }
690
+ * ```
345
691
  */
346
692
  async PutObject(objectName, data, contentType, metadata) {
347
693
  try {
@@ -408,7 +754,34 @@ let DropboxFileStorage = class DropboxFileStorage extends FileStorageBase_1.File
408
754
  }
409
755
  }
410
756
  /**
411
- * Copy an object
757
+ * Copies a file or folder from one location to another
758
+ *
759
+ * This method creates a copy of a file or folder at a new location.
760
+ * The original file or folder remains unchanged.
761
+ *
762
+ * @param sourceObjectName - Path to the source object (e.g., 'templates/report-template.docx')
763
+ * @param destinationObjectName - Path where the copy should be created (e.g., 'documents/new-report.docx')
764
+ * @returns A Promise that resolves to true if successful, false if an error occurs
765
+ *
766
+ * @remarks
767
+ * - Works with both files and folders
768
+ * - If the destination already exists, the operation will fail
769
+ * - Parent directories must exist in the destination path
770
+ *
771
+ * @example
772
+ * ```typescript
773
+ * // Copy a template file to a new location with a different name
774
+ * const copyResult = await storage.CopyObject(
775
+ * 'templates/financial-report.xlsx',
776
+ * 'reports/2023/q1-financial-report.xlsx'
777
+ * );
778
+ *
779
+ * if (copyResult) {
780
+ * console.log('File copied successfully');
781
+ * } else {
782
+ * console.error('Failed to copy file');
783
+ * }
784
+ * ```
412
785
  */
413
786
  async CopyObject(sourceObjectName, destinationObjectName) {
414
787
  try {
@@ -427,7 +800,26 @@ let DropboxFileStorage = class DropboxFileStorage extends FileStorageBase_1.File
427
800
  }
428
801
  }
429
802
  /**
430
- * Check if an object exists
803
+ * Checks if a file or folder exists
804
+ *
805
+ * This method verifies whether an object (file or folder) exists at the specified path.
806
+ *
807
+ * @param objectName - Path to check (e.g., 'documents/report.pdf')
808
+ * @returns A Promise that resolves to true if the object exists, false otherwise
809
+ *
810
+ * @example
811
+ * ```typescript
812
+ * // Check if a file exists before attempting to download it
813
+ * const exists = await storage.ObjectExists('presentations/quarterly-update.pptx');
814
+ *
815
+ * if (exists) {
816
+ * // File exists, proceed with download
817
+ * const fileContent = await storage.GetObject('presentations/quarterly-update.pptx');
818
+ * // Process the file...
819
+ * } else {
820
+ * console.log('File does not exist');
821
+ * }
822
+ * ```
431
823
  */
432
824
  async ObjectExists(objectName) {
433
825
  try {
@@ -439,7 +831,31 @@ let DropboxFileStorage = class DropboxFileStorage extends FileStorageBase_1.File
439
831
  }
440
832
  }
441
833
  /**
442
- * Check if a directory exists
834
+ * Checks if a directory exists
835
+ *
836
+ * This method verifies whether a folder exists at the specified path.
837
+ * Unlike ObjectExists, this method also checks that the item is a folder.
838
+ *
839
+ * @param directoryPath - Path to check (e.g., 'documents/reports')
840
+ * @returns A Promise that resolves to true if the directory exists, false otherwise
841
+ *
842
+ * @remarks
843
+ * - Returns false if the path exists but points to a file instead of a folder
844
+ * - Trailing slashes in the path are automatically removed
845
+ *
846
+ * @example
847
+ * ```typescript
848
+ * // Check if a directory exists before creating a file in it
849
+ * const dirExists = await storage.DirectoryExists('documents/reports');
850
+ *
851
+ * if (!dirExists) {
852
+ * // Create the directory first
853
+ * await storage.CreateDirectory('documents/reports');
854
+ * }
855
+ *
856
+ * // Now we can safely put a file in this directory
857
+ * await storage.PutObject('documents/reports/annual-summary.pdf', fileContent);
858
+ * ```
443
859
  */
444
860
  async DirectoryExists(directoryPath) {
445
861
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"DropboxFileStorage.js","sourceRoot":"","sources":["../../src/drivers/DropboxFileStorage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DropboxFileStorage.js","sourceRoot":"","sources":["../../src/drivers/DropboxFileStorage.ts"],"names":[],"mappings":"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"}