stackone_client 0.23.0 → 0.25.0

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.
Files changed (82) hide show
  1. checksums.yaml +4 -4
  2. data/lib/stack_one/accounts.rb +1 -1
  3. data/lib/stack_one/ats.rb +276 -0
  4. data/lib/stack_one/connect_sessions.rb +1 -1
  5. data/lib/stack_one/connectors.rb +1 -1
  6. data/lib/stack_one/hris.rb +812 -265
  7. data/lib/stack_one/lms.rb +291 -1441
  8. data/lib/stack_one/models/operations/ats_list_application_changes_queryparam_filter.rb +37 -0
  9. data/lib/stack_one/models/operations/ats_list_application_changes_request.rb +61 -0
  10. data/lib/stack_one/models/operations/{lms_batch_upsert_course_response.rb → ats_list_application_changes_response.rb} +7 -7
  11. data/lib/stack_one/models/operations/change_type.rb +22 -0
  12. data/lib/stack_one/models/operations/hris_get_position_request.rb +49 -0
  13. data/lib/stack_one/models/operations/{lms_update_collection_response.rb → hris_get_position_response.rb} +7 -7
  14. data/lib/stack_one/models/operations/hris_list_positions_queryparam_filter.rb +33 -0
  15. data/lib/stack_one/models/operations/hris_list_positions_request.rb +73 -0
  16. data/lib/stack_one/models/operations/{lms_upsert_course_response.rb → hris_list_positions_response.rb} +7 -7
  17. data/lib/stack_one/models/operations/lms_list_assignments_queryparam_filter.rb +2 -2
  18. data/lib/stack_one/models/operations/lms_list_assignments_queryparam_status.rb +21 -0
  19. data/lib/stack_one/models/operations/queryparam_status.rb +5 -4
  20. data/lib/stack_one/models/operations.rb +10 -8
  21. data/lib/stack_one/models/shared/active.rb +1 -1
  22. data/lib/stack_one/models/shared/actor.rb +37 -0
  23. data/lib/stack_one/models/shared/applicationchanges.rb +57 -0
  24. data/lib/stack_one/models/shared/{customfielddefinition_schemas_4.rb → applicationchanges_4.rb} +1 -1
  25. data/lib/stack_one/models/shared/applicationchanges_source_value.rb +28 -0
  26. data/lib/stack_one/models/shared/applicationchanges_value.rb +22 -0
  27. data/lib/stack_one/models/shared/applicationchangesdatamodel.rb +41 -0
  28. data/lib/stack_one/models/shared/applicationchangesdatamodel_4.rb +28 -0
  29. data/lib/stack_one/models/shared/applicationchangesdatamodel_application_status.rb +37 -0
  30. data/lib/stack_one/models/shared/applicationchangesdatamodel_source_value.rb +28 -0
  31. data/lib/stack_one/models/shared/applicationchangesdatamodel_value.rb +38 -0
  32. data/lib/stack_one/models/shared/applicationchangespaginated.rb +41 -0
  33. data/lib/stack_one/models/shared/categories.rb +1 -0
  34. data/lib/stack_one/models/shared/category.rb +2 -2
  35. data/lib/stack_one/models/shared/category_2.rb +20 -0
  36. data/lib/stack_one/models/shared/change_type.rb +37 -0
  37. data/lib/stack_one/models/shared/connectorsmeta_category.rb +1 -0
  38. data/lib/stack_one/models/shared/connectsessioncreate_categories.rb +1 -0
  39. data/lib/stack_one/models/shared/connectsessiontokenauthlink_categories.rb +1 -0
  40. data/lib/stack_one/models/shared/course.rb +2 -2
  41. data/lib/stack_one/models/shared/course_2.rb +20 -0
  42. data/lib/stack_one/models/shared/course_active.rb +28 -0
  43. data/lib/stack_one/models/shared/customfielddefinition.rb +2 -2
  44. data/lib/stack_one/models/shared/customfielddefinition_type.rb +2 -2
  45. data/lib/stack_one/models/shared/customfieldoption.rb +37 -0
  46. data/lib/stack_one/models/shared/hriscreatetimeoffrequestdto.rb +6 -2
  47. data/lib/stack_one/models/shared/linkedaccountmeta_category.rb +1 -0
  48. data/lib/stack_one/models/shared/lmscreatecontentrequestdto.rb +2 -2
  49. data/lib/stack_one/models/shared/lmscreatecontentrequestdto_2.rb +20 -0
  50. data/lib/stack_one/models/shared/lmscreatecontentrequestdto_active.rb +28 -0
  51. data/lib/stack_one/models/shared/lmsupsertcontentrequestdto.rb +2 -2
  52. data/lib/stack_one/models/shared/lmsupsertcontentrequestdto_2.rb +20 -0
  53. data/lib/stack_one/models/shared/lmsupsertcontentrequestdto_active.rb +28 -0
  54. data/lib/stack_one/models/shared/lmsuser.rb +2 -2
  55. data/lib/stack_one/models/shared/lmsuser_2.rb +20 -0
  56. data/lib/stack_one/models/shared/lmsuser_active.rb +28 -0
  57. data/lib/stack_one/models/shared/position.rb +69 -0
  58. data/lib/stack_one/models/shared/{options.rb → position_4.rb} +1 -1
  59. data/lib/stack_one/models/shared/position_source_value.rb +28 -0
  60. data/lib/stack_one/models/shared/position_status.rb +37 -0
  61. data/lib/stack_one/models/shared/position_value.rb +22 -0
  62. data/lib/stack_one/models/shared/positionresult.rb +37 -0
  63. data/lib/stack_one/models/shared/positionspaginated.rb +45 -0
  64. data/lib/stack_one/models/shared/reference_active.rb +28 -0
  65. data/lib/stack_one/models/shared/skills.rb +2 -2
  66. data/lib/stack_one/models/shared/skills_2.rb +20 -0
  67. data/lib/stack_one/models/shared/skills_active.rb +28 -0
  68. data/lib/stack_one/models/shared/timeoff.rb +6 -2
  69. data/lib/stack_one/models/shared.rb +32 -6
  70. data/lib/stack_one/proxy.rb +1 -1
  71. data/lib/stack_one/request_logs.rb +1 -1
  72. data/lib/stack_one/sdkconfiguration.rb +2 -2
  73. metadata +44 -16
  74. data/lib/stack_one/models/operations/lms_batch_upsert_course_request.rb +0 -37
  75. data/lib/stack_one/models/operations/lms_create_collection_request.rb +0 -37
  76. data/lib/stack_one/models/operations/lms_create_collection_response.rb +0 -49
  77. data/lib/stack_one/models/operations/lms_update_collection_request.rb +0 -41
  78. data/lib/stack_one/models/operations/lms_upsert_course_request.rb +0 -37
  79. data/lib/stack_one/models/shared/createcontentapimodel.rb +0 -53
  80. data/lib/stack_one/models/shared/lmsbatchupsertcourserequestdto.rb +0 -33
  81. data/lib/stack_one/models/shared/lmscreatecollectionrequestdto.rb +0 -69
  82. data/lib/stack_one/models/shared/lmsupsertcourserequestdto.rb +0 -81
