stackone_client 0.37.0 → 0.37.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. checksums.yaml +4 -4
  2. data/lib/stack_one/accounting.rb +1 -1
  3. data/lib/stack_one/hris.rb +926 -311
  4. data/lib/stack_one/models/operations/hris_get_employee_shift_request.rb +53 -0
  5. data/lib/stack_one/models/operations/hris_get_employee_shift_request.rbi +23 -0
  6. data/lib/stack_one/models/operations/hris_get_employee_shift_response.rb +49 -0
  7. data/lib/stack_one/models/operations/hris_get_employee_shift_response.rbi +21 -0
  8. data/lib/stack_one/models/operations/hris_list_employee_shifts_queryparam_filter.rb +45 -0
  9. data/lib/stack_one/models/operations/hris_list_employee_shifts_queryparam_filter.rbi +19 -0
  10. data/lib/stack_one/models/operations/hris_list_employee_shifts_request.rb +73 -0
  11. data/lib/stack_one/models/operations/hris_list_employee_shifts_request.rbi +31 -0
  12. data/lib/stack_one/models/operations/hris_list_employee_shifts_response.rb +61 -0
  13. data/lib/stack_one/models/operations/hris_list_employee_shifts_response.rbi +21 -0
  14. data/lib/stack_one/models/operations/hris_list_employee_time_off_requests_queryparam_filter.rb +10 -2
  15. data/lib/stack_one/models/operations/hris_list_employee_time_off_requests_queryparam_filter.rbi +4 -0
  16. data/lib/stack_one/models/operations/hris_list_positions_queryparam_status.rb +24 -0
  17. data/lib/stack_one/models/operations/hris_list_positions_queryparam_status.rbi +11 -0
  18. data/lib/stack_one/models/operations/hris_list_positions_request.rb +2 -2
  19. data/lib/stack_one/models/operations/hris_list_shifts_queryparam_filter.rb +2 -6
  20. data/lib/stack_one/models/operations/hris_list_shifts_queryparam_filter.rbi +0 -2
  21. data/lib/stack_one/models/operations/hris_list_time_off_requests_queryparam_filter.rb +10 -2
  22. data/lib/stack_one/models/operations/hris_list_time_off_requests_queryparam_filter.rbi +4 -0
  23. data/lib/stack_one/models/operations/queryparam_status.rb +5 -4
  24. data/lib/stack_one/models/operations.rb +6 -0
  25. data/lib/stack_one/models/shared/actionmetaitem.rb +10 -6
  26. data/lib/stack_one/models/shared/actionmetaitem.rbi +4 -2
  27. data/lib/stack_one/models/shared/actionsrpcrequestdto.rb +18 -6
  28. data/lib/stack_one/models/shared/actionsrpcrequestdto.rbi +8 -2
  29. data/lib/stack_one/models/shared/employee.rb +0 -2
  30. data/lib/stack_one/models/shared/messagingmessage.rb +2 -2
  31. data/lib/stack_one/models/shared/messagingmessageresult_data.rb +2 -2
  32. data/lib/stack_one/models/shared.rb +0 -1
  33. data/lib/stack_one/sdkconfiguration.rb +3 -3
  34. metadata +14 -4
  35. data/lib/stack_one/models/shared/input.rb +0 -41
  36. data/lib/stack_one/models/shared/input.rbi +0 -17
