# frozen_string_literal: true require_relative "../../../boilercode" module Boilercode module Commands class Snippets class Create < Boilercode::Command def initialize(options) @options = options end def execute(input: $stdin, output: $stdout) res = client.post("/snippets", payload(@options)) if res.code == 201 response = parse_json(res) output.puts pastel.blue(link_to(response.name, response_url(response.url))) else output.puts pastel.red res end end def response_url(url) url.gsub(".json", "") end def payload(options) { snippet: { code: Clipboard.paste, language:, name: } } end def language ask("Enter the language of the snippet:") end def name ask("Enter the name of the snippet:") end end end end end