mirror of
https://github.com/ditkrg/schemable.git
synced 2026-01-22 22:26:41 +00:00
Adds generate method
This commit is contained in:
parent
a9fbe3e17e
commit
dcfc80d9ad
@ -100,5 +100,16 @@ module Schemable
|
||||
def camelize_keys(hash)
|
||||
hash.deep_transform_keys { |key| key.to_s.camelize(:lower).to_sym }
|
||||
end
|
||||
|
||||
def self.generate
|
||||
instance = new
|
||||
|
||||
[
|
||||
"#{instance.model}CreateRequest": instance.camelize_keys(RequestSchemaGenerator.new(instance).generate_for_create),
|
||||
"#{instance.model}UpdateRequest": instance.camelize_keys(RequestSchemaGenerator.new(instance).generate_for_update),
|
||||
"#{instance.model}Response": instance.camelize_keys(ResponseSchemaGenerator.new(instance).generate(collection: true)),
|
||||
"#{instance.model}ResponseExpanded": instance.camelize_keys(ResponseSchemaGenerator.new(instance).generate(expand: true))
|
||||
]
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@ -260,5 +260,7 @@ module Schemable
|
||||
# @example
|
||||
# { first_name: 'John', last_name: 'Doe' } => { firstName: 'John', lastName: 'Doe' }
|
||||
def camelize_keys: (Hash[Symbol, any]) -> (Hash[Symbol, any] | Array[Hash[Symbol, any]])
|
||||
|
||||
def self.generate: -> Array[Hash[Symbol, any]]
|
||||
end
|
||||
end
|
||||
|
||||
Loading…
Reference in New Issue
Block a user