UNPKG

@thisisagile/easy-service

Version:

Straightforward library for building domain-driven microservice architectures

31 lines (30 loc) 1.18 kB
// src/http/Verb.ts import { meta, CacheControl, ContentType, HttpStatus, HttpVerb } from "@thisisagile/easy"; var toVerbOptions = (options) => ({ onOk: options?.onOk ?? HttpStatus.Ok, onNotFound: options?.onNotFound ?? HttpStatus.NotFound, onError: options?.onError ?? HttpStatus.BadRequest, type: options?.type ?? ContentType.Json, cache: options?.cache ?? CacheControl.disabled() }); var toVerb = (verb, options) => (subject, property) => { meta(subject).property(property).set("verb", { verb, options }); }; var get = (options) => toVerb(HttpVerb.Get, options); var search = (options) => toVerb(HttpVerb.Get, { onNotFound: HttpStatus.Ok, ...options }); var put = (options) => toVerb(HttpVerb.Put, options); var patch = (options) => toVerb(HttpVerb.Patch, options); var post = (options) => toVerb(HttpVerb.Post, { onOk: HttpStatus.Created, ...options }); var del = (options) => toVerb(HttpVerb.Delete, { onOk: HttpStatus.NoContent, ...options }); var stream = (options) => toVerb(HttpVerb.Get, { type: ContentType.Stream, ...options }); export { toVerbOptions, get, search, put, patch, post, del, stream }; //# sourceMappingURL=chunk-W62PBGRF.mjs.map