helpyr 0.0.1 → 0.1.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/lib/helpyr/engine.rb +10 -0
- data/lib/helpyr/locales/en.yml +23 -0
- data/lib/helpyr/locales/pt-BR.yml +23 -0
- data/lib/helpyr/page_title.rb +12 -0
- data/lib/helpyr/translation.rb +182 -0
- data/lib/helpyr/version.rb +1 -1
- data/lib/helpyr.rb +5 -1
- metadata +22 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 86d4399373dd70928d6d29765c2c22a7443894b166b2212c5c5adc50310c83f9
|
|
4
|
+
data.tar.gz: c1a2e9d4629e54ee11276dafede156d2e5fd9b20a03955b37383b887c15f8708
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 68d849bb9f0ed2dffb9d2914d857bd8394ec2935f5f5ff820911de81f775d9de4e157290b373bf718bc111110dccb5b80ddc7a2b4d22c3619e1ace20c9260813
|
|
7
|
+
data.tar.gz: c1a774b9f1863f942d50938947014ef778e87f22415916f0f45daf051a771d49516cbaef938d6f6490fb56e2d219b554060e9c1e3845a59c7d6cf22b697e4a09
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
en:
|
|
2
|
+
helpyr:
|
|
3
|
+
boolean:
|
|
4
|
+
true: "Yes"
|
|
5
|
+
false: "No"
|
|
6
|
+
alerts:
|
|
7
|
+
not_found:
|
|
8
|
+
male: "No %{model} found."
|
|
9
|
+
female: "No %{model} found."
|
|
10
|
+
form:
|
|
11
|
+
button:
|
|
12
|
+
create: "Create %{model}"
|
|
13
|
+
update: "Update %{model}"
|
|
14
|
+
alerts:
|
|
15
|
+
create:
|
|
16
|
+
success: "Record created successfully."
|
|
17
|
+
update:
|
|
18
|
+
success: "Record updated successfully."
|
|
19
|
+
destroy:
|
|
20
|
+
success: "Record deleted successfully."
|
|
21
|
+
not_found:
|
|
22
|
+
male: "No %{model} found."
|
|
23
|
+
female: "No %{model} found."
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
pt-BR:
|
|
2
|
+
helpyr:
|
|
3
|
+
boolean:
|
|
4
|
+
true: "Sim"
|
|
5
|
+
false: "Não"
|
|
6
|
+
alerts:
|
|
7
|
+
not_found:
|
|
8
|
+
male: "Nenhum %{model} foi encontrado."
|
|
9
|
+
female: "Nenhuma %{model} foi encontrada."
|
|
10
|
+
form:
|
|
11
|
+
button:
|
|
12
|
+
create: "Criar %{model}"
|
|
13
|
+
update: "Atualizar %{model}"
|
|
14
|
+
alerts:
|
|
15
|
+
create:
|
|
16
|
+
success: "Registro criado com sucesso."
|
|
17
|
+
update:
|
|
18
|
+
success: "Registro atualizado com sucesso."
|
|
19
|
+
destroy:
|
|
20
|
+
success: "Registro apagado com sucesso."
|
|
21
|
+
not_found:
|
|
22
|
+
male: "Nenhum %{model} foi encontrado."
|
|
23
|
+
female: "Nenhuma %{model} foi encontrada."
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
module Helpyr
|
|
2
|
+
module Translation
|
|
3
|
+
##
|
|
4
|
+
# Public: Translate a model name.
|
|
5
|
+
#
|
|
6
|
+
# model: Model class.
|
|
7
|
+
# count: Count.
|
|
8
|
+
#
|
|
9
|
+
# Examples:
|
|
10
|
+
#
|
|
11
|
+
# <%= tm(Post) %>
|
|
12
|
+
# # => "Artigo"
|
|
13
|
+
#
|
|
14
|
+
# <%= tm(Post, 2) %>
|
|
15
|
+
# # => "Artigos"
|
|
16
|
+
#
|
|
17
|
+
# Returns translated model.
|
|
18
|
+
def translate_model_name(model, ...)
|
|
19
|
+
model.model_name.human(...)
|
|
20
|
+
end
|
|
21
|
+
alias_method :tm, :translate_model_name
|
|
22
|
+
|
|
23
|
+
##
|
|
24
|
+
# Public: Translate a model name pluralized.
|
|
25
|
+
#
|
|
26
|
+
# model: Model class.
|
|
27
|
+
#
|
|
28
|
+
# Examples:
|
|
29
|
+
#
|
|
30
|
+
# <%= tmp(Post) %>
|
|
31
|
+
# # => "Artigos"
|
|
32
|
+
#
|
|
33
|
+
# Returns translated model pluralized.
|
|
34
|
+
def translate_model_name_pluralized(model, **)
|
|
35
|
+
translate_model_name(model, count: 2, **)
|
|
36
|
+
end
|
|
37
|
+
alias_method :tmp, :translate_model_name_pluralized
|
|
38
|
+
|
|
39
|
+
##
|
|
40
|
+
# Public: Translate a model submit button.
|
|
41
|
+
#
|
|
42
|
+
# model: Model class.
|
|
43
|
+
#
|
|
44
|
+
# Examples:
|
|
45
|
+
#
|
|
46
|
+
# <%= tmb(Post, :create) %>
|
|
47
|
+
# => <button name="button" type="submit" class="btn btn-primary">
|
|
48
|
+
# => <i class="bi bi-save2"> </i>Criar Artigo
|
|
49
|
+
# => </button>
|
|
50
|
+
#
|
|
51
|
+
# <%= tmb(Post, :update) %>
|
|
52
|
+
# => <button name="button" type="submit" class="btn btn-primary">
|
|
53
|
+
# => <i class="bi bi-save2"> </i>Atualizar Artigo
|
|
54
|
+
# => </button>
|
|
55
|
+
#
|
|
56
|
+
# Returns translated model pluralized.
|
|
57
|
+
def translate_model_button(model, kind)
|
|
58
|
+
I18n.t("helpyr.form.button.#{kind}", model: tm(model))
|
|
59
|
+
end
|
|
60
|
+
alias_method :tmb, :translate_model_button
|
|
61
|
+
|
|
62
|
+
##
|
|
63
|
+
# Public: Translate a model attribute.
|
|
64
|
+
#
|
|
65
|
+
# model: Model class.
|
|
66
|
+
# attribute: Attribute name.
|
|
67
|
+
# count: Count.
|
|
68
|
+
#
|
|
69
|
+
# Examples
|
|
70
|
+
#
|
|
71
|
+
# <%= ta(Post, :title) %>
|
|
72
|
+
# # => "Titulo"
|
|
73
|
+
#
|
|
74
|
+
# <%= ta(Post, :title, 2) %>
|
|
75
|
+
# # => "Títulos"
|
|
76
|
+
#
|
|
77
|
+
# Returns translated model's attribute.
|
|
78
|
+
def translate_model_attribute(model, attribute, ...)
|
|
79
|
+
model.human_attribute_name(attribute, ...)
|
|
80
|
+
end
|
|
81
|
+
alias_method :ta, :translate_model_attribute
|
|
82
|
+
|
|
83
|
+
##
|
|
84
|
+
# Public: Translate a model enum.
|
|
85
|
+
#
|
|
86
|
+
# model: Model class.
|
|
87
|
+
# count: Count.
|
|
88
|
+
#
|
|
89
|
+
# Examples:
|
|
90
|
+
#
|
|
91
|
+
# <%= teo(Order, :statuses) %>
|
|
92
|
+
# # => [["Rascunho", "draft"], ["Pendente", "pending"], ["Em processamento", "processing"]]
|
|
93
|
+
#
|
|
94
|
+
# <%= teo(Order, :statuses, only: ["draft", "pending"]) %>
|
|
95
|
+
# # => [["Rascunho", "draft"], ["Pendente", "pending"]]
|
|
96
|
+
#
|
|
97
|
+
# <%= teo(Order, :statuses, except: ["pending"]) %>
|
|
98
|
+
# # => [["Rascunho", "draft"], ["Em processamento", "processing"]]
|
|
99
|
+
#
|
|
100
|
+
# Returns translated model's enum names.
|
|
101
|
+
def translate_model_enum_names(model, enum, only: [], except: [])
|
|
102
|
+
model.send(enum).keys.filter_map do |key|
|
|
103
|
+
next if only.present? && only.exclude?(key.to_s)
|
|
104
|
+
next if only.blank? && except.include?(key.to_s)
|
|
105
|
+
|
|
106
|
+
[model.human_attribute_name("#{enum}.#{key}"), key]
|
|
107
|
+
end
|
|
108
|
+
end
|
|
109
|
+
alias_method :teo, :translate_model_enum_names
|
|
110
|
+
|
|
111
|
+
##
|
|
112
|
+
# Public: Translate a boolean attribute.
|
|
113
|
+
#
|
|
114
|
+
# value: TrueClass or FalseClass.
|
|
115
|
+
#
|
|
116
|
+
# Examples
|
|
117
|
+
#
|
|
118
|
+
# <%= tb true %>
|
|
119
|
+
# # => "Sim"
|
|
120
|
+
#
|
|
121
|
+
# <%= tb false %>
|
|
122
|
+
# # => "Não"
|
|
123
|
+
#
|
|
124
|
+
# Returns translated boolean's attribute.
|
|
125
|
+
def translate_boolean(value)
|
|
126
|
+
I18n.t("helpyr.boolean.#{value}")
|
|
127
|
+
end
|
|
128
|
+
alias_method :tb, :translate_boolean
|
|
129
|
+
|
|
130
|
+
##
|
|
131
|
+
# Public: Translate a not found message.
|
|
132
|
+
#
|
|
133
|
+
# model: Model class.
|
|
134
|
+
# gender: Gender of the model.
|
|
135
|
+
#
|
|
136
|
+
# Examples:
|
|
137
|
+
#
|
|
138
|
+
# <%= tnf(Post, gender: :male) %>
|
|
139
|
+
# # => "Nenhum artigo foi encontrado."
|
|
140
|
+
#
|
|
141
|
+
# <%= tnf(Company, gender: :female) %>
|
|
142
|
+
# # => "Nenhuma empresa foi encontrada."
|
|
143
|
+
#
|
|
144
|
+
# Returns translated not found message.
|
|
145
|
+
def translate_not_found(model, gender:)
|
|
146
|
+
I18n.t("helpyr.alerts.not_found.#{gender}", model: tm(model).downcase)
|
|
147
|
+
end
|
|
148
|
+
alias_method :tnf, :translate_not_found
|
|
149
|
+
|
|
150
|
+
##
|
|
151
|
+
# Public: Translate a not found message for male model.
|
|
152
|
+
#
|
|
153
|
+
# model: Model class.
|
|
154
|
+
#
|
|
155
|
+
# Examples:
|
|
156
|
+
#
|
|
157
|
+
# <%= tnfm(Post) %>
|
|
158
|
+
# # => "Nenhum artigo foi encontrado."
|
|
159
|
+
#
|
|
160
|
+
# Returns translated not found message for male model.
|
|
161
|
+
def translate_not_found_male(model)
|
|
162
|
+
tnf(model, gender: :male)
|
|
163
|
+
end
|
|
164
|
+
alias_method :tnfm, :translate_not_found_male
|
|
165
|
+
|
|
166
|
+
##
|
|
167
|
+
# Public: Translate a not found message for female model.
|
|
168
|
+
#
|
|
169
|
+
# model: Model class.
|
|
170
|
+
#
|
|
171
|
+
# Examples:
|
|
172
|
+
#
|
|
173
|
+
# <%= tnff(Company) %>
|
|
174
|
+
# # => "Nenhuma empresa foi encontrada."
|
|
175
|
+
#
|
|
176
|
+
# Returns translated not found message for female model.
|
|
177
|
+
def translate_not_found_female(model)
|
|
178
|
+
tnf(model, gender: :female)
|
|
179
|
+
end
|
|
180
|
+
alias_method :tnff, :translate_not_found_female
|
|
181
|
+
end
|
|
182
|
+
end
|
data/lib/helpyr/version.rb
CHANGED
data/lib/helpyr.rb
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
require_relative "helpyr/version"
|
|
2
|
+
require_relative "helpyr/engine"
|
|
3
|
+
require_relative "helpyr/translation"
|
|
4
|
+
require_relative "helpyr/page_title"
|
|
2
5
|
|
|
3
6
|
module Helpyr
|
|
7
|
+
I18n.load_path += Dir[File.join(__dir__, "helpyr/locales/*.yml")]
|
|
8
|
+
|
|
4
9
|
class Error < StandardError; end
|
|
5
|
-
# Your code goes here...
|
|
6
10
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,28 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: helpyr
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.0
|
|
4
|
+
version: 0.1.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Lavenda Software
|
|
8
8
|
bindir: exe
|
|
9
9
|
cert_chain: []
|
|
10
10
|
date: 1980-01-02 00:00:00.000000000 Z
|
|
11
|
-
dependencies:
|
|
11
|
+
dependencies:
|
|
12
|
+
- !ruby/object:Gem::Dependency
|
|
13
|
+
name: rails
|
|
14
|
+
requirement: !ruby/object:Gem::Requirement
|
|
15
|
+
requirements:
|
|
16
|
+
- - ">="
|
|
17
|
+
- !ruby/object:Gem::Version
|
|
18
|
+
version: '7.2'
|
|
19
|
+
type: :runtime
|
|
20
|
+
prerelease: false
|
|
21
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
22
|
+
requirements:
|
|
23
|
+
- - ">="
|
|
24
|
+
- !ruby/object:Gem::Version
|
|
25
|
+
version: '7.2'
|
|
12
26
|
email:
|
|
13
27
|
- lavenda@lavenda.com.br
|
|
14
28
|
executables: []
|
|
@@ -23,6 +37,11 @@ files:
|
|
|
23
37
|
- README.md
|
|
24
38
|
- Rakefile
|
|
25
39
|
- lib/helpyr.rb
|
|
40
|
+
- lib/helpyr/engine.rb
|
|
41
|
+
- lib/helpyr/locales/en.yml
|
|
42
|
+
- lib/helpyr/locales/pt-BR.yml
|
|
43
|
+
- lib/helpyr/page_title.rb
|
|
44
|
+
- lib/helpyr/translation.rb
|
|
26
45
|
- lib/helpyr/version.rb
|
|
27
46
|
- sig/helpyr.rbs
|
|
28
47
|
homepage: https://github.com/LavendaSoftware/helpyr
|
|
@@ -40,7 +59,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
40
59
|
requirements:
|
|
41
60
|
- - ">="
|
|
42
61
|
- !ruby/object:Gem::Version
|
|
43
|
-
version: 3.
|
|
62
|
+
version: 3.2.0
|
|
44
63
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
45
64
|
requirements:
|
|
46
65
|
- - ">="
|