@@ -9,7 +9,7 @@ module StackOne
9
9
  module Shared
10
10
 
11
11
 
12
- class CustomFieldDefinitionSchemas4
12
+ class ApplicationChanges4
13
13
  extend T::Sig
14
14
  include Crystalline::MetadataFields
15
15
 
@@ -0,0 +1,28 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Models
9
+ module Shared
10
+
11
+ # The source value of the change type
12
+ class ApplicationChangesSourceValue
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+
17
+
18
+
19
+ def initialize; end
20
+
21
+ def ==(other)
22
+ return false unless other.is_a? self.class
23
+ true
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,22 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Models
9
+ module Shared
10
+
11
+ # ApplicationChangesValue - The type of change that occurred to the application
12
+ class ApplicationChangesValue < T::Enum
13
+ enums do
14
+ APPLICATION_STATUS = new('application_status')
15
+ INTERVIEW_STAGE = new('interview_stage')
16
+ REJECTED_REASONS = new('rejected_reasons')
17
+ UNMAPPED_VALUE = new('unmapped_value')
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,41 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Models
9
+ module Shared
10
+
11
+
12
+ class ApplicationChangesDataModel
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+
17
+ field :application_status, T.nilable(Models::Shared::ApplicationChangesDataModelApplicationStatus), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('application_status') } }
18
+ # Unique identifier of the interview stage
19
+ field :interview_stage_id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('interview_stage_id') } }
20
+ # Unique identifiers of the rejection reasons
21
+ field :rejected_reason_ids, T.nilable(T::Array[::String]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('rejected_reason_ids') } }
22
+
23
+
24
+ sig { params(application_status: T.nilable(Models::Shared::ApplicationChangesDataModelApplicationStatus), interview_stage_id: T.nilable(::String), rejected_reason_ids: T.nilable(T::Array[::String])).void }
25
+ def initialize(application_status: nil, interview_stage_id: nil, rejected_reason_ids: nil)
26
+ @application_status = application_status
27
+ @interview_stage_id = interview_stage_id
28
+ @rejected_reason_ids = rejected_reason_ids
29
+ end
30
+
31
+ def ==(other)
32
+ return false unless other.is_a? self.class
33
+ return false unless @application_status == other.application_status
34
+ return false unless @interview_stage_id == other.interview_stage_id
35
+ return false unless @rejected_reason_ids == other.rejected_reason_ids
36
+ true
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,28 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Models
9
+ module Shared
10
+
11
+
12
+ class ApplicationChangesDataModel4
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+
17
+
18
+
19
+ def initialize; end
20
+
21
+ def ==(other)
22
+ return false unless other.is_a? self.class
23
+ true
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,37 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Models
9
+ module Shared
10
+
11
+
12
+ class ApplicationChangesDataModelApplicationStatus
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # The source value of the application status.
17
+ field :source_value, T.nilable(T.any(::String, ::Float, T::Boolean, Models::Shared::ApplicationChangesDataModel4, T::Array[::Object])), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('source_value') } }
18
+ # The status of the application.
19
+ field :value, T.nilable(Models::Shared::ApplicationChangesDataModelValue), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('value'), 'decoder': Utils.enum_from_string(Models::Shared::ApplicationChangesDataModelValue, true) } }
20
+
21
+
22
+ sig { params(source_value: T.nilable(T.any(::String, ::Float, T::Boolean, Models::Shared::ApplicationChangesDataModel4, T::Array[::Object])), value: T.nilable(Models::Shared::ApplicationChangesDataModelValue)).void }
23
+ def initialize(source_value: nil, value: nil)
24
+ @source_value = source_value
25
+ @value = value
26
+ end
27
+
28
+ def ==(other)
29
+ return false unless other.is_a? self.class
30
+ return false unless @source_value == other.source_value
31
+ return false unless @value == other.value
32
+ true
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,28 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Models
9
+ module Shared
10
+
11
+ # The source value of the application status.
12
+ class ApplicationChangesDataModelSourceValue
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+
17
+
18
+
19
+ def initialize; end
20
+
21
+ def ==(other)
22
+ return false unless other.is_a? self.class
23
+ true
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,38 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Models
9
+ module Shared
10
+
11
+ # ApplicationChangesDataModelValue - The status of the application.
12
+ class ApplicationChangesDataModelValue < T::Enum
13
+ enums do
14
+ ACTIVE = new('active')
15
+ ASSESSMENT = new('assessment')
16
+ BACKGROUND_CHECK = new('background_check')
17
+ CONVERTED = new('converted')
18
+ DECLINED_BY_CANDIDATE = new('declined_by_candidate')
19
+ HIRED = new('hired')
20
+ INTERVIEW = new('interview')
21
+ LEAD = new('lead')
22
+ OFFER = new('offer')
23
+ REFERENCE_CHECK = new('reference_check')
24
+ REJECTED = new('rejected')
25
+ REVIEW = new('review')
26
+ SCREEN = new('screen')
27
+ NEW = new('new')
28
+ ONBOARDING = new('onboarding')
29
+ CREATED = new('created')
30
+ ACCEPTED = new('accepted')
31
+ SHORT_LIST = new('short_list')
32
+ APPROVED = new('approved')
33
+ UNMAPPED_VALUE = new('unmapped_value')
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,41 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Models
9
+ module Shared
10
+
11
+
12
+ class ApplicationChangesPaginated
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+
17
+ field :data, T.nilable(T::Array[Models::Shared::ApplicationChanges]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('data') } }
18
+
19
+ field :next_, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('next') } }
20
+
21
+ field :raw, T.nilable(T::Array[Models::Shared::RawResponse]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('raw') } }
22
+
23
+
24
+ sig { params(data: T.nilable(T::Array[Models::Shared::ApplicationChanges]), next_: T.nilable(::String), raw: T.nilable(T::Array[Models::Shared::RawResponse])).void }
25
+ def initialize(data: nil, next_: nil, raw: nil)
26
+ @data = data
27
+ @next_ = next_
28
+ @raw = raw
29
+ end
30
+
31
+ def ==(other)
32
+ return false unless other.is_a? self.class
33
+ return false unless @data == other.data
34
+ return false unless @next_ == other.next_
35
+ return false unless @raw == other.raw
36
+ true
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
@@ -23,6 +23,7 @@ module StackOne
23
23
  TICKETING = new('ticketing')
