Socket
Socket
Sign inDemoInstall

@message-queue-toolkit/core

Package Overview
Dependencies
48
Maintainers
3
Versions
50
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 13.5.0 to 13.6.0

2

dist/index.d.ts

@@ -11,3 +11,3 @@ export type { QueueConsumer, AsyncPublisher, SyncPublisher, TransactionObservabilityManager, Logger, LogFn, SchemaMap, ExtraParams, } from './lib/types/MessageQueueTypes';

export { HandlerSpy } from './lib/queues/HandlerSpy';
export type { SpyResult, HandlerSpyParams, PublicHandlerSpy } from './lib/queues/HandlerSpy';
export type { SpyResultInput, HandlerSpyParams, PublicHandlerSpy } from './lib/queues/HandlerSpy';
export { MessageSchemaContainer } from './lib/queues/MessageSchemaContainer';

@@ -14,0 +14,0 @@ export type { MessageSchemaContainerOptions } from './lib/queues/MessageSchemaContainer';

import type { MetadataFiller } from '../messages/MetadataFiller';
import type { MessageMetadataType } from '../messages/baseMessageSchemas';
import type { HandlerSpy, HandlerSpyParams, PublicHandlerSpy } from '../queues/HandlerSpy';
import type { EventRegistry } from './EventRegistry';
import type { AnyEventHandler, SingleEventHandler, CommonEventDefinition, EventTypeNames, CommonEventDefinitionPublisherSchemaType } from './eventTypes';
import type { AnyEventHandler, SingleEventHandler, CommonEventDefinition, CommonEventDefinitionConsumerSchemaType, EventTypeNames, CommonEventDefinitionPublisherSchemaType } from './eventTypes';
export declare class DomainEventEmitter<SupportedEvents extends CommonEventDefinition[]> {

@@ -10,7 +11,11 @@ private readonly eventRegistry;

private readonly metadataFiller;
private _handlerSpy;
constructor({ eventRegistry, metadataFiller, }: {
eventRegistry: EventRegistry<SupportedEvents>;
metadataFiller: MetadataFiller;
}, options: {
handlerSpy?: HandlerSpy<object> | HandlerSpyParams | boolean;
});
emit<SupportedEvent extends SupportedEvents[number]>(supportedEvent: SupportedEvent, data: Omit<CommonEventDefinitionPublisherSchemaType<SupportedEvent>, 'type'>, metadata?: Partial<MessageMetadataType>): Promise<void>;
get handlerSpy(): PublicHandlerSpy<CommonEventDefinitionConsumerSchemaType<SupportedEvents[number]>>;
emit<SupportedEvent extends SupportedEvents[number]>(supportedEvent: SupportedEvent, data: Omit<CommonEventDefinitionPublisherSchemaType<SupportedEvent>, 'type'>, metadata?: Partial<MessageMetadataType>): Promise<Omit<CommonEventDefinitionConsumerSchemaType<SupportedEvent>, 'type'>>;
/**

@@ -17,0 +22,0 @@ * Register handler for a specific event

@@ -5,2 +5,3 @@ "use strict";

const node_core_1 = require("@lokalise/node-core");
const HandlerSpy_1 = require("../queues/HandlerSpy");
class DomainEventEmitter {

@@ -11,6 +12,15 @@ eventRegistry;

metadataFiller;
constructor({ eventRegistry, metadataFiller, }) {
_handlerSpy;
constructor({ eventRegistry, metadataFiller, }, options) {
this.eventRegistry = eventRegistry;
this.metadataFiller = metadataFiller;
this._handlerSpy =
(0, HandlerSpy_1.resolveHandlerSpy)(options);
}
get handlerSpy() {
if (!this._handlerSpy) {
throw new Error('HandlerSpy was not instantiated, please pass `handlerSpy` parameter during queue service creation.');
}
return this._handlerSpy;
}
async emit(supportedEvent, data, metadata) {

@@ -33,3 +43,4 @@ if (!data.timestamp) {

if (!eventHandlers && this.anyHandlers.length === 0) {
return;
// @ts-ignore
return data;
}

@@ -50,2 +61,11 @@ const validatedEvent = this.eventRegistry

}
if (this._handlerSpy) {
this._handlerSpy.addProcessedMessage({
// @ts-ignore
message: validatedEvent,
processingResult: 'consumed',
}, validatedEvent.id);
}
// @ts-ignore
return validatedEvent;
}

@@ -52,0 +72,0 @@ /**

@@ -8,2 +8,3 @@ import type { TypeOf, z } from 'zod';

import type { CommonCreationConfigType, QueuePublisherOptions } from '../types/queueOptionsTypes';
import type { PublicHandlerSpy } from './HandlerSpy';
export type MessagePublishType<T extends CommonEventDefinition> = z.infer<T['publisherSchema']>;

@@ -49,3 +50,3 @@ export type MessageSchemaType<T extends CommonEventDefinition> = z.infer<T['consumerSchema']>;

*/
handlerSpy(eventTarget: EventTargets): import("./HandlerSpy").PublicHandlerSpy<object>;
handlerSpy(eventTarget: EventTargets): PublicHandlerSpy<object>;
}
import type { MessageProcessingResult } from '../types/MessageQueueTypes';
import type { CommonQueueOptions } from '../types/queueOptionsTypes';
export type HandlerSpyParams = {
bufferSize?: number;
messageIdField?: string;
messageTypeField?: string;
};
export type SpyResult<MessagePayloadSchemas extends object> = {
export type SpyResultInput<MessagePayloadSchemas extends object> = {
message: MessagePayloadSchemas | null;
processingResult: MessageProcessingResult;
};
export type SpyResultOutput<MessagePayloadSchemas extends object> = {
message: MessagePayloadSchemas;
processingResult: MessageProcessingResult;
};
export declare function isHandlerSpy<T extends object>(value: unknown): value is HandlerSpy<T>;

@@ -20,11 +24,14 @@ export type PublicHandlerSpy<MessagePayloadSchemas extends object> = Omit<HandlerSpy<MessagePayloadSchemas>, 'addProcessedMessage'>;

private readonly messageIdField;
private readonly messageTypeField;
private readonly spyPromises;
constructor(params?: HandlerSpyParams);
private messageMatchesFilter;
waitForMessageWithId<T extends MessagePayloadSchemas>(id: string, processingResult?: MessageProcessingResult): Promise<SpyResult<T>>;
waitForMessage<T extends MessagePayloadSchemas>(fields: DeepPartial<T>, processingResult?: MessageProcessingResult): Promise<SpyResult<T>>;
waitForMessageWithId<T extends MessagePayloadSchemas>(id: string, processingResult?: MessageProcessingResult): Promise<SpyResultOutput<T>>;
waitForMessage<T extends MessagePayloadSchemas>(fields: DeepPartial<T>, processingResult?: MessageProcessingResult): Promise<SpyResultOutput<T>>;
clear(): void;
addProcessedMessage(processingResult: SpyResult<MessagePayloadSchemas>, messageId?: string): void;
addProcessedMessage(processingResult: SpyResultInput<MessagePayloadSchemas>, messageId?: string): void;
}
export declare function resolveHandlerSpy<T extends object>(queueOptions: CommonQueueOptions): HandlerSpy<T> | undefined;
export declare function resolveHandlerSpy<T extends object>(queueOptions: {
handlerSpy?: HandlerSpy<object> | HandlerSpyParams | boolean;
}): HandlerSpy<T> | undefined;
export {};

