.gitignore
.gitlab-ci.yml
.pre-commit-config.yaml
.readthedocs.yml
CHANGELOG.md
CLAUDE.md
LICENSE
Makefile
README.md
mkdocs.yml
py.typed
pyproject.toml
uv.lock
docs/development.md
docs/faq.md
docs/hooks.py
docs/index.md
docs/mgmt_cmds.md
docs/components/toasts.md
docs/development/pluggable_components.md
docs/images/toast_dismissible.png
docs/images/toasts.png
docs/usage/installation.md
docs/usage/layout.md
docs/usage/logging.md
docs/usage/maintenance_mode.md
docs/usage/menus.md
docs/usage/settings.md
docs/usage/tables.md
docs/usage/template_blocks.md
docs/usage/tenants.md
docs/usage/urls.md
docs/usage/versioned_model.md
scripts/gen_ref_pages.py
scripts/update_libraries.py
src/conjunto/__init__.py
src/conjunto/admin.py
src/conjunto/apps.py
src/conjunto/checks.py
src/conjunto/colors.py
src/conjunto/context_processors.py
src/conjunto/fields.py
src/conjunto/gdaps_hooks.py
src/conjunto/menus.py
src/conjunto/middleware.py
src/conjunto/models.py
src/conjunto/registry.py
src/conjunto/scoped_settings.py
src/conjunto/tables.py
src/conjunto/tools.py
src/conjunto/urls.py
src/conjunto/views.py
src/conjunto.egg-info/PKG-INFO
src/conjunto.egg-info/SOURCES.txt
src/conjunto.egg-info/dependency_links.txt
src/conjunto.egg-info/requires.txt
src/conjunto.egg-info/top_level.txt
src/conjunto/api/__init__.py
src/conjunto/api/interfaces/__init__.py
src/conjunto/audit_log/__init__.py
src/conjunto/audit_log/context.py
src/conjunto/audit_log/formatter.py
src/conjunto/audit_log/gdaps_hooks.py
src/conjunto/audit_log/log_actions.py
src/conjunto/audit_log/models.py
src/conjunto/audit_log/registry.py
src/conjunto/audit_log/migrations/0001_initial.py
src/conjunto/audit_log/migrations/0002_modellogentry_public_and_more.py
src/conjunto/audit_log/migrations/0003_modellogentry_result.py
src/conjunto/audit_log/migrations/__init__.py
src/conjunto/cms/README.md
src/conjunto/cms/__init__.py
src/conjunto/cms/admin.py
src/conjunto/cms/apps.py
src/conjunto/cms/models.py
src/conjunto/cms/tests.py
src/conjunto/cms/views.py
src/conjunto/cms/migrations/0001_initial.py
src/conjunto/cms/migrations/0002_delete_staticversionedpage_alter_licensepage_options_and_more.py
src/conjunto/cms/migrations/0003_rename_licensepage_termsconditionspage.py
src/conjunto/cms/migrations/0004_alter_termsconditionspage_options.py
src/conjunto/cms/migrations/0005_alter_privacypage_version_and_more.py
src/conjunto/cms/migrations/0006_staticpage_name.py
src/conjunto/cms/migrations/__init__.py
src/conjunto/cms/templates/conjunto/cms/static_page.html
src/conjunto/components/__init__.py
src/conjunto/components/default/__init__.py
src/conjunto/components/default/accordion/__init__.py
src/conjunto/components/default/accordion/accordion.html
src/conjunto/components/default/accordion_item/__init__.py
src/conjunto/components/default/accordion_item/accordion_item.html
src/conjunto/components/default/accordion_list/__init__.py
src/conjunto/components/default/accordion_list/accordion_list.html
src/conjunto/components/default/alert/__init__.py
src/conjunto/components/default/alert/alert.html
src/conjunto/components/default/avatar/__init__.py
src/conjunto/components/default/avatar/avatar.html
src/conjunto/components/default/card/__init__.py
src/conjunto/components/default/card/card.html
src/conjunto/components/default/footer/__init__.py
src/conjunto/components/default/footer/footer.html
src/conjunto/components/default/modal/__init__.py
src/conjunto/components/default/modal/modal.html
src/conjunto/components/default/modal_button/__init__.py
src/conjunto/components/default/modal_button/modal_button.html
src/conjunto/components/default/notifications_menu/__init__.py
src/conjunto/components/default/notifications_menu/notifications_menu.html
src/conjunto/components/default/page/__init__.py
src/conjunto/components/default/page/page.html
src/conjunto/components/default/page_header/__init__.py
src/conjunto/components/default/page_header/page_header.html
src/conjunto/components/default/updatable/__init__.py
src/conjunto/components/default/updatable/updatable.html
src/conjunto/components/widgets/__init__.py
src/conjunto/example/__init__.py
src/conjunto/example/admin.py
src/conjunto/example/apps.py
src/conjunto/example/menus.py
src/conjunto/example/models.py
src/conjunto/example/tests.py
src/conjunto/example/views.py
src/conjunto/example/migrations/__init__.py
src/conjunto/example/templates/conjunto/example/dashboard.html
src/conjunto/example/templates/conjunto/example/page.html
src/conjunto/example/templatetags/__init__.py
src/conjunto/files/__init__.py
src/conjunto/files/storage.py
src/conjunto/forms/__init__.py
src/conjunto/forms/fields.py
src/conjunto/forms/widgets/__init__.py
src/conjunto/htmx/__init__.py
src/conjunto/htmx/views.py
src/conjunto/http/__init__.py
src/conjunto/locale/de/LC_MESSAGES/django.po
src/conjunto/management/__init__.py
src/conjunto/management/commands/__init__.py
src/conjunto/management/commands/show_actions.py
src/conjunto/management/commands/update_permissions.py
src/conjunto/menu/__init__.py
src/conjunto/migrations/0001_initial.py
src/conjunto/migrations/0002_delete_licensepage_delete_privacypage_and_more.py
src/conjunto/migrations/0003_add_vendor.py
src/conjunto/migrations/0004_privacypage_staticpage_termsconditionspage.py
src/conjunto/migrations/0005_delete_privacypage_delete_staticpage_and_more.py
src/conjunto/migrations/0006_vendor_website_alter_vendor_address_and_more.py
src/conjunto/migrations/0007_modellogentry.py
src/conjunto/migrations/0008_delete_modellogentry.py
src/conjunto/migrations/0009_modellogentry.py
src/conjunto/migrations/0010_versionsnapshot.py
src/conjunto/migrations/0011_tenant.py
src/conjunto/migrations/0012_delete_tenant.py
src/conjunto/migrations/__init__.py
src/conjunto/settings/__init__.py
src/conjunto/settings/admin.py
src/conjunto/settings/apps.py
src/conjunto/settings/interfaces.py
src/conjunto/settings/menus.py
src/conjunto/settings/models.py
src/conjunto/settings/urls.py
src/conjunto/settings/views.py
src/conjunto/settings/migrations/0001_initial.py
src/conjunto/settings/migrations/0002_scopedsetting.py
src/conjunto/settings/migrations/0003_alter_device_id_alter_scopedsetting_id.py
src/conjunto/settings/migrations/__init__.py
src/conjunto/settings/scoped/__init__.py
src/conjunto/settings/scoped/interfaces.py
src/conjunto/settings/scoped/models.py
src/conjunto/settings/scoped/proxy.py
src/conjunto/settings/scoped/registry.py
src/conjunto/settings/scoped/resolver.py
src/conjunto/settings/scoped/scopes.py
src/conjunto/settings/scoped/testing.py
src/conjunto/settings/templates/conjunto/settings/page.html
src/conjunto/static/conjunto/css/bootstrap-icons.css
src/conjunto/static/conjunto/css/bootstrap.css
src/conjunto/static/conjunto/css/bootstrap.css.map
src/conjunto/static/conjunto/css/bootstrap.min.css
src/conjunto/static/conjunto/css/conjunto.css
src/conjunto/static/conjunto/css/dropzone.css
src/conjunto/static/conjunto/css/dropzone.min.css
src/conjunto/static/conjunto/css/tabler-icons.css
src/conjunto/static/conjunto/css/tabler-icons.min.css
src/conjunto/static/conjunto/css/tabler.css
src/conjunto/static/conjunto/css/tabler.min.css
src/conjunto/static/conjunto/css/fonts/bootstrap-icons.woff
src/conjunto/static/conjunto/css/fonts/bootstrap-icons.woff2
src/conjunto/static/conjunto/css/fonts/tabler-icons.woff
src/conjunto/static/conjunto/css/fonts/tabler-icons.woff2
src/conjunto/static/conjunto/js/Sortable.js
src/conjunto/static/conjunto/js/Sortable.min.js
src/conjunto/static/conjunto/js/alpine.js
src/conjunto/static/conjunto/js/alpine.min.js
src/conjunto/static/conjunto/js/chart.min.js
src/conjunto/static/conjunto/js/conjunto.js
src/conjunto/static/conjunto/js/datepicker.js
src/conjunto/static/conjunto/js/dropzone.js
src/conjunto/static/conjunto/js/dropzone.min.js
src/conjunto/static/conjunto/js/fslightbox.js
src/conjunto/static/conjunto/js/litepicker.js
src/conjunto/static/conjunto/js/tabler-theme.js
src/conjunto/static/conjunto/js/tabler-theme.min.js
src/conjunto/static/conjunto/js/tabler.js
src/conjunto/static/conjunto/js/tabler.min.js
src/conjunto/static/conjunto/js/toasts.js
src/conjunto/static/conjunto/js/htmx/htmx.js
src/conjunto/static/conjunto/js/htmx/htmx.min.js
src/conjunto/static/conjunto/js/htmx/ext/debug.js
src/conjunto/static/conjunto/js/htmx/ext/ws.js
src/conjunto/templates/conjunto/app_base.html
src/conjunto/templates/conjunto/base.html
src/conjunto/templates/conjunto/card_page.html
src/conjunto/templates/conjunto/generic_form.html
src/conjunto/templates/conjunto/lightbox.html
src/conjunto/templates/conjunto/login.html
src/conjunto/templates/conjunto/modal_confirm_delete.html
src/conjunto/templates/conjunto/modal_form.html
src/conjunto/templates/conjunto/offcanvas_left.html
src/conjunto/templates/conjunto/components/datagrid.html
src/conjunto/templates/conjunto/components/datagrid_item.html
src/conjunto/templates/conjunto/components/link.html
src/conjunto/templates/conjunto/components/list.html
src/conjunto/templates/conjunto/components/list_item.html
src/conjunto/templates/conjunto/components/tab_card.html
src/conjunto/templates/conjunto/includes/footer.html
src/conjunto/templates/conjunto/includes/menu_renderer.html
src/conjunto/templates/conjunto/includes/notifications_dropdown.html
src/conjunto/templates/conjunto/includes/page_header.html
src/conjunto/templates/conjunto/includes/sidebar.html
src/conjunto/templates/conjunto/includes/sidebar_item.html
src/conjunto/templates/conjunto/includes/theme_toggle.html
src/conjunto/templates/conjunto/includes/toasts.html
src/conjunto/templates/conjunto/includes/user_dropdown.html
src/conjunto/templates/conjunto/layouts/empty.html
src/conjunto/templates/conjunto/tables/_row_actions.html
src/conjunto/templates/conjunto/widgets/area.html
src/conjunto/templates/conjunto/widgets/card_loading.html
src/conjunto/templates/conjunto/widgets/card_shell.html
src/conjunto/templates/conjunto/widgets/datepicker_input.html
src/conjunto/templates/conjunto/widgets/field_display.html
src/conjunto/templates/conjunto/widgets/selectgroup.html
src/conjunto/templates/registration/login.html
src/conjunto/templatetags/__init__.py
src/conjunto/templatetags/conjunto.py
src/conjunto/tenants/__init__.py
src/conjunto/tenants/admin.py
src/conjunto/tenants/admin_urls.py
src/conjunto/tenants/apps.py
src/conjunto/tenants/backends.py
src/conjunto/tenants/constants.py
src/conjunto/tenants/context.py
src/conjunto/tenants/forms.py
src/conjunto/tenants/managers.py
src/conjunto/tenants/mixins.py
src/conjunto/tenants/models.py
src/conjunto/tenants/roles.py
src/conjunto/tenants/urls.py
src/conjunto/tenants/utils.py
src/conjunto/tenants/migrations/0001_initial.py
src/conjunto/tenants/migrations/0002_roles_membership.py
src/conjunto/tenants/migrations/0003_alter_tenant_id_alter_tenantmembership_id_and_more.py
src/conjunto/tenants/migrations/0004_add_tenant_role.py
src/conjunto/tenants/migrations/__init__.py
src/conjunto/tenants/templates/conjunto/tenants/_badge.html
src/conjunto/tenants/templates/conjunto/tenants/_permission_widget.html
src/conjunto/tenants/templates/conjunto/tenants/manage_roles.html
src/conjunto/tenants/templates/conjunto/tenants/role_confirm_delete.html
src/conjunto/tenants/templates/conjunto/tenants/role_form.html
src/conjunto/tenants/templates/conjunto/tenants/role_list.html
src/conjunto/tenants/templates/conjunto/tenants/user_edit.html
src/conjunto/tenants/templates/conjunto/tenants/user_form.html
src/conjunto/tenants/templates/conjunto/tenants/user_list.html
src/conjunto/tenants/templates/conjunto/tenants/user_remove.html
src/conjunto/tenants/templates/conjunto/tenants/user_role_list.html
src/conjunto/tenants/templatetags/__init__.py
src/conjunto/tenants/templatetags/tenant_tags.py
src/conjunto/tenants/views/__init__.py
src/conjunto/tenants/views/memberships.py
src/conjunto/tenants/views/roles.py
src/conjunto/tenants/views/users.py
src/conjunto/widgets/__init__.py
src/conjunto/widgets/urls.py
src/conjunto/widgets/views.py
tests/__init__.py
tests/conftest.py
tests/test_audit_log_models.py
tests/test_color_scheme.py
tests/test_group_permissions.py
tests/test_log_action.py
tests/test_logging.py
tests/test_menu.py
tests/test_menu_features.py
tests/test_menu_filter.py
tests/test_menu_slug.py
tests/test_menu_visibility.py
tests/test_request_refactor.py
tests/test_scoped_admin.py
tests/test_scoped_constraints.py
tests/test_scoped_device.py
tests/test_scoped_maintenance.py
tests/test_scoped_proxy.py
tests/test_scoped_registry.py
tests/test_scoped_resolver.py
tests/test_scoped_scopes.py
tests/test_settings.py
tests/test_singleton_model.py
tests/test_tables.py
tests/test_tenant_picker.py
tests/test_tenant_roles.py
tests/test_tenant_scoping.py
tests/test_tenants.py
tests/test_toasts.py
tests/test_tools.py
tests/test_versioned_model.py
tests/test_app/__init__.py
tests/test_app/migrations.py
tests/test_app/models.py
tests/test_app/urls.py