feat: Core Plugin system — is_core flag, topological sort dependency resolution, deactivation protection

This commit is contained in:
leocrm-bot
2026-07-07 07:44:02 +02:00
parent 1694b14c55
commit bb4b0ce514
8 changed files with 147 additions and 1 deletions
@@ -37,6 +37,7 @@ class EntityLinksPlugin(BasePlugin):
events=["company.deleted", "contact.deleted"],
migrations=["0001_initial.sql"],
permissions=[],
is_core=True,
)
async def on_company_deleted(self, payload: dict[str, Any]) -> None:
@@ -30,4 +30,5 @@ class PermissionsPlugin(BasePlugin):
events=[],
migrations=["0001_initial.sql"],
permissions=[],
is_core=True,
)
+1
View File
@@ -25,4 +25,5 @@ class TagsPlugin(BasePlugin):
events=[],
migrations=["0001_initial.sql"],
permissions=[],
is_core=True,
)