39 lines
964 B
Ruby
39 lines
964 B
Ruby
# Copyright (C) 2024 Manuel Bustillo
|
|
|
|
module Swagger
|
|
module Schema
|
|
USER = {
|
|
id: { type: :string, format: :uuid },
|
|
email: { type: :string, format: :email },
|
|
created_at: SwaggerResponseHelper::TIMESTAMP,
|
|
updated_at: SwaggerResponseHelper::TIMESTAMP
|
|
}
|
|
|
|
GROUP = {
|
|
name: { type: :string },
|
|
icon: { type: :string, example: 'pi pi-crown', description: 'The CSS classes used by the icon' },
|
|
parent_id: { type: :string, format: :uuid },
|
|
color: { type: :string, pattern: '^#(?:[0-9a-fA-F]{3}){1,2}$' }
|
|
}
|
|
|
|
SLUG = {
|
|
name: 'slug',
|
|
in: :path,
|
|
type: :string,
|
|
pattern: Wedding::SLUG_REGEX,
|
|
example: :default,
|
|
description: 'Wedding slug'
|
|
}
|
|
|
|
CAPTCHA = {
|
|
captcha: {
|
|
type: :object,
|
|
required: %i[id answer],
|
|
properties: {
|
|
id: { type: :string, format: :uuid },
|
|
answer: { type: :string }
|
|
}
|
|
}
|
|
}
|
|
end
|
|
end |