@@ -0,0 +1,53 @@
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 Operations
10
+
11
+
12
+ class HrisGetEmployeeShiftRequest
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+
17
+ field :id, ::String, { 'path_param': { 'field_name': 'id', 'style': 'simple', 'explode': false } }
18
+
19
+ field :sub_resource_id, ::String, { 'path_param': { 'field_name': 'subResourceId', 'style': 'simple', 'explode': false } }
20
+ # The account identifier
21
+ field :x_account_id, ::String, { 'header': { 'field_name': 'x-account-id', 'style': 'simple', 'explode': false } }
22
+ # The comma separated list of fields to return in the response (if empty, all fields are returned)
23
+ field :fields_, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'fields', 'style': 'form', 'explode': true } }
24
+ # Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with 'proxy' key
25
+ field :proxy, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::Object)), { 'query_param': { 'field_name': 'proxy', 'style': 'deepObject', 'explode': true } }
26
+ # Indicates that the raw request result should be returned in addition to the mapped result (default value is false)
27
+ field :raw, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'query_param': { 'field_name': 'raw', 'style': 'form', 'explode': true } }
28
+
29
+ sig { params(id: ::String, sub_resource_id: ::String, x_account_id: ::String, fields_: T.nilable(::String), proxy: T.nilable(T::Hash[Symbol, ::Object]), raw: T.nilable(T::Boolean)).void }
30
+ def initialize(id:, sub_resource_id:, x_account_id:, fields_: nil, proxy: nil, raw: nil)
31
+ @id = id
32
+ @sub_resource_id = sub_resource_id
33
+ @x_account_id = x_account_id
34
+ @fields_ = fields_
35
+ @proxy = proxy
36
+ @raw = raw
37
+ end
38
+
39
+ sig { params(other: T.untyped).returns(T::Boolean) }
40
+ def ==(other)
41
+ return false unless other.is_a? self.class
42
+ return false unless @id == other.id
43
+ return false unless @sub_resource_id == other.sub_resource_id
44
+ return false unless @x_account_id == other.x_account_id
45
+ return false unless @fields_ == other.fields_
46
+ return false unless @proxy == other.proxy
47
+ return false unless @raw == other.raw
48
+ true
49
+ end
50
+ end
51
+ end
52
+ end
53
+ end
@@ -0,0 +1,23 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class StackOne::Models::Operations::HrisGetEmployeeShiftRequest
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class StackOne::Models::Operations::HrisGetEmployeeShiftRequest
11
+ def id(); end
12
+ def id=(str_); end
13
+ def sub_resource_id(); end
14
+ def sub_resource_id=(str_); end
15
+ def x_account_id(); end
16
+ def x_account_id=(str_); end
17
+ def fields_(); end
18
+ def fields_=(str_); end
19
+ def proxy(); end
20
+ def proxy=(str_); end
21
+ def raw(); end
22
+ def raw=(str_); end
23
+ end
@@ -0,0 +1,49 @@
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 Operations
10
+
11
+
12
+ class HrisGetEmployeeShiftResponse
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # HTTP response content type for this operation
17
+ field :content_type, ::String
18
+
19
+ field :headers, Crystalline::Hash.new(Symbol, Crystalline::Array.new(::String))
20
+ # HTTP response status code for this operation
21
+ field :status_code, ::Integer
22
+ # Raw HTTP response; suitable for custom response parsing
23
+ field :raw_response, ::Faraday::Response
24
+ # The shift with the given identifier for the specified employee was retrieved.
25
+ field :hris_shift_result, Crystalline::Nilable.new(Models::Shared::HrisShiftResult)
26
+
27
+ sig { params(content_type: ::String, headers: T::Hash[Symbol, T::Array[::String]], status_code: ::Integer, raw_response: ::Faraday::Response, hris_shift_result: T.nilable(Models::Shared::HrisShiftResult)).void }
28
+ def initialize(content_type:, headers:, status_code:, raw_response:, hris_shift_result: nil)
29
+ @content_type = content_type
30
+ @headers = headers
31
+ @status_code = status_code
32
+ @raw_response = raw_response
33
+ @hris_shift_result = hris_shift_result
34
+ end
35
+
36
+ sig { params(other: T.untyped).returns(T::Boolean) }
37
+ def ==(other)
38
+ return false unless other.is_a? self.class
39
+ return false unless @content_type == other.content_type
40
+ return false unless @headers == other.headers
41
+ return false unless @status_code == other.status_code
42
+ return false unless @raw_response == other.raw_response
43
+ return false unless @hris_shift_result == other.hris_shift_result
44
+ true
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,21 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class StackOne::Models::Operations::HrisGetEmployeeShiftResponse
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class StackOne::Models::Operations::HrisGetEmployeeShiftResponse
11
+ def content_type(); end
12
+ def content_type=(str_); end
13
+ def headers(); end
14
+ def headers=(str_); end
15
+ def status_code(); end
16
+ def status_code=(str_); end
17
+ def raw_response(); end
18
+ def raw_response=(str_); end
19
+ def hris_shift_result(); end
20
+ def hris_shift_result=(str_); end
21
+ 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 Operations
10
+
11
+ # HRIS Shifts filters
12
+ class HrisListEmployeeShiftsQueryParamFilter
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # Filter shifts that end before this date
17
+ field :ends_before, Crystalline::Nilable.new(::DateTime), { 'query_param': { 'field_name': 'ends_before' } }
18
+ # Filter shifts that start after this date
19
+ field :starts_after, Crystalline::Nilable.new(::DateTime), { 'query_param': { 'field_name': 'starts_after' } }
20
+ # Filter to select shifts by status
21
+ field :status, Crystalline::Nilable.new(Models::Operations::QueryParamStatus), { 'query_param': { 'field_name': 'status' } }
22
+ # Use a string with a date to only select results updated after that given date
23
+ field :updated_after, Crystalline::Nilable.new(::DateTime), { 'query_param': { 'field_name': 'updated_after' } }
24
+
25
+ sig { params(ends_before: T.nilable(::DateTime), starts_after: T.nilable(::DateTime), status: T.nilable(Models::Operations::QueryParamStatus), updated_after: T.nilable(::DateTime)).void }
26
+ def initialize(ends_before: nil, starts_after: nil, status: nil, updated_after: nil)
27
+ @ends_before = ends_before
28
+ @starts_after = starts_after
29
+ @status = status
30
+ @updated_after = updated_after
31
+ end
32
+
33
+ sig { params(other: T.untyped).returns(T::Boolean) }
34
+ def ==(other)
35
+ return false unless other.is_a? self.class
36
+ return false unless @ends_before == other.ends_before
37
+ return false unless @starts_after == other.starts_after
38
+ return false unless @status == other.status
39
+ return false unless @updated_after == other.updated_after
40
+ true
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,19 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class StackOne::Models::Operations::HrisListEmployeeShiftsQueryParamFilter
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class StackOne::Models::Operations::HrisListEmployeeShiftsQueryParamFilter
11
+ def ends_before(); end
12
+ def ends_before=(str_); end
13
+ def starts_after(); end
14
+ def starts_after=(str_); end
15
+ def status(); end
16
+ def status=(str_); end
17
+ def updated_after(); end
18
+ def updated_after=(str_); end
19
+ end
@@ -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 Operations
10
+
11
+
12
+ class HrisListEmployeeShiftsRequest
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+
17
+ field :id, ::String, { 'path_param': { 'field_name': 'id', 'style': 'simple', 'explode': false } }
18
+ # The account identifier
19
+ field :x_account_id, ::String, { 'header': { 'field_name': 'x-account-id', 'style': 'simple', 'explode': false } }
20
+ # The comma separated list of fields to return in the response (if empty, all fields are returned)
21
+ field :fields_, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'fields', 'style': 'form', 'explode': true } }
22
+ # HRIS Shifts filters
23
+ field :filter, Crystalline::Nilable.new(Models::Operations::HrisListEmployeeShiftsQueryParamFilter), { 'query_param': { 'field_name': 'filter', 'style': 'deepObject', 'explode': true } }
24
+ # The unified cursor
25
+ field :next_, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'next', 'style': 'form', 'explode': true } }
26
+ # The page number of the results to fetch
27
+ #
28
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
29
+ field :page, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'page', 'style': 'form', 'explode': true } }
30
+ # The number of results per page (default value is 25)
31
+ field :page_size, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'page_size', 'style': 'form', 'explode': true } }
32
+ # Query parameters that can be used to pass through parameters to the underlying provider request by surrounding them with 'proxy' key
33
+ field :proxy, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::Object)), { 'query_param': { 'field_name': 'proxy', 'style': 'deepObject', 'explode': true } }
34
+ # Indicates that the raw request result should be returned in addition to the mapped result (default value is false)
35
+ field :raw, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'query_param': { 'field_name': 'raw', 'style': 'form', 'explode': true } }
36
+ # Use a string with a date to only select results updated after that given date
37
+ #
38
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
39
+ field :updated_after, Crystalline::Nilable.new(::DateTime), { 'query_param': { 'field_name': 'updated_after', 'style': 'form', 'explode': true } }
40
+
41
+ sig { params(id: ::String, x_account_id: ::String, fields_: T.nilable(::String), filter: T.nilable(Models::Operations::HrisListEmployeeShiftsQueryParamFilter), next_: T.nilable(::String), page: T.nilable(::String), page_size: T.nilable(::String), proxy: T.nilable(T::Hash[Symbol, ::Object]), raw: T.nilable(T::Boolean), updated_after: T.nilable(::DateTime)).void }
42
+ def initialize(id:, x_account_id:, fields_: nil, filter: nil, next_: nil, page: nil, page_size: nil, proxy: nil, raw: nil, updated_after: nil)
43
+ @id = id
44
+ @x_account_id = x_account_id
45
+ @fields_ = fields_
46
+ @filter = filter
47
+ @next_ = next_
48
+ @page = page
49
+ @page_size = page_size
50
+ @proxy = proxy
51
+ @raw = raw
52
+ @updated_after = updated_after
53
+ end
54
+
55
+ sig { params(other: T.untyped).returns(T::Boolean) }
56
+ def ==(other)
57
+ return false unless other.is_a? self.class
58
+ return false unless @id == other.id
59
+ return false unless @x_account_id == other.x_account_id
60
+ return false unless @fields_ == other.fields_
61
+ return false unless @filter == other.filter
62
+ return false unless @next_ == other.next_
63
+ return false unless @page == other.page
64
+ return false unless @page_size == other.page_size
65
+ return false unless @proxy == other.proxy
66
+ return false unless @raw == other.raw
67
+ return false unless @updated_after == other.updated_after
68
+ true
69
+ end
70
+ end
71
+ end
72
+ end
73
+ end
@@ -0,0 +1,31 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class StackOne::Models::Operations::HrisListEmployeeShiftsRequest
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class StackOne::Models::Operations::HrisListEmployeeShiftsRequest
11
+ def id(); end
12
+ def id=(str_); end
13
+ def x_account_id(); end
14
+ def x_account_id=(str_); end
15
+ def fields_(); end
16
+ def fields_=(str_); end
17
+ def filter(); end
18
+ def filter=(str_); end
19
+ def next_(); end
20
+ def next_=(str_); end
21
+ def page(); end
22
+ def page=(str_); end
23
+ def page_size(); end
24
+ def page_size=(str_); end
25
+ def proxy(); end
26
+ def proxy=(str_); end
27
+ def raw(); end
28
+ def raw=(str_); end
29
+ def updated_after(); end
30
+ def updated_after=(str_); end
31
+ end
@@ -0,0 +1,61 @@
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 Operations
10
+
11
+
12
+ class HrisListEmployeeShiftsResponse
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+ sig { returns(T.proc.returns(T.nilable(HrisListEmployeeShiftsResponse))) }
16
+ attr_accessor :next_page
17
+
18
+ # HTTP response content type for this operation
19
+ field :content_type, ::String
20
+
21
+ field :headers, Crystalline::Hash.new(Symbol, Crystalline::Array.new(::String))
22
+ # HTTP response status code for this operation
23
+ field :status_code, ::Integer
24
+ # Raw HTTP response; suitable for custom response parsing
25
+ field :raw_response, ::Faraday::Response
26
+ # The shifts related to the employee with the given identifier were retrieved.
27
+ field :hris_shifts_paginated, Crystalline::Nilable.new(Models::Shared::HrisShiftsPaginated)
28
+
29
+ sig { params(content_type: ::String, headers: T::Hash[Symbol, T::Array[::String]], status_code: ::Integer, raw_response: ::Faraday::Response, hris_shifts_paginated: T.nilable(Models::Shared::HrisShiftsPaginated)).void }
30
+ def initialize(content_type:, headers:, status_code:, raw_response:, hris_shifts_paginated: nil)
31
+ @content_type = content_type
32
+ @headers = headers
33
+ @status_code = status_code
34
+ @raw_response = raw_response
35
+ @hris_shifts_paginated = hris_shifts_paginated
36
+ end
37
+
38
+ sig { params(other: T.untyped).returns(T::Boolean) }
39
+ def ==(other)
40
+ return false unless other.is_a? self.class
41
+ return false unless @content_type == other.content_type
42
+ return false unless @headers == other.headers
43
+ return false unless @status_code == other.status_code
44
+ return false unless @raw_response == other.raw_response
45
+ return false unless @hris_shifts_paginated == other.hris_shifts_paginated
46
+ true
47
+ end
48
+
49
+ def each
50
+ page = self
51
+ loop do
52
+ yield page
53
+ next_page = page.next_page.call if page.next_page
54
+ break if next_page.nil?
55
+ page = T.must(next_page)
56
+ end
57
+ end
58
+ end
59
+ end
60
+ end
61
+ end
@@ -0,0 +1,21 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class StackOne::Models::Operations::HrisListEmployeeShiftsResponse
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class StackOne::Models::Operations::HrisListEmployeeShiftsResponse
11
+ def content_type(); end
12
+ def content_type=(str_); end
13
+ def headers(); end
14
+ def headers=(str_); end
15
+ def status_code(); end
16
+ def status_code=(str_); end
17
+ def raw_response(); end
18
+ def raw_response=(str_); end
19
+ def hris_shifts_paginated(); end
20
+ def hris_shifts_paginated=(str_); end
21
+ end
@@ -13,21 +13,29 @@ module StackOne
13
13
  extend T::Sig
