vestauth 0.5.0 → 0.5.1

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: 343672cd8953488da8889f880189fe99b7f5983ae8f2b9b331c044dff60a2f70
4
- data.tar.gz: 5f7421f16a150471441dc1d213b15542e35fe0ed1b33ea37efb1e63d986a6c33
3
+ metadata.gz: c6b8f1d4a5090fe9722110044d32e179747140a59095bfa8cb204da5181d320f
4
+ data.tar.gz: e5fa5304418ee9327a68828e670c6b32e8df582d3279f85b1babe9158af7608f
5
5
  SHA512:
6
- metadata.gz: f6fd0367208b453f5fc3a526393988fe5d569e1c9218423845810c179a0acbee5f2b7234a98adcbefb681c4d64dac59d01f264be26fb1baa6ef0f532e5ef56a6
7
- data.tar.gz: 23877529998688fba566ff958b20951093a533dc9c597284981dbc277b178877860c6819dcf2de643239a8906821ca2ad9f31aaa2ca6a338651fe2ba18d1461e
6
+ metadata.gz: 1f2caff1c291833e5e980181bc80541c5d90190b3863b97fce823c66ebb8f19272c098a9bf2d04511375c0af91d25808de1ba9fecccbe8bb49fe7f9c260f1bb6
7
+ data.tar.gz: d840d82fc9ce7167e112cfd78b62e98090fcd3085d0c51f7e0390eb7746556ea2071fb0b7489f0ae51c19d8e81996f5f7062a255726d9926f43a20a71d8d1bac
@@ -78,11 +78,30 @@ module Vestauth
78
78
 
79
79
  def serialize_json_arg(value, name:)
80
80
  return value if value.is_a?(String)
81
+
81
82
  return JSON.generate(value) if value.is_a?(Hash) || value.is_a?(Array)
82
- return JSON.generate(value.to_h) if value.respond_to?(:to_h)
83
+
84
+ if value.respond_to?(:to_h)
85
+ json = serialize_json_arg_from_to_h(value)
86
+ return json unless json.nil?
87
+ end
83
88
  return JSON.generate(value.as_json) if value.respond_to?(:as_json)
84
89
 
85
90
  raise ArgumentError, "#{name} must be a JSON string, Hash/Array, or object responding to #to_h"
86
91
  end
92
+
93
+ def serialize_json_arg_from_to_h(value)
94
+ JSON.generate(value.to_h)
95
+ rescue StandardError => e
96
+ raise unless action_controller_unfiltered_parameters?(e)
97
+
98
+ nil
99
+ end
100
+
101
+ def action_controller_unfiltered_parameters?(error)
102
+ error.instance_of?(Object.const_get("ActionController::UnfilteredParameters"))
103
+ rescue NameError
104
+ false
105
+ end
87
106
  end
88
107
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Vestauth
4
- VERSION = "0.5.0"
4
+ VERSION = "0.5.1"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vestauth
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - motdotla