ga4-rails 0.2 → 0.2.1

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: ccebb95c15585bdcb7bbaae021ef88925592dfab178fa2d3aea4c7af630e4b7b
4
- data.tar.gz: 3f905d8b8e986f6af1d16122c0312449995fbb792963f64e2f545d2a5141f52a
3
+ metadata.gz: 5870e26229963003ab4e34cae150c85f490562c6e8eb4bdb41b69a39a037ec42
4
+ data.tar.gz: 50d422c79f317f9513cd1596106a12edc55f8594df37b8eba1e0ae5cf5ce4a0a
5
5
  SHA512:
6
- metadata.gz: 87996522ee691d58d75a51586211e97530c860d4e4bb8ad6c94fcff2ae932e39df39f2ea340b662b4832c7a7fe57768fe2fc9449df74b7e16d6f0adbdaba20c5
7
- data.tar.gz: 01021a0c232f81948d53c461f49bfc91a17b2153a441b0c30dd228f5bcafde2434241889d9ede8051cc6d88641ec5c430e5e0f431d58b7dc8676f4c552376802
6
+ metadata.gz: de4e462f15d7091df34f628accc525f9d59dd67188827a12821850fd41eb6d0411d794cc033e07bdfdd1457cd676675fb6caa8ff12856632317e43de451e490b
7
+ data.tar.gz: ca8d4c4f8c5d279664070e4655220517d98269a5ab18353098334288bf35bcb91cf2098f66f3897b885242c8e64b9cd9f2c47610d5f71f532cd720ecfae49905
data/CHANGELOG.md CHANGED
@@ -1,6 +1,10 @@
1
1
  ## [Unreleased]
2
2
 
3
- ## [0.2] - 2023-02-01
3
+ ## [0.2.1] - 2023-06-02
4
+
5
+ - Update model response format
6
+
7
+ ## [0.2] - 2023-02-02
4
8
 
5
9
  - Add wrapper for Google Analytics Data API
6
10
  - Add model to fetch results for better framework integration
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- ga4-rails (0.1.4)
4
+ ga4-rails (0.2)
5
5
  google-apis-analyticsadmin_v1alpha
6
6
  google-apis-analyticsdata_v1beta
7
7
 
@@ -104,4 +104,4 @@ DEPENDENCIES
104
104
  rubocop
105
105
 
106
106
  BUNDLED WITH
107
- 2.3.13
107
+ 2.4.5
@@ -19,7 +19,6 @@ module Ga4Rails::Model
19
19
  def results(access_token:, property_id:, start_date:, end_date:, limit: 1000)
20
20
  client = Ga4Rails::Client.new(access_token: access_token)
21
21
 
22
- # TODO: Handle response
23
22
  response = client.run_property_report(
24
23
  property_id: property_id,
25
24
  body: build_body(start_date: start_date, end_date: end_date, limit: limit)
@@ -46,12 +45,28 @@ module Ga4Rails::Model
46
45
  end
47
46
 
48
47
  def beautify_response(response)
48
+ return [] if response&.rows.nil?
49
+
49
50
  response.rows.map do |row|
50
51
  {
51
- dimensions: row.dimension_values.map(&:value).join(', '),
52
- metrics: row.metric_values.map(&:value).join(', ')
52
+ dimensions: dimensions_for(row),
53
+ metrics: metrics_for(row)
53
54
  }
54
55
  end
55
56
  end
57
+
58
+ def dimensions_for(row)
59
+ row.dimension_values.each_with_index.inject({}) do |result, (item, index)|
60
+ result[dimensions[index]] = item.value
61
+ result
62
+ end
63
+ end
64
+
65
+ def metrics_for(row)
66
+ row.metric_values.each_with_index.inject({}) do |result, (item, index)|
67
+ result[metrics[index]] = item.value
68
+ result
69
+ end
70
+ end
56
71
  end
57
72
  end
@@ -1,3 +1,3 @@
1
1
  module Ga4Rails
2
- VERSION = '0.2'.freeze
2
+ VERSION = '0.2.1'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ga4-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: '0.2'
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andriy Lukashchuk
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-02-01 00:00:00.000000000 Z
11
+ date: 2023-02-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: google-apis-analyticsadmin_v1alpha