14
14
  include Crystalline::MetadataFields
15
15
 
16
+ # Filter to include time off requests that end on or before this date.
17
+ field :end_date, Crystalline::Nilable.new(::DateTime), { 'query_param': { 'field_name': 'end_date' } }
16
18
  # List of time off policy ids to filter by.
17
19
  field :policy_ids, Crystalline::Nilable.new(Crystalline::Array.new(::String)), { 'query_param': { 'field_name': 'policy_ids' } }
20
+ # Filter to include time off requests that start on or after this date.
21
+ field :start_date, Crystalline::Nilable.new(::DateTime), { 'query_param': { 'field_name': 'start_date' } }
18
22
  # Use a string with a date to only select results updated after that given date
19
23
  field :updated_after, Crystalline::Nilable.new(::DateTime), { 'query_param': { 'field_name': 'updated_after' } }
20
24
 
21
- sig { params(policy_ids: T.nilable(T::Array[::String]), updated_after: T.nilable(::DateTime)).void }
22
- def initialize(policy_ids: nil, updated_after: nil)
25
+ sig { params(end_date: T.nilable(::DateTime), policy_ids: T.nilable(T::Array[::String]), start_date: T.nilable(::DateTime), updated_after: T.nilable(::DateTime)).void }
26
+ def initialize(end_date: nil, policy_ids: nil, start_date: nil, updated_after: nil)
27
+ @end_date = end_date
23
28
  @policy_ids = policy_ids
