@xpufx/paseo-helper-demo 0.2.0

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 (104) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +57 -0
  3. package/client/pill.tsx +1249 -0
  4. package/client/suite-settings.tsx +77 -0
  5. package/client/vendor/paseo-plugin-helper/command-center.ts +43 -0
  6. package/client/vendor/paseo-plugin-helper/components/AboutSection.tsx +493 -0
  7. package/client/vendor/paseo-plugin-helper/components/AttentionBeacon.tsx +250 -0
  8. package/client/vendor/paseo-plugin-helper/components/Badge.tsx +156 -0
  9. package/client/vendor/paseo-plugin-helper/components/Button.tsx +178 -0
  10. package/client/vendor/paseo-plugin-helper/components/Card.tsx +225 -0
  11. package/client/vendor/paseo-plugin-helper/components/CodeBlock.tsx +196 -0
  12. package/client/vendor/paseo-plugin-helper/components/Collapsible.tsx +277 -0
  13. package/client/vendor/paseo-plugin-helper/components/CommandBox.tsx +172 -0
  14. package/client/vendor/paseo-plugin-helper/components/CopyButton.tsx +180 -0
  15. package/client/vendor/paseo-plugin-helper/components/DataTable.tsx +200 -0
  16. package/client/vendor/paseo-plugin-helper/components/EmptyState.tsx +97 -0
  17. package/client/vendor/paseo-plugin-helper/components/HighlightedText.tsx +70 -0
  18. package/client/vendor/paseo-plugin-helper/components/InlineButton.tsx +73 -0
  19. package/client/vendor/paseo-plugin-helper/components/KeyValue.tsx +446 -0
  20. package/client/vendor/paseo-plugin-helper/components/MetricGauge.tsx +247 -0
  21. package/client/vendor/paseo-plugin-helper/components/ProgressBar.tsx +117 -0
  22. package/client/vendor/paseo-plugin-helper/components/Responsive.tsx +53 -0
  23. package/client/vendor/paseo-plugin-helper/components/SearchInput.tsx +118 -0
  24. package/client/vendor/paseo-plugin-helper/components/SectionHeader.tsx +80 -0
  25. package/client/vendor/paseo-plugin-helper/components/Select.tsx +215 -0
  26. package/client/vendor/paseo-plugin-helper/components/StatusDot.tsx +80 -0
  27. package/client/vendor/paseo-plugin-helper/components/Tabs.tsx +319 -0
  28. package/client/vendor/paseo-plugin-helper/components/TextInput.tsx +150 -0
  29. package/client/vendor/paseo-plugin-helper/components/Toggle.tsx +163 -0
  30. package/client/vendor/paseo-plugin-helper/components/TruncatedText.tsx +157 -0
  31. package/client/vendor/paseo-plugin-helper/components/index.ts +25 -0
  32. package/client/vendor/paseo-plugin-helper/core/index.ts +64 -0
  33. package/client/vendor/paseo-plugin-helper/custom-pills.tsx +224 -0
  34. package/client/vendor/paseo-plugin-helper/forge-icon.tsx +79 -0
  35. package/client/vendor/paseo-plugin-helper/host.ts +277 -0
  36. package/client/vendor/paseo-plugin-helper/icon.tsx +39 -0
  37. package/client/vendor/paseo-plugin-helper/index.ts +28 -0
  38. package/client/vendor/paseo-plugin-helper/layout/ActionBar.tsx +49 -0
  39. package/client/vendor/paseo-plugin-helper/layout/FormRow.tsx +103 -0
  40. package/client/vendor/paseo-plugin-helper/layout/Grid.tsx +65 -0
  41. package/client/vendor/paseo-plugin-helper/layout/ModalBody.tsx +378 -0
  42. package/client/vendor/paseo-plugin-helper/layout/ModalContent.tsx +49 -0
  43. package/client/vendor/paseo-plugin-helper/layout/Row.tsx +39 -0
  44. package/client/vendor/paseo-plugin-helper/layout/Stack.tsx +39 -0
  45. package/client/vendor/paseo-plugin-helper/layout/index.ts +7 -0
  46. package/client/vendor/paseo-plugin-helper/panel.tsx +81 -0
  47. package/client/vendor/paseo-plugin-helper/pill.tsx +884 -0
  48. package/client/vendor/paseo-plugin-helper/query-refresh.ts +79 -0
  49. package/client/vendor/paseo-plugin-helper/query.ts +66 -0
  50. package/client/vendor/paseo-plugin-helper/settings-screen.tsx +372 -0
  51. package/client/vendor/paseo-plugin-helper/settings.ts +181 -0
  52. package/client/vendor/paseo-plugin-helper/shared-settings.ts +46 -0
  53. package/client/vendor/paseo-plugin-helper/snapshot.ts +68 -0
  54. package/client/vendor/paseo-plugin-helper/surface.tsx +80 -0
  55. package/client/vendor/paseo-plugin-helper/theme/color-utils.ts +118 -0
  56. package/client/vendor/paseo-plugin-helper/theme/flair.ts +76 -0
  57. package/client/vendor/paseo-plugin-helper/theme/host-variables.ts +121 -0
  58. package/client/vendor/paseo-plugin-helper/theme/index.ts +7 -0
  59. package/client/vendor/paseo-plugin-helper/theme/provider.tsx +214 -0
  60. package/client/vendor/paseo-plugin-helper/theme/responsive.ts +213 -0
  61. package/client/vendor/paseo-plugin-helper/theme/tokens.ts +161 -0
  62. package/client/vendor/paseo-plugin-helper/theme/useResponsive.ts +57 -0
  63. package/client/vendor/paseo-plugin-helper/ui/index.ts +25 -0
  64. package/client/vendor/paseo-plugin-helper/ui/modal.tsx +105 -0
  65. package/client/vendor/paseo-plugin-helper/ui/settings.ts +36 -0
  66. package/client/vendor/paseo-plugin-helper/utils/clipboard.ts +149 -0
  67. package/client/vendor/paseo-plugin-helper/utils/haptics.ts +34 -0
  68. package/package.json +35 -0
  69. package/paseo-plugin.json +6 -0
  70. package/server/demo.ts +195 -0
  71. package/server/suite-settings.ts +23 -0
  72. package/server/vendor/paseo-plugin-helper/agent.ts +85 -0
  73. package/server/vendor/paseo-plugin-helper/custom-pills.ts +344 -0
  74. package/server/vendor/paseo-plugin-helper/index.ts +18 -0
  75. package/server/vendor/paseo-plugin-helper/jsonc.ts +78 -0
  76. package/server/vendor/paseo-plugin-helper/logger.ts +210 -0
  77. package/server/vendor/paseo-plugin-helper/mcp-config.ts +367 -0
  78. package/server/vendor/paseo-plugin-helper/mcp-injection.ts +85 -0
  79. package/server/vendor/paseo-plugin-helper/network.ts +91 -0
  80. package/server/vendor/paseo-plugin-helper/plugins.ts +160 -0
  81. package/server/vendor/paseo-plugin-helper/process.ts +186 -0
  82. package/server/vendor/paseo-plugin-helper/redact.ts +86 -0
  83. package/server/vendor/paseo-plugin-helper/rpc-guard.ts +77 -0
  84. package/server/vendor/paseo-plugin-helper/settings.ts +97 -0
  85. package/server/vendor/paseo-plugin-helper/shared-settings.ts +243 -0
  86. package/server/vendor/paseo-plugin-helper/storage.ts +244 -0
  87. package/server/vendor/paseo-plugin-helper/system.ts +128 -0
  88. package/server/vendor/paseo-plugin-helper/task.ts +116 -0
  89. package/server/vendor/paseo-plugin-helper/version.ts +153 -0
  90. package/server/vendor/paseo-plugin-helper/workspace-beacon.ts +418 -0
  91. package/shared/demo.ts +155 -0
  92. package/shared/vendor/paseo-plugin-helper/README.md +11 -0
  93. package/shared/vendor/paseo-plugin-helper/async.ts +35 -0
  94. package/shared/vendor/paseo-plugin-helper/custom-pills.ts +169 -0
  95. package/shared/vendor/paseo-plugin-helper/forge.ts +110 -0
  96. package/shared/vendor/paseo-plugin-helper/formatters.ts +271 -0
  97. package/shared/vendor/paseo-plugin-helper/highlight.ts +184 -0
  98. package/shared/vendor/paseo-plugin-helper/index.ts +10 -0
  99. package/shared/vendor/paseo-plugin-helper/rpc.ts +72 -0
  100. package/shared/vendor/paseo-plugin-helper/settings.ts +138 -0
  101. package/shared/vendor/paseo-plugin-helper/suite-settings.ts +17 -0
  102. package/shared/vendor/paseo-plugin-helper/suppressed.ts +31 -0
  103. package/shared/vendor/paseo-plugin-helper/types.ts +36 -0
  104. package/shared/version.ts +2 -0
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 xpufx
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,57 @@
1
+ # paseo-helper-demo
2
+
3
+ This plugin is a demo for showcasing some of the capabilities of
4
+ [`paseo-plugin-helper`](https://github.com/xpufx/paseo-plugin-helper) ([npm](https://www.npmjs.com/package/paseo-plugin-helper)),
5
+ namely the UI design system, lifecycle primitives, and daemon utilities for
6
+ building Paseo plugins. It does not necessarily do anything useful to end
7
+ users. Install this one to see every pattern running live; depend on the
8
+ helper to build your own.
9
+
10
+ Built on [paseo-plugin-helper](https://github.com/xpufx/paseo/tree/main/packages/paseo-plugin-helper), the shared Paseo plugin runtime.
11
+
12
+ The helper package and demo are together a demonstration of an idea: that
13
+ the plugin ecosystem can benefit from a common library, not necessarily this
14
+ common library, rather than solving the same issues again and again.
15
+
16
+ <p align="center">
17
+ <a href="screenshots/helper-visual-flair.png">
18
+ <img src="screenshots/helper-visual-flair.png" alt="Visual Flair Studio" />
19
+ </a>
20
+ </p>
21
+
22
+ | System Metrics | About Plugin |
23
+ | :---: | :---: |
24
+ | <a href="screenshots/helper-metric-gauges.png"><img src="screenshots/helper-metric-gauges.png" alt="System Metrics" /></a> | <a href="screenshots/helper-about.png"><img src="screenshots/helper-about.png" alt="About Plugin" /></a> |
25
+
26
+ > [!NOTE]
27
+ > **Prerequisites & Platform Support**:
28
+ > - The composer pill shows live host CPU; the modal covers metrics, actions, tables, beacons, settings, diagnostics, and logs.
29
+
30
+ ## Showcase tabs
31
+
32
+ | Tab | Pattern it teaches |
33
+ | :--- | :--- |
34
+ | Gauges & Hardware | `MetricGauge`, `ProgressBar`, `KeyValueGroup`, auto-refresh polling with selectable cadence |
35
+ | Visual Flair Studio | Live theme/flair customizer (`radius`, `density`, `surface`, `borderWidth`, `accentColor`) backed by atomic settings |
36
+ | Data Table | `DataTable` + `SearchInput` over live daemon items, with `EmptyState` |
37
+ | Interactive Controls | `Button`, `Toggle`, `TextInput`, `FormRow`, haptics + toast feedback |
38
+ | Attention & Beacons | `AttentionBeacon` modes/tones plus workspace beacon RPCs (set/blink/clear) and agent identity inspection |
39
+ | Plugin Settings | Type-safe Zod settings with optimistic React Query updates, navigation-style switch (tabs/dropdown) |
40
+ | Network Diagnostics | `CodeBlock` host details, daemon port, platform |
41
+ | System Logs | Copyable log view fed by the daemon tick counter |
42
+ | About Plugin | `AboutSection` reference (version, repo, issues, license, extras) |
43
+
44
+ ## Navigation styles
45
+
46
+ The modal navbar renders two ways, switchable in the Settings tab (`navigationStyle`):
47
+
48
+ - **Tabs**: sliding single-row `<Tabs mode="scroll">`, pinned above the scroller (`headerMode="pinned"`).
49
+ - **Dropdown** (default): in-flow dropdown trigger + menu inside the `ModalBody` header, scrolling with the content (`headerMode="scroll"`, see `resolveDemoHeaderMode` in `shared/demo.ts`). The open menu resets on navigation-style switches and on pull-to-refresh.
50
+
51
+ ## RPC contracts (`shared/demo.ts`)
52
+
53
+ - `helper-demo.get-data`: hostname, platform, CPU model/usage, memory, load averages, uptime, daemon port, background ticks, service items.
54
+ - `helper-demo.trigger-action`: background action demo with success/error toast + haptic feedback.
55
+ - `helper-demo.agent-identity`: active agent identity/session for self-inspection.
56
+ - `helper-demo.beacon-set` / `beacon-blink` / `beacon-clear`: workspace status beacon control.
57
+ - `helper-demo.settings`: persisted settings (`showCpuUsage`, `accentPillLabel`, `pollingRate`, `navigationStyle`, `highCpuThreshold`, flair fields).