@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
@@ -0,0 +1,62 @@
1
+ // src/interface/crud/sessions.ts
2
+ import { createCrud } from "../../crud";
3
+ import { yupBoolean, yupMixed, yupNumber, yupObject, yupString } from "../../schema-fields";
4
+ import { geoInfoSchema } from "../../utils/geo";
5
+ var sessionsCrudServerCreateSchema = yupObject({
6
+ user_id: yupString().uuid().defined(),
7
+ expires_in_millis: yupNumber().max(1e3 * 60 * 60 * 24 * 367).default(1e3 * 60 * 60 * 24 * 365),
8
+ is_impersonation: yupBoolean().default(false)
9
+ }).defined();
10
+ var sessionsCreateOutputSchema = yupObject({
11
+ refresh_token: yupString().defined(),
12
+ access_token: yupString().defined()
13
+ }).defined();
14
+ var sessionsCrudReadSchema = yupObject({
15
+ id: yupString().defined(),
16
+ user_id: yupString().uuid().defined(),
17
+ created_at: yupNumber().defined(),
18
+ is_impersonation: yupBoolean().defined(),
19
+ last_used_at: yupNumber().optional(),
20
+ is_current_session: yupBoolean(),
21
+ // TODO move this to a shared type
22
+ // TODO: what about if not trusted?
23
+ last_used_at_end_user_ip_info: geoInfoSchema.optional()
24
+ }).defined();
25
+ var sessionsCrudDeleteSchema = yupMixed();
26
+ var sessionsCrud = createCrud({
27
+ // serverCreateSchema: sessionsCrudServerCreateSchema,
28
+ serverReadSchema: sessionsCrudReadSchema,
29
+ serverDeleteSchema: sessionsCrudDeleteSchema,
30
+ clientReadSchema: sessionsCrudReadSchema,
31
+ clientDeleteSchema: sessionsCrudDeleteSchema,
32
+ docs: {
33
+ serverList: {
34
+ summary: "List sessions",
35
+ description: "List all sessions for the current user.",
36
+ tags: ["Sessions"]
37
+ },
38
+ serverDelete: {
39
+ summary: "Delete session",
40
+ description: "Delete a session by ID.",
41
+ tags: ["Sessions"]
42
+ },
43
+ clientList: {
44
+ summary: "List sessions",
45
+ description: "List all sessions for the current user.",
46
+ tags: ["Sessions"]
47
+ },
48
+ clientDelete: {
49
+ summary: "Delete session",
50
+ description: "Delete a session by ID.",
51
+ tags: ["Sessions"]
52
+ }
53
+ }
54
+ });
55
+ export {
56
+ sessionsCreateOutputSchema,
57
+ sessionsCrud,
58
+ sessionsCrudDeleteSchema,
59
+ sessionsCrudReadSchema,
60
+ sessionsCrudServerCreateSchema
61
+ };
62
+ //# sourceMappingURL=sessions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/interface/crud/sessions.ts"],"sourcesContent":["import { CrudTypeOf, createCrud } from \"../../crud\";\nimport { yupBoolean, yupMixed, yupNumber, yupObject, yupString } from \"../../schema-fields\";\nimport { geoInfoSchema } from \"../../utils/geo\";\n\n\n// Create\nexport const sessionsCrudServerCreateSchema = yupObject({\n user_id: yupString().uuid().defined(),\n expires_in_millis: yupNumber().max(1000 * 60 * 60 * 24 * 367).default(1000 * 60 * 60 * 24 * 365),\n is_impersonation: yupBoolean().default(false),\n}).defined();\n\n\nexport const sessionsCreateOutputSchema = yupObject({\n refresh_token: yupString().defined(),\n access_token: yupString().defined(),\n}).defined();\n\n\nexport const sessionsCrudReadSchema = yupObject({\n id: yupString().defined(),\n user_id: yupString().uuid().defined(),\n created_at: yupNumber().defined(),\n is_impersonation: yupBoolean().defined(),\n last_used_at: yupNumber().optional(),\n is_current_session: yupBoolean(),\n // TODO move this to a shared type\n // TODO: what about if not trusted?\n last_used_at_end_user_ip_info: geoInfoSchema.optional(),\n}).defined();\n\n\n// Delete\nexport const sessionsCrudDeleteSchema = yupMixed();\n\n\nexport const sessionsCrud = createCrud({\n // serverCreateSchema: sessionsCrudServerCreateSchema,\n serverReadSchema: sessionsCrudReadSchema,\n serverDeleteSchema: sessionsCrudDeleteSchema,\n clientReadSchema: sessionsCrudReadSchema,\n clientDeleteSchema: sessionsCrudDeleteSchema,\n docs: {\n serverList: {\n summary: \"List sessions\",\n description: \"List all sessions for the current user.\",\n tags: [\"Sessions\"],\n },\n serverDelete: {\n summary: \"Delete session\",\n description: \"Delete a session by ID.\",\n tags: [\"Sessions\"],\n },\n clientList: {\n summary: \"List sessions\",\n description: \"List all sessions for the current user.\",\n tags: [\"Sessions\"],\n },\n clientDelete: {\n summary: \"Delete session\",\n description: \"Delete a session by ID.\",\n tags: [\"Sessions\"],\n },\n },\n});\nexport type SessionsCrud = CrudTypeOf<typeof sessionsCrud>;\n"],"mappings":";AAAA,SAAqB,kBAAkB;AACvC,SAAS,YAAY,UAAU,WAAW,WAAW,iBAAiB;AACtE,SAAS,qBAAqB;AAIvB,IAAM,iCAAiC,UAAU;AAAA,EACtD,SAAS,UAAU,EAAE,KAAK,EAAE,QAAQ;AAAA,EACpC,mBAAmB,UAAU,EAAE,IAAI,MAAO,KAAK,KAAK,KAAK,GAAG,EAAE,QAAQ,MAAO,KAAK,KAAK,KAAK,GAAG;AAAA,EAC/F,kBAAkB,WAAW,EAAE,QAAQ,KAAK;AAC9C,CAAC,EAAE,QAAQ;AAGJ,IAAM,6BAA6B,UAAU;AAAA,EAClD,eAAe,UAAU,EAAE,QAAQ;AAAA,EACnC,cAAc,UAAU,EAAE,QAAQ;AACpC,CAAC,EAAE,QAAQ;AAGJ,IAAM,yBAAyB,UAAU;AAAA,EAC9C,IAAI,UAAU,EAAE,QAAQ;AAAA,EACxB,SAAS,UAAU,EAAE,KAAK,EAAE,QAAQ;AAAA,EACpC,YAAY,UAAU,EAAE,QAAQ;AAAA,EAChC,kBAAkB,WAAW,EAAE,QAAQ;AAAA,EACvC,cAAc,UAAU,EAAE,SAAS;AAAA,EACnC,oBAAoB,WAAW;AAAA;AAAA;AAAA,EAG/B,+BAA+B,cAAc,SAAS;AACxD,CAAC,EAAE,QAAQ;AAIJ,IAAM,2BAA2B,SAAS;AAG1C,IAAM,eAAe,WAAW;AAAA;AAAA,EAErC,kBAAkB;AAAA,EAClB,oBAAoB;AAAA,EACpB,kBAAkB;AAAA,EAClB,oBAAoB;AAAA,EACpB,MAAM;AAAA,IACJ,YAAY;AAAA,MACV,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,UAAU;AAAA,IACnB;AAAA,IACA,cAAc;AAAA,MACZ,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,UAAU;AAAA,IACnB;AAAA,IACA,YAAY;AAAA,MACV,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,UAAU;AAAA,IACnB;AAAA,IACA,cAAc;AAAA,MACZ,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,UAAU;AAAA,IACnB;AAAA,EACF;AACF,CAAC;","names":[]}
@@ -0,0 +1,22 @@
1
+ // src/interface/crud/svix-token.ts
2
+ import { createCrud } from "../../crud";
3
+ import { yupObject, yupString } from "../../schema-fields";
4
+ var svixTokenAdminReadSchema = yupObject({
5
+ token: yupString().defined()
6
+ }).defined();
7
+ var svixTokenAdminCreateSchema = yupObject({}).defined();
8
+ var svixTokenCrud = createCrud({
9
+ adminReadSchema: svixTokenAdminReadSchema,
10
+ adminCreateSchema: svixTokenAdminCreateSchema,
11
+ docs: {
12
+ adminCreate: {
13
+ hidden: true
14
+ }
15
+ }
16
+ });
17
+ export {
18
+ svixTokenAdminCreateSchema,
19
+ svixTokenAdminReadSchema,
20
+ svixTokenCrud
21
+ };
22
+ //# sourceMappingURL=svix-token.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/interface/crud/svix-token.ts"],"sourcesContent":["import { CrudTypeOf, createCrud } from \"../../crud\";\nimport { yupObject, yupString } from \"../../schema-fields\";\n\nexport const svixTokenAdminReadSchema = yupObject({\n token: yupString().defined(),\n}).defined();\n\nexport const svixTokenAdminCreateSchema = yupObject({}).defined();\n\nexport const svixTokenCrud = createCrud({\n adminReadSchema: svixTokenAdminReadSchema,\n adminCreateSchema: svixTokenAdminCreateSchema,\n docs: {\n adminCreate: {\n hidden: true,\n },\n }\n});\nexport type SvixTokenCrud = CrudTypeOf<typeof svixTokenCrud>;\n"],"mappings":";AAAA,SAAqB,kBAAkB;AACvC,SAAS,WAAW,iBAAiB;AAE9B,IAAM,2BAA2B,UAAU;AAAA,EAChD,OAAO,UAAU,EAAE,QAAQ;AAC7B,CAAC,EAAE,QAAQ;AAEJ,IAAM,6BAA6B,UAAU,CAAC,CAAC,EAAE,QAAQ;AAEzD,IAAM,gBAAgB,WAAW;AAAA,EACtC,iBAAiB;AAAA,EACjB,mBAAmB;AAAA,EACnB,MAAM;AAAA,IACJ,aAAa;AAAA,MACX,QAAQ;AAAA,IACV;AAAA,EACF;AACF,CAAC;","names":[]}
@@ -0,0 +1,23 @@
1
+ // src/interface/crud/team-invitation-details.ts
2
+ import { createCrud } from "../../crud";
3
+ import * as schemaFields from "../../schema-fields";
4
+ import { yupObject } from "../../schema-fields";
5
+ var teamInvitationDetailsClientReadSchema = yupObject({
6
+ team_id: schemaFields.teamIdSchema.defined(),
7
+ team_display_name: schemaFields.teamDisplayNameSchema.defined()
8
+ }).defined();
9
+ var teamInvitationDetailsCrud = createCrud({
10
+ clientReadSchema: teamInvitationDetailsClientReadSchema,
11
+ docs: {
12
+ clientRead: {
13
+ summary: "Get the team details with invitation code",
14
+ description: "",
15
+ tags: ["Teams"]
16
+ }
17
+ }
18
+ });
19
+ export {
20
+ teamInvitationDetailsClientReadSchema,
21
+ teamInvitationDetailsCrud
22
+ };
23
+ //# sourceMappingURL=team-invitation-details.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/interface/crud/team-invitation-details.ts"],"sourcesContent":["import { CrudTypeOf, createCrud } from \"../../crud\";\nimport * as schemaFields from \"../../schema-fields\";\nimport { yupObject } from \"../../schema-fields\";\n\n\nexport const teamInvitationDetailsClientReadSchema = yupObject({\n team_id: schemaFields.teamIdSchema.defined(),\n team_display_name: schemaFields.teamDisplayNameSchema.defined(),\n}).defined();\n\nexport const teamInvitationDetailsCrud = createCrud({\n clientReadSchema: teamInvitationDetailsClientReadSchema,\n docs: {\n clientRead: {\n summary: \"Get the team details with invitation code\",\n description: \"\",\n tags: [\"Teams\"],\n },\n },\n});\n\nexport type TeamInvitationDetailsCrud = CrudTypeOf<typeof teamInvitationDetailsCrud>;\n"],"mappings":";AAAA,SAAqB,kBAAkB;AACvC,YAAY,kBAAkB;AAC9B,SAAS,iBAAiB;AAGnB,IAAM,wCAAwC,UAAU;AAAA,EAC7D,SAAsB,0BAAa,QAAQ;AAAA,EAC3C,mBAAgC,mCAAsB,QAAQ;AAChE,CAAC,EAAE,QAAQ;AAEJ,IAAM,4BAA4B,WAAW;AAAA,EAClD,kBAAkB;AAAA,EAClB,MAAM;AAAA,IACJ,YAAY;AAAA,MACV,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,OAAO;AAAA,IAChB;AAAA,EACF;AACF,CAAC;","names":[]}
@@ -0,0 +1,36 @@
1
+ // src/interface/crud/team-invitation.ts
2
+ import { createCrud } from "../../crud";
3
+ import * as schemaFields from "../../schema-fields";
4
+ import { yupObject } from "../../schema-fields";
5
+ var teamInvitationDetailsClientReadSchema = yupObject({
6
+ id: schemaFields.yupString().uuid().defined(),
7
+ team_id: schemaFields.teamIdSchema.defined(),
8
+ expires_at_millis: schemaFields.yupNumber().defined(),
9
+ recipient_email: schemaFields.emailSchema.defined()
10
+ }).defined();
11
+ var teamInvitationCrud = createCrud({
12
+ clientReadSchema: teamInvitationDetailsClientReadSchema,
13
+ clientDeleteSchema: schemaFields.yupMixed(),
14
+ docs: {
15
+ clientRead: {
16
+ summary: "Get the team details with invitation code",
17
+ description: "",
18
+ tags: ["Teams"]
19
+ },
20
+ clientList: {
21
+ summary: "List team invitations",
22
+ description: "",
23
+ tags: ["Teams"]
24
+ },
25
+ clientDelete: {
26
+ summary: "Delete a team invitation",
27
+ description: "",
28
+ tags: ["Teams"]
29
+ }
30
+ }
31
+ });
32
+ export {
33
+ teamInvitationCrud,
34
+ teamInvitationDetailsClientReadSchema
35
+ };
36
+ //# sourceMappingURL=team-invitation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/interface/crud/team-invitation.ts"],"sourcesContent":["import { CrudTypeOf, createCrud } from \"../../crud\";\nimport * as schemaFields from \"../../schema-fields\";\nimport { yupObject } from \"../../schema-fields\";\n\nexport const teamInvitationDetailsClientReadSchema = yupObject({\n id: schemaFields.yupString().uuid().defined(),\n team_id: schemaFields.teamIdSchema.defined(),\n expires_at_millis: schemaFields.yupNumber().defined(),\n recipient_email: schemaFields.emailSchema.defined(),\n}).defined();\n\nexport const teamInvitationCrud = createCrud({\n clientReadSchema: teamInvitationDetailsClientReadSchema,\n clientDeleteSchema: schemaFields.yupMixed(),\n docs: {\n clientRead: {\n summary: \"Get the team details with invitation code\",\n description: \"\",\n tags: [\"Teams\"],\n },\n clientList: {\n summary: \"List team invitations\",\n description: \"\",\n tags: [\"Teams\"],\n },\n clientDelete: {\n summary: \"Delete a team invitation\",\n description: \"\",\n tags: [\"Teams\"],\n },\n },\n});\n\nexport type TeamInvitationCrud = CrudTypeOf<typeof teamInvitationCrud>;\n"],"mappings":";AAAA,SAAqB,kBAAkB;AACvC,YAAY,kBAAkB;AAC9B,SAAS,iBAAiB;AAEnB,IAAM,wCAAwC,UAAU;AAAA,EAC7D,IAAiB,uBAAU,EAAE,KAAK,EAAE,QAAQ;AAAA,EAC5C,SAAsB,0BAAa,QAAQ;AAAA,EAC3C,mBAAgC,uBAAU,EAAE,QAAQ;AAAA,EACpD,iBAA8B,yBAAY,QAAQ;AACpD,CAAC,EAAE,QAAQ;AAEJ,IAAM,qBAAqB,WAAW;AAAA,EAC3C,kBAAkB;AAAA,EAClB,oBAAiC,sBAAS;AAAA,EAC1C,MAAM;AAAA,IACJ,YAAY;AAAA,MACV,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,OAAO;AAAA,IAChB;AAAA,IACA,YAAY;AAAA,MACV,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,OAAO;AAAA,IAChB;AAAA,IACA,cAAc;AAAA,MACZ,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,OAAO;AAAA,IAChB;AAAA,EACF;AACF,CAAC;","names":[]}
@@ -0,0 +1,62 @@
1
+ // src/interface/crud/team-member-profiles.ts
2
+ import { createCrud } from "../../crud";
3
+ import * as schemaFields from "../../schema-fields";
4
+ import { yupObject } from "../../schema-fields";
5
+ import { usersCrudServerReadSchema } from "./users";
6
+ var teamMemberProfilesCrudClientReadSchema = yupObject({
7
+ team_id: schemaFields.teamIdSchema.defined(),
8
+ user_id: schemaFields.userIdSchema.defined(),
9
+ display_name: schemaFields.teamMemberDisplayNameSchema.nullable().defined(),
10
+ profile_image_url: schemaFields.teamMemberProfileImageUrlSchema.nullable().defined()
11
+ }).defined();
12
+ var teamMemberProfilesCrudServerReadSchema = teamMemberProfilesCrudClientReadSchema.concat(yupObject({
13
+ user: usersCrudServerReadSchema.defined()
14
+ })).defined();
15
+ var teamMemberProfilesCrudClientUpdateSchema = yupObject({
16
+ display_name: schemaFields.teamMemberDisplayNameSchema.optional(),
17
+ profile_image_url: schemaFields.teamMemberProfileImageUrlSchema.nullable().optional()
18
+ }).defined();
19
+ var teamMemberProfilesCrud = createCrud({
20
+ clientReadSchema: teamMemberProfilesCrudClientReadSchema,
21
+ serverReadSchema: teamMemberProfilesCrudServerReadSchema,
22
+ clientUpdateSchema: teamMemberProfilesCrudClientUpdateSchema,
23
+ docs: {
24
+ clientList: {
25
+ summary: "List team members profiles",
26
+ description: "List team members profiles. You always need to specify a `team_id` that your are a member of on the client. You can always filter for your own profile by setting `me` as the `user_id` in the path parameters. If you want list all the profiles in a team, you need to have the `$read_members` permission in that team.",
27
+ tags: ["Teams"]
28
+ },
29
+ serverList: {
30
+ summary: "List team members profiles",
31
+ description: "List team members profiles and filter by team ID and user ID",
32
+ tags: ["Teams"]
33
+ },
34
+ clientRead: {
35
+ summary: "Get a team member profile",
36
+ description: "Get a team member profile. you can always get your own profile by setting `me` as the `user_id` in the path parameters on the client. If you want to get someone else's profile in a team, you need to have the `$read_members` permission in that team.",
37
+ tags: ["Teams"]
38
+ },
39
+ serverRead: {
40
+ summary: "Get a team member profile",
41
+ description: "Get a team member profile by user ID",
42
+ tags: ["Teams"]
43
+ },
44
+ clientUpdate: {
45
+ summary: "Update your team member profile",
46
+ description: "Update your own team member profile. `user_id` must be `me` in the path parameters on the client.",
47
+ tags: ["Teams"]
48
+ },
49
+ serverUpdate: {
50
+ summary: "Update a team member profile",
51
+ description: "Update a team member profile by user ID",
52
+ tags: ["Teams"]
53
+ }
54
+ }
55
+ });
56
+ export {
57
+ teamMemberProfilesCrud,
58
+ teamMemberProfilesCrudClientReadSchema,
59
+ teamMemberProfilesCrudClientUpdateSchema,
60
+ teamMemberProfilesCrudServerReadSchema
61
+ };
62
+ //# sourceMappingURL=team-member-profiles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/interface/crud/team-member-profiles.ts"],"sourcesContent":["import { CrudTypeOf, createCrud } from \"../../crud\";\nimport * as schemaFields from \"../../schema-fields\";\nimport { yupObject } from \"../../schema-fields\";\nimport { usersCrudServerReadSchema } from \"./users\";\n\n\nexport const teamMemberProfilesCrudClientReadSchema = yupObject({\n team_id: schemaFields.teamIdSchema.defined(),\n user_id: schemaFields.userIdSchema.defined(),\n display_name: schemaFields.teamMemberDisplayNameSchema.nullable().defined(),\n profile_image_url: schemaFields.teamMemberProfileImageUrlSchema.nullable().defined(),\n}).defined();\n\nexport const teamMemberProfilesCrudServerReadSchema = teamMemberProfilesCrudClientReadSchema.concat(yupObject({\n user: usersCrudServerReadSchema.defined(),\n})).defined();\n\nexport const teamMemberProfilesCrudClientUpdateSchema = yupObject({\n display_name: schemaFields.teamMemberDisplayNameSchema.optional(),\n profile_image_url: schemaFields.teamMemberProfileImageUrlSchema.nullable().optional(),\n}).defined();\n\nexport const teamMemberProfilesCrud = createCrud({\n clientReadSchema: teamMemberProfilesCrudClientReadSchema,\n serverReadSchema: teamMemberProfilesCrudServerReadSchema,\n clientUpdateSchema: teamMemberProfilesCrudClientUpdateSchema,\n docs: {\n clientList: {\n summary: \"List team members profiles\",\n description: \"List team members profiles. You always need to specify a `team_id` that your are a member of on the client. You can always filter for your own profile by setting `me` as the `user_id` in the path parameters. If you want list all the profiles in a team, you need to have the `$read_members` permission in that team.\",\n tags: [\"Teams\"],\n },\n serverList: {\n summary: \"List team members profiles\",\n description: \"List team members profiles and filter by team ID and user ID\",\n tags: [\"Teams\"],\n },\n clientRead: {\n summary: \"Get a team member profile\",\n description: \"Get a team member profile. you can always get your own profile by setting `me` as the `user_id` in the path parameters on the client. If you want to get someone else's profile in a team, you need to have the `$read_members` permission in that team.\",\n tags: [\"Teams\"],\n },\n serverRead: {\n summary: \"Get a team member profile\",\n description: \"Get a team member profile by user ID\",\n tags: [\"Teams\"],\n },\n clientUpdate: {\n summary: \"Update your team member profile\",\n description: \"Update your own team member profile. `user_id` must be `me` in the path parameters on the client.\",\n tags: [\"Teams\"],\n },\n serverUpdate: {\n summary: \"Update a team member profile\",\n description: \"Update a team member profile by user ID\",\n tags: [\"Teams\"],\n },\n },\n});\n\nexport type TeamMemberProfilesCrud = CrudTypeOf<typeof teamMemberProfilesCrud>;\n"],"mappings":";AAAA,SAAqB,kBAAkB;AACvC,YAAY,kBAAkB;AAC9B,SAAS,iBAAiB;AAC1B,SAAS,iCAAiC;AAGnC,IAAM,yCAAyC,UAAU;AAAA,EAC9D,SAAsB,0BAAa,QAAQ;AAAA,EAC3C,SAAsB,0BAAa,QAAQ;AAAA,EAC3C,cAA2B,yCAA4B,SAAS,EAAE,QAAQ;AAAA,EAC1E,mBAAgC,6CAAgC,SAAS,EAAE,QAAQ;AACrF,CAAC,EAAE,QAAQ;AAEJ,IAAM,yCAAyC,uCAAuC,OAAO,UAAU;AAAA,EAC5G,MAAM,0BAA0B,QAAQ;AAC1C,CAAC,CAAC,EAAE,QAAQ;AAEL,IAAM,2CAA2C,UAAU;AAAA,EAChE,cAA2B,yCAA4B,SAAS;AAAA,EAChE,mBAAgC,6CAAgC,SAAS,EAAE,SAAS;AACtF,CAAC,EAAE,QAAQ;AAEJ,IAAM,yBAAyB,WAAW;AAAA,EAC/C,kBAAkB;AAAA,EAClB,kBAAkB;AAAA,EAClB,oBAAoB;AAAA,EACpB,MAAM;AAAA,IACJ,YAAY;AAAA,MACV,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,OAAO;AAAA,IAChB;AAAA,IACA,YAAY;AAAA,MACV,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,OAAO;AAAA,IAChB;AAAA,IACA,YAAY;AAAA,MACV,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,OAAO;AAAA,IAChB;AAAA,IACA,YAAY;AAAA,MACV,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,OAAO;AAAA,IAChB;AAAA,IACA,cAAc;AAAA,MACZ,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,OAAO;AAAA,IAChB;AAAA,IACA,cAAc;AAAA,MACZ,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,OAAO;AAAA,IAChB;AAAA,EACF;AACF,CAAC;","names":[]}
@@ -0,0 +1,60 @@
1
+ // src/interface/crud/team-memberships.ts
2
+ import { createCrud } from "../../crud";
3
+ import { yupMixed, yupObject, yupString } from "../../schema-fields";
4
+ var teamMembershipsCrudClientReadSchema = yupObject({
5
+ team_id: yupString().defined(),
6
+ user_id: yupString().defined()
7
+ }).defined();
8
+ var teamMembershipsCrudServerCreateSchema = yupObject({}).defined();
9
+ var teamMembershipsCrudClientDeleteSchema = yupMixed();
10
+ var teamMembershipsCrud = createCrud({
11
+ // Client
12
+ clientReadSchema: teamMembershipsCrudClientReadSchema,
13
+ clientDeleteSchema: teamMembershipsCrudClientDeleteSchema,
14
+ // Server
15
+ serverCreateSchema: teamMembershipsCrudServerCreateSchema,
16
+ docs: {
17
+ serverCreate: {
18
+ summary: "Add a user to a team",
19
+ description: "",
20
+ tags: ["Teams"]
21
+ },
22
+ clientDelete: {
23
+ summary: "Remove a user from a team",
24
+ description: "All the users are allowed to remove themselves from a team (`user_id=me`). Only the users who have the `$remove_members` permission are allowed to remove other users from a team. `team_id` is must an ID of a team that the user is a member of.",
25
+ tags: ["Teams"]
26
+ },
27
+ serverDelete: {
28
+ summary: "Remove a user from a team",
29
+ description: "",
30
+ tags: ["Teams"]
31
+ }
32
+ }
33
+ });
34
+ var teamMembershipCreatedWebhookEvent = {
35
+ type: "team_membership.created",
36
+ schema: teamMembershipsCrud.server.readSchema,
37
+ metadata: {
38
+ summary: "Team Membership Created",
39
+ description: "This event is triggered when a user is added to a team.",
40
+ tags: ["Teams"]
41
+ }
42
+ };
43
+ var teamMembershipDeletedWebhookEvent = {
44
+ type: "team_membership.deleted",
45
+ schema: teamMembershipsCrud.server.readSchema,
46
+ metadata: {
47
+ summary: "Team Membership Deleted",
48
+ description: "This event is triggered when a user is removed from a team.",
49
+ tags: ["Teams"]
50
+ }
51
+ };
52
+ export {
53
+ teamMembershipCreatedWebhookEvent,
54
+ teamMembershipDeletedWebhookEvent,
55
+ teamMembershipsCrud,
56
+ teamMembershipsCrudClientDeleteSchema,
57
+ teamMembershipsCrudClientReadSchema,
58
+ teamMembershipsCrudServerCreateSchema
59
+ };
60
+ //# sourceMappingURL=team-memberships.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/interface/crud/team-memberships.ts"],"sourcesContent":["import { CrudTypeOf, createCrud } from \"../../crud\";\nimport { yupMixed, yupObject, yupString } from \"../../schema-fields\";\nimport { WebhookEvent } from \"../webhooks\";\n\nexport const teamMembershipsCrudClientReadSchema = yupObject({\n team_id: yupString().defined(),\n user_id: yupString().defined(),\n}).defined();\nexport const teamMembershipsCrudServerCreateSchema = yupObject({}).defined();\nexport const teamMembershipsCrudClientDeleteSchema = yupMixed();\n\nexport const teamMembershipsCrud = createCrud({\n // Client\n clientReadSchema: teamMembershipsCrudClientReadSchema,\n clientDeleteSchema: teamMembershipsCrudClientDeleteSchema,\n // Server\n serverCreateSchema: teamMembershipsCrudServerCreateSchema,\n docs: {\n serverCreate: {\n summary: \"Add a user to a team\",\n description: \"\",\n tags: [\"Teams\"],\n },\n clientDelete: {\n summary: \"Remove a user from a team\",\n description: \"All the users are allowed to remove themselves from a team (`user_id=me`). Only the users who have the `$remove_members` permission are allowed to remove other users from a team. `team_id` is must an ID of a team that the user is a member of.\",\n tags: [\"Teams\"],\n },\n serverDelete: {\n summary: \"Remove a user from a team\",\n description: \"\",\n tags: [\"Teams\"],\n },\n },\n});\nexport type TeamMembershipsCrud = CrudTypeOf<typeof teamMembershipsCrud>;\n\nexport const teamMembershipCreatedWebhookEvent = {\n type: \"team_membership.created\",\n schema: teamMembershipsCrud.server.readSchema,\n metadata: {\n summary: \"Team Membership Created\",\n description: \"This event is triggered when a user is added to a team.\",\n tags: [\"Teams\"],\n },\n} satisfies WebhookEvent<typeof teamMembershipsCrud.server.readSchema>;\n\nexport const teamMembershipDeletedWebhookEvent = {\n type: \"team_membership.deleted\",\n schema: teamMembershipsCrud.server.readSchema,\n metadata: {\n summary: \"Team Membership Deleted\",\n description: \"This event is triggered when a user is removed from a team.\",\n tags: [\"Teams\"],\n },\n} satisfies WebhookEvent<typeof teamMembershipsCrud.server.readSchema>;\n"],"mappings":";AAAA,SAAqB,kBAAkB;AACvC,SAAS,UAAU,WAAW,iBAAiB;AAGxC,IAAM,sCAAsC,UAAU;AAAA,EAC3D,SAAS,UAAU,EAAE,QAAQ;AAAA,EAC7B,SAAS,UAAU,EAAE,QAAQ;AAC/B,CAAC,EAAE,QAAQ;AACJ,IAAM,wCAAwC,UAAU,CAAC,CAAC,EAAE,QAAQ;AACpE,IAAM,wCAAwC,SAAS;AAEvD,IAAM,sBAAsB,WAAW;AAAA;AAAA,EAE5C,kBAAkB;AAAA,EAClB,oBAAoB;AAAA;AAAA,EAEpB,oBAAoB;AAAA,EACpB,MAAM;AAAA,IACJ,cAAc;AAAA,MACZ,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,OAAO;AAAA,IAChB;AAAA,IACA,cAAc;AAAA,MACZ,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,OAAO;AAAA,IAChB;AAAA,IACA,cAAc;AAAA,MACZ,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,OAAO;AAAA,IAChB;AAAA,EACF;AACF,CAAC;AAGM,IAAM,oCAAoC;AAAA,EAC/C,MAAM;AAAA,EACN,QAAQ,oBAAoB,OAAO;AAAA,EACnC,UAAU;AAAA,IACR,SAAS;AAAA,IACT,aAAa;AAAA,IACb,MAAM,CAAC,OAAO;AAAA,EAChB;AACF;AAEO,IAAM,oCAAoC;AAAA,EAC/C,MAAM;AAAA,EACN,QAAQ,oBAAoB,OAAO;AAAA,EACnC,UAAU;AAAA,IACR,SAAS;AAAA,IACT,aAAa;AAAA,IACb,MAAM,CAAC,OAAO;AAAA,EAChB;AACF;","names":[]}
@@ -0,0 +1,114 @@
1
+ // src/interface/crud/team-permissions.ts
2
+ import { createCrud } from "../../crud";
3
+ import * as schemaFields from "../../schema-fields";
4
+ import { yupMixed, yupObject } from "../../schema-fields";
5
+ var teamPermissionsCrudClientReadSchema = yupObject({
6
+ id: schemaFields.permissionDefinitionIdSchema.defined(),
7
+ user_id: schemaFields.userIdSchema.defined(),
8
+ team_id: schemaFields.teamIdSchema.defined()
9
+ }).defined();
10
+ var teamPermissionsCrudServerCreateSchema = yupObject({}).defined();
11
+ var teamPermissionsCrudServerDeleteSchema = yupMixed();
12
+ var teamPermissionsCrud = createCrud({
13
+ clientReadSchema: teamPermissionsCrudClientReadSchema,
14
+ serverCreateSchema: teamPermissionsCrudServerCreateSchema,
15
+ serverDeleteSchema: teamPermissionsCrudServerDeleteSchema,
16
+ docs: {
17
+ clientList: {
18
+ summary: "List team permissions",
19
+ description: "List team permissions of the current user. `user_id=me` must be set for client requests. Note that this might contain the permissions with the same permission ID across different teams. `(team_id, user_id, permission_id)` together uniquely identify a permission.",
20
+ tags: ["Permissions"]
21
+ },
22
+ serverList: {
23
+ summary: "List team permissions of a user",
24
+ description: "Query and filter the permission with `team_id`, `user_id`, and `permission_id`. Note that this might contain the permissions with the same permission ID across different teams and users. `(team_id, user_id, permission_id)` together uniquely identify a permission.",
25
+ tags: ["Permissions"]
26
+ },
27
+ serverCreate: {
28
+ summary: "Grant a team permission to a user",
29
+ description: "Grant a team permission to a user (the team permission must be created first on the Stack dashboard)",
30
+ tags: ["Permissions"]
31
+ },
32
+ serverDelete: {
33
+ summary: "Revoke a team permission from a user",
34
+ description: "Revoke a team permission from a user",
35
+ tags: ["Permissions"]
36
+ }
37
+ }
38
+ });
39
+ var teamPermissionCreatedWebhookEvent = {
40
+ type: "team_permission.created",
41
+ schema: teamPermissionsCrud.server.readSchema,
42
+ metadata: {
43
+ summary: "Team Permission Created",
44
+ description: "This event is triggered when a team permission is created.",
45
+ tags: ["Teams"]
46
+ }
47
+ };
48
+ var teamPermissionDeletedWebhookEvent = {
49
+ type: "team_permission.deleted",
50
+ schema: teamPermissionsCrud.server.readSchema,
51
+ metadata: {
52
+ summary: "Team Permission Deleted",
53
+ description: "This event is triggered when a team permission is deleted.",
54
+ tags: ["Teams"]
55
+ }
56
+ };
57
+ var teamPermissionDefinitionsCrudAdminReadSchema = yupObject({
58
+ id: schemaFields.permissionDefinitionIdSchema.defined(),
59
+ description: schemaFields.teamPermissionDescriptionSchema.optional(),
60
+ contained_permission_ids: schemaFields.containedPermissionIdsSchema.defined()
61
+ }).defined();
62
+ var teamPermissionDefinitionsCrudAdminCreateSchema = yupObject({
63
+ id: schemaFields.customPermissionDefinitionIdSchema.defined(),
64
+ description: schemaFields.teamPermissionDescriptionSchema.optional(),
65
+ contained_permission_ids: schemaFields.containedPermissionIdsSchema.optional()
66
+ }).defined();
67
+ var teamPermissionDefinitionsCrudAdminUpdateSchema = yupObject({
68
+ id: schemaFields.customPermissionDefinitionIdSchema.optional(),
69
+ description: schemaFields.teamPermissionDescriptionSchema.optional(),
70
+ contained_permission_ids: schemaFields.containedPermissionIdsSchema.optional()
71
+ }).defined();
72
+ var teamPermissionDefinitionsCrudAdminDeleteSchema = yupMixed();
73
+ var teamPermissionDefinitionsCrud = createCrud({
74
+ adminReadSchema: teamPermissionDefinitionsCrudAdminReadSchema,
75
+ adminCreateSchema: teamPermissionDefinitionsCrudAdminCreateSchema,
76
+ adminUpdateSchema: teamPermissionDefinitionsCrudAdminUpdateSchema,
77
+ adminDeleteSchema: teamPermissionDefinitionsCrudAdminDeleteSchema,
78
+ docs: {
79
+ adminList: {
80
+ summary: "List team permission definitions",
81
+ description: "Query and filter the permission with team_id, user_id, and permission_id (the equivalent of listing permissions on the Stack dashboard)",
82
+ tags: ["Permissions"]
83
+ },
84
+ adminCreate: {
85
+ summary: "Create a new team permission definition",
86
+ description: "Create a new permission definition (the equivalent of creating a new permission on the Stack dashboard)",
87
+ tags: ["Permissions"]
88
+ },
89
+ adminUpdate: {
90
+ summary: "Update a team permission definition",
91
+ description: "Update a permission definition (the equivalent of updating a permission on the Stack dashboard)",
92
+ tags: ["Permissions"]
93
+ },
94
+ adminDelete: {
95
+ summary: "Delete a team permission definition",
96
+ description: "Delete a permission definition (the equivalent of deleting a permission on the Stack dashboard)",
97
+ tags: ["Permissions"]
98
+ }
99
+ }
100
+ });
101
+ export {
102
+ teamPermissionCreatedWebhookEvent,
103
+ teamPermissionDefinitionsCrud,
104
+ teamPermissionDefinitionsCrudAdminCreateSchema,
105
+ teamPermissionDefinitionsCrudAdminDeleteSchema,
106
+ teamPermissionDefinitionsCrudAdminReadSchema,
107
+ teamPermissionDefinitionsCrudAdminUpdateSchema,
108
+ teamPermissionDeletedWebhookEvent,
109
+ teamPermissionsCrud,
110
+ teamPermissionsCrudClientReadSchema,
111
+ teamPermissionsCrudServerCreateSchema,
112
+ teamPermissionsCrudServerDeleteSchema
113
+ };
114
+ //# sourceMappingURL=team-permissions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/interface/crud/team-permissions.ts"],"sourcesContent":["import { CrudTypeOf, createCrud } from \"../../crud\";\nimport * as schemaFields from \"../../schema-fields\";\nimport { yupMixed, yupObject } from \"../../schema-fields\";\nimport { WebhookEvent } from \"../webhooks\";\n\n// =============== Team permissions =================\n\nexport const teamPermissionsCrudClientReadSchema = yupObject({\n id: schemaFields.permissionDefinitionIdSchema.defined(),\n user_id: schemaFields.userIdSchema.defined(),\n team_id: schemaFields.teamIdSchema.defined(),\n}).defined();\n\nexport const teamPermissionsCrudServerCreateSchema = yupObject({\n}).defined();\n\nexport const teamPermissionsCrudServerDeleteSchema = yupMixed();\n\nexport const teamPermissionsCrud = createCrud({\n clientReadSchema: teamPermissionsCrudClientReadSchema,\n serverCreateSchema: teamPermissionsCrudServerCreateSchema,\n serverDeleteSchema: teamPermissionsCrudServerDeleteSchema,\n docs: {\n clientList: {\n summary: \"List team permissions\",\n description: \"List team permissions of the current user. `user_id=me` must be set for client requests. Note that this might contain the permissions with the same permission ID across different teams. `(team_id, user_id, permission_id)` together uniquely identify a permission.\",\n tags: [\"Permissions\"],\n },\n serverList: {\n summary: \"List team permissions of a user\",\n description: \"Query and filter the permission with `team_id`, `user_id`, and `permission_id`. Note that this might contain the permissions with the same permission ID across different teams and users. `(team_id, user_id, permission_id)` together uniquely identify a permission.\",\n tags: [\"Permissions\"],\n },\n serverCreate: {\n summary: \"Grant a team permission to a user\",\n description: \"Grant a team permission to a user (the team permission must be created first on the Stack dashboard)\",\n tags: [\"Permissions\"],\n },\n serverDelete: {\n summary: \"Revoke a team permission from a user\",\n description: \"Revoke a team permission from a user\",\n tags: [\"Permissions\"],\n },\n },\n});\nexport type TeamPermissionsCrud = CrudTypeOf<typeof teamPermissionsCrud>;\n\nexport const teamPermissionCreatedWebhookEvent = {\n type: \"team_permission.created\",\n schema: teamPermissionsCrud.server.readSchema,\n metadata: {\n summary: \"Team Permission Created\",\n description: \"This event is triggered when a team permission is created.\",\n tags: [\"Teams\"],\n },\n} satisfies WebhookEvent<typeof teamPermissionsCrud.server.readSchema>;\n\nexport const teamPermissionDeletedWebhookEvent = {\n type: \"team_permission.deleted\",\n schema: teamPermissionsCrud.server.readSchema,\n metadata: {\n summary: \"Team Permission Deleted\",\n description: \"This event is triggered when a team permission is deleted.\",\n tags: [\"Teams\"],\n },\n} satisfies WebhookEvent<typeof teamPermissionsCrud.server.readSchema>;\n\n// =============== Team permission definitions =================\n\nexport const teamPermissionDefinitionsCrudAdminReadSchema = yupObject({\n id: schemaFields.permissionDefinitionIdSchema.defined(),\n description: schemaFields.teamPermissionDescriptionSchema.optional(),\n contained_permission_ids: schemaFields.containedPermissionIdsSchema.defined(),\n}).defined();\n\nexport const teamPermissionDefinitionsCrudAdminCreateSchema = yupObject({\n id: schemaFields.customPermissionDefinitionIdSchema.defined(),\n description: schemaFields.teamPermissionDescriptionSchema.optional(),\n contained_permission_ids: schemaFields.containedPermissionIdsSchema.optional(),\n}).defined();\n\nexport const teamPermissionDefinitionsCrudAdminUpdateSchema = yupObject({\n id: schemaFields.customPermissionDefinitionIdSchema.optional(),\n description: schemaFields.teamPermissionDescriptionSchema.optional(),\n contained_permission_ids: schemaFields.containedPermissionIdsSchema.optional(),\n}).defined();\n\nexport const teamPermissionDefinitionsCrudAdminDeleteSchema = yupMixed();\n\nexport const teamPermissionDefinitionsCrud = createCrud({\n adminReadSchema: teamPermissionDefinitionsCrudAdminReadSchema,\n adminCreateSchema: teamPermissionDefinitionsCrudAdminCreateSchema,\n adminUpdateSchema: teamPermissionDefinitionsCrudAdminUpdateSchema,\n adminDeleteSchema: teamPermissionDefinitionsCrudAdminDeleteSchema,\n docs: {\n adminList: {\n summary: \"List team permission definitions\",\n description: \"Query and filter the permission with team_id, user_id, and permission_id (the equivalent of listing permissions on the Stack dashboard)\",\n tags: [\"Permissions\"],\n },\n adminCreate: {\n summary: \"Create a new team permission definition\",\n description: \"Create a new permission definition (the equivalent of creating a new permission on the Stack dashboard)\",\n tags: [\"Permissions\"],\n },\n adminUpdate: {\n summary: \"Update a team permission definition\",\n description: \"Update a permission definition (the equivalent of updating a permission on the Stack dashboard)\",\n tags: [\"Permissions\"],\n },\n adminDelete: {\n summary: \"Delete a team permission definition\",\n description: \"Delete a permission definition (the equivalent of deleting a permission on the Stack dashboard)\",\n tags: [\"Permissions\"],\n },\n },\n});\n\nexport type TeamPermissionDefinitionsCrud = CrudTypeOf<typeof teamPermissionDefinitionsCrud>;\n"],"mappings":";AAAA,SAAqB,kBAAkB;AACvC,YAAY,kBAAkB;AAC9B,SAAS,UAAU,iBAAiB;AAK7B,IAAM,sCAAsC,UAAU;AAAA,EAC3D,IAAiB,0CAA6B,QAAQ;AAAA,EACtD,SAAsB,0BAAa,QAAQ;AAAA,EAC3C,SAAsB,0BAAa,QAAQ;AAC7C,CAAC,EAAE,QAAQ;AAEJ,IAAM,wCAAwC,UAAU,CAC/D,CAAC,EAAE,QAAQ;AAEJ,IAAM,wCAAwC,SAAS;AAEvD,IAAM,sBAAsB,WAAW;AAAA,EAC5C,kBAAkB;AAAA,EAClB,oBAAoB;AAAA,EACpB,oBAAoB;AAAA,EACpB,MAAM;AAAA,IACJ,YAAY;AAAA,MACV,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,aAAa;AAAA,IACtB;AAAA,IACA,YAAY;AAAA,MACV,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,aAAa;AAAA,IACtB;AAAA,IACA,cAAc;AAAA,MACZ,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,aAAa;AAAA,IACtB;AAAA,IACA,cAAc;AAAA,MACZ,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,aAAa;AAAA,IACtB;AAAA,EACF;AACF,CAAC;AAGM,IAAM,oCAAoC;AAAA,EAC/C,MAAM;AAAA,EACN,QAAQ,oBAAoB,OAAO;AAAA,EACnC,UAAU;AAAA,IACR,SAAS;AAAA,IACT,aAAa;AAAA,IACb,MAAM,CAAC,OAAO;AAAA,EAChB;AACF;AAEO,IAAM,oCAAoC;AAAA,EAC/C,MAAM;AAAA,EACN,QAAQ,oBAAoB,OAAO;AAAA,EACnC,UAAU;AAAA,IACR,SAAS;AAAA,IACT,aAAa;AAAA,IACb,MAAM,CAAC,OAAO;AAAA,EAChB;AACF;AAIO,IAAM,+CAA+C,UAAU;AAAA,EACpE,IAAiB,0CAA6B,QAAQ;AAAA,EACtD,aAA0B,6CAAgC,SAAS;AAAA,EACnE,0BAAuC,0CAA6B,QAAQ;AAC9E,CAAC,EAAE,QAAQ;AAEJ,IAAM,iDAAiD,UAAU;AAAA,EACtE,IAAiB,gDAAmC,QAAQ;AAAA,EAC5D,aAA0B,6CAAgC,SAAS;AAAA,EACnE,0BAAuC,0CAA6B,SAAS;AAC/E,CAAC,EAAE,QAAQ;AAEJ,IAAM,iDAAiD,UAAU;AAAA,EACtE,IAAiB,gDAAmC,SAAS;AAAA,EAC7D,aAA0B,6CAAgC,SAAS;AAAA,EACnE,0BAAuC,0CAA6B,SAAS;AAC/E,CAAC,EAAE,QAAQ;AAEJ,IAAM,iDAAiD,SAAS;AAEhE,IAAM,gCAAgC,WAAW;AAAA,EACtD,iBAAiB;AAAA,EACjB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,mBAAmB;AAAA,EACnB,MAAM;AAAA,IACJ,WAAW;AAAA,MACT,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,aAAa;AAAA,IACtB;AAAA,IACA,aAAa;AAAA,MACX,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,aAAa;AAAA,IACtB;AAAA,IACA,aAAa;AAAA,MACX,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,aAAa;AAAA,IACtB;AAAA,IACA,aAAa;AAAA,MACX,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,aAAa;AAAA,IACtB;AAAA,EACF;AACF,CAAC;","names":[]}
@@ -0,0 +1,143 @@
1
+ // src/interface/crud/teams.ts
2
+ import { createCrud } from "../../crud";
3
+ import * as fieldSchema from "../../schema-fields";
4
+ import { yupObject as yupObject2 } from "../../schema-fields";
5
+ var teamsCrudClientReadSchema = yupObject2({
6
+ id: fieldSchema.teamIdSchema.defined(),
7
+ display_name: fieldSchema.teamDisplayNameSchema.defined(),
8
+ profile_image_url: fieldSchema.teamProfileImageUrlSchema.nullable().defined(),
9
+ client_metadata: fieldSchema.teamClientMetadataSchema.optional(),
10
+ client_read_only_metadata: fieldSchema.teamClientReadOnlyMetadataSchema.optional()
11
+ }).defined();
12
+ var teamsCrudServerReadSchema = teamsCrudClientReadSchema.concat(yupObject2({
13
+ created_at_millis: fieldSchema.teamCreatedAtMillisSchema.defined(),
14
+ server_metadata: fieldSchema.teamServerMetadataSchema.optional()
15
+ }).defined());
16
+ var teamsCrudClientUpdateSchema = yupObject2({
17
+ display_name: fieldSchema.teamDisplayNameSchema.optional(),
18
+ profile_image_url: fieldSchema.teamProfileImageUrlSchema.nullable().optional(),
19
+ client_metadata: fieldSchema.teamClientMetadataSchema.optional()
20
+ }).defined();
21
+ var teamsCrudServerUpdateSchema = teamsCrudClientUpdateSchema.concat(yupObject2({
22
+ client_read_only_metadata: fieldSchema.teamClientReadOnlyMetadataSchema.optional(),
23
+ server_metadata: fieldSchema.teamServerMetadataSchema.optional()
24
+ }).defined());
25
+ var teamsCrudClientCreateSchema = teamsCrudClientUpdateSchema.concat(yupObject2({
26
+ display_name: fieldSchema.teamDisplayNameSchema.defined(),
27
+ creator_user_id: fieldSchema.teamCreatorUserIdSchema.optional()
28
+ }).defined());
29
+ var teamsCrudServerCreateSchema = teamsCrudServerUpdateSchema.concat(yupObject2({
30
+ display_name: fieldSchema.teamDisplayNameSchema.defined(),
31
+ creator_user_id: fieldSchema.teamCreatorUserIdSchema.optional()
32
+ }).defined());
33
+ var teamsCrudClientDeleteSchema = fieldSchema.yupMixed();
34
+ var teamsCrudServerDeleteSchema = teamsCrudClientDeleteSchema;
35
+ var teamsCrud = createCrud({
36
+ // Client
37
+ clientReadSchema: teamsCrudClientReadSchema,
38
+ clientUpdateSchema: teamsCrudClientUpdateSchema,
39
+ clientCreateSchema: teamsCrudClientCreateSchema,
40
+ clientDeleteSchema: teamsCrudClientDeleteSchema,
41
+ // Server
42
+ serverReadSchema: teamsCrudServerReadSchema,
43
+ serverUpdateSchema: teamsCrudServerUpdateSchema,
44
+ serverCreateSchema: teamsCrudServerCreateSchema,
45
+ serverDeleteSchema: teamsCrudServerDeleteSchema,
46
+ docs: {
47
+ clientList: {
48
+ summary: "List teams",
49
+ description: "List all the teams that the current user is a member of. `user_id=me` must be passed in the query parameters.",
50
+ tags: ["Teams"]
51
+ },
52
+ clientCreate: {
53
+ summary: "Create a team",
54
+ description: "Create a new team and optionally add the current user as a member.",
55
+ tags: ["Teams"]
56
+ },
57
+ clientRead: {
58
+ summary: "Get a team",
59
+ description: "Get a team that the current user is a member of.",
60
+ tags: ["Teams"]
61
+ },
62
+ clientUpdate: {
63
+ summary: "Update a team",
64
+ description: "Update the team information. Only allowed if the current user is a member of the team and has the `$update_team` permission.",
65
+ tags: ["Teams"]
66
+ },
67
+ clientDelete: {
68
+ summary: "Delete a team",
69
+ description: "Delete a team. Only allowed if the current user is a member of the team and has the `$delete_team` permission.",
70
+ tags: ["Teams"]
71
+ },
72
+ serverCreate: {
73
+ summary: "Create a team",
74
+ description: "Create a new team and optionally add the current user as a member.",
75
+ tags: ["Teams"]
76
+ },
77
+ serverList: {
78
+ summary: "List teams",
79
+ description: "List all the teams in the project.",
80
+ tags: ["Teams"]
81
+ },
82
+ serverRead: {
83
+ summary: "Get a team",
84
+ description: "Get a team by ID.",
85
+ tags: ["Teams"]
86
+ },
87
+ serverUpdate: {
88
+ summary: "Update a team",
89
+ description: "Update the team information by ID.",
90
+ tags: ["Teams"]
91
+ },
92
+ serverDelete: {
93
+ summary: "Delete a team",
94
+ description: "Delete a team by ID.",
95
+ tags: ["Teams"]
96
+ }
97
+ }
98
+ });
99
+ var teamCreatedWebhookEvent = {
100
+ type: "team.created",
101
+ schema: teamsCrud.server.readSchema,
102
+ metadata: {
103
+ summary: "Team Created",
104
+ description: "This event is triggered when a team is created.",
105
+ tags: ["Teams"]
106
+ }
107
+ };
108
+ var teamUpdatedWebhookEvent = {
109
+ type: "team.updated",
110
+ schema: teamsCrud.server.readSchema,
111
+ metadata: {
112
+ summary: "Team Updated",
113
+ description: "This event is triggered when a team is updated.",
114
+ tags: ["Teams"]
115
+ }
116
+ };
117
+ var webhookTeamDeletedSchema = fieldSchema.yupObject({
118
+ id: fieldSchema.userIdSchema.defined()
119
+ }).defined();
120
+ var teamDeletedWebhookEvent = {
121
+ type: "team.deleted",
122
+ schema: webhookTeamDeletedSchema,
123
+ metadata: {
124
+ summary: "Team Deleted",
125
+ description: "This event is triggered when a team is deleted.",
126
+ tags: ["Teams"]
127
+ }
128
+ };
129
+ export {
130
+ teamCreatedWebhookEvent,
131
+ teamDeletedWebhookEvent,
132
+ teamUpdatedWebhookEvent,
133
+ teamsCrud,
134
+ teamsCrudClientCreateSchema,
135
+ teamsCrudClientDeleteSchema,
136
+ teamsCrudClientReadSchema,
137
+ teamsCrudClientUpdateSchema,
138
+ teamsCrudServerCreateSchema,
139
+ teamsCrudServerDeleteSchema,
140
+ teamsCrudServerReadSchema,
141
+ teamsCrudServerUpdateSchema
142
+ };
143
+ //# sourceMappingURL=teams.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/interface/crud/teams.ts"],"sourcesContent":["import { CrudTypeOf, createCrud } from \"../../crud\";\nimport * as fieldSchema from \"../../schema-fields\";\nimport { yupObject } from \"../../schema-fields\";\nimport { WebhookEvent } from \"../webhooks\";\n\n// Read\nexport const teamsCrudClientReadSchema = yupObject({\n id: fieldSchema.teamIdSchema.defined(),\n display_name: fieldSchema.teamDisplayNameSchema.defined(),\n profile_image_url: fieldSchema.teamProfileImageUrlSchema.nullable().defined(),\n client_metadata: fieldSchema.teamClientMetadataSchema.optional(),\n client_read_only_metadata: fieldSchema.teamClientReadOnlyMetadataSchema.optional(),\n}).defined();\nexport const teamsCrudServerReadSchema = teamsCrudClientReadSchema.concat(yupObject({\n created_at_millis: fieldSchema.teamCreatedAtMillisSchema.defined(),\n server_metadata: fieldSchema.teamServerMetadataSchema.optional(),\n}).defined());\n\n// Update\nexport const teamsCrudClientUpdateSchema = yupObject({\n display_name: fieldSchema.teamDisplayNameSchema.optional(),\n profile_image_url: fieldSchema.teamProfileImageUrlSchema.nullable().optional(),\n client_metadata: fieldSchema.teamClientMetadataSchema.optional(),\n}).defined();\nexport const teamsCrudServerUpdateSchema = teamsCrudClientUpdateSchema.concat(yupObject({\n client_read_only_metadata: fieldSchema.teamClientReadOnlyMetadataSchema.optional(),\n server_metadata: fieldSchema.teamServerMetadataSchema.optional(),\n}).defined());\n\n// Create\nexport const teamsCrudClientCreateSchema = teamsCrudClientUpdateSchema.concat(yupObject({\n display_name: fieldSchema.teamDisplayNameSchema.defined(),\n creator_user_id: fieldSchema.teamCreatorUserIdSchema.optional(),\n}).defined());\nexport const teamsCrudServerCreateSchema = teamsCrudServerUpdateSchema.concat(yupObject({\n display_name: fieldSchema.teamDisplayNameSchema.defined(),\n creator_user_id: fieldSchema.teamCreatorUserIdSchema.optional(),\n}).defined());\n\n// Delete\nexport const teamsCrudClientDeleteSchema = fieldSchema.yupMixed();\nexport const teamsCrudServerDeleteSchema = teamsCrudClientDeleteSchema;\n\nexport const teamsCrud = createCrud({\n // Client\n clientReadSchema: teamsCrudClientReadSchema,\n clientUpdateSchema: teamsCrudClientUpdateSchema,\n clientCreateSchema: teamsCrudClientCreateSchema,\n clientDeleteSchema: teamsCrudClientDeleteSchema,\n // Server\n serverReadSchema: teamsCrudServerReadSchema,\n serverUpdateSchema: teamsCrudServerUpdateSchema,\n serverCreateSchema: teamsCrudServerCreateSchema,\n serverDeleteSchema: teamsCrudServerDeleteSchema,\n docs: {\n clientList: {\n summary: \"List teams\",\n description: \"List all the teams that the current user is a member of. `user_id=me` must be passed in the query parameters.\",\n tags: [\"Teams\"],\n },\n clientCreate: {\n summary: \"Create a team\",\n description: \"Create a new team and optionally add the current user as a member.\",\n tags: [\"Teams\"],\n },\n clientRead: {\n summary: \"Get a team\",\n description: \"Get a team that the current user is a member of.\",\n tags: [\"Teams\"],\n },\n clientUpdate: {\n summary: \"Update a team\",\n description: \"Update the team information. Only allowed if the current user is a member of the team and has the `$update_team` permission.\",\n tags: [\"Teams\"],\n },\n clientDelete: {\n summary: \"Delete a team\",\n description: \"Delete a team. Only allowed if the current user is a member of the team and has the `$delete_team` permission.\",\n tags: [\"Teams\"],\n },\n serverCreate: {\n summary: \"Create a team\",\n description: \"Create a new team and optionally add the current user as a member.\",\n tags: [\"Teams\"],\n },\n serverList: {\n summary: \"List teams\",\n description: \"List all the teams in the project.\",\n tags: [\"Teams\"],\n },\n serverRead: {\n summary: \"Get a team\",\n description: \"Get a team by ID.\",\n tags: [\"Teams\"],\n },\n serverUpdate: {\n summary: \"Update a team\",\n description: \"Update the team information by ID.\",\n tags: [\"Teams\"],\n },\n serverDelete: {\n summary: \"Delete a team\",\n description: \"Delete a team by ID.\",\n tags: [\"Teams\"],\n },\n },\n});\nexport type TeamsCrud = CrudTypeOf<typeof teamsCrud>;\n\nexport const teamCreatedWebhookEvent = {\n type: \"team.created\",\n schema: teamsCrud.server.readSchema,\n metadata: {\n summary: \"Team Created\",\n description: \"This event is triggered when a team is created.\",\n tags: [\"Teams\"],\n },\n} satisfies WebhookEvent<typeof teamsCrud.server.readSchema>;\n\nexport const teamUpdatedWebhookEvent = {\n type: \"team.updated\",\n schema: teamsCrud.server.readSchema,\n metadata: {\n summary: \"Team Updated\",\n description: \"This event is triggered when a team is updated.\",\n tags: [\"Teams\"],\n },\n} satisfies WebhookEvent<typeof teamsCrud.server.readSchema>;\n\nconst webhookTeamDeletedSchema = fieldSchema.yupObject({\n id: fieldSchema.userIdSchema.defined(),\n}).defined();\n\nexport const teamDeletedWebhookEvent = {\n type: \"team.deleted\",\n schema: webhookTeamDeletedSchema,\n metadata: {\n summary: \"Team Deleted\",\n description: \"This event is triggered when a team is deleted.\",\n tags: [\"Teams\"],\n },\n} satisfies WebhookEvent<typeof webhookTeamDeletedSchema>;\n"],"mappings":";AAAA,SAAqB,kBAAkB;AACvC,YAAY,iBAAiB;AAC7B,SAAS,aAAAA,kBAAiB;AAInB,IAAM,4BAA4BA,WAAU;AAAA,EACjD,IAAgB,yBAAa,QAAQ;AAAA,EACrC,cAA0B,kCAAsB,QAAQ;AAAA,EACxD,mBAA+B,sCAA0B,SAAS,EAAE,QAAQ;AAAA,EAC5E,iBAA6B,qCAAyB,SAAS;AAAA,EAC/D,2BAAuC,6CAAiC,SAAS;AACnF,CAAC,EAAE,QAAQ;AACJ,IAAM,4BAA4B,0BAA0B,OAAOA,WAAU;AAAA,EAClF,mBAA+B,sCAA0B,QAAQ;AAAA,EACjE,iBAA6B,qCAAyB,SAAS;AACjE,CAAC,EAAE,QAAQ,CAAC;AAGL,IAAM,8BAA8BA,WAAU;AAAA,EACnD,cAA0B,kCAAsB,SAAS;AAAA,EACzD,mBAA+B,sCAA0B,SAAS,EAAE,SAAS;AAAA,EAC7E,iBAA6B,qCAAyB,SAAS;AACjE,CAAC,EAAE,QAAQ;AACJ,IAAM,8BAA8B,4BAA4B,OAAOA,WAAU;AAAA,EACtF,2BAAuC,6CAAiC,SAAS;AAAA,EACjF,iBAA6B,qCAAyB,SAAS;AACjE,CAAC,EAAE,QAAQ,CAAC;AAGL,IAAM,8BAA8B,4BAA4B,OAAOA,WAAU;AAAA,EACtF,cAA0B,kCAAsB,QAAQ;AAAA,EACxD,iBAA6B,oCAAwB,SAAS;AAChE,CAAC,EAAE,QAAQ,CAAC;AACL,IAAM,8BAA8B,4BAA4B,OAAOA,WAAU;AAAA,EACtF,cAA0B,kCAAsB,QAAQ;AAAA,EACxD,iBAA6B,oCAAwB,SAAS;AAChE,CAAC,EAAE,QAAQ,CAAC;AAGL,IAAM,8BAA0C,qBAAS;AACzD,IAAM,8BAA8B;AAEpC,IAAM,YAAY,WAAW;AAAA;AAAA,EAElC,kBAAkB;AAAA,EAClB,oBAAoB;AAAA,EACpB,oBAAoB;AAAA,EACpB,oBAAoB;AAAA;AAAA,EAEpB,kBAAkB;AAAA,EAClB,oBAAoB;AAAA,EACpB,oBAAoB;AAAA,EACpB,oBAAoB;AAAA,EACpB,MAAM;AAAA,IACJ,YAAY;AAAA,MACV,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,OAAO;AAAA,IAChB;AAAA,IACA,cAAc;AAAA,MACZ,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,OAAO;AAAA,IAChB;AAAA,IACA,YAAY;AAAA,MACV,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,OAAO;AAAA,IAChB;AAAA,IACA,cAAc;AAAA,MACZ,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,OAAO;AAAA,IAChB;AAAA,IACA,cAAc;AAAA,MACZ,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,OAAO;AAAA,IAChB;AAAA,IACA,cAAc;AAAA,MACZ,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,OAAO;AAAA,IAChB;AAAA,IACA,YAAY;AAAA,MACV,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,OAAO;AAAA,IAChB;AAAA,IACA,YAAY;AAAA,MACV,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,OAAO;AAAA,IAChB;AAAA,IACA,cAAc;AAAA,MACZ,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,OAAO;AAAA,IAChB;AAAA,IACA,cAAc;AAAA,MACZ,SAAS;AAAA,MACT,aAAa;AAAA,MACb,MAAM,CAAC,OAAO;AAAA,IAChB;AAAA,EACF;AACF,CAAC;AAGM,IAAM,0BAA0B;AAAA,EACrC,MAAM;AAAA,EACN,QAAQ,UAAU,OAAO;AAAA,EACzB,UAAU;AAAA,IACR,SAAS;AAAA,IACT,aAAa;AAAA,IACb,MAAM,CAAC,OAAO;AAAA,EAChB;AACF;AAEO,IAAM,0BAA0B;AAAA,EACrC,MAAM;AAAA,EACN,QAAQ,UAAU,OAAO;AAAA,EACzB,UAAU;AAAA,IACR,SAAS;AAAA,IACT,aAAa;AAAA,IACb,MAAM,CAAC,OAAO;AAAA,EAChB;AACF;AAEA,IAAM,2BAAuC,sBAAU;AAAA,EACrD,IAAgB,yBAAa,QAAQ;AACvC,CAAC,EAAE,QAAQ;AAEJ,IAAM,0BAA0B;AAAA,EACrC,MAAM;AAAA,EACN,QAAQ;AAAA,EACR,UAAU;AAAA,IACR,SAAS;AAAA,IACT,aAAa;AAAA,IACb,MAAM,CAAC,OAAO;AAAA,EAChB;AACF;","names":["yupObject"]}