forest_admin_datasource_pylon 1.45.1 → 1.46.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f0bca73e2fad944fe6901ad153697f6df8072de28487ba733cae2f16a9affcad
4
- data.tar.gz: 072abdcc5ac830893f5934cc8e0cd997a707437685d3594e011c99d771f27dae
3
+ metadata.gz: 95b36847c0b59468647d944ed3729c1495aff1f4e449872ee259d617d6ce96aa
4
+ data.tar.gz: 5a2aa06274cc13f80884c4ab4faeefa4c82da9faa053381174703aec6173ae5f
5
5
  SHA512:
6
- metadata.gz: 1afa042184339aa6ccb836a16937b7fe161a2f0b0349ea4d28ab6f52a7eb42436b6f944020bfa09aaa94a9da097b5bec09e8378fd0dacdff300ac3441bacc1cc
7
- data.tar.gz: 429aae1c0b34a53910dc2d60413362ca45f12bc959b19fc79b3718475b30cb5c6ec2f827c15113c2ac92a61f5e8d8288847cbd8c4f01710667a3addbffd7ff7c
6
+ metadata.gz: 903f13cc7a4c596e1724ccb00fb4dbce16a9a2868228bfe44b62d328a92802085dab8a94252e3dd68bd189103c85b488cebb107a2b31800740e7e3797ebafc0d
7
+ data.tar.gz: 6067c6a00d60059dafae618b0a8d3d9611165d7f8cc179940d012af22b7aa9c1a3861fb6402bbf9485ec647ce6cf8867a591cceda75c62995ce64fedf3eb9553
@@ -32,5 +32,6 @@ Gem::Specification.new do |spec|
32
32
  spec.add_dependency 'activesupport', '>= 6.1'
33
33
  spec.add_dependency 'faraday', '~> 2.0'
34
34
  spec.add_dependency 'faraday-retry', '~> 2.0'
35
+ spec.add_dependency 'forest_admin_datasource_toolkit', ">= #{ForestAdminDatasourcePylon::VERSION}"
35
36
  spec.add_dependency 'zeitwerk', '~> 2.3'
36
37
  end
@@ -12,6 +12,7 @@ module ForestAdminDatasourcePylon
12
12
  module RelationEmbedder
13
13
  ManyToOneSchema = BaseCollection::ManyToOneSchema
14
14
  Projection = BaseCollection::Projection
15
+ ProjectionTree = ForestAdminDatasourceToolkit::Components::Query::ProjectionTree
15
16
 
16
17
  private
17
18
 
@@ -56,9 +57,10 @@ module ForestAdminDatasourcePylon
56
57
  indexed = ids.empty? ? {} : foreign.records_indexed_by_id(ids)
57
58
  relations.each do |name, relation|
58
59
  wanted = projected_fields(sub_projections[name], foreign)
60
+ tree = wanted && ProjectionTree.build(wanted)
59
61
  rows.each_with_index do |row, index|
60
62
  related = indexed[records[index][relation.foreign_key]]
61
- row[name] = wanted ? wanted.re_project(related) : related
63
+ row[name] = tree ? tree.re_project(related) : related
62
64
  end
63
65
  end
64
66
  end
@@ -1,3 +1,3 @@
1
1
  module ForestAdminDatasourcePylon
2
- VERSION = "1.45.1"
2
+ VERSION = "1.46.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: forest_admin_datasource_pylon
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.45.1
4
+ version: 1.46.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Forest Admin
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2026-10-10 00:00:00.000000000 Z
11
+ date: 2026-10-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -52,6 +52,20 @@ dependencies:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '2.0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: forest_admin_datasource_toolkit
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: 1.46.0
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: 1.46.0
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: zeitwerk
57
71
  requirement: !ruby/object:Gem::Requirement