@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,83 @@
1
+ {
2
+ "version": "7",
3
+ "dialect": "postgresql",
4
+ "entries": [
5
+ {
6
+ "idx": 0,
7
+ "version": "7",
8
+ "when": 1792103783439,
9
+ "tag": "0000_better_auth",
10
+ "breakpoints": true
11
+ },
12
+ {
13
+ "idx": 1,
14
+ "version": "7",
15
+ "when": 1792104841313,
16
+ "tag": "0001_oauth_provider",
17
+ "breakpoints": true
18
+ },
19
+ {
20
+ "idx": 2,
21
+ "version": "7",
22
+ "when": 1792105790542,
23
+ "tag": "0002_device_code",
24
+ "breakpoints": true
25
+ },
26
+ {
27
+ "idx": 3,
28
+ "version": "7",
29
+ "when": 1792120897368,
30
+ "tag": "0003_realms",
31
+ "breakpoints": true
32
+ },
33
+ {
34
+ "idx": 4,
35
+ "version": "7",
36
+ "when": 1792120898985,
37
+ "tag": "0004_default_realm",
38
+ "breakpoints": true
39
+ },
40
+ {
41
+ "idx": 5,
42
+ "version": "7",
43
+ "when": 1792122703707,
44
+ "tag": "0005_passkeys",
45
+ "breakpoints": true
46
+ },
47
+ {
48
+ "idx": 6,
49
+ "version": "7",
50
+ "when": 1792191457718,
51
+ "tag": "0006_first_accounts",
52
+ "breakpoints": true
53
+ },
54
+ {
55
+ "idx": 7,
56
+ "version": "7",
57
+ "when": 1792215096143,
58
+ "tag": "0007_pending_keys",
59
+ "breakpoints": true
60
+ },
61
+ {
62
+ "idx": 8,
63
+ "version": "7",
64
+ "when": 1792228621255,
65
+ "tag": "0008_secp256k1_owners",
66
+ "breakpoints": true
67
+ },
68
+ {
69
+ "idx": 9,
70
+ "version": "7",
71
+ "when": 1792272924631,
72
+ "tag": "0009_device_requests",
73
+ "breakpoints": true
74
+ },
75
+ {
76
+ "idx": 10,
77
+ "version": "7",
78
+ "when": 1792277670228,
79
+ "tag": "0010_device_keys",
80
+ "breakpoints": true
81
+ }
82
+ ]
83
+ }
@@ -0,0 +1,218 @@
1
+ /**
2
+ * Tempo ID's tables, as Drizzle declares them: the Better Auth tables, then Tempo ID's own.
3
+ * @module
4
+ */
5
+ import { sql } from 'drizzle-orm'
6
+ import {
7
+ check,
8
+ index,
9
+ integer,
10
+ jsonb,
11
+ pgTable,
12
+ primaryKey,
13
+ text,
14
+ timestamp,
15
+ unique,
16
+ } from 'drizzle-orm/pg-core'
17
+ import { oauthClient, user } from './auth.js'
18
+
19
+ export * from './auth.js'
20
+
21
+ /**
22
+ * The realms of each OAuth app, in order. The first realm holds a user's first account. An app
23
+ * without rows reaches the `default` realm.
24
+ */
25
+ export const appRealms = pgTable(
26
+ 'app_realms',
27
+ {
28
+ clientId: text('client_id')
29
+ .notNull()
30
+ .references(() => oauthClient.clientId, { onDelete: 'cascade' }),
31
+ position: integer('position').notNull(),
32
+ // A realm that an app names cannot be deleted.
33
+ realmId: text('realm_id')
34
+ .notNull()
35
+ .references(() => realms.id),
36
+ },
37
+ (table) => [
38
+ check('app_realms_position_check', sql`${table.position} >= 0`),
39
+ primaryKey({ columns: [table.clientId, table.position] }),
40
+ unique('app_realms_client_id_realm_id_unique').on(
41
+ table.clientId,
42
+ table.realmId,
43
+ ),
44
+ ],
45
+ )
46
+
47
+ /**
48
+ * What a CLI reported with each device grant request, where it came from, and the key that it
49
+ * requested, which the device page shows beside the user code. Each row shares the ID of its `device_code` row. It has no foreign key, so it outlives the
50
+ * redemption that deletes that row, and the cleanup cron deletes it once it expires.
51
+ */
52
+ export const deviceRequests = pgTable('device_requests', {
53
+ // The Tempo Account that the signed key acts for. Null until approval signs the key.
54
+ account: text('account'),
55
+ // The message whose hash is the key's witness. Null for a request without one.
56
+ challenge: text('challenge'),
57
+ createdAt: timestamp('created_at').defaultNow().notNull(),
58
+ // The name that the CLI reported, such as its hostname. Null for a code from `POST /device/code`.
59
+ device: text('device'),
60
+ expiresAt: timestamp('expires_at').notNull(),
61
+ // The ID of the `device_code` row.
62
+ id: text('id').primaryKey(),
63
+ // The CLI's IP address. Null when it is unknown.
64
+ ip: text('ip'),
65
+ // The key that the CLI requested, as JSON with every default filled. Null for a request without one.
66
+ key: jsonb('key'),
67
+ // The signed key authorization, in the node's RPC format. Null until approval signs the key, and
68
+ // again once the first redemption of the device code takes it.
69
+ keyAuthorization: jsonb('key_authorization'),
70
+ // The CLI's city and country, from its IP address. Null when they are unknown.
71
+ location: text('location'),
72
+ })
73
+
74
+ /**
75
+ * The realm of each user's first created account, claimed before an owner kind, such as Privy,
76
+ * creates the key. A request that finds a claim in its realms completes that account instead of
77
+ * creating another, so the kind's calls hold no database connection.
78
+ */
79
+ export const firstAccounts = pgTable(
80
+ 'first_accounts',
81
+ {
82
+ createdAt: timestamp('created_at').defaultNow().notNull(),
83
+ realmId: text('realm_id')
84
+ .notNull()
85
+ .references(() => realms.id, { onDelete: 'cascade' }),
86
+ userId: text('user_id')
87
+ .notNull()
88
+ .references(() => user.id, { onDelete: 'cascade' }),
89
+ },
90
+ (table) => [primaryKey({ columns: [table.userId, table.realmId] })],
91
+ )
92
+
93
+ /**
94
+ * The keys that users sign in with: for now, passkeys. Each row is one WebAuthn credential of one
95
+ * relying party, linked to one user.
96
+ */
97
+ export const keys = pgTable(
98
+ 'keys',
99
+ {
100
+ // The address that the public key derives, in lowercase.
101
+ address: text('address').notNull().unique(),
102
+ createdAt: timestamp('created_at').defaultNow().notNull(),
103
+ // The WebAuthn credential ID, base64url, as the browser returns it.
104
+ id: text('id').primaryKey(),
105
+ // The uncompressed P256 public key, hex.
106
+ publicKey: text('public_key').notNull(),
107
+ rpId: text('rp_id').notNull(),
108
+ // `tempo-id` for a passkey that Tempo ID stored, `wallet` for one that wallet.tempo created.
109
+ source: text('source').notNull(),
110
+ type: text('type').notNull(),
111
+ userId: text('user_id')
112
+ .notNull()
113
+ .references(() => user.id, { onDelete: 'cascade' }),
114
+ },
115
+ (table) => [
116
+ check('keys_source_check', sql`${table.source} in ('tempo-id', 'wallet')`),
117
+ check('keys_type_check', sql`${table.type} = 'passkey'`),
118
+ index('keys_user_id_idx').on(table.userId),
119
+ ],
120
+ )
121
+
122
+ /**
123
+ * The key authorizations that the approval page signed, each held for the code that the same
124
+ * approval returned, by the app's client ID and the request's PKCE challenge. The first redemption
125
+ * of a code with the challenge's verifier deletes the row and returns the key beside the tokens.
126
+ */
127
+ export const pendingKeys = pgTable(
128
+ 'pending_keys',
129
+ {
130
+ // The Tempo Account that the key acts for.
131
+ account: text('account').notNull(),
132
+ clientId: text('client_id')
133
+ .notNull()
134
+ .references(() => oauthClient.clientId, { onDelete: 'cascade' }),
135
+ codeChallenge: text('code_challenge').notNull(),
136
+ createdAt: timestamp('created_at').defaultNow().notNull(),
137
+ expiresAt: timestamp('expires_at').notNull(),
138
+ // The signed key authorization, in the node's RPC format.
139
+ keyAuthorization: jsonb('key_authorization').notNull(),
140
+ userId: text('user_id')
141
+ .notNull()
142
+ .references(() => user.id, { onDelete: 'cascade' }),
143
+ },
144
+ (table) => [primaryKey({ columns: [table.clientId, table.codeChallenge] })],
145
+ )
146
+
147
+ /**
148
+ * The passkey relying party of each realm that holds passkey owners. Two realms cannot share one,
149
+ * since a passkey belongs to exactly one relying party.
150
+ */
151
+ export const realmPasskeys = pgTable('realm_passkeys', {
152
+ createdAt: timestamp('created_at').defaultNow().notNull(),
153
+ realmId: text('realm_id')
154
+ .primaryKey()
155
+ .references(() => realms.id, { onDelete: 'cascade' }),
156
+ rpId: text('rp_id').notNull().unique(),
157
+ })
158
+
159
+ /**
160
+ * The Privy app of each realm that holds Privy owners. `app_secret` holds the Privy app secret,
161
+ * encrypted with the `SECRET` variable, never the secret itself.
162
+ */
163
+ export const realmPrivy = pgTable('realm_privy', {
164
+ appId: text('app_id').notNull().unique(),
165
+ appSecret: text('app_secret').notNull(),
166
+ createdAt: timestamp('created_at').defaultNow().notNull(),
167
+ realmId: text('realm_id')
168
+ .primaryKey()
169
+ .references(() => realms.id, { onDelete: 'cascade' }),
170
+ })
171
+
172
+ /**
173
+ * The realms whose secp256k1 owners Tempo ID holds itself, which the suites and local development
174
+ * turn on. A production realm never has a row, since such a key stays in Tempo ID's database.
175
+ */
176
+ export const realmSecp256k1 = pgTable('realm_secp256k1', {
177
+ createdAt: timestamp('created_at').defaultNow().notNull(),
178
+ realmId: text('realm_id')
179
+ .primaryKey()
180
+ .references(() => realms.id, { onDelete: 'cascade' }),
181
+ })
182
+
183
+ /**
184
+ * The realms: each a set of Tempo Accounts. A realm's owner configurations, such as `realm_privy`
185
+ * and `realm_passkeys`, live in their own tables. A migration adds the `default` realm.
186
+ */
187
+ export const realms = pgTable(
188
+ 'realms',
189
+ {
190
+ createdAt: timestamp('created_at').defaultNow().notNull(),
191
+ id: text('id').primaryKey(),
192
+ name: text('name').notNull(),
193
+ },
194
+ (table) => [
195
+ check('realms_id_check', sql`${table.id} ~ '^[a-z0-9]+(-[a-z0-9]+)*$'`),
196
+ ],
197
+ )
198
+
199
+ /**
200
+ * The secp256k1 owner key of each user in each realm that `realm_secp256k1` names, which Tempo ID
201
+ * creates and signs with. `private_key` holds the key encrypted with the `SECRET` variable, never
202
+ * the key itself.
203
+ */
204
+ export const secp256k1Owners = pgTable(
205
+ 'secp256k1_owners',
206
+ {
207
+ address: text('address').notNull().unique(),
208
+ createdAt: timestamp('created_at').defaultNow().notNull(),
209
+ privateKey: text('private_key').notNull(),
210
+ realmId: text('realm_id')
211
+ .notNull()
212
+ .references(() => realms.id, { onDelete: 'cascade' }),
213
+ userId: text('user_id')
214
+ .notNull()
215
+ .references(() => user.id, { onDelete: 'cascade' }),
216
+ },
217
+ (table) => [primaryKey({ columns: [table.userId, table.realmId] })],
218
+ )
package/src/app/env.ts ADDED
@@ -0,0 +1,49 @@
1
+ /**
2
+ * The variables Tempo ID reads, which Void validates. Void loads `env.ts` with Node, outside Vite, so
3
+ * this module imports no other module.
4
+ * @module
5
+ */
6
+ import { defineEnv, oneOf, string, url } from 'void/env'
7
+
8
+ /** The variables Tempo ID reads. Void's own `DATABASE_URL` stays outside it. */
9
+ const schema = defineEnv({
10
+ /** Google's OAuth client ID. Without it and its secret, Tempo ID offers no Google sign-in. */
11
+ GOOGLE_CLIENT_ID: string().optional(),
12
+ /** Google's OAuth client secret, beside `GOOGLE_CLIENT_ID`. */
13
+ GOOGLE_CLIENT_SECRET: string().optional(),
14
+ /**
15
+ * The RS256 private key, as PKCS #8 PEM, that signs the tokens Tempo ID sends to Privy. Each Privy
16
+ * app trusts only its public half, so no app's token signs as a user's wallet. Without it, Privy
17
+ * owners sign nothing.
18
+ */
19
+ PRIVY_JWT_PRIVATE_KEY: string().optional(),
20
+ /** The secret that signs cookies and encrypts the signing keys. */
21
+ SECRET: string(),
22
+ /**
23
+ * The domain whose sign-in codes go to the `TEST_INBOX` binding instead of email, such as
24
+ * `example.org` on a preview. Only the domains that RFC 2606 reserves pass, as `TestInbox.domains`
25
+ * in `src/internal/TestInbox.ts` lists them. Without it, or without the binding, every code is
26
+ * emailed.
27
+ */
28
+ TEST_EMAIL_DOMAIN: oneOf([
29
+ 'example.com',
30
+ 'example.net',
31
+ 'example.org',
32
+ ]).optional(),
33
+ /**
34
+ * An RPC URL that replaces every chain's own for balance reads, such as a local Tempo node. The
35
+ * test harness sets it, and deployments leave it unset.
36
+ */
37
+ TEMPO_RPC_URL: url().optional(),
38
+ /** Tempo ID's origin, such as `https://id.tempo.xyz`. It becomes every token's `iss`. */
39
+ URL: url(),
40
+ })
41
+
42
+ type Shape = typeof schema
43
+
44
+ // Void writes the same augmentation in `.void/env.d.ts`, which `tsc` does not read.
45
+ declare module 'void/env' {
46
+ interface ValidatedEnv extends Shape {}
47
+ }
48
+
49
+ export default schema
@@ -0,0 +1,82 @@
1
+ /**
2
+ * Calls Tempo ID's JSON API from a page with `hc`, typed by the root app's routes. During server
3
+ * rendering the client calls the API in process, through the request context that `server.ts`
4
+ * passes. In the browser it fetches the page's origin. The root route creates one client for the
5
+ * document and provides it, and pages read it with {@link use}. Loaders create their own.
6
+ * @module
7
+ */
8
+ import {
9
+ createIsomorphicFn,
10
+ getGlobalStartContext,
11
+ } from '@tanstack/react-start'
12
+ import { DetailedError, hc } from 'hono/client'
13
+ import { createContext, useContext } from 'react'
14
+ import type { App } from '../../Api.js'
15
+
16
+ /** A client for Tempo ID's JSON API. */
17
+ export type Client = ReturnType<typeof create>
18
+
19
+ /** Returns the `fetch` that reaches the API: in process on the server, and the network in the browser. */
20
+ const fetcher = createIsomorphicFn()
21
+ .server(() => getGlobalStartContext()!.fetch)
22
+ .client(() => fetch)
23
+
24
+ /** Returns the page's origin. */
25
+ const origin = createIsomorphicFn()
26
+ .server(() => getGlobalStartContext()!.origin)
27
+ .client(() => window.location.origin)
28
+
29
+ /** The client that the root route provides to every page. */
30
+ export const Context = createContext<Client | undefined>(undefined)
31
+
32
+ /**
33
+ * Creates a client for the page request on the server, or for the page in the browser. Requests go
34
+ * to the page's own origin, so the session cookie goes with each one.
35
+ */
36
+ export function create() {
37
+ return hc<App>(origin(), { fetch: fetcher() })
38
+ }
39
+
40
+ /**
41
+ * Returns the message to show for `error`: the `error_description` of a refusal that `parseResponse`
42
+ * throws, or a generic message for any other failure, such as a lost connection.
43
+ */
44
+ export function message(error: unknown) {
45
+ if (error instanceof DetailedError) {
46
+ const data: unknown = error.detail?.data
47
+ if (
48
+ typeof data === 'object' &&
49
+ data !== null &&
50
+ 'error_description' in data &&
51
+ typeof data.error_description === 'string'
52
+ )
53
+ return data.error_description
54
+ return 'Something went wrong. Try again.'
55
+ }
56
+ return 'Tempo ID cannot be reached. Check the connection, and try again.'
57
+ }
58
+
59
+ /** Returns the `reason` of a refusal that `parseResponse` throws, or `undefined` for any other failure. */
60
+ export function reason(error: unknown) {
61
+ if (!(error instanceof DetailedError)) return undefined
62
+ const data: unknown = error.detail?.data
63
+ if (
64
+ typeof data === 'object' &&
65
+ data !== null &&
66
+ 'reason' in data &&
67
+ typeof data.reason === 'string'
68
+ )
69
+ return data.reason
70
+ return undefined
71
+ }
72
+
73
+ /**
74
+ * Returns the root route's client.
75
+ *
76
+ * @throws {Error} When a component renders outside the root route.
77
+ */
78
+ export function use() {
79
+ const client = useContext(Context)
80
+ if (!client) throw new Error('The client is used outside the root route.')
81
+ return client
82
+ }
@@ -0,0 +1,24 @@
1
+ /** Shared parts of the pages' loaders. @module */
2
+ import { redirect as router_redirect } from '@tanstack/react-router'
3
+
4
+ /**
5
+ * Throws a redirect to `href`, with status 302. A redirect to a path that no route serves, such as
6
+ * `/oauth2/authorize`, or to another origin loads the document, since the router cannot render it.
7
+ */
8
+ export function redirect(options: redirect.Options): never {
9
+ const { document = false, href } = options
10
+ throw router_redirect({
11
+ href,
12
+ ...(document ? { reloadDocument: true } : {}),
13
+ statusCode: 302,
14
+ })
15
+ }
16
+
17
+ export declare namespace redirect {
18
+ type Options = {
19
+ /** Whether the browser loads `href` as a document. Defaults to `false`. */
20
+ document?: boolean | undefined
21
+ /** The path, or the absolute URL, that the redirect names. */
22
+ href: string
23
+ }
24
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "name": "@tempoxyz/id-app",
3
+ "private": true,
4
+ "type": "module",
5
+ "devDependencies": {
6
+ "@tanstack/react-start": "catalog:"
7
+ }
8
+ }
@@ -0,0 +1,198 @@
1
+ /* eslint-disable */
2
+
3
+ // @ts-nocheck
4
+
5
+ // noinspection JSUnusedGlobalSymbols
6
+
7
+ // This file was automatically generated by TanStack Router.
8
+ // You should NOT make any changes in this file as it will be overwritten.
9
+ // Additionally, you should also exclude this file from your linter and/or formatter to prevent it from being checked or modified.
10
+
11
+ import { Route as rootRouteImport } from './routes/__root'
12
+ import { Route as IndexRouteImport } from './routes/index'
13
+ import { Route as AuthorizeRouteImport } from './routes/authorize'
14
+ import { Route as ChooseAccountRouteImport } from './routes/choose-account'
15
+ import { Route as DepositRouteImport } from './routes/deposit'
16
+ import { Route as DeviceRouteImport } from './routes/device'
17
+ import { Route as LoginRouteImport } from './routes/login'
18
+ import { Route as Char91_Char93FlowsRouteImport } from './routes/[_].flows'
19
+
20
+ const IndexRoute = IndexRouteImport.update({
21
+ id: '/',
22
+ path: '/',
23
+ getParentRoute: () => rootRouteImport,
24
+ } as any)
25
+ const AuthorizeRoute = AuthorizeRouteImport.update({
26
+ id: '/authorize',
27
+ path: '/authorize',
28
+ getParentRoute: () => rootRouteImport,
29
+ } as any)
30
+ const ChooseAccountRoute = ChooseAccountRouteImport.update({
31
+ id: '/choose-account',
32
+ path: '/choose-account',
33
+ getParentRoute: () => rootRouteImport,
34
+ } as any)
35
+ const DepositRoute = DepositRouteImport.update({
36
+ id: '/deposit',
37
+ path: '/deposit',
38
+ getParentRoute: () => rootRouteImport,
39
+ } as any)
40
+ const DeviceRoute = DeviceRouteImport.update({
41
+ id: '/device',
42
+ path: '/device',
43
+ getParentRoute: () => rootRouteImport,
44
+ } as any)
45
+ const LoginRoute = LoginRouteImport.update({
46
+ id: '/login',
47
+ path: '/login',
48
+ getParentRoute: () => rootRouteImport,
49
+ } as any)
50
+ const Char91_Char93FlowsRoute = Char91_Char93FlowsRouteImport.update({
51
+ id: '/_/flows',
52
+ path: '/_/flows',
53
+ getParentRoute: () => rootRouteImport,
54
+ } as any)
55
+
56
+ export interface FileRoutesByFullPath {
57
+ '/': typeof IndexRoute
58
+ '/authorize': typeof AuthorizeRoute
59
+ '/choose-account': typeof ChooseAccountRoute
60
+ '/deposit': typeof DepositRoute
61
+ '/device': typeof DeviceRoute
62
+ '/login': typeof LoginRoute
63
+ '/_/flows': typeof Char91_Char93FlowsRoute
64
+ }
65
+ export interface FileRoutesByTo {
66
+ '/': typeof IndexRoute
67
+ '/authorize': typeof AuthorizeRoute
68
+ '/choose-account': typeof ChooseAccountRoute
69
+ '/deposit': typeof DepositRoute
70
+ '/device': typeof DeviceRoute
71
+ '/login': typeof LoginRoute
72
+ '/_/flows': typeof Char91_Char93FlowsRoute
73
+ }
74
+ export interface FileRoutesById {
75
+ __root__: typeof rootRouteImport
76
+ '/': typeof IndexRoute
77
+ '/authorize': typeof AuthorizeRoute
78
+ '/choose-account': typeof ChooseAccountRoute
79
+ '/deposit': typeof DepositRoute
80
+ '/device': typeof DeviceRoute
81
+ '/login': typeof LoginRoute
82
+ '/_/flows': typeof Char91_Char93FlowsRoute
83
+ }
84
+ export interface FileRouteTypes {
85
+ fileRoutesByFullPath: FileRoutesByFullPath
86
+ fullPaths:
87
+ | '/'
88
+ | '/authorize'
89
+ | '/choose-account'
90
+ | '/deposit'
91
+ | '/device'
92
+ | '/login'
93
+ | '/_/flows'
94
+ fileRoutesByTo: FileRoutesByTo
95
+ to:
96
+ | '/'
97
+ | '/authorize'
98
+ | '/choose-account'
99
+ | '/deposit'
100
+ | '/device'
101
+ | '/login'
102
+ | '/_/flows'
103
+ id:
104
+ | '__root__'
105
+ | '/'
106
+ | '/authorize'
107
+ | '/choose-account'
108
+ | '/deposit'
109
+ | '/device'
110
+ | '/login'
111
+ | '/_/flows'
112
+ fileRoutesById: FileRoutesById
113
+ }
114
+ export interface RootRouteChildren {
115
+ IndexRoute: typeof IndexRoute
116
+ AuthorizeRoute: typeof AuthorizeRoute
117
+ ChooseAccountRoute: typeof ChooseAccountRoute
118
+ DepositRoute: typeof DepositRoute
119
+ DeviceRoute: typeof DeviceRoute
120
+ LoginRoute: typeof LoginRoute
121
+ Char91_Char93FlowsRoute: typeof Char91_Char93FlowsRoute
122
+ }
123
+
124
+ declare module '@tanstack/react-router' {
125
+ interface FileRoutesByPath {
126
+ '/': {
127
+ id: '/'
128
+ path: '/'
129
+ fullPath: '/'
130
+ preLoaderRoute: typeof IndexRouteImport
131
+ parentRoute: typeof rootRouteImport
132
+ }
133
+ '/authorize': {
134
+ id: '/authorize'
135
+ path: '/authorize'
136
+ fullPath: '/authorize'
137
+ preLoaderRoute: typeof AuthorizeRouteImport
138
+ parentRoute: typeof rootRouteImport
139
+ }
140
+ '/choose-account': {
141
+ id: '/choose-account'
142
+ path: '/choose-account'
143
+ fullPath: '/choose-account'
144
+ preLoaderRoute: typeof ChooseAccountRouteImport
145
+ parentRoute: typeof rootRouteImport
146
+ }
147
+ '/deposit': {
148
+ id: '/deposit'
149
+ path: '/deposit'
150
+ fullPath: '/deposit'
151
+ preLoaderRoute: typeof DepositRouteImport
152
+ parentRoute: typeof rootRouteImport
153
+ }
154
+ '/device': {
155
+ id: '/device'
156
+ path: '/device'
157
+ fullPath: '/device'
158
+ preLoaderRoute: typeof DeviceRouteImport
159
+ parentRoute: typeof rootRouteImport
160
+ }
161
+ '/login': {
162
+ id: '/login'
163
+ path: '/login'
164
+ fullPath: '/login'
165
+ preLoaderRoute: typeof LoginRouteImport
166
+ parentRoute: typeof rootRouteImport
167
+ }
168
+ '/_/flows': {
169
+ id: '/_/flows'
170
+ path: '/_/flows'
171
+ fullPath: '/_/flows'
172
+ preLoaderRoute: typeof Char91_Char93FlowsRouteImport
173
+ parentRoute: typeof rootRouteImport
174
+ }
175
+ }
176
+ }
177
+
178
+ const rootRouteChildren: RootRouteChildren = {
179
+ IndexRoute: IndexRoute,
180
+ AuthorizeRoute: AuthorizeRoute,
181
+ ChooseAccountRoute: ChooseAccountRoute,
182
+ DepositRoute: DepositRoute,
183
+ DeviceRoute: DeviceRoute,
184
+ LoginRoute: LoginRoute,
185
+ Char91_Char93FlowsRoute: Char91_Char93FlowsRoute,
186
+ }
187
+ export const routeTree = rootRouteImport
188
+ ._addFileChildren(rootRouteChildren)
189
+ ._addFileTypes<FileRouteTypes>()
190
+
191
+ import type { getRouter } from './router.tsx'
192
+ import type { createStart } from '@tanstack/react-start'
193
+ declare module '@tanstack/react-start' {
194
+ interface Register {
195
+ ssr: true
196
+ router: Awaited<ReturnType<typeof getRouter>>
197
+ }
198
+ }