payabli 2.1.2 → 2.1.4

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: e0ae79b57e309760adb1b2caac942d33ccefa9aec5ddb7ab6b5f19ae7e41ed03
4
- data.tar.gz: 56dac2fa3d7154cddb815950b057a6c82647da075fd1b31e8ae5cdb600d35547
3
+ metadata.gz: 6a25e42ca3f7c3fae9f73b1de0b8c9faf2754db4fe4fdc9e480c301af5fd6f06
4
+ data.tar.gz: b31a277840d33e70761a30c686ec1bf9e82c567782218541cc548654031bdfd6
5
5
  SHA512:
6
- metadata.gz: a84675109a3e57f70b1ba933c759de239ec667ae79dfbd277a54493b31f88dca30e39d1ba24cdeea80b64187f493f5b0ff065e7fff941b182498f611bcc6872e
7
- data.tar.gz: d6730a422a2e7acca5b90b27c4c9fca7205489d1147575966e5ed1859dc5ec7e38cb6ebf07ec7ce4dc0c15bd0e3560b9d202f1ed82d8c66e43b6568b2d21eb53
6
+ metadata.gz: 56cd1d26116808482a9c37d0734e3c14222530a820b46b8e45973cb975cf10aa54e922f059c8412a6454a4b25c530851cefe815fe88a24925bf22c34f51ad580
7
+ data.tar.gz: '0090a92586a30d73def8fad445170f1db40fa38249d4a528f1aab22080461e8378a0a98b9e5697ef15ab10cb64ba9d904225e57982eb12bb30a2468850ddab13'
data/.fern/metadata.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "cliVersion": "3.4.3",
3
3
  "generatorName": "fernapi/fern-ruby-sdk",
4
- "generatorVersion": "1.0.0-rc64",
4
+ "generatorVersion": "1.0.0-rc66",
5
5
  "generatorConfig": {
6
6
  "enableWireTests": true
7
7
  }
@@ -10,7 +10,7 @@ module Payabli
10
10
  @raw_client = Payabli::Internal::Http::RawClient.new(
11
11
  base_url: base_url || Payabli::Environment::SANDBOX,
12
12
  headers: {
13
- "User-Agent" => "payabli-sdk/2.1.2",
13
+ "User-Agent" => "payabli-sdk/2.1.4",
14
14
  "X-Fern-Language" => "Ruby",
15
15
  requestToken: api_key.to_s
16
16
  }
@@ -38,6 +38,25 @@ module Payabli
38
38
  !@discriminant.nil?
39
39
  end
40
40
 
41
+ # Check if value matches a type, handling type wrapper instances
42
+ # (Internal::Types::Hash and Internal::Types::Array instances)
43
+ #
44
+ # @param value [Object]
45
+ # @param member_type [Object]
46
+ # @return [Boolean]
47
+ private def type_matches?(value, member_type)
48
+ case member_type
49
+ when Payabli::Internal::Types::Hash
50
+ value.is_a?(::Hash)
51
+ when Payabli::Internal::Types::Array
52
+ value.is_a?(::Array)
53
+ when Class, Module
54
+ value.is_a?(member_type)
55
+ else
56
+ false
57
+ end
58
+ end
59
+
41
60
  # Resolves the type of a value to be one of the members
42
61
  #
43
62
  # @param value [Object]
@@ -53,7 +72,7 @@ module Payabli
53
72
  # First try exact type matching
54
73
  result = members.find do |_key, mem|
55
74
  member_type = Utils.unwrap_type(mem)
56
- value.is_a?(member_type)
75
+ type_matches?(value, member_type)
57
76
  end&.last&.call
58
77
 
59
78
  return result if result
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Payabli
4
- VERSION = "2.1.2"
4
+ VERSION = "2.1.4"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: payabli
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.2
4
+ version: 2.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Payabli