dub 0.10.2 → 0.10.3

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: 9ee878aa68ba16282515d7ac7d84a0fcfd8aa41c9ff1f663dca50f063aa00638
4
- data.tar.gz: 8f63f8ae784650c499e65914046111affb4da05675e5ff246bbbff8075278f46
3
+ metadata.gz: 6d704bd2d8f1357605137a99d2154405db12f973f085be950ed14f10f36a5b05
4
+ data.tar.gz: 195d2ac9d4b023d5be3644cfa9f284027ce9651ad87eace33a370347fc144c68
5
5
  SHA512:
6
- metadata.gz: 19ef41b5ed1ce7c4ebc42e6f76d25fccfbfcd65a06070d745eb7adf6f7d1e8bfd066e7945e76f073b50086f035800a45dd71c2d2f20dd4ccba6c6dafbdee70d4
7
- data.tar.gz: 1ae41cddc1de50f15f73d5ff070667d130b76a66d7b8abfeffe523d6dc7427e08231969cf9be305f51e8b5e6608f76eee44df502184a303d74aacb1595ffa6c1
6
+ metadata.gz: 585cc01fcab801381da3e11f0014f11c189cef93fd17e7e7283aadc99ba8a990faef1319d3d0ceb10870d9cc6dbc05f91cc80f0e5fa424e7c555237d3e1f28ac
7
+ data.tar.gz: e1adce9cd6ab080924bb4a4c5986d70c414dd0f244160b74e892a967a960f0c0e4d6a878b1c723ee685b748be21597c297ed7aba726d4ef7d0bbe6f8a04420fa
@@ -0,0 +1,65 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module OpenApiSDK
8
+ module Models
9
+ module Operations
10
+
11
+
12
+ class TrackLeadLink
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # The unique ID of the short link.
17
+ field :id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('id'), required: true } }
18
+ # The domain of the short link. If not provided, the primary domain for the workspace will be used (or `dub.sh` if the workspace has no domains).
19
+ field :domain, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('domain'), required: true } }
20
+ # The short link slug. If not provided, a random 7-character slug will be generated.
21
+ field :key, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('key'), required: true } }
22
+ # The full URL of the short link, including the https protocol (e.g. `https://dub.sh/try`).
23
+ field :short_link, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('shortLink'), required: true } }
24
+ # The destination URL of the short link.
25
+ field :url, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('url'), required: true } }
26
+ # The ID of the partner the short link is associated with.
27
+ field :partner_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('partnerId'), required: true } }
28
+ # The ID of the program the short link is associated with.
29
+ field :program_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('programId'), required: true } }
30
+ # The ID of the tenant that created the link inside your system. If set, it can be used to fetch all links for a tenant.
31
+ field :tenant_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tenantId'), required: true } }
32
+ # The ID of the link in your database. If set, it can be used to identify the link in future API requests (must be prefixed with 'ext_' when passed as a query parameter). This key is unique across your workspace.
33
+ field :external_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('externalId'), required: true } }
34
+
35
+ sig { params(id: ::String, domain: ::String, key: ::String, short_link: ::String, url: ::String, partner_id: T.nilable(::String), program_id: T.nilable(::String), tenant_id: T.nilable(::String), external_id: T.nilable(::String)).void }
36
+ def initialize(id:, domain:, key:, short_link:, url:, partner_id: nil, program_id: nil, tenant_id: nil, external_id: nil)
37
+ @id = id
38
+ @domain = domain
39
+ @key = key
40
+ @short_link = short_link
41
+ @url = url
42
+ @partner_id = partner_id
43
+ @program_id = program_id
44
+ @tenant_id = tenant_id
45
+ @external_id = external_id
46
+ end
47
+
48
+ sig { params(other: T.untyped).returns(T::Boolean) }
49
+ def ==(other)
50
+ return false unless other.is_a? self.class
51
+ return false unless @id == other.id
52
+ return false unless @domain == other.domain
53
+ return false unless @key == other.key
54
+ return false unless @short_link == other.short_link
55
+ return false unless @url == other.url
56
+ return false unless @partner_id == other.partner_id
57
+ return false unless @program_id == other.program_id
58
+ return false unless @tenant_id == other.tenant_id
59
+ return false unless @external_id == other.external_id
60
+ true
61
+ end
62
+ end
63
+ end
64
+ end
65
+ end
@@ -0,0 +1,29 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class OpenApiSDK::Models::Operations::TrackLeadLink
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class OpenApiSDK::Models::Operations::TrackLeadLink
11
+ def id(); end
12
+ def id=(str_); end
13
+ def domain(); end
14
+ def domain=(str_); end
15
+ def key(); end
16
+ def key=(str_); end
17
+ def short_link(); end
18
+ def short_link=(str_); end
19
+ def url(); end
20
+ def url=(str_); end
21
+ def partner_id(); end
22
+ def partner_id=(str_); end
23
+ def program_id(); end
24
+ def program_id=(str_); end
25
+ def tenant_id(); end
26
+ def tenant_id=(str_); end
27
+ def external_id(); end
28
+ def external_id=(str_); end
29
+ end
@@ -18,10 +18,13 @@ module OpenApiSDK
18
18
 
