@adminiumjs/adminium 0.1.0-rc.1

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 (875) hide show
  1. package/LICENSE +661 -0
  2. package/README.md +94 -0
  3. package/dashboard/assets/DeltaPill-dxlsGh-1.js +2 -0
  4. package/dashboard/assets/DeltaPill-dxlsGh-1.js.map +1 -0
  5. package/dashboard/assets/DistributionCorrelationWidgets-ztVy_W_R.js +2 -0
  6. package/dashboard/assets/DistributionCorrelationWidgets-ztVy_W_R.js.map +1 -0
  7. package/dashboard/assets/PartWholeWidgets-BDn0i0jt.js +2 -0
  8. package/dashboard/assets/PartWholeWidgets-BDn0i0jt.js.map +1 -0
  9. package/dashboard/assets/RemapEditor-z3vRY12e.js +2 -0
  10. package/dashboard/assets/RemapEditor-z3vRY12e.js.map +1 -0
  11. package/dashboard/assets/ReviewScreen-COkLQ3T7.js +2 -0
  12. package/dashboard/assets/ReviewScreen-COkLQ3T7.js.map +1 -0
  13. package/dashboard/assets/Sparkline-Cvwo368J.js +2 -0
  14. package/dashboard/assets/Sparkline-Cvwo368J.js.map +1 -0
  15. package/dashboard/assets/WidgetMissingCard-D0bPJKIs.js +2 -0
  16. package/dashboard/assets/WidgetMissingCard-D0bPJKIs.js.map +1 -0
  17. package/dashboard/assets/arc-CPxb74pf.js +2 -0
  18. package/dashboard/assets/arc-CPxb74pf.js.map +1 -0
  19. package/dashboard/assets/bars-ranking-components-9Asn_0gR.js +2 -0
  20. package/dashboard/assets/bars-ranking-components-9Asn_0gR.js.map +1 -0
  21. package/dashboard/assets/blocks-track-components-BST-NjK2.js +2 -0
  22. package/dashboard/assets/blocks-track-components-BST-NjK2.js.map +1 -0
  23. package/dashboard/assets/calendar-track-components-RgNtGtZR.js +2 -0
  24. package/dashboard/assets/calendar-track-components-RgNtGtZR.js.map +1 -0
  25. package/dashboard/assets/chrome-track-components-ClNsentC.js +2 -0
  26. package/dashboard/assets/chrome-track-components-ClNsentC.js.map +1 -0
  27. package/dashboard/assets/common-BY1j__bD.js +2 -0
  28. package/dashboard/assets/common-BY1j__bD.js.map +1 -0
  29. package/dashboard/assets/common-BdlXKpcB.js +2 -0
  30. package/dashboard/assets/common-BdlXKpcB.js.map +1 -0
  31. package/dashboard/assets/common-BqqhgMgB.js +2 -0
  32. package/dashboard/assets/common-BqqhgMgB.js.map +1 -0
  33. package/dashboard/assets/common-BribWmIo.js +2 -0
  34. package/dashboard/assets/common-BribWmIo.js.map +1 -0
  35. package/dashboard/assets/common-Cmf0_lKV.js +2 -0
  36. package/dashboard/assets/common-Cmf0_lKV.js.map +1 -0
  37. package/dashboard/assets/common-i0r48qY9.js +2 -0
  38. package/dashboard/assets/common-i0r48qY9.js.map +1 -0
  39. package/dashboard/assets/common-x8cfkwpc.js +2 -0
  40. package/dashboard/assets/common-x8cfkwpc.js.map +1 -0
  41. package/dashboard/assets/communication-track-components-CNLZXOH_.js +2 -0
  42. package/dashboard/assets/communication-track-components-CNLZXOH_.js.map +1 -0
  43. package/dashboard/assets/components-Bp5cFm2d.js +2 -0
  44. package/dashboard/assets/components-Bp5cFm2d.js.map +1 -0
  45. package/dashboard/assets/components-C4-O3_gD.js +2 -0
  46. package/dashboard/assets/components-C4-O3_gD.js.map +1 -0
  47. package/dashboard/assets/domain-ops-track-components-BPa41AU7.js +2 -0
  48. package/dashboard/assets/domain-ops-track-components-BPa41AU7.js.map +1 -0
  49. package/dashboard/assets/domain-track-components-CQ1i1X1t.js +2 -0
  50. package/dashboard/assets/domain-track-components-CQ1i1X1t.js.map +1 -0
  51. package/dashboard/assets/errors-BHUWiAQ3.js +2 -0
  52. package/dashboard/assets/errors-BHUWiAQ3.js.map +1 -0
  53. package/dashboard/assets/errors-BbyKweDG.js +2 -0
  54. package/dashboard/assets/errors-BbyKweDG.js.map +1 -0
  55. package/dashboard/assets/errors-CMQ6JC31.js +2 -0
  56. package/dashboard/assets/errors-CMQ6JC31.js.map +1 -0
  57. package/dashboard/assets/errors-D3nVgTmf.js +2 -0
  58. package/dashboard/assets/errors-D3nVgTmf.js.map +1 -0
  59. package/dashboard/assets/errors-IqJSoANC.js +2 -0
  60. package/dashboard/assets/errors-IqJSoANC.js.map +1 -0
  61. package/dashboard/assets/errors-gmIkO9F6.js +2 -0
  62. package/dashboard/assets/errors-gmIkO9F6.js.map +1 -0
  63. package/dashboard/assets/errors-vFk058Vh.js +2 -0
  64. package/dashboard/assets/errors-vFk058Vh.js.map +1 -0
  65. package/dashboard/assets/feeds-track-f-components-Cl_8SkGs.js +2 -0
  66. package/dashboard/assets/feeds-track-f-components-Cl_8SkGs.js.map +1 -0
  67. package/dashboard/assets/format-Lx4cQ8k-.js +2 -0
  68. package/dashboard/assets/format-Lx4cQ8k-.js.map +1 -0
  69. package/dashboard/assets/forms-track-components-Bc2Hoxdh.js +2 -0
  70. package/dashboard/assets/forms-track-components-Bc2Hoxdh.js.map +1 -0
  71. package/dashboard/assets/generated-1EfWhCMA.js +2 -0
  72. package/dashboard/assets/generated-1EfWhCMA.js.map +1 -0
  73. package/dashboard/assets/generated-BB3ZMxvx.js +2 -0
  74. package/dashboard/assets/generated-BB3ZMxvx.js.map +1 -0
  75. package/dashboard/assets/generated-C0JVNBRX.js +2 -0
  76. package/dashboard/assets/generated-C0JVNBRX.js.map +1 -0
  77. package/dashboard/assets/generated-C1W48_-3.js +2 -0
  78. package/dashboard/assets/generated-C1W48_-3.js.map +1 -0
  79. package/dashboard/assets/generated-CluiB_xY.js +2 -0
  80. package/dashboard/assets/generated-CluiB_xY.js.map +1 -0
  81. package/dashboard/assets/generated-DDGtlf-4.js +2 -0
  82. package/dashboard/assets/generated-DDGtlf-4.js.map +1 -0
  83. package/dashboard/assets/generated-DPCHvNto.js +2 -0
  84. package/dashboard/assets/generated-DPCHvNto.js.map +1 -0
  85. package/dashboard/assets/geo-track-components-Ct4-MSRw.js +3 -0
  86. package/dashboard/assets/geo-track-components-Ct4-MSRw.js.map +1 -0
  87. package/dashboard/assets/ibm-plex-sans-arabic-arabic-400-normal-CyU-ddYS.woff2 +0 -0
  88. package/dashboard/assets/ibm-plex-sans-arabic-arabic-500-normal-C4MQITzh.woff2 +0 -0
  89. package/dashboard/assets/ibm-plex-sans-arabic-arabic-600-normal-0pRdybE_.woff2 +0 -0
  90. package/dashboard/assets/ibm-plex-sans-arabic-arabic-700-normal-DrtBj6UE.woff2 +0 -0
  91. package/dashboard/assets/index-DPi4cduu.css +1 -0
  92. package/dashboard/assets/index-PB1II0WV.js +137 -0
  93. package/dashboard/assets/index-PB1II0WV.js.map +1 -0
  94. package/dashboard/assets/jetbrains-mono-latin-ext-wght-italic-BrDczivE.woff2 +0 -0
  95. package/dashboard/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2 +0 -0
  96. package/dashboard/assets/jetbrains-mono-latin-wght-italic-B2M6KQje.woff2 +0 -0
  97. package/dashboard/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2 +0 -0
  98. package/dashboard/assets/leaflet-CIGW-MKW.css +1 -0
  99. package/dashboard/assets/leaflet-src-D12shr04.js +2 -0
  100. package/dashboard/assets/leaflet-src-D12shr04.js.map +1 -0
  101. package/dashboard/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.woff2 +0 -0
  102. package/dashboard/assets/manrope-latin-wght-normal-DHIcAJRg.woff2 +0 -0
  103. package/dashboard/assets/media-track-components-CpeII-tT.js +2 -0
  104. package/dashboard/assets/media-track-components-CpeII-tT.js.map +1 -0
  105. package/dashboard/assets/scales-e0tkfEy1.js +2 -0
  106. package/dashboard/assets/scales-e0tkfEy1.js.map +1 -0
  107. package/dashboard/assets/sparkline-2JUGDrMW.js +2 -0
  108. package/dashboard/assets/sparkline-2JUGDrMW.js.map +1 -0
  109. package/dashboard/assets/stats-BNgXz5BD.js +2 -0
  110. package/dashboard/assets/stats-BNgXz5BD.js.map +1 -0
  111. package/dashboard/assets/studio-B7hMOwAF.js +2 -0
  112. package/dashboard/assets/studio-B7hMOwAF.js.map +1 -0
  113. package/dashboard/assets/studio-BN_9xHY3.js +2 -0
  114. package/dashboard/assets/studio-BN_9xHY3.js.map +1 -0
  115. package/dashboard/assets/studio-Cn2MObe8.js +2 -0
  116. package/dashboard/assets/studio-Cn2MObe8.js.map +1 -0
  117. package/dashboard/assets/studio-DZEZCCkw.js +2 -0
  118. package/dashboard/assets/studio-DZEZCCkw.js.map +1 -0
  119. package/dashboard/assets/studio-DzatTvLl.js +2 -0
  120. package/dashboard/assets/studio-DzatTvLl.js.map +1 -0
  121. package/dashboard/assets/studio-cBlD8x90.js +2 -0
  122. package/dashboard/assets/studio-cBlD8x90.js.map +1 -0
  123. package/dashboard/assets/studio-cglZPbJK.js +2 -0
  124. package/dashboard/assets/studio-cglZPbJK.js.map +1 -0
  125. package/dashboard/assets/system-track-components-GTYYpnfB.js +2 -0
  126. package/dashboard/assets/system-track-components-GTYYpnfB.js.map +1 -0
  127. package/dashboard/assets/tables-tail-components-DiA5GeHB.js +2 -0
  128. package/dashboard/assets/tables-tail-components-DiA5GeHB.js.map +1 -0
  129. package/dashboard/assets/tables-track-f-components-CVNPd7rq.js +2 -0
  130. package/dashboard/assets/tables-track-f-components-CVNPd7rq.js.map +1 -0
  131. package/dashboard/assets/time-flow-components-nKsaryry.js +2 -0
  132. package/dashboard/assets/time-flow-components-nKsaryry.js.map +1 -0
  133. package/dashboard/assets/ui-B-kZetor.js +2 -0
  134. package/dashboard/assets/ui-B-kZetor.js.map +1 -0
  135. package/dashboard/assets/ui-BEStJ5Pw.js +2 -0
  136. package/dashboard/assets/ui-BEStJ5Pw.js.map +1 -0
  137. package/dashboard/assets/ui-BS5_eDN4.js +2 -0
  138. package/dashboard/assets/ui-BS5_eDN4.js.map +1 -0
  139. package/dashboard/assets/ui-BZ0EyxRH.js +2 -0
  140. package/dashboard/assets/ui-BZ0EyxRH.js.map +1 -0
  141. package/dashboard/assets/ui-BloJDdt6.js +2 -0
  142. package/dashboard/assets/ui-BloJDdt6.js.map +1 -0
  143. package/dashboard/assets/ui-CpdrplJH.js +2 -0
  144. package/dashboard/assets/ui-CpdrplJH.js.map +1 -0
  145. package/dashboard/assets/ui-YJfT644k.js +2 -0
  146. package/dashboard/assets/ui-YJfT644k.js.map +1 -0
  147. package/dashboard/assets/widgets-uDqZWw4A.js +2 -0
  148. package/dashboard/assets/widgets-uDqZWw4A.js.map +1 -0
  149. package/dashboard/index.html +41 -0
  150. package/dist/app.d.ts +48 -0
  151. package/dist/app.d.ts.map +1 -0
  152. package/dist/app.js +250 -0
  153. package/dist/app.js.map +1 -0
  154. package/dist/auth/audit.d.ts +22 -0
  155. package/dist/auth/audit.d.ts.map +1 -0
  156. package/dist/auth/audit.js +17 -0
  157. package/dist/auth/audit.js.map +1 -0
  158. package/dist/auth/desktop-session.d.ts +53 -0
  159. package/dist/auth/desktop-session.d.ts.map +1 -0
  160. package/dist/auth/desktop-session.js +111 -0
  161. package/dist/auth/desktop-session.js.map +1 -0
  162. package/dist/auth/passwords.d.ts +17 -0
  163. package/dist/auth/passwords.d.ts.map +1 -0
  164. package/dist/auth/passwords.js +40 -0
  165. package/dist/auth/passwords.js.map +1 -0
  166. package/dist/auth/sessions.d.ts +77 -0
  167. package/dist/auth/sessions.d.ts.map +1 -0
  168. package/dist/auth/sessions.js +137 -0
  169. package/dist/auth/sessions.js.map +1 -0
  170. package/dist/auth/totp.d.ts +30 -0
  171. package/dist/auth/totp.d.ts.map +1 -0
  172. package/dist/auth/totp.js +97 -0
  173. package/dist/auth/totp.js.map +1 -0
  174. package/dist/backup/backup-service.d.ts +157 -0
  175. package/dist/backup/backup-service.d.ts.map +1 -0
  176. package/dist/backup/backup-service.js +354 -0
  177. package/dist/backup/backup-service.js.map +1 -0
  178. package/dist/backup/format.d.ts +300 -0
  179. package/dist/backup/format.d.ts.map +1 -0
  180. package/dist/backup/format.js +304 -0
  181. package/dist/backup/format.js.map +1 -0
  182. package/dist/backup/notify.d.ts +55 -0
  183. package/dist/backup/notify.d.ts.map +1 -0
  184. package/dist/backup/notify.js +60 -0
  185. package/dist/backup/notify.js.map +1 -0
  186. package/dist/backup/snapshot.d.ts +78 -0
  187. package/dist/backup/snapshot.d.ts.map +1 -0
  188. package/dist/backup/snapshot.js +142 -0
  189. package/dist/backup/snapshot.js.map +1 -0
  190. package/dist/capabilities/catalog.d.ts +33 -0
  191. package/dist/capabilities/catalog.d.ts.map +1 -0
  192. package/dist/capabilities/catalog.js +32 -0
  193. package/dist/capabilities/catalog.js.map +1 -0
  194. package/dist/capabilities/grants.d.ts +44 -0
  195. package/dist/capabilities/grants.d.ts.map +1 -0
  196. package/dist/capabilities/grants.js +65 -0
  197. package/dist/capabilities/grants.js.map +1 -0
  198. package/dist/cli/allowlist.d.ts +46 -0
  199. package/dist/cli/allowlist.d.ts.map +1 -0
  200. package/dist/cli/allowlist.js +99 -0
  201. package/dist/cli/allowlist.js.map +1 -0
  202. package/dist/cli/args.d.ts +63 -0
  203. package/dist/cli/args.d.ts.map +1 -0
  204. package/dist/cli/args.js +92 -0
  205. package/dist/cli/args.js.map +1 -0
  206. package/dist/cli/command.d.ts +32 -0
  207. package/dist/cli/command.d.ts.map +1 -0
  208. package/dist/cli/command.js +64 -0
  209. package/dist/cli/command.js.map +1 -0
  210. package/dist/cli/commands/apply-llm-response.d.ts +32 -0
  211. package/dist/cli/commands/apply-llm-response.d.ts.map +1 -0
  212. package/dist/cli/commands/apply-llm-response.js +209 -0
  213. package/dist/cli/commands/apply-llm-response.js.map +1 -0
  214. package/dist/cli/commands/export-zip.d.ts +17 -0
  215. package/dist/cli/commands/export-zip.d.ts.map +1 -0
  216. package/dist/cli/commands/export-zip.js +111 -0
  217. package/dist/cli/commands/export-zip.js.map +1 -0
  218. package/dist/cli/commands/generate-prompt.d.ts +29 -0
  219. package/dist/cli/commands/generate-prompt.d.ts.map +1 -0
  220. package/dist/cli/commands/generate-prompt.js +154 -0
  221. package/dist/cli/commands/generate-prompt.js.map +1 -0
  222. package/dist/cli/commands/import-zip.d.ts +13 -0
  223. package/dist/cli/commands/import-zip.d.ts.map +1 -0
  224. package/dist/cli/commands/import-zip.js +95 -0
  225. package/dist/cli/commands/import-zip.js.map +1 -0
  226. package/dist/cli/commands/init.d.ts +47 -0
  227. package/dist/cli/commands/init.d.ts.map +1 -0
  228. package/dist/cli/commands/init.js +372 -0
  229. package/dist/cli/commands/init.js.map +1 -0
  230. package/dist/cli/commands/introspect.d.ts +11 -0
  231. package/dist/cli/commands/introspect.d.ts.map +1 -0
  232. package/dist/cli/commands/introspect.js +100 -0
  233. package/dist/cli/commands/introspect.js.map +1 -0
  234. package/dist/cli/commands/migrate.d.ts +11 -0
  235. package/dist/cli/commands/migrate.d.ts.map +1 -0
  236. package/dist/cli/commands/migrate.js +80 -0
  237. package/dist/cli/commands/migrate.js.map +1 -0
  238. package/dist/cli/commands/start.d.ts +22 -0
  239. package/dist/cli/commands/start.d.ts.map +1 -0
  240. package/dist/cli/commands/start.js +101 -0
  241. package/dist/cli/commands/start.js.map +1 -0
  242. package/dist/cli/exit.d.ts +37 -0
  243. package/dist/cli/exit.d.ts.map +1 -0
  244. package/dist/cli/exit.js +39 -0
  245. package/dist/cli/exit.js.map +1 -0
  246. package/dist/cli/index.d.ts +10 -0
  247. package/dist/cli/index.d.ts.map +1 -0
  248. package/dist/cli/index.js +17 -0
  249. package/dist/cli/index.js.map +1 -0
  250. package/dist/cli/io.d.ts +49 -0
  251. package/dist/cli/io.d.ts.map +1 -0
  252. package/dist/cli/io.js +77 -0
  253. package/dist/cli/io.js.map +1 -0
  254. package/dist/cli/run.d.ts +35 -0
  255. package/dist/cli/run.d.ts.map +1 -0
  256. package/dist/cli/run.js +139 -0
  257. package/dist/cli/run.js.map +1 -0
  258. package/dist/cli/runtime.d.ts +116 -0
  259. package/dist/cli/runtime.d.ts.map +1 -0
  260. package/dist/cli/runtime.js +181 -0
  261. package/dist/cli/runtime.js.map +1 -0
  262. package/dist/cli/static-root.d.ts +42 -0
  263. package/dist/cli/static-root.d.ts.map +1 -0
  264. package/dist/cli/static-root.js +58 -0
  265. package/dist/cli/static-root.js.map +1 -0
  266. package/dist/compose.d.ts +135 -0
  267. package/dist/compose.d.ts.map +1 -0
  268. package/dist/compose.js +383 -0
  269. package/dist/compose.js.map +1 -0
  270. package/dist/config/bootstrap.d.ts +33 -0
  271. package/dist/config/bootstrap.d.ts.map +1 -0
  272. package/dist/config/bootstrap.js +81 -0
  273. package/dist/config/bootstrap.js.map +1 -0
  274. package/dist/config/env.d.ts +95 -0
  275. package/dist/config/env.d.ts.map +1 -0
  276. package/dist/config/env.js +236 -0
  277. package/dist/config/env.js.map +1 -0
  278. package/dist/config/secrets.d.ts +24 -0
  279. package/dist/config/secrets.d.ts.map +1 -0
  280. package/dist/config/secrets.js +74 -0
  281. package/dist/config/secrets.js.map +1 -0
  282. package/dist/connections/crypto.d.ts +9 -0
  283. package/dist/connections/crypto.d.ts.map +1 -0
  284. package/dist/connections/crypto.js +16 -0
  285. package/dist/connections/crypto.js.map +1 -0
  286. package/dist/connections/dsn.d.ts +42 -0
  287. package/dist/connections/dsn.d.ts.map +1 -0
  288. package/dist/connections/dsn.js +131 -0
  289. package/dist/connections/dsn.js.map +1 -0
  290. package/dist/connections/effective-schema.d.ts +65 -0
  291. package/dist/connections/effective-schema.d.ts.map +1 -0
  292. package/dist/connections/effective-schema.js +249 -0
  293. package/dist/connections/effective-schema.js.map +1 -0
  294. package/dist/connections/introspect.d.ts +52 -0
  295. package/dist/connections/introspect.d.ts.map +1 -0
  296. package/dist/connections/introspect.js +111 -0
  297. package/dist/connections/introspect.js.map +1 -0
  298. package/dist/connections/manager.d.ts +97 -0
  299. package/dist/connections/manager.d.ts.map +1 -0
  300. package/dist/connections/manager.js +224 -0
  301. package/dist/connections/manager.js.map +1 -0
  302. package/dist/connections/register-adapters.d.ts +42 -0
  303. package/dist/connections/register-adapters.d.ts.map +1 -0
  304. package/dist/connections/register-adapters.js +92 -0
  305. package/dist/connections/register-adapters.js.map +1 -0
  306. package/dist/crud/filters.d.ts +57 -0
  307. package/dist/crud/filters.d.ts.map +1 -0
  308. package/dist/crud/filters.js +177 -0
  309. package/dist/crud/filters.js.map +1 -0
  310. package/dist/crud/identifiers.d.ts +58 -0
  311. package/dist/crud/identifiers.d.ts.map +1 -0
  312. package/dist/crud/identifiers.js +99 -0
  313. package/dist/crud/identifiers.js.map +1 -0
  314. package/dist/crud/list.d.ts +51 -0
  315. package/dist/crud/list.d.ts.map +1 -0
  316. package/dist/crud/list.js +126 -0
  317. package/dist/crud/list.js.map +1 -0
  318. package/dist/crud/mask.d.ts +23 -0
  319. package/dist/crud/mask.d.ts.map +1 -0
  320. package/dist/crud/mask.js +41 -0
  321. package/dist/crud/mask.js.map +1 -0
  322. package/dist/crud/records.d.ts +33 -0
  323. package/dist/crud/records.d.ts.map +1 -0
  324. package/dist/crud/records.js +126 -0
  325. package/dist/crud/records.js.map +1 -0
  326. package/dist/crud/undo.d.ts +55 -0
  327. package/dist/crud/undo.d.ts.map +1 -0
  328. package/dist/crud/undo.js +74 -0
  329. package/dist/crud/undo.js.map +1 -0
  330. package/dist/data-io/coerce.d.ts +28 -0
  331. package/dist/data-io/coerce.d.ts.map +1 -0
  332. package/dist/data-io/coerce.js +123 -0
  333. package/dist/data-io/coerce.js.map +1 -0
  334. package/dist/data-io/csv.d.ts +38 -0
  335. package/dist/data-io/csv.d.ts.map +1 -0
  336. package/dist/data-io/csv.js +138 -0
  337. package/dist/data-io/csv.js.map +1 -0
  338. package/dist/data-io/snapshot-view.d.ts +10 -0
  339. package/dist/data-io/snapshot-view.d.ts.map +1 -0
  340. package/dist/data-io/snapshot-view.js +19 -0
  341. package/dist/data-io/snapshot-view.js.map +1 -0
  342. package/dist/desktop/demo-seed.d.ts +23 -0
  343. package/dist/desktop/demo-seed.d.ts.map +1 -0
  344. package/dist/desktop/demo-seed.js +28 -0
  345. package/dist/desktop/demo-seed.js.map +1 -0
  346. package/dist/desktop/lan-share.d.ts +94 -0
  347. package/dist/desktop/lan-share.d.ts.map +1 -0
  348. package/dist/desktop/lan-share.js +150 -0
  349. package/dist/desktop/lan-share.js.map +1 -0
  350. package/dist/errors.d.ts +72 -0
  351. package/dist/errors.d.ts.map +1 -0
  352. package/dist/errors.js +82 -0
  353. package/dist/errors.js.map +1 -0
  354. package/dist/export/bundle.d.ts +235 -0
  355. package/dist/export/bundle.d.ts.map +1 -0
  356. package/dist/export/bundle.js +172 -0
  357. package/dist/export/bundle.js.map +1 -0
  358. package/dist/export/import-service.d.ts +99 -0
  359. package/dist/export/import-service.d.ts.map +1 -0
  360. package/dist/export/import-service.js +515 -0
  361. package/dist/export/import-service.js.map +1 -0
  362. package/dist/export/readme.d.ts +25 -0
  363. package/dist/export/readme.d.ts.map +1 -0
  364. package/dist/export/readme.js +154 -0
  365. package/dist/export/readme.js.map +1 -0
  366. package/dist/export/redaction.d.ts +118 -0
  367. package/dist/export/redaction.d.ts.map +1 -0
  368. package/dist/export/redaction.js +233 -0
  369. package/dist/export/redaction.js.map +1 -0
  370. package/dist/export/zip-service.d.ts +66 -0
  371. package/dist/export/zip-service.d.ts.map +1 -0
  372. package/dist/export/zip-service.js +306 -0
  373. package/dist/export/zip-service.js.map +1 -0
  374. package/dist/files/storage.d.ts +50 -0
  375. package/dist/files/storage.d.ts.map +1 -0
  376. package/dist/files/storage.js +100 -0
  377. package/dist/files/storage.js.map +1 -0
  378. package/dist/generate/materialize-llm.d.ts +45 -0
  379. package/dist/generate/materialize-llm.d.ts.map +1 -0
  380. package/dist/generate/materialize-llm.js +167 -0
  381. package/dist/generate/materialize-llm.js.map +1 -0
  382. package/dist/generate/run.d.ts +48 -0
  383. package/dist/generate/run.d.ts.map +1 -0
  384. package/dist/generate/run.js +123 -0
  385. package/dist/generate/run.js.map +1 -0
  386. package/dist/index.d.ts +89 -0
  387. package/dist/index.d.ts.map +1 -0
  388. package/dist/index.js +116 -0
  389. package/dist/index.js.map +1 -0
  390. package/dist/jobs/export-run.d.ts +38 -0
  391. package/dist/jobs/export-run.d.ts.map +1 -0
  392. package/dist/jobs/export-run.js +172 -0
  393. package/dist/jobs/export-run.js.map +1 -0
  394. package/dist/jobs/import-run.d.ts +43 -0
  395. package/dist/jobs/import-run.d.ts.map +1 -0
  396. package/dist/jobs/import-run.js +290 -0
  397. package/dist/jobs/import-run.js.map +1 -0
  398. package/dist/jobs/llm-run.d.ts +73 -0
  399. package/dist/jobs/llm-run.d.ts.map +1 -0
  400. package/dist/jobs/llm-run.js +225 -0
  401. package/dist/jobs/llm-run.js.map +1 -0
  402. package/dist/jobs/register.d.ts +90 -0
  403. package/dist/jobs/register.d.ts.map +1 -0
  404. package/dist/jobs/register.js +121 -0
  405. package/dist/jobs/register.js.map +1 -0
  406. package/dist/jobs/registry.d.ts +74 -0
  407. package/dist/jobs/registry.d.ts.map +1 -0
  408. package/dist/jobs/registry.js +78 -0
  409. package/dist/jobs/registry.js.map +1 -0
  410. package/dist/jobs/report-run.d.ts +64 -0
  411. package/dist/jobs/report-run.d.ts.map +1 -0
  412. package/dist/jobs/report-run.js +221 -0
  413. package/dist/jobs/report-run.js.map +1 -0
  414. package/dist/jobs/scheduler.d.ts +72 -0
  415. package/dist/jobs/scheduler.d.ts.map +1 -0
  416. package/dist/jobs/scheduler.js +121 -0
  417. package/dist/jobs/scheduler.js.map +1 -0
  418. package/dist/jobs/worker.d.ts +110 -0
  419. package/dist/jobs/worker.d.ts.map +1 -0
  420. package/dist/jobs/worker.js +282 -0
  421. package/dist/jobs/worker.js.map +1 -0
  422. package/dist/llm/apply-service.d.ts +150 -0
  423. package/dist/llm/apply-service.d.ts.map +1 -0
  424. package/dist/llm/apply-service.js +463 -0
  425. package/dist/llm/apply-service.js.map +1 -0
  426. package/dist/llm/apply-undo-store.d.ts +50 -0
  427. package/dist/llm/apply-undo-store.d.ts.map +1 -0
  428. package/dist/llm/apply-undo-store.js +60 -0
  429. package/dist/llm/apply-undo-store.js.map +1 -0
  430. package/dist/llm/direct-runner.d.ts +146 -0
  431. package/dist/llm/direct-runner.d.ts.map +1 -0
  432. package/dist/llm/direct-runner.js +204 -0
  433. package/dist/llm/direct-runner.js.map +1 -0
  434. package/dist/llm/prompt-service.d.ts +90 -0
  435. package/dist/llm/prompt-service.d.ts.map +1 -0
  436. package/dist/llm/prompt-service.js +93 -0
  437. package/dist/llm/prompt-service.js.map +1 -0
  438. package/dist/llm/provider-resolver.d.ts +25 -0
  439. package/dist/llm/provider-resolver.d.ts.map +1 -0
  440. package/dist/llm/provider-resolver.js +81 -0
  441. package/dist/llm/provider-resolver.js.map +1 -0
  442. package/dist/llm/run-service.d.ts +215 -0
  443. package/dist/llm/run-service.d.ts.map +1 -0
  444. package/dist/llm/run-service.js +343 -0
  445. package/dist/llm/run-service.js.map +1 -0
  446. package/dist/llm/stats-collector.d.ts +40 -0
  447. package/dist/llm/stats-collector.d.ts.map +1 -0
  448. package/dist/llm/stats-collector.js +74 -0
  449. package/dist/llm/stats-collector.js.map +1 -0
  450. package/dist/log-scrub.d.ts +58 -0
  451. package/dist/log-scrub.d.ts.map +1 -0
  452. package/dist/log-scrub.js +103 -0
  453. package/dist/log-scrub.js.map +1 -0
  454. package/dist/meta/store.d.ts +96 -0
  455. package/dist/meta/store.d.ts.map +1 -0
  456. package/dist/meta/store.js +192 -0
  457. package/dist/meta/store.js.map +1 -0
  458. package/dist/notifications/notify.d.ts +43 -0
  459. package/dist/notifications/notify.d.ts.map +1 -0
  460. package/dist/notifications/notify.js +42 -0
  461. package/dist/notifications/notify.js.map +1 -0
  462. package/dist/plugins/auth.d.ts +42 -0
  463. package/dist/plugins/auth.d.ts.map +1 -0
  464. package/dist/plugins/auth.js +84 -0
  465. package/dist/plugins/auth.js.map +1 -0
  466. package/dist/plugins/core.d.ts +48 -0
  467. package/dist/plugins/core.d.ts.map +1 -0
  468. package/dist/plugins/core.js +248 -0
  469. package/dist/plugins/core.js.map +1 -0
  470. package/dist/plugins/rbac.d.ts +54 -0
  471. package/dist/plugins/rbac.d.ts.map +1 -0
  472. package/dist/plugins/rbac.js +103 -0
  473. package/dist/plugins/rbac.js.map +1 -0
  474. package/dist/plugins/static.d.ts +12 -0
  475. package/dist/plugins/static.d.ts.map +1 -0
  476. package/dist/plugins/static.js +36 -0
  477. package/dist/plugins/static.js.map +1 -0
  478. package/dist/rbac/api-keys.d.ts +30 -0
  479. package/dist/rbac/api-keys.d.ts.map +1 -0
  480. package/dist/rbac/api-keys.js +41 -0
  481. package/dist/rbac/api-keys.js.map +1 -0
  482. package/dist/rbac/index.d.ts +6 -0
  483. package/dist/rbac/index.d.ts.map +1 -0
  484. package/dist/rbac/index.js +6 -0
  485. package/dist/rbac/index.js.map +1 -0
  486. package/dist/rbac/permissions.d.ts +107 -0
  487. package/dist/rbac/permissions.d.ts.map +1 -0
  488. package/dist/rbac/permissions.js +250 -0
  489. package/dist/rbac/permissions.js.map +1 -0
  490. package/dist/rbac/principal.d.ts +33 -0
  491. package/dist/rbac/principal.d.ts.map +1 -0
  492. package/dist/rbac/principal.js +31 -0
  493. package/dist/rbac/principal.js.map +1 -0
  494. package/dist/rbac/resolver.d.ts +26 -0
  495. package/dist/rbac/resolver.d.ts.map +1 -0
  496. package/dist/rbac/resolver.js +46 -0
  497. package/dist/rbac/resolver.js.map +1 -0
  498. package/dist/realtime/hub.d.ts +90 -0
  499. package/dist/realtime/hub.d.ts.map +1 -0
  500. package/dist/realtime/hub.js +146 -0
  501. package/dist/realtime/hub.js.map +1 -0
  502. package/dist/realtime/sse.d.ts +35 -0
  503. package/dist/realtime/sse.d.ts.map +1 -0
  504. package/dist/realtime/sse.js +88 -0
  505. package/dist/realtime/sse.js.map +1 -0
  506. package/dist/realtime/ws.d.ts +38 -0
  507. package/dist/realtime/ws.d.ts.map +1 -0
  508. package/dist/realtime/ws.js +124 -0
  509. package/dist/realtime/ws.js.map +1 -0
  510. package/dist/reports/schedule.d.ts +14 -0
  511. package/dist/reports/schedule.d.ts.map +1 -0
  512. package/dist/reports/schedule.js +63 -0
  513. package/dist/reports/schedule.js.map +1 -0
  514. package/dist/routes/about/index.d.ts +39 -0
  515. package/dist/routes/about/index.d.ts.map +1 -0
  516. package/dist/routes/about/index.js +73 -0
  517. package/dist/routes/about/index.js.map +1 -0
  518. package/dist/routes/about/schema.d.ts +50 -0
  519. package/dist/routes/about/schema.d.ts.map +1 -0
  520. package/dist/routes/about/schema.js +53 -0
  521. package/dist/routes/about/schema.js.map +1 -0
  522. package/dist/routes/api-keys/index.d.ts +11 -0
  523. package/dist/routes/api-keys/index.d.ts.map +1 -0
  524. package/dist/routes/api-keys/index.js +79 -0
  525. package/dist/routes/api-keys/index.js.map +1 -0
  526. package/dist/routes/api-keys/schema.d.ts +62 -0
  527. package/dist/routes/api-keys/schema.d.ts.map +1 -0
  528. package/dist/routes/api-keys/schema.js +37 -0
  529. package/dist/routes/api-keys/schema.js.map +1 -0
  530. package/dist/routes/audit/index.d.ts +11 -0
  531. package/dist/routes/audit/index.d.ts.map +1 -0
  532. package/dist/routes/audit/index.js +107 -0
  533. package/dist/routes/audit/index.js.map +1 -0
  534. package/dist/routes/audit/schema.d.ts +129 -0
  535. package/dist/routes/audit/schema.d.ts.map +1 -0
  536. package/dist/routes/audit/schema.js +43 -0
  537. package/dist/routes/audit/schema.js.map +1 -0
  538. package/dist/routes/auth/desktop-session.d.ts +48 -0
  539. package/dist/routes/auth/desktop-session.d.ts.map +1 -0
  540. package/dist/routes/auth/desktop-session.js +132 -0
  541. package/dist/routes/auth/desktop-session.js.map +1 -0
  542. package/dist/routes/auth/handlers.d.ts +21 -0
  543. package/dist/routes/auth/handlers.d.ts.map +1 -0
  544. package/dist/routes/auth/handlers.js +256 -0
  545. package/dist/routes/auth/handlers.js.map +1 -0
  546. package/dist/routes/auth/index.d.ts +27 -0
  547. package/dist/routes/auth/index.d.ts.map +1 -0
  548. package/dist/routes/auth/index.js +67 -0
  549. package/dist/routes/auth/index.js.map +1 -0
  550. package/dist/routes/auth/schema.d.ts +129 -0
  551. package/dist/routes/auth/schema.d.ts.map +1 -0
  552. package/dist/routes/auth/schema.js +84 -0
  553. package/dist/routes/auth/schema.js.map +1 -0
  554. package/dist/routes/bootstrap/handlers.d.ts +34 -0
  555. package/dist/routes/bootstrap/handlers.d.ts.map +1 -0
  556. package/dist/routes/bootstrap/handlers.js +96 -0
  557. package/dist/routes/bootstrap/handlers.js.map +1 -0
  558. package/dist/routes/bootstrap/index.d.ts +9 -0
  559. package/dist/routes/bootstrap/index.d.ts.map +1 -0
  560. package/dist/routes/bootstrap/index.js +16 -0
  561. package/dist/routes/bootstrap/index.js.map +1 -0
  562. package/dist/routes/bootstrap/schema.d.ts +177 -0
  563. package/dist/routes/bootstrap/schema.d.ts.map +1 -0
  564. package/dist/routes/bootstrap/schema.js +55 -0
  565. package/dist/routes/bootstrap/schema.js.map +1 -0
  566. package/dist/routes/connections/index.d.ts +21 -0
  567. package/dist/routes/connections/index.d.ts.map +1 -0
  568. package/dist/routes/connections/index.js +260 -0
  569. package/dist/routes/connections/index.js.map +1 -0
  570. package/dist/routes/connections/schema.d.ts +161 -0
  571. package/dist/routes/connections/schema.d.ts.map +1 -0
  572. package/dist/routes/connections/schema.js +91 -0
  573. package/dist/routes/connections/schema.js.map +1 -0
  574. package/dist/routes/data/index.d.ts +46 -0
  575. package/dist/routes/data/index.d.ts.map +1 -0
  576. package/dist/routes/data/index.js +508 -0
  577. package/dist/routes/data/index.js.map +1 -0
  578. package/dist/routes/data/schema.d.ts +128 -0
  579. package/dist/routes/data/schema.d.ts.map +1 -0
  580. package/dist/routes/data/schema.js +83 -0
  581. package/dist/routes/data/schema.js.map +1 -0
  582. package/dist/routes/desktop/index.d.ts +61 -0
  583. package/dist/routes/desktop/index.d.ts.map +1 -0
  584. package/dist/routes/desktop/index.js +91 -0
  585. package/dist/routes/desktop/index.js.map +1 -0
  586. package/dist/routes/desktop/schema.d.ts +71 -0
  587. package/dist/routes/desktop/schema.d.ts.map +1 -0
  588. package/dist/routes/desktop/schema.js +58 -0
  589. package/dist/routes/desktop/schema.js.map +1 -0
  590. package/dist/routes/desktop-capabilities/index.d.ts +9 -0
  591. package/dist/routes/desktop-capabilities/index.d.ts.map +1 -0
  592. package/dist/routes/desktop-capabilities/index.js +62 -0
  593. package/dist/routes/desktop-capabilities/index.js.map +1 -0
  594. package/dist/routes/desktop-capabilities/schema.d.ts +46 -0
  595. package/dist/routes/desktop-capabilities/schema.d.ts.map +1 -0
  596. package/dist/routes/desktop-capabilities/schema.js +30 -0
  597. package/dist/routes/desktop-capabilities/schema.js.map +1 -0
  598. package/dist/routes/desktop-demo/handlers.d.ts +94 -0
  599. package/dist/routes/desktop-demo/handlers.d.ts.map +1 -0
  600. package/dist/routes/desktop-demo/handlers.js +182 -0
  601. package/dist/routes/desktop-demo/handlers.js.map +1 -0
  602. package/dist/routes/desktop-demo/index.d.ts +39 -0
  603. package/dist/routes/desktop-demo/index.d.ts.map +1 -0
  604. package/dist/routes/desktop-demo/index.js +73 -0
  605. package/dist/routes/desktop-demo/index.js.map +1 -0
  606. package/dist/routes/desktop-demo/schema.d.ts +17 -0
  607. package/dist/routes/desktop-demo/schema.d.ts.map +1 -0
  608. package/dist/routes/desktop-demo/schema.js +30 -0
  609. package/dist/routes/desktop-demo/schema.js.map +1 -0
  610. package/dist/routes/desktop-lan/index.d.ts +54 -0
  611. package/dist/routes/desktop-lan/index.d.ts.map +1 -0
  612. package/dist/routes/desktop-lan/index.js +33 -0
  613. package/dist/routes/desktop-lan/index.js.map +1 -0
  614. package/dist/routes/desktop-lan/schema.d.ts +24 -0
  615. package/dist/routes/desktop-lan/schema.d.ts.map +1 -0
  616. package/dist/routes/desktop-lan/schema.js +40 -0
  617. package/dist/routes/desktop-lan/schema.js.map +1 -0
  618. package/dist/routes/desktop-local-db/handlers.d.ts +92 -0
  619. package/dist/routes/desktop-local-db/handlers.d.ts.map +1 -0
  620. package/dist/routes/desktop-local-db/handlers.js +300 -0
  621. package/dist/routes/desktop-local-db/handlers.js.map +1 -0
  622. package/dist/routes/desktop-local-db/index.d.ts +39 -0
  623. package/dist/routes/desktop-local-db/index.d.ts.map +1 -0
  624. package/dist/routes/desktop-local-db/index.js +83 -0
  625. package/dist/routes/desktop-local-db/index.js.map +1 -0
  626. package/dist/routes/desktop-local-db/placeholder.d.ts +75 -0
  627. package/dist/routes/desktop-local-db/placeholder.d.ts.map +1 -0
  628. package/dist/routes/desktop-local-db/placeholder.js +420 -0
  629. package/dist/routes/desktop-local-db/placeholder.js.map +1 -0
  630. package/dist/routes/desktop-local-db/schema.d.ts +50 -0
  631. package/dist/routes/desktop-local-db/schema.d.ts.map +1 -0
  632. package/dist/routes/desktop-local-db/schema.js +71 -0
  633. package/dist/routes/desktop-local-db/schema.js.map +1 -0
  634. package/dist/routes/desktop-local-db/sqlite-ddl.d.ts +104 -0
  635. package/dist/routes/desktop-local-db/sqlite-ddl.d.ts.map +1 -0
  636. package/dist/routes/desktop-local-db/sqlite-ddl.js +419 -0
  637. package/dist/routes/desktop-local-db/sqlite-ddl.js.map +1 -0
  638. package/dist/routes/email-templates/index.d.ts +7 -0
  639. package/dist/routes/email-templates/index.d.ts.map +1 -0
  640. package/dist/routes/email-templates/index.js +70 -0
  641. package/dist/routes/email-templates/index.js.map +1 -0
  642. package/dist/routes/email-templates/schema.d.ts +54 -0
  643. package/dist/routes/email-templates/schema.d.ts.map +1 -0
  644. package/dist/routes/email-templates/schema.js +35 -0
  645. package/dist/routes/email-templates/schema.js.map +1 -0
  646. package/dist/routes/exports/index.d.ts +19 -0
  647. package/dist/routes/exports/index.d.ts.map +1 -0
  648. package/dist/routes/exports/index.js +145 -0
  649. package/dist/routes/exports/index.js.map +1 -0
  650. package/dist/routes/exports/schema.d.ts +183 -0
  651. package/dist/routes/exports/schema.d.ts.map +1 -0
  652. package/dist/routes/exports/schema.js +37 -0
  653. package/dist/routes/exports/schema.js.map +1 -0
  654. package/dist/routes/generate/index.d.ts +23 -0
  655. package/dist/routes/generate/index.d.ts.map +1 -0
  656. package/dist/routes/generate/index.js +80 -0
  657. package/dist/routes/generate/index.js.map +1 -0
  658. package/dist/routes/generate/schema.d.ts +43 -0
  659. package/dist/routes/generate/schema.d.ts.map +1 -0
  660. package/dist/routes/generate/schema.js +37 -0
  661. package/dist/routes/generate/schema.js.map +1 -0
  662. package/dist/routes/imports/index.d.ts +21 -0
  663. package/dist/routes/imports/index.d.ts.map +1 -0
  664. package/dist/routes/imports/index.js +288 -0
  665. package/dist/routes/imports/index.js.map +1 -0
  666. package/dist/routes/imports/schema.d.ts +292 -0
  667. package/dist/routes/imports/schema.d.ts.map +1 -0
  668. package/dist/routes/imports/schema.js +78 -0
  669. package/dist/routes/imports/schema.js.map +1 -0
  670. package/dist/routes/index.d.ts +11 -0
  671. package/dist/routes/index.d.ts.map +1 -0
  672. package/dist/routes/index.js +8 -0
  673. package/dist/routes/index.js.map +1 -0
  674. package/dist/routes/jobs/index.d.ts +29 -0
  675. package/dist/routes/jobs/index.d.ts.map +1 -0
  676. package/dist/routes/jobs/index.js +175 -0
  677. package/dist/routes/jobs/index.js.map +1 -0
  678. package/dist/routes/jobs/schema.d.ts +170 -0
  679. package/dist/routes/jobs/schema.d.ts.map +1 -0
  680. package/dist/routes/jobs/schema.js +57 -0
  681. package/dist/routes/jobs/schema.js.map +1 -0
  682. package/dist/routes/llm/config-service.d.ts +48 -0
  683. package/dist/routes/llm/config-service.d.ts.map +1 -0
  684. package/dist/routes/llm/config-service.js +102 -0
  685. package/dist/routes/llm/config-service.js.map +1 -0
  686. package/dist/routes/llm/index.d.ts +69 -0
  687. package/dist/routes/llm/index.d.ts.map +1 -0
  688. package/dist/routes/llm/index.js +412 -0
  689. package/dist/routes/llm/index.js.map +1 -0
  690. package/dist/routes/llm/schema.d.ts +605 -0
  691. package/dist/routes/llm/schema.d.ts.map +1 -0
  692. package/dist/routes/llm/schema.js +238 -0
  693. package/dist/routes/llm/schema.js.map +1 -0
  694. package/dist/routes/me/handlers.d.ts +14 -0
  695. package/dist/routes/me/handlers.d.ts.map +1 -0
  696. package/dist/routes/me/handlers.js +88 -0
  697. package/dist/routes/me/handlers.js.map +1 -0
  698. package/dist/routes/me/index.d.ts +8 -0
  699. package/dist/routes/me/index.d.ts.map +1 -0
  700. package/dist/routes/me/index.js +17 -0
  701. package/dist/routes/me/index.js.map +1 -0
  702. package/dist/routes/me/schema.d.ts +270 -0
  703. package/dist/routes/me/schema.d.ts.map +1 -0
  704. package/dist/routes/me/schema.js +59 -0
  705. package/dist/routes/me/schema.js.map +1 -0
  706. package/dist/routes/me-views/index.d.ts +23 -0
  707. package/dist/routes/me-views/index.d.ts.map +1 -0
  708. package/dist/routes/me-views/index.js +76 -0
  709. package/dist/routes/me-views/index.js.map +1 -0
  710. package/dist/routes/me-views/schema.d.ts +44 -0
  711. package/dist/routes/me-views/schema.d.ts.map +1 -0
  712. package/dist/routes/me-views/schema.js +13 -0
  713. package/dist/routes/me-views/schema.js.map +1 -0
  714. package/dist/routes/notifications/index.d.ts +19 -0
  715. package/dist/routes/notifications/index.d.ts.map +1 -0
  716. package/dist/routes/notifications/index.js +123 -0
  717. package/dist/routes/notifications/index.js.map +1 -0
  718. package/dist/routes/notifications/schema.d.ts +122 -0
  719. package/dist/routes/notifications/schema.d.ts.map +1 -0
  720. package/dist/routes/notifications/schema.js +83 -0
  721. package/dist/routes/notifications/schema.js.map +1 -0
  722. package/dist/routes/onboarding/derive.d.ts +41 -0
  723. package/dist/routes/onboarding/derive.d.ts.map +1 -0
  724. package/dist/routes/onboarding/derive.js +30 -0
  725. package/dist/routes/onboarding/derive.js.map +1 -0
  726. package/dist/routes/onboarding/index.d.ts +26 -0
  727. package/dist/routes/onboarding/index.d.ts.map +1 -0
  728. package/dist/routes/onboarding/index.js +95 -0
  729. package/dist/routes/onboarding/index.js.map +1 -0
  730. package/dist/routes/onboarding/schema.d.ts +22 -0
  731. package/dist/routes/onboarding/schema.d.ts.map +1 -0
  732. package/dist/routes/onboarding/schema.js +22 -0
  733. package/dist/routes/onboarding/schema.js.map +1 -0
  734. package/dist/routes/pages/index.d.ts +26 -0
  735. package/dist/routes/pages/index.d.ts.map +1 -0
  736. package/dist/routes/pages/index.js +119 -0
  737. package/dist/routes/pages/index.js.map +1 -0
  738. package/dist/routes/pages/layout-schema.d.ts +19 -0
  739. package/dist/routes/pages/layout-schema.d.ts.map +1 -0
  740. package/dist/routes/pages/layout-schema.js +19 -0
  741. package/dist/routes/pages/layout-schema.js.map +1 -0
  742. package/dist/routes/pages/schema.d.ts +52 -0
  743. package/dist/routes/pages/schema.d.ts.map +1 -0
  744. package/dist/routes/pages/schema.js +35 -0
  745. package/dist/routes/pages/schema.js.map +1 -0
  746. package/dist/routes/roles/index.d.ts +17 -0
  747. package/dist/routes/roles/index.d.ts.map +1 -0
  748. package/dist/routes/roles/index.js +255 -0
  749. package/dist/routes/roles/index.js.map +1 -0
  750. package/dist/routes/roles/schema.d.ts +94 -0
  751. package/dist/routes/roles/schema.d.ts.map +1 -0
  752. package/dist/routes/roles/schema.js +57 -0
  753. package/dist/routes/roles/schema.js.map +1 -0
  754. package/dist/routes/scheduled-reports/index.d.ts +15 -0
  755. package/dist/routes/scheduled-reports/index.d.ts.map +1 -0
  756. package/dist/routes/scheduled-reports/index.js +195 -0
  757. package/dist/routes/scheduled-reports/index.js.map +1 -0
  758. package/dist/routes/scheduled-reports/schema.d.ts +154 -0
  759. package/dist/routes/scheduled-reports/schema.d.ts.map +1 -0
  760. package/dist/routes/scheduled-reports/schema.js +49 -0
  761. package/dist/routes/scheduled-reports/schema.js.map +1 -0
  762. package/dist/routes/schema/index.d.ts +24 -0
  763. package/dist/routes/schema/index.d.ts.map +1 -0
  764. package/dist/routes/schema/index.js +224 -0
  765. package/dist/routes/schema/index.js.map +1 -0
  766. package/dist/routes/schema/schema.d.ts +92 -0
  767. package/dist/routes/schema/schema.d.ts.map +1 -0
  768. package/dist/routes/schema/schema.js +64 -0
  769. package/dist/routes/schema/schema.js.map +1 -0
  770. package/dist/routes/schema-import/fallback-parser.d.ts +35 -0
  771. package/dist/routes/schema-import/fallback-parser.d.ts.map +1 -0
  772. package/dist/routes/schema-import/fallback-parser.js +349 -0
  773. package/dist/routes/schema-import/fallback-parser.js.map +1 -0
  774. package/dist/routes/schema-import/index.d.ts +43 -0
  775. package/dist/routes/schema-import/index.d.ts.map +1 -0
  776. package/dist/routes/schema-import/index.js +167 -0
  777. package/dist/routes/schema-import/index.js.map +1 -0
  778. package/dist/routes/schema-import/schema.d.ts +65 -0
  779. package/dist/routes/schema-import/schema.d.ts.map +1 -0
  780. package/dist/routes/schema-import/schema.js +40 -0
  781. package/dist/routes/schema-import/schema.js.map +1 -0
  782. package/dist/routes/search/index.d.ts +71 -0
  783. package/dist/routes/search/index.d.ts.map +1 -0
  784. package/dist/routes/search/index.js +361 -0
  785. package/dist/routes/search/index.js.map +1 -0
  786. package/dist/routes/search/schema.d.ts +125 -0
  787. package/dist/routes/search/schema.d.ts.map +1 -0
  788. package/dist/routes/search/schema.js +70 -0
  789. package/dist/routes/search/schema.js.map +1 -0
  790. package/dist/routes/settings/index.d.ts +24 -0
  791. package/dist/routes/settings/index.d.ts.map +1 -0
  792. package/dist/routes/settings/index.js +164 -0
  793. package/dist/routes/settings/index.js.map +1 -0
  794. package/dist/routes/settings/schema.d.ts +110 -0
  795. package/dist/routes/settings/schema.d.ts.map +1 -0
  796. package/dist/routes/settings/schema.js +71 -0
  797. package/dist/routes/settings/schema.js.map +1 -0
  798. package/dist/routes/setup/index.d.ts +29 -0
  799. package/dist/routes/setup/index.d.ts.map +1 -0
  800. package/dist/routes/setup/index.js +68 -0
  801. package/dist/routes/setup/index.js.map +1 -0
  802. package/dist/routes/setup/schema.d.ts +61 -0
  803. package/dist/routes/setup/schema.d.ts.map +1 -0
  804. package/dist/routes/setup/schema.js +47 -0
  805. package/dist/routes/setup/schema.js.map +1 -0
  806. package/dist/routes/system/handlers.d.ts +63 -0
  807. package/dist/routes/system/handlers.d.ts.map +1 -0
  808. package/dist/routes/system/handlers.js +121 -0
  809. package/dist/routes/system/handlers.js.map +1 -0
  810. package/dist/routes/system/index.d.ts +34 -0
  811. package/dist/routes/system/index.d.ts.map +1 -0
  812. package/dist/routes/system/index.js +18 -0
  813. package/dist/routes/system/index.js.map +1 -0
  814. package/dist/routes/system/schema.d.ts +93 -0
  815. package/dist/routes/system/schema.d.ts.map +1 -0
  816. package/dist/routes/system/schema.js +109 -0
  817. package/dist/routes/system/schema.js.map +1 -0
  818. package/dist/routes/views/index.d.ts +21 -0
  819. package/dist/routes/views/index.d.ts.map +1 -0
  820. package/dist/routes/views/index.js +155 -0
  821. package/dist/routes/views/index.js.map +1 -0
  822. package/dist/routes/views/schema.d.ts +127 -0
  823. package/dist/routes/views/schema.d.ts.map +1 -0
  824. package/dist/routes/views/schema.js +56 -0
  825. package/dist/routes/views/schema.js.map +1 -0
  826. package/dist/routes/widget-data/index.d.ts +29 -0
  827. package/dist/routes/widget-data/index.d.ts.map +1 -0
  828. package/dist/routes/widget-data/index.js +152 -0
  829. package/dist/routes/widget-data/index.js.map +1 -0
  830. package/dist/routes/widget-data/schema.d.ts +252 -0
  831. package/dist/routes/widget-data/schema.d.ts.map +1 -0
  832. package/dist/routes/widget-data/schema.js +44 -0
  833. package/dist/routes/widget-data/schema.js.map +1 -0
  834. package/dist/setup/service.d.ts +63 -0
  835. package/dist/setup/service.d.ts.map +1 -0
  836. package/dist/setup/service.js +103 -0
  837. package/dist/setup/service.js.map +1 -0
  838. package/dist/start.d.ts +12 -0
  839. package/dist/start.d.ts.map +1 -0
  840. package/dist/start.js +28 -0
  841. package/dist/start.js.map +1 -0
  842. package/dist/telemetry/payload.d.ts +66 -0
  843. package/dist/telemetry/payload.d.ts.map +1 -0
  844. package/dist/telemetry/payload.js +69 -0
  845. package/dist/telemetry/payload.js.map +1 -0
  846. package/dist/telemetry/service.d.ts +67 -0
  847. package/dist/telemetry/service.d.ts.map +1 -0
  848. package/dist/telemetry/service.js +103 -0
  849. package/dist/telemetry/service.js.map +1 -0
  850. package/dist/telemetry/update-check.d.ts +79 -0
  851. package/dist/telemetry/update-check.d.ts.map +1 -0
  852. package/dist/telemetry/update-check.js +103 -0
  853. package/dist/telemetry/update-check.js.map +1 -0
  854. package/dist/version.d.ts +14 -0
  855. package/dist/version.d.ts.map +1 -0
  856. package/dist/version.js +21 -0
  857. package/dist/version.js.map +1 -0
  858. package/dist/widget-data/cache.d.ts +35 -0
  859. package/dist/widget-data/cache.d.ts.map +1 -0
  860. package/dist/widget-data/cache.js +67 -0
  861. package/dist/widget-data/cache.js.map +1 -0
  862. package/dist/widget-data/compiler.d.ts +107 -0
  863. package/dist/widget-data/compiler.d.ts.map +1 -0
  864. package/dist/widget-data/compiler.js +362 -0
  865. package/dist/widget-data/compiler.js.map +1 -0
  866. package/dist/widget-data/shapers.d.ts +75 -0
  867. package/dist/widget-data/shapers.d.ts.map +1 -0
  868. package/dist/widget-data/shapers.js +128 -0
  869. package/dist/widget-data/shapers.js.map +1 -0
  870. package/dist/widget-data/stream-publisher.d.ts +42 -0
  871. package/dist/widget-data/stream-publisher.d.ts.map +1 -0
  872. package/dist/widget-data/stream-publisher.js +34 -0
  873. package/dist/widget-data/stream-publisher.js.map +1 -0
  874. package/package.json +79 -0
  875. package/vocabulary/llm-allowlist.json +76 -0
