adobe-campaign 0.2.0 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/.gitignore +4 -0
- data/.rubocop.yml +2 -1
- data/.ruby-version +1 -1
- data/Rakefile +1 -0
- data/adobe-campaign.gemspec +7 -6
- data/lib/adobe/campaign.rb +2 -0
- data/lib/adobe/campaign/base.rb +3 -1
- data/lib/adobe/campaign/configuration.rb +1 -0
- data/lib/adobe/campaign/language.rb +194 -0
- data/lib/adobe/campaign/profile.rb +1 -0
- data/lib/adobe/campaign/railtie.rb +1 -0
- data/lib/adobe/campaign/service.rb +2 -1
- data/lib/adobe/campaign/version.rb +2 -1
- data/lib/tasks/adobe.rake +3 -1
- metadata +51 -31
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 8a2705fa21dd486987478dd1f1ae043e7b82af3200e43879d8774f09742486ca
|
4
|
+
data.tar.gz: 1ff2a73149557944443551508f9b93bb9431b12f2397f49b6b97bba3cd0c9297
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f5c8a13e6077abcd7be9b44745cc5d54872ca6566c337edb0d50b4837853f0689609f4162a2d6da32d1d2f578a625767e9908df3f19248c2e9072cd6231a72c3
|
7
|
+
data.tar.gz: fa3f0f1df5f9fb82ccc4383e5b66c98acaa908461b7bd2e14c125b2fe252d4fc58b65734bcc76aad547e254ea16c6afe0e395def2d408d457a47b685ce2e3237
|
data/.gitignore
CHANGED
data/.rubocop.yml
CHANGED
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.
|
1
|
+
2.6.5
|
data/Rakefile
CHANGED
data/adobe-campaign.gemspec
CHANGED
@@ -1,6 +1,6 @@
|
|
1
|
-
# coding: utf-8
|
2
1
|
# frozen_string_literal: true
|
3
|
-
|
2
|
+
|
3
|
+
lib = File.expand_path('lib', __dir__)
|
4
4
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
5
5
|
require 'adobe/campaign/version'
|
6
6
|
|
@@ -18,13 +18,14 @@ Gem::Specification.new do |spec|
|
|
18
18
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
19
19
|
spec.require_paths = ['lib']
|
20
20
|
|
21
|
-
spec.add_runtime_dependency 'rails', '>= 3.1'
|
22
21
|
spec.add_runtime_dependency 'activesupport', '>= 3.1.0'
|
22
|
+
spec.add_runtime_dependency 'jwt', '>= 1.0', '< 3.0'
|
23
|
+
spec.add_runtime_dependency 'rails', '>= 3.1'
|
23
24
|
spec.add_runtime_dependency 'rest-client', '>= 1.6.0'
|
24
|
-
spec.add_runtime_dependency 'jwt', '~> 1.0'
|
25
25
|
|
26
26
|
spec.add_development_dependency 'bundler', '~> 1.11'
|
27
|
-
spec.add_development_dependency 'rake', '~> 10.0'
|
28
|
-
spec.add_development_dependency 'rspec', '~> 3.0'
|
29
27
|
spec.add_development_dependency 'guard-rubocop'
|
28
|
+
spec.add_development_dependency 'rake', '>= 12.3.3'
|
29
|
+
spec.add_development_dependency 'rspec', '~> 3.0'
|
30
|
+
spec.add_development_dependency 'rubocop', '~> 0.71.0'
|
30
31
|
end
|
data/lib/adobe/campaign.rb
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
+
|
2
3
|
require 'rest-client'
|
3
4
|
|
4
5
|
require 'adobe/campaign/version'
|
@@ -7,6 +8,7 @@ require 'adobe/campaign/railtie' if defined? ::Rails::Railtie
|
|
7
8
|
require 'adobe/campaign/base'
|
8
9
|
require 'adobe/campaign/profile'
|
9
10
|
require 'adobe/campaign/service'
|
11
|
+
require 'adobe/campaign/language'
|
10
12
|
|
11
13
|
module Adobe
|
12
14
|
module Campaign
|
data/lib/adobe/campaign/base.rb
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
+
|
2
3
|
module Adobe
|
3
4
|
module Campaign
|
4
5
|
class Base
|
@@ -32,7 +33,7 @@ module Adobe
|
|
32
33
|
def post_request(url, body)
|
33
34
|
full_url = url_prefix(url)
|
34
35
|
json = body.is_a?(String) ? body : body.to_json
|
35
|
-
resp = RestClient.post(full_url, json, auth_headers.merge('Content-Type' => 'application/json'))
|
36
|
+
resp = RestClient.post(full_url, json, auth_headers.merge('Content-Type' => 'application/json;charset=UTF-8'))
|
36
37
|
JSON.parse(resp.body)
|
37
38
|
end
|
38
39
|
|
@@ -49,6 +50,7 @@ module Adobe
|
|
49
50
|
|
50
51
|
def load_access_token
|
51
52
|
return @access_token if @access_token && @access_token_expires > Time.zone.now
|
53
|
+
|
52
54
|
as_url = "https://#{Adobe::Campaign.configuration.ims_host}/ims/exchange/jwt"
|
53
55
|
as_payload = {
|
54
56
|
client_id: Adobe::Campaign.configuration.api_key,
|
@@ -0,0 +1,194 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Adobe
|
4
|
+
module Campaign
|
5
|
+
class Language
|
6
|
+
def self.map_code(language_code)
|
7
|
+
return language_code if language_code.empty?
|
8
|
+
|
9
|
+
code = normalize language_code
|
10
|
+
|
11
|
+
return code if ADOBE_LANGUAGE_CODES.include?(code)
|
12
|
+
|
13
|
+
if code.include?(ADOBE_DELIMITER)
|
14
|
+
map_code code.rpartition(ADOBE_DELIMITER).first
|
15
|
+
else
|
16
|
+
ADOBE_LANGUAGE_CODES.find { |s| s.start_with? code }
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
def self.normalize(language_code)
|
21
|
+
code = language_code
|
22
|
+
code = code.downcase
|
23
|
+
code.gsub(ISO_DELIMITER, ADOBE_DELIMITER)
|
24
|
+
end
|
25
|
+
|
26
|
+
ISO_DELIMITER = '-'
|
27
|
+
ADOBE_DELIMITER = '_'
|
28
|
+
|
29
|
+
#
|
30
|
+
# Found at https://cru.campaign.adobe.com/view/home
|
31
|
+
# Profiles tab, search, find, and edit a profile, Preferred Lanaguage
|
32
|
+
#
|
33
|
+
ADOBE_LANGUAGE_CODES = %w[
|
34
|
+
af_za
|
35
|
+
ar_sa
|
36
|
+
ar_ae
|
37
|
+
ar_bh
|
38
|
+
ar_dz
|
39
|
+
ar_eg
|
40
|
+
ar_il
|
41
|
+
ar_iq
|
42
|
+
ar_jo
|
43
|
+
ar_kw
|
44
|
+
ar_lb
|
45
|
+
ar_ly
|
46
|
+
ar_ma
|
47
|
+
ar_om
|
48
|
+
ar_qa
|
49
|
+
ar_sy
|
50
|
+
ar_tn
|
51
|
+
ar_ye
|
52
|
+
az_az
|
53
|
+
be_by
|
54
|
+
bg_bg
|
55
|
+
bs_ba
|
56
|
+
ca_es
|
57
|
+
cs_cz
|
58
|
+
da_dk
|
59
|
+
de_de
|
60
|
+
de_at
|
61
|
+
de_be
|
62
|
+
de_ch
|
63
|
+
de_it
|
64
|
+
de_li
|
65
|
+
de_lu
|
66
|
+
el_gr
|
67
|
+
el_cy
|
68
|
+
en_us
|
69
|
+
en_ae
|
70
|
+
en_au
|
71
|
+
en_bz
|
72
|
+
en_ca
|
73
|
+
en_cb
|
74
|
+
en_dk
|
75
|
+
en_gb
|
76
|
+
en_gg
|
77
|
+
en_ie
|
78
|
+
en_il
|
79
|
+
en_im
|
80
|
+
en_in
|
81
|
+
en_je
|
82
|
+
en_jm
|
83
|
+
en_kw
|
84
|
+
en_my
|
85
|
+
en_nz
|
86
|
+
en_om
|
87
|
+
en_ph
|
88
|
+
en_qa
|
89
|
+
en_sa
|
90
|
+
en_sg
|
91
|
+
en_tt
|
92
|
+
en_za
|
93
|
+
en_zw
|
94
|
+
es_es
|
95
|
+
es_ar
|
96
|
+
es_bo
|
97
|
+
es_cl
|
98
|
+
es_co
|
99
|
+
es_cr
|
100
|
+
es_do
|
101
|
+
es_ec
|
102
|
+
es_gt
|
103
|
+
es_hn
|
104
|
+
es_mx
|
105
|
+
es_ni
|
106
|
+
es_pa
|
107
|
+
es_pe
|
108
|
+
es_pr
|
109
|
+
es_py
|
110
|
+
es_sv
|
111
|
+
es_uy
|
112
|
+
es_ve
|
113
|
+
et_ee
|
114
|
+
eu_es
|
115
|
+
fa_ir
|
116
|
+
fi_fi
|
117
|
+
fo_fo
|
118
|
+
fr_fr
|
119
|
+
fr_be
|
120
|
+
fr_ca
|
121
|
+
fr_ch
|
122
|
+
fr_lu
|
123
|
+
fr_mc
|
124
|
+
gl_es
|
125
|
+
gu_in
|
126
|
+
he_il
|
127
|
+
hi_in
|
128
|
+
hr_hr
|
129
|
+
hu_hu
|
130
|
+
hy_am
|
131
|
+
id_id
|
132
|
+
is_is
|
133
|
+
it_it
|
134
|
+
it_ch
|
135
|
+
ja_jp
|
136
|
+
ka_ge
|
137
|
+
kk_kz
|
138
|
+
kn_in
|
139
|
+
ko_kr
|
140
|
+
ky_kz
|
141
|
+
lt_lt
|
142
|
+
lv_lv
|
143
|
+
mk_mk
|
144
|
+
mn_mn
|
145
|
+
mr_in
|
146
|
+
ms_my
|
147
|
+
ms_bn
|
148
|
+
nb_no
|
149
|
+
nl_nl
|
150
|
+
nl_be
|
151
|
+
nn_no
|
152
|
+
no_no
|
153
|
+
pa_in
|
154
|
+
pl_pl
|
155
|
+
pt_pt
|
156
|
+
pt_br
|
157
|
+
ro_ro
|
158
|
+
ro_md
|
159
|
+
ru_ru
|
160
|
+
ru_by
|
161
|
+
ru_kz
|
162
|
+
ru_ua
|
163
|
+
sa_in
|
164
|
+
sk_sk
|
165
|
+
sl_si
|
166
|
+
sq_al
|
167
|
+
sq_mk
|
168
|
+
sq_xk
|
169
|
+
sr_rs
|
170
|
+
sr_ba
|
171
|
+
sr_xk
|
172
|
+
sv_se
|
173
|
+
sv_fi
|
174
|
+
sw_ke
|
175
|
+
ta_in
|
176
|
+
te_in
|
177
|
+
th_th
|
178
|
+
tr_tr
|
179
|
+
tr_cy
|
180
|
+
tt_ru
|
181
|
+
uk_ua
|
182
|
+
ur_pk
|
183
|
+
ur_in
|
184
|
+
uz_uz
|
185
|
+
vi_vn
|
186
|
+
zh_cn
|
187
|
+
zh_hk
|
188
|
+
zh_mo
|
189
|
+
zh_sg
|
190
|
+
zh_tw
|
191
|
+
].freeze
|
192
|
+
end
|
193
|
+
end
|
194
|
+
end
|
data/lib/tasks/adobe.rake
CHANGED
@@ -1,8 +1,9 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
|
2
|
+
|
3
3
|
require 'jwt'
|
4
4
|
require 'adobe/campaign'
|
5
5
|
|
6
|
+
# rubocop:disable Metrics/BlockLength
|
6
7
|
namespace :adobe do
|
7
8
|
desc 'Generate a long-life JWT for exchanging with the adobelogic server'
|
8
9
|
task :generate_jwt do
|
@@ -36,3 +37,4 @@ namespace :adobe do
|
|
36
37
|
puts "It will expire: #{10.years.from_now}"
|
37
38
|
end
|
38
39
|
end
|
40
|
+
# rubocop:enable Metrics/BlockLength
|
metadata
CHANGED
@@ -1,71 +1,77 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: adobe-campaign
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Spencer Oberstadt
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-08-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
-
name:
|
14
|
+
name: activesupport
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
19
|
+
version: 3.1.0
|
20
20
|
type: :runtime
|
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: 3.1.0
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
|
-
name:
|
28
|
+
name: jwt
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version:
|
33
|
+
version: '1.0'
|
34
|
+
- - "<"
|
35
|
+
- !ruby/object:Gem::Version
|
36
|
+
version: '3.0'
|
34
37
|
type: :runtime
|
35
38
|
prerelease: false
|
36
39
|
version_requirements: !ruby/object:Gem::Requirement
|
37
40
|
requirements:
|
38
41
|
- - ">="
|
39
42
|
- !ruby/object:Gem::Version
|
40
|
-
version:
|
43
|
+
version: '1.0'
|
44
|
+
- - "<"
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
version: '3.0'
|
41
47
|
- !ruby/object:Gem::Dependency
|
42
|
-
name:
|
48
|
+
name: rails
|
43
49
|
requirement: !ruby/object:Gem::Requirement
|
44
50
|
requirements:
|
45
51
|
- - ">="
|
46
52
|
- !ruby/object:Gem::Version
|
47
|
-
version: 1
|
53
|
+
version: '3.1'
|
48
54
|
type: :runtime
|
49
55
|
prerelease: false
|
50
56
|
version_requirements: !ruby/object:Gem::Requirement
|
51
57
|
requirements:
|
52
58
|
- - ">="
|
53
59
|
- !ruby/object:Gem::Version
|
54
|
-
version: 1
|
60
|
+
version: '3.1'
|
55
61
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
62
|
+
name: rest-client
|
57
63
|
requirement: !ruby/object:Gem::Requirement
|
58
64
|
requirements:
|
59
|
-
- - "
|
65
|
+
- - ">="
|
60
66
|
- !ruby/object:Gem::Version
|
61
|
-
version:
|
67
|
+
version: 1.6.0
|
62
68
|
type: :runtime
|
63
69
|
prerelease: false
|
64
70
|
version_requirements: !ruby/object:Gem::Requirement
|
65
71
|
requirements:
|
66
|
-
- - "
|
72
|
+
- - ">="
|
67
73
|
- !ruby/object:Gem::Version
|
68
|
-
version:
|
74
|
+
version: 1.6.0
|
69
75
|
- !ruby/object:Gem::Dependency
|
70
76
|
name: bundler
|
71
77
|
requirement: !ruby/object:Gem::Requirement
|
@@ -80,20 +86,34 @@ dependencies:
|
|
80
86
|
- - "~>"
|
81
87
|
- !ruby/object:Gem::Version
|
82
88
|
version: '1.11'
|
89
|
+
- !ruby/object:Gem::Dependency
|
90
|
+
name: guard-rubocop
|
91
|
+
requirement: !ruby/object:Gem::Requirement
|
92
|
+
requirements:
|
93
|
+
- - ">="
|
94
|
+
- !ruby/object:Gem::Version
|
95
|
+
version: '0'
|
96
|
+
type: :development
|
97
|
+
prerelease: false
|
98
|
+
version_requirements: !ruby/object:Gem::Requirement
|
99
|
+
requirements:
|
100
|
+
- - ">="
|
101
|
+
- !ruby/object:Gem::Version
|
102
|
+
version: '0'
|
83
103
|
- !ruby/object:Gem::Dependency
|
84
104
|
name: rake
|
85
105
|
requirement: !ruby/object:Gem::Requirement
|
86
106
|
requirements:
|
87
|
-
- - "
|
107
|
+
- - ">="
|
88
108
|
- !ruby/object:Gem::Version
|
89
|
-
version:
|
109
|
+
version: 12.3.3
|
90
110
|
type: :development
|
91
111
|
prerelease: false
|
92
112
|
version_requirements: !ruby/object:Gem::Requirement
|
93
113
|
requirements:
|
94
|
-
- - "
|
114
|
+
- - ">="
|
95
115
|
- !ruby/object:Gem::Version
|
96
|
-
version:
|
116
|
+
version: 12.3.3
|
97
117
|
- !ruby/object:Gem::Dependency
|
98
118
|
name: rspec
|
99
119
|
requirement: !ruby/object:Gem::Requirement
|
@@ -109,20 +129,20 @@ dependencies:
|
|
109
129
|
- !ruby/object:Gem::Version
|
110
130
|
version: '3.0'
|
111
131
|
- !ruby/object:Gem::Dependency
|
112
|
-
name:
|
132
|
+
name: rubocop
|
113
133
|
requirement: !ruby/object:Gem::Requirement
|
114
134
|
requirements:
|
115
|
-
- - "
|
135
|
+
- - "~>"
|
116
136
|
- !ruby/object:Gem::Version
|
117
|
-
version:
|
137
|
+
version: 0.71.0
|
118
138
|
type: :development
|
119
139
|
prerelease: false
|
120
140
|
version_requirements: !ruby/object:Gem::Requirement
|
121
141
|
requirements:
|
122
|
-
- - "
|
142
|
+
- - "~>"
|
123
143
|
- !ruby/object:Gem::Version
|
124
|
-
version:
|
125
|
-
description:
|
144
|
+
version: 0.71.0
|
145
|
+
description:
|
126
146
|
email:
|
127
147
|
- soberstadt@gmail.com
|
128
148
|
executables: []
|
@@ -144,6 +164,7 @@ files:
|
|
144
164
|
- lib/adobe/campaign.rb
|
145
165
|
- lib/adobe/campaign/base.rb
|
146
166
|
- lib/adobe/campaign/configuration.rb
|
167
|
+
- lib/adobe/campaign/language.rb
|
147
168
|
- lib/adobe/campaign/profile.rb
|
148
169
|
- lib/adobe/campaign/railtie.rb
|
149
170
|
- lib/adobe/campaign/service.rb
|
@@ -152,7 +173,7 @@ files:
|
|
152
173
|
homepage: https://github.com/soberstadt/adobe-campaign
|
153
174
|
licenses: []
|
154
175
|
metadata: {}
|
155
|
-
post_install_message:
|
176
|
+
post_install_message:
|
156
177
|
rdoc_options: []
|
157
178
|
require_paths:
|
158
179
|
- lib
|
@@ -167,9 +188,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
167
188
|
- !ruby/object:Gem::Version
|
168
189
|
version: '0'
|
169
190
|
requirements: []
|
170
|
-
|
171
|
-
|
172
|
-
signing_key:
|
191
|
+
rubygems_version: 3.0.3
|
192
|
+
signing_key:
|
173
193
|
specification_version: 4
|
174
194
|
summary: A ruby wrapper for connecting your Rails app with Adobe Campaign.
|
175
195
|
test_files: []
|