buddy_translatable 0.1.2 → 1.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5860ae961e251dc9f3bb1e1741ed4a41b17e78172a13f349766b3aaaaed00cb8
4
- data.tar.gz: a92c5dc5426d3b1b7ef176e6a4cabb6eca20bd684a55ac7b1ce85bd70408ee47
3
+ metadata.gz: 4e189cdc05da2e42b02d5863d2b936003417be87ec79076a111c7c96278fab31
4
+ data.tar.gz: 3cc54ac8f488cdb2318fcc624b1a2719c7db976b8b270d274788eae73ab25dd4
5
5
  SHA512:
6
- metadata.gz: eb9a0b94b60b05b7f725e88ec449c697d8bc1b1acf4c502f0f2c12fa359600cc4930815206cc9e72884215a779f079f3fe118cf3b6e34ec3999778e135ce689e
7
- data.tar.gz: 15f512c46b02f8dfbdd19643fe231f90bb65cfb170db8a10cf950a0ef6a9f67e9dce3e5dbcf570346bbb7a7ebb55fb60303daa5768caad3d459411cbc3234cbe
6
+ metadata.gz: d83e39ffa2db864154bb58cbebef361034c20c9f7388b6191bbce7b0fcd030b3250f608e0ed8dd5cb66262fad941e5bc6b758b7358cb18e5b3207b8bd1124415
7
+ data.tar.gz: 7b97f4bdce0772d5fd170bc195110b445eb211754e18fbd99edac3ad6a34795ca6632ffa892f10d594497a2aee99702ae8ae43c3bbae7e6bd625d8e9b26b2ea9
@@ -0,0 +1,43 @@
1
+ on:
2
+ push:
3
+ tags: # triggered once a git tag is published
4
+ - '*'
5
+
6
+ name: Create Release
7
+
8
+ jobs:
9
+ build:
10
+ name: Create Release
11
+ runs-on: ubuntu-latest
12
+ steps:
13
+ - name: Checkout code
14
+ uses: actions/checkout@v2
15
+ with:
16
+ fetch-depth: 0
17
+
18
+ # Changelog action adaptations
19
+ - name: Create required package.json
20
+ run: test -f package.json || echo '{}' >package.json
21
+ - name: Detect Previous Tag (action not detecting very well)
22
+ run: echo "::set-output name=previous_tag::$(git describe --abbrev=0 --tags `git rev-list --tags --skip=1 --max-count=1`)"
23
+ id: tag_checker
24
+
25
+ - name: Generate Changelog
26
+ uses: scottbrenner/generate-changelog-action@master
27
+ id: Changelog
28
+ with:
29
+ from-tag: ${{steps.tag_checker.outputs.previous_tag}}
30
+ to-tag: HEAD
31
+
32
+ - name: Create Release
33
+ id: create_release
34
+ uses: actions/create-release@latest
35
+ env:
36
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # This token is provided by Actions, you do not need to create your own token
37
+ with:
38
+ tag_name: ${{ github.ref }}
39
+ release_name: Release ${{ github.ref }}
40
+ body: |
41
+ ${{ steps.Changelog.outputs.changelog }}
42
+ draft: false
43
+ prerelease: false
@@ -0,0 +1,31 @@
1
+ name: App tests
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - master
7
+ - staging
8
+ pull_request:
9
+
10
+ jobs:
11
+ build:
12
+ runs-on: ubuntu-latest
13
+
14
+ steps:
15
+ - name: Checkout repository
16
+ uses: actions/checkout@v2
17
+ - name: Cancel previous Workflow Actions
18
+ uses: styfle/cancel-workflow-action@0.6.0
19
+ with:
20
+ access_token: ${{ github.token }}
21
+ - name: download docker-compose cache
22
+ run: docker-compose pull
23
+ - uses: satackey/action-docker-layer-caching@v0.0.11 # Cache or restore docker cache
24
+ continue-on-error: true # Ignore the failure of a step and avoid terminating the job.
25
+ with:
26
+ key: app_docker
27
+
28
+ - name: Run rspec test
29
+ run: docker-compose run test /bin/sh -c "rspec"
30
+ - name: Check codestyle
31
+ run: docker-compose run test /bin/sh -c "rubocop"
data/.rubocop.yml ADDED
@@ -0,0 +1,18 @@
1
+ # This is the configuration used to check the rubocop source code.
2
+
3
+ AllCops:
4
+ Exclude:
5
+ - 'bin/**/*'
6
+ - 'spec/**/*'
7
+ - 'spec/spec_helper.rb'
8
+ - 'Gemfile'
9
+ - 'buddy_translatable.gemspec'
10
+
11
+ Style/BlockComments:
12
+ Enabled: false
13
+
14
+ Style/Documentation:
15
+ Enabled: false
16
+
17
+ Style/RescueStandardError:
18
+ EnforcedStyle: implicit
data/.travis.yml CHANGED
@@ -1,5 +1,5 @@
1
1
  sudo: false