29
+ @start_date = start_date
24
30
  @updated_after = updated_after
25
31
  end
26
32
 
27
33
  sig { params(other: T.untyped).returns(T::Boolean) }
28
34
  def ==(other)
29
35
  return false unless other.is_a? self.class
36
+ return false unless @end_date == other.end_date
30
37
  return false unless @policy_ids == other.policy_ids
38
+ return false unless @start_date == other.start_date
31
39
  return false unless @updated_after == other.updated_after
32
40
  true
33
41
  end
@@ -8,8 +8,12 @@ end
8
8
 
9
9
 
10
10
  class StackOne::Models::Operations::HrisListEmployeeTimeOffRequestsQueryParamFilter
11
+ def end_date(); end
12
+ def end_date=(str_); end
11
13
  def policy_ids(); end
12
14
  def policy_ids=(str_); end
15
+ def start_date(); end
16
+ def start_date=(str_); end
13
17
  def updated_after(); end
14
18
  def updated_after=(str_); end
15
19
  end
@@ -0,0 +1,24 @@
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 Operations
10
+
11
+ # HrisListPositionsQueryParamStatus - Filter positions by status
12
+ class HrisListPositionsQueryParamStatus < T::Enum
13
+
14
+
15
+ enums do
16
+ OPEN = new('open')
17
+ CLOSED = new('closed')
18
+ PAUSED = new('paused')
19
+ UNMAPPED_VALUE = new('unmapped_value')
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,11 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class StackOne::Models::Operations::HrisListPositionsQueryParamStatus
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class StackOne::Models::Operations::HrisListPositionsQueryParamStatus
11
+ end
@@ -32,13 +32,13 @@ module StackOne
32
32
  # Indicates that the raw request result should be returned in addition to the mapped result (default value is false)
