Introduces a comprehensive set of ObjectBox entities to support local storage and management of stock picking data.
This includes:
* `StockPickingRecordEntity`: The primary entity for stock picking records, encompassing various attributes and relations.
* Related entities: `StockPickingCompanyEntity`, `StockPickingPartnerEntity`, `StockPickingLocationEntity`, and `StockPickingTypeEntity` for associated data.
* Move entities: `MoveLineWithoutPackageEntity` and `MoveWithoutPackageEntity` for detailed product movements within a picking record, including relations to product data.
These entities enable efficient local data persistence and querying for stock picking operations.
Refactors the product data model to primarily store `id`, `barcode`, and `displayName`. This simplifies the product structure, focusing on essential attributes for inventory and scanning operations.
Optimizes API calls for stock picking to fetch more relevant product details. Unnecessary fields are removed, and specific product attributes like `barcode` and `quantity` are now explicitly requested for stock moves.
Moves `StockPickingRecordModel` to its own dedicated file for improved code organization and maintainability. Updates all affected UI components and scanner logic to align with the revised product model.
Configures the ObjectBox ProductEntity to allow assigning IDs. Adds a helper to convert ProductStruct to ProductEntity for easier storage.
Saves scanned products directly to the local ObjectBox store.
Updates the ProductListPage to fetch and display locally stored products from ObjectBox upon initialization.
Includes minor UI adjustments in the scanned product component and scanner page, and fixes loading state handling in HomePageModel.
Adds the ObjectBox database dependency for local data persistence.
Updates the Product ID field type from nullable String to non-nullable int with a default value of 0 to align with ObjectBox's integer ID requirements. Includes necessary generated files for plugin registration and model serialization.