fastapi-rtk 2.20.0__tar.gz → 2.20.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/PKG-INFO +14 -4
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/README.md +13 -3
- fastapi_rtk-2.20.1/fastapi_rtk/_version.py +1 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/agent_docs/guide/frontend.md +3 -3
- fastapi_rtk-2.20.0/fastapi_rtk/_version.py +0 -1
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/.gitignore +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/LICENSE +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/agent_docs/adapters/agents-md/AGENTS.md +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/agent_docs/adapters/claude/skill.frontmatter +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/agent_docs/guide/backend.md +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/agent_docs/guide/jsonforms.md +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/agent_docs/guide/legacy.md +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/agent_docs/guide/overview.md +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/base_api.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/model_rest_api/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/model_rest_api/model_rest_api.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/model_rest_api/params.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/model_rest_api/services/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/model_rest_api/services/_add_service.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/model_rest_api/services/_bulk_service.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/model_rest_api/services/_delete_service.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/model_rest_api/services/_download_service.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/model_rest_api/services/_edit_service.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/model_rest_api/services/_file_service.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/model_rest_api/services/_info_service.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/model_rest_api/services/_list_service.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/model_rest_api/services/_lookup_service.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/model_rest_api/services/_schema_service.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/model_rest_api/services/_show_service.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/apis/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/apis/info.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/apis/license.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/auth/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/auth/auth.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/auth/hashers/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/auth/hashers/pbkdf2.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/auth/hashers/scrypt.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/auth/ldap.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/auth/password_helpers/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/auth/password_helpers/fab.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/auth/strategies/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/auth/strategies/config.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/auth/strategies/db.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/auth/strategies/jwt.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/generic/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/generic/column.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/generic/db.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/generic/exceptions.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/generic/filters.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/generic/interface.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/generic/model.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/generic/session.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/sqla/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/sqla/column.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/sqla/db.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/sqla/exceptions.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/sqla/extensions/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/sqla/extensions/audit/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/sqla/extensions/audit/_decorators_service.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/sqla/extensions/audit/_lifecycle_service.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/sqla/extensions/audit/_logger.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/sqla/extensions/audit/_processing_service.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/sqla/extensions/audit/audit.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/sqla/extensions/audit/types.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/sqla/extensions/geoalchemy2/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/sqla/extensions/geoalchemy2/filters.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/sqla/extensions/geoalchemy2/geometry_converter.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/sqla/filters.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/sqla/interface.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/sqla/model.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/sqla/session.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/bases/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/bases/cache.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/bases/db.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/bases/file_manager.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/bases/filter.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/bases/interface.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/bases/loop_manager.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/bases/model.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/bases/session.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/bases/user_cache.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/caches/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/caches/cache.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/caches/serializers.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/caches/storages.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/cli.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/commands/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/commands/_security_crypto.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/commands/agent/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/commands/agent/adapters/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/commands/agent/adapters/agents_md.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/commands/agent/adapters/claude.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/commands/agent/base.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/commands/agent/docs.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/commands/db/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/commands/db/templates/fastapi/README +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/commands/db/templates/fastapi/alembic.ini.mako +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/commands/db/templates/fastapi/env.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/commands/db/templates/fastapi/script.py.mako +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/commands/db/templates/fastapi-multidb/README +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/commands/db/templates/fastapi-multidb/alembic.ini.mako +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/commands/db/templates/fastapi-multidb/env.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/commands/db/templates/fastapi-multidb/script.py.mako +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/commands/export.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/commands/security.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/commands/translate.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/const.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/decorators.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/types.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/utils.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/config.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/const.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/db.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/decorators.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/dependencies.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/exceptions.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/fastapi_react_toolkit.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/file_managers/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/file_managers/file_manager.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/file_managers/image_manager.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/file_managers/s3_file_manager.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/file_managers/s3_image_manager.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/filters.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/globals.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/lang/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/lang/babel/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/lang/babel/cli.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/lang/babel/config.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/lang/babel.cfg +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/lang/lazy_text.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/lang/messages.pot +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/lang/translations/de/LC_MESSAGES/messages.mo +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/lang/translations/de/LC_MESSAGES/messages.po +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/lang/translations/en/LC_MESSAGES/messages.mo +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/lang/translations/en/LC_MESSAGES/messages.po +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/loop_managers/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/loop_managers/loop_manager.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/manager.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/middlewares.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/mixins.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/models.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/py.typed +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/registry.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/routers.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/schemas.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/security/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/security/sqla/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/security/sqla/apis.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/security/sqla/models.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/security/sqla/security_manager/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/security/sqla/security_manager/_builtin_role_service.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/security/sqla/security_manager/_entities.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/security/sqla/security_manager/_exception_filters.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/security/sqla/security_manager/_export.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/security/sqla/security_manager/_import.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/security/sqla/security_manager/_permission_service.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/security/sqla/security_manager/_results.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/security/sqla/security_manager/_role_service.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/security/sqla/security_manager/_user_service.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/security/sqla/security_manager/security_manager.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/security/sqla/user_cache.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/setting.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/types.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/utils/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/utils/async_task_runner.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/utils/class_factory.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/utils/csv_json_converter.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/utils/deep_merge.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/utils/extender_mixin.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/utils/flask_appbuilder_utils.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/utils/formatter.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/utils/hooks.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/utils/lazy.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/utils/merge_schema.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/utils/multiple_async_contexts.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/utils/pydantic.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/utils/run_utils.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/utils/self_dependencies.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/utils/smartdefaultdict.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/utils/sqla.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/utils/timezone.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/utils/update_signature.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/utils/use_default_when_none.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/version.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/pyproject.toml +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/conftest.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/docker-compose.gis.yml +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/integration/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/integration/api/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/integration/api/test_add_edit_relation_response.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/integration/api/test_lookup.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/integration/api/test_model_rest_api.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/integration/apis/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/integration/apis/test_info_callable_schema.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/integration/apis/test_info_contract.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/integration/auth/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/integration/auth/test_auth_flow.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/integration/auth/test_oauth.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/integration/conftest.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/integration/file_managers/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/integration/file_managers/test_file_routes.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/integration/security/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/integration/security/sqla/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/integration/security/sqla/conftest.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/integration/security/sqla/test_permission_service.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/integration/security/sqla/test_role_service.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/integration/security/sqla/test_security_manager.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/integration/security/sqla/test_user_service.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/integration/test_app_smoke.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/api/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/api/conftest.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/api/model_rest_api/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/api/model_rest_api/test_columns.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/api/model_rest_api/test_download_service.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/api/model_rest_api/test_file_mixin.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/api/model_rest_api/test_init.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/api/model_rest_api/test_lookup_service.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/api/model_rest_api/test_service_delegators.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/api/test_base_api.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/apis/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/apis/test_info.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/apis/test_license.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/auth/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/auth/hashers/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/auth/hashers/test_pbkdf2.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/auth/hashers/test_scrypt.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/auth/password_helpers/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/auth/password_helpers/test_fab.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/auth/strategies/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/auth/strategies/test_config.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/auth/strategies/test_db.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/auth/strategies/test_jwt.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/auth/test_auth.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/backends/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/backends/generic/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/backends/generic/test_column.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/backends/generic/test_db.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/backends/generic/test_exceptions.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/backends/generic/test_filters.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/backends/generic/test_interface.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/backends/generic/test_model.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/backends/generic/test_session.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/backends/sqla/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/backends/sqla/conftest.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/backends/sqla/test_audit.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/backends/sqla/test_audit_service_delegators.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/backends/sqla/test_audit_types.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/backends/sqla/test_column.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/backends/sqla/test_db.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/backends/sqla/test_filters.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/backends/sqla/test_geoalchemy2.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/backends/sqla/test_interface.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/backends/sqla/test_model.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/backends/sqla/test_session.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/bases/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/bases/test_db.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/bases/test_file_manager.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/bases/test_filter.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/bases/test_interface.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/bases/test_model.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/bases/test_session.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/cli/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/cli/commands/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/cli/commands/conftest.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/cli/commands/test_db.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/cli/commands/test_export.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/cli/commands/test_security.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/cli/commands/test_security_crypto.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/cli/commands/test_translate.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/cli/conftest.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/cli/test_cli.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/cli/test_decorators.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/cli/test_types.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/cli/test_utils.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/file_managers/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/file_managers/conftest.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/file_managers/test_file_manager.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/file_managers/test_image_manager.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/file_managers/test_s3_file_manager.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/file_managers/test_s3_image_manager.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/lang/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/lang/test_babel_cli.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/lang/test_babel_config.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/lang/test_lazy_text.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/security/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/security/sqla/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/security/sqla/conftest.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/security/sqla/security_manager/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/security/sqla/security_manager/test_builtin_role_service.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/security/sqla/security_manager/test_entities.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/security/sqla/security_manager/test_permission_service.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/security/sqla/security_manager/test_results.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/security/sqla/security_manager/test_role_service.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/security/sqla/security_manager/test_user_service.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/security/sqla/test_apis.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/security/sqla/test_models.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/security/sqla/test_security_manager.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/test_caches.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/test_config.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/test_const.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/test_db.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/test_decorators.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/test_dependencies.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/test_exceptions.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/test_fastapi_react_toolkit.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/test_filters.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/test_globals.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/test_manager.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/test_middlewares.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/test_mixins.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/test_models.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/test_registry.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/test_routers.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/test_schemas.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/test_setting.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/test_types.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/test_user_cache.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/test_version.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/utils/__init__.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/utils/test_async_task_runner.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/utils/test_class_factory.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/utils/test_csv_json_converter.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/utils/test_deep_merge.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/utils/test_extender_mixin.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/utils/test_flask_appbuilder_utils.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/utils/test_formatter.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/utils/test_hooks.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/utils/test_lazy.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/utils/test_merge_schema.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/utils/test_multiple_async_contexts.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/utils/test_pydantic.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/utils/test_run_utils.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/utils/test_self_dependencies.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/utils/test_smartdefaultdict.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/utils/test_sqla.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/utils/test_timezone.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/utils/test_update_signature.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/tests/unit/utils/test_use_default_when_none.py +0 -0
- {fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/uv.lock +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: fastapi-rtk
|
|
3
|
-
Version: 2.20.
|
|
3
|
+
Version: 2.20.1
|
|
4
4
|
Summary: A package that provides a set of tools to build a FastAPI application with a Class-Based CRUD API.
|
|
5
5
|
Project-URL: Homepage, https://codeberg.org/datatactics/fastapi-rtk
|
|
6
6
|
Project-URL: Issues, https://codeberg.org/datatactics/fastapi-rtk/issues
|
|
@@ -119,7 +119,7 @@ project/
|
|
|
119
119
|
1. Install FastAPI React Toolkit:
|
|
120
120
|
|
|
121
121
|
```bash
|
|
122
|
-
pip install fastapi-rtk
|
|
122
|
+
pip install fastapi-rtk aiosqlite # aiosqlite: async driver for the sqlite URI below (asyncpg for Postgres)
|
|
123
123
|
mkdir -p app
|
|
124
124
|
touch run.py app/__init__.py app/app.py app/config.py app/models.py app/apis.py
|
|
125
125
|
```
|
|
@@ -231,6 +231,7 @@ project/
|
|
|
231
231
|
- `GET /api/v1/items/_image/{filename}` - Serve image files (If image column is present)
|
|
232
232
|
- `GET /api/v1/items/_file/{filename}` - Serve file downloads (If file column is present)
|
|
233
233
|
- `GET /api/v1/items/_info` - Get metadata about the model, including which columns can be added, edited, filtered, etc.
|
|
234
|
+
- `GET /api/v1/items/_lookup/{column}` - Search a column's values, or resolve ids to labels, for form and filter inputs (If the column is enabled in `lookup_columns`)
|
|
234
235
|
- `POST /api/v1/items/bulk/{handler}` - Bulk operations, if set on the API class
|
|
235
236
|
- `GET /api/v1/items/download` - Download items as CSV
|
|
236
237
|
- `GET /api/v1/items/` - List items
|
|
@@ -249,6 +250,14 @@ project/
|
|
|
249
250
|
|
|
250
251
|
2. Project files:
|
|
251
252
|
|
|
253
|
+
**webapp/.env**
|
|
254
|
+
|
|
255
|
+
The path the app is served under, with a trailing slash; `index.html` reads it as `%VITE_BASE_PATH%`.
|
|
256
|
+
|
|
257
|
+
```bash
|
|
258
|
+
VITE_BASE_PATH=/
|
|
259
|
+
```
|
|
260
|
+
|
|
252
261
|
**webapp/index.html**
|
|
253
262
|
|
|
254
263
|
```html
|
|
@@ -295,7 +304,7 @@ project/
|
|
|
295
304
|
|
|
296
305
|
createRoot(document.getElementById("root")).render(
|
|
297
306
|
<StrictMode>
|
|
298
|
-
<MantineProvider>
|
|
307
|
+
<MantineProvider getStyleNonce={() => window.nonce}>
|
|
299
308
|
<Provider baseUrl={BASE_PATH + "api/v1"}>
|
|
300
309
|
<BrowserRouter basename={BASE_PATH}>
|
|
301
310
|
<App />
|
|
@@ -326,8 +335,9 @@ import { createReactNativeAdapters } from "fastapi-rtk/react-native-adapters";
|
|
|
326
335
|
const rnAdapters = createReactNativeAdapters({
|
|
327
336
|
asyncStorage,
|
|
328
337
|
fileSystem,
|
|
329
|
-
sharing,
|
|
338
|
+
sharing, // optional
|
|
330
339
|
webBrowser,
|
|
340
|
+
oauthRedirectUrl: "myapp://oauth", // required for OAuth sign-in; one URL or a map per provider
|
|
331
341
|
});
|
|
332
342
|
|
|
333
343
|
<Provider baseUrl="https://api.example.com/api/v1" adapters={rnAdapters}>
|
|
@@ -60,7 +60,7 @@ project/
|
|
|
60
60
|
1. Install FastAPI React Toolkit:
|
|
61
61
|
|
|
62
62
|
```bash
|
|
63
|
-
pip install fastapi-rtk
|
|
63
|
+
pip install fastapi-rtk aiosqlite # aiosqlite: async driver for the sqlite URI below (asyncpg for Postgres)
|
|
64
64
|
mkdir -p app
|
|
65
65
|
touch run.py app/__init__.py app/app.py app/config.py app/models.py app/apis.py
|
|
66
66
|
```
|
|
@@ -172,6 +172,7 @@ project/
|
|
|
172
172
|
- `GET /api/v1/items/_image/{filename}` - Serve image files (If image column is present)
|
|
173
173
|
- `GET /api/v1/items/_file/{filename}` - Serve file downloads (If file column is present)
|
|
174
174
|
- `GET /api/v1/items/_info` - Get metadata about the model, including which columns can be added, edited, filtered, etc.
|
|
175
|
+
- `GET /api/v1/items/_lookup/{column}` - Search a column's values, or resolve ids to labels, for form and filter inputs (If the column is enabled in `lookup_columns`)
|
|
175
176
|
- `POST /api/v1/items/bulk/{handler}` - Bulk operations, if set on the API class
|
|
176
177
|
- `GET /api/v1/items/download` - Download items as CSV
|
|
177
178
|
- `GET /api/v1/items/` - List items
|
|
@@ -190,6 +191,14 @@ project/
|
|
|
190
191
|
|
|
191
192
|
2. Project files:
|
|
192
193
|
|
|
194
|
+
**webapp/.env**
|
|
195
|
+
|
|
196
|
+
The path the app is served under, with a trailing slash; `index.html` reads it as `%VITE_BASE_PATH%`.
|
|
197
|
+
|
|
198
|
+
```bash
|
|
199
|
+
VITE_BASE_PATH=/
|
|
200
|
+
```
|
|
201
|
+
|
|
193
202
|
**webapp/index.html**
|
|
194
203
|
|
|
195
204
|
```html
|
|
@@ -236,7 +245,7 @@ project/
|
|
|
236
245
|
|
|
237
246
|
createRoot(document.getElementById("root")).render(
|
|
238
247
|
<StrictMode>
|
|
239
|
-
<MantineProvider>
|
|
248
|
+
<MantineProvider getStyleNonce={() => window.nonce}>
|
|
240
249
|
<Provider baseUrl={BASE_PATH + "api/v1"}>
|
|
241
250
|
<BrowserRouter basename={BASE_PATH}>
|
|
242
251
|
<App />
|
|
@@ -267,8 +276,9 @@ import { createReactNativeAdapters } from "fastapi-rtk/react-native-adapters";
|
|
|
267
276
|
const rnAdapters = createReactNativeAdapters({
|
|
268
277
|
asyncStorage,
|
|
269
278
|
fileSystem,
|
|
270
|
-
sharing,
|
|
279
|
+
sharing, // optional
|
|
271
280
|
webBrowser,
|
|
281
|
+
oauthRedirectUrl: "myapp://oauth", // required for OAuth sign-in; one URL or a map per provider
|
|
272
282
|
});
|
|
273
283
|
|
|
274
284
|
<Provider baseUrl="https://api.example.com/api/v1" adapters={rnAdapters}>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "2.20.1"
|
|
@@ -10,7 +10,7 @@ The toolkit expects Mantine as the UI kit. Use `Stack`, `Group`, `Grid`, `Simple
|
|
|
10
10
|
pnpm add fastapi-rtk @mantine/core @mantine/dates @mantine/form @mantine/hooks dayjs react-router
|
|
11
11
|
```
|
|
12
12
|
|
|
13
|
-
Peer deps: the four `@mantine/*` packages (`^9.0.0`), `react` / `react-dom` (`^19.2.3`), `dayjs` (`^1.11.0`) and `react-router` (`^7.5.3 || ^8.0.0`).
|
|
13
|
+
Peer deps: the four `@mantine/*` packages (`^9.0.0`), `react` / `react-dom` (`^19.2.3`), `dayjs` (`^1.11.0`) and `react-router` (`^7.5.3 || ^8.0.0`), plus the optional `@jsonforms/core` / `@jsonforms/react` (`^3.6.0`), needed only when importing from `fastapi-rtk/jsonforms` (every other subpath, its types included, works without them). `fastapi-rtk` has no other dependencies: TanStack Query, zustand, i18next, react-i18next, yup, lodash, clsx, dompurify, mantine-form-yup-resolver, mantine-react-table (patched) and the JsonForms copy behind the built-in forms are bundled inside it. An app's own install of any of these is a separate copy that never sees the toolkit's: `Provider` always creates its own `QueryClient`, and only `rq` / `i18nr` / `useTranslation` imported from `fastapi-rtk` reach the Provider's client and i18next instance. Mantine >= 9.4.1 requires fastapi-rtk >= 2.8.0; older releases loop forever in the grid's `useColumns` ("Maximum update depth exceeded").
|
|
14
14
|
|
|
15
15
|
**Provider order is load-bearing.** Mantine must wrap the fastapi-rtk `Provider`, and the stylesheet order matters: Mantine CSS first, fastapi-rtk CSS last (RTK overrides).
|
|
16
16
|
|
|
@@ -147,7 +147,7 @@ await addEntry({ name: "x" }); // POST /{resource}
|
|
|
147
147
|
await updateEntry(id, { name: "y" }); // PUT /{resource}/{id}
|
|
148
148
|
```
|
|
149
149
|
|
|
150
|
-
**Option B, use the TanStack Query namespace `rq`.** `fastapi-rtk` re-exports `@tanstack/react-query` as `rq` (`export * as rq from '
|
|
150
|
+
**Option B, use the TanStack Query namespace `rq`.** `fastapi-rtk` re-exports its bundled `@tanstack/react-query` as `rq` (`export * as rq from './rq'` in `externals/src/index.ts`, surfaced by `core/src/index.ts:94`; import it from there rather than from `@tanstack/react-query`, whose separate copy cannot see the Provider's `QueryClient`; the sibling `mrt` namespace re-exports the bundled `mantine-react-table` the same way, with long-form aliases `reactQuery` / `mantineReactTable` at `core/src/index.ts:96`). The same namespaces, plus `ld` (lodash), `zs` (zustand), `yup` and `i18nr` (react-i18next), are importable from `fastapi-rtk` or `fastapi-rtk/externals`; importing them from `fastapi-rtk/api`, `/utils`, `/zustand` or `/contexts` is deprecated. Wrap a `useApi` action (or any toolkit-provided async function) in `rq.useQuery` / `rq.useMutation` so the result participates in the shared query cache (invalidation, refetch-on-focus, devtools). Never call raw `fetch` from the `queryFn` / `mutationFn`, since that re-introduces the exact problems `useCustomFetch` has.
|
|
151
151
|
|
|
152
152
|
```jsx
|
|
153
153
|
import { useApi, rq } from "fastapi-rtk";
|
|
@@ -403,7 +403,7 @@ const { t } = useTranslation(); // or: translation.t
|
|
|
403
403
|
<LanguageSelector />;
|
|
404
404
|
```
|
|
405
405
|
|
|
406
|
-
`useLang` reads/writes the selected language to localStorage. The translation function `t(key)` comes from
|
|
406
|
+
`useLang` reads/writes the selected language to localStorage. The translation function `t(key)` comes from the `useTranslation()` exported by `fastapi-rtk` (the bundled react-i18next's, which the Provider wires to its i18next instance, as it does `i18nr.Trans`; the one imported from `react-i18next` itself is a separate copy that never sees it) or via the `translation` field on `useLang()`. Source strings double as the English keys; a German dictionary ships built-in. Extend or override through the `Provider`'s `langProps` prop: `langProps.getI18nProps.translations` takes `{locale: {key: value}}`, `langProps.i18n` accepts a full i18next instance, and `langProps.MRTLocalization` overrides the grid's Mantine React Table strings.
|
|
407
407
|
|
|
408
408
|
## 13. Standard routes: `UserMenu`
|
|
409
409
|
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "2.20.0"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/agent_docs/adapters/agents-md/AGENTS.md
RENAMED
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/agent_docs/adapters/claude/skill.frontmatter
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/model_rest_api/services/__init__.py
RENAMED
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/model_rest_api/services/_add_service.py
RENAMED
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/model_rest_api/services/_bulk_service.py
RENAMED
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/model_rest_api/services/_delete_service.py
RENAMED
|
File without changes
|
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/model_rest_api/services/_edit_service.py
RENAMED
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/model_rest_api/services/_file_service.py
RENAMED
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/model_rest_api/services/_info_service.py
RENAMED
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/model_rest_api/services/_list_service.py
RENAMED
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/model_rest_api/services/_lookup_service.py
RENAMED
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/model_rest_api/services/_schema_service.py
RENAMED
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/api/model_rest_api/services/_show_service.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/sqla/extensions/audit/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/sqla/extensions/audit/_logger.py
RENAMED
|
File without changes
|
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/sqla/extensions/audit/audit.py
RENAMED
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/backends/sqla/extensions/audit/types.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/commands/agent/adapters/__init__.py
RENAMED
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/commands/agent/adapters/agents_md.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/commands/db/templates/fastapi/README
RENAMED
|
File without changes
|
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/cli/commands/db/templates/fastapi/env.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/lang/translations/de/LC_MESSAGES/messages.mo
RENAMED
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/lang/translations/de/LC_MESSAGES/messages.po
RENAMED
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/lang/translations/en/LC_MESSAGES/messages.mo
RENAMED
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/lang/translations/en/LC_MESSAGES/messages.po
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/security/sqla/security_manager/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/security/sqla/security_manager/_entities.py
RENAMED
|
File without changes
|
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/security/sqla/security_manager/_export.py
RENAMED
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/security/sqla/security_manager/_import.py
RENAMED
|
File without changes
|
|
File without changes
|
{fastapi_rtk-2.20.0 → fastapi_rtk-2.20.1}/fastapi_rtk/security/sqla/security_manager/_results.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|