🐛 fix(service.py): remove unnecessary import statement for logger
✨ feat(store.py): add support for filtering components by liked status and store API key
✨ feat(service.py): add build_liked_filter method to build filter conditions based on liked status and store API key
🔧 chore(service.py): change user_data_context from contextmanager to asynccontextmanager to support asynchronous operations
🔧 chore(service.py): handle case when user_data is a list and take the first element
🔧 chore(service.py): remove liked and api_key parameters from get_components method and handle public components separately
🔧 chore(service.py): handle case when results is a dictionary and convert it to a list of results_objects
🐛 fix(service.py): add filter_by_user parameter to StoreService's get_components method to enable filtering components by user
🐛 fix(index.ts): add filterByUser parameter to getStoreComponents function to enable filtering components by user
🚀 feat(store.py): update get_components function to use async/await syntax for querying and counting components to improve readability and maintainability
🚀 feat(store.py): update read_component function to use async/await syntax for downloading component from the store to improve performance and avoid blocking the event loop
🚀 feat(store.py): update get_tags function to use async/await syntax for getting tags from the store to improve performance and avoid blocking the event loop
🚀 feat(store.py): update get_list_of_components_liked_by_user function to use async/await syntax for getting user likes from the store to improve performance and avoid blocking the event loop
🚀 feat(store.py): update like_component function to use async/await syntax for liking a component and getting the updated likes count from the store to improve performance and avoid blocking the event loop
🐛 fix(service.py): change _get method to async to make it compatible with async requests
✨ feat(service.py): change call_webhook method to async to make it compatible with async requests
🐛 fix(service.py): change count_components method to async to make it compatible with async requests
✨ feat(service.py): change query_components method to async to make it compatible with async requests
🐛 fix(service.py): change get_liked_by_user_components method to async to make it compatible with async requests
✨ feat(service.py): change get_components_in_users_collection method to async to make it compatible with async requests
🐛 fix(service.py): change download method to async to make it compatible with async requests
✨ feat(service.py): change upload method to async to make it compatible with async requests
🐛 fix(service.py): change get_tags method to async to make it compatible with async requests
✨ feat(service.py): change get_user_likes method to async to make it compatible with async requests
🐛 fix(service.py): change get_component_likes_count method to async to make it compatible with async requests
✨ feat(service.py): change like_component method to async to make it compatible with async requests
🐛 fix(utils.py): change update_components_with_user_data method to async to make it compatible with async requests
✨ feat(store.py): add build_liked_filter method to build filter conditions for querying liked components
✨ feat(store.py): add build_tags_filter method to build filter conditions for querying components with specific tags
✨ feat(store.py): add build_filter_conditions method to build filter conditions for querying components with various filters
✨ feat(store.py): modify query_components method to accept filter_conditions parameter for querying components with filters
🔧 chore(utils.py): reorder imports in get_factories_and_deps function
🔧 chore(utils.py): reorder imports in initialize_session_service function
✨ feat(store.py): add support for filtering components by liked status to get_components function
🐛 fix(store.py): remove in_user_collection attribute from ListComponentResponse schema as it is not used
🐛 fix(service.py): change _get method signature to accept Optional parameters and add type hints
✨ feat(service.py): add build_tags_filter method to build the tags filter for get_components function
🐛 fix(service.py): remove filter_by_user parameter from count_components function and adjust logic accordingly
✨ feat(service.py): add liked parameter to get_components function to filter components by liked status
🐛 fix(service.py): change get_components_in_users_collection method parameter type from List[UUID] to List[str]
🐛 fix(service.py): change download method parameter type from str to UUID
🐛 fix(utils.py): change update_components_with_user_data function parameter type from List["ListComponentResponse"] to List[ListComponentResponse]
🚀 feat(store.py): add support for pagination in get_components endpoint to limit the number of results returned
🔧 fix(store.py): fix count_components endpoint to handle cases where the number of results is less than the limit
✨ feat(store.py): add support for user_data_context to fetch and set user data to the context variable
🐛 fix(store.py): handle HTTPStatusError when fetching user data and raise ValueError for invalid API key
🐛 fix(service.py): handle HTTPStatusError when fetching user data and raise ValueError for invalid API key
🐛 fix(service.py): return count as int in count_components method
The error message when failing to build the PGVector component was not clear and did not provide useful information. This commit changes the error message to be more descriptive and concise, providing only the relevant information about the failure.
The variable `result` is updated with the value of `updated_result` after calling the `update_components_with_user_data` function. This change improves code readability and makes the intention clearer.