flutter-intl-twine-formatter 1.0.0 → 1.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: '0487dcc7a37d12903179aa2e040dd8524a938d96112d3e89fbc48a6c42e19787'
4
- data.tar.gz: 4636baeb0c9a3bc6d9d25f92215d03d70e9ca99f705878f086b11af32c89b9eb
3
+ metadata.gz: e9872d30d7850e1365c38dfd6d277149439387b5f8f7bb7e812f1b4f9614679f
4
+ data.tar.gz: 773d97e0c75dcb8df6ffaf89d24660716c26b71ef5b5347cd75fc73ab22bd737
5
5
  SHA512:
6
- metadata.gz: bbee2fbaa03f8a9274bae476c986302fb6098cba2b10a8eba687fe5b7c9eb709ebe2b5ad71c8cb6c714f98bdce8b0fd2291dc681e26528d387dbc7b909abc73e
7
- data.tar.gz: e9109bc75b9c483380e2bb8516821b4041e7c8e643aa23da87042a676116ffad97add5223134b1b0b10d2a20d86102f5f3b85715e8d9441ea58c1f81bc6918c0
6
+ metadata.gz: afb0d719165cec3aedc5254dd26a725cc59b6d86d77049391ec1d304f8b7ba42cc10e23f9bad9106ed3a5dae984552e50a0790af8b6e6dee319ff2c2b2346483
7
+ data.tar.gz: b07adeeb9d22ecae66024bdd57cdb4b22f38674af432df348c80db94dae86d4b4808bd17935377e88659e9985c756293178ba11a6eaac9dd07d38fc2748c4ab0
@@ -50,7 +50,7 @@ module Twine
50
50
  def format_sections(twine_file, lang)
51
51
  sections = twine_file.sections.map { |section| format_section(section, lang) }
52
52
  sections.delete_if &:empty?
53
- sections.join(",\n\n")
53
+ sections.join(",\n")
54
54
  end
55
55
 
56
56
  def format_section_header(section)
@@ -70,12 +70,80 @@ module Twine
70
70
 
71
71
  def format_key(key)
72
72
  escape_quotes(key)
73
+ key = key.split('_').collect(&:capitalize).join
74
+ key[0] = key[0].downcase
75
+
76
+ key = format_for_reserved_words(key)
77
+ key = format_for_int_first_character(key)
78
+ return key
79
+ end
80
+
81
+ def format_for_int_first_character(value)
82
+
83
+ first = value[0]
84
+
85
+ if first =~ /[A-Za-z]/
86
+ return value
87
+ end
88
+
89
+ if first == "0"
90
+ value[0] = "zero"
91
+ elsif first == "1"
92
+ value[0] = "one"
93
+ elsif first == "2"
94
+ value[0] = "two"
95
+ elsif first == "3"
96
+ value[0] = "three"
97
+ elsif first == "4"
98
+ value[0] = "four"
99
+ elsif first == "5"
100
+ value[0] = "five"
101
+ elsif first == "6"
102
+ value[0] = "six"
103
+ elsif first == "7"
104
+ value[0] = "seven"
105
+ elsif first == "8"
106
+ value[0] = "eight"
107
+ elsif first == "9"
108
+ value[0] = "nine"
109
+ end
110
+
111
+ return value
112
+ end
113
+
114
+ def format_for_reserved_words(value)
115
+ reservedWords = [
116
+ "in",
117
+ "continue",
118
+ "do",
119
+ "export",
120
+ "extends",
121
+ "facotry",
122
+ "false",
123
+ "final",
124
+ "finally",
125
+ "if"
126
+ ]
127
+
128
+ if reservedWords.include?(value)
129
+ return value + "String"
130
+ else
131
+ return value
132
+ end
73
133
  end
74
134
 
75
135
  def format_value(value)
76
- convert_placeholders_from_twine_to_icu(value)
136
+ value = escape_quotes(value)
137
+ value = escape_characters(value)
138
+ value = convert_placeholders_from_twine_to_icu(value)
139
+ return value
77
140
  end
78
-
141
+
142
+ def escape_characters(value)
143
+ value = value.gsub("\\'", "'")
144
+ return value
145
+ end
146
+
79
147
  def convert_placeholders_from_twine_to_icu(input)
80
148
  value = convert_twine_string_placeholder(input)
81
149
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: flutter-intl-twine-formatter
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Williamson
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-01-30 00:00:00.000000000 Z
11
+ date: 2020-01-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: twine