Parcourir la source

feat: move login_required wrapper outside (#1281)

tags/0.3.25
takatost il y a 2 ans
Parent
révision
024250803a
Aucun compte lié à l'adresse e-mail de l'auteur
32 fichiers modifiés avec 44 ajouts et 65 suppressions
  1. 1
    1
      api/controllers/console/apikey.py
  2. 2
    5
      api/controllers/console/app/app.py
  3. 2
    2
      api/controllers/console/app/audio.py
  4. 1
    1
      api/controllers/console/app/completion.py
  5. 3
    3
      api/controllers/console/app/conversation.py
  6. 1
    1
      api/controllers/console/app/generator.py
  7. 2
    2
      api/controllers/console/app/message.py
  8. 1
    2
      api/controllers/console/app/model_config.py
  9. 2
    2
      api/controllers/console/app/site.py
  10. 1
    1
      api/controllers/console/app/statistic.py
  11. 2
    5
      api/controllers/console/auth/data_source_oauth.py
  12. 3
    4
      api/controllers/console/datasets/data_source.py
  13. 2
    2
      api/controllers/console/datasets/datasets.py
  14. 1
    3
      api/controllers/console/datasets/datasets_document.py
  15. 1
    2
      api/controllers/console/datasets/datasets_segments.py
  16. 2
    2
      api/controllers/console/datasets/file.py
  17. 1
    1
      api/controllers/console/datasets/hit_testing.py
  18. 2
    3
      api/controllers/console/explore/installed_app.py
  19. 1
    1
      api/controllers/console/explore/recommended_app.py
  20. 1
    1
      api/controllers/console/explore/wraps.py
  21. 1
    1
      api/controllers/console/universal_chat/wraps.py
  22. 1
    1
      api/controllers/console/workspace/account.py
  23. 1
    1
      api/controllers/console/workspace/members.py
  24. 1
    1
      api/controllers/console/workspace/model_providers.py
  25. 1
    1
      api/controllers/console/workspace/models.py
  26. 1
    1
      api/controllers/console/workspace/providers.py
  27. 1
    1
      api/controllers/console/workspace/tool_providers.py
  28. 1
    2
      api/controllers/console/workspace/workspace.py
  29. 1
    4
      api/controllers/service_api/dataset/dataset.py
  30. 2
    6
      api/controllers/service_api/dataset/document.py
  31. 1
    2
      api/controllers/service_api/wraps.py
  32. 0
    0
      api/libs/login.py

+ 1
- 1
api/controllers/console/apikey.py Voir le fichier

from flask_login import current_user from flask_login import current_user
from core.login.login import login_required
from libs.login import login_required
import flask_restful import flask_restful
from flask_restful import Resource, fields, marshal_with from flask_restful import Resource, fields, marshal_with
from werkzeug.exceptions import Forbidden from werkzeug.exceptions import Forbidden

+ 2
- 5
api/controllers/console/app/app.py Voir le fichier

import logging import logging
from datetime import datetime from datetime import datetime


import flask
from flask_login import current_user from flask_login import current_user
from core.login.login import login_required
from flask_restful import Resource, reqparse, fields, marshal_with, abort, inputs
from libs.login import login_required
from flask_restful import Resource, reqparse, marshal_with, abort, inputs
from werkzeug.exceptions import Forbidden from werkzeug.exceptions import Forbidden


from constants.model_template import model_templates, demo_model_templates from constants.model_template import model_templates, demo_model_templates
from core.model_providers.error import ProviderTokenNotInitError, LLMBadRequestError from core.model_providers.error import ProviderTokenNotInitError, LLMBadRequestError
from core.model_providers.model_factory import ModelFactory from core.model_providers.model_factory import ModelFactory
from core.model_providers.model_provider_factory import ModelProviderFactory from core.model_providers.model_provider_factory import ModelProviderFactory
from core.model_providers.models.entity.model_params import ModelType
from events.app_event import app_was_created, app_was_deleted from events.app_event import app_was_created, app_was_deleted
from fields.app_fields import app_pagination_fields, app_detail_fields, template_list_fields, \ from fields.app_fields import app_pagination_fields, app_detail_fields, template_list_fields, \
app_detail_fields_with_site app_detail_fields_with_site
from libs.helper import TimestampField
from extensions.ext_database import db from extensions.ext_database import db
from models.model import App, AppModelConfig, Site from models.model import App, AppModelConfig, Site
from services.app_model_config_service import AppModelConfigService from services.app_model_config_service import AppModelConfigService

+ 2
- 2
api/controllers/console/app/audio.py Voir le fichier

import logging import logging


from flask import request from flask import request
from core.login.login import login_required
from werkzeug.exceptions import InternalServerError, NotFound
from libs.login import login_required
from werkzeug.exceptions import InternalServerError


import services import services
from controllers.console import api from controllers.console import api

+ 1
- 1
api/controllers/console/app/completion.py Voir le fichier



import flask_login import flask_login
from flask import Response, stream_with_context from flask import Response, stream_with_context
from core.login.login import login_required
from libs.login import login_required
from werkzeug.exceptions import InternalServerError, NotFound from werkzeug.exceptions import InternalServerError, NotFound


import services import services

+ 3
- 3
api/controllers/console/app/conversation.py Voir le fichier



import pytz import pytz
from flask_login import current_user from flask_login import current_user
from core.login.login import login_required
from flask_restful import Resource, reqparse, fields, marshal_with
from libs.login import login_required
from flask_restful import Resource, reqparse, marshal_with
from flask_restful.inputs import int_range from flask_restful.inputs import int_range
from sqlalchemy import or_, func from sqlalchemy import or_, func
from sqlalchemy.orm import joinedload from sqlalchemy.orm import joinedload
from controllers.console.wraps import account_initialization_required from controllers.console.wraps import account_initialization_required
from fields.conversation_fields import conversation_pagination_fields, conversation_detail_fields, \ from fields.conversation_fields import conversation_pagination_fields, conversation_detail_fields, \
conversation_message_detail_fields, conversation_with_summary_pagination_fields conversation_message_detail_fields, conversation_with_summary_pagination_fields
from libs.helper import TimestampField, datetime_string, uuid_value
from libs.helper import datetime_string
from extensions.ext_database import db from extensions.ext_database import db
from models.model import Message, MessageAnnotation, Conversation from models.model import Message, MessageAnnotation, Conversation



+ 1
- 1
api/controllers/console/app/generator.py Voir le fichier

from flask_login import current_user from flask_login import current_user
from core.login.login import login_required
from libs.login import login_required
from flask_restful import Resource, reqparse from flask_restful import Resource, reqparse


from controllers.console import api from controllers.console import api

+ 2
- 2
api/controllers/console/app/message.py Voir le fichier

from controllers.console.wraps import account_initialization_required from controllers.console.wraps import account_initialization_required
from core.model_providers.error import LLMRateLimitError, LLMBadRequestError, LLMAuthorizationError, LLMAPIConnectionError, \ from core.model_providers.error import LLMRateLimitError, LLMBadRequestError, LLMAuthorizationError, LLMAPIConnectionError, \
ProviderTokenNotInitError, LLMAPIUnavailableError, QuotaExceededError, ModelCurrentlyNotSupportError ProviderTokenNotInitError, LLMAPIUnavailableError, QuotaExceededError, ModelCurrentlyNotSupportError
from core.login.login import login_required
from libs.login import login_required
from fields.conversation_fields import message_detail_fields from fields.conversation_fields import message_detail_fields
from libs.helper import uuid_value, TimestampField
from libs.helper import uuid_value
from libs.infinite_scroll_pagination import InfiniteScrollPagination from libs.infinite_scroll_pagination import InfiniteScrollPagination
from extensions.ext_database import db from extensions.ext_database import db
from models.model import MessageAnnotation, Conversation, Message, MessageFeedback from models.model import MessageAnnotation, Conversation, Message, MessageFeedback

+ 1
- 2
api/controllers/console/app/model_config.py Voir le fichier

# -*- coding:utf-8 -*- # -*- coding:utf-8 -*-
import json


from flask import request from flask import request
from flask_restful import Resource from flask_restful import Resource
from controllers.console.app import _get_app from controllers.console.app import _get_app
from controllers.console.setup import setup_required from controllers.console.setup import setup_required
from controllers.console.wraps import account_initialization_required from controllers.console.wraps import account_initialization_required
from core.login.login import login_required
from libs.login import login_required
from events.app_event import app_model_config_was_updated from events.app_event import app_model_config_was_updated
from extensions.ext_database import db from extensions.ext_database import db
from models.model import AppModelConfig from models.model import AppModelConfig

+ 2
- 2
api/controllers/console/app/site.py Voir le fichier

# -*- coding:utf-8 -*- # -*- coding:utf-8 -*-
from flask_login import current_user from flask_login import current_user
from core.login.login import login_required
from flask_restful import Resource, reqparse, fields, marshal_with
from libs.login import login_required
from flask_restful import Resource, reqparse, marshal_with
from werkzeug.exceptions import NotFound, Forbidden from werkzeug.exceptions import NotFound, Forbidden


from controllers.console import api from controllers.console import api

+ 1
- 1
api/controllers/console/app/statistic.py Voir le fichier

import pytz import pytz
from flask import jsonify from flask import jsonify
from flask_login import current_user from flask_login import current_user
from core.login.login import login_required
from libs.login import login_required
from flask_restful import Resource, reqparse from flask_restful import Resource, reqparse


from controllers.console import api from controllers.console import api

+ 2
- 5
api/controllers/console/auth/data_source_oauth.py Voir le fichier

import logging import logging
from datetime import datetime
from typing import Optional


import flask_login
import requests import requests
from flask import request, redirect, current_app, session
from flask import request, redirect, current_app
from flask_login import current_user from flask_login import current_user


from flask_restful import Resource from flask_restful import Resource
from werkzeug.exceptions import Forbidden from werkzeug.exceptions import Forbidden


from core.login.login import login_required
from libs.login import login_required
from libs.oauth_data_source import NotionOAuth from libs.oauth_data_source import NotionOAuth
from controllers.console import api from controllers.console import api
from ..setup import setup_required from ..setup import setup_required

+ 3
- 4
api/controllers/console/datasets/data_source.py Voir le fichier

import json import json


from cachetools import TTLCache from cachetools import TTLCache
from flask import request, current_app
from flask import request
from flask_login import current_user from flask_login import current_user
from core.login.login import login_required
from flask_restful import Resource, marshal_with, fields, reqparse, marshal
from libs.login import login_required
from flask_restful import Resource, marshal_with, reqparse
from werkzeug.exceptions import NotFound from werkzeug.exceptions import NotFound


from controllers.console import api from controllers.console import api
from core.indexing_runner import IndexingRunner from core.indexing_runner import IndexingRunner
from extensions.ext_database import db from extensions.ext_database import db
from fields.data_source_fields import integrate_notion_info_list_fields, integrate_list_fields from fields.data_source_fields import integrate_notion_info_list_fields, integrate_list_fields
from libs.helper import TimestampField
from models.dataset import Document from models.dataset import Document
from models.source import DataSourceBinding from models.source import DataSourceBinding
from services.dataset_service import DatasetService, DocumentService from services.dataset_service import DatasetService, DocumentService

+ 2
- 2
api/controllers/console/datasets/datasets.py Voir le fichier

from flask_login import current_user from flask_login import current_user


from controllers.console.apikey import api_key_list, api_key_fields from controllers.console.apikey import api_key_list, api_key_fields
from core.login.login import login_required
from flask_restful import Resource, reqparse, fields, marshal, marshal_with
from libs.login import login_required
from flask_restful import Resource, reqparse, marshal, marshal_with
from werkzeug.exceptions import NotFound, Forbidden from werkzeug.exceptions import NotFound, Forbidden
import services import services
from controllers.console import api from controllers.console import api

+ 1
- 3
api/controllers/console/datasets/datasets_document.py Voir le fichier

# -*- coding:utf-8 -*- # -*- coding:utf-8 -*-
import random
from datetime import datetime from datetime import datetime
from typing import List from typing import List


from flask import request, current_app from flask import request, current_app
from flask_login import current_user from flask_login import current_user
from core.login.login import login_required
from libs.login import login_required
from flask_restful import Resource, fields, marshal, marshal_with, reqparse from flask_restful import Resource, fields, marshal, marshal_with, reqparse
from sqlalchemy import desc, asc from sqlalchemy import desc, asc
from werkzeug.exceptions import NotFound, Forbidden from werkzeug.exceptions import NotFound, Forbidden
from extensions.ext_redis import redis_client from extensions.ext_redis import redis_client
from fields.document_fields import document_with_segments_fields, document_fields, \ from fields.document_fields import document_with_segments_fields, document_fields, \
dataset_and_document_fields, document_status_fields dataset_and_document_fields, document_status_fields
from libs.helper import TimestampField
from extensions.ext_database import db from extensions.ext_database import db
from models.dataset import DatasetProcessRule, Dataset from models.dataset import DatasetProcessRule, Dataset
from models.dataset import Document, DocumentSegment from models.dataset import Document, DocumentSegment

+ 1
- 2
api/controllers/console/datasets/datasets_segments.py Voir le fichier

from controllers.console.wraps import account_initialization_required from controllers.console.wraps import account_initialization_required
from core.model_providers.error import LLMBadRequestError, ProviderTokenNotInitError from core.model_providers.error import LLMBadRequestError, ProviderTokenNotInitError
from core.model_providers.model_factory import ModelFactory from core.model_providers.model_factory import ModelFactory
from core.login.login import login_required
from libs.login import login_required
from extensions.ext_database import db from extensions.ext_database import db
from extensions.ext_redis import redis_client from extensions.ext_redis import redis_client
from fields.segment_fields import segment_fields from fields.segment_fields import segment_fields
from models.dataset import DocumentSegment from models.dataset import DocumentSegment


from libs.helper import TimestampField
from services.dataset_service import DatasetService, DocumentService, SegmentService from services.dataset_service import DatasetService, DocumentService, SegmentService
from tasks.enable_segment_to_index_task import enable_segment_to_index_task from tasks.enable_segment_to_index_task import enable_segment_to_index_task
from tasks.disable_segment_from_index_task import disable_segment_from_index_task from tasks.disable_segment_from_index_task import disable_segment_from_index_task

+ 2
- 2
api/controllers/console/datasets/file.py Voir le fichier

from flask import request, current_app from flask import request, current_app


import services import services
from core.login.login import login_required
from flask_restful import Resource, marshal_with, fields
from libs.login import login_required
from flask_restful import Resource, marshal_with


from controllers.console import api from controllers.console import api
from controllers.console.datasets.error import NoFileUploadedError, TooManyFilesError, FileTooLargeError, \ from controllers.console.datasets.error import NoFileUploadedError, TooManyFilesError, FileTooLargeError, \

+ 1
- 1
api/controllers/console/datasets/hit_testing.py Voir le fichier

import logging import logging


from flask_login import current_user from flask_login import current_user
from core.login.login import login_required
from libs.login import login_required
from flask_restful import Resource, reqparse, marshal from flask_restful import Resource, reqparse, marshal
from werkzeug.exceptions import InternalServerError, NotFound, Forbidden from werkzeug.exceptions import InternalServerError, NotFound, Forbidden



+ 2
- 3
api/controllers/console/explore/installed_app.py Voir le fichier

from datetime import datetime from datetime import datetime


from flask_login import current_user from flask_login import current_user
from core.login.login import login_required
from flask_restful import Resource, reqparse, fields, marshal_with, inputs
from libs.login import login_required
from flask_restful import Resource, reqparse, marshal_with, inputs
from sqlalchemy import and_ from sqlalchemy import and_
from werkzeug.exceptions import NotFound, Forbidden, BadRequest from werkzeug.exceptions import NotFound, Forbidden, BadRequest


from controllers.console.wraps import account_initialization_required from controllers.console.wraps import account_initialization_required
from extensions.ext_database import db from extensions.ext_database import db
from fields.installed_app_fields import installed_app_list_fields from fields.installed_app_fields import installed_app_list_fields
from libs.helper import TimestampField
from models.model import App, InstalledApp, RecommendedApp from models.model import App, InstalledApp, RecommendedApp
from services.account_service import TenantService from services.account_service import TenantService



+ 1
- 1
api/controllers/console/explore/recommended_app.py Voir le fichier

# -*- coding:utf-8 -*- # -*- coding:utf-8 -*-
from flask_login import current_user from flask_login import current_user
from core.login.login import login_required
from libs.login import login_required
from flask_restful import Resource, fields, marshal_with from flask_restful import Resource, fields, marshal_with
from sqlalchemy import and_ from sqlalchemy import and_



+ 1
- 1
api/controllers/console/explore/wraps.py Voir le fichier

from flask_login import current_user from flask_login import current_user
from core.login.login import login_required
from libs.login import login_required
from flask_restful import Resource from flask_restful import Resource
from functools import wraps from functools import wraps



+ 1
- 1
api/controllers/console/universal_chat/wraps.py Voir le fichier

from functools import wraps from functools import wraps


from flask_login import current_user from flask_login import current_user
from core.login.login import login_required
from libs.login import login_required
from flask_restful import Resource from flask_restful import Resource
from controllers.console.setup import setup_required from controllers.console.setup import setup_required
from controllers.console.wraps import account_initialization_required from controllers.console.wraps import account_initialization_required

+ 1
- 1
api/controllers/console/workspace/account.py Voir le fichier

import pytz import pytz
from flask import current_app, request from flask import current_app, request
from flask_login import current_user from flask_login import current_user
from core.login.login import login_required
from libs.login import login_required
from flask_restful import Resource, reqparse, fields, marshal_with from flask_restful import Resource, reqparse, fields, marshal_with


from services.errors.account import CurrentPasswordIncorrectError as ServiceCurrentPasswordIncorrectError from services.errors.account import CurrentPasswordIncorrectError as ServiceCurrentPasswordIncorrectError

+ 1
- 1
api/controllers/console/workspace/members.py Voir le fichier

# -*- coding:utf-8 -*- # -*- coding:utf-8 -*-
from flask import current_app from flask import current_app
from flask_login import current_user from flask_login import current_user
from core.login.login import login_required
from libs.login import login_required
from flask_restful import Resource, reqparse, marshal_with, abort, fields, marshal from flask_restful import Resource, reqparse, marshal_with, abort, fields, marshal


import services import services

+ 1
- 1
api/controllers/console/workspace/model_providers.py Voir le fichier

from flask_login import current_user from flask_login import current_user
from core.login.login import login_required
from libs.login import login_required
from flask_restful import Resource, reqparse from flask_restful import Resource, reqparse
from werkzeug.exceptions import Forbidden from werkzeug.exceptions import Forbidden



+ 1
- 1
api/controllers/console/workspace/models.py Voir le fichier

from flask_login import current_user from flask_login import current_user
from core.login.login import login_required
from libs.login import login_required
from flask_restful import Resource, reqparse from flask_restful import Resource, reqparse


from controllers.console import api from controllers.console import api

+ 1
- 1
api/controllers/console/workspace/providers.py Voir le fichier

# -*- coding:utf-8 -*- # -*- coding:utf-8 -*-
from flask_login import current_user from flask_login import current_user
from core.login.login import login_required
from libs.login import login_required
from flask_restful import Resource, reqparse from flask_restful import Resource, reqparse
from werkzeug.exceptions import Forbidden from werkzeug.exceptions import Forbidden



+ 1
- 1
api/controllers/console/workspace/tool_providers.py Voir le fichier

import json import json


from flask_login import current_user from flask_login import current_user
from core.login.login import login_required
from libs.login import login_required
from flask_restful import Resource, abort, reqparse from flask_restful import Resource, abort, reqparse
from werkzeug.exceptions import Forbidden from werkzeug.exceptions import Forbidden



+ 1
- 2
api/controllers/console/workspace/workspace.py Voir le fichier



from flask import request from flask import request
from flask_login import current_user from flask_login import current_user
from core.login.login import login_required
from libs.login import login_required
from flask_restful import Resource, fields, marshal_with, reqparse, marshal, inputs from flask_restful import Resource, fields, marshal_with, reqparse, marshal, inputs
from flask_restful.inputs import int_range


from controllers.console import api from controllers.console import api
from controllers.console.admin import admin_required from controllers.console.admin import admin_required

+ 1
- 4
api/controllers/service_api/dataset/dataset.py Voir le fichier

from controllers.service_api import api from controllers.service_api import api
from controllers.service_api.dataset.error import DatasetNameDuplicateError from controllers.service_api.dataset.error import DatasetNameDuplicateError
from controllers.service_api.wraps import DatasetApiResource from controllers.service_api.wraps import DatasetApiResource
from core.login.login import current_user
from libs.login import current_user
from core.model_providers.models.entity.model_params import ModelType from core.model_providers.models.entity.model_params import ModelType
from extensions.ext_database import db
from fields.dataset_fields import dataset_detail_fields from fields.dataset_fields import dataset_detail_fields
from models.account import Account, TenantAccountJoin
from models.dataset import Dataset
from services.dataset_service import DatasetService from services.dataset_service import DatasetService
from services.provider_service import ProviderService from services.provider_service import ProviderService



+ 2
- 6
api/controllers/service_api/dataset/document.py Voir le fichier

import datetime
import json import json
import uuid


from flask import current_app, request
from flask import request
from flask_restful import reqparse, marshal from flask_restful import reqparse, marshal
from sqlalchemy import desc from sqlalchemy import desc
from werkzeug.exceptions import NotFound from werkzeug.exceptions import NotFound
from controllers.service_api.dataset.error import ArchivedDocumentImmutableError, DocumentIndexingError, \ from controllers.service_api.dataset.error import ArchivedDocumentImmutableError, DocumentIndexingError, \
NoFileUploadedError, TooManyFilesError NoFileUploadedError, TooManyFilesError
from controllers.service_api.wraps import DatasetApiResource from controllers.service_api.wraps import DatasetApiResource
from core.login.login import current_user
from libs.login import current_user
from core.model_providers.error import ProviderTokenNotInitError from core.model_providers.error import ProviderTokenNotInitError
from extensions.ext_database import db from extensions.ext_database import db
from extensions.ext_storage import storage
from fields.document_fields import document_fields, document_status_fields from fields.document_fields import document_fields, document_status_fields
from models.dataset import Dataset, Document, DocumentSegment from models.dataset import Dataset, Document, DocumentSegment
from models.model import UploadFile
from services.dataset_service import DocumentService from services.dataset_service import DocumentService
from services.file_service import FileService from services.file_service import FileService



+ 1
- 2
api/controllers/service_api/wraps.py Voir le fichier

from flask_restful import Resource from flask_restful import Resource
from werkzeug.exceptions import NotFound, Unauthorized from werkzeug.exceptions import NotFound, Unauthorized


from core.login.login import _get_user
from libs.login import _get_user
from extensions.ext_database import db from extensions.ext_database import db
from models.account import Tenant, TenantAccountJoin, Account from models.account import Tenant, TenantAccountJoin, Account
from models.dataset import Dataset
from models.model import ApiToken, App from models.model import ApiToken, App





api/core/login/login.py → api/libs/login.py Voir le fichier


Chargement…
Annuler
Enregistrer