solidus_bling 2.0.7 → 3.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (69) hide show
  1. checksums.yaml +4 -4
  2. data/.gitattributes +2 -0
  3. data/.gitignore +0 -1
  4. data/CHANGELOG.md +1 -3
  5. data/Gemfile +18 -19
  6. data/LICENSE +1 -1
  7. data/README.md +1 -1
  8. data/Rakefile +2 -2
  9. data/app/controllers/spree/admin/solidus_bling/accounts_controller.rb +80 -0
  10. data/app/jobs/solidus_bling/order_job.rb +4 -7
  11. data/app/models/solidus_bling/account.rb +6 -1
  12. data/app/models/solidus_bling/order.rb +121 -96
  13. data/app/models/solidus_bling/token.rb +44 -0
  14. data/app/subscribers/solidus_bling/subscriber.rb +2 -22
  15. data/app/views/spree/admin/solidus_bling/accounts/_form.html.erb +147 -0
  16. data/app/views/spree/admin/solidus_bling/accounts/_link_auth.html.erb +10 -0
  17. data/app/views/spree/admin/solidus_bling/accounts/edit.html.erb +3 -0
  18. data/app/views/spree/admin/solidus_bling/accounts/index.html.erb +67 -0
  19. data/app/views/spree/admin/solidus_bling/accounts/new.html.erb +3 -0
  20. data/bin/meu_sandbox +67 -0
  21. data/config/locales/pt-BR.yml +1 -1
  22. data/config/routes.rb +6 -2
  23. data/db/migrate/{20230918141419_create_solidus_bling_accounts.rb → 20231109210635_create_solidus_bling_accounts.rb} +4 -5
  24. data/db/migrate/{20230918142547_create_solidus_bling_events.rb → 20231110112819_create_solidus_bling_events.rb} +1 -2
  25. data/db/migrate/{20230918143057_create_solidus_bling_shipping_methods.rb → 20231110113221_create_solidus_bling_shipping_methods.rb} +3 -2
  26. data/lib/generators/solidus_bling/install/install_generator.rb +6 -6
  27. data/lib/solidus_bling/configuration.rb +1 -1
  28. data/lib/solidus_bling/engine.rb +12 -15
  29. data/lib/solidus_bling/version.rb +1 -1
  30. data/lib/solidus_bling.rb +5 -5
  31. data/solidus_bling.gemspec +16 -18
  32. metadata +32 -71
  33. data/app/controllers/spree/admin/accounts_controller.rb +0 -67
  34. data/app/controllers/spree/admin/bling_products_controller.rb +0 -20
  35. data/app/decorators/models/solidus_bling/spree/payment_method_decorator.rb +0 -13
  36. data/app/decorators/models/solidus_bling/spree/shipping_method_decorator.rb +0 -13
  37. data/app/helpers/solidus_bling/accounts_helper.rb +0 -4
  38. data/app/helpers/solidus_bling/bling_products_helper.rb +0 -4
  39. data/app/jobs/solidus_bling/contact_job.rb +0 -22
  40. data/app/jobs/solidus_bling/product_job.rb +0 -13
  41. data/app/jobs/solidus_bling/update_product_job.rb +0 -9
  42. data/app/models/solidus_bling/api.rb +0 -57
  43. data/app/models/solidus_bling/contact.rb +0 -83
  44. data/app/models/solidus_bling/product.rb +0 -36
  45. data/app/views/spree/admin/accounts/_form.html.erb +0 -76
  46. data/app/views/spree/admin/accounts/edit.html.erb +0 -11
  47. data/app/views/spree/admin/accounts/index.html.erb +0 -13
  48. data/app/views/spree/admin/accounts/new.html.erb +0 -2
  49. data/db/migrate/20230918141700_create_solidus_bling_products.rb +0 -12
  50. data/db/migrate/20231018141940_add_company_to_solidus_bling_shipping_methods.rb +0 -5
  51. data/spec/helpers/solidus_bling/accounts_helper_spec.rb +0 -17
  52. data/spec/helpers/solidus_bling/bling_products_helper_spec.rb +0 -17
  53. data/spec/jobs/solidus_bling/contact_job_spec.rb +0 -7
  54. data/spec/jobs/solidus_bling/order_job_spec.rb +0 -7
  55. data/spec/jobs/solidus_bling/product_job_spec.rb +0 -7
  56. data/spec/jobs/solidus_bling/update_product_job_spec.rb +0 -7
  57. data/spec/models/solidus_bling/account_spec.rb +0 -7
  58. data/spec/models/solidus_bling/event_spec.rb +0 -7
  59. data/spec/models/solidus_bling/payment_method_spec.rb +0 -7
  60. data/spec/models/solidus_bling/product_spec.rb +0 -7
  61. data/spec/models/solidus_bling/seller_spec.rb +0 -7
  62. data/spec/models/solidus_bling/shipping_method_spec.rb +0 -7
  63. data/spec/requests/solidus_bling/accounts_spec.rb +0 -7
  64. data/spec/requests/solidus_bling/bling_products_spec.rb +0 -7
  65. data/spec/spec_helper.rb +0 -32
  66. /data/app/views/spree/admin/{accounts → solidus_bling/accounts}/show.html.erb +0 -0
  67. /data/db/migrate/{20230918141505_add_bling_order_id_to_spree_orders.rb → 20231110112528_add_bling_order_id_to_spree_orders.rb} +0 -0
  68. /data/db/migrate/{20230918142742_create_solidus_bling_payment_methods.rb → 20231110112958_create_solidus_bling_payment_methods.rb} +0 -0
  69. /data/db/migrate/{20230918142953_create_solidus_bling_sellers.rb → 20231110113122_create_solidus_bling_sellers.rb} +0 -0
