@tempoxyz/id 0.0.0-stage → 0.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (712) hide show
  1. package/README.md +80 -2
  2. package/dist/App.d.ts +20 -0
  3. package/dist/App.d.ts.map +1 -0
  4. package/dist/App.js +26 -0
  5. package/dist/App.js.map +1 -0
  6. package/dist/app/client/.assetsignore +2 -0
  7. package/dist/app/client/assets/BRLA-CZvVDNYr.png +0 -0
  8. package/dist/app/client/assets/CHFAU-DCedc4aH.png +0 -0
  9. package/dist/app/client/assets/DLUSD-BnRXm3EI.png +0 -0
  10. package/dist/app/client/assets/PRIME-CiFp2-3e.svg +14 -0
  11. package/dist/app/client/assets/Pilat-Bold-C1t1eIrF.woff2 +0 -0
  12. package/dist/app/client/assets/Pilat-Book-CbS8ofT8.woff2 +0 -0
  13. package/dist/app/client/assets/Pilat-Demi-CADSbPAt.woff2 +0 -0
  14. package/dist/app/client/assets/Pilat-Regular-Bx8vzE7q.woff2 +0 -0
  15. package/dist/app/client/assets/USD1-COVcO_PB.svg +30 -0
  16. package/dist/app/client/assets/YLDS-CRh8Zw0g.svg +3 -0
  17. package/dist/app/client/assets/ccip-Cq1mMiVl.js +1 -0
  18. package/dist/app/client/assets/frxUSD-n9pTpinR.svg +1 -0
  19. package/dist/app/client/assets/geist-mono-latin-wght-normal-XN7g48iV.woff2 +0 -0
  20. package/dist/app/client/assets/index-B7YJVP00.css +1 -0
  21. package/dist/app/client/assets/index-UXTxXCLk.js +55 -0
  22. package/dist/app/client/assets/pathUSD-BvaO6ooS.svg +25 -0
  23. package/dist/app/client/assets/reset-co-CHrff.css +1 -0
  24. package/dist/app/client/assets/wYLDS-CaCKDrO-.svg +10 -0
  25. package/dist/app/db/auth.d.ts +3207 -0
  26. package/dist/app/db/auth.d.ts.map +1 -0
  27. package/dist/app/db/auth.js +330 -0
  28. package/dist/app/db/auth.js.map +1 -0
  29. package/dist/app/db/schema.d.ts +932 -0
  30. package/dist/app/db/schema.d.ts.map +1 -0
  31. package/dist/app/db/schema.js +171 -0
  32. package/dist/app/db/schema.js.map +1 -0
  33. package/dist/app/server/.vite/manifest.json +489 -0
  34. package/dist/app/server/assets/BRLA-CZvVDNYr.png +0 -0
  35. package/dist/app/server/assets/CHFAU-DCedc4aH.png +0 -0
  36. package/dist/app/server/assets/DLUSD-BnRXm3EI.png +0 -0
  37. package/dist/app/server/assets/PRIME-CiFp2-3e.svg +14 -0
  38. package/dist/app/server/assets/Pilat-Bold-C1t1eIrF.woff2 +0 -0
  39. package/dist/app/server/assets/Pilat-Book-CbS8ofT8.woff2 +0 -0
  40. package/dist/app/server/assets/Pilat-Demi-CADSbPAt.woff2 +0 -0
  41. package/dist/app/server/assets/Pilat-Regular-Bx8vzE7q.woff2 +0 -0
  42. package/dist/app/server/assets/USD1-COVcO_PB.svg +30 -0
  43. package/dist/app/server/assets/YLDS-CRh8Zw0g.svg +3 -0
  44. package/dist/app/server/assets/_tanstack-start-manifest_v-11GtFGrq.js +1 -0
  45. package/dist/app/server/assets/arktype-aI7TBD0R-D1R3Byo5.js +2 -0
  46. package/dist/app/server/assets/arktype-aI7TBD0R-D1R3Byo5.js.map +1 -0
  47. package/dist/app/server/assets/authorize-C95F-9E1-CbESJKGU.js +31 -0
  48. package/dist/app/server/assets/authorize-C95F-9E1-CbESJKGU.js.map +1 -0
  49. package/dist/app/server/assets/bun-sqlite-dialect-DoOVo4ja-CtyBkVMb.js +2 -0
  50. package/dist/app/server/assets/bun-sqlite-dialect-DoOVo4ja-CtyBkVMb.js.map +1 -0
  51. package/dist/app/server/assets/call-UQamaCKN.js +32 -0
  52. package/dist/app/server/assets/call-UQamaCKN.js.map +1 -0
  53. package/dist/app/server/assets/ccip-CbNKFO4n.js +2 -0
  54. package/dist/app/server/assets/ccip-CbNKFO4n.js.map +1 -0
  55. package/dist/app/server/assets/compiled-query-Ds2NVcFT.js +2 -0
  56. package/dist/app/server/assets/compiled-query-Ds2NVcFT.js.map +1 -0
  57. package/dist/app/server/assets/convert-BIC8n32x.js +2 -0
  58. package/dist/app/server/assets/convert-BIC8n32x.js.map +1 -0
  59. package/dist/app/server/assets/cookie-CS900nSP.css +1 -0
  60. package/dist/app/server/assets/cookie-Cce9CrIP.js +10 -0
  61. package/dist/app/server/assets/cookie-Cce9CrIP.js.map +1 -0
  62. package/dist/app/server/assets/core-B1HCXUmx.js +56 -0
  63. package/dist/app/server/assets/core-B1HCXUmx.js.map +1 -0
  64. package/dist/app/server/assets/d1-sqlite-dialect-m0f01-4z-Cv-csE1u.js +2 -0
  65. package/dist/app/server/assets/d1-sqlite-dialect-m0f01-4z-Cv-csE1u.js.map +1 -0
  66. package/dist/app/server/assets/default-u_dwuiYb-BJJ9PwCi.js +2 -0
  67. package/dist/app/server/assets/default-u_dwuiYb-BJJ9PwCi.js.map +1 -0
  68. package/dist/app/server/assets/dist-BxSwugSY.js +1 -0
  69. package/dist/app/server/assets/dist-CZGFhmQd.js +2 -0
  70. package/dist/app/server/assets/dist-CZGFhmQd.js.map +1 -0
  71. package/dist/app/server/assets/dist-Dg3PQqiW.js +15 -0
  72. package/dist/app/server/assets/dist-Dg3PQqiW.js.map +1 -0
  73. package/dist/app/server/assets/effect-QlVUlMFu-2tSPDT2b.js +2 -0
  74. package/dist/app/server/assets/effect-QlVUlMFu-2tSPDT2b.js.map +1 -0
  75. package/dist/app/server/assets/empty-plugin-adapters-BaGcmrjC.js +2 -0
  76. package/dist/app/server/assets/empty-plugin-adapters-BaGcmrjC.js.map +1 -0
  77. package/dist/app/server/assets/factory-ipHlJXZY.js +5 -0
  78. package/dist/app/server/assets/factory-ipHlJXZY.js.map +1 -0
  79. package/dist/app/server/assets/frxUSD-n9pTpinR.svg +1 -0
  80. package/dist/app/server/assets/geist-mono-latin-wght-normal-XN7g48iV.woff2 +0 -0
  81. package/dist/app/server/assets/get-id-field-B0x109VU.js +6 -0
  82. package/dist/app/server/assets/get-id-field-B0x109VU.js.map +1 -0
  83. package/dist/app/server/assets/index-CLddUTqr-xpSuLpBt.js +2 -0
  84. package/dist/app/server/assets/index-CLddUTqr-xpSuLpBt.js.map +1 -0
  85. package/dist/app/server/assets/index-DZEfthgZ-8Uq5s5Pt.js +2 -0
  86. package/dist/app/server/assets/index-DZEfthgZ-8Uq5s5Pt.js.map +1 -0
  87. package/dist/app/server/assets/kysely-adapter-MkHAI9Jk.js +1 -0
  88. package/dist/app/server/assets/node-sqlite-dialect-BowWLXvK.js +2 -0
  89. package/dist/app/server/assets/node-sqlite-dialect-BowWLXvK.js.map +1 -0
  90. package/dist/app/server/assets/pathUSD-BvaO6ooS.svg +25 -0
  91. package/dist/app/server/assets/reset-co-CHrff.css +1 -0
  92. package/dist/app/server/assets/rolldown-runtime-B0Z9INg1.js +1 -0
  93. package/dist/app/server/assets/router-CcbyBCI4.css +1 -0
  94. package/dist/app/server/assets/router-xjZtEeaI.js +7 -0
  95. package/dist/app/server/assets/router-xjZtEeaI.js.map +1 -0
  96. package/dist/app/server/assets/schema-check-Cf7QOZZD.js +9 -0
  97. package/dist/app/server/assets/schema-check-Cf7QOZZD.js.map +1 -0
  98. package/dist/app/server/assets/schemas-C2lCYmR5.js +2 -0
  99. package/dist/app/server/assets/schemas-C2lCYmR5.js.map +1 -0
  100. package/dist/app/server/assets/secp256k1-buM5g4AL.js +2 -0
  101. package/dist/app/server/assets/secp256k1-buM5g4AL.js.map +1 -0
  102. package/dist/app/server/assets/sqlite-adapter-C_LAV4e3.js +2 -0
  103. package/dist/app/server/assets/sqlite-adapter-C_LAV4e3.js.map +1 -0
  104. package/dist/app/server/assets/sqlite-introspector-DSCAP82F-Crx7Ny14.js +6 -0
  105. package/dist/app/server/assets/sqlite-introspector-DSCAP82F-Crx7Ny14.js.map +1 -0
  106. package/dist/app/server/assets/standard-json-Cg1N07hM.js +2 -0
  107. package/dist/app/server/assets/standard-json-Cg1N07hM.js.map +1 -0
  108. package/dist/app/server/assets/standard-json-DY77efq0.js +2 -0
  109. package/dist/app/server/assets/standard-json-DY77efq0.js.map +1 -0
  110. package/dist/app/server/assets/standard-json-ig2t0wRt.js +2 -0
  111. package/dist/app/server/assets/standard-json-ig2t0wRt.js.map +1 -0
  112. package/dist/app/server/assets/standard-json-t-LNckA6.js +2 -0
  113. package/dist/app/server/assets/standard-json-t-LNckA6.js.map +1 -0
  114. package/dist/app/server/assets/standard-openapi-CONmVRl8.js +2 -0
  115. package/dist/app/server/assets/standard-openapi-CONmVRl8.js.map +1 -0
  116. package/dist/app/server/assets/start-C63VetBp.js +2 -0
  117. package/dist/app/server/assets/start-C63VetBp.js.map +1 -0
  118. package/dist/app/server/assets/sury-CWZTCd75-xt1mWc9f.js +2 -0
  119. package/dist/app/server/assets/sury-CWZTCd75-xt1mWc9f.js.map +1 -0
  120. package/dist/app/server/assets/typebox-Dei93FPO-D_lCVdAz.js +2 -0
  121. package/dist/app/server/assets/typebox-Dei93FPO-D_lCVdAz.js.map +1 -0
  122. package/dist/app/server/assets/utils-C4ZXZIZW.js +2 -0
  123. package/dist/app/server/assets/utils-C4ZXZIZW.js.map +1 -0
  124. package/dist/app/server/assets/valibot--1zFm7rT-NSoY2xTp.js +2 -0
  125. package/dist/app/server/assets/valibot--1zFm7rT-NSoY2xTp.js.map +1 -0
  126. package/dist/app/server/assets/valibot-D_HTw1Gn-CJwWeOUE.js +2 -0
  127. package/dist/app/server/assets/valibot-D_HTw1Gn-CJwWeOUE.js.map +1 -0
  128. package/dist/app/server/assets/wYLDS-CaCKDrO-.svg +10 -0
  129. package/dist/app/server/assets/zod-Bwrt9trS-CV38yPnQ.js +2 -0
  130. package/dist/app/server/assets/zod-Bwrt9trS-CV38yPnQ.js.map +1 -0
  131. package/dist/app/server/assets/zod-DSgpEGAE-BvlnBE2L.js +2 -0
  132. package/dist/app/server/assets/zod-DSgpEGAE-BvlnBE2L.js.map +1 -0
  133. package/dist/app/server/index.js +574 -0
  134. package/dist/app/server/index.js.map +1 -0
  135. package/dist/app/server/wrangler.json +1 -0
  136. package/dist/cli/Admin.d.ts +38 -0
  137. package/dist/cli/Admin.d.ts.map +1 -0
  138. package/dist/cli/Admin.js +62 -0
  139. package/dist/cli/Admin.js.map +1 -0
  140. package/dist/cli/Apps.d.ts +9 -0
  141. package/dist/cli/Apps.d.ts.map +1 -0
  142. package/dist/cli/Apps.js +36 -0
  143. package/dist/cli/Apps.js.map +1 -0
  144. package/dist/cli/Cli.d.ts +14 -0
  145. package/dist/cli/Cli.d.ts.map +1 -0
  146. package/dist/cli/Cli.js +27 -0
  147. package/dist/cli/Cli.js.map +1 -0
  148. package/dist/cli/Project.d.ts +20 -0
  149. package/dist/cli/Project.d.ts.map +1 -0
  150. package/dist/cli/Project.js +88 -0
  151. package/dist/cli/Project.js.map +1 -0
  152. package/dist/cli/Realms.d.ts +24 -0
  153. package/dist/cli/Realms.d.ts.map +1 -0
  154. package/dist/cli/Realms.js +49 -0
  155. package/dist/cli/Realms.js.map +1 -0
  156. package/dist/cli/Session.d.ts +85 -0
  157. package/dist/cli/Session.d.ts.map +1 -0
  158. package/dist/cli/Session.js +178 -0
  159. package/dist/cli/Session.js.map +1 -0
  160. package/dist/cli/User.d.ts +29 -0
  161. package/dist/cli/User.d.ts.map +1 -0
  162. package/dist/cli/User.js +39 -0
  163. package/dist/cli/User.js.map +1 -0
  164. package/dist/cli/V1.d.ts +35 -0
  165. package/dist/cli/V1.d.ts.map +1 -0
  166. package/dist/cli/V1.js +41 -0
  167. package/dist/cli/V1.js.map +1 -0
  168. package/dist/cli/bin.d.ts +3 -0
  169. package/dist/cli/bin.d.ts.map +1 -0
  170. package/dist/cli/bin.js +46 -0
  171. package/dist/cli/bin.js.map +1 -0
  172. package/dist/cli/commands/admin/apps/create.d.ts +23 -0
  173. package/dist/cli/commands/admin/apps/create.d.ts.map +1 -0
  174. package/dist/cli/commands/admin/apps/create.js +89 -0
  175. package/dist/cli/commands/admin/apps/create.js.map +1 -0
  176. package/dist/cli/commands/admin/apps/delete.d.ts +14 -0
  177. package/dist/cli/commands/admin/apps/delete.d.ts.map +1 -0
  178. package/dist/cli/commands/admin/apps/delete.js +41 -0
  179. package/dist/cli/commands/admin/apps/delete.js.map +1 -0
  180. package/dist/cli/commands/admin/apps/index.d.ts +5 -0
  181. package/dist/cli/commands/admin/apps/index.d.ts.map +1 -0
  182. package/dist/cli/commands/admin/apps/index.js +14 -0
  183. package/dist/cli/commands/admin/apps/index.js.map +1 -0
  184. package/dist/cli/commands/admin/apps/list.d.ts +9 -0
  185. package/dist/cli/commands/admin/apps/list.d.ts.map +1 -0
  186. package/dist/cli/commands/admin/apps/list.js +26 -0
  187. package/dist/cli/commands/admin/apps/list.js.map +1 -0
  188. package/dist/cli/commands/admin/apps/rotate-secret.d.ts +16 -0
  189. package/dist/cli/commands/admin/apps/rotate-secret.d.ts.map +1 -0
  190. package/dist/cli/commands/admin/apps/rotate-secret.js +47 -0
  191. package/dist/cli/commands/admin/apps/rotate-secret.js.map +1 -0
  192. package/dist/cli/commands/admin/apps/update.d.ts +20 -0
  193. package/dist/cli/commands/admin/apps/update.d.ts.map +1 -0
  194. package/dist/cli/commands/admin/apps/update.js +76 -0
  195. package/dist/cli/commands/admin/apps/update.js.map +1 -0
  196. package/dist/cli/commands/admin/index.d.ts +5 -0
  197. package/dist/cli/commands/admin/index.d.ts.map +1 -0
  198. package/dist/cli/commands/admin/index.js +13 -0
  199. package/dist/cli/commands/admin/index.js.map +1 -0
  200. package/dist/cli/commands/admin/migrate.d.ts +9 -0
  201. package/dist/cli/commands/admin/migrate.d.ts.map +1 -0
  202. package/dist/cli/commands/admin/migrate.js +17 -0
  203. package/dist/cli/commands/admin/migrate.js.map +1 -0
  204. package/dist/cli/commands/admin/realms/add.d.ts +12 -0
  205. package/dist/cli/commands/admin/realms/add.d.ts.map +1 -0
  206. package/dist/cli/commands/admin/realms/add.js +42 -0
  207. package/dist/cli/commands/admin/realms/add.js.map +1 -0
  208. package/dist/cli/commands/admin/realms/index.d.ts +5 -0
  209. package/dist/cli/commands/admin/realms/index.d.ts.map +1 -0
  210. package/dist/cli/commands/admin/realms/index.js +13 -0
  211. package/dist/cli/commands/admin/realms/index.js.map +1 -0
  212. package/dist/cli/commands/admin/realms/list.d.ts +13 -0
  213. package/dist/cli/commands/admin/realms/list.d.ts.map +1 -0
  214. package/dist/cli/commands/admin/realms/list.js +36 -0
  215. package/dist/cli/commands/admin/realms/list.js.map +1 -0
  216. package/dist/cli/commands/admin/realms/passkeys/index.d.ts +5 -0
  217. package/dist/cli/commands/admin/realms/passkeys/index.d.ts.map +1 -0
  218. package/dist/cli/commands/admin/realms/passkeys/index.js +13 -0
  219. package/dist/cli/commands/admin/realms/passkeys/index.js.map +1 -0
  220. package/dist/cli/commands/admin/realms/passkeys/set.d.ts +16 -0
  221. package/dist/cli/commands/admin/realms/passkeys/set.d.ts.map +1 -0
  222. package/dist/cli/commands/admin/realms/passkeys/set.js +46 -0
  223. package/dist/cli/commands/admin/realms/passkeys/set.js.map +1 -0
  224. package/dist/cli/commands/admin/realms/privy/index.d.ts +5 -0
  225. package/dist/cli/commands/admin/realms/privy/index.d.ts.map +1 -0
  226. package/dist/cli/commands/admin/realms/privy/index.js +13 -0
  227. package/dist/cli/commands/admin/realms/privy/index.js.map +1 -0
  228. package/dist/cli/commands/admin/realms/privy/set.d.ts +18 -0
  229. package/dist/cli/commands/admin/realms/privy/set.d.ts.map +1 -0
  230. package/dist/cli/commands/admin/realms/privy/set.js +66 -0
  231. package/dist/cli/commands/admin/realms/privy/set.js.map +1 -0
  232. package/dist/cli/commands/admin/realms/remove.d.ts +11 -0
  233. package/dist/cli/commands/admin/realms/remove.d.ts.map +1 -0
  234. package/dist/cli/commands/admin/realms/remove.js +35 -0
  235. package/dist/cli/commands/admin/realms/remove.js.map +1 -0
  236. package/dist/cli/commands/admin/realms/secp256k1/disable.d.ts +15 -0
  237. package/dist/cli/commands/admin/realms/secp256k1/disable.d.ts.map +1 -0
  238. package/dist/cli/commands/admin/realms/secp256k1/disable.js +42 -0
  239. package/dist/cli/commands/admin/realms/secp256k1/disable.js.map +1 -0
  240. package/dist/cli/commands/admin/realms/secp256k1/enable.d.ts +15 -0
  241. package/dist/cli/commands/admin/realms/secp256k1/enable.d.ts.map +1 -0
  242. package/dist/cli/commands/admin/realms/secp256k1/enable.js +42 -0
  243. package/dist/cli/commands/admin/realms/secp256k1/enable.js.map +1 -0
  244. package/dist/cli/commands/admin/realms/secp256k1/index.d.ts +9 -0
  245. package/dist/cli/commands/admin/realms/secp256k1/index.d.ts.map +1 -0
  246. package/dist/cli/commands/admin/realms/secp256k1/index.js +17 -0
  247. package/dist/cli/commands/admin/realms/secp256k1/index.js.map +1 -0
  248. package/dist/cli/commands/admin/realms/set.d.ts +16 -0
  249. package/dist/cli/commands/admin/realms/set.d.ts.map +1 -0
  250. package/dist/cli/commands/admin/realms/set.js +46 -0
  251. package/dist/cli/commands/admin/realms/set.js.map +1 -0
  252. package/dist/cli/commands/admin/rotate-key.d.ts +15 -0
  253. package/dist/cli/commands/admin/rotate-key.d.ts.map +1 -0
  254. package/dist/cli/commands/admin/rotate-key.js +46 -0
  255. package/dist/cli/commands/admin/rotate-key.js.map +1 -0
  256. package/dist/cli/commands/init.d.ts +11 -0
  257. package/dist/cli/commands/init.d.ts.map +1 -0
  258. package/dist/cli/commands/init.js +34 -0
  259. package/dist/cli/commands/init.js.map +1 -0
  260. package/dist/cli/commands/login.d.ts +12 -0
  261. package/dist/cli/commands/login.d.ts.map +1 -0
  262. package/dist/cli/commands/login.js +29 -0
  263. package/dist/cli/commands/login.js.map +1 -0
  264. package/dist/cli/commands/logout.d.ts +8 -0
  265. package/dist/cli/commands/logout.d.ts.map +1 -0
  266. package/dist/cli/commands/logout.js +19 -0
  267. package/dist/cli/commands/logout.js.map +1 -0
  268. package/dist/cli/commands/whoami.d.ts +12 -0
  269. package/dist/cli/commands/whoami.d.ts.map +1 -0
  270. package/dist/cli/commands/whoami.js +24 -0
  271. package/dist/cli/commands/whoami.js.map +1 -0
  272. package/dist/client/Actions.d.ts +101 -0
  273. package/dist/client/Actions.d.ts.map +1 -0
  274. package/dist/client/Actions.js +90 -0
  275. package/dist/client/Actions.js.map +1 -0
  276. package/dist/client/Auth.d.ts +161 -0
  277. package/dist/client/Auth.d.ts.map +1 -0
  278. package/dist/client/Auth.js +113 -0
  279. package/dist/client/Auth.js.map +1 -0
  280. package/dist/client/Authorization.d.ts +29 -0
  281. package/dist/client/Authorization.d.ts.map +1 -0
  282. package/dist/client/Authorization.js +12 -0
  283. package/dist/client/Authorization.js.map +1 -0
  284. package/dist/client/Decorator.d.ts +170 -0
  285. package/dist/client/Decorator.d.ts.map +1 -0
  286. package/dist/client/Decorator.js +227 -0
  287. package/dist/client/Decorator.js.map +1 -0
  288. package/dist/client/Key.d.ts +85 -0
  289. package/dist/client/Key.d.ts.map +1 -0
  290. package/dist/client/Key.js +83 -0
  291. package/dist/client/Key.js.map +1 -0
  292. package/dist/client/Pending.d.ts +39 -0
  293. package/dist/client/Pending.d.ts.map +1 -0
  294. package/dist/client/Pending.js +12 -0
  295. package/dist/client/Pending.js.map +1 -0
  296. package/dist/client/Permissions.d.ts +34 -0
  297. package/dist/client/Permissions.d.ts.map +1 -0
  298. package/dist/client/Permissions.js +16 -0
  299. package/dist/client/Permissions.js.map +1 -0
  300. package/dist/client/Provider.d.ts +16 -0
  301. package/dist/client/Provider.d.ts.map +1 -0
  302. package/dist/client/Provider.js +12 -0
  303. package/dist/client/Provider.js.map +1 -0
  304. package/dist/client/Step.d.ts +21 -0
  305. package/dist/client/Step.d.ts.map +1 -0
  306. package/dist/client/Step.js +16 -0
  307. package/dist/client/Step.js.map +1 -0
  308. package/dist/client/Storage.d.ts +27 -0
  309. package/dist/client/Storage.d.ts.map +1 -0
  310. package/dist/client/Storage.js +16 -0
  311. package/dist/client/Storage.js.map +1 -0
  312. package/dist/client/TempoAccount.d.ts +40 -0
  313. package/dist/client/TempoAccount.d.ts.map +1 -0
  314. package/dist/client/TempoAccount.js +16 -0
  315. package/dist/client/TempoAccount.js.map +1 -0
  316. package/dist/client/Tokens.d.ts +25 -0
  317. package/dist/client/Tokens.d.ts.map +1 -0
  318. package/dist/client/Tokens.js +12 -0
  319. package/dist/client/Tokens.js.map +1 -0
  320. package/dist/client/User.d.ts +21 -0
  321. package/dist/client/User.d.ts.map +1 -0
  322. package/dist/client/User.js +12 -0
  323. package/dist/client/User.js.map +1 -0
  324. package/dist/client/actions/account.d.ts +25 -0
  325. package/dist/client/actions/account.d.ts.map +1 -0
  326. package/dist/client/actions/account.js +34 -0
  327. package/dist/client/actions/account.js.map +1 -0
  328. package/dist/client/actions/device.d.ts +53 -0
  329. package/dist/client/actions/device.d.ts.map +1 -0
  330. package/dist/client/actions/device.js +79 -0
  331. package/dist/client/actions/device.js.map +1 -0
  332. package/dist/client/actions/email.d.ts +84 -0
  333. package/dist/client/actions/email.d.ts.map +1 -0
  334. package/dist/client/actions/email.js +63 -0
  335. package/dist/client/actions/email.js.map +1 -0
  336. package/dist/client/actions/oauth.d.ts +115 -0
  337. package/dist/client/actions/oauth.d.ts.map +1 -0
  338. package/dist/client/actions/oauth.js +105 -0
  339. package/dist/client/actions/oauth.js.map +1 -0
  340. package/dist/client/actions/passkey.d.ts +88 -0
  341. package/dist/client/actions/passkey.d.ts.map +1 -0
  342. package/dist/client/actions/passkey.js +60 -0
  343. package/dist/client/actions/passkey.js.map +1 -0
  344. package/dist/client/actions/provider.d.ts +49 -0
  345. package/dist/client/actions/provider.d.ts.map +1 -0
  346. package/dist/client/actions/provider.js +34 -0
  347. package/dist/client/actions/provider.js.map +1 -0
  348. package/dist/client/actions/realm.d.ts +24 -0
  349. package/dist/client/actions/realm.d.ts.map +1 -0
  350. package/dist/client/actions/realm.js +15 -0
  351. package/dist/client/actions/realm.js.map +1 -0
  352. package/dist/client/actions/redirect.d.ts +153 -0
  353. package/dist/client/actions/redirect.d.ts.map +1 -0
  354. package/dist/client/actions/redirect.js +236 -0
  355. package/dist/client/actions/redirect.js.map +1 -0
  356. package/dist/client/internal/accessKey.d.ts +21 -0
  357. package/dist/client/internal/accessKey.d.ts.map +1 -0
  358. package/dist/client/internal/accessKey.js +38 -0
  359. package/dist/client/internal/accessKey.js.map +1 -0
  360. package/dist/client/internal/account.d.ts +14 -0
  361. package/dist/client/internal/account.d.ts.map +1 -0
  362. package/dist/client/internal/account.js +3 -0
  363. package/dist/client/internal/account.js.map +1 -0
  364. package/dist/client/internal/api.d.ts +106 -0
  365. package/dist/client/internal/api.d.ts.map +1 -0
  366. package/dist/client/internal/api.js +129 -0
  367. package/dist/client/internal/api.js.map +1 -0
  368. package/dist/client/internal/headless.d.ts +33 -0
  369. package/dist/client/internal/headless.d.ts.map +1 -0
  370. package/dist/client/internal/headless.js +46 -0
  371. package/dist/client/internal/headless.js.map +1 -0
  372. package/dist/client/internal/indexedDb.d.ts +9 -0
  373. package/dist/client/internal/indexedDb.d.ts.map +1 -0
  374. package/dist/client/internal/indexedDb.js +32 -0
  375. package/dist/client/internal/indexedDb.js.map +1 -0
  376. package/dist/client/internal/request.d.ts +58 -0
  377. package/dist/client/internal/request.d.ts.map +1 -0
  378. package/dist/client/internal/request.js +45 -0
  379. package/dist/client/internal/request.js.map +1 -0
  380. package/dist/client/internal/store.d.ts +12 -0
  381. package/dist/client/internal/store.d.ts.map +1 -0
  382. package/dist/client/internal/store.js +15 -0
  383. package/dist/client/internal/store.js.map +1 -0
  384. package/dist/client.d.ts +20 -0
  385. package/dist/client.d.ts.map +1 -0
  386. package/dist/client.js +20 -0
  387. package/dist/client.js.map +1 -0
  388. package/dist/index.d.ts +7 -0
  389. package/dist/index.d.ts.map +1 -0
  390. package/dist/index.js +7 -0
  391. package/dist/index.js.map +1 -0
  392. package/dist/internal/Apps.d.ts +3051 -0
  393. package/dist/internal/Apps.d.ts.map +1 -0
  394. package/dist/internal/Apps.js +472 -0
  395. package/dist/internal/Apps.js.map +1 -0
  396. package/dist/internal/Auth.d.ts +4058 -0
  397. package/dist/internal/Auth.d.ts.map +1 -0
  398. package/dist/internal/Auth.js +137 -0
  399. package/dist/internal/Auth.js.map +1 -0
  400. package/dist/internal/Authorize.d.ts +532 -0
  401. package/dist/internal/Authorize.d.ts.map +1 -0
  402. package/dist/internal/Authorize.js +326 -0
  403. package/dist/internal/Authorize.js.map +1 -0
  404. package/dist/internal/Device.d.ts +371 -0
  405. package/dist/internal/Device.d.ts.map +1 -0
  406. package/dist/internal/Device.js +271 -0
  407. package/dist/internal/Device.js.map +1 -0
  408. package/dist/internal/Env.d.ts +57 -0
  409. package/dist/internal/Env.d.ts.map +1 -0
  410. package/dist/internal/Env.js +2 -0
  411. package/dist/internal/Env.js.map +1 -0
  412. package/dist/internal/ErrorResponse.d.ts +609 -0
  413. package/dist/internal/ErrorResponse.d.ts.map +1 -0
  414. package/dist/internal/ErrorResponse.js +679 -0
  415. package/dist/internal/ErrorResponse.js.map +1 -0
  416. package/dist/internal/Id.d.ts +10 -0
  417. package/dist/internal/Id.d.ts.map +1 -0
  418. package/dist/internal/Id.js +34 -0
  419. package/dist/internal/Id.js.map +1 -0
  420. package/dist/internal/KeyAuthorization.d.ts +1456 -0
  421. package/dist/internal/KeyAuthorization.d.ts.map +1 -0
  422. package/dist/internal/KeyAuthorization.js +1030 -0
  423. package/dist/internal/KeyAuthorization.js.map +1 -0
  424. package/dist/internal/Limits.d.ts +65 -0
  425. package/dist/internal/Limits.d.ts.map +1 -0
  426. package/dist/internal/Limits.js +35 -0
  427. package/dist/internal/Limits.js.map +1 -0
  428. package/dist/internal/Log.d.ts +49 -0
  429. package/dist/internal/Log.d.ts.map +1 -0
  430. package/dist/internal/Log.js +101 -0
  431. package/dist/internal/Log.js.map +1 -0
  432. package/dist/internal/LogLine.d.ts +33 -0
  433. package/dist/internal/LogLine.d.ts.map +1 -0
  434. package/dist/internal/LogLine.js +56 -0
  435. package/dist/internal/LogLine.js.map +1 -0
  436. package/dist/internal/Migrations.d.ts +19 -0
  437. package/dist/internal/Migrations.d.ts.map +1 -0
  438. package/dist/internal/Migrations.js +57 -0
  439. package/dist/internal/Migrations.js.map +1 -0
  440. package/dist/internal/Owner.d.ts +146 -0
  441. package/dist/internal/Owner.d.ts.map +1 -0
  442. package/dist/internal/Owner.js +65 -0
  443. package/dist/internal/Owner.js.map +1 -0
  444. package/dist/internal/Passkey.d.ts +528 -0
  445. package/dist/internal/Passkey.d.ts.map +1 -0
  446. package/dist/internal/Passkey.js +658 -0
  447. package/dist/internal/Passkey.js.map +1 -0
  448. package/dist/internal/PendingKey.d.ts +49 -0
  449. package/dist/internal/PendingKey.d.ts.map +1 -0
  450. package/dist/internal/PendingKey.js +58 -0
  451. package/dist/internal/PendingKey.js.map +1 -0
  452. package/dist/internal/Privy.d.ts +105 -0
  453. package/dist/internal/Privy.d.ts.map +1 -0
  454. package/dist/internal/Privy.js +224 -0
  455. package/dist/internal/Privy.js.map +1 -0
  456. package/dist/internal/RateLimit.d.ts +190 -0
  457. package/dist/internal/RateLimit.d.ts.map +1 -0
  458. package/dist/internal/RateLimit.js +148 -0
  459. package/dist/internal/RateLimit.js.map +1 -0
  460. package/dist/internal/Realm.d.ts +281 -0
  461. package/dist/internal/Realm.d.ts.map +1 -0
  462. package/dist/internal/Realm.js +477 -0
  463. package/dist/internal/Realm.js.map +1 -0
  464. package/dist/internal/RequestId.d.ts +16 -0
  465. package/dist/internal/RequestId.d.ts.map +1 -0
  466. package/dist/internal/RequestId.js +78 -0
  467. package/dist/internal/RequestId.js.map +1 -0
  468. package/dist/internal/SigningKey.d.ts +115 -0
  469. package/dist/internal/SigningKey.d.ts.map +1 -0
  470. package/dist/internal/SigningKey.js +197 -0
  471. package/dist/internal/SigningKey.js.map +1 -0
  472. package/dist/internal/TestInbox.d.ts +42 -0
  473. package/dist/internal/TestInbox.d.ts.map +1 -0
  474. package/dist/internal/TestInbox.js +20 -0
  475. package/dist/internal/TestInbox.js.map +1 -0
  476. package/dist/internal/Timing.d.ts +51 -0
  477. package/dist/internal/Timing.d.ts.map +1 -0
  478. package/dist/internal/Timing.js +103 -0
  479. package/dist/internal/Timing.js.map +1 -0
  480. package/dist/internal/Validation.d.ts +52 -0
  481. package/dist/internal/Validation.d.ts.map +1 -0
  482. package/dist/internal/Validation.js +22 -0
  483. package/dist/internal/Validation.js.map +1 -0
  484. package/dist/internal/Wallet.d.ts +37 -0
  485. package/dist/internal/Wallet.d.ts.map +1 -0
  486. package/dist/internal/Wallet.js +43 -0
  487. package/dist/internal/Wallet.js.map +1 -0
  488. package/dist/worker.d.ts +12 -0
  489. package/dist/worker.d.ts.map +1 -0
  490. package/dist/worker.js +12 -0
  491. package/dist/worker.js.map +1 -0
  492. package/package.json +79 -3
  493. package/src/Api.ts +151 -0
  494. package/src/App.ts +56 -0
  495. package/src/api/account.ts +311 -0
  496. package/src/api/authenticate.ts +1290 -0
  497. package/src/api/authorize.ts +1030 -0
  498. package/src/api/device.ts +874 -0
  499. package/src/api/health.ts +72 -0
  500. package/src/api/lib/AccountStep.ts +335 -0
  501. package/src/api/lib/Auth.ts +134 -0
  502. package/src/api/lib/Consent.ts +339 -0
  503. package/src/api/lib/Cors.ts +107 -0
  504. package/src/api/lib/Database.ts +10 -0
  505. package/src/api/lib/DeviceRequest.ts +265 -0
  506. package/src/api/lib/FirstAccount.ts +90 -0
  507. package/src/api/lib/KeySigner.ts +393 -0
  508. package/src/api/lib/PasskeyLink.ts +162 -0
  509. package/src/api/lib/Session.ts +34 -0
  510. package/src/api/lib/SignInConsent.ts +316 -0
  511. package/src/api/oauth.ts +1282 -0
  512. package/src/api/provider.ts +441 -0
  513. package/src/app/components/Button.tsx +128 -0
  514. package/src/app/components/CodeInput.tsx +186 -0
  515. package/src/app/components/ErrorMessage.tsx +66 -0
  516. package/src/app/components/Grant.tsx +323 -0
  517. package/src/app/components/Input.tsx +48 -0
  518. package/src/app/components/Tooltip.tsx +45 -0
  519. package/src/app/components/icons/BRLA.png +0 -0
  520. package/src/app/components/icons/BRZ.svg +1 -0
  521. package/src/app/components/icons/CHFAU.png +0 -0
  522. package/src/app/components/icons/DLUSD.png +0 -0
  523. package/src/app/components/icons/EURAU.svg +1 -0
  524. package/src/app/components/icons/EURC.e.svg +1 -0
  525. package/src/app/components/icons/GBPA.svg +4 -0
  526. package/src/app/components/icons/GUSD.svg +1 -0
  527. package/src/app/components/icons/MACH.svg +4 -0
  528. package/src/app/components/icons/OUSD.svg +5 -0
  529. package/src/app/components/icons/PRIME.svg +14 -0
  530. package/src/app/components/icons/SBC.svg +1 -0
  531. package/src/app/components/icons/SEKAU.svg +5 -0
  532. package/src/app/components/icons/USD1.svg +30 -0
  533. package/src/app/components/icons/USDB.svg +11 -0
  534. package/src/app/components/icons/USDC.e.svg +1 -0
  535. package/src/app/components/icons/USDT0.svg +1 -0
  536. package/src/app/components/icons/USDY.svg +16 -0
  537. package/src/app/components/icons/USDe.svg +1 -0
  538. package/src/app/components/icons/YLDS.svg +3 -0
  539. package/src/app/components/icons/alphaUSD.svg +1 -0
  540. package/src/app/components/icons/betaUSD.svg +1 -0
  541. package/src/app/components/icons/cUSD.svg +1 -0
  542. package/src/app/components/icons/cbBTC.svg +1 -0
  543. package/src/app/components/icons/frxUSD.svg +1 -0
  544. package/src/app/components/icons/goUSD.svg +5 -0
  545. package/src/app/components/icons/iUSD.svg +1 -0
  546. package/src/app/components/icons/pathUSD.svg +25 -0
  547. package/src/app/components/icons/rUSD.svg +1 -0
  548. package/src/app/components/icons/reUSD.svg +1 -0
  549. package/src/app/components/icons/sUSDe.svg +1 -0
  550. package/src/app/components/icons/siUSD.svg +1 -0
  551. package/src/app/components/icons/stcUSD.svg +1 -0
  552. package/src/app/components/icons/syrupUSDC.svg +5 -0
  553. package/src/app/components/icons/thetaUSD.svg +1 -0
  554. package/src/app/components/icons/wYLDS.svg +10 -0
  555. package/src/app/components/icons/wsrUSD.svg +1 -0
  556. package/src/app/components/logos/OUSD.dark.svg +17 -0
  557. package/src/app/components/logos/OUSD.light.svg +17 -0
  558. package/src/app/crons/cleanup.ts +42 -0
  559. package/src/app/db/auth.ts +416 -0
  560. package/src/app/db/migrations/0000_better_auth.sql +53 -0
  561. package/src/app/db/migrations/0001_oauth_provider.sql +162 -0
  562. package/src/app/db/migrations/0002_device_code.sql +17 -0
  563. package/src/app/db/migrations/0003_realms.sql +27 -0
  564. package/src/app/db/migrations/0004_default_realm.sql +2 -0
  565. package/src/app/db/migrations/0005_passkeys.sql +30 -0
  566. package/src/app/db/migrations/0006_first_accounts.sql +9 -0
  567. package/src/app/db/migrations/0007_pending_keys.sql +13 -0
  568. package/src/app/db/migrations/0008_secp256k1_owners.sql +18 -0
  569. package/src/app/db/migrations/0009_device_requests.sql +8 -0
  570. package/src/app/db/migrations/0010_device_keys.sql +4 -0
  571. package/src/app/db/migrations/meta/0000_snapshot.json +362 -0
  572. package/src/app/db/migrations/meta/0001_snapshot.json +1487 -0
  573. package/src/app/db/migrations/meta/0002_snapshot.json +1603 -0
  574. package/src/app/db/migrations/meta/0003_snapshot.json +1760 -0
  575. package/src/app/db/migrations/meta/0004_snapshot.json +1760 -0
  576. package/src/app/db/migrations/meta/0005_snapshot.json +1911 -0
  577. package/src/app/db/migrations/meta/0006_snapshot.json +1967 -0
  578. package/src/app/db/migrations/meta/0007_snapshot.json +2047 -0
  579. package/src/app/db/migrations/meta/0008_snapshot.json +2157 -0
  580. package/src/app/db/migrations/meta/0009_snapshot.json +2207 -0
  581. package/src/app/db/migrations/meta/0010_snapshot.json +2231 -0
  582. package/src/app/db/migrations/meta/_journal.json +83 -0
  583. package/src/app/db/schema.ts +218 -0
  584. package/src/app/env.ts +49 -0
  585. package/src/app/lib/Client.ts +82 -0
  586. package/src/app/lib/Loader.ts +24 -0
  587. package/src/app/package.json +8 -0
  588. package/src/app/routeTree.gen.ts +198 -0
  589. package/src/app/router.tsx +48 -0
  590. package/src/app/routes/[_].flows.tsx +3001 -0
  591. package/src/app/routes/__root.tsx +91 -0
  592. package/src/app/routes/authorize.tsx +197 -0
  593. package/src/app/routes/choose-account.tsx +111 -0
  594. package/src/app/routes/deposit.tsx +105 -0
  595. package/src/app/routes/device.tsx +227 -0
  596. package/src/app/routes/index.tsx +115 -0
  597. package/src/app/routes/login.tsx +506 -0
  598. package/src/app/screens/Account.tsx +347 -0
  599. package/src/app/screens/Approval.tsx +276 -0
  600. package/src/app/screens/ChooseAccount.tsx +240 -0
  601. package/src/app/screens/Deposit.tsx +762 -0
  602. package/src/app/screens/DeviceApproval.tsx +480 -0
  603. package/src/app/screens/SignIn.tsx +362 -0
  604. package/src/app/screens/chains/base.svg +3 -0
  605. package/src/app/screens/chains/ethereum.svg +11 -0
  606. package/src/app/screens/chains/solana.svg +4 -0
  607. package/src/app/screens/chains/tempo.svg +4 -0
  608. package/src/app/server.ts +204 -0
  609. package/src/app/vite.config.ts +95 -0
  610. package/src/app/void.config.ts +29 -0
  611. package/src/app/zyzz.config.ts +274 -0
  612. package/src/cli/Admin.ts +73 -0
  613. package/src/cli/Apps.ts +29 -0
  614. package/src/cli/Cli.ts +42 -0
  615. package/src/cli/Project.ts +117 -0
  616. package/src/cli/Realms.ts +50 -0
  617. package/src/cli/Session.ts +239 -0
  618. package/src/cli/User.ts +45 -0
  619. package/src/cli/V1.ts +57 -0
  620. package/src/cli/bin.ts +44 -0
  621. package/src/cli/commands/admin/apps/create.ts +101 -0
  622. package/src/cli/commands/admin/apps/delete.ts +38 -0
  623. package/src/cli/commands/admin/apps/index.ts +15 -0
  624. package/src/cli/commands/admin/apps/list.ts +25 -0
  625. package/src/cli/commands/admin/apps/rotate-secret.ts +47 -0
  626. package/src/cli/commands/admin/apps/update.ts +86 -0
  627. package/src/cli/commands/admin/index.ts +14 -0
  628. package/src/cli/commands/admin/migrate.ts +16 -0
  629. package/src/cli/commands/admin/realms/add.ts +40 -0
  630. package/src/cli/commands/admin/realms/index.ts +14 -0
  631. package/src/cli/commands/admin/realms/list.ts +38 -0
  632. package/src/cli/commands/admin/realms/passkeys/index.ts +15 -0
  633. package/src/cli/commands/admin/realms/passkeys/set.ts +44 -0
  634. package/src/cli/commands/admin/realms/privy/index.ts +14 -0
  635. package/src/cli/commands/admin/realms/privy/set.ts +69 -0
  636. package/src/cli/commands/admin/realms/remove.ts +33 -0
  637. package/src/cli/commands/admin/realms/secp256k1/disable.ts +40 -0
  638. package/src/cli/commands/admin/realms/secp256k1/enable.ts +40 -0
  639. package/src/cli/commands/admin/realms/secp256k1/index.ts +19 -0
  640. package/src/cli/commands/admin/realms/set.ts +46 -0
  641. package/src/cli/commands/admin/rotate-key.ts +47 -0
  642. package/src/cli/commands/init.ts +42 -0
  643. package/src/cli/commands/login.ts +32 -0
  644. package/src/cli/commands/logout.ts +19 -0
  645. package/src/cli/commands/whoami.ts +23 -0
  646. package/src/client/Actions.ts +168 -0
  647. package/src/client/Auth.ts +285 -0
  648. package/src/client/Authorization.ts +34 -0
  649. package/src/client/Decorator.ts +410 -0
  650. package/src/client/Key.ts +140 -0
  651. package/src/client/Pending.ts +46 -0
  652. package/src/client/Permissions.ts +39 -0
  653. package/src/client/Provider.ts +18 -0
  654. package/src/client/Step.ts +24 -0
  655. package/src/client/Storage.ts +29 -0
  656. package/src/client/TempoAccount.ts +42 -0
  657. package/src/client/Tokens.ts +27 -0
  658. package/src/client/User.ts +23 -0
  659. package/src/client/actions/account.ts +57 -0
  660. package/src/client/actions/device.ts +151 -0
  661. package/src/client/actions/email.ts +141 -0
  662. package/src/client/actions/oauth.ts +182 -0
  663. package/src/client/actions/passkey.ts +141 -0
  664. package/src/client/actions/provider.ts +70 -0
  665. package/src/client/actions/realm.ts +36 -0
  666. package/src/client/actions/redirect.ts +408 -0
  667. package/src/client/internal/accessKey.ts +54 -0
  668. package/src/client/internal/account.ts +15 -0
  669. package/src/client/internal/api.ts +224 -0
  670. package/src/client/internal/headless.ts +77 -0
  671. package/src/client/internal/indexedDb.ts +44 -0
  672. package/src/client/internal/request.ts +71 -0
  673. package/src/client/internal/store.ts +20 -0
  674. package/src/client.ts +19 -0
  675. package/src/index.ts +6 -0
  676. package/src/internal/Apps.ts +718 -0
  677. package/src/internal/Auth.ts +203 -0
  678. package/src/internal/Authorize.ts +424 -0
  679. package/src/internal/Balance.ts +168 -0
  680. package/src/internal/BodyLimit.ts +36 -0
  681. package/src/internal/Chain.ts +16 -0
  682. package/src/internal/Device.ts +469 -0
  683. package/src/internal/Env.ts +58 -0
  684. package/src/internal/ErrorResponse.ts +854 -0
  685. package/src/internal/Id.ts +41 -0
  686. package/src/internal/KeyAuthorization.ts +1339 -0
  687. package/src/internal/Limits.ts +39 -0
  688. package/src/internal/Log.ts +178 -0
  689. package/src/internal/LogLine.ts +87 -0
  690. package/src/internal/Logout.ts +336 -0
  691. package/src/internal/Migrations.ts +86 -0
  692. package/src/internal/OpenApi.ts +300 -0
  693. package/src/internal/Owner.ts +211 -0
  694. package/src/internal/Passkey.ts +1052 -0
  695. package/src/internal/PendingKey.ts +104 -0
  696. package/src/internal/Privy.ts +402 -0
  697. package/src/internal/Provider.ts +125 -0
  698. package/src/internal/RateLimit.ts +259 -0
  699. package/src/internal/Realm.ts +768 -0
  700. package/src/internal/RequestId.ts +118 -0
  701. package/src/internal/SignInGrant.ts +168 -0
  702. package/src/internal/SigningKey.ts +286 -0
  703. package/src/internal/TempoAccount.ts +342 -0
  704. package/src/internal/TestInbox.ts +51 -0
  705. package/src/internal/Timing.ts +158 -0
  706. package/src/internal/Validation.ts +52 -0
  707. package/src/internal/Wallet.ts +62 -0
  708. package/src/internal/owners/Passkey.ts +72 -0
  709. package/src/internal/owners/Privy.ts +81 -0
  710. package/src/internal/owners/Secp256k1.ts +143 -0
  711. package/src/types/app.d.ts +19 -0
  712. package/src/worker.ts +11 -0
