stackone_client 0.23.0 → 0.27.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 (103) 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 +2616 -428
  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/ats_list_application_changes_response.rb +49 -0
  11. data/lib/stack_one/models/operations/change_type.rb +22 -0
  12. data/lib/stack_one/models/operations/hris_get_company_group_request.rb +49 -0
  13. data/lib/stack_one/models/operations/{lms_create_collection_response.rb → hris_get_company_group_response.rb} +7 -7
  14. data/lib/stack_one/models/operations/hris_get_division_group_request.rb +49 -0
  15. data/lib/stack_one/models/operations/hris_get_division_group_response.rb +49 -0
  16. data/lib/stack_one/models/operations/hris_get_position_request.rb +49 -0
  17. data/lib/stack_one/models/operations/{lms_batch_upsert_course_response.rb → hris_get_position_response.rb} +7 -7
  18. data/lib/stack_one/models/operations/hris_get_task_request.rb +53 -0
  19. data/lib/stack_one/models/operations/{lms_upsert_course_response.rb → hris_get_task_response.rb} +7 -7
  20. data/lib/stack_one/models/operations/hris_list_companies_groups_queryparam_filter.rb +33 -0
  21. data/lib/stack_one/models/operations/hris_list_companies_groups_request.rb +69 -0
  22. data/lib/stack_one/models/operations/hris_list_companies_groups_response.rb +49 -0
  23. data/lib/stack_one/models/operations/hris_list_division_groups_queryparam_filter.rb +33 -0
  24. data/lib/stack_one/models/operations/hris_list_division_groups_request.rb +69 -0
  25. data/lib/stack_one/models/operations/hris_list_division_groups_response.rb +49 -0
  26. data/lib/stack_one/models/operations/hris_list_positions_queryparam_filter.rb +33 -0
  27. data/lib/stack_one/models/operations/hris_list_positions_request.rb +73 -0
  28. data/lib/stack_one/models/operations/hris_list_positions_response.rb +49 -0
  29. data/lib/stack_one/models/operations/hris_list_tasks_queryparam_filter.rb +33 -0
  30. data/lib/stack_one/models/operations/hris_list_tasks_request.rb +73 -0
  31. data/lib/stack_one/models/operations/{lms_update_collection_response.rb → hris_list_tasks_response.rb} +7 -7
  32. data/lib/stack_one/models/operations/lms_list_assignments_queryparam_filter.rb +2 -2
  33. data/lib/stack_one/models/operations/lms_list_assignments_queryparam_status.rb +21 -0
  34. data/lib/stack_one/models/operations/queryparam_status.rb +5 -4
  35. data/lib/stack_one/models/operations.rb +25 -8
  36. data/lib/stack_one/models/shared/active.rb +1 -1
  37. data/lib/stack_one/models/shared/actor.rb +37 -0
  38. data/lib/stack_one/models/shared/applicationchanges.rb +57 -0
  39. data/lib/stack_one/models/shared/{customfielddefinition_schemas_4.rb → applicationchanges_4.rb} +1 -1
  40. data/lib/stack_one/models/shared/applicationchanges_source_value.rb +28 -0
  41. data/lib/stack_one/models/shared/applicationchanges_value.rb +22 -0
  42. data/lib/stack_one/models/shared/applicationchangesdatamodel.rb +41 -0
  43. data/lib/stack_one/models/shared/applicationchangesdatamodel_4.rb +28 -0
  44. data/lib/stack_one/models/shared/applicationchangesdatamodel_application_status.rb +37 -0
  45. data/lib/stack_one/models/shared/applicationchangesdatamodel_source_value.rb +28 -0
  46. data/lib/stack_one/models/shared/applicationchangesdatamodel_value.rb +38 -0
  47. data/lib/stack_one/models/shared/applicationchangespaginated.rb +41 -0
  48. data/lib/stack_one/models/shared/categories.rb +1 -0
  49. data/lib/stack_one/models/shared/category.rb +2 -2
  50. data/lib/stack_one/models/shared/category_2.rb +20 -0
  51. data/lib/stack_one/models/shared/change_type.rb +37 -0
  52. data/lib/stack_one/models/shared/connectorsmeta_category.rb +1 -0
  53. data/lib/stack_one/models/shared/connectsessioncreate_categories.rb +1 -0
  54. data/lib/stack_one/models/shared/connectsessiontokenauthlink_categories.rb +1 -0
  55. data/lib/stack_one/models/shared/course.rb +2 -2
  56. data/lib/stack_one/models/shared/course_2.rb +20 -0
  57. data/lib/stack_one/models/shared/course_active.rb +28 -0
  58. data/lib/stack_one/models/shared/customfielddefinition.rb +2 -2
  59. data/lib/stack_one/models/shared/customfielddefinition_type.rb +2 -2
  60. data/lib/stack_one/models/shared/customfieldoption.rb +37 -0
  61. data/lib/stack_one/models/shared/hriscreatetimeoffrequestdto.rb +6 -2
  62. data/lib/stack_one/models/shared/hrisdivision.rb +73 -0
  63. data/lib/stack_one/models/shared/hrisdivision_4.rb +28 -0
  64. data/lib/stack_one/models/shared/hrisdivision_source_value.rb +28 -0
  65. data/lib/stack_one/models/shared/hrisdivision_type.rb +37 -0
  66. data/lib/stack_one/models/shared/hrisdivision_value.rb +26 -0
  67. data/lib/stack_one/models/shared/hrisdivisionspaginated.rb +45 -0
  68. data/lib/stack_one/models/shared/hrisdivisionsresult.rb +37 -0
  69. data/lib/stack_one/models/shared/linkedaccountmeta_category.rb +1 -0
  70. data/lib/stack_one/models/shared/lmscreatecontentrequestdto.rb +2 -2
  71. data/lib/stack_one/models/shared/lmscreatecontentrequestdto_2.rb +20 -0
  72. data/lib/stack_one/models/shared/lmscreatecontentrequestdto_active.rb +28 -0
  73. data/lib/stack_one/models/shared/lmsupsertcontentrequestdto.rb +2 -2
  74. data/lib/stack_one/models/shared/lmsupsertcontentrequestdto_2.rb +20 -0
  75. data/lib/stack_one/models/shared/lmsupsertcontentrequestdto_active.rb +28 -0
  76. data/lib/stack_one/models/shared/lmsuser.rb +2 -2
  77. data/lib/stack_one/models/shared/lmsuser_2.rb +20 -0
  78. data/lib/stack_one/models/shared/lmsuser_active.rb +28 -0
  79. data/lib/stack_one/models/shared/position.rb +69 -0
  80. data/lib/stack_one/models/shared/{options.rb → position_4.rb} +1 -1
  81. data/lib/stack_one/models/shared/position_source_value.rb +28 -0
  82. data/lib/stack_one/models/shared/position_status.rb +37 -0
  83. data/lib/stack_one/models/shared/position_value.rb +22 -0
  84. data/lib/stack_one/models/shared/positionresult.rb +37 -0
  85. data/lib/stack_one/models/shared/positionspaginated.rb +45 -0
  86. data/lib/stack_one/models/shared/reference_active.rb +28 -0
  87. data/lib/stack_one/models/shared/skills.rb +2 -2
  88. data/lib/stack_one/models/shared/skills_2.rb +20 -0
  89. data/lib/stack_one/models/shared/skills_active.rb +28 -0
  90. data/lib/stack_one/models/shared/timeoff.rb +6 -2
  91. data/lib/stack_one/models/shared.rb +39 -6
  92. data/lib/stack_one/proxy.rb +1 -1
  93. data/lib/stack_one/request_logs.rb +1 -1
  94. data/lib/stack_one/sdkconfiguration.rb +2 -2
  95. metadata +66 -16
  96. data/lib/stack_one/models/operations/lms_batch_upsert_course_request.rb +0 -37
  97. data/lib/stack_one/models/operations/lms_create_collection_request.rb +0 -37
  98. data/lib/stack_one/models/operations/lms_update_collection_request.rb +0 -41
  99. data/lib/stack_one/models/operations/lms_upsert_course_request.rb +0 -37
  100. data/lib/stack_one/models/shared/createcontentapimodel.rb +0 -53
  101. data/lib/stack_one/models/shared/lmsbatchupsertcourserequestdto.rb +0 -33
  102. data/lib/stack_one/models/shared/lmscreatecollectionrequestdto.rb +0 -69
  103. data/lib/stack_one/models/shared/lmsupsertcourserequestdto.rb +0 -81
