zuora_connect_ui 0.11.3 → 0.11.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 309e6a936c073ec3ea3e85c69c1d3a13d87a0de2e59bd8631ac82b3c98aa79eb
4
- data.tar.gz: 0acc7df063518442b1502be0637816c1b95b58d45c4408d811ca8e431de480da
3
+ metadata.gz: 8d3ee0b0562de45310cf476445bf5d3b542180bb7ba3a7b270d04030e1e7edd9
4
+ data.tar.gz: cb8c8638d6415aa63eba70bec014f568aa23d01c202b5268c9175be549761b48
5
5
  SHA512:
6
- metadata.gz: 6d98619932b563bff644092858e5ab974aea8fc19709d673c8564a23457dcccfa21bd67dd2ff2d32961b32fdc4bae6281247ea656d55ad1965c089bd3f703180
7
- data.tar.gz: f28ff5d7865ee95021ae7d43c587dfc2e7bf380dc4c729cf292939c65cefc9465b472a76e527ece1ee724535338c1cd6c7c5dbc927a422a9e9b45dc92721b1c6
6
+ metadata.gz: 793b449079b7ccac03476048fc1ff005178bdc93c57928e31ec14db76948d06349dbea5824fe9106e47a3a8ecf8c2d58fce42d456528713cf96e8a0baca937cc
7
+ data.tar.gz: aa198f72de50493c365c66d6c1ffa818c95da2737226c87b0d04f123b7d4024febaf55fa08e1bb0ecbabae5c4983c49f142ef83c649f0e56a49c22dd0d6d6750
@@ -12,6 +12,7 @@ module ZuoraConnectUi
12
12
  @is_collection = options[:is_collection]
13
13
 
14
14
  @record_type = parse_record_type(@kind, @resource)
15
+ @camel_type = key_transform(@record_type)
15
16
 
16
17
  @associations = parse_associations(
17
18
  options[:has_many], options[:belongs_to], options[:has_one]
@@ -76,7 +77,7 @@ module ZuoraConnectUi
76
77
  end
77
78
 
78
79
  def record_hash(resource, record_type)
79
- hash = @kind.nil? ? {} : { kind: record_type }
80
+ hash = @kind.nil? ? {} : { kind: @camel_type }
80
81
  hash[:id] = resource.id
81
82
  @fields[record_type].each do |field|
82
83
  hash[key_transform(field)] = resource.public_send(field)
@@ -124,11 +125,11 @@ module ZuoraConnectUi
124
125
  end
125
126
 
126
127
  def parse_record_type(kind, resource)
127
- return key_transform(kind) if kind
128
+ return kind.to_sym if kind
128
129
 
129
- return key_transform(resource.class.name) unless collection?(resource)
130
+ return resource.class.name.underscore.to_sym unless collection?(resource)
130
131
 
131
- key_transform(resource.first.class.name)
132
+ resource.first.class.name.underscore.to_sym
132
133
  end
133
134
 
134
135
  # TODO: hold reserved words
@@ -9,6 +9,7 @@ module ZuoraConnectUi
9
9
  :record_type, :plural_type
10
10
 
11
11
  def initialize(key:, relationship_type:)
12
+ @camel_fields = {}
12
13
  @key = key
13
14
  @relationship_type = relationship_type
14
15
 
@@ -18,6 +19,9 @@ module ZuoraConnectUi
18
19
  def serialize(resources, fields)
19
20
  resources.each_with_object({}) do |resource, hash|
20
21
  relations = resource.public_send(key)
22
+
23
+ next if relations.nil?
24
+
21
25
  relations = [relations] unless @relationship_type == :has_many
22
26
 
23
27
  relations.each do |relation|
@@ -34,7 +38,8 @@ module ZuoraConnectUi
34
38
  hash = { id: resource.id }
35
39
 
36
40
  fields.each do |field|
37
- hash[key_transform(field)] = resource.public_send(field)
41
+ key = @camel_fields[field] ||= key_transform(field)
42
+ hash[key] = resource.public_send(field)
38
43
  end
39
44
 
40
45
  hash
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ZuoraConnectUi
4
- VERSION = '0.11.3'
4
+ VERSION = '0.11.4'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zuora_connect_ui
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.3
4
+ version: 0.11.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Connect Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-09-17 00:00:00.000000000 Z
11
+ date: 2020-09-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -94,6 +94,20 @@ dependencies:
94
94
  - - ">="
95
95
  - !ruby/object:Gem::Version
96
96
  version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: benchmark-ips
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
97
111
  - !ruby/object:Gem::Dependency
98
112
  name: brakeman
99
113
  requirement: !ruby/object:Gem::Requirement
@@ -122,6 +136,20 @@ dependencies:
122
136
  - - ">"
123
137
  - !ruby/object:Gem::Version
124
138
  version: '1.16'
139
+ - !ruby/object:Gem::Dependency
140
+ name: factory_bot
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ">="
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ version: '0'
125
153
  - !ruby/object:Gem::Dependency
126
154
  name: rspec
127
155
  requirement: !ruby/object:Gem::Requirement
@@ -192,6 +220,20 @@ dependencies:
192
220
  - - ">="
193
221
  - !ruby/object:Gem::Version
194
222
  version: '0'
223
+ - !ruby/object:Gem::Dependency
224
+ name: ruby-prof
225
+ requirement: !ruby/object:Gem::Requirement
226
+ requirements:
227
+ - - ">="
228
+ - !ruby/object:Gem::Version
229
+ version: '0'
230
+ type: :development
231
+ prerelease: false
232
+ version_requirements: !ruby/object:Gem::Requirement
233
+ requirements:
234
+ - - ">="
235
+ - !ruby/object:Gem::Version
236
+ version: '0'
195
237
  - !ruby/object:Gem::Dependency
196
238
  name: simplecov
197
239
  requirement: !ruby/object:Gem::Requirement
@@ -220,6 +262,20 @@ dependencies:
220
262
  - - ">="
221
263
  - !ruby/object:Gem::Version
222
264
  version: '0'
265
+ - !ruby/object:Gem::Dependency
266
+ name: stackprof
267
+ requirement: !ruby/object:Gem::Requirement
268
+ requirements:
269
+ - - ">="
270
+ - !ruby/object:Gem::Version
271
+ version: '0'
272
+ type: :development
273
+ prerelease: false
274
+ version_requirements: !ruby/object:Gem::Requirement
275
+ requirements:
276
+ - - ">="
277
+ - !ruby/object:Gem::Version
278
+ version: '0'
223
279
  description: Description of Connect UI
224
280
  email:
225
281
  - connect@zuora.com