/
githubmirror
/
novu
Обзор
Документация
Войти
/
githubmirror
/
novu
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
next
libs/internal-sdk/src/react-query/trigger.ts
118 строк
3 KB
Dima Grossman
chore(root): sdk gen version update for latest internal sdk changes (#10651)
10 апр 2026, 16:36
Не верифицирован
10 апр 2026, 16:36
b5e0674
Код
Авторство
О чём код?
/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import { MutationKey, useMutation, UseMutationResult, } from "@tanstack/react-query"; import { NovuCore } from "../core.js"; import { trigger } from "../funcs/trigger.js"; import { combineSignals } from "../lib/primitives.js"; import { RequestOptions } from "../lib/sdks.js"; import * as components from "../models/components/index.js"; import { ConnectionError, InvalidRequestError, RequestAbortedError, RequestTimeoutError, UnexpectedClientError, } from "../models/errors/httpclienterrors.js"; import * as errors from "../models/errors/index.js"; import { NovuError } from "../models/errors/novuerror.js"; import { ResponseValidationError } from "../models/errors/responsevalidationerror.js"; import { SDKValidationError } from "../models/errors/sdkvalidationerror.js"; import * as operations from "../models/operations/index.js"; import { unwrapAsync } from "../types/fp.js"; import { useNovuContext } from "./_context.js"; import { MutationHookOptions } from "./_types.js"; export type TriggerMutationVariables = { triggerEventRequestDto: components.TriggerEventRequestDto; idempotencyKey?: string | undefined; options?: RequestOptions; }; export type TriggerMutationData = operations.EventsControllerTriggerResponse; export type TriggerMutationError = | errors.PayloadValidationExceptionDto | errors.ErrorDto | errors.ValidationErrorDto | NovuError | ResponseValidationError | ConnectionError | RequestAbortedError | RequestTimeoutError | InvalidRequestError | UnexpectedClientError | SDKValidationError; /** * Trigger event * * @remarks * * Trigger event is the main (and only) way to send notifications to subscribers. The trigger identifier is used to match the particular workflow associated with it. Maximum number of recipients can be 100. Additional information can be passed according the body interface below. * To prevent duplicate triggers, you can optionally pass a **transactionId** in the request body. If the same **transactionId** is used again, the trigger will be ignored. The retention period depends on your billing tier. */ export function useTriggerMutation( options?: MutationHookOptions< TriggerMutationData, TriggerMutationError, TriggerMutationVariables >, ): UseMutationResult< TriggerMutationData, TriggerMutationError, TriggerMutationVariables > { const client = useNovuContext(); return useMutation({ ...buildTriggerMutation(client, options), ...options, }); } export function mutationKeyTrigger(): MutationKey { return ["@novu/api", "trigger"]; } export function buildTriggerMutation( client$: NovuCore, hookOptions?: RequestOptions, ): { mutationKey: MutationKey; mutationFn: ( variables: TriggerMutationVariables, ) => Promise<TriggerMutationData>; } { return { mutationKey: mutationKeyTrigger(), mutationFn: function triggerMutationFn({ triggerEventRequestDto, idempotencyKey, options, }): Promise<TriggerMutationData> { const mergedOptions = { ...hookOptions, ...options, fetchOptions: { ...hookOptions?.fetchOptions, ...options?.fetchOptions, signal: combineSignals( hookOptions?.fetchOptions?.signal, options?.fetchOptions?.signal, ), }, }; return unwrapAsync(trigger( client$, triggerEventRequestDto, idempotencyKey, mergedOptions, )); }, }; }