govspeak 10.5.0 → 10.6.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/CHANGELOG.md +5 -0
- data/lib/govspeak/translation_helper.rb +11 -1
- data/lib/govspeak/version.rb +1 -1
- data/lib/govspeak.rb +5 -3
- data/locales/ar.yml +2 -0
- data/locales/be.yml +2 -0
- data/locales/bg.yml +2 -0
- data/locales/cs.yml +2 -0
- data/locales/cy.yml +2 -0
- data/locales/de.yml +2 -0
- data/locales/el.yml +2 -0
- data/locales/en.yml +2 -0
- data/locales/es-419.yml +2 -0
- data/locales/es.yml +2 -0
- data/locales/et.yml +2 -0
- data/locales/fa.yml +2 -0
- data/locales/fr.yml +2 -0
- data/locales/he.yml +2 -0
- data/locales/hi.yml +2 -1
- data/locales/hu.yml +2 -0
- data/locales/hy.yml +2 -0
- data/locales/id.yml +2 -0
- data/locales/it.yml +2 -0
- data/locales/ja.yml +2 -0
- data/locales/ko.yml +2 -0
- data/locales/lt.yml +2 -0
- data/locales/lv.yml +2 -0
- data/locales/pl.yml +2 -0
- data/locales/ps.yml +2 -0
- data/locales/pt.yml +2 -0
- data/locales/ro.yml +2 -0
- data/locales/ru.yml +2 -0
- data/locales/si.yml +2 -0
- data/locales/sr.yml +2 -0
- data/locales/ta.yml +2 -0
- data/locales/th.yml +2 -0
- data/locales/tr.yml +2 -0
- data/locales/uk.yml +2 -0
- data/locales/ur.yml +2 -0
- data/locales/uz.yml +2 -0
- data/locales/vi.yml +2 -0
- data/locales/zh-hk.yml +2 -0
- data/locales/zh-tw.yml +2 -0
- data/locales/zh.yml +2 -0
- data/test/translation_helper_test.rb +59 -0
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 30e30285a780a0da060ee298bf71e53aeffd4b5469b572be5a58a0c6def21bb6
|
4
|
+
data.tar.gz: 8239fe6487ef050156201a6892ebb5366f441eba034c1905d1316572c69f13a3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 95d139e6f2c8f7f865a7d308527d5c91ddb12b9d2e652d97b8bb5826ab6c3e5525fa478547b539eb746d590c24f206e6fba4a5aec33f1b9e7ded5532e504a234
|
7
|
+
data.tar.gz: d273213967ecec107893394f74e5af927749da774946cb46cb8b0bfe5de4f8f3aa34838df3c08d97108de37ea273642b8e68a9a3d872e4ab44312ddd9667f9b9
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,10 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
## 10.6.0
|
4
|
+
|
5
|
+
* Expose supported locales with their codes, English names, and native names:
|
6
|
+
`Govspeak::TranslationHelper.supported_locales`
|
7
|
+
|
3
8
|
## 10.5.0
|
4
9
|
|
5
10
|
* Pass locale to child instances of `Govspeak::Document` (where one instance instantiates another) and to `HtmlValidator`
|
@@ -1,5 +1,5 @@
|
|
1
1
|
module Govspeak
|
2
|
-
|
2
|
+
class TranslationHelper
|
3
3
|
def self.t_with_fallback(key, **options)
|
4
4
|
if I18n.available_locales.none?(options[:locale]&.to_sym)
|
5
5
|
options[:locale] = I18n.default_locale
|
@@ -14,5 +14,15 @@ module Govspeak
|
|
14
14
|
|
15
15
|
I18n.t(key, **options)
|
16
16
|
end
|
17
|
+
|
18
|
+
def self.supported_locales
|
19
|
+
I18n.available_locales.map do |locale|
|
20
|
+
{
|
21
|
+
code: locale,
|
22
|
+
english_name: I18n.t("english_name", locale:),
|
23
|
+
native_name: I18n.t("native_name", locale:),
|
24
|
+
}
|
25
|
+
end
|
26
|
+
end
|
17
27
|
end
|
18
28
|
end
|
data/lib/govspeak/version.rb
CHANGED
data/lib/govspeak.rb
CHANGED
@@ -438,8 +438,10 @@ module Govspeak
|
|
438
438
|
end
|
439
439
|
end
|
440
440
|
|
441
|
-
|
442
|
-
*Dir.glob(File.expand_path("locales/*.yml", Govspeak.root)),
|
443
|
-
)
|
441
|
+
locale_paths = *Dir.glob(File.expand_path("locales/*.yml", Govspeak.root))
|
444
442
|
|
443
|
+
I18n.load_path.unshift(locale_paths)
|
444
|
+
I18n.available_locales = locale_paths.map do |path|
|
445
|
+
path.match(/([^\/]+).yml/)[1].to_sym
|
446
|
+
end
|
445
447
|
I18n.default_locale = :en
|
data/locales/ar.yml
CHANGED
data/locales/be.yml
CHANGED
data/locales/bg.yml
CHANGED
data/locales/cs.yml
CHANGED
data/locales/cy.yml
CHANGED
data/locales/de.yml
CHANGED
data/locales/el.yml
CHANGED
data/locales/en.yml
CHANGED
data/locales/es-419.yml
CHANGED
data/locales/es.yml
CHANGED
data/locales/et.yml
CHANGED
data/locales/fa.yml
CHANGED
data/locales/fr.yml
CHANGED
data/locales/he.yml
CHANGED
data/locales/hi.yml
CHANGED
data/locales/hu.yml
CHANGED
data/locales/hy.yml
CHANGED
data/locales/id.yml
CHANGED
data/locales/it.yml
CHANGED
data/locales/ja.yml
CHANGED
data/locales/ko.yml
CHANGED
data/locales/lt.yml
CHANGED
data/locales/lv.yml
CHANGED
data/locales/pl.yml
CHANGED
data/locales/ps.yml
CHANGED
data/locales/pt.yml
CHANGED
data/locales/ro.yml
CHANGED
data/locales/ru.yml
CHANGED
data/locales/si.yml
CHANGED
data/locales/sr.yml
CHANGED
data/locales/ta.yml
CHANGED
data/locales/th.yml
CHANGED
data/locales/tr.yml
CHANGED
data/locales/uk.yml
CHANGED
data/locales/ur.yml
CHANGED
data/locales/uz.yml
CHANGED
data/locales/vi.yml
CHANGED
data/locales/zh-hk.yml
CHANGED
data/locales/zh-tw.yml
CHANGED
data/locales/zh.yml
CHANGED
@@ -48,4 +48,63 @@ class TranslationHelperTest < Minitest::Test
|
|
48
48
|
Govspeak::TranslationHelper.t_with_fallback("whatever")
|
49
49
|
end
|
50
50
|
end
|
51
|
+
|
52
|
+
describe ".supported_locales" do
|
53
|
+
it "returns an array of metadata on supported locales" do
|
54
|
+
assert_equal Govspeak::TranslationHelper.supported_locales, [
|
55
|
+
{ code: :ar, english_name: "Arabic", native_name: "العربيَّة" },
|
56
|
+
{ code: :be, english_name: "Belarusian", native_name: "Беларуская" },
|
57
|
+
{ code: :bg, english_name: "Bulgarian", native_name: "български" },
|
58
|
+
{ code: :cs, english_name: "Czech", native_name: "Čeština" },
|
59
|
+
{ code: :cy, english_name: "Welsh", native_name: "Cymraeg" },
|
60
|
+
{ code: :de, english_name: "German", native_name: "Deutsch" },
|
61
|
+
{ code: :el, english_name: "Greek", native_name: "Ελληνικά" },
|
62
|
+
{ code: :en, english_name: "English", native_name: "English" },
|
63
|
+
{
|
64
|
+
code: :"es-419",
|
65
|
+
english_name: "Latin American Spanish",
|
66
|
+
native_name: "Español de América Latina",
|
67
|
+
},
|
68
|
+
{ code: :es, english_name: "Spanish", native_name: "Español" },
|
69
|
+
{ code: :et, english_name: "Estonian", native_name: "Eesti" },
|
70
|
+
{ code: :fa, english_name: "Persian", native_name: "فارسی" },
|
71
|
+
{ code: :fr, english_name: "French", native_name: "Français" },
|
72
|
+
{ code: :he, english_name: "Hebrew", native_name: "עברית" },
|
73
|
+
{ code: :hi, english_name: "Hindi", native_name: "हिंदी" },
|
74
|
+
{ code: :hu, english_name: "Hungarian", native_name: "Magyar" },
|
75
|
+
{ code: :hy, english_name: "Armenian", native_name: "Հայերեն" },
|
76
|
+
{
|
77
|
+
code: :id,
|
78
|
+
english_name: "Indonesian",
|
79
|
+
native_name: "Bahasa Indonesia",
|
80
|
+
},
|
81
|
+
{ code: :it, english_name: "Italian", native_name: "Italiano" },
|
82
|
+
{ code: :ja, english_name: "Japanese", native_name: "日本語" },
|
83
|
+
{ code: :ko, english_name: "Korean", native_name: "한국어" },
|
84
|
+
{ code: :lt, english_name: "Lithuanian", native_name: "Lietuvių" },
|
85
|
+
{ code: :lv, english_name: "Latvian", native_name: "Latviešu" },
|
86
|
+
{ code: :pl, english_name: "Polish", native_name: "Polski" },
|
87
|
+
{ code: :ps, english_name: "Pashto", native_name: "پښتو" },
|
88
|
+
{ code: :pt, english_name: "Portuguese", native_name: "Português" },
|
89
|
+
{ code: :ro, english_name: "Romanian", native_name: "Română" },
|
90
|
+
{ code: :ru, english_name: "Russian", native_name: "Русский" },
|
91
|
+
{ code: :si, english_name: "Sinhala", native_name: "සිංහල" },
|
92
|
+
{ code: :sr, english_name: "Serbian", native_name: "Српски" },
|
93
|
+
{ code: :ta, english_name: "Tamil", native_name: "தமிழ்" },
|
94
|
+
{ code: :th, english_name: "Thai", native_name: "ไทย" },
|
95
|
+
{ code: :tr, english_name: "Turkish", native_name: "Türkçe" },
|
96
|
+
{ code: :uk, english_name: "Ukrainian", native_name: "Українська" },
|
97
|
+
{ code: :ur, english_name: "Urdu", native_name: "اردو" },
|
98
|
+
{ code: :uz, english_name: "Uzbek", native_name: "Oʻzbek" },
|
99
|
+
{ code: :vi, english_name: "Vietnamese", native_name: "Tiếng Việt" },
|
100
|
+
{ code: :"zh-hk", english_name: "Cantonese", native_name: "粵語" },
|
101
|
+
{
|
102
|
+
code: :"zh-tw",
|
103
|
+
english_name: "Traditional Chinese",
|
104
|
+
native_name: "繁體中文",
|
105
|
+
},
|
106
|
+
{ code: :zh, english_name: "Chinese", native_name: "中文" },
|
107
|
+
]
|
108
|
+
end
|
109
|
+
end
|
51
110
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: govspeak
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 10.
|
4
|
+
version: 10.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- GOV.UK Dev
|
@@ -227,14 +227,14 @@ dependencies:
|
|
227
227
|
requirements:
|
228
228
|
- - '='
|
229
229
|
- !ruby/object:Gem::Version
|
230
|
-
version: 5.1.
|
230
|
+
version: 5.1.18
|
231
231
|
type: :development
|
232
232
|
prerelease: false
|
233
233
|
version_requirements: !ruby/object:Gem::Requirement
|
234
234
|
requirements:
|
235
235
|
- - '='
|
236
236
|
- !ruby/object:Gem::Version
|
237
|
-
version: 5.1.
|
237
|
+
version: 5.1.18
|
238
238
|
- !ruby/object:Gem::Dependency
|
239
239
|
name: simplecov
|
240
240
|
requirement: !ruby/object:Gem::Requirement
|
@@ -367,7 +367,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
367
367
|
- !ruby/object:Gem::Version
|
368
368
|
version: '0'
|
369
369
|
requirements: []
|
370
|
-
rubygems_version: 3.7.
|
370
|
+
rubygems_version: 3.7.1
|
371
371
|
specification_version: 4
|
372
372
|
summary: Markup language for single domain
|
373
373
|
test_files:
|