@@ -18,2 +18,3 @@ "use strict";

messageIdField;
messageTypeField;
spyPromises;

@@ -24,2 +25,4 @@ constructor(params = {}) {

this.messageIdField = params.messageIdField ?? 'id';
// @ts-ignore
this.messageTypeField = params.messageTypeField ?? 'type';
this.spyPromises = [];

@@ -60,2 +63,3 @@ }

});
// @ts-ignore
return spyPromise;

@@ -68,3 +72,4 @@ }

const resolvedMessageId = processingResult.message?.[this.messageIdField] ?? messageId ?? (0, node_crypto_1.randomUUID)();
// If we failed to parse message, let's store id at least
const resolvedMessageType = processingResult.message?.[this.messageTypeField] ?? 'FAILED_TO_RESOLVE';
// If we failed to parse message, let's store id and type at least
const resolvedProcessingResult = processingResult.message

@@ -76,2 +81,3 @@ ? processingResult

[this.messageIdField]: messageId,
[this.messageTypeField]: resolvedMessageType,
},

@@ -78,0 +84,0 @@ };

{
"name": "@message-queue-toolkit/core",
"version": "13.5.0",
"version": "13.6.0",
"private": false,

@@ -28,3 +28,3 @@ "license": "MIT",

"dependencies": {
"@lokalise/node-core": "^9.21.0",
"@lokalise/node-core": "^10.0.0",
"@message-queue-toolkit/schemas": "^1.0.0",

@@ -31,0 +31,0 @@ "fast-equals": "^5.0.1",

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc