Sha256: 8d2a70f6e49bb11c9b0ac5b364fb905b03122ea29afe7a29cb3f76d54bcc339a

Contents?: true

Size: 731 Bytes

Versions: 2

Compression:

Stored size: 731 Bytes

Contents

# frozen_string_literal: true

require "sod"

module Pennyworth
  module CLI
    module Actions
      # Handles the Standard Gems action.
      class StandardGems < Sod::Action
        include Import[:kernel]

        description "Render Alfred Standard Gems script filter."

        on "--standard_gems", argument: "[KIND]", allow: %w[all default bundled], default: "all"

        def initialize(processor: Processor.for_standard_gems, **)
          super(**)
          @processor = processor
        end

        def call kind = nil
          endpoint = "#{kind || default}_gems.json"
          kernel.puts processor.call(endpoint).to_json
        end

        private

        attr_reader :processor
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
pennyworth-15.1.1 lib/pennyworth/cli/actions/standard_gems.rb
pennyworth-15.1.0 lib/pennyworth/cli/actions/standard_gems.rb