24
24
  SCREENING = new('screening')
25
25
  MESSAGING = new('messaging')
26
+ ACCOUNTING = new('accounting')
26
27
  end
27
28
  end
28
29
  end
@@ -14,7 +14,7 @@ module StackOne
14
14
  include Crystalline::MetadataFields
15
15
 
16
16
  # Whether the category is active and therefore available for use
17
- field :active, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('active') } }
17
+ field :active, T.nilable(T.any(T::Boolean, Models::Shared::Category2)), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('active') } }
18
18
  # The hierarchal level of the category
19
19
  field :hierarchy, T.nilable(Models::Shared::Hierarchy), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('hierarchy') } }
20
20
  # The ID associated with this category
@@ -33,7 +33,7 @@ module StackOne
33
33
  field :unified_custom_fields, T.nilable(T::Hash[Symbol, ::Object]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('unified_custom_fields') } }
34
34
 
35
35
 
36
- sig { params(active: T.nilable(T::Boolean), hierarchy: T.nilable(Models::Shared::Hierarchy), id: T.nilable(::String), language: T.nilable(Models::Shared::Language), level: T.nilable(Models::Shared::Level), name: T.nilable(::String), remote_id: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object])).void }
36
+ sig { params(active: T.nilable(T.any(T::Boolean, Models::Shared::Category2)), hierarchy: T.nilable(Models::Shared::Hierarchy), id: T.nilable(::String), language: T.nilable(Models::Shared::Language), level: T.nilable(Models::Shared::Level), name: T.nilable(::String), remote_id: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object])).void }
37
37
  def initialize(active: nil, hierarchy: nil, id: nil, language: nil, level: nil, name: nil, remote_id: nil, unified_custom_fields: nil)