@@ -0,0 +1,147 @@
1
+ <%= render "link_auth", bling_account: bling_account %>
2
+
3
+ <%= form_with model: bling_account, url: form_url do |form| %>
4
+ <fieldset class="no-border-top">
5
+ <legend>
6
+ Dados da Conta
7
+ </legend>
8
+ <div class="row">
9
+ <div class="col-12 col-md-6">
10
+
11
+ <%= form.field_container :client_id do %>
12
+ <%= form.label :client_id, "Client ID", class: 'required' %>
13
+ <%= form.text_field :client_id, required: true, class: 'fullwidth' %>
14
+ <%= form.error_message_on :client_id %>
15
+ <% end %>
16
+
17
+ <%= form.field_container :client_secret do %>
18
+ <%= form.label :client_secret, "Client Secret", class: 'required' %>
19
+ <%= form.text_field :client_secret, required: true, class: 'fullwidth' %>
20
+ <%= form.error_message_on :client_secret %>
21
+ <% end %>
22
+
23
+ <%= form.field_container :external_store_id do %>
24
+ <%= form.label :external_store_id, "ID Loja", class: 'required' %>
25
+ <%= form.text_field :external_store_id, required: true, class: 'fullwidth' %>
26
+ <%= form.error_message_on :external_store_id %>
27
+ <% end %>
28
+
29
+ <%= form.field_container :incoming_category_id do %>
30
+ <%= form.label :incoming_category_id, "ID Categoria Receita", class: 'required' %>
31
+ <%= form.text_field :incoming_category_id, required: true, class: 'fullwidth' %>
32
+ <%= form.error_message_on :incoming_category_id %>
33
+ <% end %>
34
+
35
+ </div>
36
+
37
+ <div class="col-12 col-md-6">
38
+
39
+ <%= form.field_container :redirect_url do %>
40
+ <%= form.label :redirect_url, "Redirect URL", class: 'required' %>
41
+ <%= form.text_field :redirect_url, required: true, class: 'fullwidth' %>
42
+ <%= form.error_message_on :redirect_url %>
43
+ <% end %>
44
+
45
+ <%= form.field_container :state do %>
46
+ <%= form.label :state, "State", class: 'required' %>
47
+ <%= form.text_field :state, required: true, class: 'fullwidth' %>
48
+ <%= form.error_message_on :state %>
49
+ <% end %>
50
+
51
+ <%= form.field_container :refresh_token do %>
52
+ <%= form.label :refresh_token, "Refresh Token" %>
53
+ <%= form.text_field :refresh_token, class: 'fullwidth' %>
54
+ <%= form.error_message_on :refresh_token %>
55
+ <% end %>
56
+
57
+ <%= form.field_container :access_token do %>
58
+ <%= form.label :access_token, "Access Token" %>
59
+ <%= form.text_field :access_token, class: 'fullwidth' %>
60
+ <%= form.error_message_on :access_token %>
61
+ <% end %>
62
+ </div>
63
+ </div>
64
+ </fieldset>
65
+
66
+ <fieldset class="no-border-top">
67
+ <legend>
68
+ Métodos de Pagamento
69
+ </legend>
70
+ <%= form.fields_for :payment_methods do |payment_form| %>
71
+ <div class="row">
72
+ <div class="col-12 col-md-6">
73
+ <div class="field">
74
+ <%= payment_form.label :spree_payment_method_id, "Método de Pagamento", class: 'required' %>
75
+ <%= payment_form.select :spree_payment_method_id, @payment_methods, {}, { class: "custom-select fullwidth" } %>
76
+ </div>
77
+ </div>
78
+ <div class="col-12 col-md-6">
79
+ <div class="field">
80
+ <%= payment_form.label :external_id, "ID Forma de Pagamento", class: 'required' %>
81
+ <%= payment_form.text_field :external_id, required: true, class:"fullwidth" %>
82
+ </div>
83
+ </div>
84
+ </div>
85
+ <% end %>
86
+ </fieldset>
87
+
88
+ <fieldset class="no-border-top">
89
+ <legend>
90
+ Métodos de Envio
91
+ </legend>
92
+ <%= form.fields_for :shipping_methods do |ship_form| %>
93
+ <div class="row">
94
+ <div class="col-12 col-md-4">
95
+ <div class="field">
96
+ <%= ship_form.label :spree_shipping_method_id, "Método de Envio", class: 'required' %>
97
+ <%= ship_form.select :spree_shipping_method_id, @shipping_methods, {}, { class: "custom-select fullwidth" } %>
98
+ </div>
99
+ </div>
100
+ <div class="col-12 col-md-4">
101
+ <div class="field">
102
+ <%= ship_form.label :alias, "Alias", class: 'required' %>
103
+ <%= ship_form.text_field :alias, required: true, class:"fullwidth" %>
104
+ </div>
105
+ </div>
106
+ <div class="col-12 col-md-4">
107
+ <div class="field">
108
+ <%= ship_form.label :company, "Nome Transportadora", class: 'required' %>
109
+ <%= ship_form.text_field :company, required: true, class:"fullwidth" %>
110
+ </div>
111
+ </div>
112
+ </div>
113
+ <% end %>
114
+ </fieldset>
115
+
116
+ <fieldset class="no-border-top">
117
+ <legend>
118
+ Vendedores
119
+ </legend>
120
+ <% bling_account.sellers.each do |seller| %>
121
+ <%= form.fields_for :sellers do |seller_form| %>
122
+ <div class="row">
123
+ <div class="col-12 col-md-6">
124
+ <div class="field">
125
+ <%= seller_form.label :name, "Nome do Vendedor", class: 'required' %>
126
+ <%= seller_form.text_field :name, required: true, class:"fullwidth" %>
127
+ </div>
128
+ </div>
129
+ <div class="col-12 col-md-6">
130
+ <div class="field">
131
+ <%= seller_form.label :external_id, "ID Vendedor", class: 'required' %>
132
+ <%= seller_form.text_field :external_id, required: true, class:"fullwidth" %>
133
+ </div>
134
+ </div>
135
+ </div>
136
+ <% end %>
137
+ <% end %>
138
+ </fieldset>
139
+
140
+
141
+ <div class="form-buttons filter-actions actions" data-hook="buttons">
142
+ <%= form.submit "Salvar", class: 'btn btn-primary' %>
143
+ <% if params["action"] == 'edit' %>
144
+ <%= link_to "Excluir", admin_solidus_bling_account_path(bling_account.id), method: :delete, data: { confirm: "Tem certeza que deseja excluir a conta?"}, class: 'button' %>
145
+ <% end %>
146
+ </div>
147
+ <% end %>
@@ -0,0 +1,10 @@
1
+ <div class="field">
2
+ <div style="display: flex; align-items: center; margin-bottom: 6px">
3
+ <label style="margin-right: 5px; margin-bottom: 0" for="bling_url">URL de autorização</label>
4
+ <a target="_blank" href="https://www.bling.com.br/Api/v3/oauth/authorize?response_type=code&client_id=<%= bling_account.client_id %>&state=<%= bling_account.state %>&scopes=98308+98309+98310+98313+98314+507943+5990556+6631498+106168710+182224097+199272829+200802821+220621674+318257556+318257565+318257568+318257570+318257583+333936575+363921589+363921590+363921591+363921592+363953167+363953556+791588404+875116881+1869535257+5862218180+13645012997+13645013013">
5
+ <svg style="width: 18px; height: 18px; color: black" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor">
6
+ <path stroke-linecap="round" stroke-linejoin="round" d="M13.5 6H5.25A2.25 2.25 0 003 8.25v10.5A2.25 2.25 0 005.25 21h10.5A2.25 2.25 0 0018 18.75V10.5m-10.5 6L21 3m0 0h-5.25M21 3v5.25"></path></svg>
7
+ </a>
8
+ </div>
9
+ <input id="bling_url" class="fullwidth" value="https://www.bling.com.br/Api/v3/oauth/authorize?response_type=code&client_id=<%= bling_account.client_id %>&state=<%= bling_account.state %>&scopes=98308+98309+98310+98313+98314+507943+5990556+6631498+106168710+182224097+199272829+200802821+220621674+318257556+318257565+318257568+318257570+318257583+333936575+363921589+363921590+363921591+363921592+363953167+363953556+791588404+875116881+1869535257+5862218180+13645012997+13645013013">
10
+ </div>
@@ -0,0 +1,3 @@
1
+ <% admin_breadcrumb("Bling") %>
2
+
3
+ <%= render "form", bling_account: @bling_account, form_url: admin_solidus_bling_account_path(@bling_account.id) %>
@@ -0,0 +1,67 @@
1
+
2
+ <% admin_layout "full-width" %>
3
+
4
+ <% admin_breadcrumb("Bling") %>
5
+
6
+ <% content_for :page_actions do %>
7
+ <% if SolidusBling::Account.count < 1 %>
8
+ <li>
9
+ <%= link_to "Nova Conta", new_admin_solidus_bling_account_path, class: 'btn btn-primary' %>
10
+ </li>
11
+ <% end %>
12
+ <% end %>
13
+
14
+ <div class="content-wrapper">
15
+ <% @accounts.each do |account| %>
16
+ <%= render "link_auth", bling_account: account %>
17
+
18
+ <fieldset class="no-border-top">
19
+ <legend>
20
+ Dados da Conta
21
+ </legend>
22
+ <div class="row">
23
+ <div class="col-12 col-md-6">
24
+
25
+ <div class="field">
26
+ <%= label_tag :client_id, "Client ID" %>
27
+ <%= text_field_tag :client_id, account.client_id, class:"fullwidth", disabled: true %>
28
+ </div>
29
+
30
+ <div class="field">
31
+ <%= label_tag :client_secret, "Client Secret" %>
32
+ <%= text_field_tag :client_secret, account.client_secret, class:"fullwidth", disabled: true %>
33
+ </div>
34
+
35
+ <div class="field">
36
+ <%= label_tag :refresh_token, "Refresh Token" %>
37
+ <%= text_field_tag :refresh_token, account.refresh_token, class:"fullwidth", disabled: true %>
38
+ </div>
39
+ </div>
40
+
41
+ <div class="col-12 col-md-6">
42
+
43
+ <div class="field">
44
+ <%= label_tag :redirect_url, "Redirect URL" %>
45
+ <%= text_field_tag :redirect_url, account.redirect_url, class:"fullwidth", disabled: true %>
46
+ </div>
47
+
48
+ <div class="field">
49
+ <%= label_tag :state, "State" %>
50
+ <%= text_field_tag :state, account.state, class:"fullwidth", disabled: true %>
51
+ </div>
52
+
53
+ <div class="field">
54
+ <%= label_tag :access_token, "Access Token" %>
55
+ <%= text_field_tag :access_token, account.access_token, class:"fullwidth", disabled: true %>
56
+ </div>
57
+ </div>
58
+ </div>
59
+ </fieldset>
60
+
61
+ <div class="form-buttons filter-actions actions" data-hook="buttons">
62
+ <%= link_to "Editar", edit_admin_solidus_bling_account_path(account.id), class: 'btn btn-primary' %>
63
+ <%= link_to "Excluir", admin_solidus_bling_account_path(account.id), method: :delete, data: { confirm: "Tem certeza que deseja excluir a conta?"}, class: 'button' %>
64
+ </div>
65
+ <% end %>
66
+ </div>
67
+
@@ -0,0 +1,3 @@
1
+ <% admin_breadcrumb("Conta Bling") %>
2
+
3
+ <%= render "form", bling_account: @bling_account, form_url: admin_solidus_bling_accounts_path %>
data/bin/meu_sandbox ADDED
@@ -0,0 +1,67 @@
1
+ #!/usr/bin/env bash
2
+
3
+ bin/rails db:environment:set RAILS_ENV=development
4
+
5
+ set -e
6
+ test -z "${DEBUG+empty_string}" || set -x
7
+
8
+ if [ -z "$SOLIDUS_BRANCH" ]
9
+ then
10
+ echo "~~> Use 'export SOLIDUS_BRANCH=[main|v3.2|...]' to control the Solidus branch"
11
+ SOLIDUS_BRANCH="main"
12
+ fi
13
+ echo "~~> Using branch $SOLIDUS_BRANCH of solidus"
14
+
15
+ extension_name="solidus_bling"
16
+
17
+ # Stay away from the bundler env of the containing extension.
18
+ function unbundled {
19
+ ruby -rbundler -e'b = proc {system *ARGV}; Bundler.respond_to?(:with_unbundled_env) ? Bundler.with_unbundled_env(&b) : Bundler.with_clean_env(&b)' -- $@
20
+ }
21
+
22
+ rm -rf ./sandbox
23
+ unbundled bundle exec rails new sandbox \
24
+ --database=postgresql \
25
+ --skip-bundle \
26
+ --skip-git \
27
+ --skip-keeps \
28
+ --skip-rc \
29
+ --skip-spring \
30
+ --skip-test \
31
+ --skip-javascript
32
+
33
+ if [ ! -d "sandbox" ]; then
34
+ echo 'sandbox rails application failed'
35
+ exit 1
36
+ fi
37
+
38
+ cd ./sandbox
39
+ cat <<RUBY >> Gemfile
40
+ gem 'solidus', github: 'solidusio/solidus', branch: '$SOLIDUS_BRANCH'
41
+ gem 'rails-i18n'
42
+ gem 'solidus_i18n'
43
+
44
+ gem '$extension_name', path: '..'
45
+
46
+ group :test, :development do
47
+ platforms :mri do
48
+ gem 'pry-byebug'
49
+ end
50
+ end
51
+ RUBY
52
+
53
+ unbundled bundle install --gemfile Gemfile
54
+
55
+ unbundled bundle exec rake db:drop db:create
56
+
57
+ unbundled bundle exec rails generate solidus:install \
58
+ --auto-accept \
59
+ --payment-method=none \
60
+ --frontend=starter \
61
+ $@
62
+
63
+ unbundled bundle exec rails generate ${extension_name}:install --auto-run-migrations
64
+
65
+ echo
66
+ echo "🚀 Sandbox app successfully created for $extension_name!"
67
+ echo "🧪 This app is intended for test purposes."
@@ -2,4 +2,4 @@ pt-BR:
2
2
  spree:
