Sha256: 3252d7625de217022c1db1390d1888eab8eb98a73e27c0ef83ee005c52a10e9d

Contents?: true

Size: 1.25 KB

Versions: 1

Compression:

Stored size: 1.25 KB

Contents

#!/usr/bin/env ruby

require 'pickpocket'

require 'thor'

class PickpocketCLI < Thor
  package_name 'Pickpocket'

  desc 'oauth', '1st authorization step: ask Pocket to allow Pickpocket app'
  def oauth
    oauth = Pickpocket::Authentication::Oauth.new
    oauth.request_authorization
  end

  desc 'authorize', '2nd authorization step: allow Pickpocket read/write access to your library'
  def authorize
    oauth = Pickpocket::Authentication::Oauth.new
    oauth.authorize
  end

  desc 'pick', 'Picks a random article from your library (marking it as read)'
  method_option :quantity, aliases: '-q', banner: '1', desc: 'Quantity of articles to open', type: :numeric, default: 1
  def pick
    quantity = options[:quantity].to_i

    library = Pickpocket::Articles::Library.new
    library.pick(quantity)
  end

  desc 'renew', 'Syncs your local library with your Pocket. It will delete read articles and download new articles from your library'
  def renew
    library = Pickpocket::Articles::Library.new
    library.renew
    library.stats
  end

  desc 'stats', 'Show the number of read/unread articles you have on your local library'
  def stats
    library = Pickpocket::Articles::Library.new
    library.stats
  end
  map status: :stats
end

PickpocketCLI.start(ARGV)

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
pick-pocket-0.2.4 bin/pickpocket