search-kit 0.0.5 → 0.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 279ad5b4b8e9f15229118d50b0bdb3fe1a94d9bd
4
- data.tar.gz: 1ae6fc8ee661a163fdf992357806c6671d4b590d
3
+ metadata.gz: 89fef2496f759d9330f7df17d6ec51330afbf596
4
+ data.tar.gz: 2727f8d5f69e6f3455636d1416faf4392b84a660
5
5
  SHA512:
6
- metadata.gz: b836bb5c59f0cf1dfc113edfa00383f55de33c41dfee2d3b6285e5a78767458021c6eb82552465eedc2d496de2fa94487687b9c8a86b87506ad0a199a2429a7c
7
- data.tar.gz: 9878dd4bb734e3104dafd7420142e89949a9bf9404c042a34467a0b9c41767a2a471af665175145e227edeb25c04b34fad59e7ef5f374f186edc6d0d3170da32
6
+ metadata.gz: 74f6952a5d8535be3a8458cda6073f48e18ad4d2b47977350f2db8c2edd17070b4d679ab60e0a798a5ed3e1631d606602f3296bcf6d31250c262f45869eea56e
7
+ data.tar.gz: dffc422b8e0e246a32676d8c0b1bd6690ccb821a20ae81a519ba72dba9452227a3e25b9f9a78e3cebb124b72c8d7ea6e48d350e112f89629c0474018b9ca6033
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- search-kit (0.0.4)
4
+ search-kit (0.0.5)
5
5
  ansi (~> 1.5)
6
6
  faraday (~> 0.9)
7
7
  highline (~> 1.7)
@@ -9,6 +9,7 @@ module SearchKit
9
9
  autoload :Documents, 'search_kit/cli/documents'
10
10
  autoload :Events, 'search_kit/cli/events'
11
11
  autoload :Indices, 'search_kit/cli/indices'
12
+ autoload :Scaffolds, 'search_kit/cli/scaffolds'
12
13
  autoload :Search, 'search_kit/cli/search'
13
14
  autoload :Subscribers, 'search_kit/cli/subscribers'
14
15
  end
@@ -1,16 +1,14 @@
1
1
  require 'ansi'
2
+ require 'faraday'
2
3
  require 'highline'
3
- require 'thor'
4
+ require 'json'
4
5
  require 'search_kit/thor'
6
+ require 'thor'
5
7
 
6
8
  module SearchKit
7
9
  module CLI
8
10
  class All < Thor
9
11
  no_commands do
10
- def cli
11
- @cli ||= HighLine.new
12
- end
13
-
14
12
  def messages
15
13
  @messages ||= Messages.new
16
14
  end
@@ -25,6 +23,9 @@ module SearchKit
25
23
  desc "indices", "Manage your SearchKit indices"
26
24
  subcommand "indices", SearchKit::CLI::Indices
27
25
 
26
+ desc "scaffolds", "Build and populate an index in one command"
27
+ subcommand "scaffolds", SearchKit::CLI::Scaffolds
28
+
28
29
  desc "search", "Quickly search your indices"
29
30
  subcommand "search", SearchKit::CLI::Search
30
31
 
@@ -47,11 +48,11 @@ module SearchKit
47
48
 
48
49
  desc "setup", "Set up your search-kit environment"
49
50
  def setup
50
- email = cli.ask("Email: ".ansi(:cyan))
51
- password = cli.ask("Password: ".ansi(:cyan)) do |query|
52
- query.echo = '*'
53
- end
51
+ messages.info("Setting up a new SearchKit account")
52
+ messages.info("")
54
53
 
54
+ email = messages.prompt("Email: ")
55
+ password = messages.password_prompt("Password: ")
55
56
  client = SearchKit::Clients::Subscribers.new
56
57
  subscriber = client.create(email: email, password: password)
57
58
 
@@ -1,5 +1,7 @@
1
- require 'thor'
1
+ require 'faraday'
2
+ require 'json'
2
3
  require 'search_kit/thor'
4
+ require 'thor'
3
5
 
4
6
  module SearchKit
5
7
  module CLI
@@ -1,5 +1,7 @@
1
- require 'thor'
1
+ require 'faraday'
2
+ require 'json'
2
3
  require 'search_kit/thor'
4
+ require 'thor'
3
5
 
4
6
  module SearchKit
5
7
  module CLI
@@ -1,5 +1,7 @@
1
- require 'thor'
1
+ require 'faraday'
2
+ require 'json'
2
3
  require 'search_kit/thor'
4
+ require 'thor'
3
5
 
4
6
  module SearchKit
5
7
  module CLI
@@ -42,24 +44,6 @@ module SearchKit
42
44
  messages.no_service
43
45
  end
44
46
 
45
- document :scaffold
46
- def scaffold(name, json = "[]")
47
- documents = JSON.parse(json, symbolize_names: true)
48
- response = client.scaffold(name, documents)
49
-
50
- messages.info response.to_json
51
- rescue Errors::Unauthorized
52
- messages.unauthorized
53
- rescue Errors::BadRequest
54
- messages.bad_request
55
- rescue Errors::Unprocessable
56
- messages.unprocessable
57
- rescue Faraday::ConnectionFailed
58
- messages.no_service
59
- rescue JSON::ParserError
60
- messages.json_parse_error
61
- end
62
-
63
47
  document :show
64
48
  def show(slug)
65
49
  response = client.show(slug)