3
3
  admin:
4
4
  tab:
5
- bling_account: "Conta Bling"
5
+ bling_account: "Bling"
data/config/routes.rb CHANGED
@@ -1,8 +1,12 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  Spree::Core::Engine.routes.draw do
4
+ # Add your extension routes here
4
5
  namespace :admin do
5
- resources :accounts
6
- resources :bling_products, only: [:update]
6
+ namespace :solidus_bling do
7
+ resources :accounts do
8
+ get "authorize", on: :collection
9
+ end
10
+ end
7
11
  end
8
12
  end
@@ -1,17 +1,16 @@
1
1
  class CreateSolidusBlingAccounts < ActiveRecord::Migration[7.0]
2
2
  def change
3
3
  create_table :solidus_bling_accounts do |t|
4
- t.string :name
5
- t.string :app_name
6
- t.string :api_base_url
7
- t.string :api_key
8
4
  t.string :client_id
9
5
  t.string :client_secret
10
6
  t.string :refresh_token
7
+ t.string :redirect_url
8
+ t.string :state
11
9
  t.string :access_token
10
+ t.string :api_key
11
+ t.datetime :token_expires_in
12
12
  t.string :external_store_id
13
13
  t.string :incoming_category_id
14
- t.datetime :token_expires_in
15
14
 