33
33
  field :raw, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'query_param': { 'field_name': 'raw', 'style': 'form', 'explode': true } }
34
34
  # Filter positions by status
35
- field :status, Crystalline::Nilable.new(Models::Operations::QueryParamStatus), { 'query_param': { 'field_name': 'status', 'style': 'form', 'explode': true } }
35
+ field :status, Crystalline::Nilable.new(Models::Operations::HrisListPositionsQueryParamStatus), { 'query_param': { 'field_name': 'status', 'style': 'form', 'explode': true } }
36
36
  # Use a string with a date to only select results updated after that given date
37
37
  #
38
38
  # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
39
39
  field :updated_after, Crystalline::Nilable.new(::DateTime), { 'query_param': { 'field_name': 'updated_after', 'style': 'form', 'explode': true } }
40
40
 
41
- sig { params(x_account_id: ::String, fields_: T.nilable(::String), filter: T.nilable(Models::Operations::HrisListPositionsQueryParamFilter), next_: T.nilable(::String), page: T.nilable(::String), page_size: T.nilable(::String), proxy: T.nilable(T::Hash[Symbol, ::Object]), raw: T.nilable(T::Boolean), status: T.nilable(Models::Operations::QueryParamStatus), updated_after: T.nilable(::DateTime)).void }
41
+ sig { params(x_account_id: ::String, fields_: T.nilable(::String), filter: T.nilable(Models::Operations::HrisListPositionsQueryParamFilter), next_: T.nilable(::String), page: T.nilable(::String), page_size: T.nilable(::String), proxy: T.nilable(T::Hash[Symbol, ::Object]), raw: T.nilable(T::Boolean), status: T.nilable(Models::Operations::HrisListPositionsQueryParamStatus), updated_after: T.nilable(::DateTime)).void }
42
42
  def initialize(x_account_id:, fields_: nil, filter: nil, next_: nil, page: nil, page_size: nil, proxy: nil, raw: nil, status: nil, updated_after: nil)
