splent-feature-phpmyadmin 1.0.3__tar.gz → 1.2.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (22) hide show
  1. {splent_feature_phpmyadmin-1.0.3/src/splent_feature_phpmyadmin.egg-info → splent_feature_phpmyadmin-1.2.0}/PKG-INFO +2 -1
  2. {splent_feature_phpmyadmin-1.0.3 → splent_feature_phpmyadmin-1.2.0}/pyproject.toml +2 -8
  3. {splent_feature_phpmyadmin-1.0.3 → splent_feature_phpmyadmin-1.2.0/src/splent_feature_phpmyadmin.egg-info}/PKG-INFO +2 -1
  4. {splent_feature_phpmyadmin-1.0.3 → splent_feature_phpmyadmin-1.2.0}/src/splent_feature_phpmyadmin.egg-info/SOURCES.txt +1 -0
  5. splent_feature_phpmyadmin-1.2.0/src/splent_feature_phpmyadmin.egg-info/requires.txt +1 -0
  6. splent_feature_phpmyadmin-1.2.0/src/splent_io/splent_feature_phpmyadmin/__init__.py +38 -0
  7. {splent_feature_phpmyadmin-1.0.3 → splent_feature_phpmyadmin-1.2.0}/src/splent_io/splent_feature_phpmyadmin/hooks.py +4 -0
  8. splent_feature_phpmyadmin-1.2.0/src/splent_io/splent_feature_phpmyadmin/routes.py +2 -0
  9. splent_feature_phpmyadmin-1.0.3/src/splent_io/splent_feature_phpmyadmin/__init__.py +0 -11
  10. splent_feature_phpmyadmin-1.0.3/src/splent_io/splent_feature_phpmyadmin/routes.py +0 -2
  11. {splent_feature_phpmyadmin-1.0.3 → splent_feature_phpmyadmin-1.2.0}/COPYING +0 -0
  12. {splent_feature_phpmyadmin-1.0.3 → splent_feature_phpmyadmin-1.2.0}/COPYING.LESSER +0 -0
  13. {splent_feature_phpmyadmin-1.0.3 → splent_feature_phpmyadmin-1.2.0}/MANIFEST.in +0 -0
  14. {splent_feature_phpmyadmin-1.0.3 → splent_feature_phpmyadmin-1.2.0}/setup.cfg +0 -0
  15. {splent_feature_phpmyadmin-1.0.3 → splent_feature_phpmyadmin-1.2.0}/src/splent_feature_phpmyadmin.egg-info/dependency_links.txt +0 -0
  16. {splent_feature_phpmyadmin-1.0.3 → splent_feature_phpmyadmin-1.2.0}/src/splent_feature_phpmyadmin.egg-info/top_level.txt +0 -0
  17. {splent_feature_phpmyadmin-1.0.3 → splent_feature_phpmyadmin-1.2.0}/src/splent_io/splent_feature_phpmyadmin/config.py +0 -0
  18. {splent_feature_phpmyadmin-1.0.3 → splent_feature_phpmyadmin-1.2.0}/src/splent_io/splent_feature_phpmyadmin/migrations/alembic.ini +0 -0
  19. {splent_feature_phpmyadmin-1.0.3 → splent_feature_phpmyadmin-1.2.0}/src/splent_io/splent_feature_phpmyadmin/migrations/env.py +0 -0
  20. {splent_feature_phpmyadmin-1.0.3 → splent_feature_phpmyadmin-1.2.0}/src/splent_io/splent_feature_phpmyadmin/migrations/script.py.mako +0 -0
  21. {splent_feature_phpmyadmin-1.0.3 → splent_feature_phpmyadmin-1.2.0}/src/splent_io/splent_feature_phpmyadmin/seeders.py +0 -0
  22. {splent_feature_phpmyadmin-1.0.3 → splent_feature_phpmyadmin-1.2.0}/src/splent_io/splent_feature_phpmyadmin/services.py +0 -0
@@ -1,9 +1,10 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: splent_feature_phpmyadmin
3
- Version: 1.0.3
3
+ Version: 1.2.0
4
4
  License-Expression: LGPL-3.0-or-later
5
5
  Requires-Python: >=3.13
6
6
  Description-Content-Type: text/markdown
7
7
  License-File: COPYING
8
8
  License-File: COPYING.LESSER
9
+ Requires-Dist: splent_framework>=1.21.0
9
10
  Dynamic: license-file
@@ -4,14 +4,14 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "splent_feature_phpmyadmin"
7
- version = "1.0.3"
7
+ version = "1.2.0"
8
8
  readme = "README.md"
9
9
  requires-python = ">=3.13"
10
10
  license = "LGPL-3.0-or-later"