2
2
  language: ruby
3
3
  rvm:
4
- - 2.3.1
4
+ - 2.5.5
5
5
  before_install: gem install bundler -v 1.16.2
data/CHANGELOG.md ADDED
@@ -0,0 +1,14 @@
1
+ # 1.0.1 (18-06-2021)
2
+ - Fix: fix error when running rails db:migrate
3
+
4
+ # 1.0 (17-06-2021)
5
+ - feat: Support for text format attributes (non jsonb attributes)
6
+ - chore: Add container settings
7
+ - refactor: Change default data format from stringified keys into symbolized keys
8
+ - feat: support for locale specific setter
9
+
10
+ # 0.2.0 (14-08-2020)
11
+ - Removed sales_datable
12
+
13
+ # 0.1.2
14
+ - First public release
data/Dockerfile ADDED
@@ -0,0 +1,7 @@
1
+ FROM ruby:2.5
2
+ RUN apt-get update -qq
3
+ RUN gem install bundler
4
+ WORKDIR /app
5
+ COPY . /app
6
+ RUN bundle install
7
+
data/Gemfile CHANGED
@@ -4,3 +4,6 @@ git_source(:github) {|repo_name| "https://github.com/#{repo_name}" }
4
4
 
5
5
  # Specify your gem's dependencies in buddy_translatable.gemspec
6
6
  gemspec
7
+
8
+ gem 'pg'
9
+ gem 'rubocop'
data/Gemfile.lock CHANGED
@@ -1,34 +1,39 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- buddy_translatable (0.1.2)
5
- activerecord (>= 5.0)
6
- activesupport (>= 5.0)
4
+ buddy_translatable (1.0.2)
5
+ activerecord
6
+ activesupport
7
7
  i18n
8
- pg
9
8
 
10
9
  GEM
11
10
  remote: https://rubygems.org/
12
11
  specs:
13
- activemodel (5.2.3)
14
- activesupport (= 5.2.3)
15
- activerecord (5.2.3)
16
- activemodel (= 5.2.3)
17
- activesupport (= 5.2.3)
18
- arel (>= 9.0)
19
- activesupport (5.2.3)
12
+ activemodel (6.1.3.2)
13
+ activesupport (= 6.1.3.2)
14
+ activerecord (6.1.3.2)
15
+ activemodel (= 6.1.3.2)
16
+ activesupport (= 6.1.3.2)
17
+ activesupport (6.1.3.2)
20
18
  concurrent-ruby (~> 1.0, >= 1.0.2)
21
- i18n (>= 0.7, < 2)
22
- minitest (~> 5.1)
23
- tzinfo (~> 1.1)
24
- arel (9.0.0)
25
- concurrent-ruby (1.1.5)
19
+ i18n (>= 1.6, < 2)
20
+ minitest (>= 5.1)
21
+ tzinfo (~> 2.0)
22
+ zeitwerk (~> 2.3)
23
+ ast (2.4.2)
24
+ concurrent-ruby (1.1.9)
26
25
  diff-lcs (1.3)