19
19
  field :customer, Models::Operations::Customer, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customer'), required: true } }
20
20
 
21
- sig { params(click: Models::Operations::Click, customer: Models::Operations::Customer).void }
22
- def initialize(click:, customer:)
21
+ field :link, Crystalline::Nilable.new(Models::Operations::TrackLeadLink), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('link'), required: true } }
22
+
23
+ sig { params(click: Models::Operations::Click, customer: Models::Operations::Customer, link: T.nilable(Models::Operations::TrackLeadLink)).void }
24
+ def initialize(click:, customer:, link: nil)
23
25
  @click = click
24
26
  @customer = customer
27
+ @link = link
25
28
  end
26
29
 
27
30
  sig { params(other: T.untyped).returns(T::Boolean) }
@@ -29,6 +32,7 @@ module OpenApiSDK
29
32
  return false unless other.is_a? self.class
30
33
  return false unless @click == other.click
31
34
  return false unless @customer == other.customer
35
+ return false unless @link == other.link
32
36
  true
33
37
  end
34
38
  end
@@ -12,4 +12,6 @@ class OpenApiSDK::Models::Operations::TrackLeadResponseBody
12
12
  def click=(str_); end
13
13
  def customer(); end
14
14
  def customer=(str_); end
15
+ def link(); end
16
+ def link=(str_); end
15
17
  end
@@ -25,17 +25,17 @@ module OpenApiSDK
25
25
  field :payment_processor, Crystalline::Nilable.new(Models::Operations::PaymentProcessor), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('paymentProcessor'), 'decoder': Utils.enum_from_string(Models::Operations::PaymentProcessor, true) } }
26
26
  # Additional metadata to be stored with the sale event. Max 10,000 characters when stringified.
27
27
  field :metadata, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::Object)), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('metadata') } }
28
- # [For sale tracking without a pre-existing lead event]: The unique ID of the click that the sale conversion event is attributed to. You can read this value from `dub_id` cookie.
28
+ # [For direct sale tracking]: The unique ID of the click that the sale conversion event is attributed to. You can read this value from `dub_id` cookie.
29
29
  field :click_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('clickId') } }
30
30
  # The invoice ID of the sale. Can be used as a idempotency key – only one sale event can be recorded for a given invoice ID.
31
31
  field :invoice_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('invoiceId') } }
32
- # The name of the lead event that occurred before the sale (case-sensitive). This is used to associate the sale event with a particular lead event (instead of the latest lead event for a link-customer combination, which is the default behavior). For sale tracking without a pre-existing lead event, this field can also be used to specify the lead event name.
32
+ # The name of the lead event that occurred before the sale (case-sensitive). This is used to associate the sale event with a particular lead event (instead of the latest lead event for a link-customer combination, which is the default behavior). For direct sale tracking, this field can also be used to specify the lead event name.
33
33
  field :lead_event_name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('leadEventName') } }
