veda-apps 0.0.1 → 0.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +1 -1
- data/Gemfile.lock +14 -8
- data/README.md +2 -2
- data/bin/veda +81 -15
- data/lib/Multimedia.rb +5 -0
- data/lib/Qr.rb +16 -16
- data/lib/config.json +7 -0
- data/lib/fetcher.rb +16 -0
- data/lib/parser.rb +206 -0
- data/lib/veda/version.rb +1 -1
- data/veda.gemspec +1 -1
- metadata +6 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1616e793f238922a2db418b1a5eaba5ae0a5198f
|
4
|
+
data.tar.gz: ba1097a4e4bbea941522e53b4e4c9eaea664c6e2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6eca968e57a4253194d8cd83ae191f2a7b7f6d665ce4102a103f4709430c5b5d30ae8f4fde31403a3af24ba21c19705533269cc854026ae36a7b44c755e69f75
|
7
|
+
data.tar.gz: 93dd3436c5c51cd41bbc1f1bd3127690210deff56828daf08eadf8a985d3a79dd5a41c585ad4c3e7d20a3f081899827daf662bff5d33a4a45b48053affd2b68d
|
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -18,7 +18,6 @@ GEM
|
|
18
18
|
builder (3.2.3)
|
19
19
|
childprocess (0.8.0)
|
20
20
|
ffi (~> 1.0, >= 1.0.11)
|
21
|
-
coderay (1.1.1)
|
22
21
|
contracts (0.16.0)
|
23
22
|
cucumber (3.1.0)
|
24
23
|
builder (>= 2.1.2)
|
@@ -37,33 +36,40 @@ GEM
|
|
37
36
|
cucumber-tag_expressions (1.1.1)
|
38
37
|
cucumber-wire (0.0.1)
|
39
38
|
diff-lcs (1.3)
|
39
|
+
domain_name (0.5.20160128)
|
40
|
+
unf (>= 0.0.5, < 1.0.0)
|
40
41
|
ffi (1.9.18)
|
41
42
|
gherkin (5.0.0)
|
42
43
|
gli (2.17.1)
|
43
|
-
|
44
|
+
http-cookie (1.0.2)
|
45
|
+
domain_name (~> 0.5)
|
46
|
+
mime-types (2.99)
|
44
47
|
multi_json (1.13.1)
|
45
48
|
multi_test (0.1.2)
|
46
|
-
|
47
|
-
coderay (~> 1.1.0)
|
48
|
-
method_source (~> 0.8.1)
|
49
|
-
slop (~> 3.4)
|
49
|
+
netrc (0.11.0)
|
50
50
|
rake (12.3.0)
|
51
51
|
rdoc (6.0.1)
|
52
|
+
rest-client (1.8.0)
|
53
|
+
http-cookie (>= 1.0.2, < 2.0)
|
54
|
+
mime-types (>= 1.16, < 3.0)
|
55
|
+
netrc (~> 0.7)
|
52
56
|
rspec-expectations (3.7.0)
|
53
57
|
diff-lcs (>= 1.2.0, < 2.0)
|
54
58
|
rspec-support (~> 3.7.0)
|
55
59
|
rspec-support (3.7.0)
|
56
|
-
slop (3.6.0)
|
57
60
|
thor (0.20.0)
|
61
|
+
unf (0.1.4)
|
62
|
+
unf_ext
|
63
|
+
unf_ext (0.0.7.2)
|
58
64
|
|
59
65
|
PLATFORMS
|
60
66
|
ruby
|
61
67
|
|
62
68
|
DEPENDENCIES
|
63
69
|
aruba
|
64
|
-
pry
|
65
70
|
rake
|
66
71
|
rdoc
|
72
|
+
rest-client
|
67
73
|
veda!
|
68
74
|
|
69
75
|
BUNDLED WITH
|
data/README.md
CHANGED
@@ -20,11 +20,11 @@ This will generate three files in the folder containing the viewcontroller.swift
|
|
20
20
|
|
21
21
|
Add files to your xcode project.
|
22
22
|
|
23
|
-
|
23
|
+
[Add files to your project like this](https://lh3.googleusercontent.com/yfMZKNaGzODzaQRtyGwUPJpRrhohbxheezgS04VRUeHvq3j9OgPrHnIDC_wNQTnSpv-S03OEPISFTEEVjl6WDmx3l-bMwmi0xNTYMgR-jgvHpy4sYRxBDUsl1SiNLPFJzDgz6ZUX9GaDQpwNLSqjXq5wFTE_O4TNgha_tHr1XI3eJu39wt5EX4HMWWKefzDKaOSac5OtEGUwZ_-LTju2J-3zMyD4q2tnbQ_uv853CCUWjqjcLOQ-6zsJYH9pJkf75yNsWV9We0-9kNKwCbPrEX6x-rdPux35dNTKmz5eC6czJo8ONgsmI2trfSxTN9ZCLIJ1YJP94RwdKlY-MtWpFdjZuqA3QGzB5rFIB98NkRqHx0hKk9UxP7QBYxeWl13O-Dd_RZJSNPn4gYXfav6SJbqvwd9HUv8uKCpCGAtn0QaK9YUZ6U9qHlBPTKfd74CmHB0aY-KQ4kc99a6h-SGMH72ARlkTe83__qgQyphwuPcU6rRn36ScNSxxwGkLZzzWwNkM8t7X1Fh7OGeN9WQ1E5oNxPzzwmJiP5S8e6ep6Rm2ISA7nb8qcHdyBLEj1QIcDAaIPYaxEuHfXVOMb2HtFXjrMVNP2BUVLzTPbWk=w340-h475-no)
|
24
24
|
|
25
25
|
Add three files generated.
|
26
26
|
|
27
|
-
|
27
|
+
[Files after added.](https://lh3.googleusercontent.com/2i-K6a8L-snz5FEWeua32K3bAezDJhsHvXlLXK3sDTZsrXNYOSi7WAO14txD4aPbjI8XHs75vg5y6TCt_E1DUafbMD9-wxMAp1pvcVXt_zDJSvSJkxZmd5m0Xa8Ht-hj7PENwViavB_7QLzrLlrQ9vE4rWcvRYMYiVxO3QkdqSle_0xlm_mUwyzivZzGIazj2GD6nM88kMEBn6fCoImIxeGF8Q1C4c_aZKi_7PsBDIaKN-NS5Uz_PoVZVudt5XPIP-vhzSOmx4shZ_OajX8nctjVwVbpJdSXMCig2MSX3EAuWZlzmYxbO0viM3qmU9U75kmzgKWVsceB3Izqbv0Xh7CyHhvaS1wtEKvT48LKRzImZgsRbUqTitFwIspdJ18rfuXIodZwmquXcRu3K_YxGGXiMozdW2MnE_K780-IW6BDO786TK2ACbVLQmZY0RBxj2-AsTfwW0mhIK9gn6OLBpltF924au8U_TaTbPRVXt_2PRFCH7CspogICbP3qO8_s8_6BnS1lGv5fx_RpqmarZta6D8bsH31YGdqFKf84qHhvhlrA4f5yhtJOhe9l6v2uv8LngCf6Hz_c-bWXfsve4wBphwCdYk_StILGJg=w262-h102-no)
|
28
28
|
|
29
29
|
|
30
30
|
**At the End of Your viewcontroller, extension where function to open the qr scanner is Automatically added.**
|
data/bin/veda
CHANGED
@@ -2,7 +2,10 @@
|
|
2
2
|
require 'gli'
|
3
3
|
begin # XXX: Remove this begin/rescue before distributing your app
|
4
4
|
require 'veda'
|
5
|
-
require '
|
5
|
+
require 'qR'
|
6
|
+
# require "parser.rb"
|
7
|
+
require 'parser'
|
8
|
+
|
6
9
|
|
7
10
|
rescue LoadError
|
8
11
|
STDERR.puts "In development, you need to use `bundle exec bin/veda` to run your app"
|
@@ -13,25 +16,88 @@ end
|
|
13
16
|
|
14
17
|
include GLI::App
|
15
18
|
# inclu
|
19
|
+
subcommand_option_handling :normal
|
20
|
+
|
16
21
|
|
22
|
+
desc "Generators for swift model form json, qr scanner, and many more"
|
17
23
|
command :generate do |c|
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
24
|
+
c.desc "Generates model for swift from config file or json file"
|
25
|
+
c.command :model do |m|
|
26
|
+
m.switch [:r, :realm, 'option_to_generate_models_for_realm']
|
27
|
+
m.flag [:f, :file, 'file_path_to_json']
|
28
|
+
|
29
|
+
# creates config.json
|
30
|
+
m.desc 'generates config.json file at working directory'
|
31
|
+
m.command :config do |config|
|
32
|
+
config.flag [:path, :p]
|
33
|
+
config.action do |global_options, options, args|
|
34
|
+
root = File.expand_path '../..', __FILE__ #todo make file handler class
|
35
|
+
file_name = "config.json"
|
36
|
+
src_path = root + "/lib/#{file_name}"
|
37
|
+
dest_path = Dir.pwd
|
38
|
+
if File.exist?(dest_path + "/" + "#{file_name}")
|
39
|
+
puts " #{file_name} already exists in #{dest_path }"
|
40
|
+
else
|
41
|
+
puts "creating config file in #{dest_path}"
|
42
|
+
FileUtils.cp(src_path, dest_path)
|
43
|
+
puts "created #{file_name} to #{dest_path}"
|
44
|
+
end
|
30
45
|
end
|
46
|
+
end
|
31
47
|
|
48
|
+
#create model
|
49
|
+
m.action do |global_options, options, args|
|
50
|
+
if options[:f]
|
51
|
+
filepath = options[:f]
|
52
|
+
puts filepath
|
53
|
+
if File.exist?(filepath)
|
54
|
+
puts "creating parser with file #{filepath} and #{options[:realm]}"
|
55
|
+
parser = Parser.new filepath, options[:realm]
|
56
|
+
parser.parse!
|
57
|
+
else
|
58
|
+
puts "cannot find file: #{filepath}"
|
59
|
+
puts "use: 'veda generate model config' to generate the configuration file at working directory."
|
60
|
+
end
|
61
|
+
elsif
|
62
|
+
config_path = Dir.pwd + "/" + "config.json"
|
63
|
+
if File.exist?config_path
|
64
|
+
puts "loading parser with config.json and realm = #{options[:realm]}"
|
65
|
+
parser = Parser.new config_path, options[:realm]
|
66
|
+
parser.load_from_config config_path
|
67
|
+
else
|
68
|
+
# create a parser
|
69
|
+
puts "file does not exists: #{config_path}"
|
70
|
+
puts "use: \n 'veda generate model config' \n to generate the configuration file at working directory."
|
71
|
+
end
|
72
|
+
end
|
32
73
|
end
|
33
74
|
end
|
34
75
|
|
76
|
+
c.desc 'generates qrScanner at path specified after -f flag'
|
77
|
+
c.command :qr do |q|
|
78
|
+
q.flag [:f,:filename,'file_path_for_viewcontroller']
|
79
|
+
q.action do |global_options, options, args|
|
80
|
+
path = options[:f]
|
81
|
+
if path.nil?
|
82
|
+
puts "\nERROR: No file path given. \n HINT: veda generate qr -f path_to_viewController.swift_file"
|
83
|
+
else
|
84
|
+
if File.file?(path)
|
85
|
+
generate_qr path
|
86
|
+
else
|
87
|
+
raise "#{path}. File does not exist."
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
91
|
+
end
|
92
|
+
|
93
|
+
desc 'genefates multimedia at specified path'
|
94
|
+
c.command :mm do |m|
|
95
|
+
m.action do |global_options, opotions, args|
|
96
|
+
puts 'multimedia file'
|
97
|
+
end
|
98
|
+
end
|
99
|
+
end
|
100
|
+
|
35
101
|
|
36
102
|
on_error do |exception|
|
37
103
|
# puts 'error occured'
|
@@ -43,7 +109,7 @@ def generate_qr path
|
|
43
109
|
qr.generate_qr path
|
44
110
|
end
|
45
111
|
|
112
|
+
def generate_multimedia
|
46
113
|
|
47
|
-
|
48
|
-
|
114
|
+
end
|
49
115
|
exit run(ARGV)
|
data/lib/Multimedia.rb
ADDED
data/lib/Qr.rb
CHANGED
@@ -39,22 +39,22 @@ module QR
|
|
39
39
|
|
40
40
|
def extension name
|
41
41
|
extension = <<-EOS
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
42
|
+
extension #{name} {
|
43
|
+
\tfunc scan() {
|
44
|
+
\t\tself.openVedaQRScanner(source: self) { (viewcontroller, string) in
|
45
|
+
\t\tlet qrString = string
|
46
|
+
\t\tprint(qrString)
|
47
|
+
\t\t}
|
48
|
+
\t}
|
49
|
+
|
50
|
+
\tfunc openVedaQRScanner(source: UIViewController, completion: @escaping (VedaQRScannerViewController, String)->()) {
|
51
|
+
\t\tif let vc = UIStoryboard(name: "VedaQR", bundle: nil).instantiateInitialViewController() as? VedaQRScannerViewController {
|
52
|
+
\t\t\tvc.onObtained = completion
|
53
|
+
\t\t\tsource.present(vc, animated: true, completion: nil)
|
54
|
+
\t\t}
|
55
|
+
\t}
|
56
|
+
}
|
57
|
+
EOS
|
58
58
|
end
|
59
59
|
end
|
60
60
|
end
|
data/lib/config.json
ADDED
data/lib/fetcher.rb
ADDED
data/lib/parser.rb
ADDED
@@ -0,0 +1,206 @@
|
|
1
|
+
require 'json'
|
2
|
+
require 'rest-client'
|
3
|
+
require 'uri'
|
4
|
+
|
5
|
+
|
6
|
+
class String
|
7
|
+
def camelize
|
8
|
+
splitted = self.split('_')
|
9
|
+
camel_text = splitted[1..-1].collect(&:capitalize).join
|
10
|
+
camel_text = splitted.first.nil? ? self : (splitted.first + camel_text)
|
11
|
+
camel_text.unHyphoniezed
|
12
|
+
end
|
13
|
+
|
14
|
+
def unHyphoniezed
|
15
|
+
splitted = self.split('-')
|
16
|
+
camel_text = splitted[1..-1].collect(&:capitalize).join
|
17
|
+
splitted.first.nil? ? self : (splitted.first + camel_text)
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
class Parser
|
22
|
+
def initialize path, realm=false
|
23
|
+
json = File.read(path)
|
24
|
+
@json = JSON.parse(json)
|
25
|
+
@realm = realm
|
26
|
+
@parsed = {}
|
27
|
+
end
|
28
|
+
|
29
|
+
def load_from_config path
|
30
|
+
config = File.read(path)
|
31
|
+
config_json = JSON.parse(config)
|
32
|
+
@url = config_json["url"]
|
33
|
+
@headers = config_json["headers"]
|
34
|
+
if @url =~ URI::regexp
|
35
|
+
self.fetch!
|
36
|
+
else
|
37
|
+
puts "ERROR: URL in config.json is not valid. please add valid url."
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
def fetch!
|
42
|
+
puts 'fetching'
|
43
|
+
json = RestClient.get(@url, headers = @headers)
|
44
|
+
puts 'fetched'
|
45
|
+
@json = JSON.parse(json)
|
46
|
+
self.parse!
|
47
|
+
end
|
48
|
+
|
49
|
+
|
50
|
+
def attribute_type attribute
|
51
|
+
result = ""
|
52
|
+
if attribute.is_a? String
|
53
|
+
result = "String"
|
54
|
+
elsif attribute.is_a? Integer
|
55
|
+
result = "Int"
|
56
|
+
elsif attribute.is_a? Float
|
57
|
+
result = "Double"
|
58
|
+
elsif !!attribute == attribute
|
59
|
+
result = "Bool"
|
60
|
+
end
|
61
|
+
result
|
62
|
+
end
|
63
|
+
|
64
|
+
def create_file filename, content
|
65
|
+
_filename = filename + ".swift"
|
66
|
+
File.open(_filename, "w") do |file|
|
67
|
+
file.write content
|
68
|
+
puts "created file #{_filename}"
|
69
|
+
end
|
70
|
+
# end
|
71
|
+
end
|
72
|
+
|
73
|
+
def get_attribute_literal_prefix
|
74
|
+
@realm ? "@objc dynamic " : ""
|
75
|
+
end
|
76
|
+
|
77
|
+
def get_array_attribute_literal type
|
78
|
+
@realm ? " = List<#{type.capitalize.camelize}>()" : ": [#{type.capitalize}] = []"
|
79
|
+
end
|
80
|
+
|
81
|
+
def get_array_mapping_literal type
|
82
|
+
@realm ? "(map[\"#{type}\"], ListTransform<#{type.capitalize.camelize}>())" : "map[\"#{type}\"]"
|
83
|
+
end
|
84
|
+
|
85
|
+
def generate_attributes_literals json
|
86
|
+
swiftClassAttributes = []
|
87
|
+
swiftClass = ""
|
88
|
+
if json.is_a? Hash
|
89
|
+
json.each do |key, value|
|
90
|
+
if !(value.is_a? Array) && !(value.is_a? Hash)
|
91
|
+
# string = "#{get_attribute_literal_prefix}var #{key}: #{attribute_type value} = #{default_value value}\n"
|
92
|
+
# swiftClass = swiftClass + string
|
93
|
+
attribute = Attribute.new(key, "#{attribute_type value}")
|
94
|
+
swiftClassAttributes.push(attribute)
|
95
|
+
elsif value.is_a? Hash
|
96
|
+
newSwiftClass = generate_attributes_literals value
|
97
|
+
@parsed.store(key.capitalize.camelize, newSwiftClass)
|
98
|
+
# string = "#{get_attribute_literal_prefix}var #{key}: #{key.capitalize}?\n"
|
99
|
+
# swiftClass = swiftClass + string
|
100
|
+
attribute = Attribute.new(key, "#{key}")
|
101
|
+
swiftClassAttributes.push(attribute)
|
102
|
+
elsif value.is_a? Array
|
103
|
+
if value.first.is_a? Hash
|
104
|
+
newSwiftClass = generate_attributes_literals value.first
|
105
|
+
@parsed.store(key.capitalize.camelize, newSwiftClass)
|
106
|
+
# string = "var #{key}#{get_array_attribute_literal key}\n"
|
107
|
+
# swiftClass = swiftClass + string
|
108
|
+
attribute = Attribute.new(key, "#{key}", true)
|
109
|
+
swiftClassAttributes.push(attribute)
|
110
|
+
else
|
111
|
+
# string = "var #{key}: [#{attribute_type value.first}] = []\n"
|
112
|
+
# swiftClass = swiftClass + string
|
113
|
+
attribute = Attribute.new(key, "#{attribute_type value.first}", true)
|
114
|
+
swiftClassAttributes.push(attribute)
|
115
|
+
end
|
116
|
+
end
|
117
|
+
end
|
118
|
+
end
|
119
|
+
# swiftClass
|
120
|
+
swiftClassAttributes
|
121
|
+
end
|
122
|
+
|
123
|
+
def parse!
|
124
|
+
swiftClass = generate_attributes_literals @json
|
125
|
+
if @json.is_a? Hash
|
126
|
+
@parsed.store("Container", swiftClass)
|
127
|
+
end
|
128
|
+
|
129
|
+
@parsed.each do |class_name, attributes|
|
130
|
+
realm_funcs = <<-REALMCLASS
|
131
|
+
\t\trequired convenience init?(map: Map) {
|
132
|
+
\t\t\t\tself.init()
|
133
|
+
\t\t}
|
134
|
+
|
135
|
+
\t\toverride class func primaryKey() -> String? {
|
136
|
+
\t\t\t\t// change according to your requirement
|
137
|
+
\t\t\t\treturn "id"
|
138
|
+
\t\t}
|
139
|
+
REALMCLASS
|
140
|
+
|
141
|
+
non_realm_funcs = <<-DEFAULT
|
142
|
+
\t\tinit?(map: Map) {
|
143
|
+
\t\t\t\tself.init()
|
144
|
+
\t\t}
|
145
|
+
DEFAULT
|
146
|
+
# (map["friends"], ListTransform<User>())
|
147
|
+
attribute_literals = ""
|
148
|
+
mapping_literals = ""
|
149
|
+
attributes.each do |attribute|
|
150
|
+
attribute_literal = ""
|
151
|
+
mapping_literal = ""
|
152
|
+
if attribute.is_array
|
153
|
+
attribute_literal = "\t\tvar #{attribute.name.camelize}#{get_array_attribute_literal attribute.type}\n"
|
154
|
+
mapping_literal = "\t\t\t\t#{attribute.name.camelize} <- #{get_array_mapping_literal attribute.type}\n"
|
155
|
+
else
|
156
|
+
default_value = attribute.default_value
|
157
|
+
default_value = default_value.nil? ? "?" : " = #{default_value}"
|
158
|
+
attribute_literal = "\t\t#{get_attribute_literal_prefix}var #{attribute.name.camelize}: #{attribute.type.capitalize}#{default_value}\n"
|
159
|
+
mapping_literal = "\t\t\t\t#{attribute.name.camelize} <- map[\"#{attribute.name}\"]\n"
|
160
|
+
end
|
161
|
+
attribute_literals += attribute_literal
|
162
|
+
mapping_literals += mapping_literal
|
163
|
+
end
|
164
|
+
|
165
|
+
|
166
|
+
class_model = <<-CLASS
|
167
|
+
import ObjectMapper
|
168
|
+
import RealmSwift
|
169
|
+
|
170
|
+
class #{class_name}:#{@realm? " Object," : ""} Mappable {
|
171
|
+
#{attribute_literals}
|
172
|
+
#{@realm? realm_funcs : non_realm_funcs}
|
173
|
+
\t\tfunc mapping(map: Map) {
|
174
|
+
#{mapping_literals}
|
175
|
+
\t\t}
|
176
|
+
}\n
|
177
|
+
CLASS
|
178
|
+
create_file class_name, class_model
|
179
|
+
end
|
180
|
+
end
|
181
|
+
|
182
|
+
end
|
183
|
+
|
184
|
+
class Attribute
|
185
|
+
attr_accessor :name, :type, :is_array
|
186
|
+
def initialize name, type, is_array=false
|
187
|
+
@name = name
|
188
|
+
@type = type
|
189
|
+
@is_array = is_array
|
190
|
+
end
|
191
|
+
|
192
|
+
def default_value
|
193
|
+
result = nil
|
194
|
+
case @type
|
195
|
+
when "String"
|
196
|
+
result = "\"\""
|
197
|
+
when "Int"
|
198
|
+
result = 0
|
199
|
+
when "Double"
|
200
|
+
result = 0.0
|
201
|
+
when "Bool"
|
202
|
+
result = false
|
203
|
+
end
|
204
|
+
result
|
205
|
+
end
|
206
|
+
end
|
data/lib/veda/version.rb
CHANGED
data/veda.gemspec
CHANGED
@@ -13,7 +13,7 @@ spec = Gem::Specification.new do |s|
|
|
13
13
|
s.require_paths << 'lib'
|
14
14
|
s.has_rdoc = true
|
15
15
|
s.extra_rdoc_files = ['veda.rdoc']
|
16
|
-
s.rdoc_options << '--title' << 'veda' << '--main'
|
16
|
+
s.rdoc_options << '--title' << 'veda' << '--main' << '-ri'
|
17
17
|
s.bindir = 'bin'
|
18
18
|
s.executables << 'veda'
|
19
19
|
s.add_development_dependency('rake')
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: veda-apps
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Shishir sapkota
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-01-
|
11
|
+
date: 2018-01-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -84,10 +84,14 @@ files:
|
|
84
84
|
- features/support/env.rb
|
85
85
|
- features/veda.feature
|
86
86
|
- lib/.DS_Store
|
87
|
+
- lib/Multimedia.rb
|
87
88
|
- lib/Qr.rb
|
88
89
|
- lib/VedaQRScanner/UIViewControllerExtension.swift
|
89
90
|
- lib/VedaQRScanner/VedaQR.storyboard
|
90
91
|
- lib/VedaQRScanner/VedaQRScannerViewController.swift
|
92
|
+
- lib/config.json
|
93
|
+
- lib/fetcher.rb
|
94
|
+
- lib/parser.rb
|
91
95
|
- lib/veda.rb
|
92
96
|
- lib/veda/.DS_Store
|
93
97
|
- lib/veda/version.rb
|
@@ -103,7 +107,6 @@ rdoc_options:
|
|
103
107
|
- "--title"
|
104
108
|
- veda
|
105
109
|
- "--main"
|
106
|
-
- README.rdoc
|
107
110
|
- "-ri"
|
108
111
|
require_paths:
|
109
112
|
- lib
|