mirror of
https://github.com/inventree/InvenTree.git
synced 2026-05-09 19:18:39 +00:00
afa3807978d9c279c89d0c4b992fc2410465678e
1500 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
97bef77d56 |
[PUI] Build test results (#7777)
* Skeleton for "test results" panel on build detail page * Generate table columns based on test templates * Fill out test result table in build panel * Fix for form submission with files attached - Better determination of "hasFiles" - Ignore undefined values * Add modal form to create a new test result * Add button for creating a new test result * Fix for build output table * Add extra API filtering options to BuildLine API endpoint * Improve table rendering * Adjust form fields * Account for multiple test results * Add "location" column * Docs updates * playwright tests |
||
|
|
3cbfcc11cb |
Added test statistics (#7164)
* Added test statistics Fixed #5995 * Bump API version * Fix javascript varible scopes * Fix javascript exports * Remove duplicated import * Add files modified by the pre-commit scripts * Move test statistics API urls to a separate endpoint * Merge test-statistics urls * Undo unrelated changes * Formatting fix * Fix API urls for test statistics in PUI * Fix prefixing in test statistic functions --------- Co-authored-by: Oliver <oliver.henry.walters@gmail.com> |
||
|
|
f7323d1e50 |
[PUI] Bug fix for API forms (#7758)
* [PUI] Bug fix for API forms - Ensure that "blank" data does not get overriden with previous fields - Better logic for form data fetching * Playwright test fixes |
||
|
|
637a7fee9d |
New Crowdin updates (#7708)
* updated translation base * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> |
||
|
|
f92d734d80 |
[PUI] Add more barcode actions (#7741)
- Add to ReturnOrder - Add to SalesOrder - Refactor for BuildOrder |
||
|
|
96abd0898c |
Migrate Icons to Tabler icons and integrate into PUI (#7684)
* add icon backend implementation * implement pui icon picker * integrate icons in PUI * Bump API version * PUI: add icon to detail pages top header * CUI: explain icon format and change link to tabler icons site * CUI: use new icon packs * move default icon implementation to backend * add icon template tag to use in report printing * add missing migrations * fit to previous schema with part category icon * fit to previous schema with part category icon * add icon pack plugin integration * Add custom command to migrate icons * add docs * fix: tests * fix: tests * add tests * fix: tests * fix: tests * fix: tests * fix tests * fix sonarcloud issues * add logging * remove unneded pass * significantly improve performance of icon picker component |
||
|
|
d46ed4af6f |
[FR] Add Tokens to PUI (#7693)
* [FR] Add Tokens to PUI Fixes #6500 * fix name / call pattern * cleanup * add "revoke" action * Lock currently used token * Update serializers.py * bump api version |
||
|
|
69298c365a | Fix tooltip location for panel icon (#7703) | ||
|
|
01fe26e15f |
[PUI] Remember state of table sorting (#7702)
- Remember table ordering information |
||
|
|
ffd55cf164 |
[PUI] Add permissions to groups (#7621)
* Add permissions to group API * factor out permission formatting * add group permission details to UI * add nicer accordions with permissions * add group to models * Add Admin button to change permissions * add missing instance renderer * turn off default view permission to everything * add migration * fix rule assigment * Add now missing view permissions * Adjust test for the now new default permission count * add missing view permission * fix permissions for search test * adjust search testing to also account for missing permissions * adjust to new defaults * expand role testing --------- Co-authored-by: Oliver <oliver.henry.walters@gmail.com> |
||
|
|
16e535f45f |
Add barcode generation capabilities to plugins (#7648)
* initial implementation of barcode generation using plugins * implement short QR code scanning * add PUI qrcode preview * use barcode generation for CUI show barcode modal * remove short qr prefix validators and fix short qr detection regex * catch errors if model with pk is not found for scanning and generating * improve qrcode templatetag * fix comments * fix for python 3.9 * add tests * fix: tests * add docs * fix: tests * bump api version * add docs to BarcodeMixin * fix: test * added suggestions from code review * fix: tests * Add MinLengthValidator to short barcode prefix setting * fix: tests? * trigger: ci * try custom cache * try custom cache ignore all falsy * remove debugging * Revert "Add MinLengthValidator to short barcode prefix setting" This reverts commit |
||
|
|
afad866d1d |
[PUI] form error fix (#7689)
* Make initial data query wait until options query is complete * Fix form error issues - Form fields were being re-constructed * Update playwright tests - check for form error message * Prevent reconstruction of form fields * Hide form elements until OPTIONS request is complete * Fix for <ChoiceField /> - "value" must be stringified! * Handle undefined choice values * Add "batch code" to stock detail page * Fix for initial focus * Allow form field definition to change externally * Force override of fetched data * Update playwright tests * Add backup value * Cleanup initialdataquery * Unit test updates * Test updates * Tweak API Form * Adjust playwright test |
||
|
|
d4cd7d4a72 |
[PUI] Tab permissions (#7692)
* [PUI] Hide main nav tabs based on user roles * Add permission checks on top-level pages * Specify return type |
||
|
|
0a2817dbf3 |
Small typescript cleanups (#7685)
* cleanup typescript:S1128 * fix typescript:S1854 * clean up typescript:S6749 * fix names for typescript:S6754 |
||
|
|
c6d310caf7 |
Fix loading sequence for PUI form fields (#7678)
- Ensure that "existing" values are honored - Change hook execution ordering - Delay field display until all fields are loaded |
||
|
|
58807d575c |
[PUI] Tweaks (#7673)
* Fix typo * Filter fix for "supplier" field * Fix supplier part actions * Fix actions for manufacturer part * Improve bulk-delete modal - Prevents duplicate copies of modal being displayed * Cleanup admin / settings panels * Adjust playwright test |
||
|
|
ca3f5c096c |
New Crowdin updates (#7669)
* updated translation base * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> |
||
|
|
547fa179c5 |
Various SAST fixes (#7644)
* cleanup auth * clean Unexpected empty object pattern * clenaup empty object patterns * fix identical sub-expressions * fix missing title on iframe * Do not pass children as props * update node assigment * fix typing * fix variables that shadow builtins * revert StylishText change |
||
|
|
eacd28bf19 |
[PUI] PO line item import (#7671)
* Fix typo * Adds new field to DataImportSession model - field_filters - Allows custom API field filters to be specified * Update serializer * Add button to import purchase order line items * Fix instance renderer * Make use of "filters" attribute * Specify default currency for import * Update serializer * Bump API version * Rename purchaseorderline -> purchaseorderlineitem |
||
|
|
453254c278 |
Add notes to mp and sp (#7667)
* add notes to mp and sp * bump api version |
||
|
|
b783f521de |
Fix rendering bug with company image (#7668)
Fixed rendering bug when switching from a company that has an image and one that hasn't in a related model field due to the number of rendered hooks changes, because Thumbnail is not used as a component here, but a normal function. |
||
|
|
c3ce9cd3c2 |
Adjust packaging at different stages (#7649)
* Allow override of packaging field when receiving items against a PurchaseOrder * Allow editing of batch code and packaging when transferring stock * Bump API version * Translate table headers * [PUI] Update receive items form * [PUI] Allow packaging adjustment on stock actions * Hide packaging field for other actions * JS linting * Add 'note' field when receiving item against purchase order * [CUI] implement note field * Implement "note" field in PUI * Comment out failing tests |
||
|
|
12dfaaba9a |
Logic fix for UI elements (#7657)
- Check for false, as !true includes undefined - Prevents visual flashes due to short term rendering of elements |
||
|
|
33b2ca897d | Fix location icon field (#7658) | ||
|
|
b96b8b8a04 |
[PUI] Tweak purchase order line table (#7656)
* Add "packaging" field to PO line table * Fixes for order detail pages |
||
|
|
76f8a2ee9e |
[PUI] Add BOM import tool (#7635)
* Add "field_overrides" field to DataImportSession model * Adjust logic for extracting field value * Add import drawer to BOM table * Enable download of BOM data * Improve support for hidden errors in forms * Improve form submission on front-end - Handle a mix of files and JSON fields - Stringify any objects * Update backend validation for data import session - Accept override values if provided - Ensure correct data format - Update fields for BomItem serializer * Add completion check for data import session * Improvements to importer drawer * Render column selection as a table * Add debouncing to text form fields - Significantly reduces rendering calls * Fix for TextField * Allow instance data to be updated manually * Allow specification of per-field default values when importing data * Improve rendering of import * Improve UI for data import drawer * Bump API version * Add callback after bulk delete * Update playwright test * Fix for editRow function |
||
|
|
750e6d81fa |
Allocated stock table fix (#7636)
* Expose batch code field to StockItemSerializerBrief * Expose more fields to PartBriefSerializer * Additional export fields to BuildItemSerializer * Bump API version * Fix playwright test |
||
|
|
0db280ad74 | Add estonian language support (#7647) | ||
|
|
23a394d740 |
Fix machine request pickeling and settings (#6772)
* Fix machine request pickeling * fix precommit * fix: shared state between workers and main thread for machine registry * remove last usage of legacy PUI form framework to fix machine edit/delete modal * reset cache before initialization * update documentation * fix: invalidating cache * implement machine registry hash to check if a reload is required * trigger: ci * fix: request bug * fix: test * trigger: ci * add clear errors and improve restart hook * auto initialize not initialized machines when changing active state * fix: tests |
||
|
|
767b76314e |
Revision Improvements (#7585)
* Bump djangorestframework from 3.14.0 to 3.15.2 in /src/backend Bumps [djangorestframework](https://github.com/encode/django-rest-framework) from 3.14.0 to 3.15.2. - [Release notes](https://github.com/encode/django-rest-framework/releases) - [Commits](https://github.com/encode/django-rest-framework/compare/3.14.0...3.15.2) --- updated-dependencies: - dependency-name: djangorestframework dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> * fix req * fix deps again * patch serializer * bump api version * Fix "min_value" for DRF decimal fields * Add default serializer values for 'IPN' and 'revision' * Add specific serializer for email field * Fix API version * Add 'revision_of' field to Part model * Add validation checks for new revision_of field * Update migration * Add unit test for 'revision' rules * Add API filters for revision control * Add table filters for PUI * Add "revision_of" field to PUI form * Update part forms for PUI * Render part revision selection dropdown in PUI * Prevent refetch on focus * Ensure select renders above other items * Disable searching * Cleanup <PartDetail/> * UI tweak * Add setting to control revisions for assemblies * Hide revision selection drop-down if revisions are not enabled * Query updates * Validate entire BOM table from PUI * Sort revisions * Fix requirements files * Fix api_version.py * Reintroduce previous check for IPN / revision uniqueness * Set default value for refetchOnWindowFocus (false) * Revert serializer change * Further CI fixes * Further unit test updates * Fix defaults for query client * Add docs * Add link to "revision_of" in CUI * Add playwright test for revisions * Ignore notification errors for playwright --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Mair <code@mjmair.com> |
||
|
|
fb17078497 |
Arabic support (#7630)
* Add 'ar' language (Arabic) * Add front-end support |
||
|
|
a237de10ec |
Update part detail (#7629)
- Include variant stock in "in stock" badge |
||
|
|
3d8235423a |
Various small code quality cleanups (#7626)
* fix possible access to None value
* fix possible access to empty valie
* fix possible access to empty value
* define exception
* remove old todo
* fix trigger on none
* merge condition
* remove empty object pattern
* fix typo
* fix usage of var
* add missing import
* use for of itterator instead
* use let instead of var
* move declaration to ensure logger is accessible
* Revert "remove empty object pattern"
This reverts commit
|
||
|
|
6650f3e90c |
[Feature] Build allocation export (#7611)
* CUI: Add "allocated stock" panel to build order page * Implement CUI table for build order allocations * Add "bulk delete" option for build order allocations * Add row actions * Add extra fields for data export * Add build allocation table in PUI * Add 'batch' column * Bump API version * Add playwright tests * Fix missing renderer * Update build docs * Update playwright tests * Update playwright tests |
||
|
|
5e040c4dc4 | [PUI] Add filters for parameteric part table (#7617) | ||
|
|
2ebe6e0a8e |
Add server-side annotation for "can_build" (#7619)
* Add server-side annotation for "can_build" - This calculation now performed on the server (in the API) - Allows better table ordering, etc - Makes it available for data export * Bump API version |
||
|
|
81ab7aa625 |
[PUI] Add more columns (#7618)
* [PUI] Add more columns - Add "IPN" column to stock table - Add "revision" column to stock table * Add IPN column to BOM table |
||
|
|
2e4ab45635 | [PUI] Fix line-break for "details" field (#7616) | ||
|
|
7655113851 |
[PUI] Query cache improvements (#7609)
* Remove duplicate call to fetchUserState * Optimize printing fields request - Implement using useQuery hook - Add 500ms cache * Prevent duplicate locale setting * Add cache time to useFilters hook * Prevent useGenerator from fetching initially |
||
|
|
2d8f5e9006 |
Tweak checks for error messages (#7598)
* Tweak checks for error messages - Ensure user is logged in before checking permissions * Fix <InstanceDetail/> * Tweak notification check |
||
|
|
b59ecdaeac |
Bump the dependencies group across 1 directory with 52 updates (#7540)
* Bump the dependencies group across 1 directory with 52 updates Bumps the dependencies group with 50 updates in the /src/frontend directory: | Package | From | To | | --- | --- | --- | | [@codemirror/autocomplete](https://github.com/codemirror/autocomplete) | `6.16.0` | `6.16.3` | | [@codemirror/language](https://github.com/codemirror/language) | `6.10.1` | `6.10.2` | | [@codemirror/lint](https://github.com/codemirror/lint) | `6.5.0` | `6.8.1` | | [@codemirror/view](https://github.com/codemirror/view) | `6.26.3` | `6.28.3` | | [@fortawesome/react-fontawesome](https://github.com/FortAwesome/react-fontawesome) | `0.2.0` | `0.2.2` | | [@lingui/core](https://github.com/lingui/js-lingui) | `4.10.0` | `4.11.1` | | [@lingui/react](https://github.com/lingui/js-lingui) | `4.10.0` | `4.11.1` | | [@mantine/carousel](https://github.com/mantinedev/mantine/tree/HEAD/packages/@mantine/carousel) | `7.10.0` | `7.11.0` | | [@mantine/charts](https://github.com/mantinedev/mantine/tree/HEAD/packages/@mantine/charts) | `7.10.1` | `7.11.0` | | [@mantine/core](https://github.com/mantinedev/mantine/tree/HEAD/packages/@mantine/core) | `7.10.0` | `7.11.0` | | [@mantine/dates](https://github.com/mantinedev/mantine/tree/HEAD/packages/@mantine/dates) | `7.10.0` | `7.11.0` | | [@mantine/dropzone](https://github.com/mantinedev/mantine/tree/HEAD/packages/@mantine/dropzone) | `7.10.0` | `7.11.0` | | [@mantine/form](https://github.com/mantinedev/mantine/tree/HEAD/packages/@mantine/form) | `7.10.0` | `7.11.0` | | [@mantine/hooks](https://github.com/mantinedev/mantine/tree/HEAD/packages/@mantine/hooks) | `7.10.0` | `7.11.0` | | [@mantine/modals](https://github.com/mantinedev/mantine/tree/HEAD/packages/@mantine/modals) | `7.10.0` | `7.11.0` | | [@mantine/notifications](https://github.com/mantinedev/mantine/tree/HEAD/packages/@mantine/notifications) | `7.10.0` | `7.11.0` | | [@mantine/spotlight](https://github.com/mantinedev/mantine/tree/HEAD/packages/@mantine/spotlight) | `7.10.0` | `7.11.0` | | [@mantine/vanilla-extract](https://github.com/mantinedev/mantine/tree/HEAD/packages/@mantine/vanilla-extract) | `7.10.0` | `7.11.0` | | [@mdxeditor/editor](https://github.com/mdx-editor/editor) | `3.4.0` | `3.6.1` | | [@sentry/react](https://github.com/getsentry/sentry-javascript) | `7.110.1` | `8.13.0` | | [@tabler/icons-react](https://github.com/tabler/tabler-icons/tree/HEAD/packages/icons-react) | `3.2.0` | `3.7.0` | | [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) | `5.29.2` | `5.49.2` | | [@uiw/codemirror-theme-vscode](https://github.com/uiwjs/react-codemirror) | `4.21.25` | `4.22.2` | | [@uiw/react-codemirror](https://github.com/uiwjs/react-codemirror) | `4.21.25` | `4.22.2` | | [@vanilla-extract/css](https://github.com/vanilla-extract-css/vanilla-extract/tree/HEAD/packages/css) | `1.14.2` | `1.15.3` | | [axios](https://github.com/axios/axios) | `1.6.8` | `1.7.2` | | [embla-carousel-react](https://github.com/davidjerleke/embla-carousel) | `8.0.2` | `8.1.6` | | [mantine-datatable](https://github.com/icflorescu/mantine-datatable) | `7.8.1` | `7.11.1` | | [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `18.2.0` | `18.3.1` | | [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `18.2.79` | `18.3.3` | | [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `18.2.0` | `18.3.1` | | [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom) | `18.2.25` | `18.3.0` | | [react-is](https://github.com/facebook/react/tree/HEAD/packages/react-is) | `18.2.0` | `18.3.1` | | [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) | `6.22.3` | `6.24.0` | | [styled-components](https://github.com/styled-components/styled-components) | `6.1.8` | `6.1.11` | | [zustand](https://github.com/pmndrs/zustand) | `4.5.2` | `4.5.4` | | [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) | `7.24.4` | `7.24.7` | | [@babel/preset-react](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-react) | `7.24.1` | `7.24.7` | | [@babel/preset-typescript](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-typescript) | `7.24.1` | `7.24.7` | | [@lingui/cli](https://github.com/lingui/js-lingui) | `4.10.0` | `4.11.1` | | [@lingui/macro](https://github.com/lingui/js-lingui) | `4.10.0` | `4.11.1` | | [@playwright/test](https://github.com/microsoft/playwright) | `1.43.1` | `1.45.0` | | [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `20.12.7` | `20.14.9` | | [@vanilla-extract/vite-plugin](https://github.com/vanilla-extract-css/vanilla-extract/tree/HEAD/packages/vite-plugin) | `4.0.7` | `4.0.12` | | [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `4.2.1` | `4.3.1` | | [nyc](https://github.com/istanbuljs/nyc) | `15.1.0` | `17.0.0` | | [rollup-plugin-license](https://github.com/mjeanroy/rollup-plugin-license) | `3.3.1` | `3.5.1` | | [typescript](https://github.com/Microsoft/TypeScript) | `5.4.5` | `5.5.2` | | [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `5.2.8` | `5.3.2` | | [vite-plugin-istanbul](https://github.com/ifaxity/vite-plugin-istanbul) | `6.0.0` | `6.0.2` | Updates `@codemirror/autocomplete` from 6.16.0 to 6.16.3 - [Changelog](https://github.com/codemirror/autocomplete/blob/main/CHANGELOG.md) - [Commits](https://github.com/codemirror/autocomplete/compare/6.16.0...6.16.3) Updates `@codemirror/language` from 6.10.1 to 6.10.2 - [Changelog](https://github.com/codemirror/language/blob/main/CHANGELOG.md) - [Commits](https://github.com/codemirror/language/compare/6.10.1...6.10.2) Updates `@codemirror/lint` from 6.5.0 to 6.8.1 - [Changelog](https://github.com/codemirror/lint/blob/main/CHANGELOG.md) - [Commits](https://github.com/codemirror/lint/compare/6.5.0...6.8.1) Updates `@codemirror/view` from 6.26.3 to 6.28.3 - [Changelog](https://github.com/codemirror/view/blob/main/CHANGELOG.md) - [Commits](https://github.com/codemirror/view/compare/6.26.3...6.28.3) Updates `@fortawesome/react-fontawesome` from 0.2.0 to 0.2.2 - [Release notes](https://github.com/FortAwesome/react-fontawesome/releases) - [Changelog](https://github.com/FortAwesome/react-fontawesome/blob/0.2.x/CHANGELOG.md) - [Commits](https://github.com/FortAwesome/react-fontawesome/compare/0.2.0...0.2.2) Updates `@lingui/core` from 4.10.0 to 4.11.1 - [Release notes](https://github.com/lingui/js-lingui/releases) - [Changelog](https://github.com/lingui/js-lingui/blob/main/CHANGELOG.md) - [Commits](https://github.com/lingui/js-lingui/compare/v4.10.0...v4.11.1) Updates `@lingui/react` from 4.10.0 to 4.11.1 - [Release notes](https://github.com/lingui/js-lingui/releases) - [Changelog](https://github.com/lingui/js-lingui/blob/main/CHANGELOG.md) - [Commits](https://github.com/lingui/js-lingui/compare/v4.10.0...v4.11.1) Updates `@mantine/carousel` from 7.10.0 to 7.11.0 - [Release notes](https://github.com/mantinedev/mantine/releases) - [Changelog](https://github.com/mantinedev/mantine/blob/master/CHANGELOG.md) - [Commits](https://github.com/mantinedev/mantine/commits/7.11.0/packages/@mantine/carousel) Updates `@mantine/charts` from 7.10.1 to 7.11.0 - [Release notes](https://github.com/mantinedev/mantine/releases) - [Changelog](https://github.com/mantinedev/mantine/blob/master/CHANGELOG.md) - [Commits](https://github.com/mantinedev/mantine/commits/7.11.0/packages/@mantine/charts) Updates `@mantine/core` from 7.10.0 to 7.11.0 - [Release notes](https://github.com/mantinedev/mantine/releases) - [Changelog](https://github.com/mantinedev/mantine/blob/master/CHANGELOG.md) - [Commits](https://github.com/mantinedev/mantine/commits/7.11.0/packages/@mantine/core) Updates `@mantine/dates` from 7.10.0 to 7.11.0 - [Release notes](https://github.com/mantinedev/mantine/releases) - [Changelog](https://github.com/mantinedev/mantine/blob/master/CHANGELOG.md) - [Commits](https://github.com/mantinedev/mantine/commits/7.11.0/packages/@mantine/dates) Updates `@mantine/dropzone` from 7.10.0 to 7.11.0 - [Release notes](https://github.com/mantinedev/mantine/releases) - [Changelog](https://github.com/mantinedev/mantine/blob/master/CHANGELOG.md) - [Commits](https://github.com/mantinedev/mantine/commits/7.11.0/packages/@mantine/dropzone) Updates `@mantine/form` from 7.10.0 to 7.11.0 - [Release notes](https://github.com/mantinedev/mantine/releases) - [Changelog](https://github.com/mantinedev/mantine/blob/master/CHANGELOG.md) - [Commits](https://github.com/mantinedev/mantine/commits/7.11.0/packages/@mantine/form) Updates `@mantine/hooks` from 7.10.0 to 7.11.0 - [Release notes](https://github.com/mantinedev/mantine/releases) - [Changelog](https://github.com/mantinedev/mantine/blob/master/CHANGELOG.md) - [Commits](https://github.com/mantinedev/mantine/commits/7.11.0/packages/@mantine/hooks) Updates `@mantine/modals` from 7.10.0 to 7.11.0 - [Release notes](https://github.com/mantinedev/mantine/releases) - [Changelog](https://github.com/mantinedev/mantine/blob/master/CHANGELOG.md) - [Commits](https://github.com/mantinedev/mantine/commits/7.11.0/packages/@mantine/modals) Updates `@mantine/notifications` from 7.10.0 to 7.11.0 - [Release notes](https://github.com/mantinedev/mantine/releases) - [Changelog](https://github.com/mantinedev/mantine/blob/master/CHANGELOG.md) - [Commits](https://github.com/mantinedev/mantine/commits/7.11.0/packages/@mantine/notifications) Updates `@mantine/spotlight` from 7.10.0 to 7.11.0 - [Release notes](https://github.com/mantinedev/mantine/releases) - [Changelog](https://github.com/mantinedev/mantine/blob/master/CHANGELOG.md) - [Commits](https://github.com/mantinedev/mantine/commits/7.11.0/packages/@mantine/spotlight) Updates `@mantine/vanilla-extract` from 7.10.0 to 7.11.0 - [Release notes](https://github.com/mantinedev/mantine/releases) - [Changelog](https://github.com/mantinedev/mantine/blob/master/CHANGELOG.md) - [Commits](https://github.com/mantinedev/mantine/commits/7.11.0/packages/@mantine/vanilla-extract) Updates `@mdxeditor/editor` from 3.4.0 to 3.6.1 - [Release notes](https://github.com/mdx-editor/editor/releases) - [Commits](https://github.com/mdx-editor/editor/compare/v3.4.0...v3.6.1) Updates `@sentry/react` from 7.110.1 to 8.13.0 - [Release notes](https://github.com/getsentry/sentry-javascript/releases) - [Changelog](https://github.com/getsentry/sentry-javascript/blob/develop/CHANGELOG.md) - [Commits](https://github.com/getsentry/sentry-javascript/compare/7.110.1...8.13.0) Updates `@tabler/icons-react` from 3.2.0 to 3.7.0 - [Release notes](https://github.com/tabler/tabler-icons/releases) - [Commits](https://github.com/tabler/tabler-icons/commits/v3.7.0/packages/icons-react) Updates `@tanstack/react-query` from 5.29.2 to 5.49.2 - [Release notes](https://github.com/TanStack/query/releases) - [Commits](https://github.com/TanStack/query/commits/v5.49.2/packages/react-query) Updates `@uiw/codemirror-theme-vscode` from 4.21.25 to 4.22.2 - [Release notes](https://github.com/uiwjs/react-codemirror/releases) - [Commits](https://github.com/uiwjs/react-codemirror/compare/v4.21.25...v4.22.2) Updates `@uiw/react-codemirror` from 4.21.25 to 4.22.2 - [Release notes](https://github.com/uiwjs/react-codemirror/releases) - [Commits](https://github.com/uiwjs/react-codemirror/compare/v4.21.25...v4.22.2) Updates `@vanilla-extract/css` from 1.14.2 to 1.15.3 - [Release notes](https://github.com/vanilla-extract-css/vanilla-extract/releases) - [Changelog](https://github.com/vanilla-extract-css/vanilla-extract/blob/master/packages/css/CHANGELOG.md) - [Commits](https://github.com/vanilla-extract-css/vanilla-extract/commits/@vanilla-extract/css@1.15.3/packages/css) Updates `axios` from 1.6.8 to 1.7.2 - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md) - [Commits](https://github.com/axios/axios/compare/v1.6.8...v1.7.2) Updates `clsx` from 2.1.0 to 2.1.1 - [Release notes](https://github.com/lukeed/clsx/releases) - [Commits](https://github.com/lukeed/clsx/compare/v2.1.0...v2.1.1) Updates `embla-carousel-react` from 8.0.2 to 8.1.6 - [Release notes](https://github.com/davidjerleke/embla-carousel/releases) - [Commits](https://github.com/davidjerleke/embla-carousel/compare/v8.0.2...v8.1.6) Updates `mantine-datatable` from 7.8.1 to 7.11.1 - [Changelog](https://github.com/icflorescu/mantine-datatable/blob/main/CHANGELOG.md) - [Commits](https://github.com/icflorescu/mantine-datatable/commits) Updates `react` from 18.2.0 to 18.3.1 - [Release notes](https://github.com/facebook/react/releases) - [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/react/commits/v18.3.1/packages/react) Updates `@types/react` from 18.2.79 to 18.3.3 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) Updates `react-dom` from 18.2.0 to 18.3.1 - [Release notes](https://github.com/facebook/react/releases) - [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/react/commits/v18.3.1/packages/react-dom) Updates `@types/react-dom` from 18.2.25 to 18.3.0 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom) Updates `react-hook-form` from 7.51.3 to 7.51.5 - [Release notes](https://github.com/react-hook-form/react-hook-form/releases) - [Changelog](https://github.com/react-hook-form/react-hook-form/blob/master/CHANGELOG.md) - [Commits](https://github.com/react-hook-form/react-hook-form/compare/v7.51.3...v7.51.5) Updates `react-is` from 18.2.0 to 18.3.1 - [Release notes](https://github.com/facebook/react/releases) - [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/react/commits/v18.3.1/packages/react-is) Updates `react-router-dom` from 6.22.3 to 6.24.0 - [Release notes](https://github.com/remix-run/react-router/releases) - [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md) - [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.24.0/packages/react-router-dom) Updates `styled-components` from 6.1.8 to 6.1.11 - [Release notes](https://github.com/styled-components/styled-components/releases) - [Commits](https://github.com/styled-components/styled-components/compare/v6.1.8...v6.1.11) Updates `zustand` from 4.5.2 to 4.5.4 - [Release notes](https://github.com/pmndrs/zustand/releases) - [Commits](https://github.com/pmndrs/zustand/compare/v4.5.2...v4.5.4) Updates `@babel/core` from 7.24.4 to 7.24.7 - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.24.7/packages/babel-core) Updates `@babel/preset-react` from 7.24.1 to 7.24.7 - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.24.7/packages/babel-preset-react) Updates `@babel/preset-typescript` from 7.24.1 to 7.24.7 - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.24.7/packages/babel-preset-typescript) Updates `@lingui/cli` from 4.10.0 to 4.11.1 - [Release notes](https://github.com/lingui/js-lingui/releases) - [Changelog](https://github.com/lingui/js-lingui/blob/main/CHANGELOG.md) - [Commits](https://github.com/lingui/js-lingui/compare/v4.10.0...v4.11.1) Updates `@lingui/macro` from 4.10.0 to 4.11.1 - [Release notes](https://github.com/lingui/js-lingui/releases) - [Changelog](https://github.com/lingui/js-lingui/blob/main/CHANGELOG.md) - [Commits](https://github.com/lingui/js-lingui/compare/v4.10.0...v4.11.1) Updates `@playwright/test` from 1.43.1 to 1.45.0 - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](https://github.com/microsoft/playwright/compare/v1.43.1...v1.45.0) Updates `@types/node` from 20.12.7 to 20.14.9 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) Updates `@types/react` from 18.2.79 to 18.3.3 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) Updates `@types/react-dom` from 18.2.25 to 18.3.0 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom) Updates `@vanilla-extract/vite-plugin` from 4.0.7 to 4.0.12 - [Release notes](https://github.com/vanilla-extract-css/vanilla-extract/releases) - [Changelog](https://github.com/vanilla-extract-css/vanilla-extract/blob/master/packages/vite-plugin/CHANGELOG.md) - [Commits](https://github.com/vanilla-extract-css/vanilla-extract/commits/@vanilla-extract/vite-plugin@4.0.12/packages/vite-plugin) Updates `@vitejs/plugin-react` from 4.2.1 to 4.3.1 - [Release notes](https://github.com/vitejs/vite-plugin-react/releases) - [Changelog](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite-plugin-react/commits/v4.3.1/packages/plugin-react) Updates `nyc` from 15.1.0 to 17.0.0 - [Release notes](https://github.com/istanbuljs/nyc/releases) - [Changelog](https://github.com/istanbuljs/nyc/blob/main/CHANGELOG.md) - [Commits](https://github.com/istanbuljs/nyc/compare/v15.1.0...nyc-v17.0.0) Updates `rollup-plugin-license` from 3.3.1 to 3.5.1 - [Changelog](https://github.com/mjeanroy/rollup-plugin-license/blob/master/CHANGELOG.md) - [Commits](https://github.com/mjeanroy/rollup-plugin-license/compare/v3.3.1...v3.5.1) Updates `typescript` from 5.4.5 to 5.5.2 - [Release notes](https://github.com/Microsoft/TypeScript/releases) - [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml) - [Commits](https://github.com/Microsoft/TypeScript/compare/v5.4.5...v5.5.2) Updates `vite` from 5.2.8 to 5.3.2 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v5.3.2/packages/vite) Updates `vite-plugin-istanbul` from 6.0.0 to 6.0.2 - [Release notes](https://github.com/ifaxity/vite-plugin-istanbul/releases) - [Changelog](https://github.com/iFaxity/vite-plugin-istanbul/blob/next/release.config.js) - [Commits](https://github.com/ifaxity/vite-plugin-istanbul/compare/v6.0.0...v6.0.2) --- updated-dependencies: - dependency-name: "@codemirror/autocomplete" dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dependencies - dependency-name: "@codemirror/language" dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dependencies - dependency-name: "@codemirror/lint" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@codemirror/view" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@fortawesome/react-fontawesome" dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dependencies - dependency-name: "@lingui/core" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@lingui/react" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@mantine/carousel" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@mantine/charts" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@mantine/core" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@mantine/dates" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@mantine/dropzone" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@mantine/form" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@mantine/hooks" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@mantine/modals" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@mantine/notifications" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@mantine/spotlight" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@mantine/vanilla-extract" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@mdxeditor/editor" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@sentry/react" dependency-type: direct:production update-type: version-update:semver-major dependency-group: dependencies - dependency-name: "@tabler/icons-react" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@tanstack/react-query" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@uiw/codemirror-theme-vscode" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@uiw/react-codemirror" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@vanilla-extract/css" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: axios dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: clsx dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dependencies - dependency-name: embla-carousel-react dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: mantine-datatable dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: react dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: react-dom dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@types/react-dom" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: react-hook-form dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dependencies - dependency-name: react-is dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: react-router-dom dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: styled-components dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dependencies - dependency-name: zustand dependency-type: direct:production update-type: version-update:semver-patch dependency-group: dependencies - dependency-name: "@babel/core" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dependencies - dependency-name: "@babel/preset-react" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dependencies - dependency-name: "@babel/preset-typescript" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dependencies - dependency-name: "@lingui/cli" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@lingui/macro" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@playwright/test" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@types/react-dom" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: "@vanilla-extract/vite-plugin" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dependencies - dependency-name: "@vitejs/plugin-react" dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: nyc dependency-type: direct:development update-type: version-update:semver-major dependency-group: dependencies - dependency-name: rollup-plugin-license dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: typescript dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: vite dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: vite-plugin-istanbul dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dependencies ... Signed-off-by: dependabot[bot] <support@github.com> * Fix callback args for <Boundary> * Ignore specific warning message (for now) * Tweak unit test --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Oliver <oliver.henry.walters@gmail.com> |
||
|
|
e943c5a686 |
Build Line Updates (#7591)
* Update build line tables * Add additional fiels to BuildLine serializer * Bump API version |
||
|
|
9a6cfb4309 |
PUI form framework: dependent field (#7584)
* PUI form framework: implement the dependent field * fix: tests * fix: hook * fix: tests * --no-verify trigger: ci * --noVerify trigger: ci |
||
|
|
1017ff0605 |
Default location column (#7587)
* Add "default_location_detail" serializer to part API * Add column to CUI table * Implement in PUI part table * Update API version |
||
|
|
189948be06 |
New Crowdin updates (#7588)
* updated translation base * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> |
||
|
|
3ce0202ffd |
[PUI] Update part duplicate forms (#7575)
- Enable copying of part details when duplicating a part - Update forms |
||
|
|
8309eb628f |
[Feature] Part lock (#7527)
* Add "locked" field to Part model - Default = false * Add "locked" field to PartSerializer - Allow filtering in API * Filter CUI tables by "locked" status * Add "locked" filter to part table * Update PUI table * PUI: Update display of part details page * Add "locked" element * Ensmallen the gap * Edit "locked" field in CUI * Check BomItem before editing or deleting * Prevent bulk delete of BOM items * Check part lock for PartParameter model * Prevent deletion of a locked part * Add option to prevent build order creation for unlocked part * Bump API version * Hide actions from BOM table if part is locked * Fix for boolean form field * Update <PartParameterTable> * Add unit test for 'BUILDORDER_REQUIRE_LOCKED_PART' setting * Add unit test for part deletion * add bom item test * unit test for part parameter * Update playwright tests * Update docs * Remove defunct setting * Update playwright tests |
||
|
|
97b6258797 |
[PUI] Fix saveNotes callback (#7545)
* [PUI] Fix saveNotes callback * add delay to playwright test |
||
|
|
ab126a8c1b |
New Crowdin updates (#7564)
* updated translation base * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations messages.po from Crowdin * Fix: New translations django.po from Crowdin --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> |
||
|
|
1f6cd9fc54 |
[WIP] Data importer (#6911)
* Adds new model for DataImportSession * Add file extension validation Expose to admin interface also * Switch to new 'importer' app * Refactoring to help prevent circular imports * Add serializer registry - Use @register_importer tag for any serializer class * Cleanup migration file - Do not use one-time hard-coded values here * Refactor code into registry.py * Add validation for the uploaded file - Must be importable by tablib * Refactoring * Adds property to retrieve matching serializer class * Update helper functions * Add hook to auto-assign columns on initial creation * Rename field * Enforce initial status value * Add model for individual rows in the data import * Add DataImportRow model * Extract data rows as dict * Update fields - Remove "progress" field (will be calculated) - Added "timestamp" field - Added "complete" field to DataImportRow * Auto-map column names - Provide "sensible" default values * Add API endpoint for DataImportSession * Offload data import operation - For large data files this may take a significant amount of time - Offload it to the background worker process * Refactor data import code * Update models - Add "columns" field to DataImportSession - Add "errors" field to DataImportRow * Move field mapping to a new model type - Simpler validation * Save "valid" status for each data row * Include session defaults when validating row data * Update content_excludes - Ignore importer models in import/export * Remove port from ALLOWED_HOST entries * Skip table events for importer models * Bug fixes * Serializer updates * Add more endpoints - DataImportColumnMappingList - DataImportRowList * further updates: - Add 'get_api_url' method - Handle case where * Expose "available fields" to the DataImportSession serializer Uses the (already available) inventree metadata middleware * Add detail endpoints * Clear existing column mappings * Add endpoint for accepting column mappings * Add API endpoint exposing available importer serializers * Add simple playground area for testing data importer * Adds simple form to start new import session - Needs work, file field does not currently function correctly * data_file is *not* read_only * Add check for file type * Remove debug statements * Refactor column mapping - Generate mapping for each column - Remove "columns" field - Column names are calculated dynamically * Fix uniqueness requirements on mapping table * Admin updates - Prevent deletion of mappings - Prevent addition of mappings * API endpoint updates - Prevent mappings from being deleted - Prevent mappings from being created * Update importer drawer * Add widget for selecting data columns * UI tweaks * Delete import session when closing modal * Allow empty string value * Complete column mapping * Adds ability to remove rows * Adjust drawer specs * Add column 'description' to serializer * Add option to hide labels in API form field * Update column heading * Fix frontend linting errors * Revert drawer position * Return correct type * Fix shadowing * Fix f-string * simplify frontend code * Move importer app * Update API version * Reintroduce export formats * Add new models to RuleSet * typescript cleanup * Typescript cleanup * Improvement for Switch / boolean field * Display original row data on popover * Only display mapped columns * Add DataExportMixin class - Replaces existing APIDownloadMixin - Uses DRF serializers for exporting - *much* more efficient * Create new file: importer.mixins.py * Add new mixin to existing views which support data export * Better error handling * Cleanup: - Remove references to APIDownloadMixin - Remove download_queryset method - All now handled by API-based export functionality * Replace table with InvenTreeTable - Paginate imported rows - Data can be searched, ordered, * Make 'pathstring' fields read-only * Expose list of valid importer types to the API * Exclude read-only fields * Cleanup * Updates for session model - Column is now editable on mapping object - Field is no longer editable - Improve admin integration * Adds new custom hook for controlling data import session * Refactor column mapping widget * Refactor ImportDataSelector * Working on ImportDataSelector component * Adds method for editing fields in import table - Cell edit mode - Row edit mode - Form submission still needs work! * Adds background task for removing old import sessions * Fix api_version.py * Update src/frontend/src/components/importer/ImportDataSelector.tsx Co-authored-by: Lukas <76838159+wolflu05@users.noreply.github.com> * Update model verbose names * Rename mixin class * Add serializer mixin classes - Will allow for fine-tuning of the import/export proces * @register_importer requires specific mixin * Check subclass for export * Fix typos * Refactor export serializer - Keep operations local to the class * Add shim class to process an individual row before exporting it * Add mixin to existing serializers * Add export functionality for company serializers * Adds placeholder for custom admin class * Update mantine styling * spacing -> gap * Add functionality to pre-process form data before upload * Remove old references to download_queryset * Improvements for data import drawer: - Pin title at top of drawer * Further improvements * Fix column selection input * Formatting improvements * Use a <Stepper> component for better progress display * Cleanup text * Add export-only fields to BuildItem queryset * Expand "export" fields for BuildItem dataset * Skip backup and static steps in CI * Remove hard-coded paths * Fix for "accept_mapping" method * Present required fields first on import session * Add "get_importable_fields" method * Add method for commiting imported row to database * Cleanup * Save "complete" state after row import * Allow prevention of column caching * Remove debug statement * Add basic admin table for import sessions * Fix for table filter functions - New mantine version requires string values * Add filters for import session table * Remove debug message * fix for <FilterItem /> * Create new import session from admin page * Cleanup playground * Re-open an existing import session * Memoize cell value * Update <ImportDataSelector> * Enable download of build line data * Add extra detail fields * Register data importers for the stock app * Enable download of stock item tracking data * Register importerrs for "company" app * Register importers for the "order" app * Add extra fields to purchase order line item serializer * Update verbose names for order models * Cleanup import data table rendering * Pass session information through to cell renderer * add separate 'field_overrides' field * Expose 'field_overrides' to API * Refactor import field selection * Use override data if provided * Fix data extraction - Ignore columns which are not mapped * Fix fields.pop - Provide 'None' argument * Update import data rendering * Handle missing / empty column names when importing data * Bug fixin' * Update hook * Adds button to upload data straight to table * Cache "available_fields" - Reduces API access time by 85% * Fix calculation of completed_row_count * Import individual rows from import session * Allow import of multiple simultaneous records * Improve extraction of metadata - Especially for related fields - Request object no longer required * Implement suspended rendering of model instances * Cleanup * Implement more columns for StockTable * Allow stock filtering by packaging field * Fix "stock_value" column * Improve metadata extraction - Handle read_only_fields in Meta - Handle write_only_fields in Meta * Increase maximum number of importable rows * Force data import to run on background worker * Add export-only fields to StockItemSerializer class * Data conversion when performing initial import * Various tweaks * Fix order of operations for data import * Rename component * Allow import/export of more model types * Fix verbose name * Import rows as a bulk db operation * Enable download for PartCategoryTemplateTable * Update stock item export * Updates for unit tests * Remove xls format for now - Causes some bug in tablib - Surely xlsx is OK? * More unit test updates * Future proof migration * Updates * unit tests * Unit test fix * Remove 'field_overrides' - field_defaults will suffice * Remove 'xls' as download option from frontend * Add simple unit test for data import * PUI tweaks --------- Co-authored-by: Lukas <76838159+wolflu05@users.noreply.github.com> |