From e4a93cdc126f103f027dd037fe03cac282bbbc15 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zo=C3=AB?= Date: Wed, 26 Aug 2026 10:40:42 +0200 Subject: [PATCH] refactor: move Python backend modules to project root --- backend/src/__init__.py | 0 .../src/bitwarden_client.py => bitwarden_client.py | 2 +- backend/src/clipboard.py => clipboard.py | 0 backend/src/crypto.py => crypto.py | 0 main.py | 11 +++++++---- package.json | 2 +- rollup.config.js | 4 +++- backend/src/totp.py => totp.py | 0 8 files changed, 12 insertions(+), 7 deletions(-) delete mode 100644 backend/src/__init__.py rename backend/src/bitwarden_client.py => bitwarden_client.py (99%) rename backend/src/clipboard.py => clipboard.py (100%) rename backend/src/crypto.py => crypto.py (100%) rename backend/src/totp.py => totp.py (100%) diff --git a/backend/src/__init__.py b/backend/src/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/backend/src/bitwarden_client.py b/bitwarden_client.py similarity index 99% rename from backend/src/bitwarden_client.py rename to bitwarden_client.py index 50d6c9a..a003e94 100644 --- a/backend/src/bitwarden_client.py +++ b/bitwarden_client.py @@ -8,7 +8,7 @@ from typing import Optional, Tuple import aiohttp -from .crypto import BitwardenCrypto, PinCrypto +from crypto import BitwardenCrypto, PinCrypto # Default URLs diff --git a/backend/src/clipboard.py b/clipboard.py similarity index 100% rename from backend/src/clipboard.py rename to clipboard.py diff --git a/backend/src/crypto.py b/crypto.py similarity index 100% rename from backend/src/crypto.py rename to crypto.py diff --git a/main.py b/main.py index 321d0fa..00c20f5 100644 --- a/main.py +++ b/main.py @@ -5,14 +5,17 @@ Main entry point for the Python backend. Provides API routes for the frontend. """ import json import os +import sys import time from typing import Optional +sys.path.insert(0, os.path.dirname(os.path.abspath(__file__))) + import decky_plugin -from .bitwarden_client import BitwardenClient -from .crypto import BitwardenCrypto, PinCrypto -from .totp import generate_totp, get_totp_remaining_seconds -from .clipboard import copy_to_clipboard, clear_all_clipboards +from bitwarden_client import BitwardenClient +from crypto import BitwardenCrypto, PinCrypto +from totp import generate_totp, get_totp_remaining_seconds +from clipboard import copy_to_clipboard, clear_all_clipboards class Plugin: diff --git a/package.json b/package.json index 382251d..74013f2 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@ "description": "Bitwarden/Vaultwarden password manager plugin for Decky Loader", "type": "module", "scripts": { - "build": "rollup -c && mkdir -p out && zip -r out/decky-vaultwarden.zip dist/ main.py plugin.json defaults/ requirements.txt", + "build": "rollup -c && mkdir -p out && rm -rf out/staging && mkdir -p out/staging/Vaultwarden && cp -r dist main.py bitwarden_client.py crypto.py totp.py clipboard.py plugin.json defaults requirements.txt package.json out/staging/Vaultwarden/ && cd out/staging && zip -r ../Vaultwarden.zip Vaultwarden/ && rm -rf out/staging", "watch": "rollup -c -w", "typecheck": "tsc --noEmit" }, diff --git a/rollup.config.js b/rollup.config.js index 4863432..22732bc 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -1,5 +1,7 @@ import deckyPlugin from "@decky/rollup"; export default deckyPlugin({ - // Extra rollup options if needed + output: { + exports: undefined, + }, }); diff --git a/backend/src/totp.py b/totp.py similarity index 100% rename from backend/src/totp.py rename to totp.py