paperap.settings module


METADATA:

File: settings.py

Project: paperap

Created: 2025-03-09

Version: 0.0.9

Author: Jess Mann Email: jess@jmann.me

Copyright (c) 2025 Jess Mann


LAST MODIFIED:

2025-03-09 By Jess Mann

class paperap.settings.SettingsArgs[source]

Bases: TypedDict

Arguments for the settings class

base_url: HttpUrl
token: str | None
username: str | None
password: str | None
timeout: int
require_ssl: bool
save_on_write: bool
class paperap.settings.Settings(_case_sensitive=None, _nested_model_default_partial_update=None, _env_prefix=None, _env_file=PosixPath('.'), _env_file_encoding=None, _env_ignore_empty=None, _env_nested_delimiter=None, _env_nested_max_split=None, _env_parse_none_str=None, _env_parse_enums=None, _cli_prog_name=None, _cli_parse_args=None, _cli_settings_source=None, _cli_parse_none_str=None, _cli_hide_none_type=None, _cli_avoid_json=None, _cli_enforce_required=None, _cli_use_class_docs_for_groups=None, _cli_exit_on_error=None, _cli_prefix=None, _cli_flag_prefix_char=None, _cli_implicit_flags=None, _cli_ignore_unknown_args=None, _cli_kebab_case=None, _secrets_dir=None, **values)[source]

Bases: BaseSettings

Settings for the paperap library

Parameters:
token: str | None
username: str | None
password: str | None
base_url: HttpUrl
timeout: int
require_ssl: bool
save_on_write: bool
openai_key: str | None
openai_model: str | None
openai_url: str | None
model_config: ClassVar[SettingsConfigDict] = {'arbitrary_types_allowed': True, 'case_sensitive': False, 'cli_avoid_json': False, 'cli_enforce_required': False, 'cli_exit_on_error': True, 'cli_flag_prefix_char': '-', 'cli_hide_none_type': False, 'cli_ignore_unknown_args': False, 'cli_implicit_flags': False, 'cli_kebab_case': False, 'cli_parse_args': None, 'cli_parse_none_str': None, 'cli_prefix': '', 'cli_prog_name': None, 'cli_use_class_docs_for_groups': False, 'enable_decoding': True, 'env_file': None, 'env_file_encoding': None, 'env_ignore_empty': False, 'env_nested_delimiter': None, 'env_nested_max_split': None, 'env_parse_enums': None, 'env_parse_none_str': None, 'env_prefix': 'PAPERLESS_', 'extra': 'ignore', 'json_file': None, 'json_file_encoding': None, 'nested_model_default_partial_update': False, 'protected_namespaces': ('model_validate', 'model_dump', 'settings_customise_sources'), 'secrets_dir': None, 'toml_file': None, 'validate_default': True, 'yaml_file': None, 'yaml_file_encoding': None}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

classmethod validate_url(value)[source]

Ensure the URL is properly formatted.

Parameters:

value (HttpUrl)

Return type:

HttpUrl

classmethod validate_timeout(value)[source]

Ensure the timeout is a positive integer.

Parameters:

value (Any)

Return type:

int

model_post_init(_Settings__context)[source]

Validate the settings after they have been initialized.

Parameters:

_Settings__context (Any)

Return type:

None