Commit Graph
100 Commits
Author SHA1 Message Date
Oliver Walters 7315c344f1 Merge branch 'block-notes' of github.com:SchrodingersGat/InvenTree into block-notes 2026-05-21 11:50:11 +00:00
Oliver Walters 0c1aa65cb9 Remove old deps 2026-05-21 11:49:41 +00:00
Oliver Walters 136c9256cb remove old editor 2026-05-21 11:47:58 +00:00
Oliver Walters 36e81c40c9 Sanitize before uploading 2026-05-21 11:46:37 +00:00
Oliver Walters 689bd1f224 Refactor save UX 2026-05-21 11:45:01 +00:00
Oliver Walters df340e363c Load notes into editor 2026-05-21 09:59:47 +00:00
Oliver fd3d64de99 Merge branch 'master' into block-notes 2026-05-21 19:59:00 +10:00
Oliver Walters 9e8764d28a Fix conflict (for now) 2026-05-21 09:27:08 +00:00
Oliver Walters c7d11dc939 Mark content field as 'safe' 2026-05-21 09:25:19 +00:00
Oliver Walters d77be246ae Add unit test 2026-05-21 07:51:05 +00:00
Oliver Walters c18fd25431 Update serializer 2026-05-21 07:26:54 +00:00
Oliver Walters ab0da25de8 Add "primary" field to Note model 2026-05-21 07:26:28 +00:00
Oliver 3f3433685d Normalize BomItem quantity (#11975)
- Limit decimal places before save
- Prevents error in BomItem validation
2026-05-21 16:43:49 +10:00
Oliver Walters ac8e8d978c Add "no notes" item 2026-05-20 12:31:31 +00:00
Oliver Walters bc197f9409 Omit migration tests from code coverage 2026-05-20 12:22:19 +00:00
Oliver Walters a0e528a509 Create new notes 2026-05-20 12:13:59 +00:00
Oliver Walters 51d8468e76 Fix serializer 2026-05-20 11:57:02 +00:00
Oliver Walters 6df13fe156 Add note mixin support for existing models 2026-05-20 11:50:55 +00:00
Oliver Walters 88158610af Add notes fetch 2026-05-20 11:43:17 +00:00
Oliver 9cac925e91 Prevent edit serial (#11964)
* Add new global setting

* Run serial number validation check

* Disable field in frontend

* Add unit test

* Docs tweak
2026-05-19 17:06:05 +10:00
Oliver Walters 19c497fb19 Merge commit '99358eb4e7e4b051fd35c0b72c5d75e11ea5f2ec' into block-notes 2026-05-19 06:43:01 +00:00
Oliver 99358eb4e7 Remove image download support (#11962)
* Remove image download support

- Helper function remains (it is used in the supplier plugin mixin)
- No longer available to user
- Close massive security hole entirely
- Will be defunct soon anyway (moving to generic attachments)

* Update CHANGELOG.md

* Bump API version

* Fix for unit tests
2026-05-19 07:02:05 +10:00
Oliver Walters 1078475acb API / serializer updates 2026-05-18 14:18:04 +00:00
Oliver Walters 176733d762 Add basic tab group for switching notes 2026-05-18 14:07:58 +00:00
Oliver Walters 71d51ff7b4 Add new generic "notes" model 2026-05-18 13:56:34 +00:00
Oliver Walters 01bc34e08a Add new notes editor using blocknote 2026-05-18 13:46:47 +00:00
Oliver Walters eff83e745e Install packages for blocknote 2026-05-18 13:42:11 +00:00
Oliver acc2786e44 [feature] Rename attachments (#11920)
* Implementation

* Update API and CHANGELOG

* Annotate response type

* Simplify attachment renaming

- Use the existing API endpoint

* Capture the actual saved path

* Tweak attachment table fields

* Use built-in validation

* Update docs

* Unit testing

* Ignore some lines from coverage

* Check if file exists before deleting
2026-05-18 20:02:46 +10:00
Oliver 73c7820ac0 Fix for dashboard item logic (#11960)
- Render cached value
2026-05-17 20:21:08 +10:00
OliverandMatthias Mair 9f78e994c2 [UI] Mantine 9 (#11947)
* Update mantine deps

* Get it to compile

* Update QueryCount widgets

- use new RollingNumber component

* Table updates

- Remove "hack" for column ordering

* "Fix" the column pinning bug (maybe?)

* Fix ColumnRenderers.tsx

* Fix login code for playwright

* Remove hashing requirement

* Fix build tests

* More fixes

* More test fixes

* Fix playwright test for dashboard item

* Update frontend version

* Update changelog

* Reduce query repeats

* More playwright fixes

* Further playwright fixes

* Fix for useFilterSet hook

* Fix unique key error

* Fix rendering issues when opening edit forms

* reduce console errors

* Fix unique key issues in search drawer

* Update frontend CHANGELOG.md

* More form tweaks

---------

Co-authored-by: Matthias Mair <code@mjmair.com>
2026-05-17 19:26:37 +10:00
Oliver c09848422c [UI] Panel indicator badges (#11956)
* Refactor panel indicator dots

- Allow indicator status to be fetched async

* Add indicator dot for attachments

* Support parameters panel

* Refactor

- Expose more types to @lib
- Define new PanelIndicatorType type
- Support old interface
2026-05-17 10:58:23 +10:00
Oliver d6f257dc58 Receive items requrires the "add" role - POST action (#11946) 2026-05-15 11:51:58 +10:00
Oliver c931ab6815 [bug] Bulk edit fix (#11945)
* Prevent editing of items which do not point directly to the part

* Allow table to define which records can be selected
2026-05-15 00:24:22 +10:00
Oliver 6e2a867c92 [bug] Fix for report generation context (#11941)
* Provide explicit user information to report context

* Pass user information through to offloaded task

* Pass user information back to the plugin

* Fix user passing

* Add more complex unit test for report printing

- Test debug ON / OFF
- Test merge ON / OFF
- Check generated data output

* Unit testing for label generation

* Further refactoring

- Remove "request" from printing context entirely

* Simplify argument drilling

* Robustify unit tests
2026-05-14 11:25:20 +10:00
Oliver 3d2577b411 [UI] Refactor order table filters (#11939)
* Refactor build order filters

- Common set of filters for build order views

* Refactor PurchaseOrder filters

* Update company table

* Refactor SalesOrder filters

* Refactor common filters

* Refactor ReturnOrder table filters
2026-05-13 20:24:40 +10:00
Oliver 573c82f98d Refactor part table filters (#11938)
- Expose extended filters to the parameteric table
2026-05-13 18:08:28 +10:00
OliverandCopilot d0acbf1191 [UI] Adjust week start date (#11934)
* Adjust week start date

Co-authored-by: Copilot <copilot@github.com>

* Change to global setting

---------

Co-authored-by: Copilot <copilot@github.com>
2026-05-13 17:32:59 +10:00
OliverandCopilot 727ca62883 External order checks (#11935)
* Add new global settings

Co-authored-by: Copilot <copilot@github.com>

* Validation logic

Co-authored-by: Copilot <copilot@github.com>

* Remove one setting

- Already covered if build order requires validation

* Add unit test

Co-authored-by: Copilot <copilot@github.com>

---------

Co-authored-by: Copilot <copilot@github.com>
2026-05-13 15:16:34 +10:00
Oliver 5d72eb4f1d [API] Role fix (#11932)
- Allow users to view BOM validation information with bom.view role
2026-05-12 14:39:40 +10:00
Oliver b6a304e553 Block SO allocation until tests pass (#11915)
* Add new global setting

* Check item before allocating

* add unit test
2026-05-11 20:09:34 +10:00
Oliver 35aa4d33d3 Maximum stock level (#11914)
* Add "maximum_stock" field

* Add API filter

* Update API version

* Update CHANGELOG

* Frontend updates

* Add dashboard widget

* docs

* Add API tests
2026-05-10 20:55:05 +10:00
OliverandMatthias Mair bb2a72a6fb Support physical units for BOM lines (#11631)
* Add new "raw_amount" field to BomItem model

* Batch process data migration

* Update migration

* Calculate 'quantity' from 'raw_amount' field

* Improve decimal formatting in migration

* Allow raw_amount in serializer

* Adjust frontend form

* API validation and unit tests

* Additional playwright tests

* Update API version and CHANGELOG

* Updated docs

* Fix docstring

* Better handling of empty values

* Tweak unit tests

* Tweak unit test

* Fix unit test

* Adjust form field text

* Adjust migration file

* Tweak playwright tests

* Fix unit test

* Adjust serializers / import-export / playwright

* Fix migration

* Fix validation

* Loosen comparison

---------

Co-authored-by: Matthias Mair <code@mjmair.com>
2026-05-10 15:32:34 +10:00
Oliver 9a2b82d582 Fix lazy loading of context modals (#11911) 2026-05-10 09:11:39 +10:00
Oliver 04ef8a497a Remove rollup-plugin-visualizer (#11903) 2026-05-09 15:04:46 +10:00
OliverandCopilot 583c7ad5f2 [UI] Optimize bundle (#11896)
* lazy load global window modules

- Required for plugins
- Can be separated from the "main.tsx" code

Co-authored-by: Copilot <copilot@github.com>

* Defer modal loading

Co-authored-by: Copilot <copilot@github.com>

* Rollup visualiser tool

* Remove debug msg

* Rearrange to reduce deltas

* Refactor CodeEditor and PdfPreview

* Split NotesPanel

Co-authored-by: Copilot <copilot@github.com>

---------

Co-authored-by: Copilot <copilot@github.com>
2026-05-09 12:44:05 +10:00
Oliver 47f9dd9470 Remove unnecessary print statement (#11902) 2026-05-09 11:53:36 +10:00
Oliver cbf3fc9f57 [UI] Smaller text for PathColumn (#11888)
Reduce text size in tables
2026-05-08 08:47:20 +10:00
OliverandCopilot 12d32b1d80 [UI] Adjust default dashboard (#11889)
- Only display "news" for superuser

Co-authored-by: Copilot <copilot@github.com>
2026-05-08 00:45:46 +10:00
OliverandCopilot 3be740c019 [UI] Fix child builds panel (#11886)
* [UI] Fix child builds panel

- Adjust logic for displaying or hiding child build panel

Co-authored-by: Copilot <copilot@github.com>

* Add brief playwright test

Co-authored-by: Copilot <copilot@github.com>

---------

Co-authored-by: Copilot <copilot@github.com>
2026-05-08 00:02:11 +10:00
OliverandCopilot 5c65cf901f Line number int (#11885)
* Add migration

Co-authored-by: Copilot <copilot@github.com>

* Update model on save

Co-authored-by: Copilot <copilot@github.com>

* Add API filter aliases

Co-authored-by: Copilot <copilot@github.com>

* Improved query for data migration

Co-authored-by: Copilot <copilot@github.com>

---------

Co-authored-by: Copilot <copilot@github.com>
2026-05-07 22:48:47 +10:00
OliverandCopilot e16eb4a94d Supplier part form (#11884)
* Fix SupplierPart sub-form

Co-authored-by: Copilot <copilot@github.com>

* Fix details panel for SupplierPart page

---------

Co-authored-by: Copilot <copilot@github.com>
2026-05-07 22:48:44 +10:00
Oliver 66ecb1c9ff Fix verbose flag for worker task (#11883) 2026-05-07 14:19:22 +10:00
OliverandCopilot 81fbf52c60 Delete output check (#11881)
* Allow deletion of serialized build output

- If calling "delete_output" on a BuildOrder
- Only will delete an in_production output
- Ignore the global setting in this case

Co-authored-by: Copilot <copilot@github.com>

* Add unit test

Co-authored-by: Copilot <copilot@github.com>

---------

Co-authored-by: Copilot <copilot@github.com>
2026-05-06 16:14:49 +10:00
Oliver aae97eeb40 [UI] Fix for parameter form (#11875)
- Ensure string field is properly selected
2026-05-05 19:31:59 +10:00
OliverandCopilot 6f1d40d546 [UI] Add Admin button for SalesOrderShipment (#11874)
Co-authored-by: Copilot <copilot@github.com>
2026-05-05 18:25:58 +10:00
OliverandCopilot 5c4c583e8e [UI] Adjust stock column for virtual parts (#11873)
- Display "virtual part" instead

Co-authored-by: Copilot <copilot@github.com>
2026-05-05 14:47:08 +10:00
OliverandCopilot 18e3c5a0e9 Prevent delete serialized stock (#11872)
* Add setting to prevent deletion of serialized stock

Co-authored-by: Copilot <copilot@github.com>

* Add unit test

Co-authored-by: Copilot <copilot@github.com>

* Update CHANGELOG

Co-authored-by: Copilot <copilot@github.com>

---------

Co-authored-by: Copilot <copilot@github.com>
2026-05-05 10:43:02 +10:00
OliverandCopilot 3c3964062f UI tweak (#11871)
* [UI] Small visual tweaks for plugin settings panel

Co-authored-by: Copilot <copilot@github.com>

* Refactor common code

Co-authored-by: Copilot <copilot@github.com>

* Reduce code duplication

---------

Co-authored-by: Copilot <copilot@github.com>
2026-05-05 10:15:04 +10:00
Oliver 24f8c2bbb4 Ensure DB settings are strings (#11866)
- Null values are NOT allowed!
2026-05-04 14:40:59 +00:00
Oliver 0c9cb5e4a4 [refactor] bulk operation batch size (#11864)
* Fetch models properly during migration

* Specify batch_size when performing bulk_update operations

* Enforce batch_size for bulk_create operations

* Fix typo

* Revert typo fix

- Changes API schema
2026-05-05 00:31:37 +10:00
OliverandMatthias Mair 00d6f1c3ab [feature] Bulk replace (#11861)
* Allow bulk replace of BOM items

* Add "locked" filter for UsedIn table

* Add playwright tests

* docs

* Bump API version

* Update CHANGELOG

* Update api_version.py

---------

Co-authored-by: Matthias Mair <code@mjmair.com>
2026-05-04 23:13:23 +10:00
Oliver 118bc63b6b Enable verbosity option for worker command (#11862) 2026-05-04 21:15:42 +10:00
Oliver 2a5925f4f7 [UI] BOM pricing fix (#11860)
* Ensure BOM pricing is fetched

* Enable IPN sorting for "used-in" table

* Update playwright tests
2026-05-04 21:15:32 +10:00
Oliver f4b7999f0f Update BOM compare screenshot (#11857)
- Ref: https://github.com/inventree/InvenTree/pull/11853#issuecomment-4365807990
2026-05-03 21:07:48 +10:00
Oliver 79521f974f [UI] Adjust form properties (#11855)
- Remove certain properties from downstream components
- Reduces unnecessary console errors
2026-05-03 19:37:23 +10:00
Oliver 12c060c7d1 [UI] Remove debug message (#11854) 2026-05-03 19:23:33 +10:00
Oliver 24ce51c5ca [UI] BOM compare (#11853)
* Refactor existing components

* Select assembly for comparison

* Rough BOM comparison table

* Select  display mode

* Layout tweaks

* Reset secondary part when drawer is closed

* Responsive grids

* Documentation

* Update CHANGELOG.md

* Add playwright tests

* Update wording

* Allow specification of secondary part with URL search params

* Update URL params when value changes

* Clearer display using icons

* Improve diff  layout

* Adjust playwright tests
2026-05-03 12:18:44 +10:00
Oliver f0edb002d0 Fix build order annotation (#11848)
- Closes https://github.com/inventree/InvenTree/issues/11830
2026-05-02 10:04:48 +10:00
Oliver 76407d71b8 [UI] Fix ReturnOrder table (#11845)
* [UI] Fix ReturnOrder table

- Closes https://github.com/inventree/InvenTree/issues/11833

* Add playwright test
2026-05-02 10:04:41 +10:00
Oliver 7269b0c21f Adjust app docs (#11849) 2026-05-02 10:04:35 +10:00
Oliver 768184e4f0 Update installer docs (#11846)
- Fix information on supported distros
2026-05-02 09:14:02 +10:00
OliverandCopilot c4a395ac0c [UI] Adjust frontend deps (#11840)
* Frontend deps

- Follow-up to https://github.com/inventree/InvenTree/pull/11831
- Pin vite version to 8.0.5

* Revert vite to 6.4.2

Co-authored-by: Copilot <copilot@github.com>

* Fix dependency warnings

Co-authored-by: Copilot <copilot@github.com>

---------

Co-authored-by: Copilot <copilot@github.com>
2026-05-02 07:19:00 +10:00
Oliver 6bbc511028 Ensure correct migration order (#11842)
- Ref: https://github.com/inventree/InvenTree/actions/runs/25208393963/job/73913547867?pr=11840
2026-05-01 22:30:38 +10:00
OliverandCopilot 679665d491 Adjust text color for stock column (#11841)
- Muted color output
- Fixes https://github.com/inventree/InvenTree/issues/11835

Co-authored-by: Copilot <copilot@github.com>
2026-05-01 17:06:36 +10:00
Oliver 35bbecf4b0 Fix minor typo (#11839) 2026-05-01 15:29:27 +10:00
OliverandCopilot 2b6952eabd BOM Ruleset (#11825)
* Add BOM role

* Adjust UI permissions

* Adjust docs

* Add data migratoin

* Specify role for BOM validation

* Tweak old migrati

* Fix role_required

* Update API version and CHANGELOG

Co-authored-by: Copilot <copilot@github.com>

* Update unit tests

Co-authored-by: Copilot <copilot@github.com>

---------

Co-authored-by: Copilot <copilot@github.com>
2026-04-28 12:29:57 +10:00
aeeca49a8f [setup] Database config (#11813)
* Adjust config template file

* Check UPPERCASE value as backup

* fix typing issue

* ignore ty issues for now

Co-authored-by: Copilot <copilot@github.com>

---------

Co-authored-by: Matthias Mair <code@mjmair.com>
Co-authored-by: Copilot <copilot@github.com>
2026-04-28 08:20:49 +10:00
Oliver afa3807978 Adjust BomSubassemblyTable (#11819)
- Fixes for height of sub-table
2026-04-27 20:14:52 +10:00
Oliver 65b2283c7f Stock convert (#11818)
* [UI] Reimplement "convert stock" action

* Add playwright tests
2026-04-27 19:59:30 +10:00
Oliver 9958f4a247 [UI] Invalid BOM warning (#11817)
* [UI] Invalid BOM warning

* Add similar warning to BOM table

* Adjust bom subassembly table
2026-04-27 18:17:49 +10:00
Oliver 27ebfeba1c [UI] Smooth image loading (#11815)
* Smooth image loading

* Add "thumbnail" prop

* Hide thumbnail once loaded
2026-04-27 18:17:25 +10:00
Oliver 9763ce01ae [bug] Make "issued_by" field read-only (#11816)
* Fix "issued_by" for BuildOrder model

- Automatically capture user information
- Mark field as read-only
- Remove from frontend forms

* Add "created_by" property

* Update unit test

* Update API and CHANGELOG

* Further adjustments to unit tests
2026-04-27 17:35:28 +10:00
OliverandCopilot f271725def [UI] BOM row expand (#11809)
* Add subassembly expansion

Co-authored-by: Copilot <copilot@github.com>

* Enable multi-level subassembly display

Co-authored-by: Copilot <copilot@github.com>

* Adjust padding

* Adds user setting to enable / disable subassembly view

Co-authored-by: Copilot <copilot@github.com>

* Add icon

* Additional playwright tests

Co-authored-by: Copilot <copilot@github.com>

---------

Co-authored-by: Copilot <copilot@github.com>
2026-04-26 16:32:58 +10:00
OliverandCopilot b8f13b8aa9 [UI] Adjust system settings (#11808)
* Adjust system settings

- Rearrange settings to match major menu groups
- Split long settings panels into separate lists

Co-authored-by: Copilot <copilot@github.com>

* Adjust playwright tests

---------

Co-authored-by: Copilot <copilot@github.com>
2026-04-26 15:46:05 +10:00
Oliver 594b6e09b3 Fix refresh action for test result table (#11807) 2026-04-26 12:49:32 +10:00
OliverandCopilot ffe6c13edf [UI] BOM Editing (#10210)
* Support minimum column width

* Adjust DescriptionColumn and StatusColumn

* Column refactoring

* Refactor PartColumn

* Refactor LineItemsProgerssColumn

* Tweaks

* Ensure "can_build" value is not negative

* Render row expansion icon

* Add subassembly table for BOM

* Add controls for BOM editing

* Fix row click context

* Improve rendering for BOM sub-rows

* Hide BOM actions unless editing

* Disable row expansion for now

* Revert gitleaks changes

* Remove gitleaks tags

* Remove dead code

* Remove commented code

* Adjust playwright tests

Co-authored-by: Copilot <copilot@github.com>

* Update docs

Co-authored-by: Copilot <copilot@github.com>

* Further playwright fixes

---------

Co-authored-by: Copilot <copilot@github.com>
2026-04-26 12:49:21 +10:00
OliverandCopilot f9cda95427 Adjust order quantity based on pack size (#11800)
- Closes https://github.com/inventree/InvenTree/issues/10946

Co-authored-by: Copilot <copilot@github.com>
2026-04-26 10:23:07 +10:00
OliverandCopilot 75942fbedf Fix for category template creation (#11803)
- Prevent duplicate parameters
- Closes https://github.com/inventree/InvenTree/issues/11798

Co-authored-by: Copilot <copilot@github.com>
2026-04-26 09:32:46 +10:00
OliverandCopilot e684e002f7 [UI] Hide top level tree panels (#11799)
* Hide "top level stock location" panel

Co-authored-by: Copilot <copilot@github.com>

* Hide "top level part category"

Co-authored-by: Copilot <copilot@github.com>

* Adjust playwright tests

* Improve robustness of test

Co-authored-by: Copilot <copilot@github.com>

---------

Co-authored-by: Copilot <copilot@github.com>
2026-04-26 07:16:06 +10:00
Oliver 2129e3338a Add docs for build order support in app (#11774) 2026-04-25 10:01:48 +10:00
Oliver fef0fdf99b Simplify BOM table rendering (#11795) 2026-04-24 10:52:27 +10:00
Oliver 03508cd15b Boundary updates (#11794)
* Boundary updates

* Add error code
2026-04-24 10:52:17 +10:00
Oliver e43d619d69 [UI] Create manufacturer part (#11792)
- Create new manufacturer part from supplier part form
- Closes https://github.com/inventree/InvenTree/issues/10924
2026-04-24 09:41:24 +10:00
Oliver 389e49c218 Fix typecast for db settings (#11790)
- Follow-up to https://github.com/inventree/InvenTree/pull/11674
2026-04-24 09:14:55 +10:00
OliverandMatthias Mair 757597c55d [UI] More sub-forms (#11785)
* Fix ApiFormFIeldType docstring

* Case fix

* Add sub-forms for company creation

* Tweak component def

* Add new company for manufacturer-part and supplier-part

* Create new parameter template directly from parameter view

* Add tooltip

* Add playwright tests

* Consolidate translation

* Revert to left side

* Fix title case

---------

Co-authored-by: Matthias Mair <code@mjmair.com>
2026-04-23 12:54:44 +10:00
Oliver b686cc1327 Model permission tweaks (#11788)
* Model permission tweaks

* Update CHANGELOG

* Update plugin docs

* Add warning
2026-04-23 11:25:43 +10:00
Oliver a94798daaa [bug] BOM validation fixes (#11783)
* Ensure a new BOM item triggers check_bom_valid

* Ensure BOM validation is properly recomputed on a BOM item update

* Add unit tests

* Tweak unit tests

* Update 'clear_bom' method
2026-04-22 22:44:48 +10:00
Oliver d81a87225c Ensure configuration settings are documented (#11674)
* Export configuration keys to JSON

* Support rendering of config options in docs

* Check for missing config settings

* Simplify macro

* Initial tests

* Fix collisions

* Updates

* Ensure values are stringified

* Ensure null values are exported correctly

* Refactor database config

- Observability on the config settings

* More docs updates

* Updates

* Add observability of cache settings

* More updates

* Observability

* Set env config for RTD

* Revert RTD config file

- Handled by ENV VAR on RTD account

* Visibility on background worker settings

* Tweaks

* Tweaks

* Split tracing settings out into separate file

- Improved discovery
- declutter settings.py

* Cleanup LDAP settings

* Social providers docs

* More updates

* Refactor ldap setup into own module

* Tweaks

* Formatting tweaks

* Tweak logic

* Fix INVENTREE_SESSION_COOKIE_SECURE setting

* Fix wrapping

* Add custom default
2026-04-21 12:23:53 +10:00
Oliver cead09bcd8 Fix for SVG sanitizing (#11742)
- Clear our non-breaking-space characters
- These can break SVG rendering in the browser
- Ref: https://github.com/inventree/InvenTree/pull/11655
2026-04-14 12:48:15 +10:00
Oliver 1e968a533d Bump UI to 0.11.2 (#11738)
- Expose additional type hints
2026-04-13 22:26:33 +10:00