clerk-sdk-ruby 5.1.0 → 5.1.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: 365324ee63a1b3987814bcb8fe08c57aea133cb62281c716e4d46ff68b1b81e5
4
- data.tar.gz: d57c6f9c7642d3b09d3d906cf075af0a495ad73ad14c33312c2967b1f0d83bb3
3
+ metadata.gz: ee67774c9db43df4a94e37e6c5ad2035345cf4a61e5d1379ba9618563f61b12f
4
+ data.tar.gz: d5a75a7892be366497d20c55bb987b91ccf042e127b7f6a47f8693b416f8c99d
5
5
  SHA512:
6
- metadata.gz: f024cc4b4509c726d903641128caaa8edb1cdc15cde8030fb06605de1dd8f170a4ca9ec1ca54d69712bdc82d08a9e9ddb951fc84b550c4cef14b3ed8d47e73b6
7
- data.tar.gz: 847de47005664f5fdeb7420698dafdebd2e3c4afbc03092bad967886ec2db55b20ba91937b2f7fa820e399727bd75da1f40d286fb3372d37fdd9c3ba1c4d2b2c
6
+ metadata.gz: 820b1bf7477c195f434e9fd6df2194da275ec2a9c473a8fbd3975cc9d9724801066074c65003a0deb01bd9d721bbfc230242643824b5702b48ee3667f1649991
7
+ data.tar.gz: 528110307386b15cb9a39aa196f201ff762a29daac9a6285cec61a250d9685bc2ae3a65f55db97ea23b260dfe89126e300ea34f459975c30aae8188142897cd9
@@ -25,6 +25,8 @@ module Clerk
25
25
  # Note: An empty string or whitespace-only value is not allowed and will result in a validation error.
26
26
  #
27
27
  field :query, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'query', 'style': 'form', 'explode': true } }
28
+ # Filter by exact domain names. Accepts multiple values (e.g. domains=example.com&domains=test.org).
29
+ field :domains, Crystalline::Nilable.new(Crystalline::Array.new(::String)), { 'query_param': { 'field_name': 'domains', 'style': 'form', 'explode': true } }
28
30
  # Allows to return organization domains in a particular order.
29
31
  # At the moment, you can order the returned domains by their `name` or `created_at`.
30
32
  # In order to specify the direction, you can use the `+/-` symbols prepended to the property to order by.
@@ -42,11 +44,12 @@ module Clerk
42
44
  field :limit, Crystalline::Nilable.new(::Integer), { 'query_param': { 'field_name': 'limit', 'style': 'form', 'explode': true } }
43
45
 
44
46
 
45
- def initialize(organization_id: nil, verified: nil, enrollment_mode: nil, query: nil, order_by: '-created_at', offset: 0, limit: 10)
47
+ def initialize(organization_id: nil, verified: nil, enrollment_mode: nil, query: nil, domains: nil, order_by: '-created_at', offset: 0, limit: 10)
46
48
  @organization_id = organization_id
47
49
  @verified = verified
48
50
  @enrollment_mode = enrollment_mode
49
51
  @query = query
52
+ @domains = domains
50
53
  @order_by = order_by
51
54
  @offset = offset
52
55
  @limit = limit
@@ -59,6 +62,7 @@ module Clerk
59
62
  return false unless @verified == other.verified
60
63
  return false unless @enrollment_mode == other.enrollment_mode
61
64
  return false unless @query == other.query
65
+ return false unless @domains == other.domains
62
66
  return false unless @order_by == other.order_by
63
67
  return false unless @offset == other.offset
64
68
  return false unless @limit == other.limit
@@ -16,6 +16,8 @@ class Clerk::Models::Operations::ListAllOrganizationDomainsRequest
16
16
  def enrollment_mode=(str_); end
17
17
  def query(); end
18
18
  def query=(str_); end
19
+ def domains(); end
20
+ def domains=(str_); end
19
21
  def order_by(); end
20
22
  def order_by=(str_); end
21
23
  def offset(); end
@@ -77,9 +77,9 @@ module Clerk
77
77
  end
78
78
  @language = 'ruby'
79
79
  @openapi_doc_version = '2025-11-10'
