- Bloodhound Initialization:
- Changed the suggestion object structure to a flattened format for Typeahead compatibility.
- Removed nested `display` structure in favor of direct `displayLabel` and `displayDescription` fields.
- Simplified the construction of suggestion objects by directly setting flattened fields.
- Typeahead Initialization:
- Enhanced logging in the JavaScript initialization script for better debugging.
- Updated the `display` function in Typeahead to use flattened fields (`displayLabel` and `displayDescription`) instead of nested `display` objects.
- Improved error handling and logging for cases where suggestions are not arrays or are empty.
- Selection Handling:
- Added detailed logging for selected suggestions in both Rust and JavaScript.
- Ensured the input field is updated with the selected suggestion's label.
- Code Cleanup:
- Removed redundant nested object creation for `display` fields in Bloodhound initialization.
- Streamlined the JavaScript initialization script for better readability and maintainability.
- Consolidated logging statements for consistent debugging output.
- Edited ItemsList to support dynamic custom properties for each item, managed via HashMap.
- Introduced a UI input for users to add new properties dynamically.
- Added functionality to fetch additional attributes for selected items from Wikidata.
- Defined structures for handling Wikidata API responses.
- Incorporated async data fetching using futures and `gloo_net::http::Request`.
- Enhanced the UI with a button to fetch external data for comparison.
- Updated the comparison table to include external descriptions retrieved from Wikidata.