@qlever-llc/trellis 0.8.4 → 0.9.0-rc.10

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 (693) hide show
  1. package/README.md +1 -1
  2. package/bin/trellis-generate.js +0 -0
  3. package/esm/auth/browser/login.d.ts.map +1 -1
  4. package/esm/auth/browser/login.js +46 -3
  5. package/esm/auth/browser/portal.d.ts.map +1 -1
  6. package/esm/auth/browser/portal.js +5 -1
  7. package/esm/auth/browser/session.d.ts +18 -7
  8. package/esm/auth/browser/session.d.ts.map +1 -1
  9. package/esm/auth/browser/session.js +47 -11
  10. package/esm/auth/browser/storage.d.ts +6 -1
  11. package/esm/auth/browser/storage.d.ts.map +1 -1
  12. package/esm/auth/browser/storage.js +15 -3
  13. package/esm/auth/browser.d.ts +2 -2
  14. package/esm/auth/browser.d.ts.map +1 -1
  15. package/esm/auth/browser.js +1 -1
  16. package/esm/auth/device_activation.d.ts +36 -33
  17. package/esm/auth/device_activation.d.ts.map +1 -1
  18. package/esm/auth/device_activation.js +26 -22
  19. package/esm/auth/mod.d.ts +4 -4
  20. package/esm/auth/mod.d.ts.map +1 -1
  21. package/esm/auth/mod.js +2 -2
  22. package/esm/auth/proof.d.ts +3 -1
  23. package/esm/auth/proof.d.ts.map +1 -1
  24. package/esm/auth/proof.js +21 -15
  25. package/esm/auth/protocol.d.ts +2457 -941
  26. package/esm/auth/protocol.d.ts.map +1 -1
  27. package/esm/auth/protocol.js +747 -375
  28. package/esm/auth/schemas.d.ts +25 -4
  29. package/esm/auth/schemas.d.ts.map +1 -1
  30. package/esm/auth/schemas.js +14 -4
  31. package/esm/auth/session_auth.d.ts +1 -1
  32. package/esm/auth/session_auth.d.ts.map +1 -1
  33. package/esm/auth/session_auth.js +7 -1
  34. package/esm/client_connect.d.ts +2 -0
  35. package/esm/client_connect.d.ts.map +1 -1
  36. package/esm/client_connect.js +76 -15
  37. package/esm/contract.d.ts +3 -0
  38. package/esm/contract.d.ts.map +1 -1
  39. package/esm/contract_support/mod.d.ts +422 -43
  40. package/esm/contract_support/mod.d.ts.map +1 -1
  41. package/esm/contract_support/mod.js +734 -33
  42. package/esm/contract_support/protocol.d.ts +20 -5
  43. package/esm/contract_support/protocol.d.ts.map +1 -1
  44. package/esm/contract_support/protocol.js +18 -10
  45. package/esm/contract_support/runtime.d.ts +11 -0
  46. package/esm/contract_support/runtime.d.ts.map +1 -1
  47. package/esm/contract_support/schema_pointers.d.ts.map +1 -1
  48. package/esm/contract_support/schema_pointers.js +32 -14
  49. package/esm/device.d.ts +2 -0
  50. package/esm/device.d.ts.map +1 -1
  51. package/esm/device.js +3 -0
  52. package/esm/errors/AuthError.d.ts +2 -1
  53. package/esm/errors/AuthError.d.ts.map +1 -1
  54. package/esm/errors/AuthError.js +8 -3
  55. package/esm/errors/index.d.ts +4 -4
  56. package/esm/errors/index.d.ts.map +1 -1
  57. package/esm/errors/index.js +1 -0
  58. package/esm/generated-sdk/auth/api.d.ts +27 -9
  59. package/esm/generated-sdk/auth/api.d.ts.map +1 -1
  60. package/esm/generated-sdk/auth/api.js +16 -590
  61. package/esm/generated-sdk/auth/client.d.ts +91 -85
  62. package/esm/generated-sdk/auth/client.d.ts.map +1 -1
  63. package/esm/generated-sdk/auth/contract.d.ts +1 -1
  64. package/esm/generated-sdk/auth/contract.d.ts.map +1 -1
  65. package/esm/generated-sdk/auth/contract.js +4 -2
  66. package/esm/generated-sdk/auth/mod.d.ts +1 -0
  67. package/esm/generated-sdk/auth/mod.d.ts.map +1 -1
  68. package/esm/generated-sdk/auth/owned_api.d.ts +3 -0
  69. package/esm/generated-sdk/auth/owned_api.d.ts.map +1 -0
  70. package/esm/generated-sdk/auth/owned_api.js +594 -0
  71. package/esm/generated-sdk/auth/schemas.d.ts +9959 -5160
  72. package/esm/generated-sdk/auth/schemas.d.ts.map +1 -1
  73. package/esm/generated-sdk/auth/schemas.js +136 -137
  74. package/esm/generated-sdk/auth/types.d.ts +2418 -1557
  75. package/esm/generated-sdk/auth/types.d.ts.map +1 -1
  76. package/esm/generated-sdk/auth/types.js +1 -1
  77. package/esm/generated-sdk/health/api.d.ts +24 -9
  78. package/esm/generated-sdk/health/api.d.ts.map +1 -1
  79. package/esm/generated-sdk/health/api.js +12 -20
  80. package/esm/generated-sdk/health/client.d.ts +2 -1
  81. package/esm/generated-sdk/health/client.d.ts.map +1 -1
  82. package/esm/generated-sdk/health/contract.d.ts.map +1 -1
  83. package/esm/generated-sdk/health/contract.js +2 -0
  84. package/esm/generated-sdk/health/owned_api.d.ts +3 -0
  85. package/esm/generated-sdk/health/owned_api.d.ts.map +1 -0
  86. package/esm/generated-sdk/health/owned_api.js +16 -0
  87. package/esm/generated-sdk/health/types.d.ts +2 -0
  88. package/esm/generated-sdk/health/types.d.ts.map +1 -1
  89. package/esm/generated-sdk/jobs/api.d.ts +33 -9
  90. package/esm/generated-sdk/jobs/api.d.ts.map +1 -1
  91. package/esm/generated-sdk/jobs/api.js +22 -87
  92. package/esm/generated-sdk/jobs/client.d.ts +9 -2
  93. package/esm/generated-sdk/jobs/client.d.ts.map +1 -1
  94. package/esm/generated-sdk/jobs/contract.d.ts +1 -1
  95. package/esm/generated-sdk/jobs/contract.d.ts.map +1 -1
  96. package/esm/generated-sdk/jobs/contract.js +4 -2
  97. package/esm/generated-sdk/jobs/owned_api.d.ts +3 -0
  98. package/esm/generated-sdk/jobs/owned_api.d.ts.map +1 -0
  99. package/esm/generated-sdk/jobs/owned_api.js +118 -0
  100. package/esm/generated-sdk/jobs/schemas.d.ts +336 -123
  101. package/esm/generated-sdk/jobs/schemas.d.ts.map +1 -1
  102. package/esm/generated-sdk/jobs/schemas.js +17 -15
  103. package/esm/generated-sdk/jobs/types.d.ts +144 -34
  104. package/esm/generated-sdk/jobs/types.d.ts.map +1 -1
  105. package/esm/generated-sdk/jobs/types.js +36 -1
  106. package/esm/generated-sdk/state/api.d.ts +27 -9
  107. package/esm/generated-sdk/state/api.d.ts.map +1 -1
  108. package/esm/generated-sdk/state/api.js +16 -71
  109. package/esm/generated-sdk/state/client.d.ts +4 -2
  110. package/esm/generated-sdk/state/client.d.ts.map +1 -1
  111. package/esm/generated-sdk/state/contract.d.ts +1 -1
  112. package/esm/generated-sdk/state/contract.d.ts.map +1 -1
  113. package/esm/generated-sdk/state/contract.js +4 -2
  114. package/esm/generated-sdk/state/owned_api.d.ts +3 -0
  115. package/esm/generated-sdk/state/owned_api.d.ts.map +1 -0
  116. package/esm/generated-sdk/state/owned_api.js +66 -0
  117. package/esm/generated-sdk/state/schemas.d.ts +264 -284
  118. package/esm/generated-sdk/state/schemas.d.ts.map +1 -1
  119. package/esm/generated-sdk/state/schemas.js +6 -6
  120. package/esm/generated-sdk/state/types.d.ts +24 -23
  121. package/esm/generated-sdk/state/types.d.ts.map +1 -1
  122. package/esm/generated-sdk/state/types.js +1 -1
  123. package/esm/generated-sdk/trellis-core/api.d.ts +27 -9
  124. package/esm/generated-sdk/trellis-core/api.d.ts.map +1 -1
  125. package/esm/generated-sdk/trellis-core/api.js +16 -39
  126. package/esm/generated-sdk/trellis-core/client.d.ts +5 -2
  127. package/esm/generated-sdk/trellis-core/client.d.ts.map +1 -1
  128. package/esm/generated-sdk/trellis-core/contract.d.ts +1 -1
  129. package/esm/generated-sdk/trellis-core/contract.d.ts.map +1 -1
  130. package/esm/generated-sdk/trellis-core/contract.js +4 -2
  131. package/esm/generated-sdk/trellis-core/owned_api.d.ts +3 -0
  132. package/esm/generated-sdk/trellis-core/owned_api.d.ts.map +1 -0
  133. package/esm/generated-sdk/trellis-core/owned_api.js +42 -0
  134. package/esm/generated-sdk/trellis-core/schemas.d.ts +259 -11
  135. package/esm/generated-sdk/trellis-core/schemas.d.ts.map +1 -1
  136. package/esm/generated-sdk/trellis-core/schemas.js +5 -3
  137. package/esm/generated-sdk/trellis-core/types.d.ts +56 -1
  138. package/esm/generated-sdk/trellis-core/types.d.ts.map +1 -1
  139. package/esm/generated-sdk/trellis-core/types.js +1 -1
  140. package/esm/helpers.d.ts.map +1 -1
  141. package/esm/index.d.ts +4 -3
  142. package/esm/index.d.ts.map +1 -1
  143. package/esm/index.js +1 -0
  144. package/esm/jobs.d.ts +10 -1
  145. package/esm/jobs.d.ts.map +1 -1
  146. package/esm/jobs.js +16 -1
  147. package/esm/kv.d.ts.map +1 -1
  148. package/esm/kv.js +10 -4
  149. package/esm/models/auth/rpc/Logout.d.ts +4 -4
  150. package/esm/models/auth/rpc/Logout.d.ts.map +1 -1
  151. package/esm/models/auth/rpc/Logout.js +2 -2
  152. package/esm/models/trellis/Page.d.ts +2 -0
  153. package/esm/models/trellis/Page.d.ts.map +1 -0
  154. package/esm/models/trellis/Page.js +1 -0
  155. package/esm/models/trellis/State.d.ts +1 -0
  156. package/esm/models/trellis/State.d.ts.map +1 -1
  157. package/esm/models/trellis/State.js +1 -0
  158. package/esm/models/trellis/rpc/StateList.d.ts +9 -12
  159. package/esm/models/trellis/rpc/StateList.d.ts.map +1 -1
  160. package/esm/models/trellis/rpc/StateList.js +16 -18
  161. package/esm/npm/src/auth/browser/login.d.ts.map +1 -1
  162. package/esm/npm/src/auth/browser/login.js +46 -3
  163. package/esm/npm/src/auth/browser/portal.d.ts.map +1 -1
  164. package/esm/npm/src/auth/browser/portal.js +5 -1
  165. package/esm/npm/src/auth/browser/session.d.ts +18 -7
  166. package/esm/npm/src/auth/browser/session.d.ts.map +1 -1
  167. package/esm/npm/src/auth/browser/session.js +47 -11
  168. package/esm/npm/src/auth/browser/storage.d.ts +6 -1
  169. package/esm/npm/src/auth/browser/storage.d.ts.map +1 -1
  170. package/esm/npm/src/auth/browser/storage.js +15 -3
  171. package/esm/npm/src/auth/browser.d.ts +2 -2
  172. package/esm/npm/src/auth/browser.d.ts.map +1 -1
  173. package/esm/npm/src/auth/browser.js +1 -1
  174. package/esm/npm/src/auth/device_activation.d.ts +36 -33
  175. package/esm/npm/src/auth/device_activation.d.ts.map +1 -1
  176. package/esm/npm/src/auth/device_activation.js +26 -22
  177. package/esm/npm/src/auth/mod.d.ts +4 -4
  178. package/esm/npm/src/auth/mod.d.ts.map +1 -1
  179. package/esm/npm/src/auth/mod.js +2 -2
  180. package/esm/npm/src/auth/proof.d.ts +3 -1
  181. package/esm/npm/src/auth/proof.d.ts.map +1 -1
  182. package/esm/npm/src/auth/proof.js +21 -15
  183. package/esm/npm/src/auth/protocol.d.ts +2457 -941
  184. package/esm/npm/src/auth/protocol.d.ts.map +1 -1
  185. package/esm/npm/src/auth/protocol.js +747 -375
  186. package/esm/npm/src/auth/schemas.d.ts +25 -4
  187. package/esm/npm/src/auth/schemas.d.ts.map +1 -1
  188. package/esm/npm/src/auth/schemas.js +14 -4
  189. package/esm/npm/src/auth/session_auth.d.ts +1 -1
  190. package/esm/npm/src/auth/session_auth.d.ts.map +1 -1
  191. package/esm/npm/src/auth/session_auth.js +7 -1
  192. package/esm/npm/src/client_connect.d.ts +2 -0
  193. package/esm/npm/src/client_connect.d.ts.map +1 -1
  194. package/esm/npm/src/client_connect.js +76 -15
  195. package/esm/npm/src/contract.d.ts +3 -0
  196. package/esm/npm/src/contract.d.ts.map +1 -1
  197. package/esm/npm/src/contract_support/mod.d.ts +422 -43
  198. package/esm/npm/src/contract_support/mod.d.ts.map +1 -1
  199. package/esm/npm/src/contract_support/mod.js +734 -33
  200. package/esm/npm/src/contract_support/protocol.d.ts +20 -5
  201. package/esm/npm/src/contract_support/protocol.d.ts.map +1 -1
  202. package/esm/npm/src/contract_support/protocol.js +18 -10
  203. package/esm/npm/src/contract_support/runtime.d.ts +11 -0
  204. package/esm/npm/src/contract_support/runtime.d.ts.map +1 -1
  205. package/esm/npm/src/contract_support/schema_pointers.d.ts.map +1 -1
  206. package/esm/npm/src/contract_support/schema_pointers.js +32 -14
  207. package/esm/npm/src/device/deno.d.ts.map +1 -1
  208. package/esm/npm/src/device/deno.js +6 -0
  209. package/esm/npm/src/device.d.ts +2 -0
  210. package/esm/npm/src/device.d.ts.map +1 -1
  211. package/esm/npm/src/device.js +3 -0
  212. package/esm/npm/src/errors/AuthError.d.ts +2 -1
  213. package/esm/npm/src/errors/AuthError.d.ts.map +1 -1
  214. package/esm/npm/src/errors/AuthError.js +8 -3
  215. package/esm/npm/src/errors/index.d.ts +4 -4
  216. package/esm/npm/src/errors/index.d.ts.map +1 -1
  217. package/esm/npm/src/errors/index.js +1 -0
  218. package/esm/npm/src/generate.js +39 -26
  219. package/esm/npm/src/helpers.d.ts.map +1 -1
  220. package/esm/npm/src/index.d.ts +4 -3
  221. package/esm/npm/src/index.d.ts.map +1 -1
  222. package/esm/npm/src/index.js +1 -0
  223. package/esm/npm/src/jobs.d.ts +10 -1
  224. package/esm/npm/src/jobs.d.ts.map +1 -1
  225. package/esm/npm/src/jobs.js +16 -1
  226. package/esm/npm/src/kv.d.ts.map +1 -1
  227. package/esm/npm/src/kv.js +10 -4
  228. package/esm/npm/src/models/auth/rpc/Logout.d.ts +4 -4
  229. package/esm/npm/src/models/auth/rpc/Logout.d.ts.map +1 -1
  230. package/esm/npm/src/models/auth/rpc/Logout.js +2 -2
  231. package/esm/npm/src/models/trellis/Page.d.ts +2 -0
  232. package/esm/npm/src/models/trellis/Page.d.ts.map +1 -0
  233. package/esm/npm/src/models/trellis/Page.js +1 -0
  234. package/esm/npm/src/models/trellis/State.d.ts +1 -0
  235. package/esm/npm/src/models/trellis/State.d.ts.map +1 -1
  236. package/esm/npm/src/models/trellis/State.js +1 -0
  237. package/esm/npm/src/models/trellis/rpc/StateList.d.ts +9 -12
  238. package/esm/npm/src/models/trellis/rpc/StateList.d.ts.map +1 -1
  239. package/esm/npm/src/models/trellis/rpc/StateList.js +16 -18
  240. package/esm/npm/src/operations.d.ts +16 -7
  241. package/esm/npm/src/operations.d.ts.map +1 -1
  242. package/esm/npm/src/operations.js +84 -19
  243. package/esm/npm/src/runtime_transport.d.ts +2 -0
  244. package/esm/npm/src/runtime_transport.d.ts.map +1 -1
  245. package/esm/npm/src/runtime_transport.js +1 -0
  246. package/esm/npm/src/server/internal_jobs/active-job.d.ts +2 -1
  247. package/esm/npm/src/server/internal_jobs/active-job.d.ts.map +1 -1
  248. package/esm/npm/src/server/internal_jobs/active-job.js +3 -0
  249. package/esm/npm/src/server/internal_jobs/job-manager.d.ts +4 -1
  250. package/esm/npm/src/server/internal_jobs/job-manager.d.ts.map +1 -1
  251. package/esm/npm/src/server/internal_jobs/job-manager.js +61 -1
  252. package/esm/npm/src/server/internal_jobs/projection.js +1 -0
  253. package/esm/npm/src/server/internal_jobs/runtime-worker.d.ts +13 -1
  254. package/esm/npm/src/server/internal_jobs/runtime-worker.d.ts.map +1 -1
  255. package/esm/npm/src/server/internal_jobs/runtime-worker.js +73 -13
  256. package/esm/npm/src/server/internal_jobs/types.d.ts +19 -0
  257. package/esm/npm/src/server/internal_jobs/types.d.ts.map +1 -1
  258. package/esm/npm/src/server/internal_jobs/types.js +10 -0
  259. package/esm/npm/src/server/runtime.d.ts +1 -0
  260. package/esm/npm/src/server/runtime.d.ts.map +1 -1
  261. package/esm/npm/src/server/service.d.ts +10 -1
  262. package/esm/npm/src/server/service.d.ts.map +1 -1
  263. package/esm/npm/src/server/service.js +210 -64
  264. package/esm/npm/src/server/transfer.d.ts.map +1 -1
  265. package/esm/npm/src/server/transfer.js +4 -0
  266. package/esm/npm/src/server.d.ts.map +1 -1
  267. package/esm/npm/src/server.js +337 -34
  268. package/esm/npm/src/store.d.ts +8 -1
  269. package/esm/npm/src/store.d.ts.map +1 -1
  270. package/esm/npm/src/store.js +46 -8
  271. package/esm/npm/src/transfer.d.ts +3 -0
  272. package/esm/npm/src/transfer.d.ts.map +1 -1
  273. package/esm/npm/src/transfer.js +20 -30
  274. package/esm/npm/src/trellis.d.ts +85 -22
  275. package/esm/npm/src/trellis.d.ts.map +1 -1
  276. package/esm/npm/src/trellis.js +525 -61
  277. package/esm/operations.d.ts +16 -7
  278. package/esm/operations.d.ts.map +1 -1
  279. package/esm/operations.js +84 -19
  280. package/esm/runtime_transport.d.ts +2 -0
  281. package/esm/runtime_transport.d.ts.map +1 -1
  282. package/esm/runtime_transport.js +1 -0
  283. package/esm/store.d.ts +8 -1
  284. package/esm/store.d.ts.map +1 -1
  285. package/esm/store.js +46 -8
  286. package/esm/transfer.d.ts +3 -0
  287. package/esm/transfer.d.ts.map +1 -1
  288. package/esm/transfer.js +20 -30
  289. package/esm/trellis.d.ts +85 -22
  290. package/esm/trellis.d.ts.map +1 -1
  291. package/esm/trellis.js +525 -61
  292. package/package.json +6 -3
  293. package/script/auth/browser/login.d.ts.map +1 -1
  294. package/script/auth/browser/login.js +46 -3
  295. package/script/auth/browser/portal.d.ts.map +1 -1
  296. package/script/auth/browser/portal.js +5 -1
  297. package/script/auth/browser/session.d.ts +18 -7
  298. package/script/auth/browser/session.d.ts.map +1 -1
  299. package/script/auth/browser/session.js +47 -11
  300. package/script/auth/browser/storage.d.ts +6 -1
  301. package/script/auth/browser/storage.d.ts.map +1 -1
  302. package/script/auth/browser/storage.js +15 -3
  303. package/script/auth/browser.d.ts +2 -2
  304. package/script/auth/browser.d.ts.map +1 -1
  305. package/script/auth/browser.js +2 -1
  306. package/script/auth/device_activation.d.ts +36 -33
  307. package/script/auth/device_activation.d.ts.map +1 -1
  308. package/script/auth/device_activation.js +25 -21
  309. package/script/auth/mod.d.ts +4 -4
  310. package/script/auth/mod.d.ts.map +1 -1
  311. package/script/auth/mod.js +132 -137
  312. package/script/auth/proof.d.ts +3 -1
  313. package/script/auth/proof.d.ts.map +1 -1
  314. package/script/auth/proof.js +21 -15
  315. package/script/auth/protocol.d.ts +2457 -941
  316. package/script/auth/protocol.d.ts.map +1 -1
  317. package/script/auth/protocol.js +749 -377
  318. package/script/auth/schemas.d.ts +25 -4
  319. package/script/auth/schemas.d.ts.map +1 -1
  320. package/script/auth/schemas.js +16 -5
  321. package/script/auth/session_auth.d.ts +1 -1
  322. package/script/auth/session_auth.d.ts.map +1 -1
  323. package/script/auth/session_auth.js +7 -1
  324. package/script/client_connect.d.ts +2 -0
  325. package/script/client_connect.d.ts.map +1 -1
  326. package/script/client_connect.js +76 -15
  327. package/script/contract.d.ts +3 -0
  328. package/script/contract.d.ts.map +1 -1
  329. package/script/contract_support/mod.d.ts +422 -43
  330. package/script/contract_support/mod.d.ts.map +1 -1
  331. package/script/contract_support/mod.js +757 -51
  332. package/script/contract_support/protocol.d.ts +20 -5
  333. package/script/contract_support/protocol.d.ts.map +1 -1
  334. package/script/contract_support/protocol.js +20 -11
  335. package/script/contract_support/runtime.d.ts +11 -0
  336. package/script/contract_support/runtime.d.ts.map +1 -1
  337. package/script/contract_support/schema_pointers.d.ts.map +1 -1
  338. package/script/contract_support/schema_pointers.js +32 -14
  339. package/script/device.d.ts +2 -0
  340. package/script/device.d.ts.map +1 -1
  341. package/script/device.js +3 -0
  342. package/script/errors/AuthError.d.ts +2 -1
  343. package/script/errors/AuthError.d.ts.map +1 -1
  344. package/script/errors/AuthError.js +8 -3
  345. package/script/errors/index.d.ts +4 -4
  346. package/script/errors/index.d.ts.map +1 -1
  347. package/script/errors/index.js +1 -0
  348. package/script/generated-sdk/auth/api.d.ts +27 -9
  349. package/script/generated-sdk/auth/api.d.ts.map +1 -1
  350. package/script/generated-sdk/auth/api.js +17 -591
  351. package/script/generated-sdk/auth/client.d.ts +91 -85
  352. package/script/generated-sdk/auth/client.d.ts.map +1 -1
  353. package/script/generated-sdk/auth/contract.d.ts +1 -1
  354. package/script/generated-sdk/auth/contract.d.ts.map +1 -1
  355. package/script/generated-sdk/auth/contract.js +4 -2
  356. package/script/generated-sdk/auth/mod.d.ts +1 -0
  357. package/script/generated-sdk/auth/mod.d.ts.map +1 -1
  358. package/script/generated-sdk/auth/owned_api.d.ts +3 -0
  359. package/script/generated-sdk/auth/owned_api.d.ts.map +1 -0
  360. package/script/generated-sdk/auth/owned_api.js +597 -0
  361. package/script/generated-sdk/auth/schemas.d.ts +9959 -5160
  362. package/script/generated-sdk/auth/schemas.d.ts.map +1 -1
  363. package/script/generated-sdk/auth/schemas.js +139 -140
  364. package/script/generated-sdk/auth/types.d.ts +2418 -1557
  365. package/script/generated-sdk/auth/types.d.ts.map +1 -1
  366. package/script/generated-sdk/auth/types.js +1 -1
  367. package/script/generated-sdk/health/api.d.ts +24 -9
  368. package/script/generated-sdk/health/api.d.ts.map +1 -1
  369. package/script/generated-sdk/health/api.js +13 -21
  370. package/script/generated-sdk/health/client.d.ts +2 -1
  371. package/script/generated-sdk/health/client.d.ts.map +1 -1
  372. package/script/generated-sdk/health/contract.d.ts.map +1 -1
  373. package/script/generated-sdk/health/contract.js +2 -0
  374. package/script/generated-sdk/health/owned_api.d.ts +3 -0
  375. package/script/generated-sdk/health/owned_api.d.ts.map +1 -0
  376. package/script/generated-sdk/health/owned_api.js +19 -0
  377. package/script/generated-sdk/health/types.d.ts +2 -0
  378. package/script/generated-sdk/health/types.d.ts.map +1 -1
  379. package/script/generated-sdk/jobs/api.d.ts +33 -9
  380. package/script/generated-sdk/jobs/api.d.ts.map +1 -1
  381. package/script/generated-sdk/jobs/api.js +23 -88
  382. package/script/generated-sdk/jobs/client.d.ts +9 -2
  383. package/script/generated-sdk/jobs/client.d.ts.map +1 -1
  384. package/script/generated-sdk/jobs/contract.d.ts +1 -1
  385. package/script/generated-sdk/jobs/contract.d.ts.map +1 -1
  386. package/script/generated-sdk/jobs/contract.js +4 -2
  387. package/script/generated-sdk/jobs/owned_api.d.ts +3 -0
  388. package/script/generated-sdk/jobs/owned_api.d.ts.map +1 -0
  389. package/script/generated-sdk/jobs/owned_api.js +154 -0
  390. package/script/generated-sdk/jobs/schemas.d.ts +336 -123
  391. package/script/generated-sdk/jobs/schemas.d.ts.map +1 -1
  392. package/script/generated-sdk/jobs/schemas.js +18 -16
  393. package/script/generated-sdk/jobs/types.d.ts +144 -34
  394. package/script/generated-sdk/jobs/types.d.ts.map +1 -1
  395. package/script/generated-sdk/jobs/types.js +38 -2
  396. package/script/generated-sdk/state/api.d.ts +27 -9
  397. package/script/generated-sdk/state/api.d.ts.map +1 -1
  398. package/script/generated-sdk/state/api.js +17 -72
  399. package/script/generated-sdk/state/client.d.ts +4 -2
  400. package/script/generated-sdk/state/client.d.ts.map +1 -1
  401. package/script/generated-sdk/state/contract.d.ts +1 -1
  402. package/script/generated-sdk/state/contract.d.ts.map +1 -1
  403. package/script/generated-sdk/state/contract.js +4 -2
  404. package/script/generated-sdk/state/owned_api.d.ts +3 -0
  405. package/script/generated-sdk/state/owned_api.d.ts.map +1 -0
  406. package/script/generated-sdk/state/owned_api.js +69 -0
  407. package/script/generated-sdk/state/schemas.d.ts +264 -284
  408. package/script/generated-sdk/state/schemas.d.ts.map +1 -1
  409. package/script/generated-sdk/state/schemas.js +6 -6
  410. package/script/generated-sdk/state/types.d.ts +24 -23
  411. package/script/generated-sdk/state/types.d.ts.map +1 -1
  412. package/script/generated-sdk/state/types.js +1 -1
  413. package/script/generated-sdk/trellis-core/api.d.ts +27 -9
  414. package/script/generated-sdk/trellis-core/api.d.ts.map +1 -1
  415. package/script/generated-sdk/trellis-core/api.js +17 -40
  416. package/script/generated-sdk/trellis-core/client.d.ts +5 -2
  417. package/script/generated-sdk/trellis-core/client.d.ts.map +1 -1
  418. package/script/generated-sdk/trellis-core/contract.d.ts +1 -1
  419. package/script/generated-sdk/trellis-core/contract.d.ts.map +1 -1
  420. package/script/generated-sdk/trellis-core/contract.js +4 -2
  421. package/script/generated-sdk/trellis-core/owned_api.d.ts +3 -0
  422. package/script/generated-sdk/trellis-core/owned_api.d.ts.map +1 -0
  423. package/script/generated-sdk/trellis-core/owned_api.js +45 -0
  424. package/script/generated-sdk/trellis-core/schemas.d.ts +259 -11
  425. package/script/generated-sdk/trellis-core/schemas.d.ts.map +1 -1
  426. package/script/generated-sdk/trellis-core/schemas.js +6 -4
  427. package/script/generated-sdk/trellis-core/types.d.ts +56 -1
  428. package/script/generated-sdk/trellis-core/types.d.ts.map +1 -1
  429. package/script/generated-sdk/trellis-core/types.js +1 -1
  430. package/script/helpers.d.ts.map +1 -1
  431. package/script/index.d.ts +4 -3
  432. package/script/index.d.ts.map +1 -1
  433. package/script/index.js +5 -2
  434. package/script/jobs.d.ts +10 -1
  435. package/script/jobs.d.ts.map +1 -1
  436. package/script/jobs.js +17 -2
  437. package/script/kv.d.ts.map +1 -1
  438. package/script/kv.js +10 -4
  439. package/script/models/auth/rpc/Logout.d.ts +4 -4
  440. package/script/models/auth/rpc/Logout.d.ts.map +1 -1
  441. package/script/models/auth/rpc/Logout.js +3 -3
  442. package/script/models/trellis/Page.d.ts +2 -0
  443. package/script/models/trellis/Page.d.ts.map +1 -0
  444. package/script/models/trellis/Page.js +6 -0
  445. package/script/models/trellis/State.d.ts +1 -0
  446. package/script/models/trellis/State.d.ts.map +1 -1
  447. package/script/models/trellis/State.js +1 -0
  448. package/script/models/trellis/rpc/StateList.d.ts +9 -12
  449. package/script/models/trellis/rpc/StateList.d.ts.map +1 -1
  450. package/script/models/trellis/rpc/StateList.js +16 -18
  451. package/script/npm/src/auth/browser/login.d.ts.map +1 -1
  452. package/script/npm/src/auth/browser/login.js +46 -3
  453. package/script/npm/src/auth/browser/portal.d.ts.map +1 -1
  454. package/script/npm/src/auth/browser/portal.js +5 -1
  455. package/script/npm/src/auth/browser/session.d.ts +18 -7
  456. package/script/npm/src/auth/browser/session.d.ts.map +1 -1
  457. package/script/npm/src/auth/browser/session.js +47 -11
  458. package/script/npm/src/auth/browser/storage.d.ts +6 -1
  459. package/script/npm/src/auth/browser/storage.d.ts.map +1 -1
  460. package/script/npm/src/auth/browser/storage.js +15 -3
  461. package/script/npm/src/auth/browser.d.ts +2 -2
  462. package/script/npm/src/auth/browser.d.ts.map +1 -1
  463. package/script/npm/src/auth/browser.js +2 -1
  464. package/script/npm/src/auth/device_activation.d.ts +36 -33
  465. package/script/npm/src/auth/device_activation.d.ts.map +1 -1
  466. package/script/npm/src/auth/device_activation.js +25 -21
  467. package/script/npm/src/auth/mod.d.ts +4 -4
  468. package/script/npm/src/auth/mod.d.ts.map +1 -1
  469. package/script/npm/src/auth/mod.js +132 -137
  470. package/script/npm/src/auth/proof.d.ts +3 -1
  471. package/script/npm/src/auth/proof.d.ts.map +1 -1
  472. package/script/npm/src/auth/proof.js +21 -15
  473. package/script/npm/src/auth/protocol.d.ts +2457 -941
  474. package/script/npm/src/auth/protocol.d.ts.map +1 -1
  475. package/script/npm/src/auth/protocol.js +749 -377
  476. package/script/npm/src/auth/schemas.d.ts +25 -4
  477. package/script/npm/src/auth/schemas.d.ts.map +1 -1
  478. package/script/npm/src/auth/schemas.js +16 -5
  479. package/script/npm/src/auth/session_auth.d.ts +1 -1
  480. package/script/npm/src/auth/session_auth.d.ts.map +1 -1
  481. package/script/npm/src/auth/session_auth.js +7 -1
  482. package/script/npm/src/client_connect.d.ts +2 -0
  483. package/script/npm/src/client_connect.d.ts.map +1 -1
  484. package/script/npm/src/client_connect.js +76 -15
  485. package/script/npm/src/contract.d.ts +3 -0
  486. package/script/npm/src/contract.d.ts.map +1 -1
  487. package/script/npm/src/contract_support/mod.d.ts +422 -43
  488. package/script/npm/src/contract_support/mod.d.ts.map +1 -1
  489. package/script/npm/src/contract_support/mod.js +757 -51
  490. package/script/npm/src/contract_support/protocol.d.ts +20 -5
  491. package/script/npm/src/contract_support/protocol.d.ts.map +1 -1
  492. package/script/npm/src/contract_support/protocol.js +20 -11
  493. package/script/npm/src/contract_support/runtime.d.ts +11 -0
  494. package/script/npm/src/contract_support/runtime.d.ts.map +1 -1
  495. package/script/npm/src/contract_support/schema_pointers.d.ts.map +1 -1
  496. package/script/npm/src/contract_support/schema_pointers.js +32 -14
  497. package/script/npm/src/device/deno.d.ts.map +1 -1
  498. package/script/npm/src/device/deno.js +6 -0
  499. package/script/npm/src/device.d.ts +2 -0
  500. package/script/npm/src/device.d.ts.map +1 -1
  501. package/script/npm/src/device.js +3 -0
  502. package/script/npm/src/errors/AuthError.d.ts +2 -1
  503. package/script/npm/src/errors/AuthError.d.ts.map +1 -1
  504. package/script/npm/src/errors/AuthError.js +8 -3
  505. package/script/npm/src/errors/index.d.ts +4 -4
  506. package/script/npm/src/errors/index.d.ts.map +1 -1
  507. package/script/npm/src/errors/index.js +1 -0
  508. package/script/npm/src/generate.js +39 -59
  509. package/script/npm/src/helpers.d.ts.map +1 -1
  510. package/script/npm/src/index.d.ts +4 -3
  511. package/script/npm/src/index.d.ts.map +1 -1
  512. package/script/npm/src/index.js +5 -2
  513. package/script/npm/src/jobs.d.ts +10 -1
  514. package/script/npm/src/jobs.d.ts.map +1 -1
  515. package/script/npm/src/jobs.js +17 -2
  516. package/script/npm/src/kv.d.ts.map +1 -1
  517. package/script/npm/src/kv.js +10 -4
  518. package/script/npm/src/models/auth/rpc/Logout.d.ts +4 -4
  519. package/script/npm/src/models/auth/rpc/Logout.d.ts.map +1 -1
  520. package/script/npm/src/models/auth/rpc/Logout.js +3 -3
  521. package/script/npm/src/models/trellis/Page.d.ts +2 -0
  522. package/script/npm/src/models/trellis/Page.d.ts.map +1 -0
  523. package/script/npm/src/models/trellis/Page.js +6 -0
  524. package/script/npm/src/models/trellis/State.d.ts +1 -0
  525. package/script/npm/src/models/trellis/State.d.ts.map +1 -1
  526. package/script/npm/src/models/trellis/State.js +1 -0
  527. package/script/npm/src/models/trellis/rpc/StateList.d.ts +9 -12
  528. package/script/npm/src/models/trellis/rpc/StateList.d.ts.map +1 -1
  529. package/script/npm/src/models/trellis/rpc/StateList.js +16 -18
  530. package/script/npm/src/operations.d.ts +16 -7
  531. package/script/npm/src/operations.d.ts.map +1 -1
  532. package/script/npm/src/operations.js +84 -19
  533. package/script/npm/src/runtime_transport.d.ts +2 -0
  534. package/script/npm/src/runtime_transport.d.ts.map +1 -1
  535. package/script/npm/src/runtime_transport.js +2 -1
  536. package/script/npm/src/server/internal_jobs/active-job.d.ts +2 -1
  537. package/script/npm/src/server/internal_jobs/active-job.d.ts.map +1 -1
  538. package/script/npm/src/server/internal_jobs/active-job.js +3 -0
  539. package/script/npm/src/server/internal_jobs/job-manager.d.ts +4 -1
  540. package/script/npm/src/server/internal_jobs/job-manager.d.ts.map +1 -1
  541. package/script/npm/src/server/internal_jobs/job-manager.js +61 -1
  542. package/script/npm/src/server/internal_jobs/projection.js +1 -0
  543. package/script/npm/src/server/internal_jobs/runtime-worker.d.ts +13 -1
  544. package/script/npm/src/server/internal_jobs/runtime-worker.d.ts.map +1 -1
  545. package/script/npm/src/server/internal_jobs/runtime-worker.js +74 -13
  546. package/script/npm/src/server/internal_jobs/types.d.ts +19 -0
  547. package/script/npm/src/server/internal_jobs/types.d.ts.map +1 -1
  548. package/script/npm/src/server/internal_jobs/types.js +11 -1
  549. package/script/npm/src/server/runtime.d.ts +1 -0
  550. package/script/npm/src/server/runtime.d.ts.map +1 -1
  551. package/script/npm/src/server/service.d.ts +10 -1
  552. package/script/npm/src/server/service.d.ts.map +1 -1
  553. package/script/npm/src/server/service.js +208 -62
  554. package/script/npm/src/server/transfer.d.ts.map +1 -1
  555. package/script/npm/src/server/transfer.js +4 -0
  556. package/script/npm/src/server.d.ts.map +1 -1
  557. package/script/npm/src/server.js +336 -33
  558. package/script/npm/src/store.d.ts +8 -1
  559. package/script/npm/src/store.d.ts.map +1 -1
  560. package/script/npm/src/store.js +46 -8
  561. package/script/npm/src/transfer.d.ts +3 -0
  562. package/script/npm/src/transfer.d.ts.map +1 -1
  563. package/script/npm/src/transfer.js +19 -29
  564. package/script/npm/src/trellis.d.ts +85 -22
  565. package/script/npm/src/trellis.d.ts.map +1 -1
  566. package/script/npm/src/trellis.js +525 -61
  567. package/script/operations.d.ts +16 -7
  568. package/script/operations.d.ts.map +1 -1
  569. package/script/operations.js +84 -19
  570. package/script/runtime_transport.d.ts +2 -0
  571. package/script/runtime_transport.d.ts.map +1 -1
  572. package/script/runtime_transport.js +2 -1
  573. package/script/store.d.ts +8 -1
  574. package/script/store.d.ts.map +1 -1
  575. package/script/store.js +46 -8
  576. package/script/transfer.d.ts +3 -0
  577. package/script/transfer.d.ts.map +1 -1
  578. package/script/transfer.js +19 -29
  579. package/script/trellis.d.ts +85 -22
  580. package/script/trellis.d.ts.map +1 -1
  581. package/script/trellis.js +525 -61
  582. package/src/_dnt.polyfills.ts +274 -0
  583. package/src/_dnt.shims.ts +64 -0
  584. package/src/auth/browser/login.ts +295 -0
  585. package/src/auth/browser/portal.ts +75 -0
  586. package/src/auth/browser/session.ts +197 -0
  587. package/src/auth/browser/storage.ts +105 -0
  588. package/src/auth/browser.ts +82 -0
  589. package/src/auth/device_activation.ts +715 -0
  590. package/src/auth/keys.ts +116 -0
  591. package/src/auth/mod.ts +298 -0
  592. package/src/auth/proof.ts +111 -0
  593. package/src/auth/protocol.ts +1629 -0
  594. package/src/auth/schemas.ts +145 -0
  595. package/src/auth/session_auth.ts +167 -0
  596. package/src/auth/time.ts +15 -0
  597. package/src/auth/trellis_id.ts +9 -0
  598. package/src/auth/types.ts +4 -0
  599. package/src/auth/utils.ts +87 -0
  600. package/src/auth.ts +2 -0
  601. package/src/browser.ts +8 -0
  602. package/src/client.ts +164 -0
  603. package/src/client_connect.ts +1328 -0
  604. package/src/codec.ts +107 -0
  605. package/src/connection.ts +466 -0
  606. package/src/contract.ts +84 -0
  607. package/src/contract_support/canonical.ts +217 -0
  608. package/src/contract_support/mod.ts +5079 -0
  609. package/src/contract_support/protocol.ts +213 -0
  610. package/src/contract_support/runtime.ts +129 -0
  611. package/src/contract_support/schema_pointers.ts +161 -0
  612. package/src/contracts.ts +9 -0
  613. package/src/device/deno.ts +941 -0
  614. package/src/device.ts +989 -0
  615. package/src/env.ts +1 -0
  616. package/src/errors/AuthError.ts +82 -0
  617. package/src/errors/KVError.ts +47 -0
  618. package/src/errors/RemoteError.ts +111 -0
  619. package/src/errors/StoreError.ts +43 -0
  620. package/src/errors/TransferError.ts +43 -0
  621. package/src/errors/TransportError.ts +48 -0
  622. package/src/errors/TrellisError.ts +20 -0
  623. package/src/errors/ValidationError.ts +80 -0
  624. package/src/errors/index.ts +195 -0
  625. package/src/generate.ts +329 -0
  626. package/src/globals.ts +26 -0
  627. package/src/health.ts +28 -0
  628. package/src/helpers.ts +63 -0
  629. package/src/host/mod.ts +9 -0
  630. package/src/host/node.ts +9 -0
  631. package/src/index.ts +233 -0
  632. package/src/jobs.ts +344 -0
  633. package/src/kv.ts +564 -0
  634. package/src/models/auth/rpc/Logout.ts +15 -0
  635. package/src/models/trellis/Page.ts +6 -0
  636. package/src/models/trellis/State.ts +55 -0
  637. package/src/models/trellis/TrellisError.ts +21 -0
  638. package/src/models/trellis/rpc/StateDelete.ts +13 -0
  639. package/src/models/trellis/rpc/StateGet.ts +25 -0
  640. package/src/models/trellis/rpc/StateList.ts +26 -0
  641. package/src/models/trellis/rpc/StatePut.ts +42 -0
  642. package/src/operations.ts +1508 -0
  643. package/src/runtime_transport.ts +132 -0
  644. package/src/sdk/auth.ts +2 -0
  645. package/src/sdk/core.ts +2 -0
  646. package/src/sdk/health.ts +2 -0
  647. package/src/sdk/jobs.ts +2 -0
  648. package/src/sdk/state.ts +2 -0
  649. package/src/server/health.ts +379 -0
  650. package/src/server/health_rpc.ts +51 -0
  651. package/src/server/health_schemas.ts +61 -0
  652. package/src/server/internal_jobs/active-job.ts +115 -0
  653. package/src/server/internal_jobs/bindings.ts +26 -0
  654. package/src/server/internal_jobs/cancellation-registry.ts +71 -0
  655. package/src/server/internal_jobs/heartbeat.ts +120 -0
  656. package/src/server/internal_jobs/job-manager.ts +456 -0
  657. package/src/server/internal_jobs/projection.ts +48 -0
  658. package/src/server/internal_jobs/runtime-worker.ts +741 -0
  659. package/src/server/internal_jobs/types.ts +124 -0
  660. package/src/server/runtime.ts +27 -0
  661. package/src/server/service.ts +2377 -0
  662. package/src/server/subscription.ts +143 -0
  663. package/src/server/transfer.ts +962 -0
  664. package/src/server.ts +1725 -0
  665. package/src/server_logger.ts +10 -0
  666. package/src/service/deno.ts +18 -0
  667. package/src/service/mod.ts +68 -0
  668. package/src/service/node.ts +18 -0
  669. package/src/store.ts +658 -0
  670. package/src/tasks.ts +34 -0
  671. package/src/telemetry/carrier.ts +35 -0
  672. package/src/telemetry/core.ts +31 -0
  673. package/src/telemetry/env.ts +23 -0
  674. package/src/telemetry/mod.ts +26 -0
  675. package/src/telemetry/nats.ts +15 -0
  676. package/src/telemetry/result.ts +20 -0
  677. package/src/telemetry/trace.ts +39 -0
  678. package/src/telemetry/trellis.ts +1 -0
  679. package/src/tracing.ts +28 -0
  680. package/src/transfer.ts +602 -0
  681. package/src/trellis.ts +3650 -0
  682. package/esm/models/trellis/Paginate.d.ts +0 -7
  683. package/esm/models/trellis/Paginate.d.ts.map +0 -1
  684. package/esm/models/trellis/Paginate.js +0 -5
  685. package/esm/npm/src/models/trellis/Paginate.d.ts +0 -7
  686. package/esm/npm/src/models/trellis/Paginate.d.ts.map +0 -1
  687. package/esm/npm/src/models/trellis/Paginate.js +0 -5
  688. package/script/models/trellis/Paginate.d.ts +0 -7
  689. package/script/models/trellis/Paginate.d.ts.map +0 -1
  690. package/script/models/trellis/Paginate.js +0 -11
  691. package/script/npm/src/models/trellis/Paginate.d.ts +0 -7
  692. package/script/npm/src/models/trellis/Paginate.d.ts.map +0 -1
  693. package/script/npm/src/models/trellis/Paginate.js +0 -11
