kombo 1.2.8 → 1.2.9
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 +4 -4
- data/lib/kombo/ats.rb +322 -0
- data/lib/kombo/connect.rb +2 -1
- data/lib/kombo/general.rb +11 -1
- data/lib/kombo/hris.rb +322 -0
- data/lib/kombo/models/operations/getatsattachments_request.rb +74 -0
- data/lib/kombo/models/operations/getatsattachments_request.rbi +31 -0
- data/lib/kombo/models/operations/getatsattachments_response.rb +56 -0
- data/lib/kombo/models/operations/getatsattachments_response.rbi +19 -0
- data/lib/kombo/models/operations/getatsscorecards_request.rb +83 -0
- data/lib/kombo/models/operations/getatsscorecards_request.rbi +31 -0
- data/lib/kombo/models/operations/getatsscorecards_response.rb +56 -0
- data/lib/kombo/models/operations/getatsscorecards_response.rbi +19 -0
- data/lib/kombo/models/operations/gethrispayruns_request.rb +70 -0
- data/lib/kombo/models/operations/gethrispayruns_request.rbi +29 -0
- data/lib/kombo/models/operations/gethrispayruns_response.rb +56 -0
- data/lib/kombo/models/operations/gethrispayruns_response.rbi +19 -0
- data/lib/kombo/models/operations/gethrispayslips_request.rb +87 -0
- data/lib/kombo/models/operations/gethrispayslips_request.rbi +33 -0
- data/lib/kombo/models/operations/gethrispayslips_response.rb +56 -0
- data/lib/kombo/models/operations/gethrispayslips_response.rbi +19 -0
- data/lib/kombo/models/operations.rb +8 -0
- data/lib/kombo/models/shared/amount.rb +36 -0
- data/lib/kombo/models/shared/amount.rbi +15 -0
- data/lib/kombo/models/shared/change.rb +19 -0
- data/lib/kombo/models/shared/change.rbi +11 -0
- data/lib/kombo/models/shared/content_ref.rb +43 -0
- data/lib/kombo/models/shared/content_ref.rbi +17 -0
- data/lib/kombo/models/shared/employee.rb +57 -0
- data/lib/kombo/models/shared/employee.rbi +25 -0
- data/lib/kombo/models/shared/format_multiselect.rb +2 -2
- data/lib/kombo/models/shared/format_singleselect.rb +2 -2
- data/lib/kombo/models/shared/getatsattachmentspositiveresponse.rb +39 -0
- data/lib/kombo/models/shared/getatsattachmentspositiveresponse.rbi +15 -0
- data/lib/kombo/models/shared/getatsattachmentspositiveresponse_data.rb +36 -0
- data/lib/kombo/models/shared/getatsattachmentspositiveresponse_data.rbi +15 -0
- data/lib/kombo/models/shared/getatsattachmentspositiveresponse_result.rb +76 -0
- data/lib/kombo/models/shared/getatsattachmentspositiveresponse_result.rbi +33 -0
- data/lib/kombo/models/shared/getatsattachmentspositiveresponse_type.rb +20 -0
- data/lib/kombo/models/shared/getatsattachmentspositiveresponse_type.rbi +11 -0
- data/lib/kombo/models/shared/{option_1.rb → getatsjobspositiveresponse_option_1.rb} +1 -1
- data/lib/kombo/models/shared/{option_2.rbi → getatsjobspositiveresponse_option_1.rbi} +2 -2
- data/lib/kombo/models/shared/{option_2.rb → getatsjobspositiveresponse_option_2.rb} +1 -1
- data/lib/kombo/models/shared/getatsjobspositiveresponse_option_2.rbi +17 -0
- data/lib/kombo/models/shared/{author.rb → getatsnotespositiveresponse_author.rb} +1 -1
- data/lib/kombo/models/shared/{author.rbi → getatsnotespositiveresponse_author.rbi} +2 -2
- data/lib/kombo/models/shared/getatsnotespositiveresponse_result.rb +2 -2
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse.rb +39 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse.rbi +15 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_answer_1.rb +36 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_answer_1.rbi +15 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_answer_2.rb +36 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_answer_2.rbi +15 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_author.rb +48 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_author.rbi +21 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_data.rb +36 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_data.rbi +15 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_option_1.rb +36 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_option_1.rbi +15 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_option_2.rb +36 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_option_2.rbi +15 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_result.rb +80 -0
- data/lib/kombo/models/shared/getatsscorecardspositiveresponse_result.rbi +35 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse.rb +39 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse.rbi +15 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse_data.rb +36 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse_data.rbi +15 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse_gross_pay.rb +36 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse_gross_pay.rbi +15 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse_net_pay.rb +36 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse_net_pay.rbi +15 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse_paid_amount.rb +36 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse_paid_amount.rbi +15 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse_result.rb +62 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse_result.rbi +27 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse_totals.rb +40 -0
- data/lib/kombo/models/shared/gethrispayrunspositiveresponse_totals.rbi +17 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse.rb +39 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse.rbi +15 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse_data.rb +36 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse_data.rbi +15 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse_gross_pay.rb +36 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse_gross_pay.rbi +15 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse_net_pay.rb +36 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse_net_pay.rbi +15 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse_paid_amount.rb +36 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse_paid_amount.rbi +15 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse_result.rb +62 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse_result.rbi +27 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse_totals.rb +40 -0
- data/lib/kombo/models/shared/gethrispayslipspositiveresponse_totals.rbi +17 -0
- data/lib/kombo/models/shared/integration.rb +44 -0
- data/lib/kombo/models/shared/integration.rbi +19 -0
- data/lib/kombo/models/shared/integration_tool.rb +4 -0
- data/lib/kombo/models/shared/issue.rb +56 -0
- data/lib/kombo/models/shared/issue.rbi +25 -0
- data/lib/kombo/models/shared/issuestatuschangedwebhookpayload.rb +40 -0
- data/lib/kombo/models/shared/issuestatuschangedwebhookpayload.rbi +17 -0
- data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_category.rb +21 -0
- data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_category.rbi +11 -0
- data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_data.rb +40 -0
- data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_data.rbi +17 -0
- data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_end_user.rb +40 -0
- data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_end_user.rbi +17 -0
- data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_status.rb +19 -0
- data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_status.rbi +11 -0
- data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_type.rb +18 -0
- data/lib/kombo/models/shared/issuestatuschangedwebhookpayload_type.rbi +11 -0
- data/lib/kombo/models/shared/line_item.rb +44 -0
- data/lib/kombo/models/shared/{option_1.rbi → line_item.rbi} +6 -4
- data/lib/kombo/models/shared/name.rb +6 -0
- data/lib/kombo/models/shared/pay_run.rb +48 -0
- data/lib/kombo/models/shared/pay_run.rbi +21 -0
- data/lib/kombo/models/shared/postatscandidatesrequestbody_afas.rb +32 -0
- data/lib/kombo/models/shared/{afas.rbi → postatscandidatesrequestbody_afas.rbi} +2 -2
- data/lib/kombo/models/shared/postatscandidatesrequestbody_avature.rb +6 -2
- data/lib/kombo/models/shared/postatscandidatesrequestbody_avature.rbi +2 -0
- data/lib/kombo/models/shared/postatscandidatesrequestbody_custom_field.rb +48 -0
- data/lib/kombo/models/shared/postatscandidatesrequestbody_custom_field.rbi +21 -0
- data/lib/kombo/models/shared/postatscandidatesrequestbody_recruitcrm.rb +32 -0
- data/lib/kombo/models/shared/postatscandidatesrequestbody_recruitcrm.rbi +13 -0
- data/lib/kombo/models/shared/postatscandidatesrequestbody_remote_fields.rb +10 -2
- data/lib/kombo/models/shared/postatscandidatesrequestbody_remote_fields.rbi +4 -0
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_afas.rb +32 -0
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_afas.rbi +13 -0
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_avature.rb +6 -2
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_avature.rbi +2 -0
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_custom_field.rb +48 -0
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_custom_field.rbi +21 -0
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_recruitcrm.rb +32 -0
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_recruitcrm.rbi +13 -0
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_remote_fields.rb +10 -2
- data/lib/kombo/models/shared/postatsjobsjobidapplicationsrequestbody_remote_fields.rbi +4 -0
- data/lib/kombo/models/shared/postconnectcreatelinkpositiveresponse_data.rb +6 -2
- data/lib/kombo/models/shared/postconnectcreatelinkpositiveresponse_data.rbi +2 -0
- data/lib/kombo/models/shared/postconnectcreatelinkrequestbody.rb +6 -2
- data/lib/kombo/models/shared/postconnectcreatelinkrequestbody.rbi +2 -0
- data/lib/kombo/models/shared/{afas.rb → posthrisemployeesemployeeiddocumentsrequestbody_afas.rb} +1 -1
- data/lib/kombo/models/shared/posthrisemployeesemployeeiddocumentsrequestbody_afas.rbi +13 -0
- data/lib/kombo/models/shared/posthrisemployeesemployeeiddocumentsrequestbody_remote_fields.rb +2 -2
- data/lib/kombo/models/shared/response.rb +27 -0
- data/lib/kombo/models/shared/response.rbi +11 -0
- data/lib/kombo/models/shared/result_boolean.rb +55 -0
- data/lib/kombo/models/shared/result_boolean.rbi +23 -0
- data/lib/kombo/models/shared/result_date.rb +55 -0
- data/lib/kombo/models/shared/result_date.rbi +23 -0
- data/lib/kombo/models/shared/result_multiselect.rb +59 -0
- data/lib/kombo/models/shared/result_multiselect.rbi +25 -0
- data/lib/kombo/models/shared/result_number.rb +55 -0
- data/lib/kombo/models/shared/result_number.rbi +23 -0
- data/lib/kombo/models/shared/result_singleselect.rb +59 -0
- data/lib/kombo/models/shared/result_singleselect.rbi +25 -0
- data/lib/kombo/models/shared/result_text.rb +55 -0
- data/lib/kombo/models/shared/result_text.rbi +23 -0
- data/lib/kombo/models/shared.rb +57 -4
- data/lib/kombo/models/webhooks/webhookissuestatuschangedwebhookpayload_request.rb +36 -0
- data/lib/kombo/models/webhooks/webhookissuestatuschangedwebhookpayload_request.rbi +15 -0
- data/lib/kombo/models/webhooks/webhookissuestatuschangedwebhookpayload_response.rb +40 -0
- data/lib/kombo/models/webhooks/webhookissuestatuschangedwebhookpayload_response.rbi +17 -0
- data/lib/kombo/models/webhooks.rb +2 -0
- data/lib/kombo/sdkconfiguration.rb +5 -3
- data/lib/kombo/utils/utils.rb +6 -2
- metadata +136 -10
|
@@ -20,6 +20,7 @@ module Kombo
|
|
|
20
20
|
CORNERSTONETALENTLINK = new('cornerstonetalentlink')
|
|
21
21
|
RECRUITEE = new('recruitee')
|
|
22
22
|
RECRUITERFLOW = new('recruiterflow')
|
|
23
|
+
ATLAS = new('atlas')
|
|
23
24
|
GREENHOUSE = new('greenhouse')
|
|
24
25
|
GREENHOUSEV3 = new('greenhousev3')
|
|
25
26
|
GREENHOUSEJOBBOARD = new('greenhousejobboard')
|
|
@@ -127,6 +128,7 @@ module Kombo
|
|
|
127
128
|
DATABITES = new('databites')
|
|
128
129
|
PAGEUP = new('pageup')
|
|
129
130
|
TALENT360 = new('talent360')
|
|
131
|
+
EMPLYPEOPLE = new('emplypeople')
|
|
130
132
|
WORKDAYCUSTOMREPORT = new('workdaycustomreport')
|
|
131
133
|
WORKDAYCUSTOMREPORTSFTP = new('workdaycustomreportsftp')
|
|
132
134
|
UKGPROWFM = new('ukgprowfm')
|
|
@@ -184,6 +186,7 @@ module Kombo
|
|
|
184
186
|
BOONDMANAGER = new('boondmanager')
|
|
185
187
|
HAILEYHR = new('haileyhr')
|
|
186
188
|
SILAE = new('silae')
|
|
189
|
+
SKELLO = new('skello')
|
|
187
190
|
OYSTERHR = new('oysterhr')
|
|
188
191
|
KIWIHR = new('kiwihr')
|
|
189
192
|
SQUARE = new('square')
|
|
@@ -204,6 +207,7 @@ module Kombo
|
|
|
204
207
|
YOUFORCE = new('youforce')
|
|
205
208
|
NIBELIS = new('nibelis')
|
|
206
209
|
PEOPLEXD = new('peoplexd')
|
|
210
|
+
ZELLIS = new('zellis')
|
|
207
211
|
SFTP = new('sftp')
|
|
208
212
|
SFTPFETCH = new('sftpfetch')
|
|
209
213
|
THREE_HUNDRED_AND_SIXTYLEARNING = new('360learning')
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Kombo
|
|
8
|
+
module Models
|
|
9
|
+
module Shared
|
|
10
|
+
|
|
11
|
+
class Issue
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# The unique identifier of the issue.
|
|
16
|
+
field :id, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('id'), required: true } }
|
|
17
|
+
# The issue type, for example `integration.authentication_failed`. Kombo will add more types over time. Treat unknown values as valid and handle them without failing.
|
|
18
|
+
field :type, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('type'), required: true } }
|
|
19
|
+
# A short, customer-facing title for this issue type.
|
|
20
|
+
field :title, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('title'), required: true } }
|
|
21
|
+
# The issue status after this change.
|
|
22
|
+
field :status, Models::Shared::IssueStatusChangedWebhookPayloadStatus, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('status'), required: true, 'decoder': ::Kombo::Utils.enum_from_string(Models::Shared::IssueStatusChangedWebhookPayloadStatus, false) } }
|
|
23
|
+
# What is wrong and how to investigate or fix it.
|
|
24
|
+
field :markdown_message, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('markdown_message'), required: true } }
|
|
25
|
+
# ISO 8601 timestamp when Kombo first observed this episode of the issue.
|
|
26
|
+
field :first_observed_at, ::DateTime, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('first_observed_at'), required: true, 'decoder': ::Kombo::Utils.datetime_from_iso_format(false) } }
|
|
27
|
+
# ISO 8601 timestamp when the issue was resolved. `null` while it is open.
|
|
28
|
+
field :resolved_at, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('resolved_at'), required: true, 'decoder': ::Kombo::Utils.datetime_from_iso_format(false) } }
|
|
29
|
+
|
|
30
|
+
sig { params(id: ::String, type: ::String, title: ::String, status: Models::Shared::IssueStatusChangedWebhookPayloadStatus, markdown_message: ::String, first_observed_at: ::DateTime, resolved_at: T.nilable(::DateTime)).void }
|
|
31
|
+
def initialize(id:, type:, title:, status:, markdown_message:, first_observed_at:, resolved_at: nil)
|
|
32
|
+
@id = id
|
|
33
|
+
@type = type
|
|
34
|
+
@title = title
|
|
35
|
+
@status = status
|
|
36
|
+
@markdown_message = markdown_message
|
|
37
|
+
@first_observed_at = first_observed_at
|
|
38
|
+
@resolved_at = resolved_at
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
42
|
+
def ==(other)
|
|
43
|
+
return false unless other.is_a? self.class
|
|
44
|
+
return false unless @id == other.id
|
|
45
|
+
return false unless @type == other.type
|
|
46
|
+
return false unless @title == other.title
|
|
47
|
+
return false unless @status == other.status
|
|
48
|
+
return false unless @markdown_message == other.markdown_message
|
|
49
|
+
return false unless @first_observed_at == other.first_observed_at
|
|
50
|
+
return false unless @resolved_at == other.resolved_at
|
|
51
|
+
true
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
end
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Kombo::Models::Shared::Issue
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Kombo::Models::Shared::Issue
|
|
11
|
+
def id(); end
|
|
12
|
+
def id=(str_); end
|
|
13
|
+
def type(); end
|
|
14
|
+
def type=(str_); end
|
|
15
|
+
def title(); end
|
|
16
|
+
def title=(str_); end
|
|
17
|
+
def status(); end
|
|
18
|
+
def status=(str_); end
|
|
19
|
+
def markdown_message(); end
|
|
20
|
+
def markdown_message=(str_); end
|
|
21
|
+
def first_observed_at(); end
|
|
22
|
+
def first_observed_at=(str_); end
|
|
23
|
+
def resolved_at(); end
|
|
24
|
+
def resolved_at=(str_); end
|
|
25
|
+
end
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Kombo
|
|
8
|
+
module Models
|
|
9
|
+
module Shared
|
|
10
|
+
|
|
11
|
+
class IssueStatusChangedWebhookPayload
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# Unique identifier for this webhook event
|
|
16
|
+
field :id, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('id'), required: true } }
|
|
17
|
+
# Type of the webhook event
|
|
18
|
+
field :type, Models::Shared::IssueStatusChangedWebhookPayloadType, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('type'), required: true, 'decoder': ::Kombo::Utils.enum_from_string(Models::Shared::IssueStatusChangedWebhookPayloadType, false) } }
|
|
19
|
+
|
|
20
|
+
field :data, Models::Shared::IssueStatusChangedWebhookPayloadData, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('data'), required: true } }
|
|
21
|
+
|
|
22
|
+
sig { params(id: ::String, type: Models::Shared::IssueStatusChangedWebhookPayloadType, data: Models::Shared::IssueStatusChangedWebhookPayloadData).void }
|
|
23
|
+
def initialize(id:, type:, data:)
|
|
24
|
+
@id = id
|
|
25
|
+
@type = type
|
|
26
|
+
@data = data
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
30
|
+
def ==(other)
|
|
31
|
+
return false unless other.is_a? self.class
|
|
32
|
+
return false unless @id == other.id
|
|
33
|
+
return false unless @type == other.type
|
|
34
|
+
return false unless @data == other.data
|
|
35
|
+
true
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Kombo::Models::Shared::IssueStatusChangedWebhookPayload
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Kombo::Models::Shared::IssueStatusChangedWebhookPayload
|
|
11
|
+
def id(); end
|
|
12
|
+
def id=(str_); end
|
|
13
|
+
def type(); end
|
|
14
|
+
def type=(str_); end
|
|
15
|
+
def data(); end
|
|
16
|
+
def data=(str_); end
|
|
17
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Kombo
|
|
8
|
+
module Models
|
|
9
|
+
module Shared
|
|
10
|
+
# IssueStatusChangedWebhookPayloadCategory - The category of the integration (HRIS, ATS, ASSESSMENT, or LMS).
|
|
11
|
+
class IssueStatusChangedWebhookPayloadCategory < T::Enum
|
|
12
|
+
enums do
|
|
13
|
+
HRIS = new('HRIS')
|
|
14
|
+
ATS = new('ATS')
|
|
15
|
+
ASSESSMENT = new('ASSESSMENT')
|
|
16
|
+
LMS = new('LMS')
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Kombo::Models::Shared::IssueStatusChangedWebhookPayloadCategory
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Kombo::Models::Shared::IssueStatusChangedWebhookPayloadCategory
|
|
11
|
+
end
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Kombo
|
|
8
|
+
module Models
|
|
9
|
+
module Shared
|
|
10
|
+
|
|
11
|
+
class IssueStatusChangedWebhookPayloadData
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# Why this webhook was sent: the issue was raised or resolved.
|
|
16
|
+
field :change, Models::Shared::Change, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('change'), required: true, 'decoder': ::Kombo::Utils.enum_from_string(Models::Shared::Change, false) } }
|
|
17
|
+
|
|
18
|
+
field :issue, Models::Shared::Issue, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('issue'), required: true } }
|
|
19
|
+
# The integration this issue belongs to. `null` for environment-wide issues.
|
|
20
|
+
field :integration, Crystalline::Nilable.new(Models::Shared::Integration), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('integration'), required: true } }
|
|
21
|
+
|
|
22
|
+
sig { params(change: Models::Shared::Change, issue: Models::Shared::Issue, integration: T.nilable(Models::Shared::Integration)).void }
|
|
23
|
+
def initialize(change:, issue:, integration: nil)
|
|
24
|
+
@change = change
|
|
25
|
+
@issue = issue
|
|
26
|
+
@integration = integration
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
30
|
+
def ==(other)
|
|
31
|
+
return false unless other.is_a? self.class
|
|
32
|
+
return false unless @change == other.change
|
|
33
|
+
return false unless @issue == other.issue
|
|
34
|
+
return false unless @integration == other.integration
|
|
35
|
+
true
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Kombo::Models::Shared::IssueStatusChangedWebhookPayloadData
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Kombo::Models::Shared::IssueStatusChangedWebhookPayloadData
|
|
11
|
+
def change(); end
|
|
12
|
+
def change=(str_); end
|
|
13
|
+
def issue(); end
|
|
14
|
+
def issue=(str_); end
|
|
15
|
+
def integration(); end
|
|
16
|
+
def integration=(str_); end
|
|
17
|
+
end
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Kombo
|
|
8
|
+
module Models
|
|
9
|
+
module Shared
|
|
10
|
+
# Information about the end user who created the integration.
|
|
11
|
+
class IssueStatusChangedWebhookPayloadEndUser
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# The name of the organization that owns the integration.
|
|
16
|
+
field :organization_name, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('organization_name'), required: true } }
|
|
17
|
+
# The email address of the user who created the integration.
|
|
18
|
+
field :creator_email, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('creator_email'), required: true } }
|
|
19
|
+
# The unique identifier of the organization in the integrated system.
|
|
20
|
+
field :origin_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('origin_id'), required: true } }
|
|
21
|
+
|
|
22
|
+
sig { params(organization_name: ::String, creator_email: T.nilable(::String), origin_id: T.nilable(::String)).void }
|
|
23
|
+
def initialize(organization_name:, creator_email: nil, origin_id: nil)
|
|
24
|
+
@organization_name = organization_name
|
|
25
|
+
@creator_email = creator_email
|
|
26
|
+
@origin_id = origin_id
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
30
|
+
def ==(other)
|
|
31
|
+
return false unless other.is_a? self.class
|
|
32
|
+
return false unless @organization_name == other.organization_name
|
|
33
|
+
return false unless @creator_email == other.creator_email
|
|
34
|
+
return false unless @origin_id == other.origin_id
|
|
35
|
+
true
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Kombo::Models::Shared::IssueStatusChangedWebhookPayloadEndUser
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Kombo::Models::Shared::IssueStatusChangedWebhookPayloadEndUser
|
|
11
|
+
def organization_name(); end
|
|
12
|
+
def organization_name=(str_); end
|
|
13
|
+
def creator_email(); end
|
|
14
|
+
def creator_email=(str_); end
|
|
15
|
+
def origin_id(); end
|
|
16
|
+
def origin_id=(str_); end
|
|
17
|
+
end
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Kombo
|
|
8
|
+
module Models
|
|
9
|
+
module Shared
|
|
10
|
+
# IssueStatusChangedWebhookPayloadStatus - The issue status after this change.
|
|
11
|
+
class IssueStatusChangedWebhookPayloadStatus < T::Enum
|
|
12
|
+
enums do
|
|
13
|
+
OPEN = new('OPEN')
|
|
14
|
+
RESOLVED = new('RESOLVED')
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Kombo::Models::Shared::IssueStatusChangedWebhookPayloadStatus
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Kombo::Models::Shared::IssueStatusChangedWebhookPayloadStatus
|
|
11
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Kombo
|
|
8
|
+
module Models
|
|
9
|
+
module Shared
|
|
10
|
+
# IssueStatusChangedWebhookPayloadType - Type of the webhook event
|
|
11
|
+
class IssueStatusChangedWebhookPayloadType < T::Enum
|
|
12
|
+
enums do
|
|
13
|
+
ISSUE_STATUS_CHANGED = new('issue-status-changed')
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Kombo
|
|
8
|
+
module Models
|
|
9
|
+
module Shared
|
|
10
|
+
|
|
11
|
+
class LineItem
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# The globally unique ID of this object generated by Kombo. We recommend using this as a stable primary key for syncing. For some integrations, this ID can still change if the payslip is edited.
|
|
16
|
+
field :id, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('id'), required: true } }
|
|
17
|
+
# The raw ID of the object in the remote system. We don't recommend using this as a primary key on your side as it might sometimes be compromised of multiple identifiers if a system doesn't provide a clear primary key. This value may include the item's position on the payslip, which can change if the payslip is edited.
|
|
18
|
+
field :remote_id, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('remote_id'), required: true } }
|
|
19
|
+
# The name of the salary type.
|
|
20
|
+
field :name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('name'), required: true } }
|
|
21
|
+
# The amount of the line item.
|
|
22
|
+
field :amount, Crystalline::Nilable.new(Models::Shared::Amount), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('amount') } }
|
|
23
|
+
|
|
24
|
+
sig { params(id: ::String, remote_id: ::String, name: T.nilable(::String), amount: T.nilable(Models::Shared::Amount)).void }
|
|
25
|
+
def initialize(id:, remote_id:, name: nil, amount: nil)
|
|
26
|
+
@id = id
|
|
27
|
+
@remote_id = remote_id
|
|
28
|
+
@name = name
|
|
29
|
+
@amount = amount
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
33
|
+
def ==(other)
|
|
34
|
+
return false unless other.is_a? self.class
|
|
35
|
+
return false unless @id == other.id
|
|
36
|
+
return false unless @remote_id == other.remote_id
|
|
37
|
+
return false unless @name == other.name
|
|
38
|
+
return false unless @amount == other.amount
|
|
39
|
+
true
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
end
|
|
@@ -2,16 +2,18 @@
|
|
|
2
2
|
# frozen_string_literal: true
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
class Kombo::Models::Shared::
|
|
5
|
+
class Kombo::Models::Shared::LineItem
|
|
6
6
|
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
7
|
end
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
class Kombo::Models::Shared::
|
|
10
|
+
class Kombo::Models::Shared::LineItem
|
|
11
11
|
def id(); end
|
|
12
12
|
def id=(str_); end
|
|
13
|
-
def name(); end
|
|
14
|
-
def name=(str_); end
|
|
15
13
|
def remote_id(); end
|
|
16
14
|
def remote_id=(str_); end
|
|
15
|
+
def name(); end
|
|
16
|
+
def name=(str_); end
|
|
17
|
+
def amount(); end
|
|
18
|
+
def amount=(str_); end
|
|
17
19
|
end
|
|
@@ -27,6 +27,10 @@ module Kombo
|
|
|
27
27
|
HRIS_SKILLS = new('hris_skills')
|
|
28
28
|
HRIS_SKILL_RATING_PROVIDERS = new('hris_skill_rating_providers')
|
|
29
29
|
HRIS_EMPLOYEE_SKILL_PROFICIENCY_RATINGS = new('hris_employee_skill_proficiency_ratings')
|
|
30
|
+
HRIS_PAY_RUNS = new('hris_pay_runs')
|
|
31
|
+
HRIS_PAYSLIPS = new('hris_payslips')
|
|
32
|
+
HRIS_SALARY_TYPES = new('hris_salary_types')
|
|
33
|
+
HRIS_PAYSLIP_LINE_ITEMS = new('hris_payslip_line_items')
|
|
30
34
|
ATS_USERS = new('ats_users')
|
|
31
35
|
ATS_JOBS = new('ats_jobs')
|
|
32
36
|
ATS_JOB_POSTINGS = new('ats_job_postings')
|
|
@@ -40,6 +44,8 @@ module Kombo
|
|
|
40
44
|
ATS_REJECTION_REASONS = new('ats_rejection_reasons')
|
|
41
45
|
ATS_ROLES = new('ats_roles')
|
|
42
46
|
ATS_NOTES = new('ats_notes')
|
|
47
|
+
ATS_SCORECARDS = new('ats_scorecards')
|
|
48
|
+
ATS_ATTACHMENTS = new('ats_attachments')
|
|
43
49
|
LMS_USERS = new('lms_users')
|
|
44
50
|
LMS_COURSE_PROVIDERS = new('lms_course_providers')
|
|
45
51
|
LMS_SKILLS = new('lms_skills')
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Kombo
|
|
8
|
+
module Models
|
|
9
|
+
module Shared
|
|
10
|
+
# The pay run the payslip was paid out through.
|
|
11
|
+
class PayRun
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# The globally unique ID of this object generated by Kombo. We recommend using this as a stable primary key for syncing.
|
|
16
|
+
field :id, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('id'), required: true } }
|
|
17
|
+
# The raw ID of the object in the remote system. We don't recommend using this as a primary key on your side as it might sometimes be compromised of multiple identifiers if a system doesn't provide a clear primary key.
|
|
18
|
+
field :remote_id, ::String, { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('remote_id'), required: true } }
|
|
19
|
+
# The start date of the pay run, as a calendar date (`yyyy-MM-dd`).
|
|
20
|
+
field :start_date, Crystalline::Nilable.new(::Date), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('start_date'), required: true, 'decoder': ::Kombo::Utils.date_from_iso_format(false) } }
|
|
21
|
+
# The end date of the pay run, as a calendar date (`yyyy-MM-dd`).
|
|
22
|
+
field :end_date, Crystalline::Nilable.new(::Date), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('end_date'), required: true, 'decoder': ::Kombo::Utils.date_from_iso_format(false) } }
|
|
23
|
+
# The Kombo ID of the pay run’s legal entity. The ID can be used to retrieve the legal entity from the `get legal entities` endpoint.
|
|
24
|
+
field :legal_entity_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('legal_entity_id'), required: true } }
|
|
25
|
+
|
|
26
|
+
sig { params(id: ::String, remote_id: ::String, start_date: T.nilable(::Date), end_date: T.nilable(::Date), legal_entity_id: T.nilable(::String)).void }
|
|
27
|
+
def initialize(id:, remote_id:, start_date: nil, end_date: nil, legal_entity_id: nil)
|
|
28
|
+
@id = id
|
|
29
|
+
@remote_id = remote_id
|
|
30
|
+
@start_date = start_date
|
|
31
|
+
@end_date = end_date
|
|
32
|
+
@legal_entity_id = legal_entity_id
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
36
|
+
def ==(other)
|
|
37
|
+
return false unless other.is_a? self.class
|
|
38
|
+
return false unless @id == other.id
|
|
39
|
+
return false unless @remote_id == other.remote_id
|
|
40
|
+
return false unless @start_date == other.start_date
|
|
41
|
+
return false unless @end_date == other.end_date
|
|
42
|
+
return false unless @legal_entity_id == other.legal_entity_id
|
|
43
|
+
true
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Kombo::Models::Shared::PayRun
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Kombo::Models::Shared::PayRun
|
|
11
|
+
def id(); end
|
|
12
|
+
def id=(str_); end
|
|
13
|
+
def remote_id(); end
|
|
14
|
+
def remote_id=(str_); end
|
|
15
|
+
def start_date(); end
|
|
16
|
+
def start_date=(str_); end
|
|
17
|
+
def end_date(); end
|
|
18
|
+
def end_date=(str_); end
|
|
19
|
+
def legal_entity_id(); end
|
|
20
|
+
def legal_entity_id=(str_); end
|
|
21
|
+
end
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Kombo
|
|
8
|
+
module Models
|
|
9
|
+
module Shared
|
|
10
|
+
# Fields specific to AFAS.
|
|
11
|
+
class PostAtsCandidatesRequestBodyAfas
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# Additional fields passed through to AFAS `HrCreateApplicant.Element.Fields`.
|
|
16
|
+
field :fields_, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::Object)), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('Fields') } }
|
|
17
|
+
|
|
18
|
+
sig { params(fields_: T.nilable(T::Hash[Symbol, ::Object])).void }
|
|
19
|
+
def initialize(fields_: nil)
|
|
20
|
+
@fields_ = fields_
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
24
|
+
def ==(other)
|
|
25
|
+
return false unless other.is_a? self.class
|
|
26
|
+
return false unless @fields_ == other.fields_
|
|
27
|
+
true
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
# frozen_string_literal: true
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
class Kombo::Models::Shared::
|
|
5
|
+
class Kombo::Models::Shared::PostAtsCandidatesRequestBodyAfas
|
|
6
6
|
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
7
|
end
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
class Kombo::Models::Shared::
|
|
10
|
+
class Kombo::Models::Shared::PostAtsCandidatesRequestBodyAfas
|
|
11
11
|
def fields_(); end
|
|
12
12
|
def fields_=(str_); end
|
|
13
13
|
end
|
|
@@ -12,17 +12,21 @@ module Kombo
|
|
|
12
12
|
extend T::Sig
|
|
13
13
|
include Crystalline::MetadataFields
|
|
14
14
|
|
|
15
|
+
# Fields that we will pass through to Avature's create person form (`POST /people`). Available fields depend on your Avature instance's People write configuration.
|
|
16
|
+
field :candidate, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::Object)), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('candidate') } }
|
|
15
17
|
|
|
16
18
|
field :workflow, Crystalline::Nilable.new(Models::Shared::PostAtsCandidatesRequestBodyWorkflow), { 'format_json': { 'letter_case': ::Kombo::Utils.field_name('workflow') } }
|
|
17
19
|
|
|
18
|
-
sig { params(workflow: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyWorkflow)).void }
|
|
19
|
-
def initialize(workflow: nil)
|
|
20
|
+
sig { params(candidate: T.nilable(T::Hash[Symbol, ::Object]), workflow: T.nilable(Models::Shared::PostAtsCandidatesRequestBodyWorkflow)).void }
|
|
21
|
+
def initialize(candidate: nil, workflow: nil)
|
|
22
|
+
@candidate = candidate
|
|
20
23
|
@workflow = workflow
|
|
21
24
|
end
|
|
22
25
|
|
|
23
26
|
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
24
27
|
def ==(other)
|
|
25
28
|
return false unless other.is_a? self.class
|
|
29
|
+
return false unless @candidate == other.candidate
|
|
26
30
|
return false unless @workflow == other.workflow
|
|
27
31
|
true
|
|
28
32
|
end
|