@@ -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
@@ -0,0 +1,73 @@
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 HRISDivision
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # The id of the company that the group belongs to
17
+ field :company_id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('company_id') } }
18
+ # Unique identifier
19
+ field :id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('id') } }
20
+ # The name of the group
21
+ field :name, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('name') } }
22
+ # The list of group owner ids of the given group
23
+ field :owner_ids, T.nilable(T::Array[::String]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('owner_ids') } }
24
+ # The list of parent group ids of the given group
25
+ field :parent_ids, T.nilable(T::Array[::String]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('parent_ids') } }
26
+ # Provider's id of the company that the group belongs to
27
+ field :remote_company_id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('remote_company_id') } }
28
+ # Provider's unique identifier
29
+ field :remote_id, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('remote_id') } }
30
+ # The list of remote group owner ids of the given group
31
+ field :remote_owner_ids, T.nilable(T::Array[::String]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('remote_owner_ids') } }
32
+ # Provider's list of parent group remote ids of the given group
33
+ field :remote_parent_ids, T.nilable(T::Array[::String]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('remote_parent_ids') } }
34
+ # The type of the division group
35
+ field :type, T.nilable(Models::Shared::HRISDivisionType), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('type') } }
36
+ # Custom Unified Fields configured in your StackOne project
37
+ field :unified_custom_fields, T.nilable(T::Hash[Symbol, ::Object]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('unified_custom_fields') } }
38
+
39
+
40
+ sig { params(company_id: T.nilable(::String), id: T.nilable(::String), name: T.nilable(::String), owner_ids: T.nilable(T::Array[::String]), parent_ids: T.nilable(T::Array[::String]), remote_company_id: T.nilable(::String), remote_id: T.nilable(::String), remote_owner_ids: T.nilable(T::Array[::String]), remote_parent_ids: T.nilable(T::Array[::String]), type: T.nilable(Models::Shared::HRISDivisionType), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object])).void }
41
+ def initialize(company_id: nil, id: nil, name: nil, owner_ids: nil, parent_ids: nil, remote_company_id: nil, remote_id: nil, remote_owner_ids: nil, remote_parent_ids: nil, type: nil, unified_custom_fields: nil)
42
+ @company_id = company_id
43
+ @id = id
44
+ @name = name
45
+ @owner_ids = owner_ids
46
+ @parent_ids = parent_ids
47
+ @remote_company_id = remote_company_id
48
+ @remote_id = remote_id
49
+ @remote_owner_ids = remote_owner_ids
50
+ @remote_parent_ids = remote_parent_ids
51
+ @type = type
52
+ @unified_custom_fields = unified_custom_fields
53
+ end
54
+
55
+ def ==(other)
56
+ return false unless other.is_a? self.class
57
+ return false unless @company_id == other.company_id
58
+ return false unless @id == other.id
59
+ return false unless @name == other.name
60
+ return false unless @owner_ids == other.owner_ids
61
+ return false unless @parent_ids == other.parent_ids
62
+ return false unless @remote_company_id == other.remote_company_id
63
+ return false unless @remote_id == other.remote_id
64
+ return false unless @remote_owner_ids == other.remote_owner_ids
65
+ return false unless @remote_parent_ids == other.remote_parent_ids
66
+ return false unless @type == other.type
67
+ return false unless @unified_custom_fields == other.unified_custom_fields
68
+ true
69
+ end
70
+ end
71
+ end
72
+ end
73
+ 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 HRISDivision4
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,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 HRISDivisionSourceValue
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
+ # The type of the division group
12
+ class HRISDivisionType
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+
17
+ field :source_value, T.nilable(T.any(::String, ::Float, T::Boolean, Models::Shared::HRISDivision4, T::Array[::Object])), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('source_value') } }
18
+
19
+ field :value, T.nilable(Models::Shared::HRISDivisionValue), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('value'), 'decoder': Utils.enum_from_string(Models::Shared::HRISDivisionValue, true) } }
20
+
21
+
22
+ sig { params(source_value: T.nilable(T.any(::String, ::Float, T::Boolean, Models::Shared::HRISDivision4, T::Array[::Object])), value: T.nilable(Models::Shared::HRISDivisionValue)).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,26 @@
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 HRISDivisionValue < T::Enum
13
+ enums do
14
+ DEPARTMENT = new('department')
15
+ COMPANY = new('company')
16
+ DIVISION = new('division')
17
+ GROUP = new('group')
18
+ PROJECT = new('project')
19
+ COST_CENTER = new('cost_center')
20
+ TEAM = new('team')
21
+ UNMAPPED_VALUE = new('unmapped_value')
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,45 @@
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 HRISDivisionsPaginated
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+
17
+ field :data, T::Array[Models::Shared::HRISDivision], { '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
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
21
+ field :next_page, T.nilable(::String), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('next_page') } }
22
+
23
+ field :raw, T.nilable(T::Array[Models::Shared::RawResponse]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('raw') } }
24
+
25
+
26
+ sig { params(data: T::Array[Models::Shared::HRISDivision], next_: T.nilable(::String), next_page: T.nilable(::String), raw: T.nilable(T::Array[Models::Shared::RawResponse])).void }
27
+ def initialize(data: nil, next_: nil, next_page: nil, raw: nil)
28
+ @data = data
29
+ @next_ = next_
30
+ @next_page = next_page
31
+ @raw = raw
32
+ end
33
+
34
+ def ==(other)
35
+ return false unless other.is_a? self.class
36
+ return false unless @data == other.data
37
+ return false unless @next_ == other.next_
38
+ return false unless @next_page == other.next_page
39
+ return false unless @raw == other.raw
40
+ true
41
+ end
42
+ end
43
+ end
44
+ end
45
+ 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 HRISDivisionsResult
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+
17
+ field :data, Models::Shared::HRISDivision, { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('data') } }
18
+
19
+ field :raw, T.nilable(T::Array[Models::Shared::RawResponse]), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('raw') } }
20
+
21
+
22
+ sig { params(data: Models::Shared::HRISDivision, raw: T.nilable(T::Array[Models::Shared::RawResponse])).void }
23
+ def initialize(data: nil, raw: nil)
24
+ @data = data
25
+ @raw = raw
26
+ end
27
+
28
+ def ==(other)
29
+ return false unless other.is_a? self.class
30
+ return false unless @data == other.data
31
+ return false unless @raw == other.raw
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
@@ -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
@@ -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::LmsUpsertContentRequestDto2)), { '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::LmsUpsertContentRequestDtoContentType), 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::LmsUpsertContentRequestDto2)), additional_data: T.nilable(T::Array[Models::Shared::AdditionalData]), categories: T.nilable(T::Array[Models::Shared::CreateCategoriesApiModel]), content_type: T.nilable(Models::Shared::LmsUpsertContentRequestDtoContentType), 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 LmsUpsertContentRequestDto2 < 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 LmsUpsertContentRequestDtoActive
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
@@ -14,7 +14,7 @@ module StackOne
14
14
  include Crystalline::MetadataFields
15
15
 
16
16
  # The user active status
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::LmsUser2)), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('active') } }
18
18
  # The created_at date
