ding_sdk 0.7.3 → 0.7.5

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: 4e3e4929b90b5091dd008170b6deee5518d505bd727a474da4a2e4870ab9b248
4
- data.tar.gz: 8f875f94c892f4c8269e3ea425804be5654298af4195058c5130532419917289
3
+ metadata.gz: 6778824929e44b871bbfc03c191b20e0b088539c1e9a5754ee6bdc8ebfa574bd
4
+ data.tar.gz: 2e05203beac18e575cc449302f7a85761e1efbbc38ceed531edfac52699d64ca
5
5
  SHA512:
6
- metadata.gz: 9a42ba142ba853cecea65ab6982350e147a358e2bdc66c668d6499a26bbb441b923dccbea84ed198383abf5a3f65386afe82f76ec0c2320349868853fa7d232e
7
- data.tar.gz: 1268c8d29147ed84af051b058a7a2cd8184aac58cb41e48619a114803146ff0c6073a88850c631dfbf2ea6dfd7db09c819172191ecbb470695bb1bcdc29acc39
6
+ metadata.gz: 86cd2d1d769b87c96f07b011f71bf4cafc37dcebfa007a9d8d748257a48c6b5b7dc91c239f6f9f86e3a187da5926b8ffb6faef4eb51caa6971c9f82bac639271
7
+ data.tar.gz: 500f0572a1b6ba122f17b7440f1fdcb6527fbdc4c2148a9e95afe493202c4e75e877ee75149d486c38d79f2308691bf466dbcec2c5b3d9f6fc2ab597697cf34a
@@ -19,7 +19,7 @@ module DingSDK
19
19
  end
20
20
 
21
21
 
22
- sig { params(customer_uuid: ::String, phone_number: ::String).returns(Utils::FieldAugmented) }
22
+ sig { params(customer_uuid: ::String, phone_number: ::String).returns(::DingSDK::Operations::LookupResponse) }
23
23
  def lookup(customer_uuid, phone_number)
24
24
  # lookup - Perform a phone number lookup
