emeals 0.1.3 → 0.1.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bin/menu_to_json +8 -0
- data/emeals.gemspec +4 -2
- data/lib/emeals/json.rb +32 -0
- data/lib/emeals/menu.rb +3 -0
- data/lib/emeals/version.rb +1 -1
- metadata +23 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 72bbcfc0bf9eb42f2fd070b8145572155aecbe5a
|
4
|
+
data.tar.gz: 2898f7171af096a3f1c5a979b50882768c2ff92e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0164e07c96ff77105126b006722216583e5b5ba68718709006257411bb1f67d10c2b816182d5d37784cbd562ce90b5e01bc93368406d2830b804c375be3f9d0f
|
7
|
+
data.tar.gz: e37e6a775c9309d518b9b34d52258ae86b2e1d4fcfcf00e17c3240478c9cbbf668a9003fe9c72546f3afb3c3d9854f34b914e43f950c0beb6cb6e87462d1af46
|
data/bin/menu_to_json
ADDED
data/emeals.gemspec
CHANGED
@@ -8,9 +8,11 @@ Gem::Specification.new do |gem|
|
|
8
8
|
gem.version = Emeals::VERSION
|
9
9
|
gem.authors = ["Matt Moriarity"]
|
10
10
|
gem.email = ["matt@mattmoriarity.com"]
|
11
|
-
gem.description = %q{A client for
|
11
|
+
gem.description = %q{A client for reading eMeals menus.}
|
12
12
|
gem.summary = %q{eMeals Client}
|
13
|
-
gem.homepage = ""
|
13
|
+
gem.homepage = "https://github.com/mjm/emeals"
|
14
|
+
|
15
|
+
gem.add_runtime_dependency "multi_json"
|
14
16
|
|
15
17
|
gem.files = `git ls-files`.split($/)
|
16
18
|
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
data/lib/emeals/json.rb
ADDED
@@ -0,0 +1,32 @@
|
|
1
|
+
require 'multi_json'
|
2
|
+
|
3
|
+
module Emeals::JSON
|
4
|
+
def to_json
|
5
|
+
MultiJson.dump(meals.map { |meal| meal_json(meal) }, pretty: true)
|
6
|
+
end
|
7
|
+
|
8
|
+
private
|
9
|
+
|
10
|
+
def meal_json(meal)
|
11
|
+
{entree: dish_json(meal.entree), side: dish_json(meal.side)}
|
12
|
+
end
|
13
|
+
|
14
|
+
def dish_json(dish)
|
15
|
+
{name: dish.name, ingredients: ingredients_json(dish.ingredients), instructions: dish.instructions.join("\n")}
|
16
|
+
end
|
17
|
+
|
18
|
+
def ingredients_json(ingredients)
|
19
|
+
ingredients.map do |ing|
|
20
|
+
{amount: format_amount(ing.quantity.amount), unit: ing.quantity.unit, description: ing.description}
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
def format_amount(number)
|
25
|
+
num_str = number.to_s
|
26
|
+
if num_str.end_with? "/1"
|
27
|
+
num_str[0..-3]
|
28
|
+
else
|
29
|
+
num_str
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
data/lib/emeals/menu.rb
CHANGED
data/lib/emeals/version.rb
CHANGED
metadata
CHANGED
@@ -1,19 +1,34 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: emeals
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matt Moriarity
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-08-
|
12
|
-
dependencies:
|
13
|
-
|
11
|
+
date: 2013-08-31 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: multi_json
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - '>='
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - '>='
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
27
|
+
description: A client for reading eMeals menus.
|
14
28
|
email:
|
15
29
|
- matt@mattmoriarity.com
|
16
|
-
executables:
|
30
|
+
executables:
|
31
|
+
- menu_to_json
|
17
32
|
extensions: []
|
18
33
|
extra_rdoc_files: []
|
19
34
|
files:
|
@@ -25,10 +40,12 @@ files:
|
|
25
40
|
- LICENSE.txt
|
26
41
|
- README.md
|
27
42
|
- Rakefile
|
43
|
+
- bin/menu_to_json
|
28
44
|
- emeals.gemspec
|
29
45
|
- lib/emeals.rb
|
30
46
|
- lib/emeals/client.rb
|
31
47
|
- lib/emeals/dish.rb
|
48
|
+
- lib/emeals/json.rb
|
32
49
|
- lib/emeals/meal.rb
|
33
50
|
- lib/emeals/menu.rb
|
34
51
|
- lib/emeals/version.rb
|
@@ -40,7 +57,7 @@ files:
|
|
40
57
|
- spec/meal_parser_spec.rb
|
41
58
|
- spec/spec_helper.rb
|
42
59
|
- spec/support/templates.rb
|
43
|
-
homepage:
|
60
|
+
homepage: https://github.com/mjm/emeals
|
44
61
|
licenses: []
|
45
62
|
metadata: {}
|
46
63
|
post_install_message:
|