38
38
  @active = active
39
39
  @hierarchy = hierarchy
@@ -0,0 +1,20 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Models
9
+ module Shared
10
+
11
+
12
+ class Category2 < T::Enum
13
+ enums do
14
+ TRUE = new('true')
15
+ FALSE = new('false')
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,37 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Models
9
+ module Shared
10
+
11
+ # The type of change that occurred to the application
12
+ class ChangeType
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # The source value of the change type
17
+ field :source_value, T.nilable(T.any(::String, ::Float, T::Boolean, Models::Shared::ApplicationChanges4, T::Array[::Object])), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('source_value') } }
18
+ # The type of change that occurred to the application
19
+ field :value, T.nilable(Models::Shared::ApplicationChangesValue), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('value'), 'decoder': Utils.enum_from_string(Models::Shared::ApplicationChangesValue, true) } }
20
+
21
+
22
+ sig { params(source_value: T.nilable(T.any(::String, ::Float, T::Boolean, Models::Shared::ApplicationChanges4, T::Array[::Object])), value: T.nilable(Models::Shared::ApplicationChangesValue)).void }
23
+ def initialize(source_value: nil, value: nil)
24
+ @source_value = source_value
25
+ @value = value
26
+ end
27
+
28
+ def ==(other)
29
+ return false unless other.is_a? self.class
30
+ return false unless @source_value == other.source_value
31
+ return false unless @value == other.value
32
+ true
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -23,6 +23,7 @@ module StackOne
23
23
  TICKETING = new('ticketing')