16
15
  t.timestamps
17
16
  end
@@ -5,8 +5,7 @@ class CreateSolidusBlingEvents < ActiveRecord::Migration[7.0]
5
5
  t.string :status
6
6
  t.string :message
7
7
  t.string :body
8
- t.string :name
9
- t.string :method
8
+ t.string :event
10
9
 
11
10
  t.timestamps
12
11
  end
@@ -2,8 +2,9 @@ class CreateSolidusBlingShippingMethods < ActiveRecord::Migration[7.0]
2
2
  def change
3
3
  create_table :solidus_bling_shipping_methods do |t|
4
4
  t.string :alias
5
- t.integer :account_id, null: false, index: true, index: { name: "solidus_bling_shipping_account_index" }
6
- t.integer :spree_shipping_method_id, null: false, index: true, index: { name: "solidus_bling_spree_shipping_index" }
5
+ t.string :company
6
+ t.integer :account_id, null: false, index: true, index: {name: "solidus_bling_shipping_account_index"}
7
+ t.integer :spree_shipping_method_id, null: false, index: true, index: {name: "solidus_bling_spree_shipping_index"}
7
8
 
8
9
  t.timestamps
9
10
 
@@ -4,26 +4,26 @@ module SolidusBling
4
4
  module Generators
5
5
  class InstallGenerator < Rails::Generators::Base