80
- @sdk_version = '5.1.0'
81
- @gen_version = '2.822.1'
82
- @user_agent = 'speakeasy-sdk/ruby 5.1.0 2.822.1 2025-11-10 clerk-sdk-ruby'
80
+ @sdk_version = '5.1.1'
81
+ @gen_version = '2.824.1'
82
+ @user_agent = 'speakeasy-sdk/ruby 5.1.1 2.824.1 2025-11-10 clerk-sdk-ruby'
83
83
  end
84
84
 
85
85
 
@@ -84,7 +84,9 @@ module Crystalline
84
84
  # If field is nilable, and the value is not in the dict, just move to the next field
85
85
  next if value.nil?
86
86
 
87
- if Crystalline::Utils.arr? field_type
87
+ if field_type.is_a?(Crystalline::DiscriminatedUnion)
88
+ to_build[key] = field_type.parse(value)
89
+ elsif Crystalline::Utils.arr? field_type
88
90
  inner_type = Crystalline::Utils.arr_of(field_type)
89
91
  unmarshalled_array = value.map { |f| unmarshal_single(inner_type, f, format_metadata) }
90
92
  to_build[key] = unmarshalled_array
@@ -34,7 +34,9 @@ module Crystalline
34
34
  if Crystalline::Utils.nilable? type
35
35
  type = Crystalline::Utils.nilable_of type
36
36
  end
37
- if type.instance_of?(Class) && type.include?(::Crystalline::MetadataFields)
37
+ if type.is_a?(Crystalline::DiscriminatedUnion)
38
+ type.parse(data)
39
+ elsif type.instance_of?(Class) && type.include?(::Crystalline::MetadataFields)
38
40
  type.from_dict(data)
39
41
  elsif Crystalline::Utils.union? type
40
42
  union_types = Crystalline::Utils.get_union_types(type)
@@ -121,7 +123,9 @@ module Crystalline
121
123
  inexact = 0
122
124
  unmatched = 0
123
125
 
124
- if value.class.include?(::Crystalline::MetadataFields)
126
+ if value.is_a?(Crystalline::Unknown)
127
+ return [0, 0, 0]
128
+ elsif value.class.include?(::Crystalline::MetadataFields)
125
129
  value.fields.each do |field|
126
130
  format_metadata = field.metadata.fetch(:format_json, {})
127
131
  lookup = format_metadata.fetch(:letter_case, nil)&.call
@@ -40,6 +40,58 @@ module Crystalline
40
40
  class Boolean
41
41
  end
42
42
 
43
+ # Wraps an unrecognized payload from an open discriminated union.
44
+ # Produced when the discriminator value is missing, unknown, or schema validation fails.
45
+ class Unknown
46
+ attr_reader :raw
47
+
48
+ def initialize(raw:)
49
+ @raw = raw
50
+ end
51
+
52
+ def unknown?
53
+ true
54
+ end
55
+ end
56
+
57
+ # Forward-compatible discriminated union parser.
58
+ # Known discriminator values are deserialized to their mapped types.
59
+ # Unknown or invalid payloads are captured as Crystalline::Unknown.
60
+ class DiscriminatedUnion
61
+ attr_reader :discriminator, :variants
62
+
63
+ def initialize(discriminator, variants)
64
+ @discriminator = discriminator
65
+ @variants = variants
66
+ end
67
+
68
+ def parse(payload)
69
+ unless payload.is_a?(::Hash)
70
+ return Unknown.new(raw: payload)
71
+ end
72
+
73
+ disc_value = payload[@discriminator]
74
+ unless disc_value.is_a?(::String)
75
+ return Unknown.new(raw: payload)
76
+ end
77
+
78
+ variant_type = @variants[disc_value]
79
+ unless variant_type
80
+ return Unknown.new(raw: payload)
81
+ end
82
+
83
+ begin
84
+ Crystalline.unmarshal_json(payload, variant_type)
85
+ rescue StandardError
86
+ Unknown.new(raw: payload)
87
+ end
88
+ end
89
+ end
90
+
91
+ def self.unknown?(value)
92
+ value.is_a?(Unknown)
93
+ end
94
+
43
95
  module Enum
44
96
  def self.included(base)
45
97
  base.extend(ClassMethods)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: clerk-sdk-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.1.0
4
+ version: 5.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Speakeasy
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-02-13 00:00:00.000000000 Z
11
+ date: 2026-02-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: base64