Skip to content

Commit 796b4db

Browse files
chore(internal): codegen related update
1 parent 04d90f0 commit 796b4db

File tree

67 files changed

+817
-198
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

67 files changed

+817
-198
lines changed

.github/workflows/ci.yml

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,40 @@ on:
1313
- 'stl-preview-base/**'
1414

1515
jobs:
16+
build:
17+
timeout-minutes: 10
18+
name: build
19+
permissions:
20+
contents: read
21+
id-token: write
22+
runs-on: ${{ github.repository == 'stainless-sdks/finch-ruby' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
23+
if: |-
24+
github.repository == 'stainless-sdks/finch-ruby' &&
25+
(github.event_name == 'push' || github.event.pull_request.head.repo.fork)
26+
steps:
27+
- uses: actions/checkout@v6
28+
- name: Set up Ruby
29+
uses: ruby/setup-ruby@v1
30+
with:
31+
bundler-cache: false
32+
- run: |-
33+
bundle install
34+
35+
- name: Get GitHub OIDC Token
36+
if: github.repository == 'stainless-sdks/finch-ruby'
37+
id: github-oidc
38+
uses: actions/github-script@v8
39+
with:
40+
script: core.setOutput('github_token', await core.getIDToken());
41+
42+
- name: Build and upload gem artifacts
43+
if: github.repository == 'stainless-sdks/finch-ruby'
44+
env:
45+
URL: https://pkg.stainless.com/s
46+
AUTH: ${{ steps.github-oidc.outputs.github_token }}
47+
SHA: ${{ github.sha }}
48+
PACKAGE_NAME: finch_api
49+
run: ./scripts/utils/upload-artifact.sh
1650
lint:
1751
timeout-minutes: 10
1852
name: lint

lib/finch_api/internal/util.rb

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -490,6 +490,37 @@ def writable_enum(&blk)
490490
JSONL_CONTENT = %r{^application/(:?x-(?:n|l)djson)|(:?(?:x-)?jsonl)}
491491

492492
class << self
493+
# @api private
494+
#
495+
# @param query [Hash{Symbol=>Object}]
496+
#
497+
# @return [Hash{Symbol=>Object}]
498+
def encode_query_params(query)
499+
out = {}
500+
query.each { write_query_param_element!(out, _1, _2) }
501+
out
502+
end
503+
504+
# @api private
505+
#
506+
# @param collection [Hash{Symbol=>Object}]
507+
# @param key [String]
508+
# @param element [Object]
509+
#
510+
# @return [nil]
511+
private def write_query_param_element!(collection, key, element)
512+
case element
513+
in Hash
514+
element.each do |name, value|
515+
write_query_param_element!(collection, "#{key}[#{name}]", value)
516+
end
517+
in Array
518+
collection["#{key}[]"] = element.map(&:to_s)
519+
else
520+
collection[key] = element.to_s
521+
end
522+
end
523+
493524
# @api private
494525
#
495526
# @param y [Enumerator::Yielder]

lib/finch_api/models/hris/benefit_retrieve_params.rb

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,20 @@ class BenefitRetrieveParams < FinchAPI::Internal::Type::BaseModel
88
extend FinchAPI::Internal::Type::RequestParameters::Converter
99
include FinchAPI::Internal::Type::RequestParameters
1010

11+
# @!attribute benefit_id
12+
#
13+
# @return [String]
14+
required :benefit_id, String
15+
1116
# @!attribute entity_ids
1217
# The entity IDs to specify which entities' data to access.
1318
#
1419
# @return [Array<String>, nil]
1520
optional :entity_ids, FinchAPI::Internal::Type::ArrayOf[String]
1621

17-
# @!method initialize(entity_ids: nil, request_options: {})
22+
# @!method initialize(benefit_id:, entity_ids: nil, request_options: {})
23+
# @param benefit_id [String]
24+
#
1825
# @param entity_ids [Array<String>] The entity IDs to specify which entities' data to access.
1926
#
2027
# @param request_options [FinchAPI::RequestOptions, Hash{Symbol=>Object}]

lib/finch_api/models/hris/benefit_update_params.rb

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,11 @@ class BenefitUpdateParams < FinchAPI::Internal::Type::BaseModel
88
extend FinchAPI::Internal::Type::RequestParameters::Converter
99
include FinchAPI::Internal::Type::RequestParameters
1010

11+
# @!attribute benefit_id
12+
#
13+
# @return [String]
14+
required :benefit_id, String
15+
1116
# @!attribute entity_ids
1217
# The entity IDs to specify which entities' data to access.
1318
#
@@ -20,7 +25,9 @@ class BenefitUpdateParams < FinchAPI::Internal::Type::BaseModel
2025
# @return [String, nil]
2126
optional :description, String
2227

23-
# @!method initialize(entity_ids: nil, description: nil, request_options: {})
28+
# @!method initialize(benefit_id:, entity_ids: nil, description: nil, request_options: {})
29+
# @param benefit_id [String]
30+
#
2431
# @param entity_ids [Array<String>] The entity IDs to specify which entities' data to access.
2532
#
2633
# @param description [String] Updated name or description.

lib/finch_api/models/hris/benefits/individual_enroll_many_params.rb

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,11 @@ class IndividualEnrollManyParams < FinchAPI::Internal::Type::BaseModel
99
extend FinchAPI::Internal::Type::RequestParameters::Converter
1010
include FinchAPI::Internal::Type::RequestParameters
1111

12+
# @!attribute benefit_id
13+
#
14+
# @return [String]
15+
required :benefit_id, String
16+
1217
# @!attribute entity_ids
1318
# The entity IDs to specify which entities' data to access.
1419
#
@@ -22,7 +27,9 @@ class IndividualEnrollManyParams < FinchAPI::Internal::Type::BaseModel
2227
optional :individuals,
2328
-> { FinchAPI::Internal::Type::ArrayOf[FinchAPI::HRIS::Benefits::IndividualEnrollManyParams::Individual] }
2429

25-
# @!method initialize(entity_ids: nil, individuals: nil, request_options: {})
30+
# @!method initialize(benefit_id:, entity_ids: nil, individuals: nil, request_options: {})
31+
# @param benefit_id [String]
32+
#
2633
# @param entity_ids [Array<String>] The entity IDs to specify which entities' data to access.
2734
#
2835
# @param individuals [Array<FinchAPI::Models::HRIS::Benefits::IndividualEnrollManyParams::Individual>] Array of the individual_id to enroll and a configuration object.

lib/finch_api/models/hris/benefits/individual_enrolled_ids_params.rb

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,20 @@ class IndividualEnrolledIDsParams < FinchAPI::Internal::Type::BaseModel
99
extend FinchAPI::Internal::Type::RequestParameters::Converter
1010
include FinchAPI::Internal::Type::RequestParameters
1111

12+
# @!attribute benefit_id
13+
#
14+
# @return [String]
15+
required :benefit_id, String
16+
1217
# @!attribute entity_ids
1318
# The entity IDs to specify which entities' data to access.
1419
#
1520
# @return [Array<String>, nil]
1621
optional :entity_ids, FinchAPI::Internal::Type::ArrayOf[String]
1722

18-
# @!method initialize(entity_ids: nil, request_options: {})
23+
# @!method initialize(benefit_id:, entity_ids: nil, request_options: {})
24+
# @param benefit_id [String]
25+
#
1926
# @param entity_ids [Array<String>] The entity IDs to specify which entities' data to access.
2027
#
2128
# @param request_options [FinchAPI::RequestOptions, Hash{Symbol=>Object}]

lib/finch_api/models/hris/benefits/individual_retrieve_many_benefits_params.rb

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,11 @@ class IndividualRetrieveManyBenefitsParams < FinchAPI::Internal::Type::BaseModel
99
extend FinchAPI::Internal::Type::RequestParameters::Converter
1010
include FinchAPI::Internal::Type::RequestParameters
1111

12+
# @!attribute benefit_id
13+
#
14+
# @return [String]
15+
required :benefit_id, String
16+
1217
# @!attribute entity_ids
1318
# The entity IDs to specify which entities' data to access.
1419
#
@@ -22,11 +27,13 @@ class IndividualRetrieveManyBenefitsParams < FinchAPI::Internal::Type::BaseModel
2227
# @return [String, nil]
2328
optional :individual_ids, String
2429

25-
# @!method initialize(entity_ids: nil, individual_ids: nil, request_options: {})
30+
# @!method initialize(benefit_id:, entity_ids: nil, individual_ids: nil, request_options: {})
2631
# Some parameter documentations has been truncated, see
2732
# {FinchAPI::Models::HRIS::Benefits::IndividualRetrieveManyBenefitsParams} for
2833
# more details.
2934
#
35+
# @param benefit_id [String]
36+
#
3037
# @param entity_ids [Array<String>] The entity IDs to specify which entities' data to access.
3138
#
3239
# @param individual_ids [String] comma-delimited list of stable Finch uuids for each individual. If empty, defaul

lib/finch_api/models/hris/benefits/individual_unenroll_many_params.rb

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,11 @@ class IndividualUnenrollManyParams < FinchAPI::Internal::Type::BaseModel
99
extend FinchAPI::Internal::Type::RequestParameters::Converter
1010
include FinchAPI::Internal::Type::RequestParameters
1111

12+
# @!attribute benefit_id
13+
#
14+
# @return [String]
15+
required :benefit_id, String
16+
1217
# @!attribute entity_ids
1318
# The entity IDs to specify which entities' data to access.
1419
#
@@ -21,7 +26,9 @@ class IndividualUnenrollManyParams < FinchAPI::Internal::Type::BaseModel
2126
# @return [Array<String>, nil]
2227
optional :individual_ids, FinchAPI::Internal::Type::ArrayOf[String]
2328

24-
# @!method initialize(entity_ids: nil, individual_ids: nil, request_options: {})
29+
# @!method initialize(benefit_id:, entity_ids: nil, individual_ids: nil, request_options: {})
30+
# @param benefit_id [String]
31+
#
2532
# @param entity_ids [Array<String>] The entity IDs to specify which entities' data to access.
2633
#
2734
# @param individual_ids [Array<String>] Array of individual_ids to unenroll.

lib/finch_api/models/hris/company/pay_statement_item/rule_delete_params.rb

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,20 @@ class RuleDeleteParams < FinchAPI::Internal::Type::BaseModel
1010
extend FinchAPI::Internal::Type::RequestParameters::Converter
1111
include FinchAPI::Internal::Type::RequestParameters
1212

13+
# @!attribute rule_id
14+
#
15+
# @return [String]
16+
required :rule_id, String
17+
1318
# @!attribute entity_ids
1419
# The entity IDs to delete the rule for.
1520
#
1621
# @return [Array<String>, nil]
1722
optional :entity_ids, FinchAPI::Internal::Type::ArrayOf[String]
1823

19-
# @!method initialize(entity_ids: nil, request_options: {})
24+
# @!method initialize(rule_id:, entity_ids: nil, request_options: {})
25+
# @param rule_id [String]
26+
#
2027
# @param entity_ids [Array<String>] The entity IDs to delete the rule for.
2128
#
2229
# @param request_options [FinchAPI::RequestOptions, Hash{Symbol=>Object}]

lib/finch_api/models/hris/company/pay_statement_item/rule_update_params.rb

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,11 @@ class RuleUpdateParams < FinchAPI::Internal::Type::BaseModel
1010
extend FinchAPI::Internal::Type::RequestParameters::Converter
1111
include FinchAPI::Internal::Type::RequestParameters
1212

13+
# @!attribute rule_id
14+
#
15+
# @return [String]
16+
required :rule_id, String
17+
1318
# @!attribute entity_ids
1419
# The entity IDs to update the rule for.
1520
#
@@ -21,7 +26,9 @@ class RuleUpdateParams < FinchAPI::Internal::Type::BaseModel
2126
# @return [Object, nil]
2227
optional :optional_property, FinchAPI::Internal::Type::Unknown, api_name: :optionalProperty
2328

24-
# @!method initialize(entity_ids: nil, optional_property: nil, request_options: {})
29+
# @!method initialize(rule_id:, entity_ids: nil, optional_property: nil, request_options: {})
30+
# @param rule_id [String]
31+
#
2532
# @param entity_ids [Array<String>] The entity IDs to update the rule for.
2633
#
2734
# @param optional_property [Object]

0 commit comments

Comments
 (0)