* Validate timezone in settings.py
* Add helper functions for timezone information
- Extract server timezone
- Convert provided time to specified timezone
* Add more unit tests
* Remove debug print
* Test fix
* Add report helper tags
- format_date
- format_datetime
- Update report templates
- Unit tests
* Add setting to control report errors
- Only log errors to DB if setting is enabled
* Update example report
* Fixes for to_local_time
* Update type hinting
* Fix unit test typo
* updated translation base
* 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 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>
* updated translation base
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.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
* Update ru translations
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Added first POC for label editor
* Added preview item selection
* Split code
* Fix import
* Use liquid lang and added custom tooltips
* Auto load first item for preview and add BOM part assembly filter
* Make the save&reload action more obvious
* Make save optional and use server stored template
* Fix icons and inherit model url
* Add label/report extra fields to serializer and default templates
* Bump api version to v176
* Remove generic and pass template to editor
* Added error overlay
* Moved default tempaltes in default folder
* Only show detail drawer back button if necessary
* Rename action dropdown disabled to hidden and add loading disabled to template editor
* Fix types
* Add icons to editor/preview tabs
* Add draggable split pane and make editors use full height
* Add SplitButton component
* add code editor tag description
* fix related model field if empty string
* remove debug console.log
* move code editor/pdf preview into their own folder
* Update api_version.py
* add support for multiple editors
* fix template editor error handleing while loading/saving code
* add documentation for the template editor
* Fix for build line table
- Prefill source location correctly
* Refactor API filtering for BomList
- Make use of RestFilter class
* Add "external stock" field to BomItem serializer
* Simplify custom filtering
* Add "structural" column to part table
* Update BOM tables:
- Display indication of "external stock"
* Annotate "external_stock" to part serializer
- Update PartTable [PUI]
* Annotate BuildLine serializer too
* BuildLine endpoint - filter available stock based on source build order
- If build order is specified, and has a source location, use that to filter available stock!
* Add message above build line table
* Update BuildLineTable
* Bump API version
* Changes for PartThumbTable:
- Limit use of custom styling
- Better display of images
* Fix background color
* Use <StylishText> for titles
* Cleanup details grid
- Use Mantine components
- Simplify structure
* Fix TableThumbProps
* updated translation base
* 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 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 messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix ru newlines
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* updated translation base
* Fix: New translations django.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* PartCategoryTree - add "subcategories" field
* Fix rendering of PartCategoryTree
* Implement similar fixes for StockLocationTree
* Bump API version
* Breadcrumb list tweak
- Limit to 7 items
* Fix bug for stock tree serializer
* Add unit tests
* [FR] Add config option to fully disable installing plugins
Fixes#6531
* also restrict uninstalling
* Added test
* diff cleanup
* extend api to show if install was disabled
* PUI disable install buttons
* CUI disable install button if not available
* add config option
* Rephrase
* Update PartParameterTemplate API
- Expose number of "parts" using a particular template
- Improve filtering visibility
- Update PUI table
* Update API version
* PartCategoryList: Add FilterSet class
* Update PartCategory filters
- Migrate all custom filtering to the FilterSet
* Logic updates
* Revert deleted code
* Implement similar filters for StockLocation list API
* Update API docs
* Unit test updates
* More fix
* Fix for StockLocation filterclass
* Fix PUI tables
* Cleanup CUI tables
* Updated unit tests
* Added various PO fixes
* Add auto-pricing and merge items functionality to PurchaseOrderLineItem
* Bump api version to v173
* Add po line item create/update tests
* Add new field to PartTestTemplate model
- 'enabled' field
- default = True (backwards compatibility)
- Allows tests to be disabled
- Retains test results but disables test
* Update PartTestTemplate API
- Expose new field
- Enable filtering by field
* CUI updates
- Add to PartTestTemplate table
* PUI: Update PartTestTemplateTable
* Update getRequiredTests
- By default, filter out tests which are "disabled"
* Update StockItemTestResult table
- Only display "enabled" tests
- Update CUI
- UPdate PUI
* Update existing build output table
* Bump API version
* Docs updates
* Updated unit tests
* Fix ordering of "stock" column in StockItemTable
* Handle table.activeFilters
- Can be passed undefined value in some cases
* Fix legacy test result table
- Add in "pass test" button
* Improve logic for creating templates
- Only look at ancestor parts *above* the existing part
* Update migration
- Only look above!
* Improve matching in template
* New data migration
- Fixes (probably rare) edge case in previous data migration
* Table tweak
- Embolden required test templates
* Add assertion check to data migration
* Update API version
- Add filter for "has_results" on the PartTestTemplate API endpoint
* Logic fix
* Add basic table for stock item test results
* Improve custom data formatter callback
* Custom data formatter for returned results
* Update YesNoButton functionality
- Add PassFailButton with custom text
* Enhancements for stock item test result table
- Render all data
* Add placeholder row actions
* Fix table link
* Add option to filter parttesttemplate table by "inherited"
* Navigate through to parent part
* Update PartTestTemplate model
- Save 'key' value to database
- Update whenever model is saved
- Custom data migration
* Custom migration step in tasks.py
- Add custom management command
- Wraps migration step in maintenance mode
* Improve uniqueness validation for PartTestTemplate
* Add 'template' field to StockItemTestResult
- Links to a PartTestTemplate instance
- Add migrations to link existing PartTestTemplates
* Add "results" count to PartTestTemplate API
- Include in rendered tables
* Add 'results' column to test result table
- Allow filtering too
* Update serializer for StockItemTestResult
- Include template information
- Update CUI and PUI tables
* Control template_detail field with query params
* Update ref in api_version.py
* Update data migration
- Ensure new template is created for top level assembly
* Fix admin integration
* Update StockItemTestResult table
- Remove 'test' field
- Make 'template' field non-nullable
- Previous data migrations should have accounted for this
* Implement "legacy" API support
- Create test result by providing test name
- Lookup existing template
* PUI: Cleanup table
* Update tasks.py
- Exclude temporary settings when exporting data
* Fix unique validation check
* Remove duplicate code
* CUI: Fix data rendering
* More refactoring of PUI table
* More fixes for PUI table
* Get row expansion working (kinda)
* Improve rendering of subtable
* More PUI updates:
- Edit existing results
- Add new results
* allow delete of test result
* Fix typo
* Updates for admin integration
* Unit tests for stock migrations
* Added migration test for PartTestTemplate
* Fix for AttachmentTable
- Rebuild actions when permissions are recalculated
* Update test fixtures
* Add ModelType information
* Fix TableState
* Fix dataFormatter type def
* Improve table rendering
* Correctly filter "edit" and "delete" buttons
* Loosen requirements for dataFormatter
* Fixtures for report tests
* Better API filtering for StocokItemTestResult list
- Add Filter class
- Add option for filtering against legacy "name" data
* Cleanup API filter
* Fix unit tests
* Further unit test fixes
* Include test results for installed stock items
* Improve rendering of test result table
* Fix filtering for getTestResults
* More unit test fixes
* Fix more unit tests
* FIx part unit test
* More fixes
* More unit test fixes
* Rebuild stock item trees when merging
* Helper function for adding a test result to a stock item
* Set init fix
* Code cleanup
* Cleanup unused variables
* Add docs and more unit tests
* Update build unit test
* Add option to disable the build output completion if required tests not passed
Fixes#5037
* Fix review comments
* Added tests
* Add settinsg option to PUI
* Utilize F" string concatenation
* Add validation to serializer too to being able to generate proper error message in the case if multiple outputs having incomplete tests
* Fix other build tests failing because of the new stock items
* Remove len from array empty check
* Update serializers.py
* Update models.py
Simplify error message
* Update settings.py
Formatting fix
* Update models.py
More style fixes
* Update models.py
Remove empty line
---------
Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
* updated translation base
* 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 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 messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Clean translation
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Handle error on logout
- Logout failure redirects to login page
* Handle case if user is undefined when fetching role data
* Cleanup error messages
* More error message cleanup
* Added initial draft for machines
* refactor: isPluginRegistryLoaded check into own ready function
* Added suggestions from codereview
* Refactor: base_drivers -> machine_types
* Use new BaseInvenTreeSetting unique interface
* Fix Django not ready error
* Added get_machines function to driver
- get_machines function on driver
- get_machine function on driver
- initialized attribute on machine
* Added error handeling for driver and machine type
* Extended get_machines functionality
* Export everything from plugin module
* Fix spelling mistakes
* Better states handeling, BaseMachineType is now used instead of Machine Model
* Use uuid as pk
* WIP: machine termination hook
* Remove termination hook as this does not work with gunicorn
* Remove machine from registry after delete
* Added ClassProviderMixin
* Check for slug dupplication
* Added config_type to MachineSettings to define machine/driver settings
* Refactor helper mixins into own file in InvenTree app
* Fixed typing and added required_attributes for BaseDriver
* fix: generic status import
* Added first draft for machine states
* Added convention for status codes
* Added update_machine hook
* Removed unnecessary _key suffix from machine config model
* Initil draft for machine API
* Refactored BaseInvenTreeSetting all_items and allValues method
* Added required to InvenTreeBaseSetting and check_settings method
* check if all required machine settings are defined and refactor: use getattr
* Fix: comment
* Fix initialize error and python 3.9 compability
* Make machine states available through the global states api
* Added basic PUI machine admin implementation that is still in dev
* Added basic machine setting UI to PUI
* Added machine detail view to PUI admin center
* Fix merge issues
* Fix style issues
* Added machine type,machine driver,error stack tables
* Fix style in machine/serializers.py
* Added pui link from machine to machine type/driver drawer
* Removed only partially working django admin in favor of the PUI admin center implementation
* Added required field to settings item
* Added machine restart function
* Added restart requird badge to machine table/drawer
* Added driver init function
* handle error functions for machines and registry
* Added driver errors
* Added machine table to driver drawer
* Added back button to detail drawer component
* Fix auto formatable pre-commit
* fix: style
* Fix deepsource
* Removed slug field from table, added more links between drawers, remove detail drawer blur
* Added initial docs
* Removed description from driver/machine type select and fixed disabled driver select if no machine type is selected
* Added basic label printing implementation
* Remove translated column names because they are now retrieved from the api
* Added printer location setting
* Save last 10 used printer machine per user and sort them in the printing dialog
* Added BasePrintingOptionsSerializer for common options
* Fix not printing_options are not properly casted to its internal value
* Fix type
* Improved machine docs
* Fix docs
* Added UNKNOWN status code to label printer status
* Skip machine loading when running migrations
* Fix testing?
* Fix: tests?
* Fix: tests?
* Disable docs check precommit
* Disable docs check precommit
* First draft for tests
* fix test
* Add type ignore
* Added API tests
* Test ci?
* Add more tests
* Added more tests
* Bump api version
* Changed driver/base driver naming schema
* Added more tests
* Fix tests
* Added setting choice with kwargs and get_machines with initialized=None
* Refetch table after deleting machine
* Fix test
---------
Co-authored-by: Matthias Mair <code@mjmair.com>
* updated translation base
* 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 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
* 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 messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* ru: Remove newline chars
* Simplify translation
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* updated translation base
* 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 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 messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.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 newlines
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Add method to extract "install name" from a plugin
* Include more information in plugin meta serializer
* Implement better API filtering for PluginConfig list
* Add an "update" button to the plugin table row actions
- Only for "package" plugins
* Adds method to update a plugin:
- Add plugin.installer.update_plugin method
- Add error logging to existing methods
- Add API endpoint and serializer
- Integrate into PUI table
* Implement lazy loading for plugin tables
* Extract package information on registry load
- Info is already available via entrypoint data
- Significantly faster as introspection operation is expensive
- Less code is good code
* Frontend updates
* Add accordion to plugin page
* Add setting to control periodic version check updates
* Update API version info
* Add "package_name" field to PluginConfig
- When the plugin is loaded, save this name to the PluginConfig model
- Update the admin view
* Update API serializer
* Refactor plugin installer code
- Add common functions
* Adds API endpoint for uninstalling an installed plugin
* Allow uninstall of plugin via API
- Add API endpoints
- Add UI elements
* Tweak for admin list display
* Update plugin
* Refactor "update" method
- Just use the "install" function
- Add optional "version" specifier
- UI updates
* Allow deletion of PluginConfig when uninstalling plugin
* Add placeholder for deleting database tables
* Revert code change
- get_object() is required
* Use registry.get_plugin()
- Instead of registry.plugins.get()
- get_plugin checks registry hash
- performs registry reload if necessary
* Add PluginValidationMixin class
- Allows the entire model to be validated via plugins
- Called on model.full_clean()
- Called on model.save()
* Update Validation sample plugin
* Fix for InvenTreeTree models
* Refactor build.models
- Expose models to plugin validation
* Update stock.models
* Update more models
- common.models
- company.models
* Update more models
- label.models
- order.models
- part.models
* More model updates
* Update docs
* Fix for potential plugin edge case
- plugin slug is globally unique
- do not use get_or_create with two lookup fields
- will throw an IntegrityError if you change the name of a plugin
* Inherit DiffMixin into PluginValidationMixin
- Allows us to pass model diffs through to validation
- Plugins can validate based on what has *changed*
* Update documentation
* Add get_plugin_config helper function
* Bug fix
* Bug fix
* Update plugin hash when calling set_plugin_state
* Working on unit testing
* More unit testing
* Fix typo (installing -> uninstalling)
* Reduce default timeout
* set default timeout as part of ApiDefaults
* revert changes to launch.json
* Remove delete_tables field
- Will come back in a future PR
* Fix display of nonFIeldErrors in ApiForm.tsx
* Allow deletion of deleted plugins
- PluginConfig which no longer matches a valid (installed) plugin
* Cleanup
* Move get_plugin_config into registry.py
* Move extract_int into InvenTree.helpers
* Fix log formatting
* Update model definitions
- Ensure there are no changes to the migrations
* Update PluginErrorTable.tsx
Remove unused var
* Update PluginManagementPanel.tsx
remove unused var
* Comment out format line
* Comment out format line
* Fix access to get_plugin_config
* Fix tests for SimpleActionPlugin
* More unit test fixes
* Update plugin/installer.py
- Account for version string
- Remove on uninstall
* Fix
* Add getModelInfo helper function
- Extract model definition from provided modeltype
* Improvements for details.tsx
- Use defined URL functions, not strings
- Catch potential errors
* Fix PartDetail page
- Use modeltype definitions
- URL fixes
* 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 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 messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.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 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 messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.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 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 messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.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 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
* 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 messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.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 ru/django.po
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Fix API endpoint URLs
* Adds "authenticated" field to root API endpoint
* Load global status data separately
- Create new global state manager
- Load *after* login
- Prevents auth popup dialog and failure messages
* Add launch config for frontend dev
* Update docs
* Clear token auth if no token is defined
* remove unneeded import
* Revert format of InfoView endpoint
* Remove "authenticated" from InfoView
* Refactor is_staff token check
- Using new get_token_from_request method
* Cleanup code
- return early
* URL fixes
- More fixes for incorrect api calls
* Better tracking of authenticated status
- track an internal flag in apiState
* Prioritize token auth
* Only fetch userState if authenticated
* Force unauthenticated state on first launch
* Updates to login procedure
- Rename doClassicLogin to doBasicLogin (reflecting "basic" auth)
- Add "loggedIn" attribute to sessionState
- Cleanup procedure for securing a token
* Abort early on checkLoginState
- Prevent failed calls to user_me
* Refactoring
- Simpler to just track token state
- No need for separate status tracker
- Works much cleaner this way
* Remove debug messages
* Cleanup unused imports
* Fix unused variable
* Revert timeout to 2000ms
* Rename doClassicLogout -> doLogout
* Improvements for checkLoginState
- Account for the presence of a CSRF session cookie
- If available, use it to fetch a token
* Clear CSRF cookie on logout
- Forces logout from session
- Tested, works well!
- Clean up notifications
* Cleanup setApiDefaults method
* fix global logout (PUI -> CUI)
---------
Co-authored-by: Matthias Mair <code@mjmair.com>
* Request column names from server when loading table
- As these are translated by the server, we can make use of them on the client side!
- Reduces duplication of translated titles
* Move tables up one level
* Cache translated table column names
* Clear table column cache whenever we change locale context
* Fix cache behavioue
* Enforce titleCase for table column names
* Refactor BuildOrder table
* Refactor Company table
* Refactor order tables
* More refactoring
- Refactoring more columns
* Update more tables
* Refactor BomTable
* Remove toTitleCase
- We will rely on the server-side translations!
* Remove debug messages
* Update src/frontend/src/tables/InvenTreeTable.tsx
Co-authored-by: Matthias Mair <code@mjmair.com>
* Cleanup
* Update docstring
* Cleanup
* Support nested fields with dot notation
- Powerful code reuse is powerful
* Complete refactor for BuildLine table
- Add some missing field descriptors on the backend
* Cleanup hooks a bit
* Update BomTable
* Allow table filters to make use of the same info
* Add ReferenceColumn helper
* Use queryParams when fetching table OPTIONS
- Required to ensure the same columns are fetched
* More refactoring
* Fix ProjectCodeTable
* Code cleanup
* Fix unused var
---------
Co-authored-by: Matthias Mair <code@mjmair.com>
* Use PATCH for edit form
* Add "localhost:8000" server option
* Add initialData property for forms
- Allows user to specify an initial dataset to override default values
* Override field values when constructing form props
* Remove debug messages
* Wrap ApiForm in FormProvider
- Allows lower elements to access all form data without rebuild
- Pass all form data through to adjustFilters routine
* Fixes for RelatedModelField
- Ensure that the saved data are cleared when filters change
* Fix debug message for token creation
* Fix address rendering for modals
* Refactor "address" forms
- Use new "hook" form structure
* Update Contacts table
* Prevent related model fields from fetching on initial form open
- Only fetch when the drop-down is actually opened
- Significantly reduces the number of API calls
* Fix for ChoiceField
- Display label / description / placeholder text
* Fix for DateInput
- Correct conversion of datatype
* Implement "new purchase order" form
- Uses modal form hook
- Supply initial data
- Adjust filters according to selected company
* Add new company from company table
* Edit company from detail page
* More table updates
- StockLocation
- PartCategory
* Update more tables / forms:
- PartParameter table
- PartParameterTemplate table
- Cleanup unused imports
* Update ProjectCode table
* CustomUnits table
* Update RelatedPart table
* Update PartTestTemplate table
* Cleanup PartParameterTable
* Add "IPN" column to PartParameterTable
* Update BuildOrder table
* Update BuildDetail page
* PurchaseOrderLineItem table
* Simplify
- Move fields which are only used in one location
* Create new salesorder with context
- Also consolidate translated strings
- Also improve consistency of inline rendering (with missing image)
* Revert change to RenderInlineModel
* Fix for build table
- Use apiUrl wrapper around ApiEndpoint
* Fix parameter for PurchaseOrderTable
* Adjust server selector
- Only show localhost:8000 if in dev mode
* Tweak URL
* Add extra test to playground
- Check initial value works for nested field
* Cleanup playground
* Cleanup unused vars
* memoize fields
* Fix typo
host -> host
* Fix part editing
* Cleanup unused
* update group table
* Auto-fill project code
When creating a new child build order, copy project code from parent build
* Auto-fill project code for sales orders
* Annotate "building" quantity to BuildLine serializer
- So we know how many units are in production
* Display building quantity in build line table
* Update API version info
* Skeleton for BuildLineTable
- No content yet (needs work)
* Refactor part hovercard
* Navigate to part
* Add actions for build line table
* Display more information for "available stock" column
* More updates
* Fix "building" filter
- Rename to "in_production"
* Add filters
* Remove unused imports
* updated translation base
* Fix: New translations messages.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 messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.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 django.po from Crowdin
* Fix: New translations django.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix faulty translation
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Add child stock item table
* Fix stock item splitting bug
- StockItem tree was not being rebuilt correctly
- Add unit tests
* Annotate StockItem serializer with "child_items" count
* Show or hide "child items" panel
* Account for case where tree_id is zero
* Add placeholder page for SupplierPartDetail
- All empty at this stage
* Adds ManufacturerPartDetail page
* Further updates to supplierpart and manufacturerpart support
* Cleanup unused vars
* More cleanup
* 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 messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.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 messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.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
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* optimize login layout
* move auth/reg up
* [PUI] Registration
Fixes#6282
* [PUI] Registration
Fixes#6282
* fix type
* Add auth settings to API state
* control showing of registration via state
* small cleanups
* Added registration and password forgotten to auth endpoint
* control password forgotten via state
* cleanup imports
* bump api version
* Ensure .ts files are generated
- "yarn run compile" before "yarn run dev"
- ensures that .ts locale files are all generated
* Implement "Add Part Category" button
* Create new stock location
* Rename customActionGroups to tableActions
* Rename customFilters to tableFilters
* Edit category from table
* Edit stock location from table
* Add some placeholder buttons
* More placeholders
* Refactor method to extract token from request
* Reimplement error-report API endpoint
- Removed in previous commit - b8b3dfc90e
- Adds unit tests to ensure it doesn't happen again
* Adds custom logout view for API
- Ensure correct token gets deleted
- Our new custom token setup is incompatible with default dj-rest-auth
* 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 messages.po from Crowdin
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Move locales definition into separate file
- Cleanup settings.py a bit
* Update docstring
* Expose 'default_locale' to info API endpoint
* Validate settings.LANGUAGE_CODE
* Fix bug in BuildDetail page
* Use selected language when making API queries
* Translate more strings
* Tweak variable name
* Update locale config
* Remove duplicate code
* Remove compiled messages.ts translation files
* Fixes for LanguageContext.tsx
* Update messages.d.ts for sr locale
* Ensure compiled files are served by django runserver
* Amend changes to STATICFILES_DIRS
* Cleanup prerender.py
* Refetch status codes when locale is changed
* Fix log msg
* Clear out old static files
* Add API endpoint for background task overview
* Cleanup other pending heartbeat tasks
* Adds API endpoint for queued tasks
* Adds API endpoint for scheduled tasks
* Add API endpoint for failed tasks
* Update API version info
* Add table for displaying pending tasks
* Add failed tasks table
* Use accordion
* Annotate extra data to scheduled tasks serializer
* Extend API functionality
* Update tasks.py
- Allow skipping of static file step in "invoke update"
- Allows for quicker updates in dev mode
* Display task result error for failed tasks
* Allow delete of failed tasks
* Remove old debug message
* Adds ability to delete pending tasks
* Update table columns
* Fix unused imports
* Prevent multiple heartbeat functions from being added to the queue at startup
* Add unit tests for API
* updated translation base
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Adds API endpoint for fetching error information
* Bump API version
* Implement table for displaying server errors
* Add support for "bulk delete" in new table component
* Update API version with PR
* Fix unused variables
* Enable table sorting
* Display error details
* updated translation base
* 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>
* updated translation base
* 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
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* updated translation base
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.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 messages.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 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 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
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* move UI rendering out of App.tsx
this makes bundles that just use API components (eg. to render out PUI settings controls for inclusion CUI) much easier
* fixes pre-commit warning
* Revert "fixes pre-commit warning"
This reverts commit 712f27bb1c.
* Update useTable hook
- Storage for "selected rows"
- Aim is to make row selection available outside table component
* Use updated hook to manage row selection
* Add more table data to useTable:
- hidden column selection
- search terms
* Remove unused import
* Remove unused function
* Cleanup
* Add debug messages for auth - trying to track down issues
* Add explicit PartIndex page
* Remove debug statements
* Simplify panel state management
- Do not encode in URL
- Reduce number of component loads
- Ensure a valid panel is always selected
* Implement StockIndex page
* updated translation base
* 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 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
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* 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 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 messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.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 messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.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>
* Add FilterSelectDrawer component
* Add descriptions for build order table filters
* Pass active filters through via UseTable hook
* Remove old FilterGroup component
* Add callback to remove selected filter
* Implement interface for adding new filters
* Prevent duplication of filters
* Hide "add filter" elements after creating new filter
* Improved rendering
* Implement more filters for stock item table
* Add some filters for stock location table
* Refactor filter choice method
- Add StatusFilterOptions callback
- Update filters for existing tables
* purchase order table filters
* Implement more table filters
* Fix unused imports
* Render display value, not raw value
* Cleanup
* UI improvements
* updated translation base
* 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 messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.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 messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Remove plugin warning
- No longer needed as plugins are automatically reloaded
* Move ProjectCodeTable to admin interface
* Move CustomUnits table
* Transfer PartParameterTemplateTable
* Tweak user menu
* Fix unused imports
* First draft for refactoring the api forms including modals
* Fix merging errors
* Fix deepsource
* Fix jsdoc
* trigger: deepsource
* Try to improve performance by not passing the whole definition down
* First draft for switching to react-hook-form
* Fix warning log in console with i18n when locale is not loaded
* Fix: deepsource
* Fixed RelatedModelField initial value loading and disable submit if form is not 'dirty'
* Make field state hookable to state
* Added nested object field to PUI form framework
* Fix ts errors while integrating the new forms api into a few places
* Fix: deepsource
* Fix some values were not present in the submit data if the field is hidden
* Handle error while loading locales
* Fix: deepsource
* Added few general improvements
* Fix missig key prop
* Fix storage deprecation warnings
* Save panel state in url params
* Improved admin center
* Delete unused file
* Fix: deepsource
* Improve user drawer with descriptions
* Fix api bug with plugin settings and added links to notification entries
* Make plugin related settings work
* Added a lot more plugin actions
* Move InfoItem into own component
* Use Paper for setting item to make have some border radius according to theme
* Fix: deepsource
* Proposal: unify system settings and admin center to one central place
* Fix: deepsource
* Dont add install plugin if plugins are not enabled on this instance
* Fix switch links
* Revert: 'Proposal: unify system settings and admin center to one central place'
* Fix related model settings field
* Fix key error in plugin error table
* Make plugin panels loadables
* Remove user/group edit modal and open the detail drawer instead
* updated translation base
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.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 messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.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 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 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 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 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 messages.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
* 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>
* Move CompanyTable
* Add "Contacts" table to company detail page
* Typo fix
* Remove 'notes' column
* Add preFormWarning and preFormSuccess to API form
- Refactor existing deletion forms
* Adds "address" table for company view
* Prevent wrapping on inline model rendereing
* Refactor new tables
* Fix unused imports
* updated translation base
* 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 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
* 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 messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.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 messages.po from Crowdin
* Fix: New translations messages.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 messages.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 messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Add new hook - useTable
- Will replace useTableRefresh
- More extensible (further functionality to follow)
- Pass entire state through to final table
- Defined interface for return type
* Update BomTable
* Update UsedInTable
* Refactor attachment table
* Update remaining tables
* Clean StockItemTable
* Fix NotificationTable
* Remove unused import
* updated translation base
* 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 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 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>
* updated translation base
* 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
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* 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
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* First draft for refactoring the api forms including modals
* Fix merging errors
* Fix deepsource
* Fix jsdoc
* trigger: deepsource
* Try to improve performance by not passing the whole definition down
* First draft for switching to react-hook-form
* Fix warning log in console with i18n when locale is not loaded
* Fix: deepsource
* Fixed RelatedModelField initial value loading and disable submit if form is not 'dirty'
* Make field state hookable to state
* Added nested object field to PUI form framework
* Fix ts errors while integrating the new forms api into a few places
* Fix: deepsource
* Fix some values were not present in the submit data if the field is hidden
* Handle error while loading locales
* Fix: deepsource
* Added few general improvements
* Fix missig key prop
* Fix storage deprecation warnings
* First draft for refactoring the api forms including modals
* Fix merging errors
* Fix deepsource
* Fix jsdoc
* trigger: deepsource
* Try to improve performance by not passing the whole definition down
* First draft for switching to react-hook-form
* Fix warning log in console with i18n when locale is not loaded
* Fix: deepsource
* Fixed RelatedModelField initial value loading and disable submit if form is not 'dirty'
* Make field state hookable to state
* Added nested object field to PUI form framework
* Fix ts errors while integrating the new forms api into a few places
* Fix: deepsource
* Fix some values were not present in the submit data if the field is hidden
* Handle error while loading locales
* Fix: deepsource
* 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 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 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 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 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 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 messages.po from Crowdin
* Fix translation string manually
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* 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 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 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 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 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 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 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
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* 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 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>
* Added first UI components for user managment
Ref #4962
* Add user roles to table and serializer
* added key to AddItem actions
* added ordering to group
* style text
* do not show unnecessary options
* fix admi / superuser usage
* switched to use BooleanColumn
* Added active column
* added user role change action
* added user active change action
* Added api change log
* fixed logical error
* added admin center to navigation
* added groups to user serializer
* added groups to the uI
* Added user drawer
* fixed active state
* remove actions as they are not usable after refactor
* move functions to drawer
* added drawer lock state
* added edit toggle
* merge fix
* renamed values
* remove empty roles section
* fix settings header
* make title shorter to reducelayout shift when switching to server settings
* Embiggen search drawer
* Refactor search drawer queries:
- Use proper permission checks
* Actually check user settings
* Move StatusRenderer
* Update renderers
- Improve in-line render for different order types
* Update stockitem renderere
* Remove old renderer functions
* Better data handling in UserState
* Tweaks for settings pages
* "Fix" scanning page
- Rendering is a bit broken currently, as the barcode scan does not send back the model data
* "Fix" scanning page
- Rendering is a bit broken currently, as the barcode scan does not send back the model data
- Required refactoring enumerations out into separate files
- Some strange race condition / import loop was happening
* Fix incorrect imports
* Fixing hover card
- Use unique key
* fixes
* Fix urls.md
* More udpates
* Fix unused import
* Add some helper functions for role permission checks on frontend
* Update PartParameterTable
- Use new user role checks
* Fix up more table action permissions
* Add table for part parameter template
* Add edit and delete actions to new table
* Add ability to create new template from table
* Fix for BomTable
* Refactor RowActions
- Require icon
- Horizontal menu popout
* Refactor row actions for existing tables
* Fix BomTable
* Bug fix for notifications table
* Fix display of TableHoverCard
* Disable PanelGroup tooltip when expanded
* Fix unused variables
* updated translation base
* 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>
* updated translation base
* 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 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 messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.po from Crowdin
* Fix: New translations messages.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 messages.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 messages.po from Crowdin
* Fix: New translations messages.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 messages.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 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 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
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Added nav items from main nav
* Added system settings to nav
* removed duplicate entry
* renamed logo button to be clearer about it's intend
* change target of InvenTree icon in header to open nav
* added delay to not open hover on fast header click
* Added general data formatters
* Added usage of new date formatter
* Added usage of new date formatter
* Added usage of currency formatter
* style cleanup
* Moved to use real user and server settings
* fixed type
* Added in formatters again
* cleaned up unsued imports
* Factor out custom component for displaying project code information in a table
* Bump API version
* Update order serializers
- Annotate 'completed_lines' to each order type
* Build out columns for ReturnOrderTable
* Improvements to PurchaseOrderTable
* Building out SalesOrderTable
* Column tweaks
* Factor out project code column
* Factor out status column
* Factor out description column
* Factor out more columns
* More refactoring
* Center status labels
* Fix for PurchaseOrderLineItemTable
* Improve rendering
* Remove unused imports
* Refactor TotalPriceColumn
* Add generic currency column for rendering currency / money values
* Add filters for BuildTable
* Add inline renderer for ProjectCode
* Pass form response data to onFormSuccess callback
* Create new build from build index
* Edit existing build order
* Add projectcode to list
* Bug fixess