erpdesktop 1.0.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.
@@ -0,0 +1,75 @@
1
+ Metadata-Version: 2.4
2
+ Name: erpdesktop
3
+ Version: 1.0.0
4
+ Summary: ERPDesktop plugin SDK — build, package, and publish plugins for the ERPDesktop marketplace
5
+ Author-email: BatchNepal <support@batchnepal.com>
6
+ License: MIT
7
+ Requires-Python: >=3.11
8
+ Description-Content-Type: text/markdown
9
+ Requires-Dist: click>=8.0
10
+ Requires-Dist: httpx>=0.27
11
+ Requires-Dist: jsonschema>=4.20
12
+ Requires-Dist: rich>=13.0
13
+ Requires-Dist: pyyaml>=6.0
14
+ Requires-Dist: keyring>=25.0
15
+ Requires-Dist: cryptography>=42.0
16
+ Provides-Extra: dev
17
+ Requires-Dist: pytest>=8; extra == "dev"
18
+ Requires-Dist: pytest-asyncio>=0.24; extra == "dev"
19
+ Requires-Dist: ruff>=0.5; extra == "dev"
20
+
21
+ # ERPDesktop Plugin SDK
22
+
23
+ Build, package, and publish plugins for the ERPDesktop marketplace.
24
+
25
+ ## Install
26
+
27
+ ```bash
28
+ pip install erpdesktop-sdk
29
+ ```
30
+
31
+ ## Quick start
32
+
33
+ ```bash
34
+ # Scaffold a new plugin
35
+ erpdesktop init my-plugin
36
+
37
+ # Validate your plugin.json
38
+ erpdesktop validate
39
+
40
+ # Package into a distributable .zip
41
+ erpdesktop package
42
+
43
+ # Publish to the marketplace
44
+ erpdesktop publish --changelog "Initial release"
45
+ ```
46
+
47
+ ## PluginBase lifecycle
48
+
49
+ ```python
50
+ from erpdesktop import PluginBase, log, event
51
+
52
+ class MyPlugin(PluginBase):
53
+ plugin_id = "com.example.my-plugin"
54
+ plugin_version = "1.0.0"
55
+
56
+ def on_start(self, config):
57
+ log("info", "Started", branch=config.get("branch"))
58
+ self.register_command("ping", lambda p: {"pong": True})
59
+
60
+ def on_stop(self):
61
+ log("info", "Shutting down")
62
+
63
+ if __name__ == "__main__":
64
+ MyPlugin().run()
65
+ ```
66
+
67
+ ## Commands
68
+
69
+ | Command | Description |
70
+ |---------|-------------|
71
+ | `erpdesktop init <name>` | Scaffold a new plugin |
72
+ | `erpdesktop validate` | Validate plugin.json |
73
+ | `erpdesktop package` | Create .zip distributable |
74
+ | `erpdesktop publish` | Upload to marketplace |
75
+ | `erpdesktop --version` | Show SDK version |
@@ -0,0 +1,55 @@
1
+ # ERPDesktop Plugin SDK
2
+
3
+ Build, package, and publish plugins for the ERPDesktop marketplace.
4
+
5
+ ## Install
6
+
7
+ ```bash
8
+ pip install erpdesktop-sdk
9
+ ```
10
+
11
+ ## Quick start
12
+
13
+ ```bash
14
+ # Scaffold a new plugin
15
+ erpdesktop init my-plugin
16
+
17
+ # Validate your plugin.json
18
+ erpdesktop validate
19
+
20
+ # Package into a distributable .zip
21
+ erpdesktop package
22
+
23
+ # Publish to the marketplace
24
+ erpdesktop publish --changelog "Initial release"
25
+ ```
26
+
27
+ ## PluginBase lifecycle
28
+
29
+ ```python
30
+ from erpdesktop import PluginBase, log, event
31
+
32
+ class MyPlugin(PluginBase):
33
+ plugin_id = "com.example.my-plugin"
34
+ plugin_version = "1.0.0"
35
+
36
+ def on_start(self, config):
37
+ log("info", "Started", branch=config.get("branch"))
38
+ self.register_command("ping", lambda p: {"pong": True})
39
+
40
+ def on_stop(self):
41
+ log("info", "Shutting down")
42
+
43
+ if __name__ == "__main__":
44
+ MyPlugin().run()
45
+ ```
46
+
47
+ ## Commands
48
+
49
+ | Command | Description |
50
+ |---------|-------------|
51
+ | `erpdesktop init <name>` | Scaffold a new plugin |
52
+ | `erpdesktop validate` | Validate plugin.json |
53
+ | `erpdesktop package` | Create .zip distributable |
54
+ | `erpdesktop publish` | Upload to marketplace |
55
+ | `erpdesktop --version` | Show SDK version |
@@ -0,0 +1,27 @@
1
+ """
2
+ erpdesktop — Build and publish plugins for the ERPDesktop marketplace.
3
+
4
+ Public API:
5
+ from erpdesktop import PluginBase, log, event
6
+ from erpdesktop import erpnext_request, odoo_request
7
+ from erpdesktop import storage, secrets, permissions, i18n, device, notify, http
8
+ """
9
+
10
+ from erpdesktop.plugin_base import PluginBase
11
+ from erpdesktop.logging import log
12
+ from erpdesktop.telemetry import event
13
+ from erpdesktop.erp import erpnext_request, odoo_request
14
+ from erpdesktop import storage
15
+ from erpdesktop import secrets
16
+ from erpdesktop import permissions
17
+ from erpdesktop import i18n
18
+ from erpdesktop import device
19
+ from erpdesktop import notify
20
+ from erpdesktop import http
21
+
22
+ __version__ = "1.0.0"
23
+ __all__ = [
24
+ "PluginBase", "log", "event",
25
+ "erpnext_request", "odoo_request",
26
+ "storage", "secrets", "permissions", "i18n", "device", "notify", "http",
27
+ ]
@@ -0,0 +1 @@
1
+ """CLI package."""