
- Complete NestJS TypeScript implementation with WebSocket support - Direct messaging (DM) and group chat functionality - End-to-end encryption with AES encryption and key pairs - Media file support (images, videos, audio, documents) up to 100MB - Push notifications with Firebase Cloud Messaging integration - Mention alerts and real-time typing indicators - User authentication with JWT and Passport - SQLite database with TypeORM entities and relationships - Comprehensive API documentation with Swagger/OpenAPI - File upload handling with secure access control - Online/offline status tracking and presence management - Message editing, deletion, and reply functionality - Notification management with automatic cleanup - Health check endpoint for monitoring - CORS configuration for cross-origin requests - Environment-based configuration management - Structured for Flutter SDK integration Features implemented: ✅ Real-time messaging with Socket.IO ✅ User registration and authentication ✅ Direct messages and group chats ✅ Media file uploads and management ✅ End-to-end encryption ✅ Push notifications ✅ Mention alerts ✅ Typing indicators ✅ Message read receipts ✅ Online status tracking ✅ File access control ✅ Comprehensive API documentation Ready for Flutter SDK development and production deployment.
70 lines
1.4 KiB
Markdown
70 lines
1.4 KiB
Markdown
# @npmcli/move-file
|
|
|
|
A fork of [move-file](https://github.com/sindresorhus/move-file) with
|
|
compatibility with all node 10.x versions.
|
|
|
|
> Move a file (or directory)
|
|
|
|
The built-in
|
|
[`fs.rename()`](https://nodejs.org/api/fs.html#fs_fs_rename_oldpath_newpath_callback)
|
|
is just a JavaScript wrapper for the C `rename(2)` function, which doesn't
|
|
support moving files across partitions or devices. This module is what you
|
|
would have expected `fs.rename()` to be.
|
|
|
|
## Highlights
|
|
|
|
- Promise API.
|
|
- Supports moving a file across partitions and devices.
|
|
- Optionally prevent overwriting an existing file.
|
|
- Creates non-existent destination directories for you.
|
|
- Support for Node versions that lack built-in recursive `fs.mkdir()`
|
|
- Automatically recurses when source is a directory.
|
|
|
|
## Install
|
|
|
|
```
|
|
$ npm install @npmcli/move-file
|
|
```
|
|
|
|
## Usage
|
|
|
|
```js
|
|
const moveFile = require('@npmcli/move-file');
|
|
|
|
(async () => {
|
|
await moveFile('source/unicorn.png', 'destination/unicorn.png');
|
|
console.log('The file has been moved');
|
|
})();
|
|
```
|
|
|
|
## API
|
|
|
|
### moveFile(source, destination, options?)
|
|
|
|
Returns a `Promise` that resolves when the file has been moved.
|
|
|
|
### moveFile.sync(source, destination, options?)
|
|
|
|
#### source
|
|
|
|
Type: `string`
|
|
|
|
File, or directory, you want to move.
|
|
|
|
#### destination
|
|
|
|
Type: `string`
|
|
|
|
Where you want the file or directory moved.
|
|
|
|
#### options
|
|
|
|
Type: `object`
|
|
|
|
##### overwrite
|
|
|
|
Type: `boolean`\
|
|
Default: `true`
|
|
|
|
Overwrite existing destination file(s).
|