43
43
  @x_account_id = x_account_id
44
44
  @fields_ = fields_
@@ -13,8 +13,6 @@ module StackOne
13
13
  extend T::Sig
14
14
  include Crystalline::MetadataFields
15
15
 
16
- # Filter to select shifts by employee ID
17
- field :employee_id, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'employee_id' } }
18
16
  # Filter shifts that end before this date
19
17
  field :ends_before, Crystalline::Nilable.new(::DateTime), { 'query_param': { 'field_name': 'ends_before' } }
20
18
  # Filter shifts that start after this date
@@ -24,9 +22,8 @@ module StackOne
24
22
  # Use a string with a date to only select results updated after that given date
25
23
  field :updated_after, Crystalline::Nilable.new(::DateTime), { 'query_param': { 'field_name': 'updated_after' } }
26
24
 
27
- sig { params(employee_id: T.nilable(::String), ends_before: T.nilable(::DateTime), starts_after: T.nilable(::DateTime), status: T.nilable(Models::Operations::HrisListShiftsQueryParamStatus), updated_after: T.nilable(::DateTime)).void }
28
- def initialize(employee_id: nil, ends_before: nil, starts_after: nil, status: nil, updated_after: nil)
29
- @employee_id = employee_id
25
+ sig { params(ends_before: T.nilable(::DateTime), starts_after: T.nilable(::DateTime), status: T.nilable(Models::Operations::HrisListShiftsQueryParamStatus), updated_after: T.nilable(::DateTime)).void }
26
+ def initialize(ends_before: nil, starts_after: nil, status: nil, updated_after: nil)
30
27
  @ends_before = ends_before
