workers-control 0.2.4__tar.gz → 0.2.5__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.
- {workers_control-0.2.4/src/workers_control.egg-info → workers_control-0.2.5}/PKG-INFO +3 -3
- {workers_control-0.2.4 → workers_control-0.2.5}/build_support/backend.py +7 -1
- {workers_control-0.2.4 → workers_control-0.2.5}/pyproject.toml +8 -14
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/get_statistics.py +5 -1
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/query_offers.py +2 -2
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/show_payout_factor_details.py +9 -5
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/repositories.py +1 -1
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/db/models.py +1 -1
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/db/repositories.py +37 -28
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/class_based_view.py +3 -3
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/dependency_injection.py +5 -4
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/flask_colors.py +5 -5
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/flask_session.py +2 -2
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/mail_service/__init__.py +6 -6
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/plotter.py +76 -22
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/routes/auth/routes.py +7 -7
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/routes/company/blueprint.py +3 -1
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/routes/company/routes.py +5 -5
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/routes/member/blueprint.py +3 -1
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/routes/member/routes.py +7 -5
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/routes/plots/routes.py +2 -1
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/routes/user/blueprint.py +2 -2
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/routes/user/routes.py +3 -2
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/user/statistics.html +32 -30
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/translations/de/LC_MESSAGES/messages.po +194 -194
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/translations/en/LC_MESSAGES/messages.po +189 -189
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/translations/es/LC_MESSAGES/messages.po +194 -194
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/translations/messages.pot +150 -189
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/request_cooperation_view.py +5 -2
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/signup_member_view.py +2 -2
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/formatters/datetime_formatter.py +3 -1
- workers_control-0.2.5/src/workers_control/web/www/presenters/__init__.py +0 -0
- workers_control-0.2.5/src/workers_control/web/www/presenters/accept_cooperation_request_presenter.py +57 -0
- workers_control-0.2.5/src/workers_control/web/www/presenters/deny_cooperation_presenter.py +55 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/get_plan_details_presenter.py +1 -1
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/get_statistics_presenter.py +13 -20
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/show_my_plans_presenter.py +7 -1
- {workers_control-0.2.4 → workers_control-0.2.5/src/workers_control.egg-info}/PKG-INFO +3 -3
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control.egg-info/SOURCES.txt +0 -3
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control.egg-info/requires.txt +2 -2
- workers_control-0.2.4/src/workers_control/core/interactors/preview_private_consumption.py +0 -46
- workers_control-0.2.4/src/workers_control/flask/views/__init__.py +0 -25
- workers_control-0.2.4/src/workers_control/web/www/controllers/approve_plan_controller.py +0 -10
- workers_control-0.2.4/src/workers_control/web/www/controllers/reject_plan_controller.py +0 -10
- workers_control-0.2.4/src/workers_control/web/www/presenters/accept_cooperation_request_presenter.py +0 -59
- workers_control-0.2.4/src/workers_control/web/www/presenters/deny_cooperation_presenter.py +0 -58
- {workers_control-0.2.4 → workers_control-0.2.5}/LICENSE +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/MANIFEST.in +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/README.rst +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/build_support/__init__.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/build_support/babel.cfg +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/build_support/project.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/build_support/translations.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/setup.cfg +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/__init__.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/accountant_notifications.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/anonymization.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/control_thresholds.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/datetime_service.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/decimal.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/email.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/email_notifications.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/injector.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/__init__.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/accept_cooperation.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/accept_coordination_transfer.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/answer_company_work_invite.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/approve_plan.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/cancel_cooperation_solicitation.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/change_user_email_address.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/change_user_name.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/change_user_password.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/confirm_company.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/confirm_member.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/create_basic_service.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/create_cooperation.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/create_draft_from_plan.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/create_plan_draft.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/deactivate_basic_service.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/delete_draft.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/deny_cooperation.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/edit_draft.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/end_cooperation.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/file_plan_with_accounting.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/get_accountant_dashboard.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/get_company_dashboard.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/get_company_summary.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/get_coop_summary.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/get_coordination_transfer_request_details.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/get_draft_details.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/get_member_dashboard.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/get_plan_details.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/get_plan_for_review.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/get_private_consumption_details.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/get_productive_consumption_details.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/get_user_account_details.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/hide_plan.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/invite_worker_to_company.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/list_active_plans_of_company.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/list_all_cooperations.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/list_available_languages.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/list_basic_services_of_worker.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/list_coordinations_of_company.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/list_coordinations_of_cooperation.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/list_my_cooperating_plans.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/list_pending_work_invites.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/list_plans_with_pending_review.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/list_registered_hours_worked.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/list_transfers.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/list_workers.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/log_in_accountant.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/log_in_company.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/log_in_member.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/query_companies.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/query_company_consumptions.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/query_private_consumptions.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/register_accountant.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/register_company.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/register_hours_worked.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/register_member.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/register_private_consumption.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/register_private_consumption_of_basic_service.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/register_productive_consumption.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/register_productive_consumption_of_basic_service.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/reject_plan.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/remove_worker_from_company.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/request_cooperation.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/request_coordination_transfer.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/request_email_address_change.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/request_user_password_reset.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/resend_confirmation_mail.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/resend_work_invite.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/review_registered_consumptions.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/revoke_plan_filing.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/select_private_consumption.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/select_private_consumption_of_basic_service.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/select_productive_consumption.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/select_productive_consumption_of_basic_service.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/send_accountant_registration_token.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/show_a_account_details.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/show_basic_service.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/show_company_accounts.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/show_company_cooperations.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/show_company_work_invite_details.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/show_member_account_details.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/show_my_plans.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/show_p_account_details.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/show_prd_account_details.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/show_psf_account_details.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/show_r_account_details.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/password_hasher.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/records.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/services/__init__.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/services/account_details.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/services/compensation_transfers.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/services/payout_factor.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/services/price_calculator.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/services/psf_balance.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/transfers.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/db/__init__.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/db/db.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/db/migrations/alembic.ini +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/db/migrations/env.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/db/migrations/script.py.mako +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/db/migrations/versions/17911726c134_add_deactivated_on_to_basic_service.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/db/migrations/versions/399a221ebea4_add_private_consumption_of_basic_.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/db/migrations/versions/480a749375de_drop_transaction_table.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/db/migrations/versions/4fd90069eb82_remove_social_accounting_account.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/db/migrations/versions/686f2af1cbfe_add_basic_service_transfer_types.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/db/migrations/versions/68ac7ccf6086_create_table_emailoutbox.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/db/migrations/versions/7a4d0412c2a7_add_productive_consumption_of_basic_.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/db/migrations/versions/a3e7b2c1d4f5_use_native_uuid_column_types.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/db/migrations/versions/b40539bf0293_add_basic_service_table.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/db/migrations/versions/c5e8a9d0f1b2_add_taxes_to_basic_service_consumptions.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/db/migrations/versions/c9f2e1a4b8d7_add_outbox_status_columns.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/db/migrations/versions/f4a9c2e1b6d3_replace_plan_review_with_plan_rejection.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/email_sending_worker/__init__.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/email_sending_worker/interface.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/email_sending_worker/smtp_service.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/email_sending_worker/worker.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/__init__.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/babel.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/commands.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/config/__init__.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/config/checks.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/config/loader.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/config/options.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/config/production_defaults.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/context_processors.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/control_thresholds.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/database.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/datetime.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/email_configuration.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/extensions.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/filters.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/flask_request.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/forms.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/language_repository.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/logging_config.json +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/mail_sender/__init__.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/mail_service/interface.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/mail_service/mail_storage_service.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/notifications.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/password_hasher.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/payout_factor.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/profiling.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/routes/__init__.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/routes/accountant/__init__.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/routes/accountant/blueprint.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/routes/accountant/routes.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/routes/auth/__init__.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/routes/company/__init__.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/routes/healthcheck/__init__.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/routes/healthcheck/blueprint.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/routes/member/__init__.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/routes/plots/__init__.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/routes/user/__init__.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/static/bulma.css +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/static/colors.css +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/static/favicon.ico +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/static/main.css +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/static/main.js +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/static/main.module.js +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/accountant/dashboard.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/accountant/notification-about-new-plan.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/accountant/plans-to-review-list.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/accountant/review_plan.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/auth/accountant_invitation.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/auth/activate.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/auth/help.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/auth/login_accountant.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/auth/login_company.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/auth/login_member.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/auth/password_reset_confirmation_email.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/auth/request_password_reset.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/auth/reset_password.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/auth/reset_password_email.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/auth/reset_password_invalid.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/auth/signup_accountant.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/auth/signup_company.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/auth/signup_member.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/auth/start.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/auth/unconfirmed_company.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/auth/unconfirmed_member.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/base.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/company/consumption_details.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/company/create_cooperation.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/company/create_draft.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/company/dashboard.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/company/draft_details.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/company/invite_worker_to_company.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/company/list_pending_work_invites.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/company/list_registered_hours_worked.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/company/my_consumptions.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/company/my_cooperations.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/company/my_plans.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/company/register_hours_worked.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/company/register_productive_consumption.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/company/register_productive_consumption_of_basic_service.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/company/rejected_plan_notification.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/company/remove_worker_from_company.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/company/request_cooperation.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/company/request_coordination_transfer.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/company/review_registered_consumptions.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/company/show_coordination_transfer_request.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/at.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/basket-shopping.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/book.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/calendar.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/chart-line.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/chart-pie.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/check.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/copy.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/credit-card.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/edit.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/envelope.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/exchange-alt.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/exclamation-triangle.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/eye-slashed.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/eye.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/file-circle-plus.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/file.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/hands-helping.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/hourglass.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/industry.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/info-circle.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/key.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/list.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/oil-can.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/redo.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/square-arrow-up-right.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/times.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/trash.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/user.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/icons/users.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/macros/company_summary.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/macros/copy_toggle.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/macros/draft_form.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/macros/form_field_error.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/macros/language_selection.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/macros/navbar.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/macros/navigation.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/macros/pagination.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/macros/plan_details.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/macros/show_notifications.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/macros/tooltips.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/macros/transfers.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/member/basic_services.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/member/consumption_details.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/member/consumptions.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/member/create_basic_service.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/member/dashboard.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/member/my_account.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/member/notification-about-work-invitation.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/member/register_private_consumption.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/member/register_private_consumption_of_basic_service.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/member/show_company_work_invite_details.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/user/account_details.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/user/account_psf.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/user/change_user_name.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/user/company_account_a.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/user/company_account_p.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/user/company_account_prd.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/user/company_account_r.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/user/company_accounts.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/user/company_summary.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/user/confirm_email_address_change.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/user/coop_summary.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/user/http_error.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/user/list_all_cooperations.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/user/list_coordinations_of_cooperation.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/user/list_transfers.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/user/name_change_confirmation.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/user/plan_details.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/user/query_companies.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/user/query_offers.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/user/request_email_address_change.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/user/request_email_change_notification.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/user/request_email_change_warning.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/user/show_basic_service.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/templates/user/show_payout_factor_details.html +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/text_renderer.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/token.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/translator.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/types.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/url_index.py +0 -0
- {workers_control-0.2.4/src/workers_control/web → workers_control-0.2.5/src/workers_control/flask/views}/__init__.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/accept_cooperation_request_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/accountant_invitation_email_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/cancel_cooperation_request_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/change_email_address_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/change_user_name_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/company_dashboard_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/company_work_invite_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/coop_summary_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/create_basic_service_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/create_cooperation_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/create_draft_from_plan_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/create_draft_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/deactivate_basic_service_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/delete_draft_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/deny_cooperation_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/draft_details_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/end_cooperation_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/end_plan_cooperation_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/file_plan_with_accounting_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/get_plan_details_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/get_private_consumption_details.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/get_productive_consumption_details.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/get_statistics_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/healthcheck_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/hide_plan_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/http_error_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/invite_worker_to_company.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/list_all_cooperations_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/list_basic_services_of_worker_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/list_coordinators_of_cooperation_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/list_pending_work_invites_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/list_registered_hours_worked_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/list_transfers.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/log_in_accountant_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/log_in_company_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/log_in_member_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/member_dashboard_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/query_companies.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/query_company_consumptions_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/query_offers.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/query_private_consumptions.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/register_hours_worked_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/register_private_consumption.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/register_private_consumption_of_basic_service_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/register_productive_consumption.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/register_productive_consumption_of_basic_service_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/remove_worker_from_company_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/request_coordination_transfer_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/request_email_address_change_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/request_password_reset_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/resend_confirmation_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/reset_password_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/review_plan_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/review_registered_consumptions_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/revoke_plan_filing_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/show_a_account_details_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/show_basic_service_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/show_company_accounts_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/show_coordination_transfer_request_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/show_member_account_details_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/show_my_cooperations_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/show_my_plans_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/show_p_account_details_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/show_payout_factor_details_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/show_prd_account_details_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/show_psf_account_details_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/show_r_account_details_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/signup_accountant_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/views/signup_company_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/wsgi.py +0 -0
- {workers_control-0.2.4/src/workers_control/web/formatters → workers_control-0.2.5/src/workers_control/web}/__init__.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/colors.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/email/__init__.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/email/accountant_invitation_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/email/company_notifier.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/email/cooperation_request_email_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/email/email_change_confirmation_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/email/email_change_warning_view.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/email/email_sender.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/email/invite_worker_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/email/name_change_confirmation_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/email/notify_about_worker_removal_from_company_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/email/notify_accountant_about_new_plan_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/email/registration_email_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/email/request_coordination_transfer_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/email/reset_password_email_presenter.py +0 -0
- {workers_control-0.2.4/src/workers_control/web/www → workers_control-0.2.5/src/workers_control/web/formatters}/__init__.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/forms/__init__.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/forms/fields.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/forms/formfield_parsers.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/json.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/language_service.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/malformed_input_data.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/notification.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/pagination.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/request.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/session.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/text_renderer.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/token.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/translator.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/url_index.py +0 -0
- {workers_control-0.2.4/src/workers_control/web/www/controllers → workers_control-0.2.5/src/workers_control/web/www}/__init__.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/authentication.py +0 -0
- {workers_control-0.2.4/src/workers_control/web/www/presenters → workers_control-0.2.5/src/workers_control/web/www/controllers}/__init__.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/accept_coordination_transfer_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/answer_company_work_invite_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/change_user_email_address_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/change_user_name_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/confirm_company_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/confirm_member_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/create_basic_service_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/create_draft_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/create_draft_from_plan_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/deactivate_basic_service_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/delete_draft_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/draft_form_validator.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/edit_draft_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/end_cooperation_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/file_plan_with_accounting_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/get_private_consumption_details_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/get_productive_consumption_details_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/invite_worker_to_company_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/list_basic_services_of_worker_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/list_pending_work_invites_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/list_registered_hours_worked_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/list_transfers_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/list_workers_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/log_in_accountant_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/query_companies_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/query_offers_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/query_private_consumptions_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/register_accountant_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/register_company_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/register_hours_worked_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/register_member_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/register_private_consumption_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/register_private_consumption_form_validator.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/register_private_consumption_of_basic_service_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/register_private_consumption_of_basic_service_form_validator.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/register_productive_consumption_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/register_productive_consumption_of_basic_service_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/register_productive_consumption_of_basic_service_form_validator.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/remove_worker_from_company_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/request_cooperation_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/request_coordination_transfer_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/request_email_address_change_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/request_password_reset_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/resend_work_invite_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/reset_password_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/review_plan_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/review_registered_consumptions_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/revoke_plan_filing_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/select_private_consumption_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/select_private_consumption_of_basic_service_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/select_productive_consumption_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/select_productive_consumption_of_basic_service_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/show_a_account_details_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/show_basic_service_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/show_company_accounts_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/show_company_work_invite_details_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/show_p_account_details_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/show_prd_account_details_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/show_r_account_details_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/controllers/user_account_details_controller.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/navbar.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/accept_coordination_transfer_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/answer_company_work_invite_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/approve_plan_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/cancel_cooperation_request_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/change_user_email_address_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/change_user_name_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/company_consumptions_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/create_basic_service_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/create_cooperation_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/create_draft_from_plan_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/create_draft_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/deactivate_basic_service_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/delete_draft_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/edit_draft_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/end_cooperation_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/end_plan_cooperation_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/file_plan_with_accounting_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/get_accountant_dashboard_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/get_company_dashboard_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/get_company_summary_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/get_coop_summary_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/get_coordination_transfer_request_details_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/get_draft_details_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/get_member_dashboard_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/get_plan_for_review_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/hide_plan_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/invite_worker_to_company_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/list_all_cooperations_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/list_available_languages_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/list_basic_services_of_worker_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/list_coordinations_of_cooperation_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/list_pending_work_invites_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/list_plans_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/list_plans_with_pending_review_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/list_registered_hours_worked_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/list_transfers_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/list_workers_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/log_in_accountant_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/log_in_company_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/log_in_member_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/private_consumption_details_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/private_consumptions_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/productive_consumption_details_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/query_companies_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/query_offers_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/register_accountant_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/register_company_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/register_hours_worked_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/register_member_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/register_private_consumption_of_basic_service_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/register_private_consumption_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/register_productive_consumption_of_basic_service_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/register_productive_consumption_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/reject_plan_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/remove_worker_from_company_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/request_cooperation_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/request_coordination_transfer_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/request_email_address_change_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/request_password_reset_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/resend_work_invite_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/reset_password_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/review_registered_consumptions_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/revoke_plan_filing_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/select_private_consumption_of_basic_service_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/select_private_consumption_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/select_productive_consumption_of_basic_service_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/select_productive_consumption_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/show_a_account_details_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/show_basic_service_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/show_company_accounts_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/show_company_work_invite_details_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/show_member_account_details_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/show_my_cooperations_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/show_p_account_details_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/show_payout_factor_details_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/show_prd_account_details_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/show_psf_account_details_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/show_r_account_details_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/transfers.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/presenters/user_account_details_presenter.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/web/www/response.py +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control.egg-info/dependency_links.txt +0 -0
- {workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: workers-control
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.5
|
|
4
4
|
Summary: A flask app for labour time accounting.
|
|
5
5
|
License-Expression: AGPL-3.0-or-later
|
|
6
6
|
Project-URL: Source, https://github.com/ida-arbeitszeit/workers-control
|
|
@@ -15,12 +15,12 @@ Description-Content-Type: text/x-rst
|
|
|
15
15
|
License-File: LICENSE
|
|
16
16
|
Requires-Dist: alembic==1.18.1
|
|
17
17
|
Requires-Dist: email-validator==2.3.0
|
|
18
|
-
Requires-Dist: flask
|
|
18
|
+
Requires-Dist: flask<=3.1.3,>=3.1.2
|
|
19
19
|
Requires-Dist: flask-babel==4.0.0
|
|
20
20
|
Requires-Dist: flask-talisman==1.1.0
|
|
21
21
|
Requires-Dist: flask-login==0.6.3
|
|
22
22
|
Requires-Dist: flask-wtf==1.2.2
|
|
23
|
-
Requires-Dist: matplotlib<=3.11.
|
|
23
|
+
Requires-Dist: matplotlib<=3.11.1,>=3.10.9
|
|
24
24
|
Provides-Extra: profiling
|
|
25
25
|
Requires-Dist: flask_profiler; extra == "profiling"
|
|
26
26
|
Dynamic: license-file
|
|
@@ -1,9 +1,15 @@
|
|
|
1
|
+
from typing import Any, Dict, Optional
|
|
2
|
+
|
|
1
3
|
from setuptools import build_meta as _orig
|
|
2
4
|
from setuptools.build_meta import * # noqa: F403,F401
|
|
3
5
|
|
|
4
6
|
from build_support import translations
|
|
5
7
|
|
|
6
8
|
|
|
7
|
-
def build_wheel(
|
|
9
|
+
def build_wheel( # type: ignore[no-redef]
|
|
10
|
+
wheel_directory: str,
|
|
11
|
+
config_settings: Optional[Dict[str, Any]] = None,
|
|
12
|
+
metadata_directory: Optional[str] = None,
|
|
13
|
+
) -> str:
|
|
8
14
|
translations.compile_messages()
|
|
9
15
|
return _orig.build_wheel(wheel_directory, config_settings, metadata_directory)
|
|
@@ -5,7 +5,7 @@ backend-path = ["."]
|
|
|
5
5
|
|
|
6
6
|
[project]
|
|
7
7
|
name = "workers-control"
|
|
8
|
-
version = "0.2.
|
|
8
|
+
version = "0.2.5"
|
|
9
9
|
description = "A flask app for labour time accounting."
|
|
10
10
|
license = "AGPL-3.0-or-later"
|
|
11
11
|
requires-python = ">=3.13"
|
|
@@ -21,12 +21,12 @@ dependencies = [
|
|
|
21
21
|
# Pin to exact versions, if possible.
|
|
22
22
|
"alembic==1.18.1",
|
|
23
23
|
"email-validator==2.3.0",
|
|
24
|
-
"flask
|
|
24
|
+
"flask>=3.1.2, <=3.1.3", # different versions in stable/unstable nixpkgs
|
|
25
25
|
"flask-babel==4.0.0",
|
|
26
26
|
"flask-talisman==1.1.0",
|
|
27
27
|
"flask-login==0.6.3",
|
|
28
28
|
"flask-wtf==1.2.2",
|
|
29
|
-
"matplotlib>=3.10.9, <=3.11.
|
|
29
|
+
"matplotlib>=3.10.9, <=3.11.1" # different versions in stable/unstable nixpkgs
|
|
30
30
|
]
|
|
31
31
|
|
|
32
32
|
[project.optional-dependencies]
|
|
@@ -68,20 +68,14 @@ exclude = '''
|
|
|
68
68
|
'''
|
|
69
69
|
disable_error_code = "type-abstract"
|
|
70
70
|
explicit_package_bases = true
|
|
71
|
+
disallow_untyped_defs = true
|
|
71
72
|
|
|
72
73
|
[[tool.mypy.overrides]]
|
|
73
74
|
module = [
|
|
74
|
-
"
|
|
75
|
-
"
|
|
76
|
-
"
|
|
77
|
-
|
|
78
|
-
allow_untyped_defs = false
|
|
79
|
-
|
|
80
|
-
[[tool.mypy.overrides]]
|
|
81
|
-
module = [
|
|
82
|
-
"flask_babel",
|
|
83
|
-
"flask_login",
|
|
84
|
-
"flask_wtf",
|
|
75
|
+
"flask_babel.*",
|
|
76
|
+
"flask_login.*",
|
|
77
|
+
"flask_talisman.*",
|
|
78
|
+
"flask_wtf.*",
|
|
85
79
|
"parameterized.*",
|
|
86
80
|
"wtforms.*",
|
|
87
81
|
]
|
|
@@ -19,6 +19,7 @@ class StatisticsResponse:
|
|
|
19
19
|
planned_work: Decimal
|
|
20
20
|
planned_resources: Decimal
|
|
21
21
|
planned_means: Decimal
|
|
22
|
+
public_sector_labour: Decimal
|
|
22
23
|
payout_factor: Decimal
|
|
23
24
|
psf_balance: Decimal
|
|
24
25
|
|
|
@@ -39,13 +40,15 @@ class GetStatisticsInteractor:
|
|
|
39
40
|
.that_will_expire_after(now)
|
|
40
41
|
.that_were_approved_before(now)
|
|
41
42
|
)
|
|
43
|
+
active_public_plans = active_plans.that_are_public()
|
|
42
44
|
planning_statistics = active_plans.get_statistics()
|
|
45
|
+
public_planning_statistics = active_public_plans.get_statistics()
|
|
43
46
|
return StatisticsResponse(
|
|
44
47
|
registered_companies_count=len(self.database.get_companies()),
|
|
45
48
|
registered_members_count=len(self.database.get_members()),
|
|
46
49
|
cooperations_count=len(self.database.get_cooperations()),
|
|
47
50
|
active_plans_count=len(active_plans),
|
|
48
|
-
active_plans_public_count=len(
|
|
51
|
+
active_plans_public_count=len(active_public_plans),
|
|
49
52
|
active_basic_services_count=len(
|
|
50
53
|
self.database.get_basic_services().that_are_active()
|
|
51
54
|
),
|
|
@@ -53,6 +56,7 @@ class GetStatisticsInteractor:
|
|
|
53
56
|
planned_work=planning_statistics.total_planned_costs.labour_cost,
|
|
54
57
|
planned_resources=planning_statistics.total_planned_costs.resource_cost,
|
|
55
58
|
planned_means=planning_statistics.total_planned_costs.means_cost,
|
|
59
|
+
public_sector_labour=public_planning_statistics.total_planned_costs.labour_cost,
|
|
56
60
|
payout_factor=fic,
|
|
57
61
|
psf_balance=psf_balance,
|
|
58
62
|
)
|
{workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/core/interactors/query_offers.py
RENAMED
|
@@ -4,7 +4,7 @@ import enum
|
|
|
4
4
|
from dataclasses import dataclass
|
|
5
5
|
from datetime import datetime
|
|
6
6
|
from decimal import Decimal
|
|
7
|
-
from typing import List, Optional
|
|
7
|
+
from typing import Any, Callable, List, Optional
|
|
8
8
|
from uuid import UUID
|
|
9
9
|
|
|
10
10
|
from workers_control.core import records
|
|
@@ -157,7 +157,7 @@ class QueryOffersInteractor:
|
|
|
157
157
|
return basic_services.ordered_by_provider_name()
|
|
158
158
|
return basic_services.ordered_by_creation_date(ascending=False)
|
|
159
159
|
|
|
160
|
-
def _sort_key(self, sort_by: OfferSorting):
|
|
160
|
+
def _sort_key(self, sort_by: OfferSorting) -> Callable[[QueriedOffer], Any]:
|
|
161
161
|
if sort_by == OfferSorting.by_provider_name:
|
|
162
162
|
return lambda offer: offer.provider_name.lower()
|
|
163
163
|
return lambda offer: -offer.created_or_approved_on.timestamp()
|
|
@@ -21,6 +21,8 @@ class Response:
|
|
|
21
21
|
window_size_in_days: int
|
|
22
22
|
window_start: datetime
|
|
23
23
|
window_end: datetime
|
|
24
|
+
display_start: datetime
|
|
25
|
+
display_end: datetime
|
|
24
26
|
plans: list[PlanData]
|
|
25
27
|
basic_service_consumptions: list[BasicServiceConsumptionData]
|
|
26
28
|
|
|
@@ -54,7 +56,9 @@ class ShowPayoutFactorDetailsInteractor:
|
|
|
54
56
|
window_size_in_days = self.payout_factor_config.get_window_length_in_days()
|
|
55
57
|
window_start = now - timedelta(days=window_size_in_days / 2)
|
|
56
58
|
window_end = now + timedelta(days=window_size_in_days / 2)
|
|
57
|
-
|
|
59
|
+
display_start = now - timedelta(days=window_size_in_days)
|
|
60
|
+
display_end = now + timedelta(days=window_size_in_days)
|
|
61
|
+
plan_records = self._get_plans_sorted(display_start)
|
|
58
62
|
|
|
59
63
|
plans = [
|
|
60
64
|
self._create_plan_data(
|
|
@@ -74,17 +78,17 @@ class ShowPayoutFactorDetailsInteractor:
|
|
|
74
78
|
window_size_in_days=window_size_in_days,
|
|
75
79
|
window_start=window_start,
|
|
76
80
|
window_end=window_end,
|
|
81
|
+
display_start=display_start,
|
|
82
|
+
display_end=display_end,
|
|
77
83
|
plans=plans,
|
|
78
84
|
basic_service_consumptions=basic_service_consumptions,
|
|
79
85
|
)
|
|
80
86
|
|
|
81
|
-
def _get_plans_sorted(
|
|
82
|
-
self, now: datetime, window_size_in_days: int
|
|
83
|
-
) -> list[records.Plan]:
|
|
87
|
+
def _get_plans_sorted(self, display_start: datetime) -> list[records.Plan]:
|
|
84
88
|
relevant_plans = list(
|
|
85
89
|
self.database_gateway.get_plans()
|
|
86
90
|
.that_are_approved()
|
|
87
|
-
.that_will_expire_after(
|
|
91
|
+
.that_will_expire_after(display_start)
|
|
88
92
|
)
|
|
89
93
|
plans_sorted = sorted(
|
|
90
94
|
relevant_plans,
|
|
@@ -527,7 +527,7 @@ class AccountCredentialsUpdate(DatabaseUpdate, Protocol):
|
|
|
527
527
|
|
|
528
528
|
|
|
529
529
|
class PasswordResetRequestResult(QueryResult[records.PasswordResetRequest], Protocol):
|
|
530
|
-
def with_email_address(self, email_address) -> Self: ...
|
|
530
|
+
def with_email_address(self, email_address: str) -> Self: ...
|
|
531
531
|
|
|
532
532
|
def with_creation_date_after(self, creation_threshold: datetime) -> Self: ...
|
|
533
533
|
|
|
@@ -136,7 +136,7 @@ class Company(Base):
|
|
|
136
136
|
a_account: Mapped[UUID] = mapped_column(Uuid, ForeignKey("account.id"))
|
|
137
137
|
prd_account: Mapped[UUID] = mapped_column(Uuid, ForeignKey("account.id"))
|
|
138
138
|
|
|
139
|
-
def __repr__(self):
|
|
139
|
+
def __repr__(self) -> str:
|
|
140
140
|
return "<Company(name='%s')>" % (self.name,)
|
|
141
141
|
|
|
142
142
|
workers = relationship(
|
|
@@ -641,7 +641,7 @@ class MemberQueryResult(SqlQueryResult[records.Member]):
|
|
|
641
641
|
def joined_with_email_address(
|
|
642
642
|
self,
|
|
643
643
|
) -> SqlQueryResult[Tuple[records.Member, records.EmailAddress]]:
|
|
644
|
-
def mapper(row):
|
|
644
|
+
def mapper(row: Any) -> Tuple[records.Member, records.EmailAddress]:
|
|
645
645
|
member_orm, email_orm = row
|
|
646
646
|
return (
|
|
647
647
|
DatabaseGatewayImpl.member_from_orm(member_orm),
|
|
@@ -768,7 +768,7 @@ class CompanyQueryResult(SqlQueryResult[records.Company]):
|
|
|
768
768
|
def joined_with_email_address(
|
|
769
769
|
self,
|
|
770
770
|
) -> SqlQueryResult[Tuple[records.Company, records.EmailAddress]]:
|
|
771
|
-
def mapper(row):
|
|
771
|
+
def mapper(row: Any) -> Tuple[records.Company, records.EmailAddress]:
|
|
772
772
|
company_orm, email_orm = row
|
|
773
773
|
return (
|
|
774
774
|
DatabaseGatewayImpl.company_from_orm(company_orm),
|
|
@@ -884,6 +884,18 @@ class AccountantUpdate:
|
|
|
884
884
|
return rowcount
|
|
885
885
|
|
|
886
886
|
|
|
887
|
+
class AccountOwnerAliases:
|
|
888
|
+
"""Aliases for all ORM models that can own an account. One instance
|
|
889
|
+
is needed per side (debtor, creditor) of a transfer query.
|
|
890
|
+
"""
|
|
891
|
+
|
|
892
|
+
def __init__(self) -> None:
|
|
893
|
+
self.member = aliased(models.Member)
|
|
894
|
+
self.company = aliased(models.Company)
|
|
895
|
+
self.social_accounting = aliased(models.SocialAccounting)
|
|
896
|
+
self.cooperation = aliased(models.Cooperation)
|
|
897
|
+
|
|
898
|
+
|
|
887
899
|
class TransferQueryResult(SqlQueryResult[records.Transfer]):
|
|
888
900
|
def where_account_is_debtor(self, *account: UUID) -> Self:
|
|
889
901
|
accounts = list(account)
|
|
@@ -1092,14 +1104,7 @@ class TransferQueryResult(SqlQueryResult[records.Transfer]):
|
|
|
1092
1104
|
db=self.db,
|
|
1093
1105
|
)
|
|
1094
1106
|
|
|
1095
|
-
def _create_account_owner_aliases(self):
|
|
1096
|
-
class AccountOwnerAliases:
|
|
1097
|
-
def __init__(self):
|
|
1098
|
-
self.member = aliased(models.Member)
|
|
1099
|
-
self.company = aliased(models.Company)
|
|
1100
|
-
self.social_accounting = aliased(models.SocialAccounting)
|
|
1101
|
-
self.cooperation = aliased(models.Cooperation)
|
|
1102
|
-
|
|
1107
|
+
def _create_account_owner_aliases(self) -> AccountOwnerAliases:
|
|
1103
1108
|
return AccountOwnerAliases()
|
|
1104
1109
|
|
|
1105
1110
|
@classmethod
|
|
@@ -1136,7 +1141,11 @@ class TransferQueryResult(SqlQueryResult[records.Transfer]):
|
|
|
1136
1141
|
|
|
1137
1142
|
@classmethod
|
|
1138
1143
|
def _determine_account_owner(
|
|
1139
|
-
cls,
|
|
1144
|
+
cls,
|
|
1145
|
+
member: Optional[Member],
|
|
1146
|
+
company: Optional[Company],
|
|
1147
|
+
social_accounting: Optional[SocialAccounting],
|
|
1148
|
+
cooperation: Optional[models.Cooperation],
|
|
1140
1149
|
) -> records.AccountOwner:
|
|
1141
1150
|
if member:
|
|
1142
1151
|
return DatabaseGatewayImpl.member_from_orm(member)
|
|
@@ -1312,7 +1321,7 @@ class ProductiveConsumptionResult(SqlQueryResult[records.ProductiveConsumption])
|
|
|
1312
1321
|
Tuple[records.ProductiveConsumption, records.Transfer, records.Plan]
|
|
1313
1322
|
]:
|
|
1314
1323
|
def mapper(
|
|
1315
|
-
orm,
|
|
1324
|
+
orm: Any,
|
|
1316
1325
|
) -> Tuple[records.ProductiveConsumption, records.Transfer, records.Plan]:
|
|
1317
1326
|
consumption_orm, transfer_orm, plan_orm = orm
|
|
1318
1327
|
return (
|
|
@@ -1339,7 +1348,7 @@ class ProductiveConsumptionResult(SqlQueryResult[records.ProductiveConsumption])
|
|
|
1339
1348
|
self,
|
|
1340
1349
|
) -> SqlQueryResult[Tuple[records.ProductiveConsumption, records.Transfer]]:
|
|
1341
1350
|
def mapper(
|
|
1342
|
-
orm,
|
|
1351
|
+
orm: Any,
|
|
1343
1352
|
) -> Tuple[records.ProductiveConsumption, records.Transfer]:
|
|
1344
1353
|
consumption_orm, transfer_orm = orm
|
|
1345
1354
|
return (
|
|
@@ -1364,7 +1373,7 @@ class ProductiveConsumptionResult(SqlQueryResult[records.ProductiveConsumption])
|
|
|
1364
1373
|
Tuple[records.ProductiveConsumption, records.Transfer, records.Company]
|
|
1365
1374
|
]:
|
|
1366
1375
|
def mapper(
|
|
1367
|
-
orm,
|
|
1376
|
+
orm: Any,
|
|
1368
1377
|
) -> Tuple[records.ProductiveConsumption, records.Transfer, records.Company]:
|
|
1369
1378
|
consumption_orm, transfer_orm, provider_orm = orm
|
|
1370
1379
|
return (
|
|
@@ -1400,7 +1409,7 @@ class ProductiveConsumptionResult(SqlQueryResult[records.ProductiveConsumption])
|
|
|
1400
1409
|
]
|
|
1401
1410
|
]:
|
|
1402
1411
|
def mapper(
|
|
1403
|
-
orm,
|
|
1412
|
+
orm: Any,
|
|
1404
1413
|
) -> Tuple[
|
|
1405
1414
|
records.ProductiveConsumption,
|
|
1406
1415
|
records.Transfer,
|
|
@@ -1499,7 +1508,7 @@ class PrivateConsumptionResult(SqlQueryResult[records.PrivateConsumption]):
|
|
|
1499
1508
|
Tuple[records.PrivateConsumption, records.Transfer, records.Plan]
|
|
1500
1509
|
]:
|
|
1501
1510
|
def mapper(
|
|
1502
|
-
orm,
|
|
1511
|
+
orm: Any,
|
|
1503
1512
|
) -> Tuple[records.PrivateConsumption, records.Transfer, records.Plan]:
|
|
1504
1513
|
consumption_orm, transfer_orm, plan_orm = orm
|
|
1505
1514
|
return (
|
|
@@ -1533,7 +1542,7 @@ class PrivateConsumptionResult(SqlQueryResult[records.PrivateConsumption]):
|
|
|
1533
1542
|
]
|
|
1534
1543
|
]:
|
|
1535
1544
|
def mapper(
|
|
1536
|
-
orm,
|
|
1545
|
+
orm: Any,
|
|
1537
1546
|
) -> Tuple[
|
|
1538
1547
|
records.PrivateConsumption,
|
|
1539
1548
|
records.Transfer,
|
|
@@ -1597,7 +1606,7 @@ class PrivateConsumptionOfBasicServiceResult(
|
|
|
1597
1606
|
Tuple[records.PrivateConsumptionOfBasicService, records.Transfer]
|
|
1598
1607
|
]:
|
|
1599
1608
|
def mapper(
|
|
1600
|
-
orm,
|
|
1609
|
+
orm: Any,
|
|
1601
1610
|
) -> Tuple[records.PrivateConsumptionOfBasicService, records.Transfer]:
|
|
1602
1611
|
consumption_orm, transfer_orm = orm
|
|
1603
1612
|
return (
|
|
@@ -1628,7 +1637,7 @@ class PrivateConsumptionOfBasicServiceResult(
|
|
|
1628
1637
|
]
|
|
1629
1638
|
]:
|
|
1630
1639
|
def mapper(
|
|
1631
|
-
orm,
|
|
1640
|
+
orm: Any,
|
|
1632
1641
|
) -> Tuple[
|
|
1633
1642
|
records.PrivateConsumptionOfBasicService,
|
|
1634
1643
|
records.Transfer,
|
|
@@ -1691,7 +1700,7 @@ class ProductiveConsumptionOfBasicServiceResult(
|
|
|
1691
1700
|
Tuple[records.ProductiveConsumptionOfBasicService, records.Transfer]
|
|
1692
1701
|
]:
|
|
1693
1702
|
def mapper(
|
|
1694
|
-
orm,
|
|
1703
|
+
orm: Any,
|
|
1695
1704
|
) -> Tuple[records.ProductiveConsumptionOfBasicService, records.Transfer]:
|
|
1696
1705
|
consumption_orm, transfer_orm = orm
|
|
1697
1706
|
return (
|
|
@@ -1722,7 +1731,7 @@ class ProductiveConsumptionOfBasicServiceResult(
|
|
|
1722
1731
|
]
|
|
1723
1732
|
]:
|
|
1724
1733
|
def mapper(
|
|
1725
|
-
orm,
|
|
1734
|
+
orm: Any,
|
|
1726
1735
|
) -> Tuple[
|
|
1727
1736
|
records.ProductiveConsumptionOfBasicService,
|
|
1728
1737
|
records.Transfer,
|
|
@@ -1796,7 +1805,7 @@ class CooperationResult(SqlQueryResult[records.Cooperation]):
|
|
|
1796
1805
|
self,
|
|
1797
1806
|
) -> SqlQueryResult[Tuple[records.Cooperation, records.Company]]:
|
|
1798
1807
|
def mapper(
|
|
1799
|
-
orm,
|
|
1808
|
+
orm: Any,
|
|
1800
1809
|
) -> Tuple[records.Cooperation, records.Company]:
|
|
1801
1810
|
cooperation_orm, company_orm = orm
|
|
1802
1811
|
return (
|
|
@@ -1842,7 +1851,7 @@ class CoordinationTenureResult(SqlQueryResult[records.CoordinationTenure]):
|
|
|
1842
1851
|
self,
|
|
1843
1852
|
) -> SqlQueryResult[Tuple[records.CoordinationTenure, records.Company]]:
|
|
1844
1853
|
def mapper(
|
|
1845
|
-
orm,
|
|
1854
|
+
orm: Any,
|
|
1846
1855
|
) -> Tuple[records.CoordinationTenure, records.Company]:
|
|
1847
1856
|
tenure_orm, company_orm = orm
|
|
1848
1857
|
return (
|
|
@@ -1892,7 +1901,7 @@ class CoordinationTransferRequestResult(
|
|
|
1892
1901
|
Tuple[records.CoordinationTransferRequest, records.Cooperation]
|
|
1893
1902
|
]:
|
|
1894
1903
|
def mapper(
|
|
1895
|
-
orm,
|
|
1904
|
+
orm: Any,
|
|
1896
1905
|
) -> Tuple[records.CoordinationTransferRequest, records.Cooperation]:
|
|
1897
1906
|
request_orm, cooperation_orm = orm
|
|
1898
1907
|
return (
|
|
@@ -1942,7 +1951,7 @@ class CompanyWorkInviteResult(SqlQueryResult[records.CompanyWorkInvite]):
|
|
|
1942
1951
|
def joined_with_member(
|
|
1943
1952
|
self,
|
|
1944
1953
|
) -> SqlQueryResult[Tuple[records.CompanyWorkInvite, records.Member]]:
|
|
1945
|
-
def mapper(orm) -> Tuple[records.CompanyWorkInvite, records.Member]:
|
|
1954
|
+
def mapper(orm: Any) -> Tuple[records.CompanyWorkInvite, records.Member]:
|
|
1946
1955
|
invite_orm, member_orm = orm
|
|
1947
1956
|
return (
|
|
1948
1957
|
DatabaseGatewayImpl.company_work_invite_from_orm(invite_orm),
|
|
@@ -2041,7 +2050,7 @@ class RegisteredHoursWorkedResult(SqlQueryResult[records.RegisteredHoursWorked])
|
|
|
2041
2050
|
]
|
|
2042
2051
|
]:
|
|
2043
2052
|
def mapper(
|
|
2044
|
-
orm,
|
|
2053
|
+
orm: Any,
|
|
2045
2054
|
) -> Tuple[records.RegisteredHoursWorked, records.Member]:
|
|
2046
2055
|
hours_orm, member_orm = orm
|
|
2047
2056
|
return (
|
|
@@ -2067,7 +2076,7 @@ class RegisteredHoursWorkedResult(SqlQueryResult[records.RegisteredHoursWorked])
|
|
|
2067
2076
|
]
|
|
2068
2077
|
]:
|
|
2069
2078
|
def mapper(
|
|
2070
|
-
orm,
|
|
2079
|
+
orm: Any,
|
|
2071
2080
|
) -> Tuple[records.RegisteredHoursWorked, records.Transfer]:
|
|
2072
2081
|
hours_orm, transfer_orm = orm
|
|
2073
2082
|
return (
|
|
@@ -2095,7 +2104,7 @@ class RegisteredHoursWorkedResult(SqlQueryResult[records.RegisteredHoursWorked])
|
|
|
2095
2104
|
]
|
|
2096
2105
|
]:
|
|
2097
2106
|
def mapper(
|
|
2098
|
-
orm,
|
|
2107
|
+
orm: Any,
|
|
2099
2108
|
) -> Tuple[records.RegisteredHoursWorked, records.Member, records.Transfer]:
|
|
2100
2109
|
hours_orm, member_orm, transfer_orm = orm
|
|
2101
2110
|
return (
|
{workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/class_based_view.py
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
from functools import wraps
|
|
2
|
-
from typing import Any
|
|
2
|
+
from typing import Any, Callable
|
|
3
3
|
|
|
4
4
|
from flask import request
|
|
5
5
|
|
|
@@ -13,9 +13,9 @@ def _not_implemented_view(*args: Any, **kwargs: Any) -> Response:
|
|
|
13
13
|
|
|
14
14
|
|
|
15
15
|
class as_flask_view:
|
|
16
|
-
def __call__(self, view_class):
|
|
16
|
+
def __call__(self, view_class: type[Any]) -> Callable[..., Response]:
|
|
17
17
|
@wraps(view_class)
|
|
18
|
-
def wrapper(*args, **kwargs):
|
|
18
|
+
def wrapper(*args: Any, **kwargs: Any) -> Response:
|
|
19
19
|
injector = create_dependency_injector()
|
|
20
20
|
view = injector.get(view_class)
|
|
21
21
|
dispatched_method = getattr(view, request.method, _not_implemented_view)
|
{workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/dependency_injection.py
RENAMED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
from __future__ import annotations
|
|
2
2
|
|
|
3
3
|
from functools import wraps
|
|
4
|
+
from typing import Any, Callable
|
|
4
5
|
|
|
5
6
|
from flask import current_app
|
|
6
7
|
|
|
@@ -64,7 +65,7 @@ from workers_control.web.translator import Translator
|
|
|
64
65
|
from workers_control.web.url_index import UrlIndex
|
|
65
66
|
|
|
66
67
|
|
|
67
|
-
class
|
|
68
|
+
class FlaskProductionModule(Module):
|
|
68
69
|
def configure(self, binder: Binder) -> None:
|
|
69
70
|
super().configure(binder)
|
|
70
71
|
binder.bind(
|
|
@@ -137,14 +138,14 @@ class with_injection:
|
|
|
137
138
|
def __init__(self) -> None:
|
|
138
139
|
self._injector = create_dependency_injector()
|
|
139
140
|
|
|
140
|
-
def __call__(self, original_function):
|
|
141
|
+
def __call__(self, original_function: Callable[..., Any]) -> Callable[..., Any]:
|
|
141
142
|
"""When you wrap a function, make sure that the parameters to be
|
|
142
143
|
injected come after the the parameters that the caller should
|
|
143
144
|
provide.
|
|
144
145
|
"""
|
|
145
146
|
|
|
146
147
|
@wraps(original_function)
|
|
147
|
-
def wrapped_function(*args, **kwargs):
|
|
148
|
+
def wrapped_function(*args: Any, **kwargs: Any) -> Any:
|
|
148
149
|
return self._injector.call_with_injection(
|
|
149
150
|
original_function, args=args, kwargs=kwargs
|
|
150
151
|
)
|
|
@@ -153,4 +154,4 @@ class with_injection:
|
|
|
153
154
|
|
|
154
155
|
|
|
155
156
|
def create_dependency_injector() -> Injector:
|
|
156
|
-
return Injector([
|
|
157
|
+
return Injector([FlaskProductionModule()])
|
|
@@ -25,21 +25,21 @@ def hsl_to_hex(hue: float, saturation: float, lightness: float) -> str:
|
|
|
25
25
|
class FlaskColors:
|
|
26
26
|
# hsl values must be in sync with colors.css
|
|
27
27
|
@property
|
|
28
|
-
def primary(self):
|
|
28
|
+
def primary(self) -> str:
|
|
29
29
|
return hsl_to_hex(171, 100, 41)
|
|
30
30
|
|
|
31
31
|
@property
|
|
32
|
-
def info(self):
|
|
32
|
+
def info(self) -> str:
|
|
33
33
|
return hsl_to_hex(207, 61, 53)
|
|
34
34
|
|
|
35
35
|
@property
|
|
36
|
-
def warning(self):
|
|
36
|
+
def warning(self) -> str:
|
|
37
37
|
return hsl_to_hex(44, 100, 77)
|
|
38
38
|
|
|
39
39
|
@property
|
|
40
|
-
def danger(self):
|
|
40
|
+
def danger(self) -> str:
|
|
41
41
|
return hsl_to_hex(348, 86, 61)
|
|
42
42
|
|
|
43
43
|
@property
|
|
44
|
-
def success(self):
|
|
44
|
+
def success(self) -> str:
|
|
45
45
|
return hsl_to_hex(153, 53, 53)
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
from dataclasses import dataclass
|
|
2
|
-
from typing import Optional
|
|
2
|
+
from typing import Any, Optional
|
|
3
3
|
from urllib.parse import urljoin, urlparse
|
|
4
4
|
from uuid import UUID
|
|
5
5
|
|
|
@@ -42,7 +42,7 @@ class FlaskLoginUser:
|
|
|
42
42
|
def is_anonymous(self) -> bool:
|
|
43
43
|
return False
|
|
44
44
|
|
|
45
|
-
def __getattr__(self, name):
|
|
45
|
+
def __getattr__(self, name: str) -> Any:
|
|
46
46
|
return getattr(self.orm_user, name)
|
|
47
47
|
|
|
48
48
|
|
{workers_control-0.2.4 → workers_control-0.2.5}/src/workers_control/flask/mail_service/__init__.py
RENAMED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import importlib
|
|
2
2
|
|
|
3
|
-
from flask import current_app
|
|
3
|
+
from flask import Flask, current_app
|
|
4
4
|
|
|
5
|
-
from workers_control.core.injector import Injector
|
|
5
|
+
from workers_control.core.injector import ClassProvider, Injector
|
|
6
6
|
|
|
7
7
|
from .interface import EmailPlugin
|
|
8
8
|
|
|
@@ -11,7 +11,7 @@ def provide_email_service(injector: Injector) -> EmailPlugin:
|
|
|
11
11
|
if plugin := current_app.extensions.get("woco_email_plugin"):
|
|
12
12
|
return plugin
|
|
13
13
|
plugin = _create_email_plugin_from_config(injector)
|
|
14
|
-
|
|
14
|
+
set_email_plugin(current_app, plugin)
|
|
15
15
|
return plugin
|
|
16
16
|
|
|
17
17
|
|
|
@@ -21,9 +21,9 @@ def _create_email_plugin_from_config(injector: Injector) -> EmailPlugin:
|
|
|
21
21
|
module = importlib.import_module(module_name)
|
|
22
22
|
plugin_class = getattr(module, class_name)
|
|
23
23
|
assert issubclass(plugin_class, EmailPlugin)
|
|
24
|
-
plugin =
|
|
24
|
+
plugin = ClassProvider(plugin_class).provide(injector.binder)
|
|
25
25
|
return plugin
|
|
26
26
|
|
|
27
27
|
|
|
28
|
-
def
|
|
29
|
-
|
|
28
|
+
def set_email_plugin(app: Flask, plugin: EmailPlugin) -> None:
|
|
29
|
+
app.extensions["woco_email_plugin"] = plugin
|