* 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 |
||
|---|---|---|
| .. | ||
| public | ||
| src | ||
| tests | ||
| .babelrc | ||
| .eslintrc.cjs | ||
| .gitignore | ||
| .linguirc | ||
| .prettierrc | ||
| index.html | ||
| netlify.toml | ||
| package.json | ||
| playwright.config.ts | ||
| tsconfig.json | ||
| tsconfig.node.json | ||
| vite.config.ts | ||
| yarn.lock | ||