24
24
  SCREENING = new('screening')
25
25
  MESSAGING = new('messaging')
26
+ ACCOUNTING = new('accounting')
26
27
  end
27
28
  end
28
29
  end
@@ -23,6 +23,7 @@ module StackOne
23
23
  TICKETING = new('ticketing')
24
24
  SCREENING = new('screening')
25
25
  MESSAGING = new('messaging')
26
+ ACCOUNTING = new('accounting')
26
27
  end
27
28
  end
28
29
  end
@@ -23,6 +23,7 @@ module StackOne
23
23
  TICKETING = new('ticketing')
24
24
  SCREENING = new('screening')
25
25
  MESSAGING = new('messaging')
26
+ ACCOUNTING = new('accounting')
26
27
  end
27
28
  end
28
29
  end
@@ -14,7 +14,7 @@ module StackOne
14
14
  include Crystalline::MetadataFields
15
15
 
16
16
  # Whether the course is active and available for users.
17
- field :active, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('active') } }
17
+ field :active, T.nilable(T.any(T::Boolean, Models::Shared::Course2)), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('active') } }
18
18
  # The categories associated with this course
19
19
  field :categories, T.nilable(T::Array[Models::Shared::Category]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('categories') } }
20
20
  # The child ID/IDs associated with this course
@@ -51,7 +51,7 @@ module StackOne
51
51
  field :url, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('url') } }
52
52
 
53
53
 
54
- sig { params(active: T.nilable(T::Boolean), categories: T.nilable(T::Array[Models::Shared::Category]), content_ids: T.nilable(T::Array[::String]), cover_url: T.nilable(::String), created_at: T.nilable(::String), description: T.nilable(::String), duration: T.nilable(::String), external_reference: T.nilable(::String), id: T.nilable(::String), languages: T.nilable(T::Array[Models::Shared::LanguageEnum]), provider: T.nilable(::String), remote_content_ids: T.nilable(T::Array[::String]), remote_id: T.nilable(::String), skills: T.nilable(T::Array[Models::Shared::Skills]), title: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object]), updated_at: T.nilable(::String), url: T.nilable(::String)).void }
54
+ sig { params(active: T.nilable(T.any(T::Boolean, Models::Shared::Course2)), categories: T.nilable(T::Array[Models::Shared::Category]), content_ids: T.nilable(T::Array[::String]), cover_url: T.nilable(::String), created_at: T.nilable(::String), description: T.nilable(::String), duration: T.nilable(::String), external_reference: T.nilable(::String), id: T.nilable(::String), languages: T.nilable(T::Array[Models::Shared::LanguageEnum]), provider: T.nilable(::String), remote_content_ids: T.nilable(T::Array[::String]), remote_id: T.nilable(::String), skills: T.nilable(T::Array[Models::Shared::Skills]), title: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object]), updated_at: T.nilable(::String), url: T.nilable(::String)).void }
55
55
  def initialize(active: nil, categories: nil, content_ids: nil, cover_url: nil, created_at: nil, description: nil, duration: nil, external_reference: nil, id: nil, languages: nil, provider: nil, remote_content_ids: nil, remote_id: nil, skills: nil, title: nil, unified_custom_fields: nil, updated_at: nil, url: nil)