@@ -0,0 +1,41 @@
1
+ require 'faraday'
2
+ require 'json'
3
+ require 'search_kit/thor'
4
+ require 'thor'
5
+
6
+ module SearchKit
7
+ module CLI
8
+ class Scaffolds < Thor
9
+ namespace :scaffolds
10
+
11
+ no_commands do
12
+ def client
13
+ @client ||= SearchKit::Clients::Scaffold.new
14
+ end
15
+
16
+ def messages
17
+ @messages ||= Messages.new
18
+ end
19
+ end
20
+
21
+ document :scaffold
22
+ def create(name, json = "[]")
23
+ documents = JSON.parse(json, symbolize_names: true)
24
+ response = client.create(name, documents)
25
+
26
+ messages.info response.to_json
27
+ rescue Errors::Unauthorized
28
+ messages.unauthorized
29
+ rescue Errors::BadRequest
30
+ messages.bad_request
31
+ rescue Errors::Unprocessable
32
+ messages.unprocessable
33
+ rescue Faraday::ConnectionFailed
34
+ messages.no_service
35
+ rescue JSON::ParserError
36
+ messages.json_parse_error
37
+ end
38
+
39
+ end
40
+ end
41
+ end
@@ -1,5 +1,7 @@
1
- require 'thor'
1
+ require 'faraday'
2
+ require 'json'
2
3
  require 'search_kit/thor'
4
+ require 'thor'
3
5
 
4
6
  module SearchKit
5
7
  module CLI
@@ -1,5 +1,7 @@
1
- require 'thor'
1
+ require 'faraday'
2
+ require 'json'
2
3
  require 'search_kit/thor'
4
+ require 'thor'
3
5
 
4
6
  module SearchKit
5
7
  module CLI
@@ -15,6 +15,14 @@ module SearchKit
15
15
  Message.new(message).warn
16
16
  end
17
17
 
18
+ def prompt(message)
19
+ Message.new(message).prompt
20
+ end
21
+
22
+ def password_prompt(message)
23
+ Message.new(message).password_prompt
24
+ end
25
+
18
26
  private
19
27
 
20
28
  # Most of the logic for the Messaging module exists in this (not so)
@@ -22,10 +30,11 @@ module SearchKit
22
30
  # into the module gracefully, for example silence or logging level.
23
31
  #
24
32
  class Message
25
- attr_reader :message
33
+ attr_reader :cli, :message
26
34
 
27
35
  def initialize(message)
28
36
  @message = message
37
+ @cli = HighLine.new
29
38
  end
30
39
 
31
40
  def warn
@@ -38,6 +47,16 @@ module SearchKit
38
47
  SearchKit.logger.info message
39
48
  end
40
49
 
50
+ def prompt
51
+ cli.ask(Prefixed(message.ansi(:cyan)))
52
+ end
53
+
54
+ def password_prompt
55
+ cli.ask(Prefixed(message.ansi(:cyan))) do |prompt|
56
+ prompt.echo = '*'
57
+ end
58
+ end
59
+
41
60
  private
42
61
 
43
62
  def Prefixed(*messages)
@@ -12,7 +12,7 @@ module SearchKit
12
12
  module VERSION
13
13
  MAJOR = 0
14
14
  MINOR = 0
15
- TINY = 5
15
+ TINY = 6
16
16
  PRE = nil
17
17
 
18
18
  STRING = [ MAJOR, MINOR, TINY, PRE ].compact.join(".")
@@ -0,0 +1,11 @@
1
+ # Logfile created on 2015-11-30 12:42:55 -0600 by logger.rb/47272
2
+ I, [2015-11-30T12:42:55.270514 #92961] INFO -- : Set app_token: c40f69f3bd13fcccbeb720d17c1ca3b4
3
+ I, [2015-11-30T12:42:55.270606 #92961] INFO -- : Alright! Your search-kit install has been set up.
4
+ I, [2015-11-30T12:43:54.356117 #92994] INFO -- : Setting up a new SearchKit account
5
+ I, [2015-11-30T12:43:54.356601 #92994] INFO -- :
6
+ W, [2015-11-30T12:43:59.436064 #92994] WARN -- : translation missing: en.http.422
7
+ I, [2015-11-30T12:44:12.543394 #93023] INFO -- : Setting up a new SearchKit account
8
+ I, [2015-11-30T12:44:12.543484 #93023] INFO -- :
9
+ I, [2015-11-30T12:44:20.067541 #93023] INFO -- : Set app_token: 0c72ddb87e73b5d5bf895065117065a1
10
+ I, [2015-11-30T12:44:20.067684 #93023] INFO -- : Alright! Your search-kit install has been set up.
11
+ I, [2015-11-30T12:50:25.446874 #93385] INFO -- : {}
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: search-kit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Joseph McCormick
@@ -255,6 +255,7 @@ files:
255
255
  - lib/search_kit/cli/documents.rb
256
256
  - lib/search_kit/cli/events.rb
257
257
  - lib/search_kit/cli/indices.rb
258
+ - lib/search_kit/cli/scaffolds.rb
258
259
  - lib/search_kit/cli/search.rb
259
260
  - lib/search_kit/cli/subscribers.rb
260
261
  - lib/search_kit/clients.rb
@@ -284,10 +285,12 @@ files:
284
285
  - lib/search_kit/polling/process.rb
285
286
  - lib/search_kit/thor.rb
286
287
  - lib/search_kit/version.rb
288
+ - log/search-kit-development.log
287
289
  - log/service-layer-development.log
288
290
  - log/service-layer-test.log
289
291
  - pkg/search-kit-0.0.3.gem
290
292
  - pkg/search-kit-0.0.4.gem
293
+ - pkg/search-kit-0.0.5.gem
291
294
  - scripts/console
292
295
  - search-kit.gemspec
293
296
  - spec/integrations/subscriber_model_spec.rb