@camstack/core 0.1.15 → 0.1.16

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 (382) hide show
  1. package/dist/addon/addon-api-factory.d.ts +36 -0
  2. package/dist/addon/addon-api-factory.d.ts.map +1 -0
  3. package/dist/addon-routes/addon-route-registry.d.ts +38 -0
  4. package/dist/addon-routes/addon-route-registry.d.ts.map +1 -0
  5. package/dist/auth/api-key-manager.d.ts +27 -0
  6. package/dist/auth/api-key-manager.d.ts.map +1 -0
  7. package/dist/auth/auth-manager.d.ts +47 -0
  8. package/dist/auth/auth-manager.d.ts.map +1 -0
  9. package/dist/auth/parse-record.d.ts +19 -0
  10. package/dist/auth/parse-record.d.ts.map +1 -0
  11. package/dist/auth/scoped-token-manager.d.ts +18 -0
  12. package/dist/auth/scoped-token-manager.d.ts.map +1 -0
  13. package/dist/auth/user-manager.d.ts +34 -0
  14. package/dist/auth/user-manager.d.ts.map +1 -0
  15. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.d.ts +54 -0
  16. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.d.ts.map +1 -0
  17. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.js +223 -217
  18. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.js.map +1 -1
  19. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.mjs +216 -7
  20. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.mjs.map +1 -1
  21. package/dist/builtins/addon-pages-aggregator/index.d.ts +2 -0
  22. package/dist/builtins/addon-pages-aggregator/index.d.ts.map +1 -0
  23. package/dist/builtins/addon-pages-aggregator/index.js +6 -221
  24. package/dist/builtins/addon-pages-aggregator/index.mjs +2 -9
  25. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.d.ts +33 -0
  26. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.d.ts.map +1 -0
  27. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.js +199 -197
  28. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.js.map +1 -1
  29. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.mjs +192 -7
  30. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.mjs.map +1 -1
  31. package/dist/builtins/addon-widgets-aggregator/index.d.ts +2 -0
  32. package/dist/builtins/addon-widgets-aggregator/index.d.ts.map +1 -0
  33. package/dist/builtins/addon-widgets-aggregator/index.js +6 -201
  34. package/dist/builtins/addon-widgets-aggregator/index.mjs +2 -9
  35. package/dist/builtins/alerts/alerts.addon.d.ts +82 -0
  36. package/dist/builtins/alerts/alerts.addon.d.ts.map +1 -0
  37. package/dist/builtins/alerts/alerts.addon.js +590 -430
  38. package/dist/builtins/alerts/alerts.addon.js.map +1 -1
  39. package/dist/builtins/alerts/alerts.addon.mjs +595 -7
  40. package/dist/builtins/alerts/alerts.addon.mjs.map +1 -1
  41. package/dist/builtins/alerts/index.d.ts +2 -0
  42. package/dist/builtins/alerts/index.d.ts.map +1 -0
  43. package/dist/builtins/alerts/index.js +3 -443
  44. package/dist/builtins/alerts/index.mjs +2 -8
  45. package/dist/builtins/auth-orchestrator/auth-orchestrator.addon.d.ts +8 -0
  46. package/dist/builtins/auth-orchestrator/auth-orchestrator.addon.d.ts.map +1 -0
  47. package/dist/builtins/auth-orchestrator/auth-orchestrator.addon.js +56 -0
  48. package/dist/builtins/auth-orchestrator/auth-orchestrator.addon.js.map +1 -0
  49. package/dist/builtins/auth-orchestrator/auth-orchestrator.addon.mjs +50 -0
  50. package/dist/builtins/auth-orchestrator/auth-orchestrator.addon.mjs.map +1 -0
  51. package/dist/builtins/auth-orchestrator/index.d.ts +2 -0
  52. package/dist/builtins/auth-orchestrator/index.d.ts.map +1 -0
  53. package/dist/builtins/auth-orchestrator/index.js +7 -0
  54. package/dist/builtins/auth-orchestrator/index.mjs +2 -0
  55. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.d.ts +148 -0
  56. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.d.ts.map +1 -0
  57. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.js +7639 -0
  58. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.js.map +1 -0
  59. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.mjs +7627 -0
  60. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.mjs.map +1 -0
  61. package/dist/builtins/backup-orchestrator/cron-helpers.d.ts +24 -0
  62. package/dist/builtins/backup-orchestrator/cron-helpers.d.ts.map +1 -0
  63. package/dist/builtins/backup-orchestrator/destination-policy.d.ts +73 -0
  64. package/dist/builtins/backup-orchestrator/destination-policy.d.ts.map +1 -0
  65. package/dist/builtins/backup-orchestrator/download-helpers.d.ts +13 -0
  66. package/dist/builtins/backup-orchestrator/download-helpers.d.ts.map +1 -0
  67. package/dist/builtins/backup-orchestrator/index.d.ts +3 -0
  68. package/dist/builtins/backup-orchestrator/index.d.ts.map +1 -0
  69. package/dist/builtins/backup-orchestrator/index.js +7 -0
  70. package/dist/builtins/backup-orchestrator/index.mjs +2 -0
  71. package/dist/builtins/backup-orchestrator/manifest-store.d.ts +78 -0
  72. package/dist/builtins/backup-orchestrator/manifest-store.d.ts.map +1 -0
  73. package/dist/builtins/console-logging/console-destination.d.ts +14 -0
  74. package/dist/builtins/console-logging/console-destination.d.ts.map +1 -0
  75. package/dist/builtins/console-logging/console-logging.addon.d.ts +26 -0
  76. package/dist/builtins/console-logging/console-logging.addon.d.ts.map +1 -0
  77. package/dist/builtins/console-logging/index.d.ts +4 -0
  78. package/dist/builtins/console-logging/index.d.ts.map +1 -0
  79. package/dist/builtins/console-logging/index.js +99 -235
  80. package/dist/builtins/console-logging/index.js.map +1 -1
  81. package/dist/builtins/console-logging/index.mjs +95 -9
  82. package/dist/builtins/console-logging/index.mjs.map +1 -1
  83. package/dist/builtins/device-manager/device-event-propagator.d.ts +27 -0
  84. package/dist/builtins/device-manager/device-event-propagator.d.ts.map +1 -0
  85. package/dist/builtins/device-manager/device-manager.addon.d.ts +259 -0
  86. package/dist/builtins/device-manager/device-manager.addon.d.ts.map +1 -0
  87. package/dist/builtins/device-manager/device-manager.addon.js +2125 -2127
  88. package/dist/builtins/device-manager/device-manager.addon.js.map +1 -1
  89. package/dist/builtins/device-manager/device-manager.addon.mjs +2145 -7
  90. package/dist/builtins/device-manager/device-manager.addon.mjs.map +1 -1
  91. package/dist/builtins/device-manager/index.d.ts +3 -0
  92. package/dist/builtins/device-manager/index.d.ts.map +1 -0
  93. package/dist/builtins/device-manager/index.js +6 -2156
  94. package/dist/builtins/device-manager/index.mjs +2 -10
  95. package/dist/builtins/hub-forwarder/hub-forwarder-destination.d.ts +45 -0
  96. package/dist/builtins/hub-forwarder/hub-forwarder-destination.d.ts.map +1 -0
  97. package/dist/builtins/hub-forwarder/hub-forwarder.addon.d.ts +16 -0
  98. package/dist/builtins/hub-forwarder/hub-forwarder.addon.d.ts.map +1 -0
  99. package/dist/builtins/hub-forwarder/index.d.ts +4 -0
  100. package/dist/builtins/hub-forwarder/index.d.ts.map +1 -0
  101. package/dist/builtins/hub-forwarder/index.js +150 -291
  102. package/dist/builtins/hub-forwarder/index.js.map +1 -1
  103. package/dist/builtins/hub-forwarder/index.mjs +145 -9
  104. package/dist/builtins/hub-forwarder/index.mjs.map +1 -1
  105. package/dist/builtins/local-auth/auth-schema.d.ts +12 -0
  106. package/dist/builtins/local-auth/auth-schema.d.ts.map +1 -0
  107. package/dist/builtins/local-auth/index.d.ts +2 -0
  108. package/dist/builtins/local-auth/index.d.ts.map +1 -0
  109. package/dist/builtins/local-auth/index.js +3 -623
  110. package/dist/builtins/local-auth/index.mjs +2 -8
  111. package/dist/builtins/local-auth/local-auth.addon.d.ts +17 -0
  112. package/dist/builtins/local-auth/local-auth.addon.d.ts.map +1 -0
  113. package/dist/builtins/local-auth/local-auth.addon.js +6861 -589
  114. package/dist/builtins/local-auth/local-auth.addon.js.map +1 -1
  115. package/dist/builtins/local-auth/local-auth.addon.mjs +6883 -7
  116. package/dist/builtins/local-auth/local-auth.addon.mjs.map +1 -1
  117. package/dist/builtins/local-network/index.d.ts +3 -0
  118. package/dist/builtins/local-network/index.d.ts.map +1 -0
  119. package/dist/builtins/local-network/index.js +9 -0
  120. package/dist/builtins/local-network/index.mjs +2 -0
  121. package/dist/builtins/local-network/local-network.addon.d.ts +102 -0
  122. package/dist/builtins/local-network/local-network.addon.d.ts.map +1 -0
  123. package/dist/builtins/local-network/local-network.addon.js +404 -0
  124. package/dist/builtins/local-network/local-network.addon.js.map +1 -0
  125. package/dist/builtins/local-network/local-network.addon.mjs +392 -0
  126. package/dist/builtins/local-network/local-network.addon.mjs.map +1 -0
  127. package/dist/builtins/mesh-orchestrator/index.d.ts +2 -0
  128. package/dist/builtins/mesh-orchestrator/index.d.ts.map +1 -0
  129. package/dist/builtins/mesh-orchestrator/index.js +7 -0
  130. package/dist/builtins/mesh-orchestrator/index.mjs +2 -0
  131. package/dist/builtins/mesh-orchestrator/mesh-orchestrator.addon.d.ts +9 -0
  132. package/dist/builtins/mesh-orchestrator/mesh-orchestrator.addon.d.ts.map +1 -0
  133. package/dist/builtins/mesh-orchestrator/mesh-orchestrator.addon.js +83 -0
  134. package/dist/builtins/mesh-orchestrator/mesh-orchestrator.addon.js.map +1 -0
  135. package/dist/builtins/mesh-orchestrator/mesh-orchestrator.addon.mjs +77 -0
  136. package/dist/builtins/mesh-orchestrator/mesh-orchestrator.addon.mjs.map +1 -0
  137. package/dist/builtins/native-metrics/index.d.ts +3 -0
  138. package/dist/builtins/native-metrics/index.d.ts.map +1 -0
  139. package/dist/builtins/native-metrics/native-metrics-provider.d.ts +49 -0
  140. package/dist/builtins/native-metrics/native-metrics-provider.d.ts.map +1 -0
  141. package/dist/builtins/native-metrics/native-metrics.addon.d.ts +74 -0
  142. package/dist/builtins/native-metrics/native-metrics.addon.d.ts.map +1 -0
  143. package/dist/builtins/native-metrics/native-metrics.addon.js +887 -861
  144. package/dist/builtins/native-metrics/native-metrics.addon.js.map +1 -1
  145. package/dist/builtins/native-metrics/native-metrics.addon.mjs +914 -5
  146. package/dist/builtins/native-metrics/native-metrics.addon.mjs.map +1 -1
  147. package/dist/builtins/platform-probe/index.d.ts +12 -0
  148. package/dist/builtins/platform-probe/index.d.ts.map +1 -0
  149. package/dist/builtins/platform-probe/index.js +539 -0
  150. package/dist/builtins/platform-probe/index.js.map +1 -0
  151. package/dist/builtins/platform-probe/index.mjs +530 -0
  152. package/dist/builtins/platform-probe/index.mjs.map +1 -0
  153. package/dist/builtins/platform-probe/inference-config-resolver.d.ts +30 -0
  154. package/dist/builtins/platform-probe/inference-config-resolver.d.ts.map +1 -0
  155. package/dist/builtins/platform-probe/platform-scorer.d.ts +22 -0
  156. package/dist/builtins/platform-probe/platform-scorer.d.ts.map +1 -0
  157. package/dist/builtins/remote-access-orchestrator/index.d.ts +2 -0
  158. package/dist/builtins/remote-access-orchestrator/index.d.ts.map +1 -0
  159. package/dist/builtins/remote-access-orchestrator/index.js +7 -0
  160. package/dist/builtins/remote-access-orchestrator/index.mjs +2 -0
  161. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.d.ts +9 -0
  162. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.d.ts.map +1 -0
  163. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.js +72 -0
  164. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.js.map +1 -0
  165. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.mjs +66 -0
  166. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.mjs.map +1 -0
  167. package/dist/builtins/snapshot/index.d.ts +3 -0
  168. package/dist/builtins/snapshot/index.d.ts.map +1 -0
  169. package/dist/builtins/snapshot/index.js +481 -491
  170. package/dist/builtins/snapshot/index.js.map +1 -1
  171. package/dist/builtins/snapshot/index.mjs +475 -464
  172. package/dist/builtins/snapshot/index.mjs.map +1 -1
  173. package/dist/builtins/snapshot/snapshot.addon.d.ts +121 -0
  174. package/dist/builtins/snapshot/snapshot.addon.d.ts.map +1 -0
  175. package/dist/builtins/sqlite-storage/config-store.d.ts +9 -0
  176. package/dist/builtins/sqlite-storage/config-store.d.ts.map +1 -0
  177. package/dist/builtins/sqlite-storage/device-store.d.ts +24 -0
  178. package/dist/builtins/sqlite-storage/device-store.d.ts.map +1 -0
  179. package/dist/builtins/sqlite-storage/filesystem-storage-provider.d.ts +87 -0
  180. package/dist/builtins/sqlite-storage/filesystem-storage-provider.d.ts.map +1 -0
  181. package/dist/builtins/sqlite-storage/filesystem-storage.addon.d.ts +32 -0
  182. package/dist/builtins/sqlite-storage/filesystem-storage.addon.d.ts.map +1 -0
  183. package/dist/builtins/sqlite-storage/filesystem-storage.addon.js +312 -56
  184. package/dist/builtins/sqlite-storage/filesystem-storage.addon.js.map +1 -1
  185. package/dist/builtins/sqlite-storage/filesystem-storage.addon.mjs +305 -7
  186. package/dist/builtins/sqlite-storage/filesystem-storage.addon.mjs.map +1 -1
  187. package/dist/builtins/sqlite-storage/index.d.ts +12 -0
  188. package/dist/builtins/sqlite-storage/index.d.ts.map +1 -0
  189. package/dist/builtins/sqlite-storage/index.js +229 -1001
  190. package/dist/builtins/sqlite-storage/index.js.map +1 -1
  191. package/dist/builtins/sqlite-storage/index.mjs +268 -26
  192. package/dist/builtins/sqlite-storage/index.mjs.map +1 -1
  193. package/dist/builtins/sqlite-storage/integration-registry.d.ts +28 -0
  194. package/dist/builtins/sqlite-storage/integration-registry.d.ts.map +1 -0
  195. package/dist/builtins/sqlite-storage/settings-store.d.ts +40 -0
  196. package/dist/builtins/sqlite-storage/settings-store.d.ts.map +1 -0
  197. package/dist/builtins/sqlite-storage/sql-schema.d.ts +33 -0
  198. package/dist/builtins/sqlite-storage/sql-schema.d.ts.map +1 -0
  199. package/dist/builtins/sqlite-storage/sqlite-settings-backend.d.ts +94 -0
  200. package/dist/builtins/sqlite-storage/sqlite-settings-backend.d.ts.map +1 -0
  201. package/dist/builtins/sqlite-storage/sqlite-settings.addon.d.ts +15 -0
  202. package/dist/builtins/sqlite-storage/sqlite-settings.addon.d.ts.map +1 -0
  203. package/dist/builtins/sqlite-storage/sqlite-settings.addon.js +586 -653
  204. package/dist/builtins/sqlite-storage/sqlite-settings.addon.js.map +1 -1
  205. package/dist/builtins/sqlite-storage/sqlite-settings.addon.mjs +582 -7
  206. package/dist/builtins/sqlite-storage/sqlite-settings.addon.mjs.map +1 -1
  207. package/dist/builtins/storage-orchestrator/index.d.ts +7 -0
  208. package/dist/builtins/storage-orchestrator/index.d.ts.map +1 -0
  209. package/dist/builtins/storage-orchestrator/index.js +9 -0
  210. package/dist/builtins/storage-orchestrator/index.mjs +2 -0
  211. package/dist/builtins/storage-orchestrator/location-store.d.ts +50 -0
  212. package/dist/builtins/storage-orchestrator/location-store.d.ts.map +1 -0
  213. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.d.ts +60 -0
  214. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.d.ts.map +1 -0
  215. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.js +755 -0
  216. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.js.map +1 -0
  217. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.mjs +746 -0
  218. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.mjs.map +1 -0
  219. package/dist/builtins/storage-orchestrator/storage-orchestrator.service.d.ts +121 -0
  220. package/dist/builtins/storage-orchestrator/storage-orchestrator.service.d.ts.map +1 -0
  221. package/dist/builtins/system-backup/system-backup.service.d.ts +138 -0
  222. package/dist/builtins/system-backup/system-backup.service.d.ts.map +1 -0
  223. package/dist/builtins/system-config/index.d.ts +2 -0
  224. package/dist/builtins/system-config/index.d.ts.map +1 -0
  225. package/dist/builtins/system-config/index.js +6 -188
  226. package/dist/builtins/system-config/index.mjs +2 -10
  227. package/dist/builtins/system-config/system-config.addon.d.ts +11 -0
  228. package/dist/builtins/system-config/system-config.addon.d.ts.map +1 -0
  229. package/dist/builtins/system-config/system-config.addon.js +227 -180
  230. package/dist/builtins/system-config/system-config.addon.js.map +1 -1
  231. package/dist/builtins/system-config/system-config.addon.mjs +226 -7
  232. package/dist/builtins/system-config/system-config.addon.mjs.map +1 -1
  233. package/dist/builtins/turn-orchestrator/index.d.ts +2 -0
  234. package/dist/builtins/turn-orchestrator/index.d.ts.map +1 -0
  235. package/dist/builtins/turn-orchestrator/index.js +7 -0
  236. package/dist/builtins/turn-orchestrator/index.mjs +2 -0
  237. package/dist/builtins/turn-orchestrator/turn-orchestrator.addon.d.ts +10 -0
  238. package/dist/builtins/turn-orchestrator/turn-orchestrator.addon.d.ts.map +1 -0
  239. package/dist/builtins/turn-orchestrator/turn-orchestrator.addon.js +78 -0
  240. package/dist/builtins/turn-orchestrator/turn-orchestrator.addon.js.map +1 -0
  241. package/dist/builtins/turn-orchestrator/turn-orchestrator.addon.mjs +72 -0
  242. package/dist/builtins/turn-orchestrator/turn-orchestrator.addon.mjs.map +1 -0
  243. package/dist/builtins/winston-logging/index.d.ts +4 -0
  244. package/dist/builtins/winston-logging/index.d.ts.map +1 -0
  245. package/dist/builtins/winston-logging/index.js +153 -300
  246. package/dist/builtins/winston-logging/index.js.map +1 -1
  247. package/dist/builtins/winston-logging/index.mjs +144 -9
  248. package/dist/builtins/winston-logging/index.mjs.map +1 -1
  249. package/dist/builtins/winston-logging/winston-destination.d.ts +22 -0
  250. package/dist/builtins/winston-logging/winston-destination.d.ts.map +1 -0
  251. package/dist/builtins/winston-logging/winston-logging.addon.d.ts +20 -0
  252. package/dist/builtins/winston-logging/winston-logging.addon.d.ts.map +1 -0
  253. package/dist/chunk-C13QxCFV.js +50 -0
  254. package/dist/chunk-hT5z_Zn9.mjs +35 -0
  255. package/dist/download/model-download-service.d.ts +42 -0
  256. package/dist/download/model-download-service.d.ts.map +1 -0
  257. package/dist/download/model-downloader.d.ts +32 -0
  258. package/dist/download/model-downloader.d.ts.map +1 -0
  259. package/dist/events/event-bus.d.ts +11 -0
  260. package/dist/events/event-bus.d.ts.map +1 -0
  261. package/dist/events/system-event-bus.d.ts +15 -0
  262. package/dist/events/system-event-bus.d.ts.map +1 -0
  263. package/dist/feature/feature-manager.d.ts +12 -0
  264. package/dist/feature/feature-manager.d.ts.map +1 -0
  265. package/dist/formatter-C-5An4Bl.mjs +164 -0
  266. package/dist/formatter-C-5An4Bl.mjs.map +1 -0
  267. package/dist/formatter-Dr_6NNZc.js +169 -0
  268. package/dist/formatter-Dr_6NNZc.js.map +1 -0
  269. package/dist/index.d.ts +76 -1696
  270. package/dist/index.d.ts.map +1 -0
  271. package/dist/index.js +7780 -8035
  272. package/dist/index.js.map +1 -1
  273. package/dist/index.mjs +7707 -2148
  274. package/dist/index.mjs.map +1 -1
  275. package/dist/lifecycle/lifecycle-state-machine.d.ts +29 -0
  276. package/dist/lifecycle/lifecycle-state-machine.d.ts.map +1 -0
  277. package/dist/logging/formatter.d.ts +31 -0
  278. package/dist/logging/formatter.d.ts.map +1 -0
  279. package/dist/logging/log-manager.d.ts +52 -0
  280. package/dist/logging/log-manager.d.ts.map +1 -0
  281. package/dist/logging/log-ring-buffer.d.ts +48 -0
  282. package/dist/logging/log-ring-buffer.d.ts.map +1 -0
  283. package/dist/logging/scoped-logger.d.ts +18 -0
  284. package/dist/logging/scoped-logger.d.ts.map +1 -0
  285. package/dist/network/network-quality.d.ts +12 -0
  286. package/dist/network/network-quality.d.ts.map +1 -0
  287. package/dist/notification/notification-service.d.ts +38 -0
  288. package/dist/notification/notification-service.d.ts.map +1 -0
  289. package/dist/notification/toast-service.d.ts +23 -0
  290. package/dist/notification/toast-service.d.ts.map +1 -0
  291. package/dist/pipeline/engine-manager-resolver.d.ts +16 -0
  292. package/dist/pipeline/engine-manager-resolver.d.ts.map +1 -0
  293. package/dist/pipeline/pipeline-runner.d.ts +9 -0
  294. package/dist/pipeline/pipeline-runner.d.ts.map +1 -0
  295. package/dist/pipeline/pipeline-validator.d.ts +14 -0
  296. package/dist/pipeline/pipeline-validator.d.ts.map +1 -0
  297. package/dist/process/resource-monitor.d.ts +12 -0
  298. package/dist/process/resource-monitor.d.ts.map +1 -0
  299. package/dist/python/python-env-manager.d.ts +13 -0
  300. package/dist/python/python-env-manager.d.ts.map +1 -0
  301. package/dist/repl/interfaces.d.ts +32 -0
  302. package/dist/repl/interfaces.d.ts.map +1 -0
  303. package/dist/repl/repl-engine.d.ts +9 -0
  304. package/dist/repl/repl-engine.d.ts.map +1 -0
  305. package/dist/resource-monitor-CmuWlmap.js +76 -0
  306. package/dist/resource-monitor-CmuWlmap.js.map +1 -0
  307. package/dist/resource-monitor-DcQdKGYU.mjs +59 -0
  308. package/dist/resource-monitor-DcQdKGYU.mjs.map +1 -0
  309. package/dist/storage/fs-storage-backend.d.ts +41 -0
  310. package/dist/storage/fs-storage-backend.d.ts.map +1 -0
  311. package/dist/storage/storage-location-manager.d.ts +24 -0
  312. package/dist/storage/storage-location-manager.d.ts.map +1 -0
  313. package/dist/storage/storage-manager.d.ts +77 -0
  314. package/dist/storage/storage-manager.d.ts.map +1 -0
  315. package/dist/tls/cert-manager.d.ts +27 -0
  316. package/dist/tls/cert-manager.d.ts.map +1 -0
  317. package/dist/tls/index.d.ts +2 -0
  318. package/dist/tls/index.d.ts.map +1 -0
  319. package/package.json +119 -23
  320. package/dist/builtins/addon-pages-aggregator/index.js.map +0 -1
  321. package/dist/builtins/addon-pages-aggregator/index.mjs.map +0 -1
  322. package/dist/builtins/addon-widgets-aggregator/index.js.map +0 -1
  323. package/dist/builtins/addon-widgets-aggregator/index.mjs.map +0 -1
  324. package/dist/builtins/alerts/index.js.map +0 -1
  325. package/dist/builtins/alerts/index.mjs.map +0 -1
  326. package/dist/builtins/device-manager/index.js.map +0 -1
  327. package/dist/builtins/device-manager/index.mjs.map +0 -1
  328. package/dist/builtins/local-auth/index.js.map +0 -1
  329. package/dist/builtins/local-auth/index.mjs.map +0 -1
  330. package/dist/builtins/local-backup/index.js +0 -173
  331. package/dist/builtins/local-backup/index.js.map +0 -1
  332. package/dist/builtins/local-backup/index.mjs +0 -10
  333. package/dist/builtins/local-backup/index.mjs.map +0 -1
  334. package/dist/builtins/system-config/index.js.map +0 -1
  335. package/dist/builtins/system-config/index.mjs.map +0 -1
  336. package/dist/chunk-2CIYKDRN.mjs +0 -1
  337. package/dist/chunk-2CIYKDRN.mjs.map +0 -1
  338. package/dist/chunk-2F76X6NL.mjs +0 -136
  339. package/dist/chunk-2F76X6NL.mjs.map +0 -1
  340. package/dist/chunk-2QUFBZ7M.mjs +0 -1
  341. package/dist/chunk-2QUFBZ7M.mjs.map +0 -1
  342. package/dist/chunk-3BK2Y7GY.mjs +0 -593
  343. package/dist/chunk-3BK2Y7GY.mjs.map +0 -1
  344. package/dist/chunk-4OOHFJHT.mjs +0 -421
  345. package/dist/chunk-4OOHFJHT.mjs.map +0 -1
  346. package/dist/chunk-4XHB7IHT.mjs +0 -809
  347. package/dist/chunk-4XHB7IHT.mjs.map +0 -1
  348. package/dist/chunk-6M2HSSTQ.mjs +0 -98
  349. package/dist/chunk-6M2HSSTQ.mjs.map +0 -1
  350. package/dist/chunk-7FI7SQS7.mjs +0 -135
  351. package/dist/chunk-7FI7SQS7.mjs.map +0 -1
  352. package/dist/chunk-ED57RCQE.mjs +0 -171
  353. package/dist/chunk-ED57RCQE.mjs.map +0 -1
  354. package/dist/chunk-FZN56HGQ.mjs +0 -626
  355. package/dist/chunk-FZN56HGQ.mjs.map +0 -1
  356. package/dist/chunk-GL4OOB25.mjs +0 -51
  357. package/dist/chunk-GL4OOB25.mjs.map +0 -1
  358. package/dist/chunk-KDG2NTDB.mjs +0 -137
  359. package/dist/chunk-KDG2NTDB.mjs.map +0 -1
  360. package/dist/chunk-NRBQWBDM.mjs +0 -191
  361. package/dist/chunk-NRBQWBDM.mjs.map +0 -1
  362. package/dist/chunk-O4V246GG.mjs +0 -2137
  363. package/dist/chunk-O4V246GG.mjs.map +0 -1
  364. package/dist/chunk-QT57H266.mjs +0 -163
  365. package/dist/chunk-QT57H266.mjs.map +0 -1
  366. package/dist/chunk-QX4RH25I.mjs +0 -141
  367. package/dist/chunk-QX4RH25I.mjs.map +0 -1
  368. package/dist/chunk-TB562PZX.mjs +0 -86
  369. package/dist/chunk-TB562PZX.mjs.map +0 -1
  370. package/dist/chunk-TDYPZXK5.mjs +0 -1
  371. package/dist/chunk-TDYPZXK5.mjs.map +0 -1
  372. package/dist/chunk-UJI4LN5P.mjs +0 -36
  373. package/dist/chunk-UJI4LN5P.mjs.map +0 -1
  374. package/dist/chunk-W6RTHQGP.mjs +0 -1
  375. package/dist/chunk-W6RTHQGP.mjs.map +0 -1
  376. package/dist/chunk-ZELBCPDC.mjs +0 -369
  377. package/dist/chunk-ZELBCPDC.mjs.map +0 -1
  378. package/dist/index.d.mts +0 -1696
  379. package/dist/resource-monitor-UZUGPIAU.mjs +0 -9
  380. package/dist/resource-monitor-UZUGPIAU.mjs.map +0 -1
  381. package/dist/storage-location-manager-HFNB3PCS.mjs +0 -7
  382. package/dist/storage-location-manager-HFNB3PCS.mjs.map +0 -1
