solis 0.117.0 → 0.118.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: fa9ba6d86b36ebd75e9e0280928ce458f1ae70e4c64f44832c0963870f319b2f
4
- data.tar.gz: 23c8bd2bcbbb4fe97dc133b3310d1527bab161dbce43e2939b45a8fa1a9b7712
3
+ metadata.gz: bc9c081aeba6b10c1b7ed9bdd221b8219f7a8f89596b7c937a8bf87e343bfcb0
4
+ data.tar.gz: 24a8fc1f21c67eece89f0a30c18bf90473f23def81e2149b98f8657fa77a2e80
5
5
  SHA512:
6
- metadata.gz: f15183cf04d168b3d06425bfe987d4cc446d0fad1e1b1f94532b8dfedf39b3401d39641226d91a63400f4a4e1c7096a0c995b64e2629d6d07424bae7e4c14375
7
- data.tar.gz: d7219d14c2290aa045ca80a32a97df1f12fcc4aa0df31fc3628fe91dbd5e2ee7e6239474aef27f4f43caf45fb9347e8cd059a0deabff12a3b2bd754ad1e98342
6
+ metadata.gz: ce663aa78d5792defbda7e77c1a378b96c0313e8def796bf5b2f969d2016d9201bec41a6e9a66c7f4c4ff800ce0183a4fa4d53e5445e45ae33a14049cc613ca4
7
+ data.tar.gz: 656ed83c3d144ac9168bb33f9b5a724e294c6864caac254824855bc1c48d2f7a84841e0cff68198b09f915074a57af9440c2478b9649ead27515e4d04d8bd87b
@@ -5,7 +5,7 @@ module Solis
5
5
  {
6
6
  has_many: HasMany,
7
7
  belongs_to: BelongsTo,
8
- has_one: ::Graphiti::Sideload::HasOne,
8
+ has_one: HasOne,
9
9
  many_to_many: ::Graphiti::Sideload::ManyToMany,
10
10
  polymorphic_belongs_to: ::Graphiti::Sideload::PolymorphicBelongsTo
11
11
  }
@@ -314,6 +314,24 @@ module Solis
314
314
  end
315
315
 
316
316
 
317
+ class HasOne < Graphiti::Sideload::HasOne
318
+ def load_params(parents, query)
319
+ query.hash.tap do |hash|
320
+ hash[:filter] ||= {}
321
+ unless hash[:filter].include?(:id)
322
+ all_ids = parents.map{|m| m.instance_variable_get("@#{query.association_name.to_s}")}.flatten.map{|m| m.instance_variable_get("@#{primary_key}")}.uniq.compact.join(',')
323
+ hash[:filter].merge!({primary_key => all_ids})
324
+ end
325
+ end
326
+ end
327
+
328
+ private
329
+
330
+ def children_for(parent, map)
331
+ map.values.first
332
+ end
333
+ end
334
+
317
335
  class HasMany < Graphiti::Sideload::HasMany
318
336
  def inverse_filter
319
337
  @inverse_filter || foreign_key
data/lib/solis/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Solis
2
- VERSION = "0.117.0"
2
+ VERSION = "0.118.0"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: solis
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.117.0
4
+ version: 0.118.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mehmet Celik