6
6
  class_option :auto_run_migrations, type: :boolean, default: false
7
- source_root File.expand_path('templates', __dir__)
7
+ source_root File.expand_path("templates", __dir__)
8
8
 
9
9
  def self.exit_on_failure?
10
10
  true
11
11
  end
12
12
 
13
13
  def copy_initializer
14
- template 'initializer.rb', 'config/initializers/solidus_bling.rb'
14
+ template "initializer.rb", "config/initializers/solidus_bling.rb"
15
15
  end
16
16
 
17
17
  def add_migrations
18
- run 'bin/rails railties:install:migrations FROM=solidus_bling'
18
+ run "bin/rails railties:install:migrations FROM=solidus_bling"
19
19
  end
20
20
 
21
21
  def run_migrations
22
- run_migrations = options[:auto_run_migrations] || ['', 'y', 'Y'].include?(ask('Would you like to run the migrations now? [Y/n]')) # rubocop:disable Layout/LineLength
22
+ run_migrations = options[:auto_run_migrations] || ["", "y", "Y"].include?(ask("Would you like to run the migrations now? [Y/n]")) # rubocop:disable Layout/LineLength
23
23
  if run_migrations
24
- run 'bin/rails db:migrate'
24
+ run "bin/rails db:migrate"
25
25
  else
