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)
|
def camelize_keys(hash)
|
||||||
hash.deep_transform_keys { |key| key.to_s.camelize(:lower).to_sym }
|
hash.deep_transform_keys { |key| key.to_s.camelize(:lower).to_sym }
|
||||||
end
|
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
|
||||||
end
|
end
|
||||||
|
|||||||
@ -260,5 +260,7 @@ module Schemable
|
|||||||
# @example
|
# @example
|
||||||
# { first_name: 'John', last_name: 'Doe' } => { firstName: 'John', lastName: 'Doe' }
|
# { first_name: 'John', last_name: 'Doe' } => { firstName: 'John', lastName: 'Doe' }
|
||||||
def camelize_keys: (Hash[Symbol, any]) -> (Hash[Symbol, any] | Array[Hash[Symbol, any]])
|
def camelize_keys: (Hash[Symbol, any]) -> (Hash[Symbol, any] | Array[Hash[Symbol, any]])
|
||||||
|
|
||||||
|
def self.generate: -> Array[Hash[Symbol, any]]
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user