v1.3.1
This commit is contained in:
47
readme.md
47
readme.md
@@ -135,6 +135,53 @@ await fs.directory('/path/to/dir')
|
||||
const exists = await fs.directory('/path/to/dir').exists();
|
||||
```
|
||||
|
||||
### 📁 Directory Copy & Move
|
||||
|
||||
Copy or move entire directory trees with fine-grained control:
|
||||
|
||||
```typescript
|
||||
// Basic copy - copies all files recursively
|
||||
await fs.directory('/source').copy('/destination');
|
||||
|
||||
// Basic move - moves directory to new location
|
||||
await fs.directory('/old-location').move('/new-location');
|
||||
|
||||
// Copy with options
|
||||
await fs.directory('/source')
|
||||
.filter(/\.ts$/) // Only copy TypeScript files
|
||||
.overwrite(true) // Overwrite existing files
|
||||
.preserveTimestamps(true) // Keep original timestamps
|
||||
.copy('/destination');
|
||||
|
||||
// Copy all files (ignore filter setting)
|
||||
await fs.directory('/source')
|
||||
.filter('*.ts')
|
||||
.applyFilter(false) // Ignore filter, copy everything
|
||||
.copy('/destination');
|
||||
|
||||
// Handle target directory conflicts
|
||||
await fs.directory('/source')
|
||||
.onConflict('merge') // Default: merge contents
|
||||
.copy('/destination');
|
||||
|
||||
await fs.directory('/source')
|
||||
.onConflict('error') // Throw if target exists
|
||||
.copy('/destination');
|
||||
|
||||
await fs.directory('/source')
|
||||
.onConflict('replace') // Delete target first, then copy
|
||||
.copy('/destination');
|
||||
```
|
||||
|
||||
**Configuration Options:**
|
||||
| Method | Default | Description |
|
||||
|--------|---------|-------------|
|
||||
| `filter(pattern)` | none | Filter files by glob, regex, or function |
|
||||
| `applyFilter(bool)` | `true` | Whether to apply filter during copy/move |
|
||||
| `overwrite(bool)` | `false` | Overwrite existing files at destination |
|
||||
| `preserveTimestamps(bool)` | `false` | Preserve original file timestamps |
|
||||
| `onConflict(mode)` | `'merge'` | `'merge'`, `'error'`, or `'replace'` |
|
||||
|
||||
### 🔐 Tree Hashing (Cache-Busting)
|
||||
|
||||
Compute a deterministic hash of all files in a directory - perfect for cache invalidation:
|
||||
|
||||
Reference in New Issue
Block a user