def op

ezmcp@0.1.0.0 · src/openapi.bend:979

import ezmcp@0.1.0.0/src/openapi.bend as Openapi
import Base
import emerging-ezjson@1.2.0.0/main.bend as Json
import emerging-ezjson@1.2.0.0/src/value.bend as Value

979# one operation of a Path Item at `path`, `oper` its Operation Object, its
980# references followed in `doc`, after the Path Item's parameters `ips`
981def op(
982  +doc: Value.Json,
983  +path: String,
984  +method: String,
985  ips: List<&2, Value.Json>,
986  +oper: Value.Json
987) -> Op:
988  +ps = params.merge(Json.items(dereferenced(doc,
989    Json.get(oper, "parameters"))), ips)
990  +rb = dereferenced(doc, Json.get(oper, "requestBody"))
991  +mt = media.of(rb, Json.is_obj(rb))
992  Op{name.of(Json.as_str(Json.get(oper, "operationId")), method, path),
993    describe(Json.as_str(Json.get(oper, "description")),
994      Json.as_str(Json.get(oper, "summary")), method, path),
995    input.of(input.body(rb, mt, input.params(ps, In{[], []}))),
996    String.to_upper(method), path, params.of(ps), mt}

Uses (19)

Used by (1)