@nordbyte/nordrelay 0.5.2 → 0.7.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 (71) hide show
  1. package/.env.example +80 -11
  2. package/README.md +154 -22
  3. package/dist/access-control.js +7 -1
  4. package/dist/activity-events.js +44 -0
  5. package/dist/audit-log.js +40 -2
  6. package/dist/bot-preferences.js +1 -0
  7. package/dist/bot-rendering.js +10 -7
  8. package/dist/bot.js +535 -11
  9. package/dist/channel-actions.js +7 -2
  10. package/dist/channel-adapter.js +40 -7
  11. package/dist/channel-command-catalog.js +88 -0
  12. package/dist/channel-command-service.js +369 -0
  13. package/dist/channel-mirror-registry.js +77 -0
  14. package/dist/channel-peer-prompt.js +95 -0
  15. package/dist/channel-runtime.js +12 -5
  16. package/dist/channel-turn-service.js +237 -0
  17. package/dist/codex-state.js +114 -78
  18. package/dist/config-metadata.js +93 -13
  19. package/dist/config.js +103 -8
  20. package/dist/context-key.js +87 -5
  21. package/dist/discord-artifacts.js +165 -0
  22. package/dist/discord-bot.js +2073 -0
  23. package/dist/discord-channel-runtime.js +133 -0
  24. package/dist/discord-command-surface.js +57 -0
  25. package/dist/discord-rate-limit.js +141 -0
  26. package/dist/index.js +36 -5
  27. package/dist/job-store.js +127 -0
  28. package/dist/metrics.js +87 -0
  29. package/dist/peer-auth.js +85 -0
  30. package/dist/peer-client.js +256 -0
  31. package/dist/peer-context.js +21 -0
  32. package/dist/peer-identity.js +127 -0
  33. package/dist/peer-runtime-service.js +636 -0
  34. package/dist/peer-server.js +220 -0
  35. package/dist/peer-store.js +294 -0
  36. package/dist/peer-types.js +52 -0
  37. package/dist/relay-external-activity-monitor.js +47 -6
  38. package/dist/relay-runtime-helpers.js +208 -0
  39. package/dist/relay-runtime.js +897 -394
  40. package/dist/remote-prompt.js +98 -0
  41. package/dist/runtime-cache.js +57 -0
  42. package/dist/session-locks.js +10 -7
  43. package/dist/support-bundle.js +1 -0
  44. package/dist/telegram-access-commands.js +15 -2
  45. package/dist/telegram-access-middleware.js +16 -3
  46. package/dist/telegram-agent-commands.js +25 -0
  47. package/dist/telegram-artifact-commands.js +46 -0
  48. package/dist/telegram-command-menu.js +3 -53
  49. package/dist/telegram-diagnostics-command.js +5 -50
  50. package/dist/telegram-general-commands.js +16 -6
  51. package/dist/telegram-operational-commands.js +14 -6
  52. package/dist/telegram-preference-commands.js +23 -127
  53. package/dist/telegram-queue-commands.js +74 -4
  54. package/dist/telegram-support-command.js +7 -0
  55. package/dist/telegram-update-commands.js +27 -0
  56. package/dist/user-management.js +208 -0
  57. package/dist/web-api-contract.js +17 -0
  58. package/dist/web-dashboard-access-routes.js +74 -1
  59. package/dist/web-dashboard-artifact-routes.js +3 -3
  60. package/dist/web-dashboard-assets.js +2 -0
  61. package/dist/web-dashboard-pages.js +109 -13
  62. package/dist/web-dashboard-peer-routes.js +204 -0
  63. package/dist/web-dashboard-runtime-routes.js +53 -8
  64. package/dist/web-dashboard-session-routes.js +27 -20
  65. package/dist/web-dashboard-ui.js +2 -0
  66. package/dist/web-dashboard.js +160 -6
  67. package/dist/web-state.js +33 -2
  68. package/dist/webui-assets/dashboard.css +75 -1
  69. package/dist/webui-assets/dashboard.js +779 -55
  70. package/package.json +5 -2
  71. package/plugins/nordrelay/scripts/nordrelay.mjs +578 -19
@@ -79,6 +79,41 @@
79
79
  width: 100%;
80
80
  }
81
81
  }
82
+ .access-tab {
83
+ display: none;
84
+ }
85
+ .access-tab.active {
86
+ display: block;
87
+ }
88
+ .access-tab-heading {
89
+ display: flex;
90
+ align-items: center;
91
+ justify-content: space-between;
92
+ gap: 12px;
93
+ margin: 0 0 10px;
94
+ }
95
+ .access-tab-heading h2 {
96
+ margin: 0;
97
+ }
98
+ .access-tab-heading input {
99
+ max-width: 320px;
100
+ }
101
+ .access-id-row {
102
+ display: flex;
103
+ align-items: center;
104
+ gap: 8px;
105
+ flex-wrap: wrap;
106
+ }
107
+ @media (max-width: 560px) {
108
+ .access-tab-heading {
109
+ align-items: stretch;
110
+ flex-direction: column;
111
+ }
112
+ .access-tab-heading input {
113
+ max-width: none;
114
+ width: 100%;
115
+ }
116
+ }
82
117
  .drop-active {
83
118
  outline: 2px dashed var(--accent);
84
119
  outline-offset: -8px;
@@ -132,6 +167,16 @@
132
167
  text-overflow: ellipsis;
133
168
  white-space: nowrap;
134
169
  }
170
+ #activeSessions {
171
+ display: grid;
172
+ grid-template-columns: repeat(2, minmax(0, 1fr));
173
+ gap: 8px;
174
+ }
175
+ @media (min-width: 1320px) {
176
+ #activeSessions {
177
+ grid-template-columns: repeat(3, minmax(0, 1fr));
178
+ }
179
+ }
135
180
  .overview-adapter-grid {
136
181
  display: grid;
137
182
  grid-template-columns: repeat(2, minmax(0, 1fr));
@@ -152,6 +197,31 @@
152
197
  .setting.dirty {
153
198
  border-color: var(--accent);
154
199
  }
200
+ .setting-label {
201
+ display: flex !important;
202
+ align-items: center;
203
+ gap: 6px;
204
+ }
205
+ .setting-info {
206
+ display: inline-flex;
207
+ align-items: center;
208
+ justify-content: center;
209
+ width: 18px;
210
+ height: 18px;
211
+ border: 1px solid var(--border);
212
+ border-radius: 50%;
213
+ color: var(--muted);
214
+ background: var(--surface);
215
+ font-size: 12px;
216
+ line-height: 1;
217
+ cursor: help;
218
+ font-weight: 700;
219
+ flex: 0 0 auto;
220
+ }
221
+ .setting-info:focus {
222
+ outline: 2px solid var(--accent);
223
+ outline-offset: 2px;
224
+ }
155
225
  .setting-actions {
156
226
  display: flex;
157
227
  gap: 8px;
@@ -169,7 +239,8 @@
169
239
  padding: 10px;
170
240
  margin: 0 0 12px;
171
241
  }
172
- .task-grid {
242
+ .task-grid,
243
+ .metrics-grid {
173
244
  display: grid;
174
245
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
175
246
  gap: 10px;
@@ -914,6 +985,9 @@ dialog::backdrop {
914
985
  .page {
915
986
  padding: 14px;
916
987
  }
988
+ #activeSessions {
989
+ grid-template-columns: 1fr;
990
+ }
917
991
  .overview-adapter-grid {
918
992
  grid-template-columns: 1fr;
919
993
  }