19
19
  field :created_at, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('created_at'), 'decoder': Utils.datetime_from_iso_format(true) } }
20
20
  # The user email
@@ -35,7 +35,7 @@ module StackOne
35
35
  field :updated_at, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::StackOne::Utils.field_name('updated_at'), 'decoder': Utils.datetime_from_iso_format(true) } }
36
36
 
37
37
 
38
- sig { params(active: T.nilable(T::Boolean), created_at: T.nilable(::DateTime), email: T.nilable(::String), external_reference: T.nilable(::String), id: T.nilable(::String), name: T.nilable(::String), phone_number: T.nilable(::String), remote_id: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object]), updated_at: T.nilable(::DateTime)).void }
38
+ sig { params(active: T.nilable(T.any(T::Boolean, Models::Shared::LmsUser2)), created_at: T.nilable(::DateTime), email: T.nilable(::String), external_reference: T.nilable(::String), id: T.nilable(::String), name: T.nilable(::String), phone_number: T.nilable(::String), remote_id: T.nilable(::String), unified_custom_fields: T.nilable(T::Hash[Symbol, ::Object]), updated_at: T.nilable(::DateTime)).void }
39
39
  def initialize(active: nil, created_at: nil, email: nil, external_reference: nil, id: nil, name: nil, phone_number: nil, remote_id: nil, unified_custom_fields: nil, updated_at: nil)
40
40
  @active = active
41
41
  @created_at = created_at
@@ -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 LmsUser2 < 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
+ # The user active status
12
+ class LmsUserActive
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