@@ -1,593 +0,0 @@
1
- // src/builtins/local-auth/local-auth.addon.ts
2
- import { BaseAddon, authProviderCapability, userManagementCapability } from "@camstack/types";
3
-
4
- // src/auth/auth-manager.ts
5
- import * as jwt from "jsonwebtoken";
6
- import * as bcrypt from "bcryptjs";
7
- import * as crypto from "crypto";
8
- var noopLogger = {
9
- debug() {
10
- },
11
- info() {
12
- },
13
- warn() {
14
- },
15
- error() {
16
- },
17
- child() {
18
- return noopLogger;
19
- },
20
- withTags() {
21
- return noopLogger;
22
- }
23
- };
24
- var AuthManager = class {
25
- constructor(config, logger = noopLogger) {
26
- this.config = config;
27
- this.logger = logger;
28
- const configured = this.config.get("auth.jwtSecret");
29
- if (configured) {
30
- this.jwtSecret = configured;
31
- } else {
32
- const secret = crypto.randomBytes(32).toString("hex");
33
- this.config.update("auth", { jwtSecret: secret });
34
- this.logger.info("Generated JWT secret and saved to config.yaml (auth.jwtSecret)");
35
- this.jwtSecret = secret;
36
- }
37
- }
38
- config;
39
- jwtSecret;
40
- scopedTokenManager = null;
41
- logger;
42
- signToken(payload) {
43
- return jwt.sign({ ...payload }, this.jwtSecret, { expiresIn: "24h" });
44
- }
45
- verifyToken(token) {
46
- return jwt.verify(token, this.jwtSecret);
47
- }
48
- async hashPassword(password) {
49
- return bcrypt.hash(password, 10);
50
- }
51
- async comparePassword(password, hash2) {
52
- return bcrypt.compare(password, hash2);
53
- }
54
- generateApiKey() {
55
- const token = crypto.randomBytes(32).toString("hex");
56
- const hash2 = crypto.createHash("sha256").update(token).digest("hex");
57
- const prefix = token.slice(0, 8);
58
- return { token, hash: hash2, prefix };
59
- }
60
- validateApiKey(token, storedHash) {
61
- const hash2 = crypto.createHash("sha256").update(token).digest("hex");
62
- return hash2 === storedHash;
63
- }
64
- /**
65
- * Create a service token for agent/worker authentication.
66
- * Used when forking workers or when agents register.
67
- */
68
- createServiceToken(opts) {
69
- const payload = {
70
- userId: opts.agentId,
71
- username: opts.agentId,
72
- role: opts.role ?? "agent",
73
- type: "service",
74
- agentId: opts.agentId,
75
- allowedProviders: "*",
76
- allowedDevices: {}
77
- };
78
- const expiresIn = opts.expiresIn ?? "24h";
79
- return jwt.sign(payload, this.jwtSecret, { expiresIn });
80
- }
81
- /**
82
- * Set the scoped token manager for the auth chain.
83
- */
84
- setScopedTokenManager(manager) {
85
- this.scopedTokenManager = manager;
86
- }
87
- /**
88
- * Validate a scoped token string.
89
- * Returns the token record if valid, null otherwise.
90
- */
91
- async validateScopedToken(rawToken) {
92
- if (!this.scopedTokenManager) {
93
- return null;
94
- }
95
- return this.scopedTokenManager.validate(rawToken);
96
- }
97
- /**
98
- * Check whether a scoped token grants access to a given addon/route/capability.
99
- */
100
- matchesScopedTokenScope(token, addonId, routePath, capability) {
101
- if (!this.scopedTokenManager) {
102
- return false;
103
- }
104
- return this.scopedTokenManager.matchesScope(token, addonId, routePath, capability);
105
- }
106
- };
107
-
108
- // src/auth/user-manager.ts
109
- import * as crypto2 from "crypto";
110
- import { UserRecordSchema } from "@camstack/types";
111
-
112
- // src/auth/parse-record.ts
113
- function parseRecord(kind, schema, data) {
114
- try {
115
- return schema.parse(data);
116
- } catch (err) {
117
- const topKeys = data && typeof data === "object" && !Array.isArray(data) ? Object.keys(data).join(", ") || "(empty)" : `(non-object: ${typeof data})`;
118
- const detail = err instanceof Error ? err.message : String(err);
119
- const looksDoubleWrapped = data && typeof data === "object" && !Array.isArray(data) && Object.keys(data).length === 1 && "data" in data;
120
- const hint = looksDoubleWrapped ? " This shape is the legacy double-wrap from a stale settings-store query path. Restart the server with the latest @camstack/core build." : "";
121
- throw new Error(
122
- `Failed to parse ${kind} from settings store. Top-level keys=[${topKeys}].${hint} Underlying: ${detail}`,
123
- { cause: err }
124
- );
125
- }
126
- }
127
-
128
- // src/auth/user-manager.ts
129
- var USERS_COLLECTION = "users";
130
- function parseUser(data) {
131
- return parseRecord("user", UserRecordSchema, data);
132
- }
133
- var UserManager = class {
134
- constructor(storageAccess, auth, config) {
135
- this.storageAccess = storageAccess;
136
- this.auth = auth;
137
- this.config = config;
138
- }
139
- storageAccess;
140
- auth;
141
- config;
142
- get store() {
143
- return this.storageAccess.getStore();
144
- }
145
- async create(input) {
146
- const existing = await this.findByUsername(input.username);
147
- if (existing) throw new Error(`User with username "${input.username}" already exists`);
148
- const passwordHash = await this.auth.hashPassword(input.password);
149
- const now = Date.now();
150
- const record = {
151
- id: crypto2.randomUUID(),
152
- username: input.username,
153
- passwordHash,
154
- role: input.role,
155
- allowedProviders: input.allowedProviders ?? "*",
156
- allowedDevices: input.allowedDevices ?? {},
157
- createdAt: now,
158
- updatedAt: now
159
- };
160
- await this.store.insert.mutate({ collection: USERS_COLLECTION, record: { id: record.id, data: { ...record } } });
161
- return record;
162
- }
163
- async findByUsername(username) {
164
- const results = await this.store.query.query({ collection: USERS_COLLECTION, filter: { where: { username } } });
165
- if (results.length === 0) return null;
166
- return parseUser(results[0].data);
167
- }
168
- async findById(id) {
169
- const results = await this.store.query.query({ collection: USERS_COLLECTION, filter: { where: { id } } });
170
- if (results.length === 0) return null;
171
- return parseUser(results[0].data);
172
- }
173
- async validateCredentials(username, password) {
174
- const user = await this.findByUsername(username);
175
- if (!user) return null;
176
- const valid = await this.auth.comparePassword(password, user.passwordHash);
177
- return valid ? user : null;
178
- }
179
- async listAll() {
180
- const results = await this.store.query.query({ collection: USERS_COLLECTION });
181
- return results.map((r) => {
182
- const parsed = parseUser(r.data);
183
- const { passwordHash: _ph, ...rest } = parsed;
184
- return rest;
185
- });
186
- }
187
- async update(id, data) {
188
- const existing = await this.findById(id);
189
- if (!existing) throw new Error(`User with id "${id}" not found`);
190
- await this.store.update.mutate({ collection: USERS_COLLECTION, id, data: { ...existing, ...data, updatedAt: Date.now() } });
191
- }
192
- async delete(id) {
193
- await this.store.delete.mutate({ collection: USERS_COLLECTION, key: id });
194
- }
195
- async resetPassword(id, newPassword) {
196
- const existing = await this.findById(id);
197
- if (!existing) throw new Error(`User with id "${id}" not found`);
198
- const passwordHash = await this.auth.hashPassword(newPassword);
199
- await this.store.update.mutate({ collection: USERS_COLLECTION, id, data: { ...existing, passwordHash, updatedAt: Date.now() } });
200
- }
201
- async ensureAdminExists() {
202
- const adminUsername = this.config.get("auth.adminUsername");
203
- const adminPassword = this.config.get("auth.adminPassword");
204
- if (!adminUsername || !adminPassword) return;
205
- const existing = await this.findByUsername(adminUsername);
206
- if (existing) {
207
- const matches = await this.auth.comparePassword(adminPassword, existing.passwordHash);
208
- if (!matches) {
209
- await this.resetPassword(existing.id, adminPassword);
210
- }
211
- return;
212
- }
213
- await this.create({ username: adminUsername, password: adminPassword, role: "super_admin", allowedProviders: "*", allowedDevices: {} });
214
- }
215
- };
216
-
217
- // src/auth/api-key-manager.ts
218
- import * as crypto3 from "crypto";
219
- import { ApiKeyRecordSchema } from "@camstack/types";
220
- var API_KEYS_COLLECTION = "api_keys";
221
- function parseApiKey(data) {
222
- return parseRecord("api-key", ApiKeyRecordSchema, data);
223
- }
224
- var ApiKeyManager = class {
225
- constructor(storageAccess, auth) {
226
- this.storageAccess = storageAccess;
227
- this.auth = auth;
228
- }
229
- storageAccess;
230
- auth;
231
- get store() {
232
- return this.storageAccess.getStore();
233
- }
234
- async create(input) {
235
- const { token: rawToken, hash: hash2, prefix } = this.auth.generateApiKey();
236
- const now = Date.now();
237
- const record = {
238
- id: crypto3.randomUUID(),
239
- label: input.label,
240
- role: input.role,
241
- allowedProviders: input.allowedProviders ?? "*",
242
- allowedDevices: input.allowedDevices ?? {},
243
- tokenHash: hash2,
244
- tokenPrefix: prefix,
245
- createdAt: now
246
- };
247
- await this.store.insert.mutate({ collection: API_KEYS_COLLECTION, record: { id: record.id, data: { ...record } } });
248
- return { record, token: rawToken };
249
- }
250
- async validateToken(token) {
251
- const allKeys = await this.store.query.query({ collection: API_KEYS_COLLECTION });
252
- for (const entry of allKeys) {
253
- const record = parseApiKey(entry.data);
254
- if (this.auth.validateApiKey(token, record.tokenHash)) {
255
- const updatedData = { ...record, lastUsedAt: Date.now() };
256
- await this.store.update.mutate({ collection: API_KEYS_COLLECTION, id: record.id, data: { ...updatedData } });
257
- return updatedData;
258
- }
259
- }
260
- return null;
261
- }
262
- async listAll() {
263
- const results = await this.store.query.query({ collection: API_KEYS_COLLECTION });
264
- return results.map((r) => {
265
- const parsed = parseApiKey(r.data);
266
- const { tokenHash: _th, ...rest } = parsed;
267
- return rest;
268
- });
269
- }
270
- async revoke(id) {
271
- await this.store.delete.mutate({ collection: API_KEYS_COLLECTION, key: id });
272
- }
273
- async findById(id) {
274
- const results = await this.store.query.query({ collection: API_KEYS_COLLECTION, filter: { where: { id } } });
275
- if (results.length === 0) return null;
276
- return parseApiKey(results[0].data);
277
- }
278
- };
279
-
280
- // src/auth/scoped-token-manager.ts
281
- import * as crypto4 from "crypto";
282
- import { ScopedTokenSchema } from "@camstack/types";
283
- var TOKENS_COLLECTION = "scoped_tokens";
284
- var TOKEN_PREFIX = "cst_";
285
- function parseToken(data) {
286
- return parseRecord("scoped-token", ScopedTokenSchema, data);
287
- }
288
- var ScopedTokenManager = class {
289
- constructor(store) {
290
- this.store = store;
291
- }
292
- store;
293
- async create(userId, name, scopes, expiresAt) {
294
- const rawHex = crypto4.randomBytes(32).toString("hex");
295
- const rawToken = `${TOKEN_PREFIX}${rawHex}`;
296
- const tokenHash = crypto4.createHash("sha256").update(rawToken).digest("hex");
297
- const tokenPrefix = rawToken.slice(0, 12);
298
- const record = {
299
- id: crypto4.randomUUID(),
300
- userId,
301
- name,
302
- tokenHash,
303
- tokenPrefix,
304
- scopes: scopes.map((s) => ({ ...s })),
305
- expiresAt,
306
- lastUsedAt: void 0,
307
- createdAt: Date.now()
308
- };
309
- await this.store.insert.mutate({ collection: TOKENS_COLLECTION, record: { id: record.id, data: { ...record } } });
310
- return { token: rawToken, record };
311
- }
312
- async validate(rawToken) {
313
- if (!rawToken.startsWith(TOKEN_PREFIX)) return null;
314
- const tokenHash = crypto4.createHash("sha256").update(rawToken).digest("hex");
315
- const results = await this.store.query.query({ collection: TOKENS_COLLECTION, filter: { where: { tokenHash } } });
316
- if (results.length === 0) return null;
317
- const record = parseToken(results[0].data);
318
- if (record.expiresAt !== void 0 && record.expiresAt !== null && Date.now() > record.expiresAt) return null;
319
- this.updateLastUsed(record.id).catch(() => {
320
- });
321
- return record;
322
- }
323
- matchesScope(token, addonId, routePath, capability) {
324
- for (const scope of token.scopes) {
325
- switch (scope.type) {
326
- case "addon":
327
- if (addonId && scope.target === addonId) return true;
328
- break;
329
- case "route-prefix":
330
- if (routePath && routePath.startsWith(scope.target)) return true;
331
- break;
332
- case "capability":
333
- if (capability && scope.target === capability) return true;
334
- break;
335
- }
336
- }
337
- return false;
338
- }
339
- async revoke(tokenId) {
340
- await this.store.delete.mutate({ collection: TOKENS_COLLECTION, key: tokenId });
341
- }
342
- async listForUser(userId) {
343
- const results = await this.store.query.query({ collection: TOKENS_COLLECTION, filter: { where: { userId } } });
344
- return results.map((r) => parseToken(r.data));
345
- }
346
- async updateLastUsed(tokenId) {
347
- const results = await this.store.query.query({ collection: TOKENS_COLLECTION, filter: { where: { id: tokenId } } });
348
- if (results.length === 0) return;
349
- const existing = parseToken(results[0].data);
350
- await this.store.update.mutate({ collection: TOKENS_COLLECTION, id: tokenId, data: { ...existing, lastUsedAt: Date.now() } });
351
- }
352
- };
353
-
354
- // src/builtins/local-auth/auth-schema.ts
355
- var USERS_COLLECTION2 = "users";
356
- var API_KEYS_COLLECTION2 = "api_keys";
357
- var SCOPED_TOKENS_COLLECTION = "scoped_tokens";
358
- var USERS_COLUMNS = [
359
- { name: "id", type: "TEXT", primaryKey: true, notNull: true },
360
- { name: "username", type: "TEXT", notNull: true, unique: true },
361
- { name: "passwordHash", type: "TEXT", notNull: true },
362
- { name: "role", type: "TEXT", notNull: true },
363
- { name: "allowedProviders", type: "JSON" },
364
- { name: "allowedDevices", type: "JSON" },
365
- { name: "createdAt", type: "INTEGER", notNull: true },
366
- { name: "updatedAt", type: "INTEGER", notNull: true }
367
- ];
368
- var API_KEYS_COLUMNS = [
369
- { name: "id", type: "TEXT", primaryKey: true, notNull: true },
370
- { name: "label", type: "TEXT", notNull: true },
371
- { name: "role", type: "TEXT", notNull: true },
372
- { name: "tokenHash", type: "TEXT", notNull: true, unique: true },
373
- { name: "tokenPrefix", type: "TEXT", notNull: true },
374
- { name: "allowedProviders", type: "JSON" },
375
- { name: "allowedDevices", type: "JSON" },
376
- { name: "createdAt", type: "INTEGER", notNull: true },
377
- { name: "lastUsedAt", type: "INTEGER" }
378
- ];
379
- var SCOPED_TOKENS_COLUMNS = [
380
- { name: "id", type: "TEXT", primaryKey: true, notNull: true },
381
- { name: "userId", type: "TEXT", notNull: true },
382
- { name: "name", type: "TEXT", notNull: true },
383
- { name: "tokenHash", type: "TEXT", notNull: true, unique: true },
384
- { name: "tokenPrefix", type: "TEXT", notNull: true },
385
- { name: "scopes", type: "JSON" },
386
- { name: "expiresAt", type: "INTEGER" },
387
- { name: "lastUsedAt", type: "INTEGER" },
388
- { name: "createdAt", type: "INTEGER", notNull: true }
389
- ];
390
- async function declareAuthSchema(store) {
391
- await store.declareCollection.mutate({
392
- collection: USERS_COLLECTION2,
393
- columns: USERS_COLUMNS
394
- });
395
- await store.declareCollection.mutate({
396
- collection: API_KEYS_COLLECTION2,
397
- columns: API_KEYS_COLUMNS,
398
- indexes: [
399
- { name: "idx_api_keys_token_prefix", columns: ["tokenPrefix"] }
400
- ]
401
- });
402
- await store.declareCollection.mutate({
403
- collection: SCOPED_TOKENS_COLLECTION,
404
- columns: SCOPED_TOKENS_COLUMNS,
405
- indexes: [
406
- { name: "idx_scoped_tokens_user_id", columns: ["userId"] }
407
- ]
408
- });
409
- }
410
-
411
- // src/builtins/local-auth/local-auth.addon.ts
412
- function toAuthResult(user) {
413
- return {
414
- userId: user.id,
415
- username: user.username,
416
- displayName: user.username,
417
- roles: [user.role]
418
- };
419
- }
420
- var LocalAuthAddon = class extends BaseAddon {
421
- authManager = null;
422
- userManager = null;
423
- apiKeyManager = null;
424
- scopedTokenManager = null;
425
- constructor() {
426
- super({ jwtSecret: "", adminUsername: "", adminPassword: "" });
427
- }
428
- async onInitialize() {
429
- const authSection = await this.ctx.settings?.getSection("auth") ?? {};
430
- const resolvedJwtSecret = typeof authSection["jwtSecret"] === "string" ? authSection["jwtSecret"] : this.config.jwtSecret ?? "";
431
- const resolvedAdminUser = typeof authSection["adminUsername"] === "string" && authSection["adminUsername"] ? authSection["adminUsername"] : this.config.adminUsername ?? "";
432
- const resolvedAdminPass = typeof authSection["adminPassword"] === "string" && authSection["adminPassword"] ? authSection["adminPassword"] : this.config.adminPassword ?? "";
433
- const reader = {
434
- get(path) {
435
- if (path === "auth.jwtSecret") return resolvedJwtSecret;
436
- if (path === "auth.adminUsername") return resolvedAdminUser;
437
- if (path === "auth.adminPassword") return resolvedAdminPass;
438
- return void 0;
439
- },
440
- update: (_section, data) => {
441
- if (typeof data["jwtSecret"] === "string") {
442
- void this.ctx.settings?.setSection("auth", { jwtSecret: data["jwtSecret"] });
443
- }
444
- }
445
- };
446
- this.authManager = new AuthManager(reader, this.ctx.logger);
447
- const store = this.ctx.api?.settingsStore;
448
- if (store) {
449
- await declareAuthSchema(store);
450
- const storageAccess = {
451
- getStore() {
452
- return store;
453
- }
454
- };
455
- this.userManager = new UserManager(storageAccess, this.authManager, reader);
456
- this.apiKeyManager = new ApiKeyManager(storageAccess, this.authManager);
457
- this.scopedTokenManager = new ScopedTokenManager(store);
458
- try {
459
- await this.userManager.ensureAdminExists();
460
- } catch (err) {
461
- const detail = err instanceof Error ? err.message : String(err);
462
- throw new Error(
463
- `local-auth bootstrap failed: ensureAdminExists threw before \`user-management\` could be registered. Most likely a \`users\` collection schema mismatch in the settings-store. Underlying: ${detail}`,
464
- { cause: err }
465
- );
466
- }
467
- } else {
468
- throw new Error(
469
- "local-auth: settings-store API not available \u2014 refusing to register `user-management` cap. Check that `sqlite-storage` addon initialized before `local-auth`."
470
- );
471
- }
472
- const authProvider = {
473
- validateCredentials: async (input) => {
474
- if (!this.userManager) return null;
475
- const user = await this.userManager.validateCredentials(input.username, input.password);
476
- return user ? toAuthResult(user) : null;
477
- },
478
- getLoginUrl: async () => {
479
- throw new Error("local-auth: URL-based login not supported");
480
- },
481
- handleCallback: async () => {
482
- throw new Error("local-auth: URL-based login not supported");
483
- },
484
- validateToken: async (input) => {
485
- if (!this.authManager || !this.userManager) return null;
486
- try {
487
- const payload = this.authManager.verifyToken(input.token);
488
- const userId = payload.userId;
489
- if (!userId) return null;
490
- const user = await this.userManager.findById(userId);
491
- return user ? toAuthResult(user) : null;
492
- } catch {
493
- return null;
494
- }
495
- }
496
- };
497
- const userMgmt = {
498
- listUsers: async () => {
499
- if (!this.userManager) return [];
500
- return this.userManager.listAll();
501
- },
502
- createUser: async (input) => {
503
- if (!this.userManager) throw new Error("User management not available");
504
- const record = await this.userManager.create(input);
505
- const { passwordHash: _, ...summary } = record;
506
- return summary;
507
- },
508
- updateUser: async (input) => {
509
- if (!this.userManager) throw new Error("User management not available");
510
- const { id, ...data } = input;
511
- await this.userManager.update(id, data);
512
- return { success: true };
513
- },
514
- deleteUser: async (input) => {
515
- if (!this.userManager) throw new Error("User management not available");
516
- await this.userManager.delete(input.id);
517
- return { success: true };
518
- },
519
- resetPassword: async (input) => {
520
- if (!this.userManager) throw new Error("User management not available");
521
- await this.userManager.resetPassword(input.id, input.newPassword);
522
- return { success: true };
523
- },
524
- validateCredentials: async (input) => {
525
- if (!this.userManager) return null;
526
- const user = await this.userManager.validateCredentials(input.username, input.password);
527
- return user ?? null;
528
- },
529
- listApiKeys: async () => {
530
- if (!this.apiKeyManager) return [];
531
- return this.apiKeyManager.listAll();
532
- },
533
- createApiKey: async (input) => {
534
- if (!this.apiKeyManager) throw new Error("API key management not available");
535
- const { record, token } = await this.apiKeyManager.create(input);
536
- const { tokenHash: _, ...summary } = record;
537
- return { token, record: summary };
538
- },
539
- revokeApiKey: async (input) => {
540
- if (!this.apiKeyManager) throw new Error("API key management not available");
541
- await this.apiKeyManager.revoke(input.id);
542
- return { success: true };
543
- },
544
- validateApiKey: async (input) => {
545
- if (!this.apiKeyManager) return null;
546
- const record = await this.apiKeyManager.validateToken(input.token);
547
- if (!record) return null;
548
- const { tokenHash: _, ...summary } = record;
549
- return summary;
550
- },
551
- createScopedToken: async (input) => {
552
- if (!this.scopedTokenManager) throw new Error("Scoped token management not available");
553
- const { token, record } = await this.scopedTokenManager.create("system", input.name, input.scopes, input.expiresAt);
554
- return { token, record };
555
- },
556
- revokeScopedToken: async (input) => {
557
- if (!this.scopedTokenManager) throw new Error("Scoped token management not available");
558
- await this.scopedTokenManager.revoke(input.id);
559
- return { success: true };
560
- },
561
- validateScopedToken: async (input) => {
562
- if (!this.scopedTokenManager) return null;
563
- return this.scopedTokenManager.validate(input.token);
564
- },
565
- listScopedTokens: async (input) => {
566
- if (!this.scopedTokenManager) return [];
567
- return this.scopedTokenManager.listForUser(input.userId);
568
- }
569
- };
570
- this.ctx.logger.info("registered auth-provider + user-management capabilities");
571
- return [
572
- { capability: authProviderCapability, provider: authProvider },
573
- { capability: userManagementCapability, provider: userMgmt }
574
- ];
575
- }
576
- async onShutdown() {
577
- this.authManager = null;
578
- this.userManager = null;
579
- this.apiKeyManager = null;
580
- this.scopedTokenManager = null;
581
- }
582
- };
583
- var local_auth_addon_default = LocalAuthAddon;
584
-
585
- export {
586
- AuthManager,
587
- UserManager,
588
- ApiKeyManager,
589
- ScopedTokenManager,
590
- LocalAuthAddon,
591
- local_auth_addon_default
592
- };
593
- //# sourceMappingURL=chunk-3BK2Y7GY.mjs.map