25
25
  request = ::DingSDK::Operations::LookupRequest.new(
data/lib/ding_sdk/otp.rb CHANGED
@@ -19,7 +19,7 @@ module DingSDK
19
19
  end
20
20
 
21
21
 
22
- sig { params(request: T.nilable(::DingSDK::Shared::CreateCheckRequest)).returns(Utils::FieldAugmented) }
22
+ sig { params(request: T.nilable(::DingSDK::Shared::CreateCheckRequest)).returns(::DingSDK::Operations::CheckResponse) }
23
23
  def check(request)
24
24
  # check - Check a code
25
25
  url, params = @sdk_configuration.get_server_details
@@ -63,7 +63,7 @@ module DingSDK
63
63
  end
64
64
 
65
65
 
66
- sig { params(request: T.nilable(::DingSDK::Shared::CreateAuthenticationRequest)).returns(Utils::FieldAugmented) }
66
+ sig { params(request: T.nilable(::DingSDK::Shared::CreateAuthenticationRequest)).returns(::DingSDK::Operations::CreateAutenticationResponse) }
67
67
  def create_autentication(request)
68
68
  # create_autentication - Send a code
69
69
  url, params = @sdk_configuration.get_server_details
@@ -107,7 +107,7 @@ module DingSDK
107
107
  end
108
108
 
109
109
 
110
- sig { params(request: T.nilable(::DingSDK::Shared::RetryAuthenticationRequest)).returns(Utils::FieldAugmented) }
110
+ sig { params(request: T.nilable(::DingSDK::Shared::RetryAuthenticationRequest)).returns(::DingSDK::Operations::RetryResponse) }
111
111
  def retry(request)
112
112
  # retry - Perform a retry
113
113
  url, params = @sdk_configuration.get_server_details
@@ -38,9 +38,9 @@ module DingSDK
38
38
  @server = ''
39
39
  @language = 'ruby'
40
40
  @openapi_doc_version = '1.0.0'
41
- @sdk_version = '0.7.3'
42
- @gen_version = '2.262.2'
43
- @user_agent = 'speakeasy-sdk/ruby 0.7.3 2.262.2 1.0.0 ding_sdk'
41
+ @sdk_version = '0.7.5'
42
+ @gen_version = '2.263.3'
43
+ @user_agent = 'speakeasy-sdk/ruby 0.7.5 2.263.3 1.0.0 ding_sdk'
44
44
  end
45
45
 
46
46
  sig { returns([String, T::Hash[Symbol, String]]) }
@@ -62,28 +62,24 @@ module DingSDK
62
62
  end
63
63
  fields.each do |field|
64
64
  field_type = field.type
65
- if field.type.respond_to?(:types) && field.type.types.length == 2
66
- type2 = field.type.types[1]
67
- if type2.raw_type == NilClass
68
- field_type = field.type.types[0]
69
- field_type = field_type.raw_type if field_type.respond_to? :raw_type
70
- end
65
+ if T.nilable? field_type
66
+ field_type = T.nilable_of(field_type)
71
67
  end
72
68
 
73
-
74
69
  key = "#{field.name}="
75
70
  lookup = field.metadata.fetch(:format_json, {}).fetch(:letter_case, nil).call
76
71
  value = d[lookup]
77
72
  next if value.nil?
78
73
 
79
- if field_type.to_s.start_with? 'T::Array'
80
- inner_type = field_type.type.raw_type
74
+ if T.arr? field_type
75
+ inner_type = T.arr_of(field_type)
81
76
  unmarshalled_array = value.map { |f| unmarshal_single(inner_type, f) }
82
77
  to_build.send(key, unmarshalled_array)
83
- elsif field_type.to_s.start_with? 'T::Hash'
84
- _, val_type = field_type.type.types
78
+ elsif T.hash? field_type
79
+ val_type = T.hash_of(field_type)
80
+
85
81
  # rubocop:disable Style/HashTransformValues
86
- unmarshalled_hash = value.map { |k, v| [k, unmarshal_single(val_type.raw_type, v)] }.to_h
82
+ unmarshalled_hash = value.map { |k, v| [k, unmarshal_single(val_type, v)] }.to_h
87
83
  # rubocop:enable Style/HashTransformValues
88
84
  to_build.send(key, unmarshalled_hash)
89
85
  else
@@ -0,0 +1,59 @@
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+ module T
7
+ def self.arr?(t)
8
+ if t.respond_to? :underlying_class
9
+ return t.underlying_class == ::Array
10
+ end
11
+ false
12
+ end
13
+
14
+ def self.arr_of(t)
15
+ get_raw_type(t.type)
16
+ end
17
+
18
+ def self.hash?(t)
19
+ if t.respond_to? :underlying_class
20
+ return t.underlying_class == ::Hash
21
+ end
22
+ false
23
+ end
24
+
25
+ def self.hash_of(t)
26
+ get_raw_type(t.values)
27
+ end
28
+
29
+ def self.nilable?(t)
30
+ t.respond_to? :unwrap_nilable
31
+ end
32
+
33
+ def self.nilable_of(t)
34
+ if t.respond_to? :unwrap_nilable
35
+ return simplify_type t.unwrap_nilable
36
+ end
37
+ nil
38
+ end
39
+
40
+ def self.simplifiable?(t)
41
+ return t.is_a? T::Types::Simple
42
+ end
43
+
44
+ def self.simplify_type(t)
45
+ if t.is_a? T::Types::Simple
46
+ return t.raw_type
47
+ end
48
+ t
49
+ end
50
+
51
+ def self.get_raw_type(t)
52
+ if t.respond_to? :raw_type
53
+ return t.raw_type
54
+ elsif t.respond_to? :raw_a
55
+ return T::Boolean if t.raw_a in [TrueClass, FalseClass]
56
+ end
57
+ t
58
+ end
59
+ end
@@ -742,7 +742,7 @@ module DingSDK
742
742
  end
743
743
  end
744
744
 
745
- sig { params(data: String, type: Object).returns(Object) }
745
+ sig { params(data: Object, type: Object).returns(Object) }
746
746
  def self.unmarshal_complex(data, type)
747
747
  begin
748
748
  value = unmarshal_json(JSON.parse(data), type)
@@ -754,20 +754,15 @@ module DingSDK
754
754
 
755
755
  sig { params(data: Object, type: Object).returns(Object) }
756
756
  def self.unmarshal_json(data, type)
757
+ if T.simplifiable? type
758
+ type = T.simplify_type type
759
+ end
757
760
  if type.respond_to? :unmarshal_json
758
761
  type.unmarshal_json(data)
759
- elsif type.to_s.start_with? 'T::Array'
760
- if type.type.respond_to? :raw_type
761
- data.map { |v| Utils.unmarshal_complex(v, type.type.raw_type) }
762
- else
763
- data.map { |v| Utils.unmarshal_complex(v, type.type) }
764
- end
765
- elsif type.to_s.start_with? 'T::Hash'
766
- if type.type.types[1].respond_to? :raw_type
767
- data.transform_values { |v| Utils.unmarshal_complex(v, type.type.types[1].raw_type) }
768
- else
769
- data.transform_values { |v| Utils.unmarshal_complex(v, type.type.types[1]) }
770
- end
762
+ elsif T.arr? type
763
+ data.map { |v| Utils.unmarshal_complex(v, T.arr_of(type)) }
764
+ elsif T.hash? type
765
+ data.transform_values { |v| Utils.unmarshal_complex(v, T.hash_of(type)) }
771
766
  else
772
767
  data
773
768
  end
data/lib/ding_sdk.rb CHANGED
@@ -3,6 +3,7 @@
3
3
  # typed: true
4
4
  # frozen_string_literal: true
5
5
 
6
+ require_relative 'ding_sdk/utils/t'
6
7
  require_relative 'ding_sdk/utils/utils'
7
8
  require_relative 'ding_sdk/utils/metadata_fields'
8
9
  module DingSDK
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ding_sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.3
4
+ version: 0.7.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ding
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-02-17 00:00:00.000000000 Z
11
+ date: 2024-02-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -170,6 +170,7 @@ files:
170
170
  - lib/ding_sdk/otp.rb
171
171
  - lib/ding_sdk/sdkconfiguration.rb
172
172
  - lib/ding_sdk/utils/metadata_fields.rb
173
+ - lib/ding_sdk/utils/t.rb
173
174
  - lib/ding_sdk/utils/utils.rb
174
175
  homepage: https://github.com/ding-live/ding-ruby.git
175
176
  licenses: