Class: Apiwork::Adapter::Standard::Capability::Pagination::ContractBuilder
- Inherits:
-
Capability::Contract::Base
- Object
- Builder::Contract::Base
- Capability::Contract::Base
- Apiwork::Adapter::Standard::Capability::Pagination::ContractBuilder
- Defined in:
- lib/apiwork/adapter/standard/capability/pagination/contract_builder.rb
Instance Attribute Summary
Attributes inherited from Capability::Contract::Base
Attributes inherited from Builder::Contract::Base
Instance Method Summary collapse
Methods inherited from Capability::Contract::Base
Methods inherited from Builder::Contract::Base
#api_class, #contract_for, #enum, #enum?, #import, #initialize, #object, #scoped_enum_name, #scoped_type_name, #type?, #union
Constructor Details
This class inherits a constructor from Apiwork::Adapter::Capability::Contract::Base
Instance Method Details
#build ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/apiwork/adapter/standard/capability/pagination/contract_builder.rb', line 9 def build return unless scope.action?(:index) object(:page) do |object| if .strategy == :cursor object.string?(:after) object.string?(:before) else object.integer?(:number, min: 1) end object.integer?(:size, max: .max_size, min: 1) end action(:index) do |action| action.request do |request| request.query do |query| query.reference?(:page) end end end end |