@@ -0,0 +1,94 @@
1
+ /**
2
+ * LAN share, as the SERVER can see it (11-electron.md §8.3, §8.1).
3
+ *
4
+ * The desktop shell owns the DECISION — `config.json`'s `lanShare` is main's
5
+ * file (§2.3), and main is what re-forks this process with `ADMINIUM_HOST=0.0.0.0`
6
+ * — so nothing here toggles anything. What lives here are the two questions only
7
+ * a process holding the meta store and its own listening socket can answer:
8
+ *
9
+ * 1. {@link lanShareActive} — am I bound wide, or to loopback? §8.1's runtime
10
+ * chip needs this, and §8.1 forbids it the obvious source: "The chip is a
11
+ * `@adminium/ui` component fed by `GET /api/v1/system/info` + a lightweight
12
+ * connection-health poll — **no preload involvement**." So the answer has to
13
+ * come off this process's own boot environment.
14
+ * 2. {@link readLanShareStatus} — who is actually connected, and is there
15
+ * anyone but the super admin to connect? Both are meta-store reads, and §1
16
+ * principle 2 makes this process the only thing allowed to make them.
17
+ *
18
+ * ─── Why the bind address is the honest signal ───────────────────────────────
19
+ *
20
+ * `config.lanShare.enabled` is a statement of INTENT that the user can change at
21
+ * any moment; the bind address is the state of the world. They disagree for a
22
+ * whole server lifetime whenever the rebind fails or has not happened yet —
23
+ * exactly the window in which a chip saying "Sharing on LAN" over a
24
+ * loopback-only server, or the reverse, is a lie with a security consequence.
25
+ * §2.4 states the invariant in the same terms ("The server binds 127.0.0.1
26
+ * unless LAN share is on"), so reporting the bind is reporting the promise.
27
+ */
28
+ import type { MetaDb } from '@adminium/meta';
29
+ import type { Env } from '../config/env.js';
30
+ /** Is `host` a bind-every-interface address? */
31
+ export declare function isWildcardBindHost(host: string): boolean;
32
+ /**
33
+ * §8.3's toggle, as observed rather than as configured: is THIS process reachable
34
+ * from the LAN because the desktop shell asked it to be?
35
+ *
36
+ * The `desktop` runtime clause is not decoration. Self-host, Docker and `npx
37
+ * adminium` all default `HOST` to `0.0.0.0` — that is the normal, correct bind
38
+ * for a server behind a reverse proxy, and it is not "LAN share". §8.3 is a
39
+ * DESKTOP feature: an app that is normally a single-user local tool and has been
40
+ * deliberately opened up. Reporting `true` for every Docker deployment would
41
+ * make §8.1's chip meaningless on the one runtime that renders it and wrong on
42
+ * every other.
43
+ */
44
+ export declare function lanShareActive(env: Pick<Env, 'ADMINIUM_RUNTIME' | 'HOST'>): boolean;
45
+ /** What §8.3's share panel shows, minus the URLs (which only main can enumerate). */
46
+ export interface LanShareStatus {
47
+ /** {@link lanShareActive} — the bind, not the config. */
48
+ active: boolean;
49
+ /** Sessions currently held by a peer that is NOT this machine. */
50
+ lanSessions: number;
51
+ /**
52
+ * Active users who are not super admins — §8.3's precondition ("at least one
53
+ * non-super-admin user exists *or* the admin acknowledges they'll invite users
54
+ * next").
55
+ */
56
+ otherUsers: number;
57
+ }
58
+ /**
59
+ * §8.3's "connected-session count (from `adminium_sessions` with non-loopback
60
+ * IPs)".
61
+ *
62
+ * ─── "Active" has to mean the same thing here as at the front door ───────────
63
+ *
64
+ * Three conditions, and they are `resolveSessionByToken`'s three, deliberately:
65
+ * un-revoked, before `expires_at`, and inside the 7-day idle window. A count
66
+ * that used fewer would report sessions that the very next request would refuse
67
+ * as expired — a panel telling an admin "3 devices connected" when two of them
68
+ * were signed out last week is worse than no panel, because the number is the
69
+ * only reason the panel exists.
70
+ *
71
+ * ─── Non-loopback, and what a NULL ip means ──────────────────────────────────
72
+ *
73
+ * `adminium_sessions.ip` is nullable, and `null` is not "loopback": it is "we
74
+ * were not told". It cannot be counted as a LAN peer (that would inflate the
75
+ * number on any install whose sessions predate an ip being recorded), and it is
76
+ * not counted here. In practice the desktop path always records one —
77
+ * `routes/auth/handlers.ts`'s `requestMeta` passes `request.ip` on every login —
78
+ * so this is a defensive read, not a common case.
79
+ *
80
+ * `isLoopbackAddress` rather than a `!== '127.0.0.1'` comparison: loopback is a
81
+ * whole /8 plus `::1` plus the IPv4-mapped spellings a dual-stack listener hands
82
+ * out, and `::ffff:127.0.0.1` is this machine however much it looks like it is
83
+ * not.
84
+ */
85
+ export declare function readLanShareStatus(env: Pick<Env, 'ADMINIUM_RUNTIME' | 'HOST'>, meta: MetaDb, at?: number): Promise<LanShareStatus>;
86
+ /**
87
+ * The built-in role `@adminium/meta`'s `bootstrap.ts` seeds and the RBAC
88
+ * resolver short-circuits on. Restated here rather than imported because meta
89
+ * exports the seed shape and not the slug; `desktop-lan-route.test.ts` pins the
90
+ * two together, since a typo would silently make every super admin count as an
91
+ * "other user" and wave the §8.3 precondition through.
92
+ */
93
+ export declare const SUPER_ADMIN_ROLE_SLUG = "super-admin";
94
+ //# sourceMappingURL=lan-share.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lan-share.d.ts","sourceRoot":"","sources":["../../src/desktop/lan-share.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAI7C,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAkB5C,gDAAgD;AAChD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAExD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,kBAAkB,GAAG,MAAM,CAAC,GAAG,OAAO,CAEnF;AAED,qFAAqF;AACrF,MAAM,WAAW,cAAc;IAC7B,yDAAyD;IACzD,MAAM,EAAE,OAAO,CAAC;IAChB,kEAAkE;IAClE,WAAW,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,kBAAkB,GAAG,MAAM,CAAC,EAC3C,IAAI,EAAE,MAAM,EACZ,EAAE,GAAE,MAAmB,GACtB,OAAO,CAAC,cAAc,CAAC,CAMzB;AAiDD;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,gBAAgB,CAAC"}
@@ -0,0 +1,150 @@
1
+ /**
2
+ * LAN share, as the SERVER can see it (11-electron.md §8.3, §8.1).
3
+ *
4
+ * The desktop shell owns the DECISION — `config.json`'s `lanShare` is main's
5
+ * file (§2.3), and main is what re-forks this process with `ADMINIUM_HOST=0.0.0.0`
6
+ * — so nothing here toggles anything. What lives here are the two questions only
7
+ * a process holding the meta store and its own listening socket can answer:
8
+ *
9
+ * 1. {@link lanShareActive} — am I bound wide, or to loopback? §8.1's runtime
10
+ * chip needs this, and §8.1 forbids it the obvious source: "The chip is a
11
+ * `@adminium/ui` component fed by `GET /api/v1/system/info` + a lightweight
12
+ * connection-health poll — **no preload involvement**." So the answer has to
13
+ * come off this process's own boot environment.
14
+ * 2. {@link readLanShareStatus} — who is actually connected, and is there
15
+ * anyone but the super admin to connect? Both are meta-store reads, and §1
16
+ * principle 2 makes this process the only thing allowed to make them.
17
+ *
18
+ * ─── Why the bind address is the honest signal ───────────────────────────────
19
+ *
20
+ * `config.lanShare.enabled` is a statement of INTENT that the user can change at
21
+ * any moment; the bind address is the state of the world. They disagree for a
22
+ * whole server lifetime whenever the rebind fails or has not happened yet —
23
+ * exactly the window in which a chip saying "Sharing on LAN" over a
24
+ * loopback-only server, or the reverse, is a lie with a security consequence.
25
+ * §2.4 states the invariant in the same terms ("The server binds 127.0.0.1
26
+ * unless LAN share is on"), so reporting the bind is reporting the promise.
27
+ */
28
+ import { isLoopbackAddress } from '../auth/desktop-session.js';
29
+ import { SESSION_IDLE_TTL_MS } from '../auth/sessions.js';
30
+ /**
31
+ * Bind addresses that mean "every interface", i.e. reachable from the LAN.
32
+ *
33
+ * `0.0.0.0` is what §2.2 step 5's env block names and what the shell sends.
34
+ * `::` (and its bracketed spelling) is the IPv6 wildcard, which reaches the
35
+ * same conclusion by the same mechanism — and which a fleet admin or a
36
+ * hand-edited launch could produce. Anything else — a loopback literal, a
37
+ * single NIC's address, a hostname — is not a wildcard. Note that a specific
38
+ * LAN address like `192.168.1.5` is deliberately NOT here: it is reachable, but
39
+ * the desktop shell never produces it (§8.3 flips between loopback and
40
+ * `0.0.0.0` and nothing else), and treating an arbitrary literal as "sharing"
41
+ * would require this module to enumerate interfaces — which is main's job (`os`
42
+ * lives there, and this process may be in a container).
43
+ */
44
+ const WILDCARD_BIND_HOSTS = new Set(['0.0.0.0', '::', '[::]', '*']);
45
+ /** Is `host` a bind-every-interface address? */
46
+ export function isWildcardBindHost(host) {
47
+ return WILDCARD_BIND_HOSTS.has(host.trim());
48
+ }
49
+ /**
50
+ * §8.3's toggle, as observed rather than as configured: is THIS process reachable
51
+ * from the LAN because the desktop shell asked it to be?
52
+ *
53
+ * The `desktop` runtime clause is not decoration. Self-host, Docker and `npx
54
+ * adminium` all default `HOST` to `0.0.0.0` — that is the normal, correct bind
55
+ * for a server behind a reverse proxy, and it is not "LAN share". §8.3 is a
56
+ * DESKTOP feature: an app that is normally a single-user local tool and has been
57
+ * deliberately opened up. Reporting `true` for every Docker deployment would
58
+ * make §8.1's chip meaningless on the one runtime that renders it and wrong on
59
+ * every other.
60
+ */
61
+ export function lanShareActive(env) {
62
+ return env.ADMINIUM_RUNTIME === 'desktop' && isWildcardBindHost(env.HOST);
63
+ }
64
+ /**
65
+ * §8.3's "connected-session count (from `adminium_sessions` with non-loopback
66
+ * IPs)".
67
+ *
68
+ * ─── "Active" has to mean the same thing here as at the front door ───────────
69
+ *
70
+ * Three conditions, and they are `resolveSessionByToken`'s three, deliberately:
71
+ * un-revoked, before `expires_at`, and inside the 7-day idle window. A count
72
+ * that used fewer would report sessions that the very next request would refuse
73
+ * as expired — a panel telling an admin "3 devices connected" when two of them
74
+ * were signed out last week is worse than no panel, because the number is the
75
+ * only reason the panel exists.
76
+ *
77
+ * ─── Non-loopback, and what a NULL ip means ──────────────────────────────────
78
+ *
79
+ * `adminium_sessions.ip` is nullable, and `null` is not "loopback": it is "we
80
+ * were not told". It cannot be counted as a LAN peer (that would inflate the
81
+ * number on any install whose sessions predate an ip being recorded), and it is
82
+ * not counted here. In practice the desktop path always records one —
83
+ * `routes/auth/handlers.ts`'s `requestMeta` passes `request.ip` on every login —
84
+ * so this is a defensive read, not a common case.
85
+ *
86
+ * `isLoopbackAddress` rather than a `!== '127.0.0.1'` comparison: loopback is a
87
+ * whole /8 plus `::1` plus the IPv4-mapped spellings a dual-stack listener hands
88
+ * out, and `::ffff:127.0.0.1` is this machine however much it looks like it is
89
+ * not.
90
+ */
91
+ export async function readLanShareStatus(env, meta, at = Date.now()) {
92
+ const [lanSessions, otherUsers] = await Promise.all([
93
+ countLanSessions(meta, at),
94
+ countNonSuperAdminUsers(meta),
95
+ ]);
96
+ return { active: lanShareActive(env), lanSessions, otherUsers };
97
+ }
98
+ async function countLanSessions(meta, at) {
99
+ const rows = await meta.db
100
+ .selectFrom('adminium_sessions')
101
+ .select(['ip'])
102
+ .where('revokedAt', 'is', null)
103
+ .where('expiresAt', '>', at)
104
+ .where('lastSeenAt', '>', at - SESSION_IDLE_TTL_MS)
105
+ .execute();
106
+ // The loopback test is applied in TypeScript rather than SQL on purpose: the
107
+ // rule is "is this address one of the several shapes that mean this machine",
108
+ // which is `isLoopbackAddress`'s job and not something three dialects of
109
+ // `LIKE` should be asked to re-implement between them. The row set is bounded
110
+ // by the number of live sessions on a desktop install.
111
+ return rows.filter((row) => row.ip !== null && !isLoopbackAddress(row.ip)).length;
112
+ }
113
+ /**
114
+ * §8.3's precondition input: is there anybody to invite, or has the admin only
115
+ * got themselves?
116
+ *
117
+ * "Non-super-admin" is asked of the ROLE ASSIGNMENT rather than of the user row,
118
+ * because super-admin is not a column — it is a row in `adminium_user_roles`
119
+ * pointing at the `super-admin` role (`@adminium/meta`'s `bootstrap.ts` seeds
120
+ * it, and the RBAC resolver short-circuits on that slug). A second super admin
121
+ * therefore does NOT count: §8.3's precondition exists so the admin does not
122
+ * open their machine to a network on which nobody but them has an account, and
123
+ * another copy of themselves does not change that.
124
+ *
125
+ * Suspended and invited users do not count either — `status: 'active'` is the
126
+ * set that can actually log in.
127
+ */
128
+ async function countNonSuperAdminUsers(meta) {
129
+ const superAdmins = meta.db
130
+ .selectFrom('adminium_user_roles')
131
+ .innerJoin('adminium_roles', 'adminium_roles.id', 'adminium_user_roles.roleId')
132
+ .select('adminium_user_roles.userId')
133
+ .where('adminium_roles.slug', '=', SUPER_ADMIN_ROLE_SLUG);
134
+ const rows = await meta.db
135
+ .selectFrom('adminium_users')
136
+ .select('id')
137
+ .where('status', '=', 'active')
138
+ .where('id', 'not in', superAdmins)
139
+ .execute();
140
+ return rows.length;
141
+ }
142
+ /**
143
+ * The built-in role `@adminium/meta`'s `bootstrap.ts` seeds and the RBAC
144
+ * resolver short-circuits on. Restated here rather than imported because meta
145
+ * exports the seed shape and not the slug; `desktop-lan-route.test.ts` pins the
146
+ * two together, since a typo would silently make every super admin count as an
147
+ * "other user" and wave the §8.3 precondition through.
148
+ */
149
+ export const SUPER_ADMIN_ROLE_SLUG = 'super-admin';
150
+ //# sourceMappingURL=lan-share.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lan-share.js","sourceRoot":"","sources":["../../src/desktop/lan-share.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAIH,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAG1D;;;;;;;;;;;;;GAaG;AACH,MAAM,mBAAmB,GAAwB,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;AAEzF,gDAAgD;AAChD,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,OAAO,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;AAC9C,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,cAAc,CAAC,GAA2C;IACxE,OAAO,GAAG,CAAC,gBAAgB,KAAK,SAAS,IAAI,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAC5E,CAAC;AAgBD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,GAA2C,EAC3C,IAAY,EACZ,KAAa,IAAI,CAAC,GAAG,EAAE;IAEvB,MAAM,CAAC,WAAW,EAAE,UAAU,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAClD,gBAAgB,CAAC,IAAI,EAAE,EAAE,CAAC;QAC1B,uBAAuB,CAAC,IAAI,CAAC;KAC9B,CAAC,CAAC;IACH,OAAO,EAAE,MAAM,EAAE,cAAc,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;AAClE,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,IAAY,EAAE,EAAU;IACtD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,EAAE;SACvB,UAAU,CAAC,mBAAmB,CAAC;SAC/B,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC;SACd,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC;SAC9B,KAAK,CAAC,WAAW,EAAE,GAAG,EAAE,EAAE,CAAC;SAC3B,KAAK,CAAC,YAAY,EAAE,GAAG,EAAE,EAAE,GAAG,mBAAmB,CAAC;SAClD,OAAO,EAAE,CAAC;IACb,6EAA6E;IAC7E,8EAA8E;IAC9E,yEAAyE;IACzE,8EAA8E;IAC9E,uDAAuD;IACvD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,IAAI,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;AACpF,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,KAAK,UAAU,uBAAuB,CAAC,IAAY;IACjD,MAAM,WAAW,GAAG,IAAI,CAAC,EAAE;SACxB,UAAU,CAAC,qBAAqB,CAAC;SACjC,SAAS,CAAC,gBAAgB,EAAE,mBAAmB,EAAE,4BAA4B,CAAC;SAC9E,MAAM,CAAC,4BAA4B,CAAC;SACpC,KAAK,CAAC,qBAAqB,EAAE,GAAG,EAAE,qBAAqB,CAAC,CAAC;IAE5D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,EAAE;SACvB,UAAU,CAAC,gBAAgB,CAAC;SAC5B,MAAM,CAAC,IAAI,CAAC;SACZ,KAAK,CAAC,QAAQ,EAAE,GAAG,EAAE,QAAQ,CAAC;SAC9B,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC;SAClC,OAAO,EAAE,CAAC;IACb,OAAO,IAAI,CAAC,MAAM,CAAC;AACrB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,aAAa,CAAC"}
@@ -0,0 +1,72 @@
1
+ /**
2
+ * Application errors + the one non-2xx envelope (08-server-api.md §1.4).
3
+ *
4
+ * Every non-2xx response has the shape
5
+ * `{ error: { code, message, requestId, details? } }` with a SCREAMING_SNAKE
6
+ * `code` from the canonical table. Handlers throw `AppError` subclasses; the
7
+ * global error handler in `app.ts` serializes them.
8
+ */
9
+ /** Canonical error codes relevant to the M2 skeleton (08-server-api.md §1.4). */
10
+ export type ErrorCode = 'VALIDATION_FAILED' | 'UNAUTHENTICATED' | 'SESSION_EXPIRED' | 'FORBIDDEN' | 'TABLE_FORBIDDEN' | 'COLUMN_FORBIDDEN' | 'PAGE_FORBIDDEN' | 'CSRF_FAILED' | 'READ_ONLY_MODE' | 'NOT_FOUND' | 'CONFLICT' | 'UNIQUE_VIOLATION' | 'FK_VIOLATION' | 'PAYLOAD_TOO_LARGE' | 'UNKNOWN_IDENTIFIER' | 'RATE_LIMITED' | 'SOURCE_DB_UNREACHABLE' | 'INTERNAL';
11
+ /** The wire shape of every non-2xx response. */
12
+ export interface ErrorEnvelope {
13
+ error: {
14
+ code: string;
15
+ message: string;
16
+ requestId: string;
17
+ details?: unknown;
18
+ };
19
+ }
20
+ /**
21
+ * Builds the §1.4 envelope. `details` is included only when defined so
22
+ * successful `JSON.stringify` output never carries a `"details": undefined`
23
+ * hole (and `exactOptionalPropertyTypes` stays happy).
24
+ */
25
+ export declare function errorEnvelope(code: string, message: string, requestId: string, details?: unknown): ErrorEnvelope;
26
+ /**
27
+ * Base class for expected, route-throwable errors. Carries the HTTP status,
28
+ * the SCREAMING_SNAKE code, and optional Zod-safe JSON `details`.
29
+ */
30
+ export declare class AppError extends Error {
31
+ readonly name: string;
32
+ readonly statusCode: number;
33
+ readonly code: string;
34
+ readonly details: unknown;
35
+ constructor(statusCode: number, code: string, message: string, details?: unknown);
36
+ }
37
+ /** 404 — resource or record absent. */
38
+ export declare class NotFoundError extends AppError {
39
+ readonly name = "NotFoundError";
40
+ constructor(message?: string, details?: unknown);
41
+ }
42
+ /** 422 — Zod schema rejection or semantically invalid input. */
43
+ export declare class ValidationFailedError extends AppError {
44
+ readonly name = "ValidationFailedError";
45
+ constructor(message?: string, details?: unknown);
46
+ }
47
+ /** 401 — no/invalid session (`UNAUTHENTICATED`) or expired (`SESSION_EXPIRED`). */
48
+ export declare class UnauthorizedError extends AppError {
49
+ readonly name = "UnauthorizedError";
50
+ constructor(code?: 'UNAUTHENTICATED' | 'SESSION_EXPIRED', message?: string, details?: unknown);
51
+ }
52
+ /** 403 — RBAC/CSRF denial; `code` narrows the flavor (08-server-api.md §1.4). */
53
+ export declare class ForbiddenError extends AppError {
54
+ readonly name = "ForbiddenError";
55
+ constructor(message?: string, code?: 'FORBIDDEN' | 'TABLE_FORBIDDEN' | 'COLUMN_FORBIDDEN' | 'PAGE_FORBIDDEN' | 'CSRF_FAILED' | 'READ_ONLY_MODE', details?: unknown);
56
+ }
57
+ /** 409 — optimistic-concurrency/state conflict or mapped constraint violation. */
58
+ export declare class ConflictError extends AppError {
59
+ readonly name = "ConflictError";
60
+ constructor(message?: string, code?: 'CONFLICT' | 'UNIQUE_VIOLATION' | 'FK_VIOLATION', details?: unknown);
61
+ }
62
+ /**
63
+ * 429 — thrown by the §6 limiter in `plugins/core.ts` when a bucket is
64
+ * exhausted (08-server-api.md §6); the plugin sets `Retry-After` on the reply
65
+ * before the global handler serializes this envelope. `details` carries
66
+ * `{ bucket, limit, resetAt }` when known.
67
+ */
68
+ export declare class RateLimitedError extends AppError {
69
+ readonly name = "RateLimitedError";
70
+ constructor(message?: string, details?: unknown);
71
+ }
72
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,iFAAiF;AACjF,MAAM,MAAM,SAAS,GACjB,mBAAmB,GACnB,iBAAiB,GACjB,iBAAiB,GACjB,WAAW,GACX,iBAAiB,GACjB,kBAAkB,GAClB,gBAAgB,GAChB,aAAa,GACb,gBAAgB,GAChB,WAAW,GACX,UAAU,GACV,kBAAkB,GAClB,cAAc,GACd,mBAAmB,GACnB,oBAAoB,GACpB,cAAc,GACd,uBAAuB,GACvB,UAAU,CAAC;AAEf,gDAAgD;AAChD,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,CAAC;CACH;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,OAAO,GAChB,aAAa,CAIf;AAED;;;GAGG;AACH,qBAAa,QAAS,SAAQ,KAAK;IACjC,SAAkB,IAAI,EAAE,MAAM,CAAc;IAC5C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;gBAEd,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO;CAMjF;AAED,uCAAuC;AACvC,qBAAa,aAAc,SAAQ,QAAQ;IACzC,SAAkB,IAAI,mBAAmB;gBAE7B,OAAO,SAAwB,EAAE,OAAO,CAAC,EAAE,OAAO;CAG/D;AAED,gEAAgE;AAChE,qBAAa,qBAAsB,SAAQ,QAAQ;IACjD,SAAkB,IAAI,2BAA2B;gBAErC,OAAO,SAA+B,EAAE,OAAO,CAAC,EAAE,OAAO;CAGtE;AAED,mFAAmF;AACnF,qBAAa,iBAAkB,SAAQ,QAAQ;IAC7C,SAAkB,IAAI,uBAAuB;gBAG3C,IAAI,GAAE,iBAAiB,GAAG,iBAAqC,EAC/D,OAAO,SAAwF,EAC/F,OAAO,CAAC,EAAE,OAAO;CAIpB;AAED,iFAAiF;AACjF,qBAAa,cAAe,SAAQ,QAAQ;IAC1C,SAAkB,IAAI,oBAAoB;gBAGxC,OAAO,SAA6C,EACpD,IAAI,GACA,WAAW,GACX,iBAAiB,GACjB,kBAAkB,GAClB,gBAAgB,GAChB,aAAa,GACb,gBAA8B,EAClC,OAAO,CAAC,EAAE,OAAO;CAIpB;AAED,kFAAkF;AAClF,qBAAa,aAAc,SAAQ,QAAQ;IACzC,SAAkB,IAAI,mBAAmB;gBAGvC,OAAO,SAA8C,EACrD,IAAI,GAAE,UAAU,GAAG,kBAAkB,GAAG,cAA2B,EACnE,OAAO,CAAC,EAAE,OAAO;CAIpB;AAED;;;;;GAKG;AACH,qBAAa,gBAAiB,SAAQ,QAAQ;IAC5C,SAAkB,IAAI,sBAAsB;gBAEhC,OAAO,SAA0C,EAAE,OAAO,CAAC,EAAE,OAAO;CAGjF"}
package/dist/errors.js ADDED
@@ -0,0 +1,82 @@
1
+ /**
2
+ * Application errors + the one non-2xx envelope (08-server-api.md §1.4).
3
+ *
4
+ * Every non-2xx response has the shape
5
+ * `{ error: { code, message, requestId, details? } }` with a SCREAMING_SNAKE
6
+ * `code` from the canonical table. Handlers throw `AppError` subclasses; the
7
+ * global error handler in `app.ts` serializes them.
8
+ */
9
+ /**
10
+ * Builds the §1.4 envelope. `details` is included only when defined so
11
+ * successful `JSON.stringify` output never carries a `"details": undefined`
12
+ * hole (and `exactOptionalPropertyTypes` stays happy).
13
+ */
14
+ export function errorEnvelope(code, message, requestId, details) {
15
+ return details === undefined
16
+ ? { error: { code, message, requestId } }
17
+ : { error: { code, message, requestId, details } };
18
+ }
19
+ /**
20
+ * Base class for expected, route-throwable errors. Carries the HTTP status,
21
+ * the SCREAMING_SNAKE code, and optional Zod-safe JSON `details`.
22
+ */
23
+ export class AppError extends Error {
24
+ name = 'AppError';
25
+ statusCode;
26
+ code;
27
+ details;
28
+ constructor(statusCode, code, message, details) {
29
+ super(message);
30
+ this.statusCode = statusCode;
31
+ this.code = code;
32
+ this.details = details;
33
+ }
34
+ }
35
+ /** 404 — resource or record absent. */
36
+ export class NotFoundError extends AppError {
37
+ name = 'NotFoundError';
38
+ constructor(message = 'Resource not found.', details) {
39
+ super(404, 'NOT_FOUND', message, details);
40
+ }
41
+ }
42
+ /** 422 — Zod schema rejection or semantically invalid input. */
43
+ export class ValidationFailedError extends AppError {
44
+ name = 'ValidationFailedError';
45
+ constructor(message = 'Request validation failed.', details) {
46
+ super(422, 'VALIDATION_FAILED', message, details);
47
+ }
48
+ }
49
+ /** 401 — no/invalid session (`UNAUTHENTICATED`) or expired (`SESSION_EXPIRED`). */
50
+ export class UnauthorizedError extends AppError {
51
+ name = 'UnauthorizedError';
52
+ constructor(code = 'UNAUTHENTICATED', message = code === 'SESSION_EXPIRED' ? 'Your session has expired.' : 'Authentication required.', details) {
53
+ super(401, code, message, details);
54
+ }
55
+ }
56
+ /** 403 — RBAC/CSRF denial; `code` narrows the flavor (08-server-api.md §1.4). */
57
+ export class ForbiddenError extends AppError {
58
+ name = 'ForbiddenError';
59
+ constructor(message = 'You do not have access to this resource.', code = 'FORBIDDEN', details) {
60
+ super(403, code, message, details);
61
+ }
62
+ }
63
+ /** 409 — optimistic-concurrency/state conflict or mapped constraint violation. */
64
+ export class ConflictError extends AppError {
65
+ name = 'ConflictError';
66
+ constructor(message = 'The resource changed since you loaded it.', code = 'CONFLICT', details) {
67
+ super(409, code, message, details);
68
+ }
69
+ }
70
+ /**
71
+ * 429 — thrown by the §6 limiter in `plugins/core.ts` when a bucket is
72
+ * exhausted (08-server-api.md §6); the plugin sets `Retry-After` on the reply
73
+ * before the global handler serializes this envelope. `details` carries
74
+ * `{ bucket, limit, resetAt }` when known.
75
+ */
76
+ export class RateLimitedError extends AppError {
77
+ name = 'RateLimitedError';
78
+ constructor(message = 'Too many requests. Try again shortly.', details) {
79
+ super(429, 'RATE_LIMITED', message, details);
80
+ }
81
+ }
82
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAiCH;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAC3B,IAAY,EACZ,OAAe,EACf,SAAiB,EACjB,OAAiB;IAEjB,OAAO,OAAO,KAAK,SAAS;QAC1B,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE;QACzC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,CAAC;AACvD,CAAC;AAED;;;GAGG;AACH,MAAM,OAAO,QAAS,SAAQ,KAAK;IACf,IAAI,GAAW,UAAU,CAAC;IACnC,UAAU,CAAS;IACnB,IAAI,CAAS;IACb,OAAO,CAAU;IAE1B,YAAY,UAAkB,EAAE,IAAY,EAAE,OAAe,EAAE,OAAiB;QAC9E,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;CACF;AAED,uCAAuC;AACvC,MAAM,OAAO,aAAc,SAAQ,QAAQ;IACvB,IAAI,GAAG,eAAe,CAAC;IAEzC,YAAY,OAAO,GAAG,qBAAqB,EAAE,OAAiB;QAC5D,KAAK,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC5C,CAAC;CACF;AAED,gEAAgE;AAChE,MAAM,OAAO,qBAAsB,SAAQ,QAAQ;IAC/B,IAAI,GAAG,uBAAuB,CAAC;IAEjD,YAAY,OAAO,GAAG,4BAA4B,EAAE,OAAiB;QACnE,KAAK,CAAC,GAAG,EAAE,mBAAmB,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;CACF;AAED,mFAAmF;AACnF,MAAM,OAAO,iBAAkB,SAAQ,QAAQ;IAC3B,IAAI,GAAG,mBAAmB,CAAC;IAE7C,YACE,OAA8C,iBAAiB,EAC/D,OAAO,GAAG,IAAI,KAAK,iBAAiB,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,0BAA0B,EAC/F,OAAiB;QAEjB,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACrC,CAAC;CACF;AAED,iFAAiF;AACjF,MAAM,OAAO,cAAe,SAAQ,QAAQ;IACxB,IAAI,GAAG,gBAAgB,CAAC;IAE1C,YACE,OAAO,GAAG,0CAA0C,EACpD,OAMuB,WAAW,EAClC,OAAiB;QAEjB,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACrC,CAAC;CACF;AAED,kFAAkF;AAClF,MAAM,OAAO,aAAc,SAAQ,QAAQ;IACvB,IAAI,GAAG,eAAe,CAAC;IAEzC,YACE,OAAO,GAAG,2CAA2C,EACrD,OAAyD,UAAU,EACnE,OAAiB;QAEjB,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACrC,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,OAAO,gBAAiB,SAAQ,QAAQ;IAC1B,IAAI,GAAG,kBAAkB,CAAC;IAE5C,YAAY,OAAO,GAAG,uCAAuC,EAAE,OAAiB;QAC9E,KAAK,CAAC,GAAG,EAAE,cAAc,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC/C,CAAC;CACF"}
@@ -0,0 +1,235 @@
1
+ /**
2
+ * The bundle format: layout, manifest, and the Zod schemas both front doors
3
+ * (export, import) validate against (M10-T03; 01-architecture.md §6.1, §8.2).
4
+ *
5
+ * ─────────────────────────────────────────────────────────────────────────────
6
+ * WHAT THIS IS, STATED ONCE SO IT CANNOT DRIFT: an Adminium bundle is
7
+ * **configuration for a server, not a server and not source code**. Adminium
8
+ * interprets config at runtime; it never emits an app. The bundle therefore
9
+ * carries the instance's `adminium_*` config content as portable JSON, plus a
10
+ * manifest that pins the versions needed to replay it, plus a README saying
11
+ * exactly this. `package.json` in the bundle pins the `@adminiumjs/adminium` npm package at
12
+ * the exporting version — per 01 §4.1 that single package *is* the complete
13
+ * install (server + dashboard dist + meta migrations), so pinning it is how the
14
+ * bundle names its runtime without shipping (unshippable, platform-specific,
15
+ * natively-compiled) copies of it.
16
+ * ─────────────────────────────────────────────────────────────────────────────
17
+ *
18
+ * VERSION REPLAY (§8.2): the manifest embeds `{ appVersion, configVersion,
19
+ * metaVersion }`. On import the meta migrator brings the target schema up, and
20
+ * `runConfigMigrations` from `@adminium/engine/config` replays every config
21
+ * document's `v` up to the running build's — so a bundle exported at N imports
22
+ * into any instance at ≥ N. A bundle from a *newer* build is refused rather
23
+ * than silently half-read.
24
+ */
25
+ import { z } from 'zod';
26
+ /** Bundle root inside the archive — one directory, so unzipping is tidy. */
27
+ export declare const BUNDLE_ROOT = "adminium-export";
28
+ export declare const MANIFEST_PATH = "adminium-export/manifest.json";
29
+ export declare const README_PATH = "adminium-export/README.md";
30
+ export declare const PACKAGE_JSON_PATH = "adminium-export/package.json";
31
+ export declare const CONFIG_DIR = "adminium-export/config";
32
+ /** The config resources the bundle carries, in import (FK-safe) order. */
33
+ export declare const BUNDLE_RESOURCES: readonly ["settings", "roles", "rolePermissions", "connections", "snapshots", "overrides", "pages", "views"];
34
+ export type BundleResource = (typeof BUNDLE_RESOURCES)[number];
35
+ export declare function resourcePath(resource: BundleResource): string;
36
+ /**
37
+ * How secrets were treated. `omitted` is the default and means the target must
38
+ * re-enter DSNs and provider keys. `encrypted` means the ciphertext travelled
39
+ * and only the *same* `ADMINIUM_SECRET` can re-open it — stated explicitly so a
40
+ * bundle can never be mistaken for a self-contained credential store.
41
+ */
42
+ export declare const secretsPolicySchema: z.ZodEnum<{
43
+ omitted: "omitted";
44
+ encrypted: "encrypted";
45
+ }>;
46
+ export type SecretsPolicy = z.infer<typeof secretsPolicySchema>;
47
+ export declare const bundleManifestSchema: z.ZodObject<{
48
+ formatVersion: z.ZodNumber;
49
+ appVersion: z.ZodString;
50
+ configVersion: z.ZodNumber;
51
+ metaVersion: z.ZodString;
52
+ exportedAt: z.ZodNumber;
53
+ connectionId: z.ZodNullable<z.ZodString>;
54
+ secrets: z.ZodObject<{
55
+ policy: z.ZodEnum<{
56
+ omitted: "omitted";
57
+ encrypted: "encrypted";
58
+ }>;
59
+ encrypted: z.ZodArray<z.ZodString>;
60
+ omitted: z.ZodArray<z.ZodString>;
61
+ }, z.core.$strip>;
62
+ counts: z.ZodRecord<z.ZodString, z.ZodNumber>;
63
+ }, z.core.$strip>;
64
+ export type BundleManifest = z.infer<typeof bundleManifestSchema>;
65
+ export declare const settingsRowSchema: z.ZodObject<{
66
+ key: z.ZodString;
67
+ value: z.ZodUnknown;
68
+ }, z.core.$strip>;
69
+ export declare const roleRowSchema: z.ZodObject<{
70
+ id: z.ZodString;
71
+ slug: z.ZodString;
72
+ name: z.ZodString;
73
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
74
+ isBuiltin: z.ZodBoolean;
75
+ }, z.core.$strip>;
76
+ export declare const rolePermissionRowSchema: z.ZodObject<{
77
+ id: z.ZodString;
78
+ roleId: z.ZodString;
79
+ resourceKind: z.ZodString;
80
+ resourceRef: z.ZodString;
81
+ actions: z.ZodUnknown;
82
+ }, z.core.$strip>;
83
+ export declare const connectionRowSchema: z.ZodObject<{
84
+ id: z.ZodString;
85
+ name: z.ZodString;
86
+ engine: z.ZodString;
87
+ sourceKind: z.ZodString;
88
+ readOnly: z.ZodBoolean;
89
+ ssl: z.ZodOptional<z.ZodNullable<z.ZodUnknown>>;
90
+ settings: z.ZodUnknown;
91
+ introspectDsnEncrypted: z.ZodOptional<z.ZodNullable<z.ZodString>>;
92
+ dataDsnEncrypted: z.ZodOptional<z.ZodNullable<z.ZodString>>;
93
+ }, z.core.$strip>;
94
+ export declare const snapshotRowSchema: z.ZodObject<{
95
+ id: z.ZodString;
96
+ connectionId: z.ZodString;
97
+ source: z.ZodString;
98
+ importFormat: z.ZodOptional<z.ZodNullable<z.ZodString>>;
99
+ engineVersion: z.ZodOptional<z.ZodNullable<z.ZodString>>;
100
+ schema: z.ZodUnknown;
101
+ stats: z.ZodOptional<z.ZodNullable<z.ZodUnknown>>;
102
+ checksum: z.ZodString;
103
+ isActive: z.ZodBoolean;
104
+ }, z.core.$strip>;
105
+ export declare const overrideRowSchema: z.ZodObject<{
106
+ id: z.ZodString;
107
+ connectionId: z.ZodString;
108
+ op: z.ZodString;
109
+ tableName: z.ZodString;
110
+ columnName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
111
+ value: z.ZodUnknown;
112
+ origin: z.ZodString;
113
+ status: z.ZodString;
114
+ confidence: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
115
+ }, z.core.$strip>;
116
+ export declare const pageRowSchema: z.ZodObject<{
117
+ id: z.ZodString;
118
+ connectionId: z.ZodNullable<z.ZodString>;
119
+ slug: z.ZodString;
120
+ type: z.ZodString;
121
+ title: z.ZodString;
122
+ icon: z.ZodOptional<z.ZodNullable<z.ZodString>>;
123
+ navGroup: z.ZodOptional<z.ZodNullable<z.ZodString>>;
124
+ navOrder: z.ZodNumber;
125
+ config: z.ZodUnknown;
126
+ origin: z.ZodString;
127
+ generatedFromSnapshotId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
128
+ isEnabled: z.ZodBoolean;
129
+ }, z.core.$strip>;
130
+ export declare const viewRowSchema: z.ZodObject<{
131
+ id: z.ZodString;
132
+ pageId: z.ZodString;
133
+ kind: z.ZodString;
134
+ name: z.ZodString;
135
+ config: z.ZodUnknown;
136
+ isDefault: z.ZodBoolean;
137
+ }, z.core.$strip>;
138
+ /** Resource name → row schema. The import iterates this, so a resource without
139
+ * a schema cannot be imported by accident. */
140
+ export declare const RESOURCE_SCHEMAS: {
141
+ readonly settings: z.ZodObject<{
142
+ key: z.ZodString;
143
+ value: z.ZodUnknown;
144
+ }, z.core.$strip>;
145
+ readonly roles: z.ZodObject<{
146
+ id: z.ZodString;
147
+ slug: z.ZodString;
148
+ name: z.ZodString;
149
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
150
+ isBuiltin: z.ZodBoolean;
151
+ }, z.core.$strip>;
152
+ readonly rolePermissions: z.ZodObject<{
153
+ id: z.ZodString;
154
+ roleId: z.ZodString;
155
+ resourceKind: z.ZodString;
156
+ resourceRef: z.ZodString;
157
+ actions: z.ZodUnknown;
158
+ }, z.core.$strip>;
159
+ readonly connections: z.ZodObject<{
160
+ id: z.ZodString;
161
+ name: z.ZodString;
162
+ engine: z.ZodString;
163
+ sourceKind: z.ZodString;
164
+ readOnly: z.ZodBoolean;
165
+ ssl: z.ZodOptional<z.ZodNullable<z.ZodUnknown>>;
166
+ settings: z.ZodUnknown;
167
+ introspectDsnEncrypted: z.ZodOptional<z.ZodNullable<z.ZodString>>;
168
+ dataDsnEncrypted: z.ZodOptional<z.ZodNullable<z.ZodString>>;
169
+ }, z.core.$strip>;
170
+ readonly snapshots: z.ZodObject<{
171
+ id: z.ZodString;
172
+ connectionId: z.ZodString;
173
+ source: z.ZodString;
174
+ importFormat: z.ZodOptional<z.ZodNullable<z.ZodString>>;
175
+ engineVersion: z.ZodOptional<z.ZodNullable<z.ZodString>>;
176
+ schema: z.ZodUnknown;
177
+ stats: z.ZodOptional<z.ZodNullable<z.ZodUnknown>>;
178
+ checksum: z.ZodString;
179
+ isActive: z.ZodBoolean;
180
+ }, z.core.$strip>;
181
+ readonly overrides: z.ZodObject<{
182
+ id: z.ZodString;
183
+ connectionId: z.ZodString;
184
+ op: z.ZodString;
185
+ tableName: z.ZodString;
186
+ columnName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
187
+ value: z.ZodUnknown;
188
+ origin: z.ZodString;
189
+ status: z.ZodString;
190
+ confidence: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
191
+ }, z.core.$strip>;
192
+ readonly pages: z.ZodObject<{
193
+ id: z.ZodString;
194
+ connectionId: z.ZodNullable<z.ZodString>;
195
+ slug: z.ZodString;
196
+ type: z.ZodString;
197
+ title: z.ZodString;
198
+ icon: z.ZodOptional<z.ZodNullable<z.ZodString>>;
199
+ navGroup: z.ZodOptional<z.ZodNullable<z.ZodString>>;
200
+ navOrder: z.ZodNumber;
201
+ config: z.ZodUnknown;
202
+ origin: z.ZodString;
203
+ generatedFromSnapshotId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
204
+ isEnabled: z.ZodBoolean;
205
+ }, z.core.$strip>;
206
+ readonly views: z.ZodObject<{
207
+ id: z.ZodString;
208
+ pageId: z.ZodString;
209
+ kind: z.ZodString;
210
+ name: z.ZodString;
211
+ config: z.ZodUnknown;
212
+ isDefault: z.ZodBoolean;
213
+ }, z.core.$strip>;
214
+ };
215
+ export type SettingsRow = z.infer<typeof settingsRowSchema>;
216
+ export type RoleRow = z.infer<typeof roleRowSchema>;
217
+ export type RolePermissionRow = z.infer<typeof rolePermissionRowSchema>;
218
+ export type ConnectionRow = z.infer<typeof connectionRowSchema>;
219
+ export type SnapshotRow = z.infer<typeof snapshotRowSchema>;
220
+ export type OverrideRow = z.infer<typeof overrideRowSchema>;
221
+ export type PageRow = z.infer<typeof pageRowSchema>;
222
+ export type ViewRow = z.infer<typeof viewRowSchema>;
223
+ /** The in-memory shape of a whole bundle — what export writes and import reads. */
224
+ export interface ConfigBundle {
225
+ manifest: BundleManifest;
226
+ settings: SettingsRow[];
227
+ roles: RoleRow[];
228
+ rolePermissions: RolePermissionRow[];
229
+ connections: ConnectionRow[];
230
+ snapshots: SnapshotRow[];
231
+ overrides: OverrideRow[];
232
+ pages: PageRow[];
233
+ views: ViewRow[];
234
+ }
235
+ //# sourceMappingURL=bundle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../../src/export/bundle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,4EAA4E;AAC5E,eAAO,MAAM,WAAW,oBAAoB,CAAC;AAE7C,eAAO,MAAM,aAAa,kCAAiC,CAAC;AAC5D,eAAO,MAAM,WAAW,8BAA6B,CAAC;AACtD,eAAO,MAAM,iBAAiB,iCAAgC,CAAC;AAC/D,eAAO,MAAM,UAAU,2BAA0B,CAAC;AAElD,0EAA0E;AAC1E,eAAO,MAAM,gBAAgB,8GASnB,CAAC;AAEX,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE/D,wBAAgB,YAAY,CAAC,QAAQ,EAAE,cAAc,GAAG,MAAM,CAE7D;AAID;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB;;;EAAmC,CAAC;AACpE,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;iBAuB/B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAelE,eAAO,MAAM,iBAAiB;;;iBAAyD,CAAC;AAExF,eAAO,MAAM,aAAa;;;;;;iBAMxB,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;;;;iBAMlC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;iBAW9B,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;iBAU5B,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;iBAU5B,CAAC;AAEH,eAAO,MAAM,aAAa;;;;;;;;;;;;;iBAaxB,CAAC;AAEH,eAAO,MAAM,aAAa;;;;;;;iBAOxB,CAAC;AAEH;+CAC+C;AAC/C,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CASyB,CAAC;AAEvD,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AACpD,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AACpD,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAEpD,mFAAmF;AACnF,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,cAAc,CAAC;IACzB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,KAAK,EAAE,OAAO,EAAE,CAAC;IACjB,eAAe,EAAE,iBAAiB,EAAE,CAAC;IACrC,WAAW,EAAE,aAAa,EAAE,CAAC;IAC7B,SAAS,EAAE,WAAW,EAAE,CAAC;IACzB,SAAS,EAAE,WAAW,EAAE,CAAC;IACzB,KAAK,EAAE,OAAO,EAAE,CAAC;IACjB,KAAK,EAAE,OAAO,EAAE,CAAC;CAClB"}