56
56
  @active = active
57
57
  @categories = categories
@@ -0,0 +1,20 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Models
9
+ module Shared
10
+
11
+
12
+ class Course2 < T::Enum
13
+ enums do
14
+ TRUE = new('true')
15
+ FALSE = new('false')
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,28 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Models
9
+ module Shared
10
+
11
+ # Whether the course is active and available for users.
12
+ class CourseActive
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+
17
+
18
+
19
+ def initialize; end
20
+
21
+ def ==(other)
22
+ return false unless other.is_a? self.class
23
+ true
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -20,14 +20,14 @@ module StackOne
20
20
 
21
21
  field :name, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('name') } }
22
22
  # An array of possible options for the custom field.
23
- field :options, T.nilable(T::Array[T.any(::String, ::Float, T::Boolean, Models::Shared::CustomFieldDefinition4, T::Array[::Object])]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('options') } }
23
+ field :options, T.nilable(T::Array[Models::Shared::CustomFieldOption]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('options') } }
24
24
  # Provider's unique identifier
25
25
  field :remote_id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('remote_id') } }
26
26
  # The type of the custom field.
27
27
  field :type, T.nilable(Models::Shared::CustomFieldDefinitionType), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('type') } }
28
28
 
29
29
 
30
- sig { params(description: T.nilable(::String), id: T.nilable(::String), name: T.nilable(::String), options: T.nilable(T::Array[T.any(::String, ::Float, T::Boolean, Models::Shared::CustomFieldDefinition4, T::Array[::Object])]), remote_id: T.nilable(::String), type: T.nilable(Models::Shared::CustomFieldDefinitionType)).void }
30
+ sig { params(description: T.nilable(::String), id: T.nilable(::String), name: T.nilable(::String), options: T.nilable(T::Array[Models::Shared::CustomFieldOption]), remote_id: T.nilable(::String), type: T.nilable(Models::Shared::CustomFieldDefinitionType)).void }
31
31
  def initialize(description: nil, id: nil, name: nil, options: nil, remote_id: nil, type: nil)
32
32
  @description = description
33
33
  @id = id
@@ -14,12 +14,12 @@ module StackOne
14
14
  include Crystalline::MetadataFields
15
15
 
16
16
 
17
- field :source_value, T.nilable(T.any(::String, ::Float, T::Boolean, Models::Shared::CustomFieldDefinitionSchemas4, T::Array[::Object])), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('source_value') } }
17
+ field :source_value, T.nilable(T.any(::String, ::Float, T::Boolean, Models::Shared::CustomFieldDefinition4, T::Array[::Object])), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('source_value') } }
18
18
 
19
19
  field :value, T.nilable(Models::Shared::CustomFieldDefinitionValue), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('value'), 'decoder': Utils.enum_from_string(Models::Shared::CustomFieldDefinitionValue, true) } }
20
20
 
21
21
 
22
- sig { params(source_value: T.nilable(T.any(::String, ::Float, T::Boolean, Models::Shared::CustomFieldDefinitionSchemas4, T::Array[::Object])), value: T.nilable(Models::Shared::CustomFieldDefinitionValue)).void }
22
+ sig { params(source_value: T.nilable(T.any(::String, ::Float, T::Boolean, Models::Shared::CustomFieldDefinition4, T::Array[::Object])), value: T.nilable(Models::Shared::CustomFieldDefinitionValue)).void }
23
23
  def initialize(source_value: nil, value: nil)
24
24
  @source_value = source_value
25
25
  @value = value
