Current section
Files
Jump to
Current section
Files
lib/helpers/options_validator.ex
defmodule DeeplEx.OptionsValidator do
@moduledoc """
This module is responsible for validating the options for translate that are supplied.
"""
@valid_options [
:split_sentences,
:preserve_formatting,
:formality,
:glossary_id,
:tag_handling,
:outline_detection,
:non_splitting_tags,
:splitting_tags,
:ignore_tags
]
@doc false
def valid_options?(options) when is_map(options) do
options_keys = Map.keys(options)
case options_keys -- @valid_options do
[] -> {:valid_options?, true}
_ -> {:valid_options?, false}
end
end
@doc false
def valid_options?(_), do: {:valid_options?, false}
@doc """
Returns a list containing the valid options for translate
"""
def valid_options, do: @valid_options
end