26
- puts 'Skipping bin/rails db:migrate, don\'t forget to run it!' # rubocop:disable Rails/Output
26
+ puts "Skipping bin/rails db:migrate, don't forget to run it!" # rubocop:disable Rails/Output
27
27
  end
28
28
  end
29
29
 
@@ -12,7 +12,7 @@ module SolidusBling
12
12
  @configuration ||= Configuration.new
13
13
  end
14
14
 
15
- alias config configuration
15
+ alias_method :config, :configuration
16
16
 
17
17
  def configure
18
18
  yield configuration
@@ -1,41 +1,38 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'solidus_core'
4
- require 'solidus_support'
3
+ require "solidus_core"
4
+ require "solidus_support"
5
5
 
6
6
  module SolidusBling
7
7
  class Engine < Rails::Engine
8
8
  include SolidusSupport::EngineExtensions
9
9
 
10
- isolate_namespace SolidusBling
10
+ isolate_namespace ::SolidusBling
11
11
 
12
- engine_name 'solidus_bling'
12
+ engine_name "solidus_bling"
13
13
 
14
- initializer 'solidus_bling.configure_backend' do
14
+ initializer "solidus_bling.configure_backend" do
15
15
  next unless ::Spree::Backend::Config.respond_to?(:menu_items)
16
16
 
17
17
  ::Spree::Backend::Config.configure do |config|
18
18
  config.menu_items << config.class::MenuItem.new(
19
- [:bling_account],
20
- 'exclamation',
21
- url: :admin_accounts_path,
19
+ label: "bling_account",
20
+ icon: "exclamation",
21
+ url: "/admin/solidus_bling/accounts",
22
22
  condition: -> { can?(:manage, ::Spree::Store) }
23
23
  )
24
24
  end
25
25
  end
26
26
 
27
- # use rspec for tests
28
- config.generators do |g|
29
- g.test_framework :rspec
30
- end
31
-
32
27
  initializer "solidus_bling.pub_sub", after: "spree.core.pub_sub" do |app|
