magento 0.21.1 → 0.26.0
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 +4 -4
- data/.github/workflows/gem-push.yml +1 -0
- data/.gitignore +4 -2
- data/.rspec +3 -0
- data/Gemfile +4 -0
- data/README.md +30 -1
- data/Rakefile +7 -0
- data/bin/console +14 -0
- data/bin/setup +8 -0
- data/lib/magento.rb +1 -0
- data/lib/magento/order.rb +8 -0
- data/lib/magento/params/create_product.rb +26 -26
- data/lib/magento/params/create_product_link.rb +30 -0
- data/lib/magento/product.rb +76 -1
- data/lib/magento/query.rb +3 -2
- data/lib/magento/sales_rule.rb +4 -0
- data/lib/magento/shared/custom_attribute.rb +1 -0
- data/lib/magento/version.rb +1 -1
- data/spec/magento/order_spec.rb +38 -0
- data/spec/magento_spec.rb +5 -0
- data/spec/product_spec.rb +31 -0
- data/spec/spec_helper.rb +15 -0
- metadata +10 -2
- data/magento-ruby.gemspec +0 -25
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 05b964b40491a1dc85eab1440137ab38089116468c2bd1d4d3fc86cd63a2c106
|
4
|
+
data.tar.gz: 38f1348057912147922411e91494621e3fc8ad7047b6c275f5ce9be9d67b3eb7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ea2acea7866041af1c49d8d453fc52c483aa4d0d9e99bc3620447e50630f6e0aec0724a29536fc1f3e9081c88684b6f4a83a9c1b3c9ac6ef1e71fdf662e4478c
|
7
|
+
data.tar.gz: 69593620dfafef7a3e2290471afc6278e4de583cb3762b23a0c891d63680df3d694e2bdbfda05caff0651b907cd6648938e37ca7a7d6f2ce5cecbb8635e49da1
|
@@ -22,6 +22,7 @@ jobs:
|
|
22
22
|
touch $HOME/.gem/credentials
|
23
23
|
chmod 0600 $HOME/.gem/credentials
|
24
24
|
printf -- "---\n:github: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
|
25
|
+
sed "s/'magento'/'magento-ruby'/" magento.gemspec > magento-ruby.gemspec
|
25
26
|
gem build magento-ruby.gemspec
|
26
27
|
gem push --KEY github --host https://rubygems.pkg.github.com/${OWNER} *.gem
|
27
28
|
env:
|
data/.gitignore
CHANGED
data/.rspec
ADDED
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
Add in your Gemfile
|
6
6
|
|
7
7
|
```rb
|
8
|
-
gem 'magento', '~> 0.
|
8
|
+
gem 'magento', '~> 0.26.0'
|
9
9
|
```
|
10
10
|
|
11
11
|
or run
|
@@ -643,6 +643,24 @@ Inventory.is_product_salable_for_requested_qty(
|
|
643
643
|
}
|
644
644
|
```
|
645
645
|
|
646
|
+
## Update product stock
|
647
|
+
|
648
|
+
```rb
|
649
|
+
product = Magento::Product.find('sku')
|
650
|
+
product.update_stock(qty: 12, is_in_stock: true)
|
651
|
+
```
|
652
|
+
|
653
|
+
or by class method
|
654
|
+
|
655
|
+
```rb
|
656
|
+
Magento::Product.update_stock(sku, id, {
|
657
|
+
qty: 12,
|
658
|
+
is_in_stock: true
|
659
|
+
})
|
660
|
+
```
|
661
|
+
|
662
|
+
see all available attributes in: https://magento.redoc.ly/2.4.1-admin/tag/productsproductSkustockItemsitemId
|
663
|
+
|
646
664
|
___
|
647
665
|
|
648
666
|
##TODO:
|
@@ -662,3 +680,14 @@ Magento::Product.where(name_like: 'some name%').last
|
|
662
680
|
```
|
663
681
|
|
664
682
|
### Tests
|
683
|
+
|
684
|
+
|
685
|
+
## Development
|
686
|
+
|
687
|
+
After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
|
688
|
+
|
689
|
+
To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
|
690
|
+
|
691
|
+
## Contributing
|
692
|
+
|
693
|
+
Bug reports and pull requests are welcome on GitHub at https://github.com/WallasFaria/nfce_crawler.
|
data/Rakefile
ADDED
data/bin/console
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require "bundler/setup"
|
4
|
+
require "magento"
|
5
|
+
|
6
|
+
# You can add fixtures and/or initialization code here to make experimenting
|
7
|
+
# with your gem easier. You can also use a different console, if you like.
|
8
|
+
|
9
|
+
# (If you use this, don't forget to add pry to your Gemfile!)
|
10
|
+
# require "pry"
|
11
|
+
# Pry.start
|
12
|
+
|
13
|
+
require "irb"
|
14
|
+
IRB.start(__FILE__)
|
data/bin/setup
ADDED
data/lib/magento.rb
CHANGED
@@ -4,6 +4,7 @@ require 'time'
|
|
4
4
|
require 'dry/inflector'
|
5
5
|
require 'active_support/core_ext/string/inflections'
|
6
6
|
require 'active_support/core_ext/hash/keys'
|
7
|
+
require 'active_support/core_ext/module/delegation'
|
7
8
|
|
8
9
|
require_relative 'magento/configuration'
|
9
10
|
require_relative 'magento/errors'
|
data/lib/magento/order.rb
CHANGED
@@ -61,6 +61,10 @@ module Magento
|
|
61
61
|
self.class.ship(id, params)
|
62
62
|
end
|
63
63
|
|
64
|
+
def send_email
|
65
|
+
self.class.send_email(id)
|
66
|
+
end
|
67
|
+
|
64
68
|
class << self
|
65
69
|
def update(entity_id, attributes)
|
66
70
|
attributes[:entity_id] = entity_id
|
@@ -172,6 +176,10 @@ module Magento
|
|
172
176
|
def ship(order_id, shipment_params = nil)
|
173
177
|
request.post("order/#{order_id}/ship", shipment_params).parse
|
174
178
|
end
|
179
|
+
|
180
|
+
def send_email(order_id)
|
181
|
+
request.post("orders/#{order_id}/emails").parse
|
182
|
+
end
|
175
183
|
end
|
176
184
|
end
|
177
185
|
end
|
@@ -4,33 +4,33 @@ require_relative 'create_custom_attribute'
|
|
4
4
|
module Magento
|
5
5
|
module Params
|
6
6
|
# Example
|
7
|
-
#
|
8
|
-
# params = Magento::Params::CreateProduct.new(
|
9
|
-
# sku: '556-teste-builder',
|
10
|
-
# name: 'REFRIGERANTE PET COCA-COLA 1,5L ORIGINAL',
|
11
|
-
# description: 'Descrição do produto',
|
12
|
-
# brand: 'Coca-Cola',
|
13
|
-
# price: 4.99,
|
14
|
-
# special_price: 3.49,
|
15
|
-
# quantity: 2,
|
16
|
-
# weight: 0.3,
|
17
|
-
# attribute_set_id: 4,
|
18
|
-
# images: [
|
19
|
-
# *Magento::Params::CreateImage.new(
|
20
|
-
# path: 'https://urltoimage.com/image.jpg',
|
21
|
-
# title: 'REFRIGERANTE PET COCA-COLA 1,5L ORIGINAL',
|
22
|
-
# position: 0,
|
23
|
-
# main: true
|
24
|
-
# ).variants, # it's generate all variants thumbnail => '100x100', small_image => '300x300' and image => '800x800'
|
25
|
-
# Magento::Params::CreateImage.new(
|
26
|
-
# path: '/path/to/image.jpg',
|
27
|
-
# title: 'REFRIGERANTE PET COCA-COLA 1,5L ORIGINAL',
|
28
|
-
# position: 1
|
29
|
-
# )
|
30
|
-
# ]
|
31
|
-
# )
|
32
7
|
#
|
33
|
-
# Magento::
|
8
|
+
# params = Magento::Params::CreateProduct.new(
|
9
|
+
# sku: '556-teste-builder',
|
10
|
+
# name: 'REFRIGERANTE PET COCA-COLA 1,5L ORIGINAL',
|
11
|
+
# description: 'Descrição do produto',
|
12
|
+
# brand: 'Coca-Cola',
|
13
|
+
# price: 4.99,
|
14
|
+
# special_price: 3.49,
|
15
|
+
# quantity: 2,
|
16
|
+
# weight: 0.3,
|
17
|
+
# attribute_set_id: 4,
|
18
|
+
# images: [
|
19
|
+
# *Magento::Params::CreateImage.new(
|
20
|
+
# path: 'https://urltoimage.com/image.jpg',
|
21
|
+
# title: 'REFRIGERANTE PET COCA-COLA 1,5L ORIGINAL',
|
22
|
+
# position: 0,
|
23
|
+
# main: true
|
24
|
+
# ).variants, # it's generate all variants thumbnail => '100x100', small_image => '300x300' and image => '800x800'
|
25
|
+
# Magento::Params::CreateImage.new(
|
26
|
+
# path: '/path/to/image.jpg',
|
27
|
+
# title: 'REFRIGERANTE PET COCA-COLA 1,5L ORIGINAL',
|
28
|
+
# position: 1
|
29
|
+
# )
|
30
|
+
# ]
|
31
|
+
# )
|
32
|
+
#
|
33
|
+
# Magento::Product.create(params.to_h)
|
34
34
|
#
|
35
35
|
class CreateProduct < Dry::Struct
|
36
36
|
ProductTypes = Type::String.default('simple'.freeze).enum(
|
@@ -0,0 +1,30 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Magento
|
4
|
+
module Params
|
5
|
+
class CreateProductLink < Dry::Struct
|
6
|
+
LinkType = Type::String.enum(
|
7
|
+
'related',
|
8
|
+
'upsell',
|
9
|
+
'crosssell',
|
10
|
+
'associated'
|
11
|
+
)
|
12
|
+
|
13
|
+
attribute :link_type, LinkType
|
14
|
+
attribute :linked_product_sku, Type::String
|
15
|
+
attribute :linked_product_type, Magento::Params::CreateProduct::ProductTypes
|
16
|
+
attribute :position, Type::Integer
|
17
|
+
attribute :sku, Type::String
|
18
|
+
|
19
|
+
def to_h
|
20
|
+
{
|
21
|
+
link_type: link_type,
|
22
|
+
linked_product_sku: linked_product_sku,
|
23
|
+
linked_product_type: linked_product_type,
|
24
|
+
position: position,
|
25
|
+
sku: sku
|
26
|
+
}
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
data/lib/magento/product.rb
CHANGED
@@ -6,12 +6,34 @@ module Magento
|
|
6
6
|
attr(m) || super(m, *params, &block)
|
7
7
|
end
|
8
8
|
|
9
|
+
def stock
|
10
|
+
extension_attributes&.stock_item
|
11
|
+
end
|
12
|
+
|
13
|
+
def stock_quantity
|
14
|
+
stock&.qty
|
15
|
+
end
|
16
|
+
|
9
17
|
# returns custom_attribute value by custom_attribute code
|
10
18
|
# return nil if custom_attribute is not present
|
11
19
|
def attr(attribute_code)
|
12
20
|
@custom_attributes&.find { |a| a.attribute_code == attribute_code.to_s }&.value
|
13
21
|
end
|
14
22
|
|
23
|
+
def set_custom_attribute(code, value)
|
24
|
+
@custom_attributes ||= []
|
25
|
+
attribute = @custom_attributes.find { |a| a.attribute_code == code.to_s }
|
26
|
+
|
27
|
+
if attribute
|
28
|
+
attribute.value = value
|
29
|
+
else
|
30
|
+
@custom_attributes << Magento::CustomAttribute.build(
|
31
|
+
attribute_code: code.to_s,
|
32
|
+
value: value
|
33
|
+
)
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
15
37
|
def respond_to?(attribute_code)
|
16
38
|
super || @custom_attributes&.any? { |a| a.attribute_code == attribute_code.to_s }
|
17
39
|
end
|
@@ -25,7 +47,6 @@ module Magento
|
|
25
47
|
self.class.remove_media(sku, media_id)
|
26
48
|
end
|
27
49
|
|
28
|
-
#
|
29
50
|
# Add {price} on product {sku} for specified {customer_group_id}
|
30
51
|
#
|
31
52
|
# Param {quantity} is the minimun amount to apply the price
|
@@ -44,6 +65,29 @@ module Magento
|
|
44
65
|
)
|
45
66
|
end
|
46
67
|
|
68
|
+
#
|
69
|
+
# Remove tier price
|
70
|
+
#
|
71
|
+
# product = Magento::Product.find(1)
|
72
|
+
# product.remove_tier_price(quantity: 1, customer_group_id: :all)
|
73
|
+
#
|
74
|
+
# @return {Boolean}
|
75
|
+
def remove_tier_price(quantity:, customer_group_id: :all)
|
76
|
+
self.class.remove_tier_price(
|
77
|
+
sku, quantity: quantity, customer_group_id: customer_group_id
|
78
|
+
)
|
79
|
+
end
|
80
|
+
|
81
|
+
# Update product stock
|
82
|
+
#
|
83
|
+
# product = Magento::Product.find('sku')
|
84
|
+
# product.update_stock(qty: 12, is_in_stock: true)
|
85
|
+
#
|
86
|
+
# see all available attributes in: https://magento.redoc.ly/2.4.1-admin/tag/productsproductSkustockItemsitemId
|
87
|
+
def update_stock(attributes)
|
88
|
+
self.class.update_stock(sku, id, attributes)
|
89
|
+
end
|
90
|
+
|
47
91
|
class << self
|
48
92
|
alias_method :find_by_sku, :find
|
49
93
|
|
@@ -66,6 +110,37 @@ module Magento
|
|
66
110
|
"products/#{sku}/group-prices/#{customer_group_id}/tiers/#{quantity}/price/#{price}"
|
67
111
|
).parse
|
68
112
|
end
|
113
|
+
|
114
|
+
# Remove tier price
|
115
|
+
#
|
116
|
+
# Product.remove_tier_price('sku', quantity: 1, customer_group_id: :all)
|
117
|
+
#
|
118
|
+
# @return {Boolean}
|
119
|
+
def remove_tier_price(sku, quantity:, customer_group_id: :all)
|
120
|
+
request.delete(
|
121
|
+
"products/#{sku}/group-prices/#{customer_group_id}/tiers/#{quantity}"
|
122
|
+
).parse
|
123
|
+
end
|
124
|
+
|
125
|
+
# Update product stock
|
126
|
+
#
|
127
|
+
# Magento::Product.update_stock(sku, id, {
|
128
|
+
# qty: 12,
|
129
|
+
# is_in_stock: true
|
130
|
+
# })
|
131
|
+
#
|
132
|
+
# see all available attributes in: https://magento.redoc.ly/2.4.1-admin/tag/productsproductSkustockItemsitemId
|
133
|
+
def update_stock(sku, id, attributes)
|
134
|
+
request.put("products/#{sku}/stockItems/#{id}", stockItem: attributes).parse
|
135
|
+
end
|
136
|
+
|
137
|
+
def create_links(sku, product_links)
|
138
|
+
request.post("products/#{sku}/links", { items: product_links })
|
139
|
+
end
|
140
|
+
|
141
|
+
def remove_link(sku, link_type:, linked_product_sku:)
|
142
|
+
request.delete("products/#{sku}/links/#{link_type}/#{linked_product_sku}")
|
143
|
+
end
|
69
144
|
end
|
70
145
|
end
|
71
146
|
end
|
data/lib/magento/query.rb
CHANGED
@@ -23,7 +23,7 @@ module Magento
|
|
23
23
|
'to' # The end of a range. Must be used with from
|
24
24
|
].freeze
|
25
25
|
|
26
|
-
def initialize(model, request: Request.new)
|
26
|
+
def initialize(model, request: Request.new, api_resource: nil)
|
27
27
|
@model = model
|
28
28
|
@request = request
|
29
29
|
@filter_groups = nil
|
@@ -31,6 +31,7 @@ module Magento
|
|
31
31
|
@page_size = 50
|
32
32
|
@sort_orders = nil
|
33
33
|
@fields = nil
|
34
|
+
@endpoint = api_resource || model.api_resource
|
34
35
|
end
|
35
36
|
|
36
37
|
def where(attributes)
|
@@ -131,7 +132,7 @@ module Magento
|
|
131
132
|
attr_accessor :current_page, :filter_groups, :request, :sort_orders, :model, :fields
|
132
133
|
|
133
134
|
def endpoint
|
134
|
-
|
135
|
+
@endpoint
|
135
136
|
end
|
136
137
|
|
137
138
|
def verify_id(field)
|
data/lib/magento/sales_rule.rb
CHANGED
data/lib/magento/version.rb
CHANGED
@@ -0,0 +1,38 @@
|
|
1
|
+
class RequestMock
|
2
|
+
attr_reader :path
|
3
|
+
|
4
|
+
def post(path)
|
5
|
+
@path = path
|
6
|
+
OpenStruct.new(success?: true, parse: true)
|
7
|
+
end
|
8
|
+
end
|
9
|
+
|
10
|
+
RSpec.describe Magento::Order do
|
11
|
+
before { Magento.url = 'https://site.com' }
|
12
|
+
|
13
|
+
describe '.send_email' do
|
14
|
+
it 'shuld request POST /orders/:id/emails' do
|
15
|
+
request = RequestMock.new
|
16
|
+
allow(Magento::Order).to receive(:request).and_return(request)
|
17
|
+
|
18
|
+
order_id = 25
|
19
|
+
result = Magento::Order.send_email(order_id)
|
20
|
+
|
21
|
+
expect(request.path).to eql("orders/#{order_id}/emails")
|
22
|
+
expect(result).to be true
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
describe '#send_email' do
|
27
|
+
it 'shuld request POST /orders/:id/emails' do
|
28
|
+
request = RequestMock.new
|
29
|
+
allow(Magento::Order).to receive(:request).and_return(request)
|
30
|
+
|
31
|
+
order = Magento::Order.build(id: 25)
|
32
|
+
result = order.send_email
|
33
|
+
|
34
|
+
expect(request.path).to eql("orders/25/emails")
|
35
|
+
expect(result).to be true
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
RSpec.describe Magento::Product do
|
2
|
+
describe '#set_custom_attribute' do
|
3
|
+
let(:product) { Magento::Product.build(
|
4
|
+
sku: 25,
|
5
|
+
custom_attributes: [
|
6
|
+
{ attribute_code: 'description', value: 'Some description' }
|
7
|
+
]
|
8
|
+
) }
|
9
|
+
|
10
|
+
context 'when the custom attribute already exists' do
|
11
|
+
it 'must change the attribute value' do
|
12
|
+
expect(product.description).to eql('Some description')
|
13
|
+
product.set_custom_attribute(:description, 'description updated')
|
14
|
+
expect(product.attr(:description)).to eql('description updated')
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
context 'when the custom attribute does not exists' do
|
19
|
+
it 'must add a new attribute' do
|
20
|
+
expect(product.attr(:new_attribute)).to be_nil
|
21
|
+
expect(product.attr(:other_new_attribute)).to be_nil
|
22
|
+
|
23
|
+
product.set_custom_attribute(:new_attribute, 'value')
|
24
|
+
product.set_custom_attribute('other_new_attribute', [1, 2])
|
25
|
+
|
26
|
+
expect(product.attr(:new_attribute)).to eql('value')
|
27
|
+
expect(product.attr(:other_new_attribute)).to eql([1, 2])
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
require "bundler/setup"
|
2
|
+
require 'byebug'
|
3
|
+
require "magento"
|
4
|
+
|
5
|
+
RSpec.configure do |config|
|
6
|
+
# Enable flags like --only-failures and --next-failure
|
7
|
+
config.example_status_persistence_file_path = ".rspec_status"
|
8
|
+
|
9
|
+
# Disable RSpec exposing methods globally on `Module` and `main`
|
10
|
+
config.disable_monkey_patching!
|
11
|
+
|
12
|
+
config.expect_with :rspec do |c|
|
13
|
+
c.syntax = :expect
|
14
|
+
end
|
15
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: magento
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.26.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Wallas Faria
|
@@ -88,8 +88,12 @@ extra_rdoc_files: []
|
|
88
88
|
files:
|
89
89
|
- ".github/workflows/gem-push.yml"
|
90
90
|
- ".gitignore"
|
91
|
+
- ".rspec"
|
91
92
|
- Gemfile
|
92
93
|
- README.md
|
94
|
+
- Rakefile
|
95
|
+
- bin/console
|
96
|
+
- bin/setup
|
93
97
|
- lib/magento.rb
|
94
98
|
- lib/magento/category.rb
|
95
99
|
- lib/magento/configuration.rb
|
@@ -113,6 +117,7 @@ files:
|
|
113
117
|
- lib/magento/params/create_custom_attribute.rb
|
114
118
|
- lib/magento/params/create_image.rb
|
115
119
|
- lib/magento/params/create_product.rb
|
120
|
+
- lib/magento/params/create_product_link.rb
|
116
121
|
- lib/magento/polymorphic_model.rb
|
117
122
|
- lib/magento/product.rb
|
118
123
|
- lib/magento/query.rb
|
@@ -150,8 +155,11 @@ files:
|
|
150
155
|
- lib/magento/shared/total.rb
|
151
156
|
- lib/magento/shared/value.rb
|
152
157
|
- lib/magento/version.rb
|
153
|
-
- magento-ruby.gemspec
|
154
158
|
- magento.gemspec
|
159
|
+
- spec/magento/order_spec.rb
|
160
|
+
- spec/magento_spec.rb
|
161
|
+
- spec/product_spec.rb
|
162
|
+
- spec/spec_helper.rb
|
155
163
|
homepage: https://github.com/WallasFaria/magento-ruby
|
156
164
|
licenses: []
|
157
165
|
metadata: {}
|
data/magento-ruby.gemspec
DELETED
@@ -1,25 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
lib = File.expand_path('lib', __dir__)
|
4
|
-
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
5
|
-
|
6
|
-
require 'magento/version'
|
7
|
-
|
8
|
-
Gem::Specification.new do |s|
|
9
|
-
s.name = 'magento-ruby'
|
10
|
-
s.version = Magento::VERSION
|
11
|
-
s.date = '2020-07-31'
|
12
|
-
s.summary = 'Magento Ruby library'
|
13
|
-
s.description = 'Magento Ruby library'
|
14
|
-
s.files = `git ls-files`.split($INPUT_RECORD_SEPARATOR)
|
15
|
-
s.authors = ['Wallas Faria']
|
16
|
-
s.email = 'wallasfaria@hotmail.com'
|
17
|
-
s.homepage = 'https://github.com/WallasFaria/magento-ruby'
|
18
|
-
s.require_paths = ['lib']
|
19
|
-
|
20
|
-
s.add_dependency 'dry-inflector', '~> 0.2.0'
|
21
|
-
s.add_dependency 'http', '~> 4.4'
|
22
|
-
s.add_dependency 'dry-struct'
|
23
|
-
s.add_dependency 'activesupport'
|
24
|
-
s.add_dependency 'mini_magick'
|
25
|
-
end
|