@@ -0,0 +1,37 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Models
9
+ module Shared
10
+
11
+
12
+ class CustomFieldOption
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # The unique identifier for the option to be used when updating the custom field
17
+ field :id, ::String, { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('id') } }
18
+ # The human readable value of the option
19
+ field :value, ::String, { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('value') } }
20
+
21
+
22
+ sig { params(id: ::String, value: ::String).void }
23
+ def initialize(id: nil, value: nil)
24
+ @id = id
25
+ @value = value
26
+ end
27
+
28
+ def ==(other)
29
+ return false unless other.is_a? self.class
30
+ return false unless @id == other.id
31
+ return false unless @value == other.value
32
+ true
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -15,6 +15,8 @@ module StackOne
15
15
 
16
16
  # The approver ID
17
17
  field :approver_id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('approver_id') } }
18
+ # Allows users to provide additional context or notes for their time off request
19
+ field :comment, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('comment') } }
18
20
  # Inclusive end date of the time off request (ISO8601 date-time without timezone). The time off includes this day
19
21
  field :end_date, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('end_date') } }
20
22
  # True if the end of the time off request ends half way through the day
@@ -37,9 +39,10 @@ module StackOne
37
39
  field :type, T.nilable(Models::Shared::HrisCreateTimeOffRequestDtoType), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('type') } }
38
40
 
39
41
 
40
- sig { params(approver_id: T.nilable(::String), end_date: T.nilable(::String), end_half_day: T.nilable(T.any(T::Boolean, Models::Shared::HrisCreateTimeOffRequestDto2)), passthrough: T.nilable(T::Hash[Symbol, ::Object]), reason: T.nilable(Models::Shared::HrisCreateTimeOffRequestDtoReason), start_date: T.nilable(::String), start_half_day: T.nilable(T.any(T::Boolean, Models::Shared::HrisCreateTimeOffRequestDtoSchemas2)), status: T.nilable(Models::Shared::HrisCreateTimeOffRequestDtoStatus), time_off_policy_id: T.nilable(::String), type: T.nilable(Models::Shared::HrisCreateTimeOffRequestDtoType)).void }
41
- def initialize(approver_id: nil, end_date: nil, end_half_day: nil, passthrough: nil, reason: nil, start_date: nil, start_half_day: nil, status: nil, time_off_policy_id: nil, type: nil)
42
+ sig { params(approver_id: T.nilable(::String), comment: T.nilable(::String), end_date: T.nilable(::String), end_half_day: T.nilable(T.any(T::Boolean, Models::Shared::HrisCreateTimeOffRequestDto2)), passthrough: T.nilable(T::Hash[Symbol, ::Object]), reason: T.nilable(Models::Shared::HrisCreateTimeOffRequestDtoReason), start_date: T.nilable(::String), start_half_day: T.nilable(T.any(T::Boolean, Models::Shared::HrisCreateTimeOffRequestDtoSchemas2)), status: T.nilable(Models::Shared::HrisCreateTimeOffRequestDtoStatus), time_off_policy_id: T.nilable(::String), type: T.nilable(Models::Shared::HrisCreateTimeOffRequestDtoType)).void }
43
+ def initialize(approver_id: nil, comment: nil, end_date: nil, end_half_day: nil, passthrough: nil, reason: nil, start_date: nil, start_half_day: nil, status: nil, time_off_policy_id: nil, type: nil)
42
44
  @approver_id = approver_id
45
+ @comment = comment
43
46
  @end_date = end_date
44
47
  @end_half_day = end_half_day
45
48
  @passthrough = passthrough
@@ -54,6 +57,7 @@ module StackOne
54
57
  def ==(other)
55
58
  return false unless other.is_a? self.class
56
59
  return false unless @approver_id == other.approver_id
60
+ return false unless @comment == other.comment
57
61
  return false unless @end_date == other.end_date
58
62
  return false unless @end_half_day == other.end_half_day
59
63
  return false unless @passthrough == other.passthrough
@@ -23,6 +23,7 @@ module StackOne
23
23
  TICKETING = new('ticketing')
24
24
  SCREENING = new('screening')