package/esm/jobs.d.ts CHANGED
@@ -13,6 +13,13 @@ export declare const JobProgressSchema: Type.TObject<{
13
13
  }>;
14
14
  export type JobProgress = StaticDecode<typeof JobProgressSchema>;
15
15
  export type JobLogEntry = StaticDecode<typeof JobLogEntrySchema>;
16
+ export declare const JobContextSchema: Type.TObject<{
17
+ requestId: Type.TString;
18
+ traceId: Type.TString;
19
+ traceparent: Type.TString;
20
+ tracestate: Type.TOptional<Type.TString>;
21
+ }>;
22
+ export type JobContext = StaticDecode<typeof JobContextSchema>;
16
23
  export type JobState = "pending" | "active" | "retry" | "completed" | "failed" | "cancelled" | "expired" | "dead" | "dismissed";
17
24
  export type JobIdentity = {
18
25
  service: string;
@@ -24,6 +31,7 @@ export type JobSnapshot<TPayload, TResult> = {
24
31
  service: string;
25
32
  type: string;
26
33
  state: JobState;
34
+ context: JobContext;
27
35
  payload: TPayload;
28
36
  result?: TResult;
29
37
  createdAt: string;
@@ -94,7 +102,8 @@ export declare class ActiveJob<TPayload, TResult> {
94
102
  #private;
95
103
  readonly ref: JobRef<TPayload, TResult>;
96
104
  readonly payload: TPayload;
97
- constructor(ref: JobRef<TPayload, TResult>, payload: TPayload, cancelled: boolean | (() => boolean), impl: {
105
+ readonly context: Readonly<JobContext>;
106
+ constructor(ref: JobRef<TPayload, TResult>, payload: TPayload, context: JobContext, cancelled: boolean | (() => boolean), impl: {
98
107
  heartbeat: () => AsyncResult<void, BaseError>;
99
108
  progress: (value: JobProgress) => AsyncResult<void, BaseError>;
100
109
  log: (entry: JobLogEntry) => AsyncResult<void, BaseError>;
package/esm/jobs.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"jobs.d.ts","sourceRoot":"","sources":["../../jobs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jobs.d.ts","sourceRoot":"","sources":["../../jobs.ts"],"names":[],"mappings":"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"}
package/esm/jobs.js CHANGED
@@ -28,6 +28,14 @@ export const JobProgressSchema = Type.Object({
28
28
  current: Type.Optional(Type.Integer({ minimum: 0 })),
29
29
  total: Type.Optional(Type.Integer({ minimum: 0 })),
30
30
  });
31
+ export const JobContextSchema = Type.Object({
32
+ requestId: Type.String({ minLength: 1 }),
33
+ traceId: Type.String({ pattern: "^[0-9a-f]{32}$" }),
34
+ traceparent: Type.String({
35
+ pattern: "^[0-9a-f]{2}-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$",
36
+ }),
37
+ tracestate: Type.Optional(Type.String({ minLength: 1 })),
38
+ });
31
39
  function toUnexpectedError(cause) {
32
40
  return cause instanceof UnexpectedError
33
41
  ? cause
@@ -90,7 +98,7 @@ export class JobRef {
90
98
  }
91
99
  _JobRef_get = new WeakMap(), _JobRef_wait = new WeakMap(), _JobRef_cancel = new WeakMap();
92
100
  export class ActiveJob {
93
- constructor(ref, payload, cancelled, impl) {
101
+ constructor(ref, payload, context, cancelled, impl) {
94
102
  Object.defineProperty(this, "ref", {
95
103
  enumerable: true,
96
104
  configurable: true,
@@ -103,6 +111,12 @@ export class ActiveJob {
103
111
  writable: true,
104
112
  value: void 0
105
113
  });
114
+ Object.defineProperty(this, "context", {
115
+ enumerable: true,
116
+ configurable: true,
117
+ writable: true,
118
+ value: void 0
119
+ });
106
120
  _ActiveJob_cancelled.set(this, void 0);
107
121
  _ActiveJob_heartbeat.set(this, void 0);
108
122
  _ActiveJob_progress.set(this, void 0);
@@ -110,6 +124,7 @@ export class ActiveJob {
110
124
  _ActiveJob_redeliveryCount.set(this, void 0);
111
125
  this.ref = ref;
112
126
  this.payload = payload;
127
+ this.context = Object.freeze({ ...context });
113
128
  __classPrivateFieldSet(this, _ActiveJob_cancelled, typeof cancelled === "function"
114
129
  ? cancelled
115
130
  : () => cancelled, "f");
package/esm/kv.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"kv.d.ts","sourceRoot":"","sources":["../../kv.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kv.d.ts","sourceRoot":"","sources":["../../kv.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,OAAO,EAAO,MAAM,aAAa,CAAC;AAEzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,WAAW,EAAU,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAErD,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AA6J7D;;GAEG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,OAAO,IACpC;IACA,2BAA2B;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,yCAAyC;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,8CAA8C;IAC9C,SAAS,EAAE,IAAI,CAAC;CACjB,GACC,CACE;IACA,2DAA2D;IAC3D,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;CACxB,GACC;IACA,iDAAiD;IACjD,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB,GACC;IACA,4DAA4D;IAC5D,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,eAAe,CAAC;IACvB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB,CACF,CAAC;AAEJ;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,6EAA6E;IAC7E,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,qBAAa,OAAO,CAAC,CAAC,SAAS,OAAO;IAElC,QAAQ,CAAC,MAAM,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,EAAE,EAAE;IAFjB,OAAO;IAKP,OAAO,CAAC,MAAM,CAAC,SAAS;IAIxB,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,OAAO,EAC3B,IAAI,EAAE,cAAc,EACpB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,CAAC,EACT,OAAO,EAAE;QACP,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,GACA,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC;IA6BnC,GAAG,CACD,GAAG,EAAE,MAAM,GACV,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,OAAO,GAAG,eAAe,CAAC;IAqB1D,OAAO,CAAC,SAAS;IAIjB,MAAM,CACJ,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,OAAO,GACb,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC;IAW7B,GAAG,CACD,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,OAAO,GACb,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC;IAW7B,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC;IAW/C,IAAI,CACF,MAAM,GAAE,MAAM,GAAG,MAAM,EAAQ,GAC9B,WAAW,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAY9C,MAAM,IAAI,WAAW,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,OAAO,CAAC;CAUnD;AAED,qBAAa,YAAY,CAAC,CAAC,SAAS,OAAO;;IAIvC,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,EAAE;IACV,OAAO,CAAC,KAAK;gBAFL,MAAM,EAAE,CAAC,EACT,EAAE,EAAE,EAAE,EACN,KAAK,EAAE,OAAO,EACtB,KAAK,EAAE,OAAO;IAKhB,IAAI,KAAK,IAAI,YAAY,CAAC,CAAC,CAAC,CAE3B;IAED,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,OAAO,EAC7B,MAAM,EAAE,CAAC,EACT,EAAE,EAAE,EAAE,EACN,KAAK,EAAE,OAAO,GACb,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC;IAOhD,IAAI,GAAG,WAEN;IAED,IAAI,QAAQ,WAEX;IAED,IAAI,SAAS,SAEZ;IAED;;;;;;OAMG;IACG,KAAK,CACT,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,EACxC,IAAI,CAAC,EAAE,YAAY,GAClB,OAAO,CAAC,MAAM,IAAI,CAAC;IAoDtB,KAAK,CACH,KAAK,EAAE,OAAO,EACd,GAAG,CAAC,EAAE,OAAO,GACZ,WAAW,CAAC,IAAI,EAAE,OAAO,GAAG,eAAe,CAAC;IAsB/C,GAAG,CACD,KAAK,EAAE,OAAO,EACd,GAAG,CAAC,EAAE,OAAO,GACZ,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC;IAc7B,MAAM,CAAC,GAAG,CAAC,EAAE,OAAO,GAAG,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC;CAYlD"}
package/esm/kv.js CHANGED
@@ -132,6 +132,12 @@ function kvError(operation, key, cause) {
132
132
  context: reason === undefined ? { key } : { key, reason },
133
133
  });
134
134
  }
135
+ function kvNotFound(operation, key) {
136
+ return new KVError({
137
+ operation,
138
+ context: { key, reason: "not found" },
139
+ });
140
+ }
135
141
  export class TypedKV {
136
142
  constructor(schema, kv) {
137
143
  Object.defineProperty(this, "schema", {
@@ -187,10 +193,10 @@ export class TypedKV {
187
193
  return Result.err(new KVError({ operation: "get", cause, context: { key } }));
188
194
  }
189
195
  if (!s) {
190
- return Result.err(new KVError({
191
- operation: "get",
192
- context: { key, reason: "not found" },
193
- }));
196
+ return Result.err(kvNotFound("get", key));
197
+ }
198
+ if (s.operation === "DEL" || s.operation === "PURGE") {
199
+ return Result.err(kvNotFound("get", key));
194
200
  }
195
201
  const result = await createTypedKvEntry(this.schema, this.kv, s);
196
202
  return result;
@@ -1,8 +1,8 @@
1
1
  import Type, { type Static } from "typebox";
2
- export declare const AuthLogoutSchema: Type.TObject<{}>;
3
- export type AuthLogoutInput = Static<typeof AuthLogoutSchema>;
4
- export declare const AuthLogoutResponseSchema: Type.TObject<{
2
+ export declare const AuthSessionsLogoutSchema: Type.TObject<{}>;
3
+ export type AuthSessionsLogoutInput = Static<typeof AuthSessionsLogoutSchema>;
4
+ export declare const AuthSessionsLogoutResponseSchema: Type.TObject<{
5
5
  success: Type.TBoolean;
6
6
  }>;
7
- export type AuthLogoutResponse = Static<typeof AuthLogoutResponseSchema>;
7
+ export type AuthSessionsLogoutResponse = Static<typeof AuthSessionsLogoutResponseSchema>;
8
8
  //# sourceMappingURL=Logout.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Logout.d.ts","sourceRoot":"","sources":["../../../../../models/auth/rpc/Logout.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAE,KAAK,MAAM,EAAE,MAAM,SAAS,CAAC;AAE5C,eAAO,MAAM,gBAAgB,kBAE5B,CAAC;AACF,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE9D,eAAO,MAAM,wBAAwB;;EAIpC,CAAC;AACF,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,OAAO,wBAAwB,CAAC,CAAC"}
1
+ {"version":3,"file":"Logout.d.ts","sourceRoot":"","sources":["../../../../../models/auth/rpc/Logout.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAE,KAAK,MAAM,EAAE,MAAM,SAAS,CAAC;AAE5C,eAAO,MAAM,wBAAwB,kBAEpC,CAAC;AACF,MAAM,MAAM,uBAAuB,GAAG,MAAM,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE9E,eAAO,MAAM,gCAAgC;;EAI5C,CAAC;AACF,MAAM,MAAM,0BAA0B,GAAG,MAAM,CAC7C,OAAO,gCAAgC,CACxC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import Type from "typebox";
2
- export const AuthLogoutSchema = Type.Object({});
3
- export const AuthLogoutResponseSchema = Type.Object({
2
+ export const AuthSessionsLogoutSchema = Type.Object({});
3
+ export const AuthSessionsLogoutResponseSchema = Type.Object({
4
4
  success: Type.Boolean(),
5
5
  });
@@ -0,0 +1,2 @@
1
+ export { type PageRequest, PageRequestSchema, type PageResponse, PageResponseSchema, } from "../../contract_support/protocol.ts";
2
+ //# sourceMappingURL=Page.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Page.d.ts","sourceRoot":"","sources":["../../../../models/trellis/Page.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,WAAW,EAChB,iBAAiB,EACjB,KAAK,YAAY,EACjB,kBAAkB,GACnB,MAAM,oCAAoC,CAAC"}
@@ -0,0 +1 @@
1
+ export { PageRequestSchema, PageResponseSchema, } from "../../contract_support/protocol.js";
@@ -43,6 +43,7 @@ export type StateMigrationRequired = {
43
43
  export declare const StateUserTargetSchema: Type.TObject<{
44
44
  origin: Type.TString;
45
45
  id: Type.TString;
46
+ userId: Type.TOptional<Type.TString>;
46
47
  }>;
47
48
  export type StateUserTarget = StaticDecode<typeof StateUserTargetSchema>;
48
49
  //# sourceMappingURL=State.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"State.d.ts","sourceRoot":"","sources":["../../../../models/trellis/State.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAE,KAAK,YAAY,EAAE,MAAM,SAAS,CAAC;AAElD,OAAO,KAAK,EAAE,SAAS,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAExE,eAAO,MAAM,oBAAoB,6DAG/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,KAAK,CAAC;AAE7C,eAAO,MAAM,gBAAgB,qEAG3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,WAAW,CAAC;AAEjD,eAAO,MAAM,eAAe,eAAiB,CAAC;AAC9C,MAAM,MAAM,SAAS,GAAG,gBAAgB,CAAC;AAEzC,eAAO,MAAM,gBAAgB;;;;;;EAM3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,gBAAgB,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,eAAO,MAAM,4BAA4B;;;;;;;;;;;;EAMvC,CAAC;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,iBAAiB,EAAE,IAAI,CAAC;IACxB,KAAK,EAAE,UAAU,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,oBAAoB,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF,eAAO,MAAM,qBAAqB;;;EAGhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,YAAY,CAAC,OAAO,qBAAqB,CAAC,CAAC"}
1
+ {"version":3,"file":"State.d.ts","sourceRoot":"","sources":["../../../../models/trellis/State.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAE,KAAK,YAAY,EAAE,MAAM,SAAS,CAAC;AAElD,OAAO,KAAK,EAAE,SAAS,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAExE,eAAO,MAAM,oBAAoB,6DAG/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,KAAK,CAAC;AAE7C,eAAO,MAAM,gBAAgB,qEAG3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,WAAW,CAAC;AAEjD,eAAO,MAAM,eAAe,eAAiB,CAAC;AAC9C,MAAM,MAAM,SAAS,GAAG,gBAAgB,CAAC;AAEzC,eAAO,MAAM,gBAAgB;;;;;;EAM3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,gBAAgB,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,eAAO,MAAM,4BAA4B;;;;;;;;;;;;EAMvC,CAAC;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,iBAAiB,EAAE,IAAI,CAAC;IACxB,KAAK,EAAE,UAAU,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,oBAAoB,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF,eAAO,MAAM,qBAAqB;;;;EAIhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,YAAY,CAAC,OAAO,qBAAqB,CAAC,CAAC"}
@@ -25,4 +25,5 @@ export const StateMigrationRequiredSchema = Type.Object({
25
25
  export const StateUserTargetSchema = Type.Object({
26
26
  origin: Type.String({ minLength: 1 }),
27
27
  id: Type.String({ minLength: 1 }),
28
+ userId: Type.Optional(Type.String({ minLength: 1 })),
28
29
  });
@@ -1,19 +1,12 @@
1
1
  import Type, { type Static } from "typebox";
2
- export declare const StateListSchema: Type.TIntersect<[Type.TObject<{
3
- offset: Type.TInteger;
2
+ export declare const StateListSchema: Type.TObject<{
3
+ offset: Type.TOptional<Type.TInteger>;
4
4
  limit: Type.TInteger;
5
- }>, Type.TObject<{
6
5
  store: Type.TString;
7
6
  prefix: Type.TOptional<Type.TString>;
8
- }>]>;
7
+ }>;
9
8
  export type StateListInput = Static<typeof StateListSchema>;
10
- export declare const StateListResponseSchema: Type.TIntersect<[Type.TObject<{
11
- count: Type.TInteger;
12
- offset: Type.TInteger;
13
- limit: Type.TInteger;
14
- next: Type.TOptional<Type.TInteger>;
15
- prev: Type.TOptional<Type.TInteger>;
16
- }>, Type.TObject<{
9
+ export declare const StateListResponseSchema: Type.TObject<{
17
10
  entries: Type.TArray<Type.TUnion<[Type.TObject<{
18
11
  key: Type.TOptional<Type.TString>;
19
12
  value: Type.TUnknown;
@@ -33,6 +26,10 @@ export declare const StateListResponseSchema: Type.TIntersect<[Type.TObject<{
33
26
  currentStateVersion: Type.TString;
34
27
  writerContractDigest: Type.TString;
35
28
  }>]>>;
36
- }>]>;
29
+ count: Type.TInteger;
30
+ offset: Type.TInteger;
31
+ limit: Type.TInteger;
32
+ nextOffset: Type.TOptional<Type.TInteger>;
33
+ }>;
37
34
  export type StateListResponse = Static<typeof StateListResponseSchema>;
38
35
  //# sourceMappingURL=StateList.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"StateList.d.ts","sourceRoot":"","sources":["../../../../../models/trellis/rpc/StateList.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAE,KAAK,MAAM,EAAE,MAAM,SAAS,CAAC;AAM5C,eAAO,MAAM,eAAe;;;;;;IAM1B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,eAAe,CAAC,CAAC;AAE5D,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;IAWlC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,uBAAuB,CAAC,CAAC"}
1
+ {"version":3,"file":"StateList.d.ts","sourceRoot":"","sources":["../../../../../models/trellis/rpc/StateList.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAAE,KAAK,MAAM,EAAE,MAAM,SAAS,CAAC;AAI5C,eAAO,MAAM,eAAe;;;;;EAK1B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,eAAe,CAAC,CAAC;AAE5D,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;EAYlC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,uBAAuB,CAAC,CAAC"}
@@ -1,20 +1,18 @@
1
1
  import Type from "typebox";
2
- import { PaginatedSchema } from "../../../contracts.js";
3
2
  import { StateEntrySchema, StateMigrationRequiredSchema } from "../State.js";
4
- import { PaginateSchema } from "../Paginate.js";
5
- export const StateListSchema = Type.Intersect([
6
- PaginateSchema,
7
- Type.Object({
8
- store: Type.String({ minLength: 1 }),
9
- prefix: Type.Optional(Type.String({ minLength: 1 })),
10
- }),
11
- ]);
12
- export const StateListResponseSchema = Type.Intersect([
13
- PaginatedSchema,
14
- Type.Object({
15
- entries: Type.Array(Type.Union([
16
- StateEntrySchema,
17
- StateMigrationRequiredSchema,
18
- ]), { default: [] }),
19
- }),
20
- ]);
3
+ export const StateListSchema = Type.Object({
4
+ offset: Type.Optional(Type.Integer({ minimum: 0 })),
5
+ limit: Type.Integer({ minimum: 0 }),
6
+ store: Type.String({ minLength: 1 }),
7
+ prefix: Type.Optional(Type.String({ minLength: 1 })),
8
+ });
9
+ export const StateListResponseSchema = Type.Object({
10
+ entries: Type.Array(Type.Union([
11
+ StateEntrySchema,
12
+ StateMigrationRequiredSchema,
13
+ ]), { default: [] }),
14
+ count: Type.Integer({ minimum: 0 }),
15
+ offset: Type.Integer({ minimum: 0 }),
16
+ limit: Type.Integer({ minimum: 0 }),
17
+ nextOffset: Type.Optional(Type.Integer({ minimum: 0 })),
18
+ });
@@ -1 +1 @@
1
- {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../../../../src/auth/browser/login.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,iBAAiB,EAEtB,KAAK,YAAY,EAEjB,KAAK,mBAAmB,EAEzB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAGrD,YAAY,EACV,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,EACZ,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,GACd,MAAM,eAAe,CAAC;AAEvB,MAAM,MAAM,UAAU,GAAG;IACvB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AA2BF,wBAAsB,aAAa,CACjC,MAAM,EAAE,UAAU,EAClB,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,gBAAgB,EACxB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,OAAO,CAAC,EAAE,OAAO,GAChB,OAAO,CAAC,MAAM,CAAC,CAAC;AACnB,wBAAsB,aAAa,CACjC,IAAI,EAAE;IACJ,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,gBAAgB,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GACA,OAAO,CAAC,MAAM,CAAC,CAAC;AACnB,wBAAsB,aAAa,CACjC,IAAI,EAAE;IACJ,MAAM,EAAE,UAAU,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,gBAAgB,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GACA,OAAO,CAAC,MAAM,CAAC,CAAC;AA0CnB,wBAAsB,gBAAgB,CAAC,IAAI,EAAE;IAC3C,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,gBAAgB,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAgC7B;AAwCD,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,YAAY,GACrB,QAAQ,IAAI,mBAAmB,CAEjC;AAED,wBAAsB,QAAQ,CAC5B,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,gBAAgB,EACxB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,YAAY,CAAC,CAwBvB"}
1
+ {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../../../../src/auth/browser/login.ts"],"names":[],"mappings":"AAKA,OAAO,EAGL,KAAK,iBAAiB,EAEtB,KAAK,YAAY,EAEjB,KAAK,mBAAmB,EAEzB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAGrD,YAAY,EACV,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,EACZ,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,GACd,MAAM,eAAe,CAAC;AAEvB,MAAM,MAAM,UAAU,GAAG;IACvB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AA2BF,wBAAsB,aAAa,CACjC,MAAM,EAAE,UAAU,EAClB,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,gBAAgB,EACxB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,OAAO,CAAC,EAAE,OAAO,GAChB,OAAO,CAAC,MAAM,CAAC,CAAC;AACnB,wBAAsB,aAAa,CACjC,IAAI,EAAE;IACJ,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,gBAAgB,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GACA,OAAO,CAAC,MAAM,CAAC,CAAC;AACnB,wBAAsB,aAAa,CACjC,IAAI,EAAE;IACJ,MAAM,EAAE,UAAU,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,gBAAgB,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GACA,OAAO,CAAC,MAAM,CAAC,CAAC;AA0CnB,wBAAsB,gBAAgB,CAAC,IAAI,EAAE;IAC3C,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,gBAAgB,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAqD7B;AA0ED,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,YAAY,GACrB,QAAQ,IAAI,mBAAmB,CAEjC;AAED,wBAAsB,QAAQ,CAC5B,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,gBAAgB,EACxB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,YAAY,CAAC,CAwBvB"}
@@ -1,4 +1,5 @@
1
1
  import { Value } from "typebox/value";
2
+ import { digestContractManifest, } from "../../contract_support/mod.js";
2
3
  import { AuthStartRequestSchema, AuthStartResponseSchema, BindResponseSchema, } from "../schemas.js";
3
4
  import { bindFlowSig, getPublicSessionKey, oauthInitSig } from "./session.js";
4
5
  function contextRecord(value) {
@@ -35,26 +36,61 @@ export async function buildLoginUrl(argsOrConfig, provider, redirectTo, handle,
35
36
  }
36
37
  export async function startAuthRequest(args) {
37
38
  const context = contextRecord(args.context);
38
- const sig = await oauthInitSig(args.handle, args.redirectTo, context, args.provider, args.contract);
39
+ const contractDigest = isTrellisContractV1(args.contract)
40
+ ? digestContractManifest(args.contract)
41
+ : undefined;
42
+ const sig = await oauthInitSig(args.handle, args.redirectTo, context, args.provider, contractDigest ?? args.contract);
39
43
  const request = Value.Parse(AuthStartRequestSchema, {
40
44
  redirectTo: args.redirectTo,
41
45
  sessionKey: getPublicSessionKey(args.handle),
42
46
  sig,
43
- contract: args.contract,
47
+ ...(contractDigest ? { contractDigest } : { contract: args.contract }),
44
48
  ...(args.provider ? { provider: args.provider } : {}),
45
49
  ...(context ? { context } : {}),
46
50
  });
47
- const response = await fetch(`${args.authUrl}/auth/requests`, {
51
+ let response = await fetch(`${args.authUrl}/auth/requests`, {
48
52
  method: "POST",
49
53
  headers: { "Content-Type": "application/json" },
50
54
  body: JSON.stringify(request),
51
55
  });
56
+ if (await authStartNeedsManifest(response)) {
57
+ const fullSig = await oauthInitSig(args.handle, args.redirectTo, context, args.provider, args.contract);
58
+ response = await fetch(`${args.authUrl}/auth/requests`, {
59
+ method: "POST",
60
+ headers: { "Content-Type": "application/json" },
61
+ body: JSON.stringify({
62
+ ...request,
63
+ sig: fullSig,
64
+ contract: args.contract,
65
+ }),
66
+ });
67
+ }
52
68
  if (!response.ok) {
53
69
  const text = await response.text();
54
70
  throw new Error(`Auth request failed: ${response.status} ${text}`);
55
71
  }
56
72
  return Value.Parse(AuthStartResponseSchema, await response.json());
57
73
  }
74
+ async function authStartNeedsManifest(response) {
75
+ if (response.ok || response.status !== 409)
76
+ return false;
77
+ const clone = response.clone();
78
+ let payload;
79
+ try {
80
+ payload = await clone.json();
81
+ }
82
+ catch {
83
+ payload = undefined;
84
+ }
85
+ if (payload && typeof payload === "object") {
86
+ const record = payload;
87
+ return record.reason === "manifest_required" ||
88
+ record.code === "manifest_required" ||
89
+ record.error === "manifest_required" ||
90
+ record.message === "manifest_required";
91
+ }
92
+ return (await response.clone().text()).includes("manifest_required");
93
+ }
58
94
  function buildLoginUrlArgsFromPositional(config, provider, redirectTo, handle, contract, context) {
59
95
  if (redirectTo === undefined || handle === undefined || contract === undefined) {
60
96
  throw new TypeError("buildLoginUrl requires redirectTo, handle, and contract");
@@ -68,6 +104,13 @@ function buildLoginUrlArgsFromPositional(config, provider, redirectTo, handle, c
68
104
  context,
69
105
  };
70
106
  }
107
+ function isTrellisContractV1(contract) {
108
+ return contract.format === "trellis.contract.v1" &&
109
+ typeof contract.id === "string" &&
110
+ typeof contract.displayName === "string" &&
111
+ typeof contract.description === "string" &&
112
+ typeof contract.kind === "string";
113
+ }
71
114
  function isNestedBuildLoginUrlArgs(value) {
72
115
  return "config" in value;
73
116
  }
@@ -1 +1 @@
1
- {"version":3,"file":"portal.d.ts","sourceRoot":"","sources":["../../../../../src/auth/browser/portal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAAyB,MAAM,gBAAgB,CAAC;AAC7E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAG7C,YAAY,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAMtD,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,GAAG,IAAI,CAE3D;AAED,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,eAAe,CAAC,CAY1B;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,UAAU,EAClB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,GACb,MAAM,CAKR;AAED,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,gBAAgB,GACzB,OAAO,CAAC,eAAe,CAAC,CAkB1B;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,eAAe,GAAG,IAAI,GAC5B,MAAM,GAAG,IAAI,CAEf"}
1
+ {"version":3,"file":"portal.d.ts","sourceRoot":"","sources":["../../../../../src/auth/browser/portal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAAyB,MAAM,gBAAgB,CAAC;AAC7E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAG7C,YAAY,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAMtD,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,GAAG,IAAI,CAE3D;AAED,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,eAAe,CAAC,CAY1B;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,UAAU,EAClB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,GACb,MAAM,CAKR;AAED,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,gBAAgB,GACzB,OAAO,CAAC,eAAe,CAAC,CAkB1B;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,eAAe,GAAG,IAAI,GAC5B,MAAM,GAAG,IAAI,CAIf"}
@@ -29,5 +29,9 @@ export async function submitPortalApproval(config, flowId, decision) {
29
29
  return Value.Parse(PortalFlowStateSchema, await response.json());
30
30
  }
31
31
  export function portalRedirectLocation(state) {
32
- return state?.status === "redirect" ? state.location : null;
32
+ if (state?.status === "redirect")
33
+ return state.location;
34
+ if (state?.status === "approval_denied")
35
+ return state.returnLocation ?? null;
36
+ return null;
33
37
  }
@@ -3,16 +3,27 @@ export type SessionKeyHandle = {
3
3
  publicKey: CryptoKey;
4
4
  publicKeyRaw: Uint8Array;
5
5
  sessionKey: string;
6
+ persistence?: SessionKeyPersistenceMode;
7
+ expiresAt?: number;
6
8
  };
7
- export declare function generateSessionKey(): Promise<SessionKeyHandle>;
8
- export declare function loadSessionKey(): Promise<SessionKeyHandle | null>;
9
- export declare function getOrCreateSessionKey(): Promise<SessionKeyHandle>;
9
+ export type SessionKeyPersistenceMode = "temporary" | "remembered";
10
+ export type SessionKeyOptions = {
11
+ /** Defaults to remembered IndexedDB storage. */
12
+ persistence?: SessionKeyPersistenceMode;
13
+ /** Expiry for remembered keys, as epoch milliseconds or a Date. */
14
+ expiresAt?: number | Date;
15
+ /** Relative expiry for remembered keys. Ignored when expiresAt is set. */
16
+ ttlMs?: number;
17
+ };
18
+ export declare function generateSessionKey(options?: SessionKeyOptions): Promise<SessionKeyHandle>;
19
+ export declare function loadSessionKey(options?: Pick<SessionKeyOptions, "persistence">): Promise<SessionKeyHandle | null>;
20
+ export declare function getOrCreateSessionKey(options?: SessionKeyOptions): Promise<SessionKeyHandle>;
10
21
  export declare function signBytes(handle: SessionKeyHandle, data: Uint8Array): Promise<Uint8Array>;
11
22
  export declare function getPublicSessionKey(handle: SessionKeyHandle): string;
12
- export declare function oauthInitSig(handle: SessionKeyHandle, redirectTo: string, context?: unknown, provider?: string, contract?: Record<string, unknown>): Promise<string>;
23
+ export declare function oauthInitSig(handle: SessionKeyHandle, redirectTo: string, context?: unknown, provider?: string, contract?: Record<string, unknown> | string): Promise<string>;
13
24
  export declare function bindFlowSig(handle: SessionKeyHandle, flowId: string): Promise<string>;
14
25
  export declare function natsConnectSigForIat(handle: SessionKeyHandle, iat: number, contractDigest: string): Promise<string>;
15
- export declare function createRpcProof(handle: SessionKeyHandle, subject: string, payload: Uint8Array): Promise<string>;
16
- export declare function clearSessionKey(): Promise<void>;
17
- export declare function hasSessionKey(): Promise<boolean>;
26
+ export declare function createRpcProof(handle: SessionKeyHandle, subject: string, payload: Uint8Array, requestId: string, iat: number): Promise<string>;
27
+ export declare function clearSessionKey(options?: Pick<SessionKeyOptions, "persistence">): Promise<void>;
28
+ export declare function hasSessionKey(options?: Pick<SessionKeyOptions, "persistence">): Promise<boolean>;
18
29
  //# sourceMappingURL=session.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../../../src/auth/browser/session.ts"],"names":[],"mappings":"AAgBA,MAAM,MAAM,gBAAgB,GAAG;IAC7B,UAAU,EAAE,SAAS,CAAC;IACtB,SAAS,EAAE,SAAS,CAAC;IACrB,YAAY,EAAE,UAAU,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAoBpE;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CASvE;AAED,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAIvE;AAED,wBAAsB,SAAS,CAC7B,MAAM,EAAE,gBAAgB,EACxB,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,UAAU,CAAC,CAOrB;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAEpE;AAED,wBAAsB,YAAY,CAChC,MAAM,EAAE,gBAAgB,EACxB,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,OAAO,EACjB,QAAQ,CAAC,EAAE,MAAM,EACjB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACjC,OAAO,CAAC,MAAM,CAAC,CAUjB;AAED,wBAAsB,WAAW,CAC/B,MAAM,EAAE,gBAAgB,EACxB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,CAAC,CAIjB;AAED,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,gBAAgB,EACxB,GAAG,EAAE,MAAM,EACX,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,MAAM,CAAC,CAQjB;AAED,wBAAsB,cAAc,CAClC,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,UAAU,GAClB,OAAO,CAAC,MAAM,CAAC,CAOjB;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAErD;AAED,wBAAsB,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC,CAEtD"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../../../src/auth/browser/session.ts"],"names":[],"mappings":"AAgBA,MAAM,MAAM,gBAAgB,GAAG;IAC7B,UAAU,EAAE,SAAS,CAAC;IACtB,SAAS,EAAE,SAAS,CAAC;IACrB,YAAY,EAAE,UAAU,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,yBAAyB,CAAC;IACxC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG,WAAW,GAAG,YAAY,CAAC;AAEnE,MAAM,MAAM,iBAAiB,GAAG;IAC9B,gDAAgD;IAChD,WAAW,CAAC,EAAE,yBAAyB,CAAC;IACxC,mEAAmE;IACnE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,0EAA0E;IAC1E,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAWF,wBAAsB,kBAAkB,CACtC,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,gBAAgB,CAAC,CA8B3B;AAED,wBAAsB,cAAc,CAClC,OAAO,GAAE,IAAI,CAAC,iBAAiB,EAAE,aAAa,CAAM,GACnD,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAalC;AAED,wBAAsB,qBAAqB,CACzC,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,gBAAgB,CAAC,CAI3B;AAED,wBAAsB,SAAS,CAC7B,MAAM,EAAE,gBAAgB,EACxB,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,UAAU,CAAC,CAOrB;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAEpE;AAED,wBAAsB,YAAY,CAChC,MAAM,EAAE,gBAAgB,EACxB,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,OAAO,EACjB,QAAQ,CAAC,EAAE,MAAM,EACjB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAC1C,OAAO,CAAC,MAAM,CAAC,CAUjB;AAED,wBAAsB,WAAW,CAC/B,MAAM,EAAE,gBAAgB,EACxB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,CAAC,CAIjB;AAED,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,gBAAgB,EACxB,GAAG,EAAE,MAAM,EACX,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,MAAM,CAAC,CAQjB;AAED,wBAAsB,cAAc,CAClC,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,UAAU,EACnB,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,MAAM,CAAC,CASjB;AAED,wBAAsB,eAAe,CACnC,OAAO,GAAE,IAAI,CAAC,iBAAiB,EAAE,aAAa,CAAM,GACnD,OAAO,CAAC,IAAI,CAAC,CAQf;AAED,wBAAsB,aAAa,CACjC,OAAO,GAAE,IAAI,CAAC,iBAAiB,EAAE,aAAa,CAAM,GACnD,OAAO,CAAC,OAAO,CAAC,CAIlB"}
@@ -2,19 +2,42 @@ import { base64urlEncode, canonicalizeJsonValue, sha256, toArrayBuffer, utf8, }
2
2
  import { createProof } from "../proof.js";
3
3
  import { buildNatsConnectSignaturePayload } from "../session_auth.js";
4
4
  import { deleteKeyPair, hasKeyPair, loadKeyPair, storeKeyPair, } from "./storage.js";
5
- export async function generateSessionKey() {
5
+ let temporarySessionKey = null;
6
+ function resolveExpiresAt(options) {
7
+ if (options.expiresAt instanceof Date)
8
+ return options.expiresAt.getTime();
9
+ if (typeof options.expiresAt === "number")
10
+ return options.expiresAt;
11
+ if (typeof options.ttlMs === "number")
12
+ return Date.now() + options.ttlMs;
13
+ return undefined;
14
+ }
15
+ export async function generateSessionKey(options = {}) {
16
+ const persistence = options.persistence ?? "remembered";
17
+ const expiresAt = resolveExpiresAt(options);
6
18
  const keyPair = await crypto.subtle.generateKey({ name: "Ed25519" }, false, ["sign", "verify"]);
7
19
  const publicKeyRaw = new Uint8Array(await crypto.subtle.exportKey("raw", keyPair.publicKey));
8
20
  const sessionKey = base64urlEncode(publicKeyRaw);
9
- await storeKeyPair(keyPair, publicKeyRaw);
10
- return {
21
+ const handle = {
11
22
  privateKey: keyPair.privateKey,
12
23
  publicKey: keyPair.publicKey,
13
24
  publicKeyRaw,
14
25
  sessionKey,
26
+ persistence,
27
+ ...(expiresAt === undefined ? {} : { expiresAt }),
15
28
  };
29
+ if (persistence === "temporary") {
30
+ temporarySessionKey = handle;
31
+ }
32
+ else {
33
+ await storeKeyPair(keyPair, publicKeyRaw, { expiresAt });
34
+ }
35
+ return handle;
16
36
  }
17
- export async function loadSessionKey() {
37
+ export async function loadSessionKey(options = {}) {
38
+ const persistence = options.persistence ?? "remembered";
39
+ if (persistence === "temporary")
40
+ return temporarySessionKey;
18
41
  const stored = await loadKeyPair();
19
42
  if (!stored)
20
43
  return null;
@@ -23,13 +46,15 @@ export async function loadSessionKey() {
23
46
  publicKey: stored.publicKey,
24
47
  publicKeyRaw: stored.publicKeyRaw,
25
48
  sessionKey: base64urlEncode(stored.publicKeyRaw),
49
+ persistence: "remembered",
50
+ ...(stored.expiresAt === undefined ? {} : { expiresAt: stored.expiresAt }),
26
51
  };
27
52
  }
28
- export async function getOrCreateSessionKey() {
29
- const existing = await loadSessionKey();
53
+ export async function getOrCreateSessionKey(options = {}) {
54
+ const existing = await loadSessionKey(options);
30
55
  if (existing)
31
56
  return existing;
32
- return await generateSessionKey();
57
+ return await generateSessionKey(options);
33
58
  }
34
59
  export async function signBytes(handle, data) {
35
60
  const sig = await crypto.subtle.sign({ name: "Ed25519" }, handle.privateKey, toArrayBuffer(data));
@@ -57,17 +82,28 @@ export async function natsConnectSigForIat(handle, iat, contractDigest) {
57
82
  const sig = await signBytes(handle, digest);
58
83
  return base64urlEncode(sig);
59
84
  }
60
- export async function createRpcProof(handle, subject, payload) {
85
+ export async function createRpcProof(handle, subject, payload, requestId, iat) {
61
86
  const payloadHash = await sha256(payload);
62
87
  return await createProof(handle.privateKey, {
63
88
  sessionKey: handle.sessionKey,
64
89
  subject,
65
90
  payloadHash,
91
+ iat,
92
+ requestId,
66
93
  });
67
94
  }
68
- export async function clearSessionKey() {
69
- await deleteKeyPair();
95
+ export async function clearSessionKey(options = {}) {
96
+ const persistence = options.persistence;
97
+ if (persistence === undefined || persistence === "temporary") {
98
+ temporarySessionKey = null;
99
+ }
100
+ if (persistence === undefined || persistence === "remembered") {
101
+ await deleteKeyPair();
102
+ }
70
103
  }
71
- export async function hasSessionKey() {
104
+ export async function hasSessionKey(options = {}) {
105
+ const persistence = options.persistence ?? "remembered";
106
+ if (persistence === "temporary")
107
+ return temporarySessionKey !== null;
72
108
  return await hasKeyPair();
73
109
  }
@@ -4,8 +4,13 @@ export type StoredKeyPair = {
4
4
  publicKey: CryptoKey;
5
5
  publicKeyRaw: Uint8Array;
6
6
  createdAt: number;
7
+ persistence?: "remembered";
8
+ expiresAt?: number;
7
9
  };
8
- export declare function storeKeyPair(keyPair: CryptoKeyPair, publicKeyRaw: Uint8Array): Promise<void>;
10
+ export type StoredKeyPairOptions = {
11
+ expiresAt?: number;
12
+ };
13
+ export declare function storeKeyPair(keyPair: CryptoKeyPair, publicKeyRaw: Uint8Array, options?: StoredKeyPairOptions): Promise<void>;
9
14
  export declare function loadKeyPair(): Promise<StoredKeyPair | null>;
10
15
  export declare function deleteKeyPair(): Promise<void>;
11
16
  export declare function hasKeyPair(): Promise<boolean>;
@@ -1 +1 @@
1
- {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../../../src/auth/browser/storage.ts"],"names":[],"mappings":"AAqBA,MAAM,MAAM,aAAa,GAAG;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,SAAS,CAAC;IACtB,SAAS,EAAE,SAAS,CAAC;IACrB,YAAY,EAAE,UAAU,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,wBAAsB,YAAY,CAChC,OAAO,EAAE,aAAa,EACtB,YAAY,EAAE,UAAU,GACvB,OAAO,CAAC,IAAI,CAAC,CAoBf;AAED,wBAAsB,WAAW,IAAI,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAYjE;AAED,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAYnD;AAED,wBAAsB,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC,CAGnD"}
1
+ {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../../../src/auth/browser/storage.ts"],"names":[],"mappings":"AAqBA,MAAM,MAAM,aAAa,GAAG;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,SAAS,CAAC;IACtB,SAAS,EAAE,SAAS,CAAC;IACrB,YAAY,EAAE,UAAU,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,YAAY,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,wBAAsB,YAAY,CAChC,OAAO,EAAE,aAAa,EACtB,YAAY,EAAE,UAAU,EACxB,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,IAAI,CAAC,CAwBf;AAED,wBAAsB,WAAW,IAAI,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAoBjE;AAED,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAYnD;AAED,wBAAsB,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC,CAGnD"}
@@ -15,7 +15,7 @@ function openDB() {
15
15
  };
16
16
  });
17
17
  }
18
- export async function storeKeyPair(keyPair, publicKeyRaw) {
18
+ export async function storeKeyPair(keyPair, publicKeyRaw, options = {}) {
19
19
  const db = await openDB();
20
20
  return new Promise((resolve, reject) => {
21
21
  const tx = db.transaction(STORE_NAME, "readwrite");
@@ -26,6 +26,10 @@ export async function storeKeyPair(keyPair, publicKeyRaw) {
26
26
  publicKey: keyPair.publicKey,
27
27
  publicKeyRaw,
28
28
  createdAt: Date.now(),
29
+ persistence: "remembered",
30
+ ...(options.expiresAt === undefined
31
+ ? {}
32
+ : { expiresAt: options.expiresAt }),
29
33
  };
30
34
  const request = store.put(record);
31
35
  request.onerror = () => reject(request.error);
@@ -36,11 +40,19 @@ export async function storeKeyPair(keyPair, publicKeyRaw) {
36
40
  export async function loadKeyPair() {
37
41
  const db = await openDB();
38
42
  return new Promise((resolve, reject) => {
39
- const tx = db.transaction(STORE_NAME, "readonly");
43
+ const tx = db.transaction(STORE_NAME, "readwrite");
40
44
  const store = tx.objectStore(STORE_NAME);
41
45
  const request = store.get(KEY_ID);
42
46
  request.onerror = () => reject(request.error);
43
- request.onsuccess = () => resolve(request.result ?? null);
47
+ request.onsuccess = () => {
48
+ const result = request.result;
49
+ if (result?.expiresAt !== undefined && result.expiresAt <= Date.now()) {
50
+ store.delete(KEY_ID);
51
+ resolve(null);
52
+ return;
53
+ }
54
+ resolve(result ?? null);
55
+ };
44
56
  tx.oncomplete = () => db.close();
45
57
  });
46
58
  }