@@ -0,0 +1,106 @@
1
+ import type { KeyAuthorization } from 'ox/tempo';
2
+ import type { Account } from 'viem/tempo';
3
+ import { type Auth, RequestError } from '../Auth.js';
4
+ import type { Authorization } from '../Authorization.js';
5
+ import * as Key from '../Key.js';
6
+ import type { TempoAccount } from '../TempoAccount.js';
7
+ import type { Tokens } from '../Tokens.js';
8
+ import type { User } from '../User.js';
9
+ /**
10
+ * Builds an authorization from what Tempo ID returned and the sign-in's key: the material the
11
+ * library generated, or the `accessKey` the app supplied. `chainId` is the chain the request named,
12
+ * which the key authorization repeats.
13
+ */
14
+ export declare function authorization<chainId extends number = number>(body: Headless, options: {
15
+ accessKey?: Account.Account | undefined;
16
+ material: Key.Material;
17
+ }): Authorization<chainId>;
18
+ /** What the headless API returns for an authorization. */
19
+ export type Headless = {
20
+ /** The Tempo Account the key acts for, present when the request asked for a key. */
21
+ account?: Key.Key['account'] | undefined;
22
+ /** The signed key authorization, in the node's RPC format, present when the request asked for a key. */
23
+ key_authorization?: KeyAuthorization.Rpc | undefined;
24
+ /** The tokens the sign-in issued, as the token endpoint returns them or already read into `Tokens`. */
25
+ tokens: TokenResponse | Tokens;
26
+ };
27
+ /** Reads a JSON response, and throws a {@link RequestError} for a refused request. */
28
+ export declare function json<value = unknown>(response: Response): Promise<value>;
29
+ /** An OAuth error response, with Tempo ID's extension members. */
30
+ export type ErrorBody = {
31
+ /** The OAuth error code, which `reason` determines. */
32
+ error: string;
33
+ /** The fault and its fix. Its wording may change. */
34
+ error_description?: string | undefined;
35
+ /** The errors page, at the refusal's `reason`. */
36
+ error_uri?: string | undefined;
37
+ /** The request field at fault, as a dotted path. */
38
+ field?: string | undefined;
39
+ /** The values the refusal compared. Base units are decimal strings. */
40
+ meta?: Readonly<Record<string, number | string>> | undefined;
41
+ /** A stable name for the refusal. The issuer's own errors carry none. */
42
+ reason?: RequestError.Reason | undefined;
43
+ };
44
+ /** A {@link RequestError} from an OAuth error response, or from a refusal with no body. */
45
+ export declare function error(body: Partial<ErrorBody>, options: {
46
+ status: number;
47
+ }): RequestError;
48
+ /** Posts JSON to Tempo ID's API with the session cookie. */
49
+ export declare function post(auth: Auth, path: string, options: {
50
+ json: unknown;
51
+ }): Promise<Response>;
52
+ /** Calls Tempo ID's OAuth token endpoint with a standard OAuth form post, adding the client and any secret. */
53
+ export declare function token(auth: Auth, body: Record<string, string>): Promise<TokenResponse>;
54
+ /** Reads the account's address, the type of its owner, which the API lists first, and its realm. */
55
+ export declare function tempoAccount(account: TempoAccountResponse): TempoAccount;
56
+ /** A Tempo Account as the API returns it, with the fields the package reads. */
57
+ export type TempoAccountResponse = {
58
+ /** The account's address, the same on every Tempo chain. */
59
+ address: `0x${string}`;
60
+ /** The account's configuration, whose owners the API lists in order. */
61
+ config: {
62
+ /** The account's owners, each with the kind of key that holds it, such as `privy` or `webAuthn`. */
63
+ owners: readonly [{
64
+ type: string;
65
+ }, ...{
66
+ type: string;
67
+ }[]];
68
+ };
69
+ /** The realm the account belongs to, with its display name. */
70
+ realm: {
71
+ /** The realm ID: `default`, or one an app's settings name, such as `tempo-cash`. */
72
+ id: string;
73
+ /** The realm's display name, such as `Tempo Cash`. */
74
+ name: string;
75
+ };
76
+ };
77
+ /** What Tempo ID's token endpoint returns. Redeeming a redirect's code adds its key authorization. */
78
+ export type TokenResponse = {
79
+ /** The access token, which authorizes the app's requests to its APIs. */
80
+ access_token: string;
81
+ /** The Tempo Account the key acts for, present with `key_authorization`. */
82
+ account?: Key.Key['account'] | undefined;
83
+ /** The access token's lifetime, in seconds. */
84
+ expires_in: number;
85
+ /** The OIDC ID token, which names the user. A refresh may omit it. */
86
+ id_token?: string | undefined;
87
+ /** The signed key authorization that the user approved with the code, if any. */
88
+ key_authorization?: KeyAuthorization.Rpc | undefined;
89
+ /** Exchanges for new tokens through `Actions.refresh`. It rotates on every refresh. */
90
+ refresh_token?: string | undefined;
91
+ };
92
+ /** Reads the signed-in user from the ID token of `tokens`, which every sign-in returns. */
93
+ export declare function user(tokens: Tokens): User;
94
+ /** Reads a token response into `Tokens`. */
95
+ export declare function tokens(response: TokenResponse): Tokens;
96
+ /**
97
+ * Rethrows an error that came after a sign-in's code or passkey verified as a {@link RequestError}
98
+ * marked `signedIn`, since the user is signed in. A failure without a response, such as a network
99
+ * error, has status 0 and the original error as its `cause`.
100
+ */
101
+ export declare function signedIn(error: unknown): never;
102
+ /** Reads what Tempo ID returned for an authorization without a key: the tokens and the user. */
103
+ export declare function withoutKey(body: Headless): WithoutKey;
104
+ /** What an authorization without a key returns: the tokens and the user. */
105
+ export type WithoutKey = Omit<Authorization, 'account' | 'key'>;
106
+ //# sourceMappingURL=api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/client/internal/api.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,129 @@
1
+ /**
2
+ * Calls Tempo ID's API, and reads its responses into what the actions return.
3
+ * @module
4
+ */
5
+ import { Base64 } from 'ox';
6
+ import { RequestError } from '../Auth.js';
7
+ import * as Key from '../Key.js';
8
+ /**
9
+ * Builds an authorization from what Tempo ID returned and the sign-in's key: the material the
10
+ * library generated, or the `accessKey` the app supplied. `chainId` is the chain the request named,
11
+ * which the key authorization repeats.
12
+ */
13
+ export function authorization(body, options) {
14
+ const { accessKey, material } = options;
15
+ // A response to a request with a key always carries one, so its absence is a fault.
16
+ if (!body.account || !body.key_authorization)
17
+ throw new RequestError({
18
+ code: 'server_error',
19
+ message: 'Missing key authorization in the response to a request with a key. Sign in again.',
20
+ status: 200,
21
+ });
22
+ const key = Key.from({
23
+ ...material,
24
+ account: body.account,
25
+ keyAuthorization: body.key_authorization,
26
+ });
27
+ const tokens_ = 'accessToken' in body.tokens ? body.tokens : tokens(body.tokens);
28
+ return {
29
+ ...tokens_,
30
+ account: Key.toAccount(key, { accessKey }),
31
+ key,
32
+ user: user(tokens_),
33
+ };
34
+ }
35
+ /** Reads a JSON response, and throws a {@link RequestError} for a refused request. */
36
+ export async function json(response) {
37
+ // Some refusals, such as the CSRF check's, return plain text.
38
+ const body = (await response.json().catch(() => ({})));
39
+ if (!response.ok)
40
+ throw error(body, { status: response.status });
41
+ return body;
42
+ }
43
+ /** A {@link RequestError} from an OAuth error response, or from a refusal with no body. */
44
+ export function error(body, options) {
45
+ return new RequestError({
46
+ code: body.error ?? 'server_error',
47
+ field: body.field,
48
+ message: body.error_description ??
49
+ body.error ??
50
+ `Request failed with status ${options.status}.`,
51
+ meta: body.meta,
52
+ reason: body.reason,
53
+ status: options.status,
54
+ uri: body.error_uri,
55
+ });
56
+ }
57
+ /** Posts JSON to Tempo ID's API with the session cookie. */
58
+ export function post(auth, path, options) {
59
+ return (auth.fetch ?? fetch)(new URL(path, auth.url), {
60
+ body: JSON.stringify(options.json),
61
+ credentials: 'include',
62
+ headers: { 'content-type': 'application/json' },
63
+ method: 'POST',
64
+ });
65
+ }
66
+ /** Calls Tempo ID's OAuth token endpoint with a standard OAuth form post, adding the client and any secret. */
67
+ export async function token(auth, body) {
68
+ return json(await (auth.fetch ?? fetch)(new URL('/oauth2/token', auth.url), {
69
+ body: new URLSearchParams({
70
+ ...body,
71
+ client_id: auth.clientId,
72
+ ...(auth.clientSecret ? { client_secret: auth.clientSecret } : {}),
73
+ }),
74
+ method: 'POST',
75
+ }));
76
+ }
77
+ /** Reads the account's address, the type of its owner, which the API lists first, and its realm. */
78
+ export function tempoAccount(account) {
79
+ return {
80
+ address: account.address,
81
+ owner: account.config.owners[0].type,
82
+ realm: { id: account.realm.id, name: account.realm.name },
83
+ };
84
+ }
85
+ /** Reads the signed-in user from the ID token of `tokens`, which every sign-in returns. */
86
+ export function user(tokens) {
87
+ const claims = JSON.parse(Base64.toString(tokens.idToken.split('.')[1]));
88
+ return { email: claims.email, id: claims.sub };
89
+ }
90
+ /** Reads a token response into `Tokens`. */
91
+ export function tokens(response) {
92
+ return {
93
+ accessToken: response.access_token,
94
+ expiresAt: Date.now() + response.expires_in * 1000,
95
+ idToken: response.id_token,
96
+ refreshToken: response.refresh_token,
97
+ };
98
+ }
99
+ /**
100
+ * Rethrows an error that came after a sign-in's code or passkey verified as a {@link RequestError}
101
+ * marked `signedIn`, since the user is signed in. A failure without a response, such as a network
102
+ * error, has status 0 and the original error as its `cause`.
103
+ */
104
+ export function signedIn(error) {
105
+ if (!(error instanceof RequestError))
106
+ throw new RequestError({
107
+ cause: error,
108
+ code: 'server_error',
109
+ message: 'Authorization failed after the sign-in, with no response from Tempo ID. The user is signed in, so authorize again.',
110
+ signedIn: true,
111
+ status: 0,
112
+ });
113
+ throw new RequestError({
114
+ code: error.code,
115
+ field: error.field,
116
+ message: error.message,
117
+ meta: error.meta,
118
+ reason: error.reason,
119
+ signedIn: true,
120
+ status: error.status,
121
+ uri: error.uri,
122
+ });
123
+ }
124
+ /** Reads what Tempo ID returned for an authorization without a key: the tokens and the user. */
125
+ export function withoutKey(body) {
126
+ const tokens_ = 'accessToken' in body.tokens ? body.tokens : tokens(body.tokens);
127
+ return { ...tokens_, user: user(tokens_) };
128
+ }
129
+ //# sourceMappingURL=api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/client/internal/api.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Authorizes the app for the user whom a headless sign-in just signed in, for `Actions.email.signIn`
3
+ * and `Actions.passkey.signIn`.
4
+ * @module
5
+ */
6
+ import type { Account } from 'viem/tempo';
7
+ import { type Auth } from '../Auth.js';
8
+ import type { Authorization } from '../Authorization.js';
9
+ import type { Permissions } from '../Permissions.js';
10
+ import * as Api from './api.js';
11
+ /**
12
+ * Sends `POST /v1/account`, which creates the user's first Tempo Account and returns the existing
13
+ * ones unchanged, then `POST /v1/authorize`. A sign-in without a key needs no account, so it sends
14
+ * the authorization alone. Each refusal is marked `signedIn`, since the user is signed in. An
15
+ * authorization for another user than `userId` throws `session_changed`, since another sign-in
16
+ * replaced the session in between.
17
+ */
18
+ export declare function authorize(auth: Auth, options: authorize.Options): Promise<Authorization | Api.WithoutKey>;
19
+ export declare namespace authorize {
20
+ type Options = {
21
+ /** The key to authorize. Defaults to a new key. */
22
+ accessKey?: Account.Account | undefined;
23
+ /** A message the key's witness binds. */
24
+ challenge?: string | undefined;
25
+ /** Whether the sign-in authorizes an access key. Defaults to `true`. */
26
+ key?: boolean | undefined;
27
+ /** What the key may do. */
28
+ permissions?: Permissions | undefined;
29
+ /** The ID of the user whom the sign-in verified. */
30
+ userId: string;
31
+ };
32
+ }
33
+ //# sourceMappingURL=headless.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"headless.d.ts","sourceRoot":"","sources":["../../../src/client/internal/headless.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,EAAE,KAAK,IAAI,EAAgB,MAAM,YAAY,CAAA;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAEpD,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAG/B;;;;;;GAMG;AACH,wBAAsB,SAAS,CAC7B,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,SAAS,CAAC,OAAO,GACzB,OAAO,CAAC,aAAa,GAAG,GAAG,CAAC,UAAU,CAAC,CAsCzC;AAED,MAAM,CAAC,OAAO,WAAW,SAAS,CAAC;IACjC,KAAK,OAAO,GAAG;QACb,mDAAmD;QACnD,SAAS,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,SAAS,CAAA;QACvC,yCAAyC;QACzC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QAC9B,wEAAwE;QACxE,GAAG,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QACzB,2BAA2B;QAC3B,WAAW,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;QACrC,oDAAoD;QACpD,MAAM,EAAE,MAAM,CAAA;KACf,CAAA;CACF"}
@@ -0,0 +1,46 @@
1
+ import { RequestError } from '../Auth.js';
2
+ import * as AccessKey from './accessKey.js';
3
+ import * as Api from './api.js';
4
+ import { request } from './request.js';
5
+ /**
6
+ * Sends `POST /v1/account`, which creates the user's first Tempo Account and returns the existing
7
+ * ones unchanged, then `POST /v1/authorize`. A sign-in without a key needs no account, so it sends
8
+ * the authorization alone. Each refusal is marked `signedIn`, since the user is signed in. An
9
+ * authorization for another user than `userId` throws `session_changed`, since another sign-in
10
+ * replaced the session in between.
11
+ */
12
+ export async function authorize(auth, options) {
13
+ const { challenge, permissions } = options;
14
+ // The user is signed in already, so every failure from here on, key generation included, is marked.
15
+ try {
16
+ const key = options.key === false
17
+ ? undefined
18
+ : await AccessKey.resolve(options.accessKey);
19
+ if (key)
20
+ await Api.json(await Api.post(auth, '/v1/account', {
21
+ json: { client_id: auth.clientId },
22
+ }));
23
+ const body = await Api.json(await Api.post(auth, '/v1/authorize', {
24
+ json: request(auth, {
25
+ accessKey: key?.accessKey,
26
+ challenge,
27
+ permissions,
28
+ }),
29
+ }));
30
+ const authorization = key
31
+ ? Api.authorization(body, key)
32
+ : Api.withoutKey(body);
33
+ if (authorization.user.id !== options.userId)
34
+ throw new RequestError({
35
+ code: 'invalid_request',
36
+ message: 'Session changed: another sign-in replaced this one before the authorization. Sign in again.',
37
+ reason: 'session_changed',
38
+ status: 409,
39
+ });
40
+ return authorization;
41
+ }
42
+ catch (error) {
43
+ return Api.signedIn(error);
44
+ }
45
+ }
46
+ //# sourceMappingURL=headless.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"headless.js","sourceRoot":"","sources":["../../../src/client/internal/headless.ts"],"names":[],"mappings":"AAMA,OAAO,EAAa,YAAY,EAAE,MAAM,YAAY,CAAA;AAGpD,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAEtC;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,IAAU,EACV,OAA0B;IAE1B,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,OAAO,CAAA;IAC1C,oGAAoG;IACpG,IAAI,CAAC;QACH,MAAM,GAAG,GACP,OAAO,CAAC,GAAG,KAAK,KAAK;YACnB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,MAAM,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;QAChD,IAAI,GAAG;YACL,MAAM,GAAG,CAAC,IAAI,CACZ,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,EAAE;gBAClC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE;aACnC,CAAC,CACH,CAAA;QACH,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,CACzB,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,eAAe,EAAE;YACpC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE;gBAClB,SAAS,EAAE,GAAG,EAAE,SAAS;gBACzB,SAAS;gBACT,WAAW;aACZ,CAAC;SACH,CAAC,CACH,CAAA;QACD,MAAM,aAAa,GAAG,GAAG;YACvB,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC;YAC9B,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QACxB,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE,KAAK,OAAO,CAAC,MAAM;YAC1C,MAAM,IAAI,YAAY,CAAC;gBACrB,IAAI,EAAE,iBAAiB;gBACvB,OAAO,EACL,6FAA6F;gBAC/F,MAAM,EAAE,iBAAiB;gBACzB,MAAM,EAAE,GAAG;aACZ,CAAC,CAAA;QACJ,OAAO,aAAa,CAAA;IACtB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC5B,CAAC;AACH,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * The default `storage` in a browser: IndexedDB, which keeps a non-extractable `CryptoKey` without
3
+ * exporting it.
4
+ * @module
5
+ */
6
+ import type { Storage } from '../Storage.js';
7
+ /** Opens a store in the page's IndexedDB. */
8
+ export declare function create(): Storage;
9
+ //# sourceMappingURL=indexedDb.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"indexedDb.d.ts","sourceRoot":"","sources":["../../../src/client/internal/indexedDb.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAE5C,6CAA6C;AAC7C,wBAAgB,MAAM,IAAI,OAAO,CAgChC"}
@@ -0,0 +1,32 @@
1
+ /** Opens a store in the page's IndexedDB. */
2
+ export function create() {
3
+ const database = new Promise((resolve, reject) => {
4
+ const request = indexedDB.open('tempo-id');
5
+ request.onupgradeneeded = () => request.result.createObjectStore(store);
6
+ request.onsuccess = () => resolve(request.result);
7
+ request.onerror = () => reject(request.error);
8
+ });
9
+ /** Runs one request against the store, and resolves with its result. */
10
+ async function run(mode, fn) {
11
+ const objectStore = (await database)
12
+ .transaction(store, mode)
13
+ .objectStore(store);
14
+ return new Promise((resolve, reject) => {
15
+ const request = fn(objectStore);
16
+ request.onsuccess = () => resolve(request.result);
17
+ request.onerror = () => reject(request.error);
18
+ });
19
+ }
20
+ return {
21
+ getItem: (key) => run('readonly', (objectStore) => objectStore.get(key)),
22
+ async removeItem(key) {
23
+ await run('readwrite', (objectStore) => objectStore.delete(key));
24
+ },
25
+ async setItem(key, value) {
26
+ await run('readwrite', (objectStore) => objectStore.put(value, key));
27
+ },
28
+ };
29
+ }
30
+ /** The object store that holds every value. */
31
+ const store = 'store';
32
+ //# sourceMappingURL=indexedDb.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"indexedDb.js","sourceRoot":"","sources":["../../../src/client/internal/indexedDb.ts"],"names":[],"mappings":"AAOA,6CAA6C;AAC7C,MAAM,UAAU,MAAM;IACpB,MAAM,QAAQ,GAAG,IAAI,OAAO,CAAc,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC5D,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAC1C,OAAO,CAAC,eAAe,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAA;QACvE,OAAO,CAAC,SAAS,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QACjD,OAAO,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC/C,CAAC,CAAC,CAAA;IAEF,wEAAwE;IACxE,KAAK,UAAU,GAAG,CAChB,IAAwB,EACxB,EAAsD;QAEtD,MAAM,WAAW,GAAG,CAAC,MAAM,QAAQ,CAAC;aACjC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC;aACxB,WAAW,CAAC,KAAK,CAAC,CAAA;QACrB,OAAO,IAAI,OAAO,CAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC5C,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,CAAA;YAC/B,OAAO,CAAC,SAAS,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;YACjD,OAAO,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QAC/C,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,OAAO;QACL,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACxE,KAAK,CAAC,UAAU,CAAC,GAAG;YAClB,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;QAClE,CAAC;QACD,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK;YACtB,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAA;QACtE,CAAC;KACF,CAAA;AACH,CAAC;AAED,+CAA+C;AAC/C,MAAM,KAAK,GAAG,OAAO,CAAA"}
@@ -0,0 +1,58 @@
1
+ import type { Account } from 'viem/tempo';
2
+ import type { Auth } from '../Auth.js';
3
+ import type { Permissions } from '../Permissions.js';
4
+ /**
5
+ * The authorization request, with the key authorization request when the sign-in requests a key, in
6
+ * Tempo ID's wire format.
7
+ */
8
+ export declare function request(auth: Auth, options: {
9
+ /** The key to authorize. Without one, the request carries no key authorization. */
10
+ accessKey?: Account.Account | undefined;
11
+ /** The user's Tempo Account the key acts for, in place of the one `accessKey` names. */
12
+ account?: `0x${string}` | undefined;
13
+ /** A message the key's witness binds. */
14
+ challenge?: string | undefined;
15
+ permissions?: Permissions | undefined;
16
+ }): {
17
+ challenge?: string;
18
+ client_id: string;
19
+ key_authorization?: {
20
+ account?: `0x${string}`;
21
+ address: `0x${string}`;
22
+ chainId: `0x${string}`;
23
+ expiry: number | undefined;
24
+ keyType: "p256" | "secp256k1" | "webAuthn";
25
+ limits: {
26
+ limit: `0x${string}`;
27
+ period?: number;
28
+ token: `0x${string}`;
29
+ }[] | undefined;
30
+ scopes: readonly Account.z_KeyAuthorization.Scope<`0x${string}`>[] | undefined;
31
+ };
32
+ redirect_uri: string;
33
+ scope: string;
34
+ };
35
+ /**
36
+ * The key authorization request, in Tempo ID's wire format. An access key account names its Tempo
37
+ * Account through `access`, and a plain key leaves it to Tempo ID.
38
+ */
39
+ export declare function keyAuthorization(auth: Auth, options: {
40
+ /** The key to authorize. */
41
+ accessKey: Account.Account;
42
+ /** The user's Tempo Account the key acts for, in place of the one `accessKey` names. */
43
+ account?: `0x${string}` | undefined;
44
+ permissions?: Permissions | undefined;
45
+ }): {
46
+ account?: `0x${string}`;
47
+ address: `0x${string}`;
48
+ chainId: `0x${string}`;
49
+ expiry: number | undefined;
50
+ keyType: "p256" | "secp256k1" | "webAuthn";
51
+ limits: {
52
+ limit: `0x${string}`;
53
+ period?: number;
54
+ token: `0x${string}`;
55
+ }[] | undefined;
56
+ scopes: readonly Account.z_KeyAuthorization.Scope<`0x${string}`>[] | undefined;
57
+ };
58
+ //# sourceMappingURL=request.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../../src/client/internal/request.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAEpD;;;GAGG;AACH,wBAAgB,OAAO,CACrB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE;IACP,mFAAmF;IACnF,SAAS,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,SAAS,CAAA;IACvC,wFAAwF;IACxF,OAAO,CAAC,EAAE,KAAK,MAAM,EAAE,GAAG,SAAS,CAAA;IACnC,yCAAyC;IACzC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC9B,WAAW,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;CACtC;;;;;;;;;;;;;;;;;;EAaF;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,IAAI,EACV,OAAO,EAAE;IACP,4BAA4B;IAC5B,SAAS,EAAE,OAAO,CAAC,OAAO,CAAA;IAC1B,wFAAwF;IACxF,OAAO,CAAC,EAAE,KAAK,MAAM,EAAE,GAAG,SAAS,CAAA;IACnC,WAAW,CAAC,EAAE,WAAW,GAAG,SAAS,CAAA;CACtC;;;;;;;;;;;;EAmBF"}
@@ -0,0 +1,45 @@
1
+ /**
2
+ * Builds the authorization and key authorization requests the actions send, in Tempo ID's wire
3
+ * format. The root type check holds them to Tempo ID's routes.
4
+ * @module
5
+ */
6
+ import { Hex } from 'ox';
7
+ /**
8
+ * The authorization request, with the key authorization request when the sign-in requests a key, in
9
+ * Tempo ID's wire format.
10
+ */
11
+ export function request(auth, options) {
12
+ const { accessKey, challenge } = options;
13
+ return {
14
+ ...(challenge === undefined ? {} : { challenge }),
15
+ client_id: auth.clientId,
16
+ ...(accessKey
17
+ ? { key_authorization: keyAuthorization(auth, { ...options, accessKey }) }
18
+ : {}),
19
+ redirect_uri: auth.redirectUri ?? `${globalThis.location?.origin ?? auth.url}/`,
20
+ scope: auth.scope,
21
+ };
22
+ }
23
+ /**
24
+ * The key authorization request, in Tempo ID's wire format. An access key account names its Tempo
25
+ * Account through `access`, and a plain key leaves it to Tempo ID.
26
+ */
27
+ export function keyAuthorization(auth, options) {
28
+ const { accessKey, permissions = {} } = options;
29
+ const account = options.account ??
30
+ (accessKey.accessKeyAddress ? accessKey.address : undefined);
31
+ return {
32
+ ...(account ? { account } : {}),
33
+ address: accessKey.accessKeyAddress ?? accessKey.address,
34
+ chainId: Hex.fromNumber(permissions.chainId ?? auth.chainId),
35
+ expiry: permissions.expiry,
36
+ keyType: accessKey.keyType,
37
+ limits: permissions.limits?.map(({ limit, period, token }) => ({
38
+ limit: Hex.fromNumber(limit),
39
+ ...(period ? { period } : {}),
40
+ token,
41
+ })),
42
+ scopes: permissions.scopes,
43
+ };
44
+ }
45
+ //# sourceMappingURL=request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request.js","sourceRoot":"","sources":["../../../src/client/internal/request.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,GAAG,EAAE,MAAM,IAAI,CAAA;AAKxB;;;GAGG;AACH,MAAM,UAAU,OAAO,CACrB,IAAU,EACV,OAQC;IAED,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,OAAO,CAAA;IACxC,OAAO;QACL,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC;QACjD,SAAS,EAAE,IAAI,CAAC,QAAQ;QACxB,GAAG,CAAC,SAAS;YACX,CAAC,CAAC,EAAE,iBAAiB,EAAE,gBAAgB,CAAC,IAAI,EAAE,EAAE,GAAG,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE;YAC1E,CAAC,CAAC,EAAE,CAAC;QACP,YAAY,EACV,IAAI,CAAC,WAAW,IAAI,GAAG,UAAU,CAAC,QAAQ,EAAE,MAAM,IAAI,IAAI,CAAC,GAAG,GAAG;QACnE,KAAK,EAAE,IAAI,CAAC,KAAK;KAClB,CAAA;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAC9B,IAAU,EACV,OAMC;IAED,MAAM,EAAE,SAAS,EAAE,WAAW,GAAG,EAAE,EAAE,GAAG,OAAO,CAAA;IAC/C,MAAM,OAAO,GACX,OAAO,CAAC,OAAO;QACf,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IAC9D,OAAO;QACL,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/B,OAAO,EAAE,SAAS,CAAC,gBAAgB,IAAI,SAAS,CAAC,OAAO;QACxD,OAAO,EAAE,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;QAC5D,MAAM,EAAE,WAAW,CAAC,MAAM;QAC1B,OAAO,EAAE,SAAS,CAAC,OAAO;QAC1B,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;YAC7D,KAAK,EAAE,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC;YAC5B,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7B,KAAK;SACN,CAAC,CAAC;QACH,MAAM,EAAE,WAAW,CAAC,MAAM;KAC3B,CAAA;AACH,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Resolves where actions keep state across page loads: the instance's `storage`, or IndexedDB.
3
+ * @module
4
+ */
5
+ import type { Auth } from '../Auth.js';
6
+ import type { Storage } from '../Storage.js';
7
+ /**
8
+ * Returns the instance's `storage`, or the page's IndexedDB. Returns `undefined` outside a browser
9
+ * when the instance names no `storage`.
10
+ */
11
+ export declare function get(auth: Auth): Storage | undefined;
12
+ //# sourceMappingURL=store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../src/client/internal/store.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAM5C;;;GAGG;AACH,wBAAgB,GAAG,CAAC,IAAI,EAAE,IAAI,uBAI7B"}
@@ -0,0 +1,15 @@
1
+ import * as IndexedDb from './indexedDb.js';
2
+ /** The default `storage`, opened on first use. */
3
+ let indexedDb;
4
+ /**
5
+ * Returns the instance's `storage`, or the page's IndexedDB. Returns `undefined` outside a browser
6
+ * when the instance names no `storage`.
7
+ */
8
+ export function get(auth) {
9
+ if (auth.storage)
10
+ return auth.storage;
11
+ if (typeof indexedDB === 'undefined')
12
+ return undefined;
13
+ return (indexedDb ??= IndexedDb.create());
14
+ }
15
+ //# sourceMappingURL=store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../src/client/internal/store.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAE3C,kDAAkD;AAClD,IAAI,SAA8B,CAAA;AAElC;;;GAGG;AACH,MAAM,UAAU,GAAG,CAAC,IAAU;IAC5B,IAAI,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC,OAAO,CAAA;IACrC,IAAI,OAAO,SAAS,KAAK,WAAW;QAAE,OAAO,SAAS,CAAA;IACtD,OAAO,CAAC,SAAS,KAAK,SAAS,CAAC,MAAM,EAAE,CAAC,CAAA;AAC3C,CAAC"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * The client for apps that sign users in through Tempo ID. It returns Viem access key accounts on
3
+ * their Tempo Accounts, and imports nothing from the server code.
4
+ * @module
5
+ */
6
+ export * as Actions from './client/Actions.js';
7
+ export * as Auth from './client/Auth.js';
8
+ export * as Authorization from './client/Authorization.js';
9
+ export * as Decorator from './client/Decorator.js';
10
+ export { tempoId } from './client/Decorator.js';
11
+ export * as Key from './client/Key.js';
12
+ export * as Pending from './client/Pending.js';
13
+ export * as Permissions from './client/Permissions.js';
14
+ export * as Provider from './client/Provider.js';
15
+ export * as Step from './client/Step.js';
16
+ export * as Storage from './client/Storage.js';
17
+ export * as TempoAccount from './client/TempoAccount.js';
18
+ export * as Tokens from './client/Tokens.js';
19
+ export * as User from './client/User.js';
20
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAA;AAC9C,OAAO,KAAK,IAAI,MAAM,kBAAkB,CAAA;AACxC,OAAO,KAAK,aAAa,MAAM,2BAA2B,CAAA;AAC1D,OAAO,KAAK,SAAS,MAAM,uBAAuB,CAAA;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAC/C,OAAO,KAAK,GAAG,MAAM,iBAAiB,CAAA;AACtC,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAA;AAC9C,OAAO,KAAK,WAAW,MAAM,yBAAyB,CAAA;AACtD,OAAO,KAAK,QAAQ,MAAM,sBAAsB,CAAA;AAChD,OAAO,KAAK,IAAI,MAAM,kBAAkB,CAAA;AACxC,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAA;AAC9C,OAAO,KAAK,YAAY,MAAM,0BAA0B,CAAA;AACxD,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAA;AAC5C,OAAO,KAAK,IAAI,MAAM,kBAAkB,CAAA"}
package/dist/client.js ADDED
@@ -0,0 +1,20 @@
1
+ /**
2
+ * The client for apps that sign users in through Tempo ID. It returns Viem access key accounts on
3
+ * their Tempo Accounts, and imports nothing from the server code.
4
+ * @module
5
+ */
6
+ export * as Actions from './client/Actions.js';
7
+ export * as Auth from './client/Auth.js';
8
+ export * as Authorization from './client/Authorization.js';
9
+ export * as Decorator from './client/Decorator.js';
10
+ export { tempoId } from './client/Decorator.js';
11
+ export * as Key from './client/Key.js';
12
+ export * as Pending from './client/Pending.js';
13
+ export * as Permissions from './client/Permissions.js';
14
+ export * as Provider from './client/Provider.js';
15
+ export * as Step from './client/Step.js';
16
+ export * as Storage from './client/Storage.js';
17
+ export * as TempoAccount from './client/TempoAccount.js';
18
+ export * as Tokens from './client/Tokens.js';
19
+ export * as User from './client/User.js';
20
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAA;AAC9C,OAAO,KAAK,IAAI,MAAM,kBAAkB,CAAA;AACxC,OAAO,KAAK,aAAa,MAAM,2BAA2B,CAAA;AAC1D,OAAO,KAAK,SAAS,MAAM,uBAAuB,CAAA;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAC/C,OAAO,KAAK,GAAG,MAAM,iBAAiB,CAAA;AACtC,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAA;AAC9C,OAAO,KAAK,WAAW,MAAM,yBAAyB,CAAA;AACtD,OAAO,KAAK,QAAQ,MAAM,sBAAsB,CAAA;AAChD,OAAO,KAAK,IAAI,MAAM,kBAAkB,CAAA;AACxC,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAA;AAC9C,OAAO,KAAK,YAAY,MAAM,0BAA0B,CAAA;AACxD,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAA;AAC5C,OAAO,KAAK,IAAI,MAAM,kBAAkB,CAAA"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Types that Tempo ID's client, server, and admin entry points share. The entry points arrive in the
3
+ * phases of `.agents/plans/rewrite.md`.
4
+ * @module
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,CAAA"}
package/dist/index.js ADDED
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Types that Tempo ID's client, server, and admin entry points share. The entry points arrive in the
3
+ * phases of `.agents/plans/rewrite.md`.
4
+ * @module
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,CAAA"}