31
28
  @starts_after = starts_after
32
29
  @status = status
@@ -36,7 +33,6 @@ module StackOne
36
33
  sig { params(other: T.untyped).returns(T::Boolean) }
37
34
  def ==(other)
38
35
  return false unless other.is_a? self.class
39
- return false unless @employee_id == other.employee_id
40
36
  return false unless @ends_before == other.ends_before
41
37
  return false unless @starts_after == other.starts_after
42
38
  return false unless @status == other.status
@@ -8,8 +8,6 @@ end
8
8
 
9
9
 
10
10
  class StackOne::Models::Operations::HrisListShiftsQueryParamFilter
11
- def employee_id(); end
12
- def employee_id=(str_); end
13
11
  def ends_before(); end
14
12
  def ends_before=(str_); end
15
13
  def starts_after(); end
@@ -13,21 +13,29 @@ module StackOne
13
13
  extend T::Sig
14
14
  include Crystalline::MetadataFields
15
15
 
16
+ # Filter to include time off requests that end on or before this date.
17
+ field :end_date, Crystalline::Nilable.new(::DateTime), { 'query_param': { 'field_name': 'end_date' } }
16
18
  # List of time off policy ids to filter by.
17
19
  field :policy_ids, Crystalline::Nilable.new(Crystalline::Array.new(::String)), { 'query_param': { 'field_name': 'policy_ids' } }
20
+ # Filter to include time off requests that start on or after this date.
21
+ field :start_date, Crystalline::Nilable.new(::DateTime), { 'query_param': { 'field_name': 'start_date' } }
18
22
  # Use a string with a date to only select results updated after that given date
19
23
  field :updated_after, Crystalline::Nilable.new(::DateTime), { 'query_param': { 'field_name': 'updated_after' } }
20
24
 
21
- sig { params(policy_ids: T.nilable(T::Array[::String]), updated_after: T.nilable(::DateTime)).void }
22
- def initialize(policy_ids: nil, updated_after: nil)
25
+ sig { params(end_date: T.nilable(::DateTime), policy_ids: T.nilable(T::Array[::String]), start_date: T.nilable(::DateTime), updated_after: T.nilable(::DateTime)).void }
26
+ def initialize(end_date: nil, policy_ids: nil, start_date: nil, updated_after: nil)
27
+ @end_date = end_date
23
28
  @policy_ids = policy_ids
29
+ @start_date = start_date
24
30
  @updated_after = updated_after
25
31
  end
26
32
 
27
33
  sig { params(other: T.untyped).returns(T::Boolean) }
28
34
  def ==(other)
29
35
  return false unless other.is_a? self.class
36
+ return false unless @end_date == other.end_date
30
37
  return false unless @policy_ids == other.policy_ids
38
+ return false unless @start_date == other.start_date
31
39
  return false unless @updated_after == other.updated_after
32
40
  true
33
41
  end
@@ -8,8 +8,12 @@ end
8
8
 
9
9
 
10
10
  class StackOne::Models::Operations::HrisListTimeOffRequestsQueryParamFilter
11
+ def end_date(); end
12
+ def end_date=(str_); end
11
13
  def policy_ids(); end
12
14
  def policy_ids=(str_); end
15
+ def start_date(); end
16
+ def start_date=(str_); end
13
17
  def updated_after(); end
14
18
  def updated_after=(str_); end
15
19
  end
@@ -8,14 +8,15 @@ module StackOne
8
8
  module Models
9
9
  module Operations
10
10
 