27
- i18n (1.6.0)
26
+ i18n (1.8.10)
28
27
  concurrent-ruby (~> 1.0)
29
- minitest (5.11.3)
30
- pg (1.1.4)
28
+ minitest (5.14.4)
29
+ parallel (1.20.1)
30
+ parser (3.0.1.1)
31
+ ast (~> 2.4.1)
32
+ pg (1.2.3)
33
+ rainbow (3.0.0)
31
34
  rake (10.5.0)
35
+ regexp_parser (2.1.1)
36
+ rexml (3.2.5)
32
37
  rspec (3.8.0)
33
38
  rspec-core (~> 3.8.0)
34
39
  rspec-expectations (~> 3.8.0)
@@ -42,9 +47,22 @@ GEM
42
47
  diff-lcs (>= 1.2.0, < 2.0)
43
48
  rspec-support (~> 3.8.0)
44
49
  rspec-support (3.8.2)
45
- thread_safe (0.3.6)
46
- tzinfo (1.2.5)
47
- thread_safe (~> 0.1)
50
+ rubocop (1.17.0)
51
+ parallel (~> 1.10)
52
+ parser (>= 3.0.0.0)
53
+ rainbow (>= 2.2.2, < 4.0)
54
+ regexp_parser (>= 1.8, < 3.0)
55
+ rexml
56
+ rubocop-ast (>= 1.7.0, < 2.0)
57
+ ruby-progressbar (~> 1.7)
58
+ unicode-display_width (>= 1.4.0, < 3.0)
59
+ rubocop-ast (1.7.0)
60
+ parser (>= 3.0.1.1)
61
+ ruby-progressbar (1.11.0)
62
+ tzinfo (2.0.4)
63
+ concurrent-ruby (~> 1.0)
64
+ unicode-display_width (2.0.0)
65
+ zeitwerk (2.4.2)
48
66
 
49
67
  PLATFORMS
50
68
  ruby
@@ -52,8 +70,10 @@ PLATFORMS
52
70
  DEPENDENCIES
53
71
  buddy_translatable!
54
72
  bundler
55
- rake (~> 10.0)
56
- rspec (~> 3.0)
73
+ pg
74
+ rake
75
+ rspec
76
+ rubocop
57
77
 
58
78
  BUNDLED WITH
59
- 1.16.2
79
+ 1.17.3
data/README.md CHANGED
@@ -1,15 +1,20 @@
1
1
  # JSON Buddy Translatable
2
2
 
