using Jtr.Tools.API.Requests; using Microsoft.AspNetCore.Mvc; namespace Jtr.Tools.API.Controllers; [ApiController] [Route("api/[controller]")] public class TransformController : ControllerBase { [HttpPost("uglify")] public IActionResult Uglify([FromBody] UglifyRequest request) { var context = new JsonFormatter.Context { Beautify = false }; var result = JsonFormatter.Format(request.Source, context); return Ok(new { Result = result }); } [HttpPost("beautify")] public IActionResult Beautify([FromBody] BeautifyRequest request) { var context = new JsonFormatter.Context { Beautify = true, IndentSize = request.IndentSize }; var result = JsonFormatter.Format(request.Source, context); return Ok(new { Result = result }); } [HttpPost("json2csharp")] public IActionResult Json2CSharp([FromBody] Json2CsharpRequest request) { var context = new Json2CSharpTranslator.Context { RootClassName = request.RootClassName, Namespace = request.Namespace, }; var result = Json2CSharpTranslator.Translate(request.Source, context); return Ok(new { Result = result }); } [HttpPost("jsonpath")] public IActionResult JsonPath([FromBody] JsonPathRequest request) { var result = Tools.JsonPath.Interpreter.Evaluate(request.Source, request.Path); return Ok(new { Result = JsonFormatter.Format(result, new() { Beautify = true }) }); } }