11
- # QueryParamStatus - Filter positions by status
11
+ # QueryParamStatus - Filter to select shifts by status
12
12
  class QueryParamStatus < T::Enum
13
13
 
14
14
 
15
15
  enums do
16
- OPEN = new('open')
17
- CLOSED = new('closed')
18
- PAUSED = new('paused')
16
+ DRAFT = new('draft')
17
+ PUBLISHED = new('published')
18
+ CONFIRMED = new('confirmed')
19
+ CANCELLED = new('cancelled')
19
20
  UNMAPPED_VALUE = new('unmapped_value')
20
21
  end
21
22
  end
@@ -294,6 +294,8 @@ module StackOne
294
294
  autoload :HrisGetEmployeeEmploymentResponse, 'stack_one/models/operations/hris_get_employee_employment_response.rb'
295
295
  autoload :HrisGetEmployeeRequest, 'stack_one/models/operations/hris_get_employee_request.rb'
296
296
  autoload :HrisGetEmployeeResponse, 'stack_one/models/operations/hris_get_employee_response.rb'
297
+ autoload :HrisGetEmployeeShiftRequest, 'stack_one/models/operations/hris_get_employee_shift_request.rb'
298
+ autoload :HrisGetEmployeeShiftResponse, 'stack_one/models/operations/hris_get_employee_shift_response.rb'
297
299
  autoload :HrisGetEmployeeSkillRequest, 'stack_one/models/operations/hris_get_employee_skill_request.rb'
298
300
  autoload :HrisGetEmployeeSkillResponse, 'stack_one/models/operations/hris_get_employee_skill_response.rb'
299
301
  autoload :HrisGetEmployeeTaskRequest, 'stack_one/models/operations/hris_get_employee_task_request.rb'
@@ -360,6 +362,9 @@ module StackOne
360
362
  autoload :HrisListEmployeeEmploymentsQueryParamFilter, 'stack_one/models/operations/hris_list_employee_employments_queryparam_filter.rb'
361
363
  autoload :HrisListEmployeeEmploymentsRequest, 'stack_one/models/operations/hris_list_employee_employments_request.rb'
362
364
  autoload :HrisListEmployeeEmploymentsResponse, 'stack_one/models/operations/hris_list_employee_employments_response.rb'
365
+ autoload :HrisListEmployeeShiftsQueryParamFilter, 'stack_one/models/operations/hris_list_employee_shifts_queryparam_filter.rb'
366
+ autoload :HrisListEmployeeShiftsRequest, 'stack_one/models/operations/hris_list_employee_shifts_request.rb'
367
+ autoload :HrisListEmployeeShiftsResponse, 'stack_one/models/operations/hris_list_employee_shifts_response.rb'
363
368
  autoload :HrisListEmployeeSkillsQueryParamFilter, 'stack_one/models/operations/hris_list_employee_skills_queryparam_filter.rb'
364
369
  autoload :HrisListEmployeeSkillsRequest, 'stack_one/models/operations/hris_list_employee_skills_request.rb'
365
370
  autoload :HrisListEmployeeSkillsResponse, 'stack_one/models/operations/hris_list_employee_skills_response.rb'
@@ -394,6 +399,7 @@ module StackOne
394
399
  autoload :HrisListLocationsRequest, 'stack_one/models/operations/hris_list_locations_request.rb'
395
400
  autoload :HrisListLocationsResponse, 'stack_one/models/operations/hris_list_locations_response.rb'
396
401
  autoload :HrisListPositionsQueryParamFilter, 'stack_one/models/operations/hris_list_positions_queryparam_filter.rb'
402
+ autoload :HrisListPositionsQueryParamStatus, 'stack_one/models/operations/hris_list_positions_queryparam_status.rb'
397
403
  autoload :HrisListPositionsRequest, 'stack_one/models/operations/hris_list_positions_request.rb'
398
404
  autoload :HrisListPositionsResponse, 'stack_one/models/operations/hris_list_positions_response.rb'
399
405
  autoload :HrisListShiftsQueryParamFilter, 'stack_one/models/operations/hris_list_shifts_queryparam_filter.rb'