3
- Allows you to store text data in multiple languages or Sales channels. Based on [translateable](https://github.com/olegantonyan/translateable), but with a few differences:
3
+ Allows you to store text data in multiple languages. Based on [translateable](https://github.com/olegantonyan/translateable), but with a few differences:
4
4
 
5
5
  1. Support for key methods
6
- 2. Support for Sales channels
6
+ 2. No extra table dependency
7
+ 3. Single attribute
8
+ 4. Support for `jsonb` and `text` format attributes
7
9
 
8
10
  ### Translations
9
11
  ```ruby
10
12
  class Post < ActiveRecord::Base
11
13
  include BuddyTranslatable
12
- translatable :title, default_key: :de
14
+ translatable :title
15
+ # translatable :title, default_key: :de, available_locales: [:de, :en]
16
+ # default_key: by default use `I18n.default_locale`
17
+ # available_locales: by default `I18n.available_locales`
13
18
  end
14
19
 
15
20
  post = Post.create(title: { de: 'Hallo', en: 'Hello' })
@@ -33,49 +38,16 @@ post.update(title: 'Hello changed')
33
38
  post.title_en # => Hello changed
34
39
  post.title_de # => Hallo
35
40
  post.title_es # => Hallo (return default key if not found)
41
+ post.title_es = 'Hola' # => Set value for a specific locale
42
+ post.title_es # => Hola (return defined value)
36
43
 
37
44
  # Replace all data
38
45
  post.update(title: { en: 'En val', de: 'De val' })
39
46
  post.title_en # => En val
40
- ```
41
-
42
- ### Sales Channels
43
- ```ruby
44
- class Post < ActiveRecord::Base
45
- include BuddyTranslatable
46
- sales_datable :key, default_key: :vev
47
- end
48
- post = Post.create(key: { vev: 'vev', ebay: 'ebay' })
49
-
50
- # getter
51
- post.key #=> vev # return default key
52
- BuddyTranslatable.config.current_sales_key = :ebay
53
- post.key #=> ebay
54
-
55
- # you can reset current sales channel by
56
- BuddyTranslatable.config.reset_current_sales_key
57
-
58
- # Getter using methods
59
- post.key_vev #=> vev
60
- post.key_ebay #=> ebay
61
- post.key_for(:ebay) #=> ebay
62
- post.key_data_for(:vev) #=> vev
63
- post.key_data # => return all data (Hash)
64
-
65
- # Update current sales key (if empty will use default_key) and maintain others
66
- BuddyTranslatable.config.current_sales_key = :ebay
67
- post.update(key: 'Ebay changed')
68
- post.key_ebay # => Ebay changed
69
- post.key_vev # => vev
70
-
71
- # Replace all data
72
- post.update(key: { vev: 'vev val', ebay: 'ebay val' })
73
- post.key_vev # => vev val
47
+ post.title_es # => De val # default_key value is used when not defined
74
48
  ```
75
49
 
76
50
  ## Requirements
77
-
78
- - PostgreSQL >= 9.4
79
51
  - ActiveRecord >= 4.2
80
52
  - I18n
81
53
 
@@ -84,15 +56,11 @@ post.key_vev # => vev val
84
56
  Add this line to your application's Gemfile:
85
57
 
86
58
  ```ruby
87
- gem 'buddy_translatable'
59
+ gem 'buddy_translatable', '>= 1.0'
88
60
  ```
89
61
 
90
- Create initializer:
91
- ```ruby
92
- # config/initializers/translatable.rb
93
- BuddyTranslatable.config.available_sales_keys = %i[de ebay]
94
- I18n.available_locales = %i[de en es]
95
- ```
62
+ Configure your available locales in your rails app, like:
63
+ ```I18n.available_locales = %i[de en es]```
96
64
 
97
65
  And then execute:
98
66
  ``` bundle install ```
@@ -104,7 +72,6 @@ class TestModel < ActiveRecord::Base
104
72
  include BuddyTranslatable
105
73
 
106
74
  translatable :title, default_key: :de
107
- sales_datable :key, default_key: :vev #, available_keys: [:ebay, :amazon, :vev]
108
75
  end
109
76
  ```
110
77
 
@@ -116,13 +83,16 @@ class AddTitleToPosts < ActiveRecord::Migration
116
83
  def change
117
84
  add_column :posts, :title, :jsonb, null: false, default: {}
118
85
  add_column :posts, :key, :jsonb, null: false, default: {}
86
+
87
+ # for databases that does not support jsonb format
88
+ # add_column :posts, :title, :text, null: false, default: '{}'
119
89
  end
120
90
  end
121
91
  ```
122
92
 
123
93
  ### Queries
124
94
 
125
- For searching you can use the following concern:
95
+ For searching you can use the following concern (Only `jsonb` format attributes):
126
96
  ```ruby
127
97
  module JsonbQuerable
128
98
  extend ActiveSupport::Concern
@@ -158,8 +128,11 @@ Post.where("title->>'en' = ?", 'hello')
158
128
  ```
159
129
 
160
130
  ## Development
131
+ Run tests with:
132
+ `docker-compose run test bash -c "rspec"`
133
+ Check code style:
134
+ `docker-compose run test bash -c "rubocop"`
161
135
 
162
- 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.
163
136
 
164
137
  ## Contributing
165
138
 
@@ -167,3 +140,4 @@ Bug reports and pull requests are welcome on GitHub at https://github.com/owen23
167
140
 
168
141
  ## License
169
142
  The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
143
+
data/Rakefile CHANGED
@@ -1,6 +1,8 @@
1
- require "bundler/gem_tasks"
2
- require "rspec/core/rake_task"
1
+ # frozen_string_literal: true
2
+
3
+ require 'bundler/gem_tasks'
4
+ require 'rspec/core/rake_task'
3
5
 
4
6
  RSpec::Core::RakeTask.new(:spec)
5
7
 
6
- task :default => :spec
8
+ task default: :spec
@@ -11,8 +11,8 @@ Gem::Specification.new do |spec|
11
11
  spec.authors = ['Owen']
12
12
  spec.email = ['owenperedo@gmail.com']
13
13
 
14
- spec.summary = 'Manages translations and sales data fields'
15
- spec.description = 'Manages translations and sales data fields'
14
+ spec.summary = 'Manages attribute translations translations'
15
+ spec.description = 'Manages attribute translations translations'
16
16
  spec.homepage = 'https://github.com/owen2345/buddy_translatable'
17
17
  spec.license = 'MIT'
18
18
 
@@ -29,11 +29,10 @@ Gem::Specification.new do |spec|
29
29
  spec.require_paths = %w[lib]
30
30
 
31
31
  spec.add_development_dependency 'bundler'
32
- spec.add_development_dependency 'rake', '~> 10.0'
33
- spec.add_development_dependency 'rspec', '~> 3.0'
32
+ spec.add_development_dependency 'rake'
33
+ spec.add_development_dependency 'rspec'
34
34
 
35
- spec.add_dependency 'activerecord', '>= 5.0'
36
- spec.add_dependency 'activesupport', '>= 5.0'
35
+ spec.add_dependency 'activerecord'
36
+ spec.add_dependency 'activesupport'
37
37
  spec.add_dependency 'i18n'
38
- spec.add_dependency 'pg'
39
38
  end
@@ -0,0 +1,25 @@
1
+ version: '2'
2
+
3
+ services:
4
+ postgres:
5
+ image: postgres:10.6-alpine
6
+ volumes:
7
+ - postgres_data:/var/lib/postgresql/data
8
+ ports:
9
+ - 5438:5432
10
+ environment:
11
+ POSTGRES_USER: ${POSTGRES_USER:-root}
12
+ POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-password}
13
+
14
+ test:
15
+ build: .
16
+ command: sh -c 'bundle exec rspec'
17
+ volumes:
18
+ - .:/app
19
+ - bundler_gems:/usr/local/bundle/
20
+ depends_on:
21
+ - postgres
22
+
23
+ volumes:
24
+ bundler_gems:
25
+ postgres_data:
@@ -1,13 +1,8 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'buddy_translatable/version'
4
- require 'buddy_translatable/configuration'
5
4
  require 'buddy_translatable/core'
6
5
  module BuddyTranslatable
7
- def self.config
8
- @config ||= Configuration.new
9
- end
10
-
11
6
  def self.included(base)
12
7
  base.extend BuddyTranslatable::Core
13
8
  end
@@ -2,40 +2,32 @@
2
2
 
3
3
  module BuddyTranslatable
4
4
  module Core
5
- def translatable(*attrs, default_key: :de, available_keys: [])
6
- available_keys = I18n.available_locales unless available_keys.present?
5
+ def translatable(*attrs, default_key: I18n.default_locale, available_locales: nil)
6
+ available_locales ||= I18n.available_locales
7
7
  attrs.each do |attr|
8
- define_translatable_methods(attr, default_key)
9
- define_translatable_key_methods(attr, available_keys)
8
+ define_translatable_methods(attr, default_key.to_sym)
9
+ define_translatable_key_methods(attr, available_locales.map(&:to_sym))
10
10
  end
11
11
  end
12
12
 
13
- def sales_datable(*attrs, default_key: :vev, available_keys: [])
14
- unless available_keys.present?
15
- available_keys = BuddyTranslatable.config.available_sales_keys
16
- end
17
- attrs.each do |attr|
18
- define_translatable_methods(attr, default_key, is_locale: false)
19
- define_translatable_key_methods(attr, available_keys)
20
- end
21
- end
22
-
23
- def define_translatable_methods(attr, default_key, is_locale: true)
24
- current_key = lambda do
25
- res = I18n.locale
26
- current_sales_key = BuddyTranslatable.config.current_sales_key
27
- res = current_sales_key || default_key unless is_locale
28
- res.to_sym
29
- end
30
- define_translatable_setters(attr, current_key)
31
- define_translatable_key_getters(attr, default_key)
32
- define_translatable_getters(attr, current_key)
13
+ # rubocop:disable Style/RescueModifier
14
+ def define_translatable_methods(attr, fallback_locale)
15
+ format = (try(:column_types) || try(:attribute_types))[attr.to_s].type rescue :text
16
+ define_translatable_setters(attr, format)
17
+ define_translatable_key_getters(attr, fallback_locale)
18
+ define_translatable_getters(attr)
33
19
  end
20
+ # rubocop:enable Style/RescueModifier
34
21
 
35
- def define_translatable_setters(attr, current_key)
22
+ # Sample:
23
+ # model.title_data = { de: 'de val', en: 'en val' } # ==> replace value data
24
+ # model.title = { de: 'de val', en: 'en val' } # replace value data
25
+ # model.title = 'custom value' # sets new value for current locale
26
+ def define_translatable_setters(attr, format)
36
27
  define_method("#{attr}_data=") do |arg|
37
28
  data = send("#{attr}_data")
38
- self[attr] = arg.is_a?(Hash) ? arg : data.merge(current_key.call => arg)
29
+ data = arg.is_a?(Hash) ? arg.symbolize_keys : data.merge(I18n.locale => arg)
30
+ self[attr] = %i[string text].include?(format) ? data.to_json : data
39
31
  end
40
32
 
41
33
  define_method("#{attr}=") do |arg|
@@ -43,11 +35,14 @@ module BuddyTranslatable
43
35
  end
44
36
  end
45
37
 
46
- def define_translatable_key_getters(attr, default_key)
38
+ # Sample:
39
+ # model.title_for(:de) # ==> print value for provided locale
40
+ # model.title_data_for(:de) # print value for provided locale
41
+ def define_translatable_key_getters(attr, fallback_locale)
47
42
  define_method("#{attr}_data_for") do |key|
48
43
  value = send("#{attr}_data")
49
44
  value[key] ||
50
- value[default_key].presence ||
45
+ value[fallback_locale].presence ||
51
46
  value.values.find(&:present?)
52
47
  end
53
48
 
@@ -56,24 +51,36 @@ module BuddyTranslatable
56
51
  end
57
52
  end
58
53
 
59
- def define_translatable_getters(attr, current_key)
54
+ # Sample:
55
+ # model.title_data # ==> print values data
56
+ # model.title # print value for current locale
57
+ def define_translatable_getters(attr)
60
58
  define_method("#{attr}_data") do
61
- res = self[attr]
62
- res = new_record? ? { current_key.call => '' } : {} unless res.present?
63
- res.symbolize_keys.with_indifferent_access
59
+ res = self[attr] || {}
60
+ res = new_record? ? { I18n.locale => '' } : {} unless res.present?
61
+ res = JSON.parse(res) if res.is_a?(String)
62
+ res.symbolize_keys
64
63
  end
65
64
 
66
65
  define_method(attr) do |**_args|
67
- send("#{attr}_data_for", current_key.call)
66
+ send("#{attr}_data_for", I18n.locale)
68
67
  end
69
68
  end
70
69
 
71
- def define_translatable_key_methods(attr, keys)
72
- keys.each do |key|
73
- define_method("#{attr}_#{key}") do
74
- send("#{attr}_data_for", key)
70
+ # Sample:
71
+ # model.title_de # ==> "de title"
72
+ # model.title_de = "new title" # assign value for specific locale
73
+ def define_translatable_key_methods(attr, locales)
74
+ locales.each do |locale|
75
+ define_method("#{attr}_#{locale}") do
76
+ send("#{attr}_data_for", locale)
77
+ end
78
+
79
+ define_method("#{attr}_#{locale}=") do |value|
80
+ data = send("#{attr}_data").merge(locale => value)
81
+ send("#{attr}_data=", data)
75
82
  end
76
83
  end
77
84
  end
78
85
  end
79
- end
86
+ end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module BuddyTranslatable
2
- VERSION = '0.1.2'.freeze
4
+ VERSION = '1.0.2'
3
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: buddy_translatable
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Owen
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-10-29 00:00:00.000000000 Z
11
+ date: 2021-08-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -28,60 +28,46 @@ dependencies:
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: '10.0'
33
+ version: '0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: '10.0'
40
+ version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: '3.0'
47
+ version: '0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: '3.0'
54
+ version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: activerecord
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - ">="
60
60
  - !ruby/object:Gem::Version
61
- version: '5.0'
61
+ version: '0'
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - ">="
67
67
  - !ruby/object:Gem::Version
68
- version: '5.0'
68
+ version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: activesupport
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - ">="
74
- - !ruby/object:Gem::Version
75
- version: '5.0'
76
- type: :runtime
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- version: '5.0'
83
- - !ruby/object:Gem::Dependency
84
- name: i18n
85
71
  requirement: !ruby/object:Gem::Requirement
86
72
  requirements:
87
73
  - - ">="
@@ -95,7 +81,7 @@ dependencies:
95
81
  - !ruby/object:Gem::Version
96
82
  version: '0'
97
83
  - !ruby/object:Gem::Dependency
98
- name: pg
84
+ name: i18n
99
85
  requirement: !ruby/object:Gem::Requirement
100
86
  requirements:
101
87
  - - ">="
@@ -108,17 +94,22 @@ dependencies:
108
94
  - - ">="
109
95
  - !ruby/object:Gem::Version
110
96
  version: '0'
111
- description: Manages translations and sales data fields
97
+ description: Manages attribute translations translations
112
98
  email:
113
99
  - owenperedo@gmail.com
114
100
  executables: []
115
101
  extensions: []
116
102
  extra_rdoc_files: []
117
103
  files:
104
+ - ".github/workflows/release.yml"
105
+ - ".github/workflows/tests.yml"
118
106
  - ".gitignore"
119
107
  - ".rspec"
108
+ - ".rubocop.yml"
120
109
  - ".travis.yml"
110
+ - CHANGELOG.md
121
111
  - CODE_OF_CONDUCT.md
112
+ - Dockerfile
122
113
  - Gemfile
123
114
  - Gemfile.lock
124
115
  - LICENSE.txt
@@ -127,15 +118,15 @@ files:
127
118
  - bin/console
128
119
  - bin/setup
129
120
  - buddy_translatable.gemspec
121
+ - docker-compose.yaml
130
122
  - lib/buddy_translatable.rb
131
- - lib/buddy_translatable/configuration.rb
132
123
  - lib/buddy_translatable/core.rb
133
124
  - lib/buddy_translatable/version.rb
134
125
  homepage: https://github.com/owen2345/buddy_translatable
135
126
  licenses:
136
127
  - MIT
137
128
  metadata: {}
138
- post_install_message:
129
+ post_install_message:
139
130
  rdoc_options: []
140
131
  require_paths:
141
132
  - lib
@@ -150,9 +141,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
150
141
  - !ruby/object:Gem::Version
151
142
  version: '0'
152
143
  requirements: []
153
- rubyforge_project:
154
- rubygems_version: 2.7.7
155
- signing_key:
144
+ rubygems_version: 3.1.2
145
+ signing_key:
156
146
  specification_version: 4
157
- summary: Manages translations and sales data fields
147
+ summary: Manages attribute translations translations
158
148
  test_files: []
@@ -1,15 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module BuddyTranslatable
4
- class Configuration
5
- attr_accessor :available_sales_keys, :current_sales_key
6
-
7
- def initialize
8
- @available_sales_keys = %i[vev ebay]
9
- end
10
-
11
- def reset_current_sales_key
12
- @current_sales_key = nil
13
- end
14
- end
15
- end