forest_admin_agent 1.37.2 → 1.37.3

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 803b07951c6391fe8053f31ae3e61f9e5ca4554d566dbdb632e58ed1af347023
4
- data.tar.gz: dbcaeb6b707a998e2611aed5b48f70ac837cb7108bccdada00c18c32352f07cb
3
+ metadata.gz: 8fdf5c141f3b667c5d637882a071c6775bbf8dd6c814415b53c7cfa1478725d3
4
+ data.tar.gz: 8e51a39b2ac4461d530d64b9bd24e93dd37463057c68d39a505e6ee63ba7b338
5
5
  SHA512:
6
- metadata.gz: 5f5be7f213857e22442935adae33a72e67161349f1ffc8fc54226eee9564ab732a9e69e5ff546b3f4d47abd3284609e7ba563bb9bc18a21f7bfc727da99a4fec
7
- data.tar.gz: 399f1c35b9568d590844a70aae5d01a00ed67eb6e4edade4371b05813b2ccf7ae9393477bd80565e3f65edfb7eb5870eee1aa06d5fdd775a1426996417806ba7
6
+ metadata.gz: cd9a857e7b0c8cd264f998522bca85aef1048253ab7ba30106383fbf91d2744581a4356edad2431d2ea6c392bb67c031390debf5dd0fa496648d2ed454f504a7
7
+ data.tar.gz: 906a6c9db2e4911fc8b2dea2993c5a274fd2e2fb1b43ce985dfb97e8dbd3563bdbf2592a21d8ac3bac2b580413e871bbacf0f86bf7fc1ec0766e564e16c575fd
@@ -2,7 +2,7 @@ require 'json'
2
2
  module ForestAdminAgent
3
3
  module Routes
4
4
  module Capabilities
5
- class Collections < AbstractRoute
5
+ class Collections < AbstractAuthenticatedRoute
6
6
  include ForestAdminDatasourceToolkit::Schema
7
7
  include ForestAdminDatasourceToolkit::Schema::Relations
8
8
 
@@ -16,7 +16,8 @@ module ForestAdminAgent
16
16
  end
17
17
 
18
18
  def handle_request(args = {})
19
- datasource = ForestAdminAgent::Facades::Container.datasource
19
+ context = build(args)
20
+ datasource = context.datasource
20
21
  collections = args[:params]['collectionNames'] || []
21
22
 
22
23
  connections = datasource.live_query_connections.keys.map { |connection_name| { name: connection_name } }
@@ -37,14 +37,13 @@ module ForestAdminAgent
37
37
  end
38
38
 
39
39
  def handle_api_chart(args = {})
40
- caller = Utils::QueryStringParser.parse_caller(args)
40
+ context = build(args)
41
41
  parameters = Utils::QueryStringParser.parse_chart_parameters(args)
42
- datasource = ForestAdminAgent::Facades::Container.datasource
43
42
 
44
43
  {
45
44
  content: Serializer::ForestChartSerializer.serialize(
46
- datasource.render_chart(
47
- caller,
45
+ context.datasource.render_chart(
46
+ context.caller,
48
47
  @chart_name,
49
48
  parameters
50
49
  )
@@ -53,13 +52,12 @@ module ForestAdminAgent
53
52
  end
54
53
 
55
54
  def handle_smart_chart(args = {})
56
- caller = Utils::QueryStringParser.parse_caller(args)
55
+ context = build(args)
57
56
  parameters = Utils::QueryStringParser.parse_chart_parameters(args)
58
- datasource = ForestAdminAgent::Facades::Container.datasource
59
57
 
60
58
  {
61
- content: datasource.render_chart(
62
- caller,
59
+ content: context.datasource.render_chart(
60
+ context.caller,
63
61
  @chart_name,
64
62
  parameters
65
63
  )
@@ -1,7 +1,7 @@
1
1
  module ForestAdminAgent
2
2
  module Routes
3
3
  module Security
4
- class ScopeInvalidation < AbstractRoute
4
+ class ScopeInvalidation < AbstractAuthenticatedRoute
5
5
  include ForestAdminAgent::Builder
6
6
  include ForestAdminAgent::Services
7
7
 
@@ -17,8 +17,7 @@ module ForestAdminAgent
17
17
  end
18
18
 
19
19
  def handle_request(args)
20
- # Check if user is logged
21
- Utils::QueryStringParser.parse_caller(args)
20
+ build(args)
22
21
  Permissions.invalidate_cache('forest.rendering')
23
22
 
24
23
  { content: nil, status: 204 }
@@ -51,6 +51,8 @@ module ForestAdminAgent
51
51
  true,
52
52
  { algorithm: 'HS256' }
53
53
  )[0].tap { |data| data.delete('exp') }
54
+ rescue JWT::DecodeError
55
+ raise Http::Exceptions::UnauthorizedError, 'Invalid or expired authentication token.'
54
56
  end
55
57
 
56
58
  def extract_forest_context
@@ -6,7 +6,7 @@ module ForestAdminAgent
6
6
  module Schema
7
7
  class SchemaEmitter
8
8
  LIANA_NAME = "agent-ruby"
9
- LIANA_VERSION = "1.37.2"
9
+ LIANA_VERSION = "1.37.3"
10
10
 
11
11
  def self.generate(datasource)
12
12
  datasource.collections
@@ -1,3 +1,3 @@
1
1
  module ForestAdminAgent
2
- VERSION = "1.37.2"
2
+ VERSION = "1.37.3"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: forest_admin_agent
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.37.2
4
+ version: 1.37.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matthieu
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2026-08-10 00:00:00.000000000 Z
12
+ date: 2026-08-11 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport