@stackframe/stack-shared 2.8.8 → 2.8.11

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 (476) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/config/format.d.cts +39 -0
  3. package/dist/config/format.d.ts +14 -13
  4. package/dist/config/format.js +147 -206
  5. package/dist/config/format.js.map +1 -0
  6. package/dist/config/schema.d.cts +729 -0
  7. package/dist/config/schema.d.ts +59 -51
  8. package/dist/config/schema.js +232 -172
  9. package/dist/config/schema.js.map +1 -0
  10. package/dist/crud.d.cts +102 -0
  11. package/dist/crud.d.ts +15 -13
  12. package/dist/crud.js +83 -128
  13. package/dist/crud.js.map +1 -0
  14. package/dist/esm/config/format.js +135 -0
  15. package/dist/esm/config/format.js.map +1 -0
  16. package/dist/esm/config/schema.js +201 -0
  17. package/dist/esm/config/schema.js.map +1 -0
  18. package/dist/esm/crud.js +60 -0
  19. package/dist/esm/crud.js.map +1 -0
  20. package/dist/esm/global.d.js +1 -0
  21. package/dist/esm/global.d.js.map +1 -0
  22. package/dist/esm/helpers/password.js +17 -0
  23. package/dist/esm/helpers/password.js.map +1 -0
  24. package/dist/esm/helpers/production-mode.js +50 -0
  25. package/dist/esm/helpers/production-mode.js.map +1 -0
  26. package/dist/esm/hooks/use-async-callback.js +38 -0
  27. package/dist/esm/hooks/use-async-callback.js.map +1 -0
  28. package/dist/esm/hooks/use-async-external-store.js +23 -0
  29. package/dist/esm/hooks/use-async-external-store.js.map +1 -0
  30. package/dist/esm/hooks/use-hash.js +17 -0
  31. package/dist/esm/hooks/use-hash.js.map +1 -0
  32. package/dist/esm/hooks/use-strict-memo.js +61 -0
  33. package/dist/esm/hooks/use-strict-memo.js.map +1 -0
  34. package/dist/esm/index.js +22 -0
  35. package/dist/esm/index.js.map +1 -0
  36. package/dist/esm/interface/adminInterface.js +244 -0
  37. package/dist/esm/interface/adminInterface.js.map +1 -0
  38. package/dist/esm/interface/clientInterface.js +2041 -0
  39. package/dist/esm/interface/clientInterface.js.map +1 -0
  40. package/dist/esm/interface/crud/contact-channels.js +77 -0
  41. package/dist/esm/interface/crud/contact-channels.js.map +1 -0
  42. package/dist/esm/interface/crud/current-user.js +65 -0
  43. package/dist/esm/interface/crud/current-user.js.map +1 -0
  44. package/dist/esm/interface/crud/email-templates.js +52 -0
  45. package/dist/esm/interface/crud/email-templates.js.map +1 -0
  46. package/dist/esm/interface/crud/emails.js +20 -0
  47. package/dist/esm/interface/crud/emails.js.map +1 -0
  48. package/dist/esm/interface/crud/internal-api-keys.js +69 -0
  49. package/dist/esm/interface/crud/internal-api-keys.js.map +1 -0
  50. package/dist/esm/interface/crud/oauth.js +24 -0
  51. package/dist/esm/interface/crud/oauth.js.map +1 -0
  52. package/dist/esm/interface/crud/project-api-keys.js +93 -0
  53. package/dist/esm/interface/crud/project-api-keys.js.map +1 -0
  54. package/dist/esm/interface/crud/project-permissions.js +113 -0
  55. package/dist/esm/interface/crud/project-permissions.js.map +1 -0
  56. package/dist/esm/interface/crud/projects.js +180 -0
  57. package/dist/esm/interface/crud/projects.js.map +1 -0
  58. package/dist/esm/interface/crud/sessions.js +62 -0
  59. package/dist/esm/interface/crud/sessions.js.map +1 -0
  60. package/dist/esm/interface/crud/svix-token.js +22 -0
  61. package/dist/esm/interface/crud/svix-token.js.map +1 -0
  62. package/dist/esm/interface/crud/team-invitation-details.js +23 -0
  63. package/dist/esm/interface/crud/team-invitation-details.js.map +1 -0
  64. package/dist/esm/interface/crud/team-invitation.js +36 -0
  65. package/dist/esm/interface/crud/team-invitation.js.map +1 -0
  66. package/dist/esm/interface/crud/team-member-profiles.js +62 -0
  67. package/dist/esm/interface/crud/team-member-profiles.js.map +1 -0
  68. package/dist/esm/interface/crud/team-memberships.js +60 -0
  69. package/dist/esm/interface/crud/team-memberships.js.map +1 -0
  70. package/dist/esm/interface/crud/team-permissions.js +114 -0
  71. package/dist/esm/interface/crud/team-permissions.js.map +1 -0
  72. package/dist/esm/interface/crud/teams.js +143 -0
  73. package/dist/esm/interface/crud/teams.js.map +1 -0
  74. package/dist/esm/interface/crud/users.js +139 -0
  75. package/dist/esm/interface/crud/users.js.map +1 -0
  76. package/dist/esm/interface/serverInterface.js +485 -0
  77. package/dist/esm/interface/serverInterface.js.map +1 -0
  78. package/dist/esm/interface/webhooks.js +21 -0
  79. package/dist/esm/interface/webhooks.js.map +1 -0
  80. package/dist/esm/known-errors.js +1238 -0
  81. package/dist/esm/known-errors.js.map +1 -0
  82. package/dist/esm/schema-fields.js +484 -0
  83. package/dist/esm/schema-fields.js.map +1 -0
  84. package/dist/esm/sessions.js +168 -0
  85. package/dist/esm/sessions.js.map +1 -0
  86. package/dist/esm/utils/api-keys.js +79 -0
  87. package/dist/esm/utils/api-keys.js.map +1 -0
  88. package/dist/esm/utils/arrays.js +78 -0
  89. package/dist/esm/utils/arrays.js.map +1 -0
  90. package/dist/esm/utils/base64.js +18 -0
  91. package/dist/esm/utils/base64.js.map +1 -0
  92. package/dist/esm/utils/booleans.js +12 -0
  93. package/dist/esm/utils/booleans.js.map +1 -0
  94. package/dist/esm/utils/browser-compat.js +21 -0
  95. package/dist/esm/utils/browser-compat.js.map +1 -0
  96. package/dist/esm/utils/bytes.js +160 -0
  97. package/dist/esm/utils/bytes.js.map +1 -0
  98. package/dist/esm/utils/caches.js +167 -0
  99. package/dist/esm/utils/caches.js.map +1 -0
  100. package/dist/esm/utils/compile-time.js +11 -0
  101. package/dist/esm/utils/compile-time.js.map +1 -0
  102. package/dist/esm/utils/crypto.js +25 -0
  103. package/dist/esm/utils/crypto.js.map +1 -0
  104. package/dist/esm/utils/dates.js +64 -0
  105. package/dist/esm/utils/dates.js.map +1 -0
  106. package/dist/esm/utils/dom.js +11 -0
  107. package/dist/esm/utils/dom.js.map +1 -0
  108. package/dist/esm/utils/env.js +58 -0
  109. package/dist/esm/utils/env.js.map +1 -0
  110. package/dist/esm/utils/errors.js +174 -0
  111. package/dist/esm/utils/errors.js.map +1 -0
  112. package/dist/esm/utils/fs.js +37 -0
  113. package/dist/esm/utils/fs.js.map +1 -0
  114. package/dist/esm/utils/functions.js +12 -0
  115. package/dist/esm/utils/functions.js.map +1 -0
  116. package/dist/esm/utils/geo.js +15 -0
  117. package/dist/esm/utils/geo.js.map +1 -0
  118. package/dist/esm/utils/globals.js +18 -0
  119. package/dist/esm/utils/globals.js.map +1 -0
  120. package/dist/esm/utils/hashes.js +55 -0
  121. package/dist/esm/utils/hashes.js.map +1 -0
  122. package/dist/esm/utils/html.js +13 -0
  123. package/dist/esm/utils/html.js.map +1 -0
  124. package/dist/esm/utils/http.js +60 -0
  125. package/dist/esm/utils/http.js.map +1 -0
  126. package/dist/esm/utils/ips.js +15 -0
  127. package/dist/esm/utils/ips.js.map +1 -0
  128. package/dist/esm/utils/json.js +31 -0
  129. package/dist/esm/utils/json.js.map +1 -0
  130. package/dist/esm/utils/jwt.js +87 -0
  131. package/dist/esm/utils/jwt.js.map +1 -0
  132. package/dist/esm/utils/locks.js +57 -0
  133. package/dist/esm/utils/locks.js.map +1 -0
  134. package/dist/esm/utils/maps.js +181 -0
  135. package/dist/esm/utils/maps.js.map +1 -0
  136. package/dist/esm/utils/math.js +8 -0
  137. package/dist/esm/utils/math.js.map +1 -0
  138. package/dist/esm/utils/node-http.js +42 -0
  139. package/dist/esm/utils/node-http.js.map +1 -0
  140. package/dist/esm/utils/numbers.js +32 -0
  141. package/dist/esm/utils/numbers.js.map +1 -0
  142. package/dist/esm/utils/oauth.js +10 -0
  143. package/dist/esm/utils/oauth.js.map +1 -0
  144. package/dist/esm/utils/objects.js +177 -0
  145. package/dist/esm/utils/objects.js.map +1 -0
  146. package/dist/esm/utils/passkey.js +1 -0
  147. package/dist/esm/utils/passkey.js.map +1 -0
  148. package/dist/esm/utils/promises.js +233 -0
  149. package/dist/esm/utils/promises.js.map +1 -0
  150. package/dist/esm/utils/proxies.js +128 -0
  151. package/dist/esm/utils/proxies.js.map +1 -0
  152. package/dist/esm/utils/react.js +78 -0
  153. package/dist/esm/utils/react.js.map +1 -0
  154. package/dist/esm/utils/results.js +141 -0
  155. package/dist/esm/utils/results.js.map +1 -0
  156. package/dist/esm/utils/sentry.js +20 -0
  157. package/dist/esm/utils/sentry.js.map +1 -0
  158. package/dist/esm/utils/stores.js +195 -0
  159. package/dist/esm/utils/stores.js.map +1 -0
  160. package/dist/esm/utils/strings.js +295 -0
  161. package/dist/esm/utils/strings.js.map +1 -0
  162. package/dist/esm/utils/strings.nicify.test.js +222 -0
  163. package/dist/esm/utils/strings.nicify.test.js.map +1 -0
  164. package/dist/esm/utils/types.js +1 -0
  165. package/dist/esm/utils/types.js.map +1 -0
  166. package/dist/esm/utils/unicode.js +11 -0
  167. package/dist/esm/utils/unicode.js.map +1 -0
  168. package/dist/esm/utils/urls.js +53 -0
  169. package/dist/esm/utils/urls.js.map +1 -0
  170. package/dist/esm/utils/uuids.js +16 -0
  171. package/dist/esm/utils/uuids.js.map +1 -0
  172. package/dist/global.d.d.cts +1 -0
  173. package/dist/global.d.d.ts +1 -0
  174. package/dist/global.d.js +2 -0
  175. package/dist/global.d.js.map +1 -0
  176. package/dist/helpers/password.d.cts +11 -0
  177. package/dist/helpers/password.d.ts +11 -2
  178. package/dist/helpers/password.js +41 -11
  179. package/dist/helpers/password.js.map +1 -0
  180. package/dist/helpers/production-mode.d.cts +12 -0
  181. package/dist/helpers/production-mode.d.ts +9 -3
  182. package/dist/helpers/production-mode.js +72 -45
  183. package/dist/helpers/production-mode.js.map +1 -0
  184. package/dist/hooks/use-async-callback.d.cts +6 -0
  185. package/dist/hooks/use-async-callback.d.ts +6 -3
  186. package/dist/hooks/use-async-callback.js +72 -30
  187. package/dist/hooks/use-async-callback.js.map +1 -0
  188. package/dist/hooks/use-async-external-store.d.cts +7 -0
  189. package/dist/hooks/use-async-external-store.d.ts +5 -2
  190. package/dist/hooks/use-async-external-store.js +47 -19
  191. package/dist/hooks/use-async-external-store.js.map +1 -0
  192. package/dist/hooks/use-hash.d.cts +3 -0
  193. package/dist/hooks/use-hash.d.ts +3 -1
  194. package/dist/hooks/use-hash.js +41 -8
  195. package/dist/hooks/use-hash.js.map +1 -0
  196. package/dist/hooks/use-strict-memo.d.cts +8 -0
  197. package/dist/hooks/use-strict-memo.d.ts +3 -1
  198. package/dist/hooks/use-strict-memo.js +78 -131
  199. package/dist/hooks/use-strict-memo.js.map +1 -0
  200. package/dist/index.d.cts +30 -0
  201. package/dist/index.d.ts +30 -4
  202. package/dist/index.js +42 -4
  203. package/dist/index.js.map +1 -0
  204. package/dist/interface/adminInterface.d.cts +94 -0
  205. package/dist/interface/adminInterface.d.ts +38 -15
  206. package/dist/interface/adminInterface.js +269 -174
  207. package/dist/interface/adminInterface.js.map +1 -0
  208. package/dist/interface/clientInterface.d.cts +260 -0
  209. package/dist/interface/clientInterface.d.ts +25 -18
  210. package/dist/interface/clientInterface.js +2054 -995
  211. package/dist/interface/clientInterface.js.map +1 -0
  212. package/dist/interface/crud/contact-channels.d.cts +180 -0
  213. package/dist/interface/crud/contact-channels.d.ts +30 -25
  214. package/dist/interface/crud/contact-channels.js +101 -59
  215. package/dist/interface/crud/contact-channels.js.map +1 -0
  216. package/dist/interface/crud/current-user.d.cts +205 -0
  217. package/dist/interface/crud/current-user.d.ts +17 -12
  218. package/dist/interface/crud/current-user.js +86 -56
  219. package/dist/interface/crud/current-user.js.map +1 -0
  220. package/dist/interface/crud/email-templates.d.cts +84 -0
  221. package/dist/interface/crud/email-templates.d.ts +24 -19
  222. package/dist/interface/crud/email-templates.js +77 -37
  223. package/dist/interface/crud/email-templates.js.map +1 -0
  224. package/dist/interface/crud/emails.d.cts +69 -0
  225. package/dist/interface/crud/emails.d.ts +12 -7
  226. package/dist/interface/crud/emails.js +54 -12
  227. package/dist/interface/crud/emails.js.map +1 -0
  228. package/dist/interface/crud/internal-api-keys.d.cts +139 -0
  229. package/dist/interface/crud/internal-api-keys.d.ts +22 -17
  230. package/dist/interface/crud/internal-api-keys.js +92 -54
  231. package/dist/interface/crud/internal-api-keys.js.map +1 -0
  232. package/dist/interface/crud/oauth.d.cts +34 -0
  233. package/dist/interface/crud/oauth.d.ts +16 -11
  234. package/dist/interface/crud/oauth.js +48 -14
  235. package/dist/interface/crud/oauth.js.map +1 -0
  236. package/dist/interface/crud/project-api-keys.d.cts +196 -0
  237. package/dist/interface/crud/project-api-keys.d.ts +20 -12
  238. package/dist/interface/crud/project-api-keys.js +121 -74
  239. package/dist/interface/crud/project-api-keys.js.map +1 -0
  240. package/dist/interface/crud/project-permissions.d.cts +160 -0
  241. package/dist/interface/crud/project-permissions.d.ts +38 -33
  242. package/dist/interface/crud/project-permissions.js +148 -90
  243. package/dist/interface/crud/project-permissions.js.map +1 -0
  244. package/dist/interface/crud/projects.d.cts +627 -0
  245. package/dist/interface/crud/projects.d.ts +43 -51
  246. package/dist/interface/crud/projects.js +210 -156
  247. package/dist/interface/crud/projects.js.map +1 -0
  248. package/dist/interface/crud/sessions.d.cts +149 -0
  249. package/dist/interface/crud/sessions.d.ts +21 -16
  250. package/dist/interface/crud/sessions.js +86 -50
  251. package/dist/interface/crud/sessions.js.map +1 -0
  252. package/dist/interface/crud/svix-token.d.cts +26 -0
  253. package/dist/interface/crud/svix-token.d.ts +14 -9
  254. package/dist/interface/crud/svix-token.js +46 -12
  255. package/dist/interface/crud/svix-token.js.map +1 -0
  256. package/dist/interface/crud/team-invitation-details.d.cts +30 -0
  257. package/dist/interface/crud/team-invitation-details.d.ts +12 -7
  258. package/dist/interface/crud/team-invitation-details.js +57 -15
  259. package/dist/interface/crud/team-invitation-details.js.map +1 -0
  260. package/dist/interface/crud/team-invitation.d.cts +49 -0
  261. package/dist/interface/crud/team-invitation.d.ts +13 -8
  262. package/dist/interface/crud/team-invitation.js +69 -27
  263. package/dist/interface/crud/team-invitation.js.map +1 -0
  264. package/dist/interface/crud/team-member-profiles.d.cts +229 -0
  265. package/dist/interface/crud/team-member-profiles.d.ts +20 -15
  266. package/dist/interface/crud/team-member-profiles.js +95 -49
  267. package/dist/interface/crud/team-member-profiles.js.map +1 -0
  268. package/dist/interface/crud/team-memberships.d.cts +74 -0
  269. package/dist/interface/crud/team-memberships.d.ts +22 -17
  270. package/dist/interface/crud/team-memberships.js +85 -45
  271. package/dist/interface/crud/team-memberships.js.map +1 -0
  272. package/dist/interface/crud/team-permissions.d.cts +168 -0
  273. package/dist/interface/crud/team-permissions.d.ts +38 -33
  274. package/dist/interface/crud/team-permissions.js +149 -91
  275. package/dist/interface/crud/team-permissions.js.map +1 -0
  276. package/dist/interface/crud/teams.d.cts +298 -0
  277. package/dist/interface/crud/teams.d.ts +45 -40
  278. package/dist/interface/crud/teams.js +177 -119
  279. package/dist/interface/crud/teams.js.map +1 -0
  280. package/dist/interface/crud/users.d.cts +469 -0
  281. package/dist/interface/crud/users.d.ts +31 -26
  282. package/dist/interface/crud/users.js +172 -118
  283. package/dist/interface/crud/users.js.map +1 -0
  284. package/dist/interface/serverInterface.d.cts +128 -0
  285. package/dist/interface/serverInterface.d.ts +29 -17
  286. package/dist/interface/serverInterface.js +506 -339
  287. package/dist/interface/serverInterface.js.map +1 -0
  288. package/dist/interface/webhooks.d.cts +292 -0
  289. package/dist/interface/webhooks.d.ts +6 -3
  290. package/dist/interface/webhooks.js +45 -15
  291. package/dist/interface/webhooks.js.map +1 -0
  292. package/dist/known-errors.d.cts +447 -0
  293. package/dist/known-errors.d.ts +15 -9
  294. package/dist/known-errors.js +1104 -562
  295. package/dist/known-errors.js.map +1 -0
  296. package/dist/schema-fields.d.cts +163 -0
  297. package/dist/schema-fields.d.ts +116 -114
  298. package/dist/schema-fields.js +593 -427
  299. package/dist/schema-fields.js.map +1 -0
  300. package/dist/sessions.d.cts +109 -0
  301. package/dist/sessions.d.ts +6 -3
  302. package/dist/sessions.js +201 -172
  303. package/dist/sessions.js.map +1 -0
  304. package/dist/utils/api-keys.d.cts +24 -0
  305. package/dist/utils/api-keys.d.ts +5 -4
  306. package/dist/utils/api-keys.js +106 -66
  307. package/dist/utils/api-keys.js.map +1 -0
  308. package/dist/utils/arrays.d.cts +18 -0
  309. package/dist/utils/arrays.d.ts +15 -13
  310. package/dist/utils/arrays.js +101 -168
  311. package/dist/utils/arrays.js.map +1 -0
  312. package/dist/utils/base64.d.cts +4 -0
  313. package/dist/utils/base64.d.ts +4 -2
  314. package/dist/utils/base64.js +41 -20
  315. package/dist/utils/base64.js.map +1 -0
  316. package/dist/utils/booleans.d.cts +6 -0
  317. package/dist/utils/booleans.d.ts +6 -4
  318. package/dist/utils/booleans.js +35 -27
  319. package/dist/utils/booleans.js.map +1 -0
  320. package/dist/utils/browser-compat.d.cts +8 -0
  321. package/dist/utils/browser-compat.d.ts +3 -1
  322. package/dist/utils/browser-compat.js +45 -16
  323. package/dist/utils/browser-compat.js.map +1 -0
  324. package/dist/utils/bytes.d.cts +15 -0
  325. package/dist/utils/bytes.d.ts +15 -13
  326. package/dist/utils/bytes.js +182 -270
  327. package/dist/utils/bytes.js.map +1 -0
  328. package/dist/utils/caches.d.cts +98 -0
  329. package/dist/utils/caches.d.ts +17 -14
  330. package/dist/utils/caches.js +188 -193
  331. package/dist/utils/caches.js.map +1 -0
  332. package/dist/utils/compile-time.d.cts +8 -0
  333. package/dist/utils/compile-time.d.ts +3 -1
  334. package/dist/utils/compile-time.js +35 -10
  335. package/dist/utils/compile-time.js.map +1 -0
  336. package/dist/utils/crypto.d.cts +8 -0
  337. package/dist/utils/crypto.d.ts +4 -2
  338. package/dist/utils/crypto.js +49 -21
  339. package/dist/utils/crypto.js.map +1 -0
  340. package/dist/utils/dates.d.cts +15 -0
  341. package/dist/utils/dates.d.ts +6 -4
  342. package/dist/utils/dates.js +83 -105
  343. package/dist/utils/dates.js.map +1 -0
  344. package/dist/utils/dom.d.cts +3 -0
  345. package/dist/utils/dom.d.ts +3 -1
  346. package/dist/utils/dom.js +35 -7
  347. package/dist/utils/dom.js.map +1 -0
  348. package/dist/utils/env.d.cts +9 -0
  349. package/dist/utils/env.d.ts +6 -4
  350. package/dist/utils/env.js +70 -43
  351. package/dist/utils/env.js.map +1 -0
  352. package/dist/utils/errors.d.cts +223 -0
  353. package/dist/utils/errors.d.ts +14 -11
  354. package/dist/utils/errors.js +148 -126
  355. package/dist/utils/errors.js.map +1 -0
  356. package/dist/utils/fs.d.cts +7 -0
  357. package/dist/utils/fs.d.ts +5 -3
  358. package/dist/utils/fs.js +70 -27
  359. package/dist/utils/fs.js.map +1 -0
  360. package/dist/utils/functions.d.cts +4 -0
  361. package/dist/utils/functions.d.ts +4 -2
  362. package/dist/utils/functions.js +35 -18
  363. package/dist/utils/functions.js.map +1 -0
  364. package/dist/utils/geo.d.cts +22 -0
  365. package/dist/utils/geo.d.ts +6 -3
  366. package/dist/utils/geo.js +39 -9
  367. package/dist/utils/geo.js.map +1 -0
  368. package/dist/utils/globals.d.cts +5 -0
  369. package/dist/utils/globals.d.ts +4 -2
  370. package/dist/utils/globals.js +41 -14
  371. package/dist/utils/globals.js.map +1 -0
  372. package/dist/utils/hashes.d.cts +7 -0
  373. package/dist/utils/hashes.d.ts +7 -5
  374. package/dist/utils/hashes.js +87 -41
  375. package/dist/utils/hashes.js.map +1 -0
  376. package/dist/utils/html.d.cts +4 -0
  377. package/dist/utils/html.d.ts +4 -2
  378. package/dist/utils/html.js +36 -37
  379. package/dist/utils/html.js.map +1 -0
  380. package/dist/utils/http.d.cts +43 -0
  381. package/dist/utils/http.d.ts +6 -4
  382. package/dist/utils/http.js +83 -83
  383. package/dist/utils/http.js.map +1 -0
  384. package/dist/utils/ips.d.cts +6 -0
  385. package/dist/utils/ips.d.ts +6 -4
  386. package/dist/utils/ips.js +48 -35
  387. package/dist/utils/ips.js.map +1 -0
  388. package/dist/utils/json.d.cts +13 -0
  389. package/dist/utils/json.d.ts +9 -6
  390. package/dist/utils/json.js +54 -157
  391. package/dist/utils/json.js.map +1 -0
  392. package/dist/utils/jwt.d.cts +44 -0
  393. package/dist/utils/jwt.d.ts +14 -11
  394. package/dist/utils/jwt.js +119 -84
  395. package/dist/utils/jwt.js.map +1 -0
  396. package/dist/utils/locks.d.cts +15 -0
  397. package/dist/utils/locks.d.ts +3 -2
  398. package/dist/utils/locks.js +76 -56
  399. package/dist/utils/locks.js.map +1 -0
  400. package/dist/utils/maps.d.cts +59 -0
  401. package/dist/utils/maps.d.ts +6 -4
  402. package/dist/utils/maps.js +207 -343
  403. package/dist/utils/maps.js.map +1 -0
  404. package/dist/utils/math.d.cts +6 -0
  405. package/dist/utils/math.d.ts +3 -1
  406. package/dist/utils/math.js +31 -16
  407. package/dist/utils/math.js.map +1 -0
  408. package/dist/utils/node-http.d.cts +15 -0
  409. package/dist/utils/node-http.d.ts +5 -5
  410. package/dist/utils/node-http.js +65 -36
  411. package/dist/utils/node-http.js.map +1 -0
  412. package/dist/utils/numbers.d.cts +5 -0
  413. package/dist/utils/numbers.d.ts +5 -3
  414. package/dist/utils/numbers.js +53 -66
  415. package/dist/utils/numbers.js.map +1 -0
  416. package/dist/utils/oauth.d.cts +8 -0
  417. package/dist/utils/oauth.d.ts +8 -6
  418. package/dist/utils/oauth.js +37 -4
  419. package/dist/utils/oauth.js.map +1 -0
  420. package/dist/utils/objects.d.cts +69 -0
  421. package/dist/utils/objects.d.ts +37 -32
  422. package/dist/utils/objects.js +224 -374
  423. package/dist/utils/objects.js.map +1 -0
  424. package/dist/utils/passkey.d.cts +1 -0
  425. package/dist/utils/passkey.d.ts +1 -1
  426. package/dist/utils/passkey.js +19 -1
  427. package/dist/utils/passkey.js.map +1 -0
  428. package/dist/utils/promises.d.cts +74 -0
  429. package/dist/utils/promises.d.ts +20 -18
  430. package/dist/utils/promises.js +252 -393
  431. package/dist/utils/promises.js.map +1 -0
  432. package/dist/utils/proxies.d.cts +4 -0
  433. package/dist/utils/proxies.d.ts +4 -2
  434. package/dist/utils/proxies.js +150 -161
  435. package/dist/utils/proxies.js.map +1 -0
  436. package/dist/utils/react.d.cts +25 -0
  437. package/dist/utils/react.d.ts +9 -6
  438. package/dist/utils/react.js +88 -134
  439. package/dist/utils/react.js.map +1 -0
  440. package/dist/utils/results.d.cts +78 -0
  441. package/dist/utils/results.d.ts +10 -9
  442. package/dist/utils/results.js +143 -324
  443. package/dist/utils/results.js.map +1 -0
  444. package/dist/utils/sentry.d.cts +5 -0
  445. package/dist/utils/sentry.d.ts +5 -2
  446. package/dist/utils/sentry.js +44 -14
  447. package/dist/utils/sentry.js.map +1 -0
  448. package/dist/utils/stores.d.cts +102 -0
  449. package/dist/utils/stores.d.ts +12 -9
  450. package/dist/utils/stores.js +219 -189
  451. package/dist/utils/stores.js.map +1 -0
  452. package/dist/utils/strings.d.cts +72 -0
  453. package/dist/utils/strings.d.ts +22 -20
  454. package/dist/utils/strings.js +300 -580
  455. package/dist/utils/strings.js.map +1 -0
  456. package/dist/utils/strings.nicify.test.d.cts +2 -0
  457. package/dist/utils/strings.nicify.test.d.ts +2 -1
  458. package/dist/utils/strings.nicify.test.js +168 -158
  459. package/dist/utils/strings.nicify.test.js.map +1 -0
  460. package/dist/utils/types.d.cts +23 -0
  461. package/dist/utils/types.d.ts +8 -6
  462. package/dist/utils/types.js +19 -1
  463. package/dist/utils/types.js.map +1 -0
  464. package/dist/utils/unicode.d.cts +3 -0
  465. package/dist/utils/unicode.d.ts +3 -1
  466. package/dist/utils/unicode.js +34 -21
  467. package/dist/utils/unicode.js.map +1 -0
  468. package/dist/utils/urls.d.cts +20 -0
  469. package/dist/utils/urls.d.ts +10 -8
  470. package/dist/utils/urls.js +76 -165
  471. package/dist/utils/urls.js.map +1 -0
  472. package/dist/utils/uuids.d.cts +4 -0
  473. package/dist/utils/uuids.d.ts +4 -2
  474. package/dist/utils/uuids.js +39 -35
  475. package/dist/utils/uuids.js.map +1 -0
  476. package/package.json +5 -5