34
- # [For sale tracking without a pre-existing lead event]: The name of the customer. If not passed, a random name will be generated (e.g. “Big Red Caribou”).
34
+ # [For direct sale tracking]: The name of the customer. If not passed, a random name will be generated (e.g. “Big Red Caribou”).
35
35
  field :customer_name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerName') } }
36
- # [For sale tracking without a pre-existing lead event]: The email address of the customer.
36
+ # [For direct sale tracking]: The email address of the customer.
37
37
  field :customer_email, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerEmail') } }
38
- # [For sale tracking without a pre-existing lead event]: The avatar URL of the customer.
38
+ # [For direct sale tracking]: The avatar URL of the customer.
39
39
  field :customer_avatar, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerAvatar') } }
40
40
 
41
41
  sig { params(customer_external_id: ::String, amount: ::Integer, currency: T.nilable(::String), event_name: T.nilable(::String), payment_processor: T.nilable(Models::Operations::PaymentProcessor), metadata: T.nilable(T::Hash[Symbol, ::Object]), click_id: T.nilable(::String), invoice_id: T.nilable(::String), lead_event_name: T.nilable(::String), customer_name: T.nilable(::String), customer_email: T.nilable(::String), customer_avatar: T.nilable(::String)).void }
@@ -156,6 +156,7 @@ module OpenApiSDK
156
156
  autoload :TagIds, 'open_api_sdk/models/operations/tagids.rb'
157
157
  autoload :TagNames, 'open_api_sdk/models/operations/tagnames.rb'
158
158
  autoload :TestVariants, 'open_api_sdk/models/operations/testvariants.rb'
159
+ autoload :TrackLeadLink, 'open_api_sdk/models/operations/tracklead_link.rb'
159
160
  autoload :TrackLeadRequestBody, 'open_api_sdk/models/operations/tracklead_requestbody.rb'
160
161
  autoload :TrackLeadResponseBody, 'open_api_sdk/models/operations/tracklead_responsebody.rb'
161
162
  autoload :TrackSaleCustomer, 'open_api_sdk/models/operations/tracksale_customer.rb'
@@ -89,9 +89,9 @@ module OpenApiSDK
89
89
  end
90
90
  @language = 'ruby'
91
91
  @openapi_doc_version = '0.0.1'
92
- @sdk_version = '0.10.2'
93
- @gen_version = '2.698.0'
94
- @user_agent = 'speakeasy-sdk/ruby 0.10.2 2.698.0 0.0.1 dub'
92
+ @sdk_version = '0.10.3'
93
+ @gen_version = '2.698.4'
94
+ @user_agent = 'speakeasy-sdk/ruby 0.10.3 2.698.4 0.0.1 dub'
95
95
  end
96
96
 
97
97
  sig { returns([String, T::Hash[Symbol, String]]) }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dub
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.2
4
+ version: 0.10.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dub
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-09-10 00:00:00.000000000 Z
11
+ date: 2025-09-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: base64
@@ -576,6 +576,8 @@ files:
576
576
  - lib/open_api_sdk/models/operations/testvariants.rbi
577
577
  - lib/open_api_sdk/models/operations/three.rb
578
578
  - lib/open_api_sdk/models/operations/three.rbi
579
+ - lib/open_api_sdk/models/operations/tracklead_link.rb
580
+ - lib/open_api_sdk/models/operations/tracklead_link.rbi
579
581
  - lib/open_api_sdk/models/operations/tracklead_requestbody.rb
580
582
  - lib/open_api_sdk/models/operations/tracklead_requestbody.rbi
581
583
  - lib/open_api_sdk/models/operations/tracklead_responsebody.rb