human_enum 0.1.1 → 0.1.2
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 +5 -5
- data/.github/FUNDING.yml +12 -0
- data/.github/workflows/gempush.yml +41 -0
- data/.gitignore +3 -1
- data/.hound.yml +2 -0
- data/.rspec +1 -0
- data/.rubocop.yml +9 -0
- data/.ruby-gemset +1 -0
- data/.ruby-version +1 -0
- data/.semaphore/semaphore.yml +52 -0
- data/CHANGELOG.md +7 -0
- data/Gemfile +2 -0
- data/Gemfile.lock +119 -0
- data/Guardfile +29 -0
- data/Rakefile +5 -3
- data/bin/console +4 -3
- data/human_enum.gemspec +34 -28
- data/lib/human_enum.rb +17 -6
- data/lib/human_enum/version.rb +3 -1
- metadata +117 -8
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: 754cd01c0e5f2c7176d6cb835ee43cbbf555433f3b94f6d87c9762ca8a4091a5
|
|
4
|
+
data.tar.gz: ea1fa8588c89b94387dcb3df06e254041dc986832859e82b085d4bfb0e6dd93f
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: f28aa6018ef05d2bb2a8e745d919760ab4375c0f3056796cdd82903b5b3d1270f8bf1f15176c70d1002def46f4401dd50aa6df9a4e7d6cb90b55554b95c2c733
|
|
7
|
+
data.tar.gz: 9a1d8bc8aa7d50fc72044159631eca687247899c9d763398e8f6446909ac4d48196b098120d8701067c8e28f79f549b1effb3e431b171984c05e8b86fad503cd
|
data/.github/FUNDING.yml
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# These are supported funding model platforms
|
|
2
|
+
|
|
3
|
+
github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
|
|
4
|
+
patreon: # Replace with a single Patreon username
|
|
5
|
+
open_collective: # Replace with a single Open Collective username
|
|
6
|
+
ko_fi: # Replace with a single Ko-fi username
|
|
7
|
+
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
|
|
8
|
+
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
|
|
9
|
+
liberapay: rafasoares # Replace with a single Liberapay username
|
|
10
|
+
issuehunt: # Replace with a single IssueHunt username
|
|
11
|
+
otechie: # Replace with a single Otechie username
|
|
12
|
+
custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
name: Ruby Gem
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches:
|
|
6
|
+
- master
|
|
7
|
+
|
|
8
|
+
jobs:
|
|
9
|
+
build:
|
|
10
|
+
name: Build + Publish
|
|
11
|
+
runs-on: ubuntu-latest
|
|
12
|
+
|
|
13
|
+
steps:
|
|
14
|
+
- uses: actions/checkout@master
|
|
15
|
+
- name: Set up Ruby 2.6
|
|
16
|
+
uses: actions/setup-ruby@v1
|
|
17
|
+
with:
|
|
18
|
+
version: 2.6.x
|
|
19
|
+
|
|
20
|
+
- name: Publish to GPR
|
|
21
|
+
run: |
|
|
22
|
+
mkdir -p $HOME/.gem
|
|
23
|
+
touch $HOME/.gem/credentials
|
|
24
|
+
chmod 0600 $HOME/.gem/credentials
|
|
25
|
+
printf -- "---\n:github: Bearer ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
|
|
26
|
+
gem build *.gemspec
|
|
27
|
+
gem push --KEY github --host https://rubygems.pkg.github.com/${OWNER} *.gem
|
|
28
|
+
env:
|
|
29
|
+
GEM_HOST_API_KEY: ${{secrets.GPR_AUTH_TOKEN}}
|
|
30
|
+
OWNER: rafasoares
|
|
31
|
+
|
|
32
|
+
- name: Publish to RubyGems
|
|
33
|
+
run: |
|
|
34
|
+
mkdir -p $HOME/.gem
|
|
35
|
+
touch $HOME/.gem/credentials
|
|
36
|
+
chmod 0600 $HOME/.gem/credentials
|
|
37
|
+
printf -- "---\n:rubygems_api_key: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
|
|
38
|
+
gem build *.gemspec
|
|
39
|
+
gem push *.gem
|
|
40
|
+
env:
|
|
41
|
+
GEM_HOST_API_KEY: ${{secrets.RUBYGEMS_AUTH_TOKEN}}
|
data/.gitignore
CHANGED
data/.hound.yml
ADDED
data/.rspec
CHANGED
data/.rubocop.yml
ADDED
data/.ruby-gemset
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
rafasoares-human_enum
|
data/.ruby-version
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
ruby-2.6.4
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
version: v1.0
|
|
2
|
+
name: Human Enum
|
|
3
|
+
agent:
|
|
4
|
+
machine:
|
|
5
|
+
type: e1-standard-2
|
|
6
|
+
os_image: ubuntu1804
|
|
7
|
+
containers:
|
|
8
|
+
- name: main
|
|
9
|
+
image: 'ruby:2.6.4'
|
|
10
|
+
env_vars:
|
|
11
|
+
- name: BUNDLER_VERSION
|
|
12
|
+
value: 2.0.2
|
|
13
|
+
blocks:
|
|
14
|
+
- name: Setup
|
|
15
|
+
task:
|
|
16
|
+
jobs:
|
|
17
|
+
- name: bundle
|
|
18
|
+
commands:
|
|
19
|
+
- bundle install --deployment -j 4 --path vendor/bundle
|
|
20
|
+
prologue:
|
|
21
|
+
commands:
|
|
22
|
+
- checkout
|
|
23
|
+
- cache restore
|
|
24
|
+
- gem install bundler -v $BUNDLER_VERSION
|
|
25
|
+
epilogue:
|
|
26
|
+
on_pass:
|
|
27
|
+
commands:
|
|
28
|
+
- cache store
|
|
29
|
+
- name: Code scanning
|
|
30
|
+
task:
|
|
31
|
+
jobs:
|
|
32
|
+
- name: check style
|
|
33
|
+
commands:
|
|
34
|
+
- bundle exec rubocop
|
|
35
|
+
prologue:
|
|
36
|
+
commands:
|
|
37
|
+
- checkout
|
|
38
|
+
- cache restore
|
|
39
|
+
- gem install bundler -v $BUNDLER_VERSION
|
|
40
|
+
- bundle install --deployment --path vendor/bundle
|
|
41
|
+
- name: Unit tests
|
|
42
|
+
task:
|
|
43
|
+
prologue:
|
|
44
|
+
commands:
|
|
45
|
+
- checkout
|
|
46
|
+
- cache restore
|
|
47
|
+
- gem install bundler -v $BUNDLER_VERSION
|
|
48
|
+
- bundle install --deployment --path vendor/bundle
|
|
49
|
+
jobs:
|
|
50
|
+
- name: RSpec
|
|
51
|
+
commands:
|
|
52
|
+
- bundle exec rake spec
|
data/CHANGELOG.md
ADDED
data/Gemfile
CHANGED
data/Gemfile.lock
ADDED
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
PATH
|
|
2
|
+
remote: .
|
|
3
|
+
specs:
|
|
4
|
+
human_enum (0.1.1)
|
|
5
|
+
activerecord (> 5.0.0)
|
|
6
|
+
|
|
7
|
+
GEM
|
|
8
|
+
remote: https://rubygems.org/
|
|
9
|
+
specs:
|
|
10
|
+
activemodel (6.0.0)
|
|
11
|
+
activesupport (= 6.0.0)
|
|
12
|
+
activerecord (6.0.0)
|
|
13
|
+
activemodel (= 6.0.0)
|
|
14
|
+
activesupport (= 6.0.0)
|
|
15
|
+
activesupport (6.0.0)
|
|
16
|
+
concurrent-ruby (~> 1.0, >= 1.0.2)
|
|
17
|
+
i18n (>= 0.7, < 2)
|
|
18
|
+
minitest (~> 5.1)
|
|
19
|
+
tzinfo (~> 1.1)
|
|
20
|
+
zeitwerk (~> 2.1, >= 2.1.8)
|
|
21
|
+
ast (2.4.0)
|
|
22
|
+
coderay (1.1.2)
|
|
23
|
+
concurrent-ruby (1.1.5)
|
|
24
|
+
diff-lcs (1.3)
|
|
25
|
+
ffi (1.11.1)
|
|
26
|
+
formatador (0.2.5)
|
|
27
|
+
guard (2.15.1)
|
|
28
|
+
formatador (>= 0.2.4)
|
|
29
|
+
listen (>= 2.7, < 4.0)
|
|
30
|
+
lumberjack (>= 1.0.12, < 2.0)
|
|
31
|
+
nenv (~> 0.1)
|
|
32
|
+
notiffany (~> 0.0)
|
|
33
|
+
pry (>= 0.9.12)
|
|
34
|
+
shellany (~> 0.0)
|
|
35
|
+
thor (>= 0.18.1)
|
|
36
|
+
guard-compat (1.2.1)
|
|
37
|
+
guard-rspec (4.7.3)
|
|
38
|
+
guard (~> 2.1)
|
|
39
|
+
guard-compat (~> 1.1)
|
|
40
|
+
rspec (>= 2.99.0, < 4.0)
|
|
41
|
+
guard-rubocop (1.3.0)
|
|
42
|
+
guard (~> 2.0)
|
|
43
|
+
rubocop (~> 0.20)
|
|
44
|
+
i18n (1.7.0)
|
|
45
|
+
concurrent-ruby (~> 1.0)
|
|
46
|
+
jaro_winkler (1.5.3)
|
|
47
|
+
listen (3.2.0)
|
|
48
|
+
rb-fsevent (~> 0.10, >= 0.10.3)
|
|
49
|
+
rb-inotify (~> 0.9, >= 0.9.10)
|
|
50
|
+
lumberjack (1.0.13)
|
|
51
|
+
method_source (0.9.2)
|
|
52
|
+
minitest (5.12.2)
|
|
53
|
+
nenv (0.3.0)
|
|
54
|
+
notiffany (0.1.3)
|
|
55
|
+
nenv (~> 0.1)
|
|
56
|
+
shellany (~> 0.0)
|
|
57
|
+
parallel (1.18.0)
|
|
58
|
+
parser (2.6.5.0)
|
|
59
|
+
ast (~> 2.4.0)
|
|
60
|
+
pry (0.12.2)
|
|
61
|
+
coderay (~> 1.1.0)
|
|
62
|
+
method_source (~> 0.9.0)
|
|
63
|
+
rainbow (3.0.0)
|
|
64
|
+
rake (10.5.0)
|
|
65
|
+
rb-fsevent (0.10.3)
|
|
66
|
+
rb-inotify (0.10.0)
|
|
67
|
+
ffi (~> 1.0)
|
|
68
|
+
rspec (3.9.0)
|
|
69
|
+
rspec-core (~> 3.9.0)
|
|
70
|
+
rspec-expectations (~> 3.9.0)
|
|
71
|
+
rspec-mocks (~> 3.9.0)
|
|
72
|
+
rspec-core (3.9.0)
|
|
73
|
+
rspec-support (~> 3.9.0)
|
|
74
|
+
rspec-expectations (3.9.0)
|
|
75
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
|
76
|
+
rspec-support (~> 3.9.0)
|
|
77
|
+
rspec-mocks (3.9.0)
|
|
78
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
|
79
|
+
rspec-support (~> 3.9.0)
|
|
80
|
+
rspec-support (3.9.0)
|
|
81
|
+
rubocop (0.72.0)
|
|
82
|
+
jaro_winkler (~> 1.5.1)
|
|
83
|
+
parallel (~> 1.10)
|
|
84
|
+
parser (>= 2.6)
|
|
85
|
+
rainbow (>= 2.2.2, < 4.0)
|
|
86
|
+
ruby-progressbar (~> 1.7)
|
|
87
|
+
unicode-display_width (>= 1.4.0, < 1.7)
|
|
88
|
+
rubocop-performance (1.5.0)
|
|
89
|
+
rubocop (>= 0.71.0)
|
|
90
|
+
rubocop-rspec (1.36.0)
|
|
91
|
+
rubocop (>= 0.68.1)
|
|
92
|
+
ruby-progressbar (1.10.1)
|
|
93
|
+
shellany (0.0.1)
|
|
94
|
+
sqlite3 (1.4.1)
|
|
95
|
+
thor (0.20.3)
|
|
96
|
+
thread_safe (0.3.6)
|
|
97
|
+
tzinfo (1.2.5)
|
|
98
|
+
thread_safe (~> 0.1)
|
|
99
|
+
unicode-display_width (1.6.0)
|
|
100
|
+
zeitwerk (2.2.0)
|
|
101
|
+
|
|
102
|
+
PLATFORMS
|
|
103
|
+
ruby
|
|
104
|
+
|
|
105
|
+
DEPENDENCIES
|
|
106
|
+
bundler (~> 2.0)
|
|
107
|
+
guard (~> 2.15)
|
|
108
|
+
guard-rspec (~> 4.7)
|
|
109
|
+
guard-rubocop (~> 1.3)
|
|
110
|
+
human_enum!
|
|
111
|
+
rake (~> 10.0)
|
|
112
|
+
rspec (~> 3.0)
|
|
113
|
+
rubocop (~> 0.72.0)
|
|
114
|
+
rubocop-performance (~> 1.5)
|
|
115
|
+
rubocop-rspec (~> 1.36)
|
|
116
|
+
sqlite3 (~> 1.4)
|
|
117
|
+
|
|
118
|
+
BUNDLED WITH
|
|
119
|
+
2.0.2
|
data/Guardfile
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
guard :rubocop, all_on_start: false, cli: '-a' do
|
|
4
|
+
watch(/.+\.rb$/)
|
|
5
|
+
watch(%r{(?:.+/)?\.rubocop(?:_todo)?\.yml$}) { |m| File.dirname(m[0]) }
|
|
6
|
+
end
|
|
7
|
+
|
|
8
|
+
guard :rspec, cmd: 'bundle exec rspec' do
|
|
9
|
+
require 'guard/rspec/dsl'
|
|
10
|
+
dsl = Guard::RSpec::Dsl.new(self)
|
|
11
|
+
|
|
12
|
+
# Feel free to open issues for suggestions and improvements
|
|
13
|
+
|
|
14
|
+
# RSpec files
|
|
15
|
+
rspec = dsl.rspec
|
|
16
|
+
watch(rspec.spec_helper) { rspec.spec_dir }
|
|
17
|
+
watch(rspec.spec_support) { rspec.spec_dir }
|
|
18
|
+
watch(rspec.spec_files)
|
|
19
|
+
|
|
20
|
+
# Ruby files
|
|
21
|
+
ruby = dsl.ruby
|
|
22
|
+
dsl.watch_spec_files_for(ruby.lib_files)
|
|
23
|
+
|
|
24
|
+
# Turnip features and steps
|
|
25
|
+
watch(%r{^spec/acceptance/(.+)\.feature$})
|
|
26
|
+
watch(%r{^spec/acceptance/steps/(.+)_steps\.rb$}) do |m|
|
|
27
|
+
Dir[File.join("**/#{m[1]}.feature")][0] || 'spec/acceptance'
|
|
28
|
+
end
|
|
29
|
+
end
|
data/Rakefile
CHANGED
data/bin/console
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
#!/usr/bin/env ruby
|
|
2
|
+
# frozen_string_literal: true
|
|
2
3
|
|
|
3
|
-
require
|
|
4
|
-
require
|
|
4
|
+
require 'bundler/setup'
|
|
5
|
+
require 'human_enum'
|
|
5
6
|
|
|
6
7
|
# You can add fixtures and/or initialization code here to make experimenting
|
|
7
8
|
# with your gem easier. You can also use a different console, if you like.
|
|
@@ -10,5 +11,5 @@ require "human_enum"
|
|
|
10
11
|
# require "pry"
|
|
11
12
|
# Pry.start
|
|
12
13
|
|
|
13
|
-
require
|
|
14
|
+
require 'irb'
|
|
14
15
|
IRB.start(__FILE__)
|
data/human_enum.gemspec
CHANGED
|
@@ -1,40 +1,46 @@
|
|
|
1
|
-
#
|
|
2
|
-
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
lib = File.expand_path('lib', __dir__)
|
|
3
4
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
4
5
|
require 'human_enum/version'
|
|
5
6
|
|
|
6
7
|
Gem::Specification.new do |spec|
|
|
7
|
-
spec.name =
|
|
8
|
+
spec.name = 'human_enum'
|
|
8
9
|
spec.version = HumanEnum::VERSION
|
|
9
|
-
spec.authors = [
|
|
10
|
-
spec.email = [
|
|
11
|
-
|
|
12
|
-
spec.summary =
|
|
13
|
-
spec.description =
|
|
14
|
-
like any other ActiveRecord
|
|
15
|
-
humanized translations of enum values
|
|
16
|
-
spec.homepage =
|
|
17
|
-
spec.license =
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
spec.metadata['allowed_push_host'] = "https://rubygems.org"
|
|
23
|
-
else
|
|
24
|
-
raise "RubyGems 2.0 or newer is required to protect against " \
|
|
25
|
-
"public gem pushes."
|
|
26
|
-
end
|
|
10
|
+
spec.authors = ['Rafael Soares']
|
|
11
|
+
spec.email = ['rafasoaresms@gmail.com']
|
|
12
|
+
|
|
13
|
+
spec.summary = 'Adds simple and easy I18n support for Rails enums'
|
|
14
|
+
spec.description = 'This gem allows you to specify enum value translations
|
|
15
|
+
like any other ActiveRecord attribute and adds helper methods to get
|
|
16
|
+
humanized translations of enum values'
|
|
17
|
+
spec.homepage = 'https://github.com/rafasoares/human_enum'
|
|
18
|
+
spec.license = 'MIT'
|
|
19
|
+
|
|
20
|
+
spec.metadata['homepage_uri'] = spec.homepage
|
|
21
|
+
spec.metadata['source_code_uri'] = 'https://github.com/rafasoares/human_enum'
|
|
22
|
+
spec.metadata['changelog_uri'] = 'https://github.com/rafasoares/human_enum/blob/master/CHANGELOG.md'
|
|
27
23
|
|
|
28
|
-
spec.files
|
|
24
|
+
spec.files = `git ls-files -z`.split("\x0").reject do |f|
|
|
29
25
|
f.match(%r{^(test|spec|features)/})
|
|
30
26
|
end
|
|
31
|
-
spec.bindir =
|
|
27
|
+
spec.bindir = 'exe'
|
|
32
28
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
|
33
|
-
spec.require_paths = [
|
|
29
|
+
spec.require_paths = ['lib']
|
|
30
|
+
|
|
31
|
+
spec.add_development_dependency 'bundler', '~> 2.0'
|
|
32
|
+
spec.add_development_dependency 'rake', '~> 10.0'
|
|
33
|
+
spec.add_development_dependency 'rspec', '~> 3.0'
|
|
34
|
+
|
|
35
|
+
spec.add_development_dependency 'rubocop', '~> 0.72.0'
|
|
36
|
+
spec.add_development_dependency 'rubocop-performance', '~> 1.5'
|
|
37
|
+
spec.add_development_dependency 'rubocop-rspec', '~> 1.36'
|
|
38
|
+
|
|
39
|
+
spec.add_development_dependency 'guard', '~> 2.15'
|
|
40
|
+
spec.add_development_dependency 'guard-rspec', '~> 4.7'
|
|
41
|
+
spec.add_development_dependency 'guard-rubocop', '~> 1.3'
|
|
34
42
|
|
|
35
|
-
spec.add_development_dependency
|
|
36
|
-
spec.add_development_dependency "rake", "~> 10.0"
|
|
37
|
-
spec.add_development_dependency "rspec", "~> 3.0"
|
|
43
|
+
spec.add_development_dependency 'sqlite3', '~> 1.4'
|
|
38
44
|
|
|
39
|
-
spec.add_dependency
|
|
45
|
+
spec.add_dependency 'activerecord', '> 5.0.0'
|
|
40
46
|
end
|
data/lib/human_enum.rb
CHANGED
|
@@ -1,21 +1,32 @@
|
|
|
1
|
-
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'human_enum/version'
|
|
2
4
|
require 'active_support/concern'
|
|
3
5
|
require 'active_support/core_ext/array'
|
|
6
|
+
require 'active_model/naming'
|
|
4
7
|
require 'active_model/translation'
|
|
8
|
+
require 'active_record/type'
|
|
5
9
|
require 'active_record/enum'
|
|
6
10
|
|
|
11
|
+
# # About Human Enum
|
|
12
|
+
# Human Enum allows you to easily translate `enum` values in [ActiveRecord]
|
|
13
|
+
# models
|
|
14
|
+
|
|
15
|
+
# [ActiveRecord]: https://api.rubyonrails.org/v5.2.3/classes/ActiveRecord/Enum.html
|
|
7
16
|
module HumanEnum
|
|
17
|
+
class Error < StandardError; end
|
|
18
|
+
|
|
8
19
|
extend ActiveSupport::Concern
|
|
9
20
|
|
|
10
21
|
included do
|
|
11
|
-
def human_enum_value
|
|
22
|
+
def human_enum_value(enum_name)
|
|
12
23
|
enum_value = send enum_name
|
|
13
24
|
self.class.human_enum_value(enum_name, enum_value) unless enum_value.nil?
|
|
14
25
|
end
|
|
15
26
|
end
|
|
16
27
|
|
|
17
28
|
class_methods do
|
|
18
|
-
def enum
|
|
29
|
+
def enum(definitions)
|
|
19
30
|
super definitions
|
|
20
31
|
|
|
21
32
|
definitions.keys.without(:_prefix, :_suffix).each do |name|
|
|
@@ -23,7 +34,7 @@ module HumanEnum
|
|
|
23
34
|
end
|
|
24
35
|
end
|
|
25
36
|
|
|
26
|
-
def human_enum_value
|
|
37
|
+
def human_enum_value(enum_name, enum_value)
|
|
27
38
|
attributes_scope = "#{i18n_scope}.attributes"
|
|
28
39
|
enum_key = "#{enum_name.to_s.pluralize}.#{enum_value}"
|
|
29
40
|
|
|
@@ -37,14 +48,14 @@ module HumanEnum
|
|
|
37
48
|
I18n.translate defaults.shift, default: defaults
|
|
38
49
|
end
|
|
39
50
|
|
|
40
|
-
def human_enum
|
|
51
|
+
def human_enum(enum_name)
|
|
41
52
|
send :define_method, "human_#{enum_name}" do
|
|
42
53
|
human_enum_value enum_name
|
|
43
54
|
end
|
|
44
55
|
|
|
45
56
|
collection_name = enum_name.to_s.pluralize
|
|
46
57
|
self.class.send :define_method, "human_#{collection_name}" do
|
|
47
|
-
|
|
58
|
+
human_enum_value enum_name, nil
|
|
48
59
|
end
|
|
49
60
|
end
|
|
50
61
|
end
|
data/lib/human_enum/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: human_enum
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.2
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Rafael Soares
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2019-10-12 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bundler
|
|
@@ -16,14 +16,14 @@ dependencies:
|
|
|
16
16
|
requirements:
|
|
17
17
|
- - "~>"
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: '
|
|
19
|
+
version: '2.0'
|
|
20
20
|
type: :development
|
|
21
21
|
prerelease: false
|
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
23
|
requirements:
|
|
24
24
|
- - "~>"
|
|
25
25
|
- !ruby/object:Gem::Version
|
|
26
|
-
version: '
|
|
26
|
+
version: '2.0'
|
|
27
27
|
- !ruby/object:Gem::Dependency
|
|
28
28
|
name: rake
|
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -52,6 +52,104 @@ dependencies:
|
|
|
52
52
|
- - "~>"
|
|
53
53
|
- !ruby/object:Gem::Version
|
|
54
54
|
version: '3.0'
|
|
55
|
+
- !ruby/object:Gem::Dependency
|
|
56
|
+
name: rubocop
|
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
|
58
|
+
requirements:
|
|
59
|
+
- - "~>"
|
|
60
|
+
- !ruby/object:Gem::Version
|
|
61
|
+
version: 0.72.0
|
|
62
|
+
type: :development
|
|
63
|
+
prerelease: false
|
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
65
|
+
requirements:
|
|
66
|
+
- - "~>"
|
|
67
|
+
- !ruby/object:Gem::Version
|
|
68
|
+
version: 0.72.0
|
|
69
|
+
- !ruby/object:Gem::Dependency
|
|
70
|
+
name: rubocop-performance
|
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
|
72
|
+
requirements:
|
|
73
|
+
- - "~>"
|
|
74
|
+
- !ruby/object:Gem::Version
|
|
75
|
+
version: '1.5'
|
|
76
|
+
type: :development
|
|
77
|
+
prerelease: false
|
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
79
|
+
requirements:
|
|
80
|
+
- - "~>"
|
|
81
|
+
- !ruby/object:Gem::Version
|
|
82
|
+
version: '1.5'
|
|
83
|
+
- !ruby/object:Gem::Dependency
|
|
84
|
+
name: rubocop-rspec
|
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
|
86
|
+
requirements:
|
|
87
|
+
- - "~>"
|
|
88
|
+
- !ruby/object:Gem::Version
|
|
89
|
+
version: '1.36'
|
|
90
|
+
type: :development
|
|
91
|
+
prerelease: false
|
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
93
|
+
requirements:
|
|
94
|
+
- - "~>"
|
|
95
|
+
- !ruby/object:Gem::Version
|
|
96
|
+
version: '1.36'
|
|
97
|
+
- !ruby/object:Gem::Dependency
|
|
98
|
+
name: guard
|
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
|
100
|
+
requirements:
|
|
101
|
+
- - "~>"
|
|
102
|
+
- !ruby/object:Gem::Version
|
|
103
|
+
version: '2.15'
|
|
104
|
+
type: :development
|
|
105
|
+
prerelease: false
|
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
107
|
+
requirements:
|
|
108
|
+
- - "~>"
|
|
109
|
+
- !ruby/object:Gem::Version
|
|
110
|
+
version: '2.15'
|
|
111
|
+
- !ruby/object:Gem::Dependency
|
|
112
|
+
name: guard-rspec
|
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
|
114
|
+
requirements:
|
|
115
|
+
- - "~>"
|
|
116
|
+
- !ruby/object:Gem::Version
|
|
117
|
+
version: '4.7'
|
|
118
|
+
type: :development
|
|
119
|
+
prerelease: false
|
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
121
|
+
requirements:
|
|
122
|
+
- - "~>"
|
|
123
|
+
- !ruby/object:Gem::Version
|
|
124
|
+
version: '4.7'
|
|
125
|
+
- !ruby/object:Gem::Dependency
|
|
126
|
+
name: guard-rubocop
|
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
|
128
|
+
requirements:
|
|
129
|
+
- - "~>"
|
|
130
|
+
- !ruby/object:Gem::Version
|
|
131
|
+
version: '1.3'
|
|
132
|
+
type: :development
|
|
133
|
+
prerelease: false
|
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
135
|
+
requirements:
|
|
136
|
+
- - "~>"
|
|
137
|
+
- !ruby/object:Gem::Version
|
|
138
|
+
version: '1.3'
|
|
139
|
+
- !ruby/object:Gem::Dependency
|
|
140
|
+
name: sqlite3
|
|
141
|
+
requirement: !ruby/object:Gem::Requirement
|
|
142
|
+
requirements:
|
|
143
|
+
- - "~>"
|
|
144
|
+
- !ruby/object:Gem::Version
|
|
145
|
+
version: '1.4'
|
|
146
|
+
type: :development
|
|
147
|
+
prerelease: false
|
|
148
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
149
|
+
requirements:
|
|
150
|
+
- - "~>"
|
|
151
|
+
- !ruby/object:Gem::Version
|
|
152
|
+
version: '1.4'
|
|
55
153
|
- !ruby/object:Gem::Dependency
|
|
56
154
|
name: activerecord
|
|
57
155
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -68,7 +166,7 @@ dependencies:
|
|
|
68
166
|
version: 5.0.0
|
|
69
167
|
description: |-
|
|
70
168
|
This gem allows you to specify enum value translations
|
|
71
|
-
like any other ActiveRecord
|
|
169
|
+
like any other ActiveRecord attribute and adds helper methods to get
|
|
72
170
|
humanized translations of enum values
|
|
73
171
|
email:
|
|
74
172
|
- rafasoaresms@gmail.com
|
|
@@ -76,11 +174,21 @@ executables: []
|
|
|
76
174
|
extensions: []
|
|
77
175
|
extra_rdoc_files: []
|
|
78
176
|
files:
|
|
177
|
+
- ".github/FUNDING.yml"
|
|
178
|
+
- ".github/workflows/gempush.yml"
|
|
79
179
|
- ".gitignore"
|
|
180
|
+
- ".hound.yml"
|
|
80
181
|
- ".rspec"
|
|
182
|
+
- ".rubocop.yml"
|
|
183
|
+
- ".ruby-gemset"
|
|
184
|
+
- ".ruby-version"
|
|
185
|
+
- ".semaphore/semaphore.yml"
|
|
81
186
|
- ".travis.yml"
|
|
187
|
+
- CHANGELOG.md
|
|
82
188
|
- CODE_OF_CONDUCT.md
|
|
83
189
|
- Gemfile
|
|
190
|
+
- Gemfile.lock
|
|
191
|
+
- Guardfile
|
|
84
192
|
- LICENSE.txt
|
|
85
193
|
- README.md
|
|
86
194
|
- Rakefile
|
|
@@ -93,7 +201,9 @@ homepage: https://github.com/rafasoares/human_enum
|
|
|
93
201
|
licenses:
|
|
94
202
|
- MIT
|
|
95
203
|
metadata:
|
|
96
|
-
|
|
204
|
+
homepage_uri: https://github.com/rafasoares/human_enum
|
|
205
|
+
source_code_uri: https://github.com/rafasoares/human_enum
|
|
206
|
+
changelog_uri: https://github.com/rafasoares/human_enum/blob/master/CHANGELOG.md
|
|
97
207
|
post_install_message:
|
|
98
208
|
rdoc_options: []
|
|
99
209
|
require_paths:
|
|
@@ -109,8 +219,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
109
219
|
- !ruby/object:Gem::Version
|
|
110
220
|
version: '0'
|
|
111
221
|
requirements: []
|
|
112
|
-
|
|
113
|
-
rubygems_version: 2.6.11
|
|
222
|
+
rubygems_version: 3.0.3
|
|
114
223
|
signing_key:
|
|
115
224
|
specification_version: 4
|
|
116
225
|
summary: Adds simple and easy I18n support for Rails enums
|