11
11
  license-files = ["COPYING", "COPYING.LESSER"]
12
12
 
13
13
  dependencies = [
14
-
14
+ "splent_framework>=1.21.0",
15
15
  ]
16
16
 
17
17
  [tool.setuptools]
@@ -25,12 +25,6 @@ exclude = ["*.tests", "*.tests.*"]
25
25
  [tool.splent]
26
26
  cli_version = "1.4.5"
27
27
 
28
- # ── Feature Contract (auto-generated) ────────────────────────────────────────
29
- # Do not edit manually — re-run `splent feature:contract --write` to refresh.
30
- # Preserved across refreshes: description, category, tags, env,
31
- # requires.features_manual (dependencies invisible to static analysis)
32
- # and provides.routes_manual (routes built from configuration at
33
- # registration time, which have no literal path to find in source).
34
28
  [tool.splent.contract]
35
29
  description = "phpMyAdmin database management UI for development"
36
30
  archetype = "config"
@@ -1,9 +1,10 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: splent_feature_phpmyadmin
3
- Version: 1.0.3
3
+ Version: 1.2.0
4
4
  License-Expression: LGPL-3.0-or-later
5
5
  Requires-Python: >=3.13
6
6
  Description-Content-Type: text/markdown
7
7
  License-File: COPYING
8
8
  License-File: COPYING.LESSER
9
+ Requires-Dist: splent_framework>=1.21.0
9
10
  Dynamic: license-file
@@ -5,6 +5,7 @@ pyproject.toml
5
5
  src/splent_feature_phpmyadmin.egg-info/PKG-INFO
6
6
  src/splent_feature_phpmyadmin.egg-info/SOURCES.txt
7
7
  src/splent_feature_phpmyadmin.egg-info/dependency_links.txt
8
+ src/splent_feature_phpmyadmin.egg-info/requires.txt
8
9
  src/splent_feature_phpmyadmin.egg-info/top_level.txt
9
10
  src/splent_io/splent_feature_phpmyadmin/__init__.py
10
11
  src/splent_io/splent_feature_phpmyadmin/config.py
@@ -0,0 +1,38 @@
1
+ from splent_framework.blueprints.base_blueprint import create_blueprint
2
+
3
+ phpmyadmin_bp = create_blueprint(__name__)
4
+
5
+
6
+ def init_feature(app):
7
+ _register_menu(app)
8
+
9
+
10
+ def _register_menu(app):
11
+ """phpMyAdmin in the Administration section, for administrators.
12
+
13
+ phpMyAdmin is another container, on the host port inject_config read,
14
+ so the entry is an address and not an endpoint, and it opens in a new
15
+ tab, as the hook's link does, so the administrator keeps the
16
+ application. An address has no screen whose roles it could take, and
17
+ every signed-in account would see it, so it names its role: it opens
18
+ the whole database. The layout.authenticated_sidebar hook in hooks.py
19
+ draws the same link for the shells that still render slots; it stays
20
+ for one minor, and a shell draws one or the other, never both.
21
+ """
22
+ from splent_framework.nav.menu_registry import register_menu_item
23
+
24
+ port = app.config.get("PMA_HOST_PORT", "8081")
25
+ register_menu_item(
26
+ "phpmyadmin",
27
+ "phpMyAdmin",
28
+ href=f"http://localhost:{port}",
29
+ icon="database",
30
+ section="admin",
31
+ order=110,
32
+ roles="admin",
33
+ external=True,
34
+ )
35
+
36
+
37
+ def inject_context_vars(app):
38
+ return {}
@@ -14,4 +14,8 @@ def phpmyadmin_sidebar_link():
14
14
  )
15
15
 
16
16
 
17
+ # The same entry is in the menu registry (see _register_menu in __init__.py).
18
+ # This hook stays for one minor, for the shells that still render the slot
19
+ # instead of the registry, and keeps the audience it had: every account the
20
+ # signed-in sidebar is drawn for. Only the registry entry names a role.
17
21
  register_template_hook("layout.authenticated_sidebar", phpmyadmin_sidebar_link)
@@ -0,0 +1,2 @@
1
+ # No routes — phpMyAdmin runs as an external Docker container.
2
+ # The sidebar hook and the menu registry entry link directly to its port.
@@ -1,11 +0,0 @@
1
- from splent_framework.blueprints.base_blueprint import create_blueprint
2
-
3
- phpmyadmin_bp = create_blueprint(__name__)
4
-
5
-
6
- def init_feature(app):
7
- pass
8
-
9
-
10
- def inject_context_vars(app):
11
- return {}
@@ -1,2 +0,0 @@
1
- # No routes — phpMyAdmin runs as an external Docker container.
2
- # The sidebar hook links directly to its port.