@@ -1,127 +1,181 @@
1
- import { createCrud } from "../../crud";
2
- import * as fieldSchema from "../../schema-fields";
3
- import { teamsCrudServerReadSchema } from "./teams";
4
- export const usersCrudServerUpdateSchema = fieldSchema.yupObject({
5
- display_name: fieldSchema.userDisplayNameSchema.optional(),
6
- profile_image_url: fieldSchema.profileImageUrlSchema.nullable().optional(),
7
- client_metadata: fieldSchema.userClientMetadataSchema.optional(),
8
- client_read_only_metadata: fieldSchema.userClientReadOnlyMetadataSchema.optional(),
9
- server_metadata: fieldSchema.userServerMetadataSchema.optional(),
10
- primary_email: fieldSchema.primaryEmailSchema.nullable().optional().nonEmpty(),
11
- primary_email_verified: fieldSchema.primaryEmailVerifiedSchema.optional(),
12
- primary_email_auth_enabled: fieldSchema.primaryEmailAuthEnabledSchema.optional(),
13
- passkey_auth_enabled: fieldSchema.userOtpAuthEnabledSchema.optional(),
14
- password: fieldSchema.userPasswordMutationSchema.optional(),
15
- password_hash: fieldSchema.userPasswordHashMutationSchema.optional(),
16
- otp_auth_enabled: fieldSchema.userOtpAuthEnabledMutationSchema.optional(),
17
- totp_secret_base64: fieldSchema.userTotpSecretMutationSchema.optional(),
18
- selected_team_id: fieldSchema.selectedTeamIdSchema.nullable().optional(),
19
- is_anonymous: fieldSchema.yupBoolean().oneOf([false]).optional(),
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+
30
+ // src/interface/crud/users.ts
31
+ var users_exports = {};
32
+ __export(users_exports, {
33
+ userCreatedWebhookEvent: () => userCreatedWebhookEvent,
34
+ userDeletedWebhookEvent: () => userDeletedWebhookEvent,
35
+ userUpdatedWebhookEvent: () => userUpdatedWebhookEvent,
36
+ usersCrud: () => usersCrud,
37
+ usersCrudServerCreateSchema: () => usersCrudServerCreateSchema,
38
+ usersCrudServerDeleteSchema: () => usersCrudServerDeleteSchema,
39
+ usersCrudServerReadSchema: () => usersCrudServerReadSchema,
40
+ usersCrudServerUpdateSchema: () => usersCrudServerUpdateSchema
41
+ });
42
+ module.exports = __toCommonJS(users_exports);
43
+ var import_crud = require("../../crud");
44
+ var fieldSchema = __toESM(require("../../schema-fields"), 1);
45
+ var import_teams = require("./teams");
46
+ var usersCrudServerUpdateSchema = fieldSchema.yupObject({
47
+ display_name: fieldSchema.userDisplayNameSchema.optional(),
48
+ profile_image_url: fieldSchema.profileImageUrlSchema.nullable().optional(),
49
+ client_metadata: fieldSchema.userClientMetadataSchema.optional(),
50
+ client_read_only_metadata: fieldSchema.userClientReadOnlyMetadataSchema.optional(),
51
+ server_metadata: fieldSchema.userServerMetadataSchema.optional(),
52
+ primary_email: fieldSchema.primaryEmailSchema.nullable().optional().nonEmpty(),
53
+ primary_email_verified: fieldSchema.primaryEmailVerifiedSchema.optional(),
54
+ primary_email_auth_enabled: fieldSchema.primaryEmailAuthEnabledSchema.optional(),
55
+ passkey_auth_enabled: fieldSchema.userOtpAuthEnabledSchema.optional(),
56
+ password: fieldSchema.userPasswordMutationSchema.optional(),
57
+ password_hash: fieldSchema.userPasswordHashMutationSchema.optional(),
58
+ otp_auth_enabled: fieldSchema.userOtpAuthEnabledMutationSchema.optional(),
59
+ totp_secret_base64: fieldSchema.userTotpSecretMutationSchema.optional(),
60
+ selected_team_id: fieldSchema.selectedTeamIdSchema.nullable().optional(),
61
+ is_anonymous: fieldSchema.yupBoolean().oneOf([false]).optional()
20
62
  }).defined();
21
- export const usersCrudServerReadSchema = fieldSchema.yupObject({
22
- id: fieldSchema.userIdSchema.defined(),
23
- primary_email: fieldSchema.primaryEmailSchema.nullable().defined(),
24
- primary_email_verified: fieldSchema.primaryEmailVerifiedSchema.defined(),
25
- primary_email_auth_enabled: fieldSchema.primaryEmailAuthEnabledSchema.defined(),
26
- display_name: fieldSchema.userDisplayNameSchema.nullable().defined(),
27
- selected_team: teamsCrudServerReadSchema.nullable().defined(),
28
- selected_team_id: fieldSchema.selectedTeamIdSchema.nullable().defined(),
29
- profile_image_url: fieldSchema.profileImageUrlSchema.nullable().defined(),
30
- signed_up_at_millis: fieldSchema.signedUpAtMillisSchema.defined(),
31
- has_password: fieldSchema.userHasPasswordSchema.defined(),
32
- otp_auth_enabled: fieldSchema.userOtpAuthEnabledSchema.defined(),
33
- passkey_auth_enabled: fieldSchema.userOtpAuthEnabledSchema.defined(),
34
- client_metadata: fieldSchema.userClientMetadataSchema,
35
- client_read_only_metadata: fieldSchema.userClientReadOnlyMetadataSchema,
36
- server_metadata: fieldSchema.userServerMetadataSchema,
37
- last_active_at_millis: fieldSchema.userLastActiveAtMillisSchema.nonNullable().defined(),
38
- is_anonymous: fieldSchema.yupBoolean().defined(),
39
- oauth_providers: fieldSchema.yupArray(fieldSchema.yupObject({
40
- id: fieldSchema.yupString().defined(),
41
- account_id: fieldSchema.yupString().defined(),
42
- email: fieldSchema.yupString().nullable(),
43
- }).defined()).defined().meta({ openapiField: { hidden: true } }),
44
- /**
45
- * @deprecated
46
- */
47
- auth_with_email: fieldSchema.yupBoolean().defined().meta({ openapiField: { hidden: true, description: 'Whether the user can authenticate with their primary e-mail. If set to true, the user can log-in with credentials and/or magic link, if enabled in the project settings.', exampleValue: true } }),
48
- /**
49
- * @deprecated
50
- */
51
- requires_totp_mfa: fieldSchema.yupBoolean().defined().meta({ openapiField: { hidden: true, description: 'Whether the user is required to use TOTP MFA to sign in', exampleValue: false } }),
63
+ var usersCrudServerReadSchema = fieldSchema.yupObject({
64
+ id: fieldSchema.userIdSchema.defined(),
65
+ primary_email: fieldSchema.primaryEmailSchema.nullable().defined(),
66
+ primary_email_verified: fieldSchema.primaryEmailVerifiedSchema.defined(),
67
+ primary_email_auth_enabled: fieldSchema.primaryEmailAuthEnabledSchema.defined(),
68
+ display_name: fieldSchema.userDisplayNameSchema.nullable().defined(),
69
+ selected_team: import_teams.teamsCrudServerReadSchema.nullable().defined(),
70
+ selected_team_id: fieldSchema.selectedTeamIdSchema.nullable().defined(),
71
+ profile_image_url: fieldSchema.profileImageUrlSchema.nullable().defined(),
72
+ signed_up_at_millis: fieldSchema.signedUpAtMillisSchema.defined(),
73
+ has_password: fieldSchema.userHasPasswordSchema.defined(),
74
+ otp_auth_enabled: fieldSchema.userOtpAuthEnabledSchema.defined(),
75
+ passkey_auth_enabled: fieldSchema.userOtpAuthEnabledSchema.defined(),
76
+ client_metadata: fieldSchema.userClientMetadataSchema,
77
+ client_read_only_metadata: fieldSchema.userClientReadOnlyMetadataSchema,
78
+ server_metadata: fieldSchema.userServerMetadataSchema,
79
+ last_active_at_millis: fieldSchema.userLastActiveAtMillisSchema.nonNullable().defined(),
80
+ is_anonymous: fieldSchema.yupBoolean().defined(),
81
+ oauth_providers: fieldSchema.yupArray(fieldSchema.yupObject({
82
+ id: fieldSchema.yupString().defined(),
83
+ account_id: fieldSchema.yupString().defined(),
84
+ email: fieldSchema.yupString().nullable()
85
+ }).defined()).defined().meta({ openapiField: { hidden: true } }),
86
+ /**
87
+ * @deprecated
88
+ */
89
+ auth_with_email: fieldSchema.yupBoolean().defined().meta({ openapiField: { hidden: true, description: "Whether the user can authenticate with their primary e-mail. If set to true, the user can log-in with credentials and/or magic link, if enabled in the project settings.", exampleValue: true } }),
90
+ /**
91
+ * @deprecated
92
+ */
93
+ requires_totp_mfa: fieldSchema.yupBoolean().defined().meta({ openapiField: { hidden: true, description: "Whether the user is required to use TOTP MFA to sign in", exampleValue: false } })
52
94
  }).defined();
53
- export const usersCrudServerCreateSchema = usersCrudServerUpdateSchema.omit(['selected_team_id']).concat(fieldSchema.yupObject({
54
- oauth_providers: fieldSchema.yupArray(fieldSchema.yupObject({
55
- id: fieldSchema.yupString().defined(),
56
- account_id: fieldSchema.yupString().defined(),
57
- email: fieldSchema.yupString().nullable().defined().default(null),
58
- }).defined()).optional().meta({ openapiField: { hidden: true } }),
59
- is_anonymous: fieldSchema.yupBoolean().optional(),
95
+ var usersCrudServerCreateSchema = usersCrudServerUpdateSchema.omit(["selected_team_id"]).concat(fieldSchema.yupObject({
96
+ oauth_providers: fieldSchema.yupArray(fieldSchema.yupObject({
97
+ id: fieldSchema.yupString().defined(),
98
+ account_id: fieldSchema.yupString().defined(),
99
+ email: fieldSchema.yupString().nullable().defined().default(null)
100
+ }).defined()).optional().meta({ openapiField: { hidden: true } }),
101
+ is_anonymous: fieldSchema.yupBoolean().optional()
60
102
  }).defined());
61
- export const usersCrudServerDeleteSchema = fieldSchema.yupMixed();
62
- export const usersCrud = createCrud({
63
- serverReadSchema: usersCrudServerReadSchema,
64
- serverUpdateSchema: usersCrudServerUpdateSchema,
65
- serverCreateSchema: usersCrudServerCreateSchema,
66
- serverDeleteSchema: usersCrudServerDeleteSchema,
67
- docs: {
68
- serverCreate: {
69
- tags: ["Users"],
70
- summary: 'Create user',
71
- description: 'Creates a new user. E-mail authentication is always enabled, and no password is set, meaning the only way to authenticate the newly created user is through magic link.',
72
- },
73
- serverRead: {
74
- tags: ["Users"],
75
- summary: 'Get user',
76
- description: 'Gets a user by user ID.',
77
- },
78
- serverUpdate: {
79
- tags: ["Users"],
80
- summary: 'Update user',
81
- description: 'Updates a user. Only the values provided will be updated.',
82
- },
83
- serverDelete: {
84
- tags: ["Users"],
85
- summary: 'Delete user',
86
- description: 'Deletes a user. Use this with caution.',
87
- },
88
- serverList: {
89
- tags: ["Users"],
90
- summary: 'List users',
91
- description: 'Lists all the users in the project.',
92
- },
103
+ var usersCrudServerDeleteSchema = fieldSchema.yupMixed();
104
+ var usersCrud = (0, import_crud.createCrud)({
105
+ serverReadSchema: usersCrudServerReadSchema,
106
+ serverUpdateSchema: usersCrudServerUpdateSchema,
107
+ serverCreateSchema: usersCrudServerCreateSchema,
108
+ serverDeleteSchema: usersCrudServerDeleteSchema,
109
+ docs: {
110
+ serverCreate: {
111
+ tags: ["Users"],
112
+ summary: "Create user",
113
+ description: "Creates a new user. E-mail authentication is always enabled, and no password is set, meaning the only way to authenticate the newly created user is through magic link."
93
114
  },
94
- });
95
- export const userCreatedWebhookEvent = {
96
- type: "user.created",
97
- schema: usersCrud.server.readSchema,
98
- metadata: {
99
- summary: "User Created",
100
- description: "This event is triggered when a user is created.",
101
- tags: ["Users"],
115
+ serverRead: {
116
+ tags: ["Users"],
117
+ summary: "Get user",
118
+ description: "Gets a user by user ID."
102
119
  },
103
- };
104
- export const userUpdatedWebhookEvent = {
105
- type: "user.updated",
106
- schema: usersCrud.server.readSchema,
107
- metadata: {
108
- summary: "User Updated",
109
- description: "This event is triggered when a user is updated.",
110
- tags: ["Users"],
120
+ serverUpdate: {
121
+ tags: ["Users"],
122
+ summary: "Update user",
123
+ description: "Updates a user. Only the values provided will be updated."
111
124
  },
125
+ serverDelete: {
126
+ tags: ["Users"],
127
+ summary: "Delete user",
128
+ description: "Deletes a user. Use this with caution."
129
+ },
130
+ serverList: {
131
+ tags: ["Users"],
132
+ summary: "List users",
133
+ description: "Lists all the users in the project."
134
+ }
135
+ }
136
+ });
137
+ var userCreatedWebhookEvent = {
138
+ type: "user.created",
139
+ schema: usersCrud.server.readSchema,
140
+ metadata: {
141
+ summary: "User Created",
142
+ description: "This event is triggered when a user is created.",
143
+ tags: ["Users"]
144
+ }
145
+ };
146
+ var userUpdatedWebhookEvent = {
147
+ type: "user.updated",
148
+ schema: usersCrud.server.readSchema,
149
+ metadata: {
150
+ summary: "User Updated",
151
+ description: "This event is triggered when a user is updated.",
152
+ tags: ["Users"]
153
+ }
112
154
  };
113
- const webhookUserDeletedSchema = fieldSchema.yupObject({
114
- id: fieldSchema.userIdSchema.defined(),
115
- teams: fieldSchema.yupArray(fieldSchema.yupObject({
116
- id: fieldSchema.yupString().defined(),
117
- })).defined(),
155
+ var webhookUserDeletedSchema = fieldSchema.yupObject({
156
+ id: fieldSchema.userIdSchema.defined(),
157
+ teams: fieldSchema.yupArray(fieldSchema.yupObject({
158
+ id: fieldSchema.yupString().defined()
159
+ })).defined()
118
160
  }).defined();
119
- export const userDeletedWebhookEvent = {
120
- type: "user.deleted",
121
- schema: webhookUserDeletedSchema,
122
- metadata: {
123
- summary: "User Deleted",
124
- description: "This event is triggered when a user is deleted.",
125
- tags: ["Users"],
126
- },
161
+ var userDeletedWebhookEvent = {
162
+ type: "user.deleted",
163
+ schema: webhookUserDeletedSchema,
164
+ metadata: {
165
+ summary: "User Deleted",
166
+ description: "This event is triggered when a user is deleted.",
167
+ tags: ["Users"]
168
+ }
127
169
  };
170
+ // Annotate the CommonJS export names for ESM import in node:
171
+ 0 && (module.exports = {
172
+ userCreatedWebhookEvent,
173
+ userDeletedWebhookEvent,
174
+ userUpdatedWebhookEvent,
175
+ usersCrud,
176
+ usersCrudServerCreateSchema,
177
+ usersCrudServerDeleteSchema,
178
+ usersCrudServerReadSchema,
179
+ usersCrudServerUpdateSchema
180
+ });
181
+ //# sourceMappingURL=users.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/interface/crud/users.ts"],"sourcesContent":["import { CrudTypeOf, createCrud } from \"../../crud\";\nimport * as fieldSchema from \"../../schema-fields\";\nimport { WebhookEvent } from \"../webhooks\";\nimport { teamsCrudServerReadSchema } from \"./teams\";\n\nexport const usersCrudServerUpdateSchema = fieldSchema.yupObject({\n display_name: fieldSchema.userDisplayNameSchema.optional(),\n profile_image_url: fieldSchema.profileImageUrlSchema.nullable().optional(),\n client_metadata: fieldSchema.userClientMetadataSchema.optional(),\n client_read_only_metadata: fieldSchema.userClientReadOnlyMetadataSchema.optional(),\n server_metadata: fieldSchema.userServerMetadataSchema.optional(),\n primary_email: fieldSchema.primaryEmailSchema.nullable().optional().nonEmpty(),\n primary_email_verified: fieldSchema.primaryEmailVerifiedSchema.optional(),\n primary_email_auth_enabled: fieldSchema.primaryEmailAuthEnabledSchema.optional(),\n passkey_auth_enabled: fieldSchema.userOtpAuthEnabledSchema.optional(),\n password: fieldSchema.userPasswordMutationSchema.optional(),\n password_hash: fieldSchema.userPasswordHashMutationSchema.optional(),\n otp_auth_enabled: fieldSchema.userOtpAuthEnabledMutationSchema.optional(),\n totp_secret_base64: fieldSchema.userTotpSecretMutationSchema.optional(),\n selected_team_id: fieldSchema.selectedTeamIdSchema.nullable().optional(),\n is_anonymous: fieldSchema.yupBoolean().oneOf([false]).optional(),\n}).defined();\n\nexport const usersCrudServerReadSchema = fieldSchema.yupObject({\n id: fieldSchema.userIdSchema.defined(),\n primary_email: fieldSchema.primaryEmailSchema.nullable().defined(),\n primary_email_verified: fieldSchema.primaryEmailVerifiedSchema.defined(),\n primary_email_auth_enabled: fieldSchema.primaryEmailAuthEnabledSchema.defined(),\n display_name: fieldSchema.userDisplayNameSchema.nullable().defined(),\n selected_team: teamsCrudServerReadSchema.nullable().defined(),\n selected_team_id: fieldSchema.selectedTeamIdSchema.nullable().defined(),\n profile_image_url: fieldSchema.profileImageUrlSchema.nullable().defined(),\n signed_up_at_millis: fieldSchema.signedUpAtMillisSchema.defined(),\n has_password: fieldSchema.userHasPasswordSchema.defined(),\n otp_auth_enabled: fieldSchema.userOtpAuthEnabledSchema.defined(),\n passkey_auth_enabled: fieldSchema.userOtpAuthEnabledSchema.defined(),\n client_metadata: fieldSchema.userClientMetadataSchema,\n client_read_only_metadata: fieldSchema.userClientReadOnlyMetadataSchema,\n server_metadata: fieldSchema.userServerMetadataSchema,\n last_active_at_millis: fieldSchema.userLastActiveAtMillisSchema.nonNullable().defined(),\n is_anonymous: fieldSchema.yupBoolean().defined(),\n\n oauth_providers: fieldSchema.yupArray(fieldSchema.yupObject({\n id: fieldSchema.yupString().defined(),\n account_id: fieldSchema.yupString().defined(),\n email: fieldSchema.yupString().nullable(),\n }).defined()).defined().meta({ openapiField: { hidden: true } }),\n\n /**\n * @deprecated\n */\n auth_with_email: fieldSchema.yupBoolean().defined().meta({ openapiField: { hidden: true, description: 'Whether the user can authenticate with their primary e-mail. If set to true, the user can log-in with credentials and/or magic link, if enabled in the project settings.', exampleValue: true } }),\n /**\n * @deprecated\n */\n requires_totp_mfa: fieldSchema.yupBoolean().defined().meta({ openapiField: { hidden: true, description: 'Whether the user is required to use TOTP MFA to sign in', exampleValue: false } }),\n}).defined();\n\nexport const usersCrudServerCreateSchema = usersCrudServerUpdateSchema.omit(['selected_team_id']).concat(fieldSchema.yupObject({\n oauth_providers: fieldSchema.yupArray(fieldSchema.yupObject({\n id: fieldSchema.yupString().defined(),\n account_id: fieldSchema.yupString().defined(),\n email: fieldSchema.yupString().nullable().defined().default(null),\n }).defined()).optional().meta({ openapiField: { hidden: true } }),\n is_anonymous: fieldSchema.yupBoolean().optional(),\n}).defined());\n\nexport const usersCrudServerDeleteSchema = fieldSchema.yupMixed();\n\nexport const usersCrud = createCrud({\n serverReadSchema: usersCrudServerReadSchema,\n serverUpdateSchema: usersCrudServerUpdateSchema,\n serverCreateSchema: usersCrudServerCreateSchema,\n serverDeleteSchema: usersCrudServerDeleteSchema,\n docs: {\n serverCreate: {\n tags: [\"Users\"],\n summary: 'Create user',\n description: 'Creates a new user. E-mail authentication is always enabled, and no password is set, meaning the only way to authenticate the newly created user is through magic link.',\n },\n serverRead: {\n tags: [\"Users\"],\n summary: 'Get user',\n description: 'Gets a user by user ID.',\n },\n serverUpdate: {\n tags: [\"Users\"],\n summary: 'Update user',\n description: 'Updates a user. Only the values provided will be updated.',\n },\n serverDelete: {\n tags: [\"Users\"],\n summary: 'Delete user',\n description: 'Deletes a user. Use this with caution.',\n },\n serverList: {\n tags: [\"Users\"],\n summary: 'List users',\n description: 'Lists all the users in the project.',\n },\n },\n});\nexport type UsersCrud = CrudTypeOf<typeof usersCrud>;\n\nexport const userCreatedWebhookEvent = {\n type: \"user.created\",\n schema: usersCrud.server.readSchema,\n metadata: {\n summary: \"User Created\",\n description: \"This event is triggered when a user is created.\",\n tags: [\"Users\"],\n },\n} satisfies WebhookEvent<typeof usersCrud.server.readSchema>;\n\nexport const userUpdatedWebhookEvent = {\n type: \"user.updated\",\n schema: usersCrud.server.readSchema,\n metadata: {\n summary: \"User Updated\",\n description: \"This event is triggered when a user is updated.\",\n tags: [\"Users\"],\n },\n} satisfies WebhookEvent<typeof usersCrud.server.readSchema>;\n\nconst webhookUserDeletedSchema = fieldSchema.yupObject({\n id: fieldSchema.userIdSchema.defined(),\n teams: fieldSchema.yupArray(fieldSchema.yupObject({\n id: fieldSchema.yupString().defined(),\n })).defined(),\n}).defined();\n\nexport const userDeletedWebhookEvent = {\n type: \"user.deleted\",\n schema: webhookUserDeletedSchema,\n metadata: {\n summary: \"User Deleted\",\n description: \"This event is triggered when a user is deleted.\",\n tags: [\"Users\"],\n },\n} satisfies WebhookEvent<typeof webhookUserDeletedSchema>;\n"],"mappings":"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","names":[]}
@@ -0,0 +1,128 @@
1
+ import { KnownErrors } from '../known-errors.cjs';
2
+ import { InternalSession, AccessToken, RefreshToken } from '../sessions.cjs';
3
+ import { Result } from '../utils/results.cjs';
4
+ import { ClientInterfaceOptions, StackClientInterface } from './clientInterface.cjs';
5
+ import { ContactChannelsCrud } from './crud/contact-channels.cjs';
6
+ import { CurrentUserCrud } from './crud/current-user.cjs';
7
+ import { ConnectedAccountAccessTokenCrud } from './crud/oauth.cjs';
8
+ import { ProjectPermissionsCrud } from './crud/project-permissions.cjs';
9
+ import { SessionsCrud } from './crud/sessions.cjs';
10
+ import { TeamInvitationCrud } from './crud/team-invitation.cjs';
11
+ import { TeamMemberProfilesCrud } from './crud/team-member-profiles.cjs';
12
+ import { TeamMembershipsCrud } from './crud/team-memberships.cjs';
13
+ import { TeamPermissionsCrud } from './crud/team-permissions.cjs';
14
+ import { TeamsCrud } from './crud/teams.cjs';
15
+ import { UsersCrud } from './crud/users.cjs';
16
+ import '../utils/errors.cjs';
17
+ import '../utils/json.cjs';
18
+ import 'jose';
19
+ import 'yup';
20
+ import '@simplewebauthn/types';
21
+ import './crud/project-api-keys.cjs';
22
+ import '../crud.cjs';
23
+ import '../utils/types.cjs';
24
+ import './crud/projects.cjs';
25
+
26
+ type ServerAuthApplicationOptions = (ClientInterfaceOptions & ({
27
+ readonly secretServerKey: string;
28
+ } | {
29
+ readonly projectOwnerSession: InternalSession;
30
+ }));
31
+ declare class StackServerInterface extends StackClientInterface {
32
+ options: ServerAuthApplicationOptions;
33
+ constructor(options: ServerAuthApplicationOptions);
34
+ protected sendServerRequest(path: string, options: RequestInit, session: InternalSession | null, requestType?: "server" | "admin"): Promise<Response & {
35
+ usedTokens: {
36
+ accessToken: AccessToken;
37
+ refreshToken: RefreshToken | null;
38
+ } | null;
39
+ }>;
40
+ protected sendServerRequestAndCatchKnownError<E extends typeof KnownErrors[keyof KnownErrors]>(path: string, requestOptions: RequestInit, tokenStoreOrNull: InternalSession | null, errorsToCatch: readonly E[]): Promise<Result<Response & {
41
+ usedTokens: {
42
+ accessToken: AccessToken;
43
+ refreshToken: RefreshToken | null;
44
+ } | null;
45
+ }, InstanceType<E>>>;
46
+ createServerUser(data: UsersCrud['Server']['Create']): Promise<UsersCrud['Server']['Read']>;
47
+ getServerUserByToken(session: InternalSession): Promise<CurrentUserCrud['Server']['Read'] | null>;
48
+ getServerUserById(userId: string): Promise<Result<UsersCrud['Server']['Read']>>;
49
+ listServerTeamInvitations(options: {
50
+ teamId: string;
51
+ }): Promise<TeamInvitationCrud['Server']['Read'][]>;
52
+ revokeServerTeamInvitation(invitationId: string, teamId: string): Promise<void>;
53
+ listServerTeamMemberProfiles(options: {
54
+ teamId: string;
55
+ }): Promise<TeamMemberProfilesCrud['Server']['Read'][]>;
56
+ getServerTeamMemberProfile(options: {
57
+ teamId: string;
58
+ userId: string;
59
+ }): Promise<TeamMemberProfilesCrud['Client']['Read']>;
60
+ listServerTeamPermissions(options: {
61
+ userId?: string;
62
+ teamId?: string;
63
+ recursive: boolean;
64
+ }, session: InternalSession | null): Promise<TeamPermissionsCrud['Server']['Read'][]>;
65
+ listServerProjectPermissions(options: {
66
+ userId?: string;
67
+ recursive: boolean;
68
+ }, session: InternalSession | null): Promise<ProjectPermissionsCrud['Server']['Read'][]>;
69
+ listServerUsers(options: {
70
+ cursor?: string;
71
+ limit?: number;
72
+ orderBy?: 'signedUpAt';
73
+ desc?: boolean;
74
+ query?: string;
75
+ }): Promise<UsersCrud['Server']['List']>;
76
+ listServerTeams(options?: {
77
+ userId?: string;
78
+ }): Promise<TeamsCrud['Server']['Read'][]>;
79
+ getServerTeam(teamId: string): Promise<TeamsCrud['Server']['Read']>;
80
+ listServerTeamUsers(teamId: string): Promise<UsersCrud['Server']['Read'][]>;
81
+ createServerTeam(data: TeamsCrud['Server']['Create']): Promise<TeamsCrud['Server']['Read']>;
82
+ updateServerTeam(teamId: string, data: TeamsCrud['Server']['Update']): Promise<TeamsCrud['Server']['Read']>;
83
+ deleteServerTeam(teamId: string): Promise<void>;
84
+ addServerUserToTeam(options: {
85
+ userId: string;
86
+ teamId: string;
87
+ }): Promise<TeamMembershipsCrud['Server']['Read']>;
88
+ removeServerUserFromTeam(options: {
89
+ userId: string;
90
+ teamId: string;
91
+ }): Promise<void>;
92
+ updateServerUser(userId: string, update: UsersCrud['Server']['Update']): Promise<UsersCrud['Server']['Read']>;
93
+ createServerProviderAccessToken(userId: string, provider: string, scope: string): Promise<ConnectedAccountAccessTokenCrud['Server']['Read']>;
94
+ createServerUserSession(userId: string, expiresInMillis: number, isImpersonation: boolean): Promise<{
95
+ accessToken: string;
96
+ refreshToken: string;
97
+ }>;
98
+ leaveServerTeam(options: {
99
+ teamId: string;
100
+ userId: string;
101
+ }): Promise<void>;
102
+ updateServerTeamMemberProfile(options: {
103
+ teamId: string;
104
+ userId: string;
105
+ profile: TeamMemberProfilesCrud['Server']['Update'];
106
+ }): Promise<void>;
107
+ grantServerTeamUserPermission(teamId: string, userId: string, permissionId: string): Promise<void>;
108
+ revokeServerTeamUserPermission(teamId: string, userId: string, permissionId: string): Promise<void>;
109
+ deleteServerUser(userId: string): Promise<void>;
110
+ createServerContactChannel(data: ContactChannelsCrud['Server']['Create']): Promise<ContactChannelsCrud['Server']['Read']>;
111
+ updateServerContactChannel(userId: string, contactChannelId: string, data: ContactChannelsCrud['Server']['Update']): Promise<ContactChannelsCrud['Server']['Read']>;
112
+ deleteServerContactChannel(userId: string, contactChannelId: string): Promise<void>;
113
+ listServerContactChannels(userId: string): Promise<ContactChannelsCrud['Server']['Read'][]>;
114
+ sendServerContactChannelVerificationEmail(userId: string, contactChannelId: string, callbackUrl: string): Promise<void>;
115
+ listServerSessions(userId: string): Promise<SessionsCrud['Server']['Read'][]>;
116
+ deleteServerSession(sessionId: string): Promise<void>;
117
+ sendServerTeamInvitation(options: {
118
+ email: string;
119
+ teamId: string;
120
+ callbackUrl: string;
121
+ }): Promise<void>;
122
+ updatePassword(options: {
123
+ oldPassword: string;
124
+ newPassword: string;
125
+ }): Promise<KnownErrors["PasswordConfirmationMismatch"] | KnownErrors["PasswordRequirementsNotMet"] | undefined>;
126
+ }
127
+
128
+ export { type ServerAuthApplicationOptions, StackServerInterface };
@@ -1,24 +1,34 @@
1
- import { KnownErrors } from "../known-errors";
2
- import { AccessToken, InternalSession, RefreshToken } from "../sessions";
3
- import { Result } from "../utils/results";
4
- import { ClientInterfaceOptions, StackClientInterface } from "./clientInterface";
5
- import { ContactChannelsCrud } from "./crud/contact-channels";
6
- import { CurrentUserCrud } from "./crud/current-user";
7
- import { ConnectedAccountAccessTokenCrud } from "./crud/oauth";
8
- import { ProjectPermissionsCrud } from "./crud/project-permissions";
9
- import { SessionsCrud } from "./crud/sessions";
10
- import { TeamInvitationCrud } from "./crud/team-invitation";
11
- import { TeamMemberProfilesCrud } from "./crud/team-member-profiles";
12
- import { TeamMembershipsCrud } from "./crud/team-memberships";
13
- import { TeamPermissionsCrud } from "./crud/team-permissions";
14
- import { TeamsCrud } from "./crud/teams";
15
- import { UsersCrud } from "./crud/users";
16
- export type ServerAuthApplicationOptions = (ClientInterfaceOptions & ({
1
+ import { KnownErrors } from '../known-errors.js';
2
+ import { InternalSession, AccessToken, RefreshToken } from '../sessions.js';
3
+ import { Result } from '../utils/results.js';
4
+ import { ClientInterfaceOptions, StackClientInterface } from './clientInterface.js';
5
+ import { ContactChannelsCrud } from './crud/contact-channels.js';
6
+ import { CurrentUserCrud } from './crud/current-user.js';
7
+ import { ConnectedAccountAccessTokenCrud } from './crud/oauth.js';
8
+ import { ProjectPermissionsCrud } from './crud/project-permissions.js';
9
+ import { SessionsCrud } from './crud/sessions.js';
10
+ import { TeamInvitationCrud } from './crud/team-invitation.js';
11
+ import { TeamMemberProfilesCrud } from './crud/team-member-profiles.js';
12
+ import { TeamMembershipsCrud } from './crud/team-memberships.js';
13
+ import { TeamPermissionsCrud } from './crud/team-permissions.js';
14
+ import { TeamsCrud } from './crud/teams.js';
15
+ import { UsersCrud } from './crud/users.js';
16
+ import '../utils/errors.js';
17
+ import '../utils/json.js';
18
+ import 'jose';
19
+ import 'yup';
20
+ import '@simplewebauthn/types';
21
+ import './crud/project-api-keys.js';
22
+ import '../crud.js';
23
+ import '../utils/types.js';
24
+ import './crud/projects.js';
25
+
26
+ type ServerAuthApplicationOptions = (ClientInterfaceOptions & ({
17
27
  readonly secretServerKey: string;
18
28
  } | {
19
29
  readonly projectOwnerSession: InternalSession;
20
30
  }));
21
- export declare class StackServerInterface extends StackClientInterface {
31
+ declare class StackServerInterface extends StackClientInterface {
22
32
  options: ServerAuthApplicationOptions;
23
33
  constructor(options: ServerAuthApplicationOptions);
24
34
  protected sendServerRequest(path: string, options: RequestInit, session: InternalSession | null, requestType?: "server" | "admin"): Promise<Response & {
@@ -114,3 +124,5 @@ export declare class StackServerInterface extends StackClientInterface {
114
124
  newPassword: string;
115
125
  }): Promise<KnownErrors["PasswordConfirmationMismatch"] | KnownErrors["PasswordRequirementsNotMet"] | undefined>;
116
126
  }
127
+
128
+ export { type ServerAuthApplicationOptions, StackServerInterface };