activitysmith 1.1.0 → 1.2.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.
@@ -0,0 +1,42 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ActivitySmith
4
+ class Metrics
5
+ def initialize(api)
6
+ @api = api
7
+ end
8
+
9
+ def update(key, value_or_request, timestamp: nil, **opts)
10
+ @api.update_metric_value(key, metric_value_request(value_or_request, timestamp), opts)
11
+ end
12
+
13
+ # Backward-compatible generated-style alias.
14
+ def update_metric_value(key, metric_value_update_request, opts = {})
15
+ @api.update_metric_value(key, metric_value_update_request, opts)
16
+ end
17
+
18
+ def method_missing(name, *args, &block)
19
+ return @api.public_send(name, *args, &block) if @api.respond_to?(name)
20
+
21
+ super
22
+ end
23
+
24
+ def respond_to_missing?(name, include_private = false)
25
+ @api.respond_to?(name, include_private) || super
26
+ end
27
+
28
+ private
29
+
30
+ def metric_value_request(value_or_request, timestamp)
31
+ if value_or_request.is_a?(Hash) && (value_or_request.key?(:value) || value_or_request.key?("value"))
32
+ hash = value_or_request.dup
33
+ hash[:timestamp] = timestamp unless timestamp.nil?
34
+ return hash
35
+ end
36
+
37
+ hash = { value: value_or_request }
38
+ hash[:timestamp] = timestamp unless timestamp.nil?
39
+ hash
40
+ end
41
+ end
42
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ActivitySmith
4
- VERSION = "1.1.0"
4
+ VERSION = "1.2.0"
5
5
  end
data/lib/activitysmith.rb CHANGED
@@ -4,4 +4,5 @@ require_relative "activitysmith/version"
4
4
  require_relative "activitysmith/versioned_user_agent"
5
5
  require_relative "activitysmith/notifications"
6
6
  require_relative "activitysmith/live_activities"
7
+ require_relative "activitysmith/metrics"
7
8
  require_relative "activitysmith/client"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activitysmith
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - ActivitySmith
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-03-22 00:00:00.000000000 Z
11
+ date: 2026-05-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json
@@ -77,6 +77,7 @@ files:
77
77
  - README.md
78
78
  - generated/activitysmith_openapi.rb
79
79
  - generated/activitysmith_openapi/api/live_activities_api.rb
80
+ - generated/activitysmith_openapi/api/metrics_api.rb
80
81
  - generated/activitysmith_openapi/api/push_notifications_api.rb
81
82
  - generated/activitysmith_openapi/api_client.rb
82
83
  - generated/activitysmith_openapi/api_error.rb
@@ -103,6 +104,12 @@ files:
103
104
  - generated/activitysmith_openapi/models/live_activity_update_request.rb
104
105
  - generated/activitysmith_openapi/models/live_activity_update_response.rb
105
106
  - generated/activitysmith_openapi/models/live_activity_webhook_method.rb
107
+ - generated/activitysmith_openapi/models/metric_error.rb
108
+ - generated/activitysmith_openapi/models/metric_format.rb
109
+ - generated/activitysmith_openapi/models/metric_unit_spacing.rb
110
+ - generated/activitysmith_openapi/models/metric_value_update_request.rb
111
+ - generated/activitysmith_openapi/models/metric_value_update_request_value.rb
112
+ - generated/activitysmith_openapi/models/metric_value_update_response.rb
106
113
  - generated/activitysmith_openapi/models/no_recipients_error.rb
107
114
  - generated/activitysmith_openapi/models/not_found_error.rb
108
115
  - generated/activitysmith_openapi/models/push_notification_action.rb
@@ -113,10 +120,13 @@ files:
113
120
  - generated/activitysmith_openapi/models/rate_limit_error.rb
114
121
  - generated/activitysmith_openapi/models/send_push_notification429_response.rb
115
122
  - generated/activitysmith_openapi/models/stream_content_state.rb
123
+ - generated/activitysmith_openapi/models/widget_metric.rb
124
+ - generated/activitysmith_openapi/models/widget_metric_latest_value.rb
116
125
  - generated/activitysmith_openapi/version.rb
117
126
  - lib/activitysmith.rb
118
127
  - lib/activitysmith/client.rb
119
128
  - lib/activitysmith/live_activities.rb
129
+ - lib/activitysmith/metrics.rb
120
130
  - lib/activitysmith/notifications.rb
121
131
  - lib/activitysmith/version.rb
122
132
  - lib/activitysmith/versioned_user_agent.rb