33
28
  app.reloader.to_prepare do
34
- ::Spree::Bus.register(:bling_products_updated)
35
- ::Spree::Bus.register(:bling_contact_created)
36
29
  SolidusBling::Subscriber.new.subscribe_to(::Spree::Bus)
37
30
  end
38
31
  end
39
32
 
33
+ # use rspec for tests
34
+ config.generators do |g|
35
+ g.test_framework :rspec
36
+ end
40
37
  end
41
38
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module SolidusBling
4
- VERSION = '2.0.7'
4
+ VERSION = "3.0.2"
5
5
  end
data/lib/solidus_bling.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'solidus_brazilian_adaptations'
4
- require 'typhoeus'
5
- require 'solidus_bling/configuration'
6
- require 'solidus_bling/version'
7
- require 'solidus_bling/engine'
3
+ require "solidus_brazilian_adaptations"
4
+ require "bling_api"
5
+ require "solidus_bling/configuration"
6
+ require "solidus_bling/version"
7
+ require "solidus_bling/engine"
@@ -1,38 +1,36 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative 'lib/solidus_bling/version'
3
+ require_relative "lib/solidus_bling/version"
4
4
 
5
5
  Gem::Specification.new do |spec|
6
- spec.name = 'solidus_bling'
6
+ spec.name = "solidus_bling"
7
7
  spec.version = SolidusBling::VERSION
8
- spec.authors = ['ulysses-bull']
9
- spec.email = 'contato7bulloleo@gmail.com'
8
+ spec.authors = ["Hamilton Tumenas Borges"]
9
+ spec.email = "hamiltontubo@gmail.com"
10
10
 
11
- spec.summary = 'Solidus extension to integrate with the Bling'
12
- spec.homepage = 'https://github.com/ulysses-bull/solidus_bling#readme'
13
- spec.license = 'BSD-3-Clause'
11
+ spec.summary = "Solidus extension to integrate with the Bling"
12
+ spec.homepage = "https://github.com/hamiltontborges/solidus_bling#readme"
13
+ spec.license = "BSD-3-Clause"
14
14
 
15
- spec.metadata['homepage_uri'] = spec.homepage
16
- spec.metadata['source_code_uri'] = 'https://github.com/ulysses-bull/solidus_bling'
17
- spec.metadata['changelog_uri'] = 'https://github.com/ulysses-bull/solidus_bling/blob/master/CHANGELOG.md'
15
+ spec.metadata["homepage_uri"] = spec.homepage
16
+ spec.metadata["source_code_uri"] = "https://github.com/hamiltontborges/solidus_bling"
17
+ spec.metadata["changelog_uri"] = "https://github.com/hamiltontborges/solidus_bling/blob/master/CHANGELOG.md"
18
18
 
19
- spec.required_ruby_version = Gem::Requirement.new('>= 2.5', '< 4')
19
+ spec.required_ruby_version = Gem::Requirement.new(">= 2.5", "< 4")
20
20
 
21
21
  # Specify which files should be added to the gem when it is released.
22
22
  # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
23
23
  files = Dir.chdir(__dir__) { `git ls-files -z`.split("\x0") }
24
24
 
25
25
  spec.files = files.grep_v(%r{^(test|spec|features)/})
26
- spec.test_files = files.grep(%r{^(test|spec|features)/})
27
26
  spec.bindir = "exe"
28
27
  spec.executables = files.grep(%r{^exe/}) { |f| File.basename(f) }
29
28
  spec.require_paths = ["lib"]
30
29
 
31
- spec.add_dependency 'solidus_core', ['>= 2.0.0', '< 5']
32
- spec.add_dependency 'solidus_support', '~> 0.5'
33
- spec.add_dependency 'typhoeus'
34
- spec.add_dependency 'solidus_brazilian_adaptations'
35
-
36
- spec.add_development_dependency 'solidus_dev_support', '~> 2.7'
30
+ spec.add_dependency "solidus_core", [">= 2.0.0", "< 5"]
31
+ spec.add_dependency "solidus_support", "~> 0.5"
32
+ spec.add_dependency "solidus_brazilian_adaptations"
33
+ spec.add_dependency "bling_api"
37
34
 
35
+ spec.add_development_dependency "solidus_dev_support", "~> 2.7"
38
36
  end