25
25
  MESSAGING = new('messaging')
26
+ ACCOUNTING = new('accounting')
26
27
  end
27
28
  end
28
29
  end
@@ -14,7 +14,7 @@ module StackOne
14
14
  include Crystalline::MetadataFields
15
15
 
16
16
  # Whether the content is active and available for users.
17
- field :active, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('active') } }
17
+ field :active, T.nilable(T.any(T::Boolean, Models::Shared::LmsCreateContentRequestDto2)), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('active') } }
18
18
  # The additional_data associated with this content
19
19
  field :additional_data, T.nilable(T::Array[Models::Shared::AdditionalData]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('additional_data') } }
20
20
  # The categories associated with this content
@@ -57,7 +57,7 @@ module StackOne
57
57
  field :updated_at, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('updated_at'), 'decoder': Utils.datetime_from_iso_format(true) } }
58
58
 
59
59
 
60
- sig { params(active: T.nilable(T::Boolean), additional_data: T.nilable(T::Array[Models::Shared::AdditionalData]), categories: T.nilable(T::Array[Models::Shared::CreateCategoriesApiModel]), content_type: T.nilable(Models::Shared::LmsCreateContentRequestDtoContentType), content_url: T.nilable(::String), cover_url: T.nilable(::String), created_at: T.nilable(::DateTime), description: T.nilable(::String), duration: T.nilable(::String), external_reference: T.nilable(::String), languages: T.nilable(T::Array[Models::Shared::LanguageEnum]), localizations: T.nilable(T::Array[Models::Shared::LocalizationModel]), mobile_launch_content_url: T.nilable(::String), order: T.nilable(::Float), short_description: T.nilable(::String), skills: T.nilable(T::Array[Models::Shared::CreateSkillsApiModel]), tags: T.nilable(T::Array[::String]), title: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object]), updated_at: T.nilable(::DateTime)).void }
60
+ sig { params(active: T.nilable(T.any(T::Boolean, Models::Shared::LmsCreateContentRequestDto2)), additional_data: T.nilable(T::Array[Models::Shared::AdditionalData]), categories: T.nilable(T::Array[Models::Shared::CreateCategoriesApiModel]), content_type: T.nilable(Models::Shared::LmsCreateContentRequestDtoContentType), content_url: T.nilable(::String), cover_url: T.nilable(::String), created_at: T.nilable(::DateTime), description: T.nilable(::String), duration: T.nilable(::String), external_reference: T.nilable(::String), languages: T.nilable(T::Array[Models::Shared::LanguageEnum]), localizations: T.nilable(T::Array[Models::Shared::LocalizationModel]), mobile_launch_content_url: T.nilable(::String), order: T.nilable(::Float), short_description: T.nilable(::String), skills: T.nilable(T::Array[Models::Shared::CreateSkillsApiModel]), tags: T.nilable(T::Array[::String]), title: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object]), updated_at: T.nilable(::DateTime)).void }
61
61
  def initialize(active: nil, additional_data: nil, categories: nil, content_type: nil, content_url: nil, cover_url: nil, created_at: nil, description: nil, duration: nil, external_reference: nil, languages: nil, localizations: nil, mobile_launch_content_url: nil, order: nil, short_description: nil, skills: nil, tags: nil, title: nil, unified_custom_fields: nil, updated_at: nil)
62
62
  @active = active
63
63
  @additional_data = additional_data
@@ -0,0 +1,20 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Models
9
+ module Shared
10
+
11
+
12
+ class LmsCreateContentRequestDto2 < T::Enum
13
+ enums do
14
+ TRUE = new('true')
15
+ FALSE = new('false')
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,28 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module StackOne
8
+ module Models
9
+ module Shared
10
+
11
+ # Whether the content is active and available for users.
12
+ class LmsCreateContentRequestDtoActive
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+
17
+
18
+
19
+ def initialize; end
20
+
21
+ def ==(other)
22
+ return false unless other.is_a? self.class
23
+ true
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end