Automated Action 545563e776 Implement comprehensive real-time chat API with NestJS
- 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.
2025-06-21 17:13:05 +00:00
..

@jridgewell/source-map

Packages @jridgewell/trace-mapping and @jridgewell/gen-mapping into the familiar source-map API

This isn't the full API, but it's the core functionality. This wraps @jridgewell/trace-mapping and @jridgewell/gen-mapping implementations.

Installation

npm install @jridgewell/source-map

Usage

TODO

SourceMapConsumer

import { SourceMapConsumer } from '@jridgewell/source-map';
const smc = new SourceMapConsumer({
  version: 3,
  names: ['foo'],
  sources: ['input.js'],
  mappings: 'AAAAA',
});

SourceMapConsumer.fromSourceMap(mapGenerator[, mapUrl])

Transforms a SourceMapGenerator into a SourceMapConsumer.

const smg = new SourceMapGenerator();

const smc = SourceMapConsumer.fromSourceMap(map);
smc.originalPositionFor({ line: 1, column: 0 });

SourceMapConsumer.prototype.originalPositionFor(generatedPosition)

const smc = new SourceMapConsumer(map);
smc.originalPositionFor({ line: 1, column: 0 });

SourceMapConsumer.prototype.mappings

const smc = new SourceMapConsumer(map);
smc.mappings; // AAAA

SourceMapConsumer.prototype.allGeneratedPositionsFor(originalPosition)

const smc = new SourceMapConsumer(map);
smc.allGeneratedpositionsfor({ line: 1, column: 5, source: "baz.ts" });
// [
//   { line: 2, column: 8 }
// ]

SourceMapConsumer.prototype.eachMapping(callback[, context[, order]])

This implementation currently does not support the "order" parameter. This function can only iterate in Generated order.

const smc = new SourceMapConsumer(map);
smc.eachMapping((mapping) => {
// { source: 'baz.ts',
//   generatedLine: 4,
//   generatedColumn: 5,
//   originalLine: 4,
//   originalColumn: 5,
//   name: null }
});

SourceMapConsumer.prototype.generatedPositionFor(originalPosition)

const smc = new SourceMapConsumer(map);
smc.generatedPositionFor({ line: 1, column: 5, source: "baz.ts" });
// { line: 2, column: 8 }

SourceMapConsumer.prototype.hasContentsOfAllSources()

const smc = new SourceMapConsumer(map);
smc.hasContentsOfAllSources();
// true

SourceMapConsumer.prototype.sourceContentFor(source[, returnNullOnMissing])

const smc = new SourceMapConsumer(map);
smc.generatedPositionFor("baz.ts");
// "export default ..."

SourceMapConsumer.prototype.version

Returns the source map's version

SourceMapGenerator

import { SourceMapGenerator } from '@jridgewell/source-map';
const smg = new SourceMapGenerator({
  file: 'output.js',
  sourceRoot: 'https://example.com/',
});

SourceMapGenerator.fromSourceMap(map)

Transform a SourceMapConsumer into a SourceMapGenerator.

const smc = new SourceMapConsumer();
const smg = SourceMapGenerator.fromSourceMap(smc);

SourceMapGenerator.prototype.applySourceMap(sourceMapConsumer[, sourceFile[, sourceMapPath]])

This method is not implemented yet

SourceMapGenerator.prototype.addMapping(mapping)

const smg = new SourceMapGenerator();
smg.addMapping({
  generated: { line: 1, column: 0 },
  source: 'input.js',
  original: { line: 1, column: 0 },
  name: 'foo',
});

SourceMapGenerator.prototype.setSourceContent(sourceFile, sourceContent)

const smg = new SourceMapGenerator();
smg.setSourceContent('input.js', 'foobar');

SourceMapGenerator.prototype.toJSON()

const smg = new SourceMapGenerator();
smg.toJSON(); // { version: 3, names: [], sources: [], mappings: '' }

SourceMapGenerator.prototype.toString()

const smg = new SourceMapGenerator();
smg.toJSON(); // "{version:3,names:[],sources:[],mappings:''}"

SourceMapGenerator.prototype.toDecodedMap()

const smg = new SourceMapGenerator();
smg.toDecodedMap(); // { version: 3, names: [], sources: [], mappings: [] }

Known differences with other implementations

This implementation has some differences with source-map and source-map-js.

  • SourceMapConsumer.prototype.eachMapping()
    • Does not support the order argument
  • SourceMapGenerator.prototype.applySourceMap()
    • Not implemented