jpmobile 7.0.0 → 7.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.circleci/config.yml +5 -2
- data/.rubocop.yml +104 -1
- data/.ruby-version +1 -1
- data/Gemfile.lock +116 -89
- data/README.md +24 -3
- data/Rakefile +1 -1
- data/jpmobile.gemspec +2 -1
- data/lib/jpmobile/datum_conv.rb +7 -7
- data/lib/jpmobile/email.rb +2 -2
- data/lib/jpmobile/fallback_view_selector.rb +2 -2
- data/lib/jpmobile/filter.rb +3 -1
- data/lib/jpmobile/mail.rb +2 -2
- data/lib/jpmobile/mailer.rb +1 -1
- data/lib/jpmobile/method_less_action_support.rb +11 -0
- data/lib/jpmobile/mobile/abstract_mobile.rb +1 -1
- data/lib/jpmobile/mobile/android.rb +1 -1
- data/lib/jpmobile/mobile/au.rb +6 -8
- data/lib/jpmobile/mobile/black_berry.rb +1 -1
- data/lib/jpmobile/mobile/ddipocket.rb +1 -1
- data/lib/jpmobile/mobile/docomo.rb +2 -2
- data/lib/jpmobile/mobile/emobile.rb +2 -2
- data/lib/jpmobile/mobile/ipad.rb +1 -1
- data/lib/jpmobile/mobile/iphone.rb +1 -1
- data/lib/jpmobile/mobile/softbank.rb +5 -3
- data/lib/jpmobile/mobile/vodafone.rb +2 -2
- data/lib/jpmobile/mobile/willcom.rb +2 -2
- data/lib/jpmobile/mobile/windows_phone.rb +1 -1
- data/lib/jpmobile/position.rb +2 -2
- data/lib/jpmobile/rails.rb +1 -0
- data/lib/jpmobile/template_details.rb +1 -1
- data/lib/jpmobile/version.rb +1 -1
- data/lib/tasks/jpmobile_tasks.rake +2 -4
- data/spec/unit/decorated_mail_spec.rb +1 -1
- data/spec/unit/mail_spec.rb +2 -2
- data/spec/unit/receive_mail_spec.rb +29 -29
- data/test/rails/overrides/app/controllers/method_less_action_support_controller.rb +3 -0
- data/test/rails/overrides/app/mailers/decorated_mailer.rb +1 -1
- data/test/rails/overrides/app/views/method_less_action_support/index_smart_phone.html.erb +0 -0
- data/test/rails/overrides/config/routes.rb +4 -0
- data/test/rails/overrides/spec/requests/method_less_action_support_spec.rb +28 -0
- metadata +13 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b00599e53c71e6bf45f9d8b953b4e7256d3a0f32f1e7f905006467e4a2dd8095
|
4
|
+
data.tar.gz: 935af37ae804e50db7cccf3fa979abddde111ba5f9e9fe61fea57a1420a567d8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4f418fba357ce7cd534817f4a398b0308d9baa720196ff6eecdb459806f5c998a1408db386ce9917bf74e62857406dd91f8f6757319b35d95f571a763b2f5ad1
|
7
|
+
data.tar.gz: 8067721a16ed607f3074326ebf340be90e6991bdc186a4e9d8f251a8b857b67789d235489d6bf75511f3b7b66923c8a6f1f62ba84df95f2e041143d3b307aa80
|
data/.circleci/config.yml
CHANGED
@@ -5,7 +5,7 @@ jobs:
|
|
5
5
|
test-job:
|
6
6
|
working_directory: ~/jpmobile
|
7
7
|
docker:
|
8
|
-
- image: cimg/ruby:3.
|
8
|
+
- image: cimg/ruby:3.1-browsers
|
9
9
|
environment:
|
10
10
|
BUNDLE_JOBS: 3
|
11
11
|
BUNDLE_RETRY: 3
|
@@ -34,7 +34,10 @@ jobs:
|
|
34
34
|
|
35
35
|
- run:
|
36
36
|
name: Bundle Install
|
37
|
-
command:
|
37
|
+
command: |
|
38
|
+
bundle config set --local clean true
|
39
|
+
bundle config set --local path vendor/bundle
|
40
|
+
bundle check || bundle install
|
38
41
|
|
39
42
|
# Store bundle cache
|
40
43
|
- save_cache:
|
data/.rubocop.yml
CHANGED
@@ -3,7 +3,7 @@ require: rubocop-performance
|
|
3
3
|
inherit_from: './.onkcop-config.yml'
|
4
4
|
|
5
5
|
AllCops:
|
6
|
-
TargetRubyVersion:
|
6
|
+
TargetRubyVersion: 2.7
|
7
7
|
Exclude:
|
8
8
|
- 'tmp/**/*'
|
9
9
|
- 'bin/*'
|
@@ -194,3 +194,106 @@ Style/OptionalBooleanParameter:
|
|
194
194
|
Metrics/ParameterLists:
|
195
195
|
Exclude:
|
196
196
|
- 'lib/jpmobile/path_set.rb'
|
197
|
+
|
198
|
+
Gemspec/DateAssignment: # new in 1.10
|
199
|
+
Enabled: true
|
200
|
+
Gemspec/RequireMFA: # new in 1.23
|
201
|
+
Enabled: true
|
202
|
+
Layout/LineEndStringConcatenationIndentation: # new in 1.18
|
203
|
+
Enabled: true
|
204
|
+
Lint/AmbiguousOperatorPrecedence: # new in 1.21
|
205
|
+
Enabled: true
|
206
|
+
Lint/AmbiguousRange: # new in 1.19
|
207
|
+
Enabled: true
|
208
|
+
Lint/DeprecatedConstants: # new in 1.8
|
209
|
+
Enabled: true
|
210
|
+
Lint/EmptyInPattern: # new in 1.16
|
211
|
+
Enabled: true
|
212
|
+
Lint/IncompatibleIoSelectWithFiberScheduler: # new in 1.21
|
213
|
+
Enabled: true
|
214
|
+
Lint/LambdaWithoutLiteralBlock: # new in 1.8
|
215
|
+
Enabled: true
|
216
|
+
Lint/NumberedParameterAssignment: # new in 1.9
|
217
|
+
Enabled: true
|
218
|
+
Lint/OrAssignmentToConstant: # new in 1.9
|
219
|
+
Enabled: true
|
220
|
+
Lint/RedundantDirGlobSort: # new in 1.8
|
221
|
+
Enabled: true
|
222
|
+
Lint/RequireRelativeSelfPath: # new in 1.22
|
223
|
+
Enabled: true
|
224
|
+
Lint/SymbolConversion: # new in 1.9
|
225
|
+
Enabled: true
|
226
|
+
Lint/TripleQuotes: # new in 1.9
|
227
|
+
Enabled: true
|
228
|
+
Lint/UselessRuby2Keywords: # new in 1.23
|
229
|
+
Enabled: true
|
230
|
+
Naming/BlockForwarding: # new in 1.24
|
231
|
+
Enabled: true
|
232
|
+
Security/IoMethods: # new in 1.22
|
233
|
+
Enabled: true
|
234
|
+
Style/EndlessMethod: # new in 1.8
|
235
|
+
Enabled: true
|
236
|
+
Style/FileRead: # new in 1.24
|
237
|
+
Enabled: true
|
238
|
+
Style/FileWrite: # new in 1.24
|
239
|
+
Enabled: true
|
240
|
+
Style/HashConversion: # new in 1.10
|
241
|
+
Enabled: true
|
242
|
+
Style/IfWithBooleanLiteralBranches: # new in 1.9
|
243
|
+
Enabled: true
|
244
|
+
Style/InPatternThen: # new in 1.16
|
245
|
+
Enabled: true
|
246
|
+
Style/MapToHash: # new in 1.24
|
247
|
+
Enabled: true
|
248
|
+
Style/MultilineInPatternThen: # new in 1.16
|
249
|
+
Enabled: true
|
250
|
+
Style/NumberedParameters: # new in 1.22
|
251
|
+
Enabled: true
|
252
|
+
Style/NumberedParametersLimit: # new in 1.22
|
253
|
+
Enabled: true
|
254
|
+
Style/OpenStructUse: # new in 1.23
|
255
|
+
Enabled: true
|
256
|
+
Style/QuotedSymbols: # new in 1.16
|
257
|
+
Enabled: true
|
258
|
+
Style/RedundantSelfAssignmentBranch: # new in 1.19
|
259
|
+
Enabled: true
|
260
|
+
Style/SelectByRegexp: # new in 1.22
|
261
|
+
Enabled: true
|
262
|
+
Style/StringChars: # new in 1.12
|
263
|
+
Enabled: true
|
264
|
+
Performance/AncestorsInclude: # new in 1.7
|
265
|
+
Enabled: true
|
266
|
+
Performance/BigDecimalWithNumericArgument: # new in 1.7
|
267
|
+
Enabled: true
|
268
|
+
Performance/BlockGivenWithExplicitBlock: # new in 1.9
|
269
|
+
Enabled: true
|
270
|
+
Performance/CollectionLiteralInLoop: # new in 1.8
|
271
|
+
Enabled: true
|
272
|
+
Performance/ConcurrentMonotonicTime: # new in 1.12
|
273
|
+
Enabled: true
|
274
|
+
Performance/ConstantRegexp: # new in 1.9
|
275
|
+
Enabled: true
|
276
|
+
Performance/MapCompact: # new in 1.11
|
277
|
+
Enabled: true
|
278
|
+
Performance/MethodObjectAsBlock: # new in 1.9
|
279
|
+
Enabled: true
|
280
|
+
Performance/RedundantEqualityComparisonBlock: # new in 1.10
|
281
|
+
Enabled: true
|
282
|
+
Performance/RedundantSortBlock: # new in 1.7
|
283
|
+
Enabled: true
|
284
|
+
Performance/RedundantSplitRegexpArgument: # new in 1.10
|
285
|
+
Enabled: true
|
286
|
+
Performance/RedundantStringChars: # new in 1.7
|
287
|
+
Enabled: true
|
288
|
+
Performance/ReverseFirst: # new in 1.7
|
289
|
+
Enabled: true
|
290
|
+
Performance/SortReverse: # new in 1.7
|
291
|
+
Enabled: true
|
292
|
+
Performance/Squeeze: # new in 1.7
|
293
|
+
Enabled: true
|
294
|
+
Performance/StringIdentifierArgument: # new in 1.13
|
295
|
+
Enabled: true
|
296
|
+
Performance/StringInclude: # new in 1.7
|
297
|
+
Enabled: false
|
298
|
+
Performance/Sum: # new in 1.8
|
299
|
+
Enabled: true
|
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
3.
|
1
|
+
3.1.2
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
jpmobile (
|
4
|
+
jpmobile (7.0.3)
|
5
5
|
mail (~> 2.7.0)
|
6
6
|
rexml
|
7
7
|
scanf
|
@@ -9,61 +9,67 @@ PATH
|
|
9
9
|
GEM
|
10
10
|
remote: https://rubygems.org/
|
11
11
|
specs:
|
12
|
-
actioncable (7.0.
|
13
|
-
actionpack (= 7.0.
|
14
|
-
activesupport (= 7.0.
|
12
|
+
actioncable (7.0.3)
|
13
|
+
actionpack (= 7.0.3)
|
14
|
+
activesupport (= 7.0.3)
|
15
15
|
nio4r (~> 2.0)
|
16
16
|
websocket-driver (>= 0.6.1)
|
17
|
-
actionmailbox (7.0.
|
18
|
-
actionpack (= 7.0.
|
19
|
-
activejob (= 7.0.
|
20
|
-
activerecord (= 7.0.
|
21
|
-
activestorage (= 7.0.
|
22
|
-
activesupport (= 7.0.
|
17
|
+
actionmailbox (7.0.3)
|
18
|
+
actionpack (= 7.0.3)
|
19
|
+
activejob (= 7.0.3)
|
20
|
+
activerecord (= 7.0.3)
|
21
|
+
activestorage (= 7.0.3)
|
22
|
+
activesupport (= 7.0.3)
|
23
23
|
mail (>= 2.7.1)
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
24
|
+
net-imap
|
25
|
+
net-pop
|
26
|
+
net-smtp
|
27
|
+
actionmailer (7.0.3)
|
28
|
+
actionpack (= 7.0.3)
|
29
|
+
actionview (= 7.0.3)
|
30
|
+
activejob (= 7.0.3)
|
31
|
+
activesupport (= 7.0.3)
|
29
32
|
mail (~> 2.5, >= 2.5.4)
|
33
|
+
net-imap
|
34
|
+
net-pop
|
35
|
+
net-smtp
|
30
36
|
rails-dom-testing (~> 2.0)
|
31
|
-
actionpack (7.0.
|
32
|
-
actionview (= 7.0.
|
33
|
-
activesupport (= 7.0.
|
37
|
+
actionpack (7.0.3)
|
38
|
+
actionview (= 7.0.3)
|
39
|
+
activesupport (= 7.0.3)
|
34
40
|
rack (~> 2.0, >= 2.2.0)
|
35
41
|
rack-test (>= 0.6.3)
|
36
42
|
rails-dom-testing (~> 2.0)
|
37
43
|
rails-html-sanitizer (~> 1.0, >= 1.2.0)
|
38
|
-
actiontext (7.0.
|
39
|
-
actionpack (= 7.0.
|
40
|
-
activerecord (= 7.0.
|
41
|
-
activestorage (= 7.0.
|
42
|
-
activesupport (= 7.0.
|
44
|
+
actiontext (7.0.3)
|
45
|
+
actionpack (= 7.0.3)
|
46
|
+
activerecord (= 7.0.3)
|
47
|
+
activestorage (= 7.0.3)
|
48
|
+
activesupport (= 7.0.3)
|
43
49
|
globalid (>= 0.6.0)
|
44
50
|
nokogiri (>= 1.8.5)
|
45
|
-
actionview (7.0.
|
46
|
-
activesupport (= 7.0.
|
51
|
+
actionview (7.0.3)
|
52
|
+
activesupport (= 7.0.3)
|
47
53
|
builder (~> 3.1)
|
48
54
|
erubi (~> 1.4)
|
49
55
|
rails-dom-testing (~> 2.0)
|
50
56
|
rails-html-sanitizer (~> 1.1, >= 1.2.0)
|
51
|
-
activejob (7.0.
|
52
|
-
activesupport (= 7.0.
|
57
|
+
activejob (7.0.3)
|
58
|
+
activesupport (= 7.0.3)
|
53
59
|
globalid (>= 0.3.6)
|
54
|
-
activemodel (7.0.
|
55
|
-
activesupport (= 7.0.
|
56
|
-
activerecord (7.0.
|
57
|
-
activemodel (= 7.0.
|
58
|
-
activesupport (= 7.0.
|
59
|
-
activestorage (7.0.
|
60
|
-
actionpack (= 7.0.
|
61
|
-
activejob (= 7.0.
|
62
|
-
activerecord (= 7.0.
|
63
|
-
activesupport (= 7.0.
|
60
|
+
activemodel (7.0.3)
|
61
|
+
activesupport (= 7.0.3)
|
62
|
+
activerecord (7.0.3)
|
63
|
+
activemodel (= 7.0.3)
|
64
|
+
activesupport (= 7.0.3)
|
65
|
+
activestorage (7.0.3)
|
66
|
+
actionpack (= 7.0.3)
|
67
|
+
activejob (= 7.0.3)
|
68
|
+
activerecord (= 7.0.3)
|
69
|
+
activesupport (= 7.0.3)
|
64
70
|
marcel (~> 1.0)
|
65
71
|
mini_mime (>= 1.1.0)
|
66
|
-
activesupport (7.0.
|
72
|
+
activesupport (7.0.3)
|
67
73
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
68
74
|
i18n (>= 1.6, < 2)
|
69
75
|
minitest (>= 5.1)
|
@@ -71,19 +77,20 @@ GEM
|
|
71
77
|
ast (2.4.2)
|
72
78
|
builder (3.2.4)
|
73
79
|
coderay (1.1.3)
|
74
|
-
concurrent-ruby (1.1.
|
80
|
+
concurrent-ruby (1.1.10)
|
75
81
|
crass (1.0.6)
|
76
|
-
diff-lcs (1.
|
82
|
+
diff-lcs (1.5.0)
|
83
|
+
digest (3.1.0)
|
77
84
|
erubi (1.10.0)
|
78
85
|
geokit (1.13.1)
|
79
|
-
git (1.
|
86
|
+
git (1.11.0)
|
80
87
|
rchardet (~> 1.8)
|
81
88
|
globalid (1.0.0)
|
82
89
|
activesupport (>= 5.0)
|
83
90
|
hpricot (0.8.6)
|
84
|
-
i18n (1.
|
91
|
+
i18n (1.10.0)
|
85
92
|
concurrent-ruby (~> 1.0)
|
86
|
-
loofah (2.
|
93
|
+
loofah (2.18.0)
|
87
94
|
crass (~> 1.0.2)
|
88
95
|
nokogiri (>= 1.5.9)
|
89
96
|
mail (2.7.1)
|
@@ -92,66 +99,82 @@ GEM
|
|
92
99
|
method_source (1.0.0)
|
93
100
|
mini_mime (1.1.2)
|
94
101
|
minitest (5.15.0)
|
102
|
+
net-imap (0.2.3)
|
103
|
+
digest
|
104
|
+
net-protocol
|
105
|
+
strscan
|
106
|
+
net-pop (0.1.1)
|
107
|
+
digest
|
108
|
+
net-protocol
|
109
|
+
timeout
|
110
|
+
net-protocol (0.1.3)
|
111
|
+
timeout
|
112
|
+
net-smtp (0.3.1)
|
113
|
+
digest
|
114
|
+
net-protocol
|
115
|
+
timeout
|
95
116
|
nio4r (2.5.8)
|
96
|
-
nokogiri (1.
|
117
|
+
nokogiri (1.13.6-arm64-darwin)
|
97
118
|
racc (~> 1.4)
|
98
|
-
|
99
|
-
|
119
|
+
nokogiri (1.13.6-x86_64-linux)
|
120
|
+
racc (~> 1.4)
|
121
|
+
parallel (1.22.1)
|
122
|
+
parser (3.1.2.0)
|
100
123
|
ast (~> 2.4.1)
|
101
124
|
pry (0.14.1)
|
102
125
|
coderay (~> 1.1)
|
103
126
|
method_source (~> 1.0)
|
104
127
|
racc (1.6.0)
|
105
|
-
rack (2.2.3)
|
128
|
+
rack (2.2.3.1)
|
106
129
|
rack-test (1.1.0)
|
107
130
|
rack (>= 1.0, < 3)
|
108
|
-
rails (7.0.
|
109
|
-
actioncable (= 7.0.
|
110
|
-
actionmailbox (= 7.0.
|
111
|
-
actionmailer (= 7.0.
|
112
|
-
actionpack (= 7.0.
|
113
|
-
actiontext (= 7.0.
|
114
|
-
actionview (= 7.0.
|
115
|
-
activejob (= 7.0.
|
116
|
-
activemodel (= 7.0.
|
117
|
-
activerecord (= 7.0.
|
118
|
-
activestorage (= 7.0.
|
119
|
-
activesupport (= 7.0.
|
131
|
+
rails (7.0.3)
|
132
|
+
actioncable (= 7.0.3)
|
133
|
+
actionmailbox (= 7.0.3)
|
134
|
+
actionmailer (= 7.0.3)
|
135
|
+
actionpack (= 7.0.3)
|
136
|
+
actiontext (= 7.0.3)
|
137
|
+
actionview (= 7.0.3)
|
138
|
+
activejob (= 7.0.3)
|
139
|
+
activemodel (= 7.0.3)
|
140
|
+
activerecord (= 7.0.3)
|
141
|
+
activestorage (= 7.0.3)
|
142
|
+
activesupport (= 7.0.3)
|
120
143
|
bundler (>= 1.15.0)
|
121
|
-
railties (= 7.0.
|
144
|
+
railties (= 7.0.3)
|
122
145
|
rails-dom-testing (2.0.3)
|
123
146
|
activesupport (>= 4.2.0)
|
124
147
|
nokogiri (>= 1.6)
|
125
148
|
rails-html-sanitizer (1.4.2)
|
126
149
|
loofah (~> 2.3)
|
127
|
-
railties (7.0.
|
128
|
-
actionpack (= 7.0.
|
129
|
-
activesupport (= 7.0.
|
150
|
+
railties (7.0.3)
|
151
|
+
actionpack (= 7.0.3)
|
152
|
+
activesupport (= 7.0.3)
|
130
153
|
method_source
|
131
154
|
rake (>= 12.2)
|
132
155
|
thor (~> 1.0)
|
133
156
|
zeitwerk (~> 2.5)
|
134
|
-
rainbow (3.
|
157
|
+
rainbow (3.1.1)
|
135
158
|
rake (13.0.6)
|
136
159
|
rchardet (1.8.0)
|
137
|
-
regexp_parser (2.
|
160
|
+
regexp_parser (2.5.0)
|
138
161
|
rexml (3.2.5)
|
139
|
-
rspec (3.
|
140
|
-
rspec-core (~> 3.
|
141
|
-
rspec-expectations (~> 3.
|
142
|
-
rspec-mocks (~> 3.
|
143
|
-
rspec-core (3.
|
144
|
-
rspec-support (~> 3.
|
145
|
-
rspec-expectations (3.
|
162
|
+
rspec (3.11.0)
|
163
|
+
rspec-core (~> 3.11.0)
|
164
|
+
rspec-expectations (~> 3.11.0)
|
165
|
+
rspec-mocks (~> 3.11.0)
|
166
|
+
rspec-core (3.11.0)
|
167
|
+
rspec-support (~> 3.11.0)
|
168
|
+
rspec-expectations (3.11.0)
|
146
169
|
diff-lcs (>= 1.2.0, < 2.0)
|
147
|
-
rspec-support (~> 3.
|
170
|
+
rspec-support (~> 3.11.0)
|
148
171
|
rspec-its (1.3.0)
|
149
172
|
rspec-core (>= 3.0.0)
|
150
173
|
rspec-expectations (>= 3.0.0)
|
151
|
-
rspec-mocks (3.
|
174
|
+
rspec-mocks (3.11.1)
|
152
175
|
diff-lcs (>= 1.2.0, < 2.0)
|
153
|
-
rspec-support (~> 3.
|
154
|
-
rspec-rails (5.
|
176
|
+
rspec-support (~> 3.11.0)
|
177
|
+
rspec-rails (5.1.2)
|
155
178
|
actionpack (>= 5.2)
|
156
179
|
activesupport (>= 5.2)
|
157
180
|
railties (>= 5.2)
|
@@ -159,43 +182,47 @@ GEM
|
|
159
182
|
rspec-expectations (~> 3.10)
|
160
183
|
rspec-mocks (~> 3.10)
|
161
184
|
rspec-support (~> 3.10)
|
162
|
-
rspec-support (3.
|
163
|
-
rubocop (1.
|
185
|
+
rspec-support (3.11.0)
|
186
|
+
rubocop (1.30.0)
|
164
187
|
parallel (~> 1.10)
|
165
|
-
parser (>= 3.
|
188
|
+
parser (>= 3.1.0.0)
|
166
189
|
rainbow (>= 2.2.2, < 4.0)
|
167
190
|
regexp_parser (>= 1.8, < 3.0)
|
168
|
-
rexml
|
169
|
-
rubocop-ast (>= 1.
|
191
|
+
rexml (>= 3.2.5, < 4.0)
|
192
|
+
rubocop-ast (>= 1.18.0, < 2.0)
|
170
193
|
ruby-progressbar (~> 1.7)
|
171
194
|
unicode-display_width (>= 1.4.0, < 3.0)
|
172
|
-
rubocop-ast (1.
|
173
|
-
parser (>= 3.
|
174
|
-
rubocop-performance (1.
|
195
|
+
rubocop-ast (1.18.0)
|
196
|
+
parser (>= 3.1.1.0)
|
197
|
+
rubocop-performance (1.14.0)
|
175
198
|
rubocop (>= 1.7.0, < 2.0)
|
176
199
|
rubocop-ast (>= 0.4.0)
|
177
|
-
rubocop-rails (2.
|
200
|
+
rubocop-rails (2.14.2)
|
178
201
|
activesupport (>= 4.2.0)
|
179
202
|
rack (>= 1.1)
|
180
203
|
rubocop (>= 1.7.0, < 2.0)
|
181
|
-
rubocop-rspec (2.
|
204
|
+
rubocop-rspec (2.11.1)
|
182
205
|
rubocop (~> 1.19)
|
183
206
|
ruby-progressbar (1.11.0)
|
184
207
|
scanf (1.0.0)
|
185
208
|
sqlite3 (1.4.2)
|
186
209
|
sqlite3-ruby (1.3.3)
|
187
210
|
sqlite3 (>= 1.3.3)
|
188
|
-
|
211
|
+
strscan (3.0.3)
|
212
|
+
thor (1.2.1)
|
213
|
+
timeout (0.3.0)
|
189
214
|
tzinfo (2.0.4)
|
190
215
|
concurrent-ruby (~> 1.0)
|
191
216
|
unicode-display_width (2.1.0)
|
192
217
|
websocket-driver (0.7.5)
|
193
218
|
websocket-extensions (>= 0.1.0)
|
194
219
|
websocket-extensions (0.1.5)
|
195
|
-
zeitwerk (2.5.
|
220
|
+
zeitwerk (2.5.4)
|
196
221
|
|
197
222
|
PLATFORMS
|
198
223
|
arm64-darwin-20
|
224
|
+
arm64-darwin-21
|
225
|
+
x86_64-linux
|
199
226
|
|
200
227
|
DEPENDENCIES
|
201
228
|
geokit
|
@@ -214,4 +241,4 @@ DEPENDENCIES
|
|
214
241
|
sqlite3-ruby
|
215
242
|
|
216
243
|
BUNDLED WITH
|
217
|
-
2.
|
244
|
+
2.3.15
|
data/README.md
CHANGED
@@ -140,10 +140,9 @@ Rack::Request#mobile.position に位置情報が格納されます。
|
|
140
140
|
@longuitude = request.mobile.position.lon
|
141
141
|
```
|
142
142
|
|
143
|
-
#### [GeoKit](
|
143
|
+
#### [GeoKit](https://github.com/geokit/geokit) との連携
|
144
144
|
|
145
|
-
vendor/plugins/geokit以下にGeoKitがインストールされていると、Jpmobile::PositionにGeoKit::
|
146
|
-
eがincludeされる。したがって、
|
145
|
+
vendor/plugins/geokit以下にGeoKitがインストールされていると、Jpmobile::PositionにGeoKit::Mappableがincludeされる。したがって、
|
147
146
|
|
148
147
|
```ruby
|
149
148
|
request.mobile.position.distance_to('札幌駅')
|
@@ -295,6 +294,28 @@ def index
|
|
295
294
|
end
|
296
295
|
```
|
297
296
|
|
297
|
+
### アクション定義の省略
|
298
|
+
|
299
|
+
Railsでは、アクション名に対応するテンプレートが存在する場合、アクション用のメソッド定義を省略できる。
|
300
|
+
|
301
|
+
しかし、端末向けテンプレートしか存在しないアクションの場合、jpmobileではメソッド定義を省略することを許していない。
|
302
|
+
|
303
|
+
```ruby
|
304
|
+
class MyController < ApplicationController
|
305
|
+
# app/views/my/index_smart_phone.html.erb がある場合でも、次のメソッド定義は必須。
|
306
|
+
def index
|
307
|
+
end
|
308
|
+
end
|
309
|
+
```
|
310
|
+
|
311
|
+
次のように設定を加えると、これを省略できるようになる。
|
312
|
+
|
313
|
+
```ruby
|
314
|
+
class MyController < ApplicationController
|
315
|
+
include Jpmobile::MethodLessActionSupport
|
316
|
+
end
|
317
|
+
```
|
318
|
+
|
298
319
|
### 位置情報の取得用リンクの生成
|
299
320
|
|
300
321
|
以下のようなコードで、端末に位置情報を要求するリンクを出力する。
|
data/Rakefile
CHANGED
@@ -21,7 +21,7 @@ namespace :test do
|
|
21
21
|
'jpmobile-ipaddresses',
|
22
22
|
'jpmobile-terminfo',
|
23
23
|
]
|
24
|
-
github_prefix = '
|
24
|
+
github_prefix = 'https://github.com/jpmobile'
|
25
25
|
vendor_path = Pathname.new(Dir.pwd).join('vendor')
|
26
26
|
FileUtils.mkdir_p(vendor_path)
|
27
27
|
|
data/jpmobile.gemspec
CHANGED
@@ -16,7 +16,7 @@ Gem::Specification.new do |gem|
|
|
16
16
|
gem.test_files = gem.files.grep(%r{^(test|spec|system)/})
|
17
17
|
gem.require_paths = ['lib']
|
18
18
|
|
19
|
-
gem.required_ruby_version = '>=
|
19
|
+
gem.required_ruby_version = '>= 2.7.0'
|
20
20
|
|
21
21
|
gem.add_dependency 'mail', '~> 2.7.0'
|
22
22
|
gem.add_dependency 'rexml'
|
@@ -30,4 +30,5 @@ Gem::Specification.new do |gem|
|
|
30
30
|
gem.add_development_dependency 'rspec-its'
|
31
31
|
gem.add_development_dependency 'rspec-rails'
|
32
32
|
gem.add_development_dependency 'sqlite3-ruby'
|
33
|
+
gem.metadata['rubygems_mfa_required'] = 'true'
|
33
34
|
end
|
data/lib/jpmobile/datum_conv.rb
CHANGED
@@ -19,11 +19,11 @@ module DatumConv
|
|
19
19
|
l = l_deg * Deg2Rad
|
20
20
|
|
21
21
|
e2 = f * (2 - f)
|
22
|
-
n = a / Math.sqrt(1 - e2 * Math.sin(b)**2)
|
22
|
+
n = a / Math.sqrt(1 - (e2 * (Math.sin(b)**2)))
|
23
23
|
|
24
24
|
x = (n + he) * Math.cos(b) * Math.cos(l)
|
25
25
|
y = (n + he) * Math.cos(b) * Math.sin(l)
|
26
|
-
z = (n * (1 - e2) + he) * Math.sin(b)
|
26
|
+
z = ((n * (1 - e2)) + he) * Math.sin(b)
|
27
27
|
return x, y, z
|
28
28
|
end
|
29
29
|
|
@@ -34,12 +34,12 @@ module DatumConv
|
|
34
34
|
e2 = f * (2 - f)
|
35
35
|
l = Math.atan2(y, x)
|
36
36
|
|
37
|
-
p = Math.sqrt(x**2 + y**2)
|
38
|
-
r = Math.sqrt(p**2 + z**2)
|
39
|
-
u = Math.atan2(z * ((1 - f) + e2 * a / r), p)
|
40
|
-
b = Math.atan2(z * (1 - f) + e2 * a * Math.sin(u)**3, (1 - f) * (p - e2 * a * Math.cos(u)**3))
|
37
|
+
p = Math.sqrt((x**2) + (y**2))
|
38
|
+
r = Math.sqrt((p**2) + (z**2))
|
39
|
+
u = Math.atan2(z * ((1 - f) + (e2 * a / r)), p)
|
40
|
+
b = Math.atan2((z * (1 - f)) + (e2 * a * (Math.sin(u)**3)), (1 - f) * (p - (e2 * a * (Math.cos(u)**3))))
|
41
41
|
|
42
|
-
he = p * Math.cos(b) + z * Math.sin(b) - a * Math.sqrt(1 - e2 * Math.sin(b)**2)
|
42
|
+
he = (p * Math.cos(b)) + (z * Math.sin(b)) - (a * Math.sqrt(1 - (e2 * (Math.sin(b)**2))))
|
43
43
|
|
44
44
|
b_deg = b / Deg2Rad
|
45
45
|
l_deg = l / Deg2Rad
|
data/lib/jpmobile/email.rb
CHANGED
@@ -10,7 +10,7 @@ module Jpmobile
|
|
10
10
|
def detect(email)
|
11
11
|
Mobile.carriers.each do |const|
|
12
12
|
c = Mobile.const_get(const)
|
13
|
-
return c if c::MAIL_ADDRESS_REGEXP && email.match(/^#{c::MAIL_ADDRESS_REGEXP}$/)
|
13
|
+
return c if c::MAIL_ADDRESS_REGEXP && email.match(/^#{c::MAIL_ADDRESS_REGEXP}$/) # rubocop:disable Performance/ConstantRegexp
|
14
14
|
end
|
15
15
|
nil
|
16
16
|
end
|
@@ -21,7 +21,7 @@ module Jpmobile
|
|
21
21
|
c = Mobile.const_get(const)
|
22
22
|
if c::MAIL_ADDRESS_REGEXP &&
|
23
23
|
header.match(/(\S+@[A-Za-z0-9\-._]+)/) &&
|
24
|
-
Regexp.last_match(1).match(/^#{c::MAIL_ADDRESS_REGEXP}$/)
|
24
|
+
Regexp.last_match(1).match(/^#{c::MAIL_ADDRESS_REGEXP}$/) # rubocop:disable Performance/ConstantRegexp
|
25
25
|
return c
|
26
26
|
end
|
27
27
|
end
|
@@ -8,10 +8,10 @@ module Jpmobile
|
|
8
8
|
begin
|
9
9
|
expected_view_file = lookup_context.find_template(options[:template], options[:prefixes])
|
10
10
|
|
11
|
-
_candidates = lookup_context.mobile.
|
11
|
+
_candidates = lookup_context.mobile.filter_map do |variant|
|
12
12
|
target_template = options[:template] + '_' + variant
|
13
13
|
expected_view_file.virtual_path.match(target_template)
|
14
|
-
|
14
|
+
end
|
15
15
|
|
16
16
|
if _candidates.empty?
|
17
17
|
lookup_context.mobile = []
|
data/lib/jpmobile/filter.rb
CHANGED
@@ -42,6 +42,8 @@ module Jpmobile
|
|
42
42
|
Regexp.escape('application/xhtml+xm'),
|
43
43
|
)
|
44
44
|
|
45
|
+
CONVERT_TARGET_ELEMENTS = %w[submit reset button].freeze
|
46
|
+
|
45
47
|
class << self
|
46
48
|
def hankaku_format(str)
|
47
49
|
replace_chars(str, zen_to_han_table)
|
@@ -149,7 +151,7 @@ module Jpmobile
|
|
149
151
|
# textarea 以外のテキストなら content を変換
|
150
152
|
element.content = filter(:hankaku, element.content)
|
151
153
|
end
|
152
|
-
elsif (element.node_name == 'input') &&
|
154
|
+
elsif (element.node_name == 'input') && CONVERT_TARGET_ELEMENTS.include?(element['type'])
|
153
155
|
# テキスト以外でもボタンの value は変換
|
154
156
|
element['value'] = filter(:hankaku, element['value'])
|
155
157
|
elsif element.children.any?
|
data/lib/jpmobile/mail.rb
CHANGED
@@ -55,7 +55,7 @@ module Mail
|
|
55
55
|
|
56
56
|
def parse_message_with_jpmobile
|
57
57
|
_crlf_raw_source = raw_source.encode(raw_source.encoding, universal_newline: true).encode!(raw_source.encoding, crlf_newline: true)
|
58
|
-
header_part, body_part = _crlf_raw_source.lstrip.split(/#{CRLF}#{CRLF}|#{CRLF}#{WSP}*#{CRLF}(?!#{WSP})/
|
58
|
+
header_part, body_part = _crlf_raw_source.lstrip.split(/#{CRLF}#{CRLF}|#{CRLF}#{WSP}*#{CRLF}(?!#{WSP})/mo, 2)
|
59
59
|
# header_part, body_part = raw_source.lstrip.split(HEADER_SEPARATOR, 2)
|
60
60
|
|
61
61
|
self.header = header_part
|
@@ -277,7 +277,7 @@ module Mail
|
|
277
277
|
end
|
278
278
|
|
279
279
|
def parse_message_with_jpmobile
|
280
|
-
header_part, body_part = raw_source.split(/#{CRLF}#{WSP}*#{CRLF}/
|
280
|
+
header_part, body_part = raw_source.split(/#{CRLF}#{WSP}*#{CRLF}/mo, 2)
|
281
281
|
|
282
282
|
self.header = if header_part && header_part.match(HEADER_LINE)
|
283
283
|
header_part
|
data/lib/jpmobile/mailer.rb
CHANGED
@@ -242,7 +242,7 @@ module Jpmobile::Mobile
|
|
242
242
|
end
|
243
243
|
|
244
244
|
def ip_address_class
|
245
|
-
Object.const_get("::Jpmobile::Mobile::IpAddresses::#{self.to_s.split(
|
245
|
+
Object.const_get("::Jpmobile::Mobile::IpAddresses::#{self.to_s.split("::").last}").new
|
246
246
|
rescue
|
247
247
|
nil
|
248
248
|
end
|