@go-mondo/identity-sdk 0.0.2-beta.9 → 0.0.2-beta.91

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 (630) hide show
  1. package/.github/workflows/release.yaml +1 -1
  2. package/.release-please-manifest.json +1 -1
  3. package/.tsbuildinfo/cjs.json +1 -1
  4. package/.tsbuildinfo/esm.json +1 -1
  5. package/CHANGELOG.md +575 -0
  6. package/README.md +384 -2
  7. package/dist/cjs/action/schema/base.d.ts +21 -21
  8. package/dist/cjs/action/schema/base.d.ts.map +1 -1
  9. package/dist/cjs/action/schema/base.js +48 -10
  10. package/dist/cjs/action/schema/base.test.js +50 -35
  11. package/dist/cjs/action/schema/operations/sign-up-verification.d.ts +21 -21
  12. package/dist/cjs/action/schema/operations/sign-up-verification.d.ts.map +1 -1
  13. package/dist/cjs/action/schema/operations/sign-up-verification.js +41 -7
  14. package/dist/cjs/action/schema/operations/sign-up-verification.test.js +28 -29
  15. package/dist/cjs/action/schema/operations/sign-up.d.ts +40 -43
  16. package/dist/cjs/action/schema/operations/sign-up.d.ts.map +1 -1
  17. package/dist/cjs/action/schema/operations/sign-up.js +57 -15
  18. package/dist/cjs/action/schema/operations/sign-up.test.js +33 -34
  19. package/dist/cjs/action/schema/operations/user-attribute-verification.d.ts +19 -19
  20. package/dist/cjs/action/schema/operations/user-attribute-verification.d.ts.map +1 -1
  21. package/dist/cjs/action/schema/operations/user-attribute-verification.js +39 -5
  22. package/dist/cjs/action/schema/operations/user-attribute-verification.test.js +25 -26
  23. package/dist/cjs/action/schema/schema.d.ts +49 -77
  24. package/dist/cjs/action/schema/schema.d.ts.map +1 -1
  25. package/dist/cjs/action/schema/schema.js +7 -5
  26. package/dist/cjs/action/schema/schema.test.js +31 -58
  27. package/dist/cjs/activity/resources.d.ts +3 -3
  28. package/dist/cjs/activity/resources.d.ts.map +1 -1
  29. package/dist/cjs/activity/resources.js +2 -2
  30. package/dist/cjs/activity/resources.test.js +14 -13
  31. package/dist/cjs/activity/schema/base.d.ts +88 -69
  32. package/dist/cjs/activity/schema/base.d.ts.map +1 -1
  33. package/dist/cjs/activity/schema/base.js +71 -26
  34. package/dist/cjs/activity/schema/base.test.js +85 -55
  35. package/dist/cjs/activity/schema/schema.d.ts +293 -226
  36. package/dist/cjs/activity/schema/schema.d.ts.map +1 -1
  37. package/dist/cjs/activity/schema/schema.test.js +47 -48
  38. package/dist/cjs/activity/schema/types/authentication.d.ts +64 -46
  39. package/dist/cjs/activity/schema/types/authentication.d.ts.map +1 -1
  40. package/dist/cjs/activity/schema/types/authentication.js +49 -7
  41. package/dist/cjs/activity/schema/types/authentication.test.js +37 -38
  42. package/dist/cjs/activity/schema/types/authorization.d.ts +64 -46
  43. package/dist/cjs/activity/schema/types/authorization.d.ts.map +1 -1
  44. package/dist/cjs/activity/schema/types/authorization.js +49 -7
  45. package/dist/cjs/activity/schema/types/authorization.test.js +41 -42
  46. package/dist/cjs/activity/schema/types/note.d.ts +83 -70
  47. package/dist/cjs/activity/schema/types/note.d.ts.map +1 -1
  48. package/dist/cjs/activity/schema/types/note.js +53 -12
  49. package/dist/cjs/activity/schema/types/note.test.js +48 -49
  50. package/dist/cjs/activity/schema/types/operation.d.ts +64 -45
  51. package/dist/cjs/activity/schema/types/operation.d.ts.map +1 -1
  52. package/dist/cjs/activity/schema/types/operation.js +52 -8
  53. package/dist/cjs/activity/schema/types/operation.test.js +34 -35
  54. package/dist/cjs/activity/schema/types/unknown.d.ts +50 -41
  55. package/dist/cjs/activity/schema/types/unknown.d.ts.map +1 -1
  56. package/dist/cjs/activity/schema/types/unknown.js +45 -6
  57. package/dist/cjs/activity/schema/types/unknown.test.js +29 -30
  58. package/dist/cjs/app/authorization/resources.d.ts +4 -4
  59. package/dist/cjs/app/authorization/resources.d.ts.map +1 -1
  60. package/dist/cjs/app/authorization/resources.js +2 -6
  61. package/dist/cjs/app/authorization/schema.d.ts +90 -52
  62. package/dist/cjs/app/authorization/schema.d.ts.map +1 -1
  63. package/dist/cjs/app/authorization/schema.js +90 -65
  64. package/dist/cjs/app/authorization/schema.test.js +155 -74
  65. package/dist/cjs/app/oauth/resources.d.ts +4 -4
  66. package/dist/cjs/app/oauth/resources.d.ts.map +1 -1
  67. package/dist/cjs/app/oauth/resources.js +2 -3
  68. package/dist/cjs/app/oauth/schema.d.ts +34 -41
  69. package/dist/cjs/app/oauth/schema.d.ts.map +1 -1
  70. package/dist/cjs/app/oauth/schema.js +56 -17
  71. package/dist/cjs/app/oauth/schema.test.js +39 -40
  72. package/dist/cjs/app/oidc/resources.d.ts +6 -6
  73. package/dist/cjs/app/oidc/resources.d.ts.map +1 -1
  74. package/dist/cjs/app/oidc/resources.js +4 -5
  75. package/dist/cjs/app/oidc/schema.d.ts +26 -37
  76. package/dist/cjs/app/oidc/schema.d.ts.map +1 -1
  77. package/dist/cjs/app/oidc/schema.js +50 -13
  78. package/dist/cjs/app/oidc/schema.test.js +46 -27
  79. package/dist/cjs/app/registration/resources.d.ts +4 -4
  80. package/dist/cjs/app/registration/resources.d.ts.map +1 -1
  81. package/dist/cjs/app/registration/resources.js +2 -3
  82. package/dist/cjs/app/registration/resources.test.js +14 -13
  83. package/dist/cjs/app/registration/schema.d.ts +24 -31
  84. package/dist/cjs/app/registration/schema.d.ts.map +1 -1
  85. package/dist/cjs/app/registration/schema.js +56 -16
  86. package/dist/cjs/app/registration/schema.test.js +68 -150
  87. package/dist/cjs/app/resources.d.ts +7 -7
  88. package/dist/cjs/app/resources.d.ts.map +1 -1
  89. package/dist/cjs/app/resources.js +6 -6
  90. package/dist/cjs/app/resources.test.js +14 -13
  91. package/dist/cjs/app/saml/resources.d.ts +6 -6
  92. package/dist/cjs/app/saml/resources.d.ts.map +1 -1
  93. package/dist/cjs/app/saml/resources.js +4 -5
  94. package/dist/cjs/app/saml/schema.d.ts +26 -37
  95. package/dist/cjs/app/saml/schema.d.ts.map +1 -1
  96. package/dist/cjs/app/saml/schema.js +50 -13
  97. package/dist/cjs/app/schema.d.ts +72 -68
  98. package/dist/cjs/app/schema.d.ts.map +1 -1
  99. package/dist/cjs/app/schema.js +76 -35
  100. package/dist/cjs/app/schema.test.js +128 -42
  101. package/dist/cjs/association/resources.d.ts +5 -5
  102. package/dist/cjs/association/resources.d.ts.map +1 -1
  103. package/dist/cjs/association/resources.js +4 -6
  104. package/dist/cjs/association/schema.d.ts +270 -182
  105. package/dist/cjs/association/schema.d.ts.map +1 -1
  106. package/dist/cjs/association/schema.js +70 -32
  107. package/dist/cjs/association/schema.test.js +13 -54
  108. package/dist/cjs/authentication/factors/schema.d.ts +39 -49
  109. package/dist/cjs/authentication/factors/schema.d.ts.map +1 -1
  110. package/dist/cjs/authentication/factors/schema.js +59 -20
  111. package/dist/cjs/authentication/factors/schema.test.js +33 -34
  112. package/dist/cjs/authentication/index.d.ts +1 -0
  113. package/dist/cjs/authentication/index.d.ts.map +1 -1
  114. package/dist/cjs/authentication/index.js +2 -0
  115. package/dist/cjs/authentication/providers/schema.d.ts +23 -22
  116. package/dist/cjs/authentication/providers/schema.d.ts.map +1 -1
  117. package/dist/cjs/authentication/providers/schema.js +44 -9
  118. package/dist/cjs/authentication/sessions/resources.d.ts +4 -4
  119. package/dist/cjs/authentication/sessions/resources.d.ts.map +1 -1
  120. package/dist/cjs/authentication/sessions/resources.js +3 -3
  121. package/dist/cjs/authentication/sessions/schema.d.ts +96 -74
  122. package/dist/cjs/authentication/sessions/schema.d.ts.map +1 -1
  123. package/dist/cjs/authentication/sessions/schema.js +99 -33
  124. package/dist/cjs/authentication/sessions/schema.test.d.ts +2 -0
  125. package/dist/cjs/authentication/sessions/schema.test.d.ts.map +1 -0
  126. package/dist/cjs/authentication/sessions/schema.test.js +65 -0
  127. package/dist/cjs/authentication/settings/resources.d.ts +4 -4
  128. package/dist/cjs/authentication/settings/resources.d.ts.map +1 -1
  129. package/dist/cjs/authentication/settings/resources.js +2 -3
  130. package/dist/cjs/authentication/settings/schema.d.ts +45 -62
  131. package/dist/cjs/authentication/settings/schema.d.ts.map +1 -1
  132. package/dist/cjs/authentication/settings/schema.js +49 -14
  133. package/dist/cjs/authentication/settings/schema.test.js +409 -22
  134. package/dist/cjs/authentication/strategies/resources.d.ts +9 -8
  135. package/dist/cjs/authentication/strategies/resources.d.ts.map +1 -1
  136. package/dist/cjs/authentication/strategies/resources.js +11 -11
  137. package/dist/cjs/authentication/strategies/schema/base.d.ts +59 -53
  138. package/dist/cjs/authentication/strategies/schema/base.d.ts.map +1 -1
  139. package/dist/cjs/authentication/strategies/schema/base.js +68 -24
  140. package/dist/cjs/authentication/strategies/schema/schema.d.ts +126 -200
  141. package/dist/cjs/authentication/strategies/schema/schema.d.ts.map +1 -1
  142. package/dist/cjs/authentication/strategies/schema/schema.js +39 -6
  143. package/dist/cjs/authentication/strategies/schema/types/email.d.ts +62 -61
  144. package/dist/cjs/authentication/strategies/schema/types/email.d.ts.map +1 -1
  145. package/dist/cjs/authentication/strategies/schema/types/email.js +59 -16
  146. package/dist/cjs/authentication/strategies/schema/types/email.test.js +49 -49
  147. package/dist/cjs/authentication/strategies/schema/types/totp.d.ts +108 -95
  148. package/dist/cjs/authentication/strategies/schema/types/totp.d.ts.map +1 -1
  149. package/dist/cjs/authentication/strategies/schema/types/totp.js +83 -26
  150. package/dist/cjs/authorization/permissions/resources.d.ts +7 -7
  151. package/dist/cjs/authorization/permissions/resources.d.ts.map +1 -1
  152. package/dist/cjs/authorization/permissions/resources.js +6 -6
  153. package/dist/cjs/authorization/permissions/schema.d.ts +92 -88
  154. package/dist/cjs/authorization/permissions/schema.d.ts.map +1 -1
  155. package/dist/cjs/authorization/permissions/schema.js +78 -37
  156. package/dist/cjs/authorization/permissions/schema.test.js +54 -62
  157. package/dist/cjs/authorization/roles/resources.d.ts +7 -7
  158. package/dist/cjs/authorization/roles/resources.d.ts.map +1 -1
  159. package/dist/cjs/authorization/roles/resources.js +6 -6
  160. package/dist/cjs/authorization/roles/schema.d.ts +102 -98
  161. package/dist/cjs/authorization/roles/schema.d.ts.map +1 -1
  162. package/dist/cjs/authorization/roles/schema.js +74 -38
  163. package/dist/cjs/authorization/roles/schema.test.js +55 -62
  164. package/dist/cjs/authorization/schema.d.ts +7 -6
  165. package/dist/cjs/authorization/schema.d.ts.map +1 -1
  166. package/dist/cjs/authorization/schema.js +42 -3
  167. package/dist/cjs/common/index.d.ts +2 -0
  168. package/dist/cjs/common/index.d.ts.map +1 -1
  169. package/dist/cjs/common/resources/authorization.d.ts +18 -1
  170. package/dist/cjs/common/resources/authorization.d.ts.map +1 -1
  171. package/dist/cjs/common/resources/authorization.js +6 -0
  172. package/dist/cjs/common/resources/init.d.ts +28 -11
  173. package/dist/cjs/common/resources/init.d.ts.map +1 -1
  174. package/dist/cjs/common/resources/init.js +81 -21
  175. package/dist/cjs/common/resources/init.test.js +62 -38
  176. package/dist/cjs/common/resources/operations.d.ts +7 -6
  177. package/dist/cjs/common/resources/operations.d.ts.map +1 -1
  178. package/dist/cjs/common/resources/operations.js +44 -21
  179. package/dist/cjs/common/resources/operations.test.js +47 -17
  180. package/dist/cjs/common/resources/utils.d.ts +0 -9
  181. package/dist/cjs/common/resources/utils.d.ts.map +1 -1
  182. package/dist/cjs/common/resources/utils.js +0 -26
  183. package/dist/cjs/common/resources/utils.test.js +2 -31
  184. package/dist/cjs/common/schema/aggregate.d.ts +6 -5
  185. package/dist/cjs/common/schema/aggregate.d.ts.map +1 -1
  186. package/dist/cjs/common/schema/aggregate.js +37 -4
  187. package/dist/cjs/common/schema/aggregate.test.js +21 -22
  188. package/dist/cjs/common/schema/collection.d.ts +13 -14
  189. package/dist/cjs/common/schema/collection.d.ts.map +1 -1
  190. package/dist/cjs/common/schema/collection.js +40 -5
  191. package/dist/cjs/common/schema/collection.test.js +99 -48
  192. package/dist/cjs/common/schema/dates.d.ts +43 -26
  193. package/dist/cjs/common/schema/dates.d.ts.map +1 -1
  194. package/dist/cjs/common/schema/dates.js +63 -12
  195. package/dist/cjs/common/schema/dates.test.js +24 -13
  196. package/dist/cjs/common/schema/id.d.ts +2 -1
  197. package/dist/cjs/common/schema/id.d.ts.map +1 -1
  198. package/dist/cjs/common/schema/id.js +35 -2
  199. package/dist/cjs/common/schema/id.test.js +70 -38
  200. package/dist/cjs/common/schema/jwt.d.ts +22 -14
  201. package/dist/cjs/common/schema/jwt.d.ts.map +1 -1
  202. package/dist/cjs/common/schema/jwt.js +37 -8
  203. package/dist/cjs/common/schema/jwt.test.js +22 -25
  204. package/dist/cjs/common/schema/metadata.d.ts +86 -49
  205. package/dist/cjs/common/schema/metadata.d.ts.map +1 -1
  206. package/dist/cjs/common/schema/metadata.js +154 -75
  207. package/dist/cjs/common/schema/metadata.test.js +198 -67
  208. package/dist/cjs/common/schema/pagination.d.ts +15 -5
  209. package/dist/cjs/common/schema/pagination.d.ts.map +1 -1
  210. package/dist/cjs/common/schema/pagination.js +46 -4
  211. package/dist/cjs/common/schema/pagination.test.js +55 -36
  212. package/dist/cjs/common/schema/schema.d.ts +4 -4
  213. package/dist/cjs/common/schema/schema.d.ts.map +1 -1
  214. package/dist/cjs/common/schema/schema.js +28 -5
  215. package/dist/cjs/common/schema/schema.test.js +42 -15
  216. package/dist/cjs/common/schema/sets.d.ts +6 -2
  217. package/dist/cjs/common/schema/sets.d.ts.map +1 -1
  218. package/dist/cjs/common/schema/sets.js +50 -7
  219. package/dist/cjs/common/schema/url.d.ts +21 -0
  220. package/dist/cjs/common/schema/url.d.ts.map +1 -1
  221. package/dist/cjs/common/schema/url.js +79 -0
  222. package/dist/cjs/common/schema/url.test.js +10 -0
  223. package/dist/cjs/customer/organization/schema.d.ts +59 -46
  224. package/dist/cjs/customer/organization/schema.d.ts.map +1 -1
  225. package/dist/cjs/customer/organization/schema.js +76 -26
  226. package/dist/cjs/customer/schema.d.ts +7 -6
  227. package/dist/cjs/customer/schema.d.ts.map +1 -1
  228. package/dist/cjs/customer/schema.js +42 -3
  229. package/dist/cjs/customer/users/resources.d.ts +7 -7
  230. package/dist/cjs/customer/users/resources.d.ts.map +1 -1
  231. package/dist/cjs/customer/users/resources.js +6 -6
  232. package/dist/cjs/customer/users/schema.d.ts +213 -104
  233. package/dist/cjs/customer/users/schema.d.ts.map +1 -1
  234. package/dist/cjs/customer/users/schema.js +141 -56
  235. package/dist/cjs/customer/users/schema.test.js +591 -60
  236. package/dist/cjs/customer/users/utils.d.ts +3 -2
  237. package/dist/cjs/customer/users/utils.d.ts.map +1 -1
  238. package/dist/cjs/identity/schema.d.ts +5 -1
  239. package/dist/cjs/identity/schema.d.ts.map +1 -1
  240. package/dist/cjs/identity/schema.js +38 -2
  241. package/dist/cjs/identity/schema.test.js +21 -16
  242. package/dist/cjs/oauth/authorize/schema/grants/authorization-code.d.ts +34 -28
  243. package/dist/cjs/oauth/authorize/schema/grants/authorization-code.d.ts.map +1 -1
  244. package/dist/cjs/oauth/authorize/schema/grants/authorization-code.js +93 -38
  245. package/dist/cjs/oauth/authorize/schema/grants/authorization-code.test.js +47 -48
  246. package/dist/cjs/oauth/authorize/schema/grants/common.d.ts +6 -0
  247. package/dist/cjs/oauth/authorize/schema/grants/common.d.ts.map +1 -0
  248. package/dist/cjs/oauth/authorize/schema/grants/common.js +47 -0
  249. package/dist/cjs/oauth/authorize/schema/grants/implicit.d.ts +18 -10
  250. package/dist/cjs/oauth/authorize/schema/grants/implicit.d.ts.map +1 -1
  251. package/dist/cjs/oauth/authorize/schema/grants/implicit.js +56 -11
  252. package/dist/cjs/oauth/authorize/schema/schema.d.ts +48 -36
  253. package/dist/cjs/oauth/authorize/schema/schema.d.ts.map +1 -1
  254. package/dist/cjs/oauth/authorize/schema/schema.js +4 -2
  255. package/dist/cjs/oauth/common/schema.d.ts +24 -7
  256. package/dist/cjs/oauth/common/schema.d.ts.map +1 -1
  257. package/dist/cjs/oauth/common/schema.js +59 -8
  258. package/dist/cjs/oauth/common/schema.test.js +22 -30
  259. package/dist/cjs/oauth/index.d.ts +3 -3
  260. package/dist/cjs/oauth/index.d.ts.map +1 -1
  261. package/dist/cjs/oauth/index.js +8 -25
  262. package/dist/cjs/oauth/token/schema/grants/authorization-code.d.ts +16 -9
  263. package/dist/cjs/oauth/token/schema/grants/authorization-code.d.ts.map +1 -1
  264. package/dist/cjs/oauth/token/schema/grants/authorization-code.js +66 -12
  265. package/dist/cjs/oauth/token/schema/grants/client-credentials.d.ts +16 -17
  266. package/dist/cjs/oauth/token/schema/grants/client-credentials.d.ts.map +1 -1
  267. package/dist/cjs/oauth/token/schema/grants/client-credentials.js +53 -16
  268. package/dist/cjs/oauth/token/schema/grants/common.d.ts +6 -0
  269. package/dist/cjs/oauth/token/schema/grants/common.d.ts.map +1 -0
  270. package/dist/cjs/oauth/token/schema/grants/common.js +52 -0
  271. package/dist/cjs/oauth/token/schema/grants/refresh-token.d.ts +15 -8
  272. package/dist/cjs/oauth/token/schema/grants/refresh-token.d.ts.map +1 -1
  273. package/dist/cjs/oauth/token/schema/grants/refresh-token.js +57 -11
  274. package/dist/cjs/oauth/token/schema/schema.d.ts +48 -21
  275. package/dist/cjs/oauth/token/schema/schema.d.ts.map +1 -1
  276. package/dist/cjs/oauth/token/schema/schema.js +79 -2
  277. package/dist/cjs/oauth/token/schema/schema.test.js +44 -28
  278. package/dist/cjs/workspace/authorization/schema.d.ts +62 -27
  279. package/dist/cjs/workspace/authorization/schema.d.ts.map +1 -1
  280. package/dist/cjs/workspace/authorization/schema.js +58 -13
  281. package/dist/cjs/workspace/branding/schema.d.ts +47 -37
  282. package/dist/cjs/workspace/branding/schema.d.ts.map +1 -1
  283. package/dist/cjs/workspace/branding/schema.js +61 -16
  284. package/dist/cjs/workspace/membership/schema.d.ts +42 -20
  285. package/dist/cjs/workspace/membership/schema.d.ts.map +1 -1
  286. package/dist/cjs/workspace/membership/schema.js +47 -7
  287. package/dist/cjs/workspace/registration/schema.d.ts +41 -27
  288. package/dist/cjs/workspace/registration/schema.d.ts.map +1 -1
  289. package/dist/cjs/workspace/registration/schema.js +63 -14
  290. package/dist/cjs/workspace/settings/schema.d.ts +20 -19
  291. package/dist/cjs/workspace/settings/schema.d.ts.map +1 -1
  292. package/dist/cjs/workspace/settings/schema.js +48 -8
  293. package/dist/cjs/workspace/settings/schema.test.js +18 -19
  294. package/dist/cjs/workspace/tenant/schema.d.ts +88 -57
  295. package/dist/cjs/workspace/tenant/schema.d.ts.map +1 -1
  296. package/dist/cjs/workspace/tenant/schema.js +59 -13
  297. package/dist/cjs/workspace/tenant/schema.test.d.ts +2 -0
  298. package/dist/cjs/workspace/tenant/schema.test.d.ts.map +1 -0
  299. package/dist/cjs/workspace/tenant/schema.test.js +235 -0
  300. package/dist/cjs/workspace/user/notifications/schema.d.ts +70 -56
  301. package/dist/cjs/workspace/user/notifications/schema.d.ts.map +1 -1
  302. package/dist/cjs/workspace/user/notifications/schema.js +76 -30
  303. package/dist/cjs/workspace/user/preferences/schema.d.ts +29 -25
  304. package/dist/cjs/workspace/user/preferences/schema.d.ts.map +1 -1
  305. package/dist/cjs/workspace/user/preferences/schema.js +57 -12
  306. package/dist/esm/action/schema/base.d.ts +21 -21
  307. package/dist/esm/action/schema/base.d.ts.map +1 -1
  308. package/dist/esm/action/schema/base.js +17 -12
  309. package/dist/esm/action/schema/base.test.js +51 -36
  310. package/dist/esm/action/schema/operations/sign-up-verification.d.ts +21 -21
  311. package/dist/esm/action/schema/operations/sign-up-verification.d.ts.map +1 -1
  312. package/dist/esm/action/schema/operations/sign-up-verification.js +8 -7
  313. package/dist/esm/action/schema/operations/sign-up-verification.test.js +28 -29
  314. package/dist/esm/action/schema/operations/sign-up.d.ts +40 -43
  315. package/dist/esm/action/schema/operations/sign-up.d.ts.map +1 -1
  316. package/dist/esm/action/schema/operations/sign-up.js +19 -10
  317. package/dist/esm/action/schema/operations/sign-up.test.js +33 -34
  318. package/dist/esm/action/schema/operations/user-attribute-verification.d.ts +19 -19
  319. package/dist/esm/action/schema/operations/user-attribute-verification.d.ts.map +1 -1
  320. package/dist/esm/action/schema/operations/user-attribute-verification.js +6 -5
  321. package/dist/esm/action/schema/operations/user-attribute-verification.test.js +25 -26
  322. package/dist/esm/action/schema/schema.d.ts +49 -77
  323. package/dist/esm/action/schema/schema.d.ts.map +1 -1
  324. package/dist/esm/action/schema/schema.js +7 -5
  325. package/dist/esm/action/schema/schema.test.js +24 -51
  326. package/dist/esm/activity/resources.d.ts +3 -3
  327. package/dist/esm/activity/resources.d.ts.map +1 -1
  328. package/dist/esm/activity/resources.js +4 -4
  329. package/dist/esm/activity/resources.test.js +14 -13
  330. package/dist/esm/activity/schema/base.d.ts +88 -69
  331. package/dist/esm/activity/schema/base.d.ts.map +1 -1
  332. package/dist/esm/activity/schema/base.js +38 -26
  333. package/dist/esm/activity/schema/base.test.js +85 -55
  334. package/dist/esm/activity/schema/schema.d.ts +293 -226
  335. package/dist/esm/activity/schema/schema.d.ts.map +1 -1
  336. package/dist/esm/activity/schema/schema.test.js +47 -48
  337. package/dist/esm/activity/schema/types/authentication.d.ts +64 -46
  338. package/dist/esm/activity/schema/types/authentication.d.ts.map +1 -1
  339. package/dist/esm/activity/schema/types/authentication.js +16 -7
  340. package/dist/esm/activity/schema/types/authentication.test.js +37 -38
  341. package/dist/esm/activity/schema/types/authorization.d.ts +64 -46
  342. package/dist/esm/activity/schema/types/authorization.d.ts.map +1 -1
  343. package/dist/esm/activity/schema/types/authorization.js +16 -7
  344. package/dist/esm/activity/schema/types/authorization.test.js +41 -42
  345. package/dist/esm/activity/schema/types/note.d.ts +83 -70
  346. package/dist/esm/activity/schema/types/note.d.ts.map +1 -1
  347. package/dist/esm/activity/schema/types/note.js +20 -12
  348. package/dist/esm/activity/schema/types/note.test.js +48 -49
  349. package/dist/esm/activity/schema/types/operation.d.ts +64 -45
  350. package/dist/esm/activity/schema/types/operation.d.ts.map +1 -1
  351. package/dist/esm/activity/schema/types/operation.js +19 -8
  352. package/dist/esm/activity/schema/types/operation.test.js +34 -35
  353. package/dist/esm/activity/schema/types/unknown.d.ts +50 -41
  354. package/dist/esm/activity/schema/types/unknown.d.ts.map +1 -1
  355. package/dist/esm/activity/schema/types/unknown.js +12 -6
  356. package/dist/esm/activity/schema/types/unknown.test.js +29 -30
  357. package/dist/esm/app/authorization/resources.d.ts +4 -4
  358. package/dist/esm/app/authorization/resources.d.ts.map +1 -1
  359. package/dist/esm/app/authorization/resources.js +3 -7
  360. package/dist/esm/app/authorization/schema.d.ts +90 -52
  361. package/dist/esm/app/authorization/schema.d.ts.map +1 -1
  362. package/dist/esm/app/authorization/schema.js +58 -66
  363. package/dist/esm/app/authorization/schema.test.js +155 -74
  364. package/dist/esm/app/oauth/resources.d.ts +4 -4
  365. package/dist/esm/app/oauth/resources.d.ts.map +1 -1
  366. package/dist/esm/app/oauth/resources.js +3 -4
  367. package/dist/esm/app/oauth/schema.d.ts +34 -41
  368. package/dist/esm/app/oauth/schema.d.ts.map +1 -1
  369. package/dist/esm/app/oauth/schema.js +25 -19
  370. package/dist/esm/app/oauth/schema.test.js +39 -40
  371. package/dist/esm/app/oidc/resources.d.ts +6 -6
  372. package/dist/esm/app/oidc/resources.d.ts.map +1 -1
  373. package/dist/esm/app/oidc/resources.js +5 -6
  374. package/dist/esm/app/oidc/schema.d.ts +26 -37
  375. package/dist/esm/app/oidc/schema.d.ts.map +1 -1
  376. package/dist/esm/app/oidc/schema.js +19 -15
  377. package/dist/esm/app/oidc/schema.test.js +46 -27
  378. package/dist/esm/app/registration/resources.d.ts +4 -4
  379. package/dist/esm/app/registration/resources.d.ts.map +1 -1
  380. package/dist/esm/app/registration/resources.js +3 -4
  381. package/dist/esm/app/registration/resources.test.js +14 -13
  382. package/dist/esm/app/registration/schema.d.ts +24 -31
  383. package/dist/esm/app/registration/schema.d.ts.map +1 -1
  384. package/dist/esm/app/registration/schema.js +25 -18
  385. package/dist/esm/app/registration/schema.test.js +68 -150
  386. package/dist/esm/app/resources.d.ts +7 -7
  387. package/dist/esm/app/resources.d.ts.map +1 -1
  388. package/dist/esm/app/resources.js +8 -8
  389. package/dist/esm/app/resources.test.js +14 -13
  390. package/dist/esm/app/saml/resources.d.ts +6 -6
  391. package/dist/esm/app/saml/resources.d.ts.map +1 -1
  392. package/dist/esm/app/saml/resources.js +5 -6
  393. package/dist/esm/app/saml/schema.d.ts +26 -37
  394. package/dist/esm/app/saml/schema.d.ts.map +1 -1
  395. package/dist/esm/app/saml/schema.js +19 -15
  396. package/dist/esm/app/schema.d.ts +72 -68
  397. package/dist/esm/app/schema.d.ts.map +1 -1
  398. package/dist/esm/app/schema.js +45 -37
  399. package/dist/esm/app/schema.test.js +129 -43
  400. package/dist/esm/association/resources.d.ts +5 -5
  401. package/dist/esm/association/resources.d.ts.map +1 -1
  402. package/dist/esm/association/resources.js +6 -8
  403. package/dist/esm/association/schema.d.ts +270 -182
  404. package/dist/esm/association/schema.d.ts.map +1 -1
  405. package/dist/esm/association/schema.js +36 -31
  406. package/dist/esm/association/schema.test.js +14 -55
  407. package/dist/esm/authentication/factors/schema.d.ts +39 -49
  408. package/dist/esm/authentication/factors/schema.d.ts.map +1 -1
  409. package/dist/esm/authentication/factors/schema.js +26 -20
  410. package/dist/esm/authentication/factors/schema.test.js +33 -34
  411. package/dist/esm/authentication/index.d.ts +1 -0
  412. package/dist/esm/authentication/index.d.ts.map +1 -1
  413. package/dist/esm/authentication/index.js +2 -0
  414. package/dist/esm/authentication/providers/schema.d.ts +23 -22
  415. package/dist/esm/authentication/providers/schema.d.ts.map +1 -1
  416. package/dist/esm/authentication/providers/schema.js +13 -11
  417. package/dist/esm/authentication/sessions/resources.d.ts +4 -4
  418. package/dist/esm/authentication/sessions/resources.d.ts.map +1 -1
  419. package/dist/esm/authentication/sessions/resources.js +5 -5
  420. package/dist/esm/authentication/sessions/schema.d.ts +96 -74
  421. package/dist/esm/authentication/sessions/schema.d.ts.map +1 -1
  422. package/dist/esm/authentication/sessions/schema.js +67 -34
  423. package/dist/esm/authentication/sessions/schema.test.d.ts +2 -0
  424. package/dist/esm/authentication/sessions/schema.test.d.ts.map +1 -0
  425. package/dist/esm/authentication/sessions/schema.test.js +63 -0
  426. package/dist/esm/authentication/settings/resources.d.ts +4 -4
  427. package/dist/esm/authentication/settings/resources.d.ts.map +1 -1
  428. package/dist/esm/authentication/settings/resources.js +3 -4
  429. package/dist/esm/authentication/settings/schema.d.ts +45 -62
  430. package/dist/esm/authentication/settings/schema.d.ts.map +1 -1
  431. package/dist/esm/authentication/settings/schema.js +18 -16
  432. package/dist/esm/authentication/settings/schema.test.js +409 -22
  433. package/dist/esm/authentication/strategies/resources.d.ts +9 -8
  434. package/dist/esm/authentication/strategies/resources.d.ts.map +1 -1
  435. package/dist/esm/authentication/strategies/resources.js +13 -13
  436. package/dist/esm/authentication/strategies/schema/base.d.ts +59 -53
  437. package/dist/esm/authentication/strategies/schema/base.d.ts.map +1 -1
  438. package/dist/esm/authentication/strategies/schema/base.js +36 -25
  439. package/dist/esm/authentication/strategies/schema/schema.d.ts +126 -200
  440. package/dist/esm/authentication/strategies/schema/schema.d.ts.map +1 -1
  441. package/dist/esm/authentication/strategies/schema/schema.js +17 -6
  442. package/dist/esm/authentication/strategies/schema/types/email.d.ts +62 -61
  443. package/dist/esm/authentication/strategies/schema/types/email.d.ts.map +1 -1
  444. package/dist/esm/authentication/strategies/schema/types/email.js +25 -15
  445. package/dist/esm/authentication/strategies/schema/types/email.test.js +49 -49
  446. package/dist/esm/authentication/strategies/schema/types/totp.d.ts +108 -95
  447. package/dist/esm/authentication/strategies/schema/types/totp.d.ts.map +1 -1
  448. package/dist/esm/authentication/strategies/schema/types/totp.js +51 -27
  449. package/dist/esm/authorization/permissions/resources.d.ts +7 -7
  450. package/dist/esm/authorization/permissions/resources.d.ts.map +1 -1
  451. package/dist/esm/authorization/permissions/resources.js +8 -8
  452. package/dist/esm/authorization/permissions/schema.d.ts +92 -88
  453. package/dist/esm/authorization/permissions/schema.d.ts.map +1 -1
  454. package/dist/esm/authorization/permissions/schema.js +47 -39
  455. package/dist/esm/authorization/permissions/schema.test.js +54 -62
  456. package/dist/esm/authorization/roles/resources.d.ts +7 -7
  457. package/dist/esm/authorization/roles/resources.d.ts.map +1 -1
  458. package/dist/esm/authorization/roles/resources.js +8 -8
  459. package/dist/esm/authorization/roles/schema.d.ts +102 -98
  460. package/dist/esm/authorization/roles/schema.d.ts.map +1 -1
  461. package/dist/esm/authorization/roles/schema.js +43 -40
  462. package/dist/esm/authorization/roles/schema.test.js +55 -62
  463. package/dist/esm/authorization/schema.d.ts +7 -6
  464. package/dist/esm/authorization/schema.d.ts.map +1 -1
  465. package/dist/esm/authorization/schema.js +9 -3
  466. package/dist/esm/common/index.d.ts +2 -0
  467. package/dist/esm/common/index.d.ts.map +1 -1
  468. package/dist/esm/common/resources/authorization.d.ts +18 -1
  469. package/dist/esm/common/resources/authorization.d.ts.map +1 -1
  470. package/dist/esm/common/resources/authorization.js +5 -1
  471. package/dist/esm/common/resources/init.d.ts +28 -11
  472. package/dist/esm/common/resources/init.d.ts.map +1 -1
  473. package/dist/esm/common/resources/init.js +47 -21
  474. package/dist/esm/common/resources/init.test.js +63 -39
  475. package/dist/esm/common/resources/operations.d.ts +7 -6
  476. package/dist/esm/common/resources/operations.d.ts.map +1 -1
  477. package/dist/esm/common/resources/operations.js +41 -19
  478. package/dist/esm/common/resources/operations.test.js +48 -18
  479. package/dist/esm/common/resources/utils.d.ts +0 -9
  480. package/dist/esm/common/resources/utils.d.ts.map +1 -1
  481. package/dist/esm/common/resources/utils.js +0 -24
  482. package/dist/esm/common/resources/utils.test.js +3 -32
  483. package/dist/esm/common/schema/aggregate.d.ts +6 -5
  484. package/dist/esm/common/schema/aggregate.d.ts.map +1 -1
  485. package/dist/esm/common/schema/aggregate.js +4 -4
  486. package/dist/esm/common/schema/aggregate.test.js +21 -22
  487. package/dist/esm/common/schema/collection.d.ts +13 -14
  488. package/dist/esm/common/schema/collection.d.ts.map +1 -1
  489. package/dist/esm/common/schema/collection.js +5 -5
  490. package/dist/esm/common/schema/collection.test.js +66 -48
  491. package/dist/esm/common/schema/dates.d.ts +43 -26
  492. package/dist/esm/common/schema/dates.d.ts.map +1 -1
  493. package/dist/esm/common/schema/dates.js +29 -11
  494. package/dist/esm/common/schema/dates.test.js +24 -13
  495. package/dist/esm/common/schema/id.d.ts +2 -1
  496. package/dist/esm/common/schema/id.d.ts.map +1 -1
  497. package/dist/esm/common/schema/id.js +2 -2
  498. package/dist/esm/common/schema/id.test.js +70 -38
  499. package/dist/esm/common/schema/jwt.d.ts +22 -14
  500. package/dist/esm/common/schema/jwt.d.ts.map +1 -1
  501. package/dist/esm/common/schema/jwt.js +3 -7
  502. package/dist/esm/common/schema/jwt.test.js +22 -25
  503. package/dist/esm/common/schema/metadata.d.ts +86 -49
  504. package/dist/esm/common/schema/metadata.d.ts.map +1 -1
  505. package/dist/esm/common/schema/metadata.js +120 -74
  506. package/dist/esm/common/schema/metadata.test.js +199 -68
  507. package/dist/esm/common/schema/pagination.d.ts +15 -5
  508. package/dist/esm/common/schema/pagination.d.ts.map +1 -1
  509. package/dist/esm/common/schema/pagination.js +13 -4
  510. package/dist/esm/common/schema/pagination.test.js +55 -36
  511. package/dist/esm/common/schema/schema.d.ts +4 -4
  512. package/dist/esm/common/schema/schema.d.ts.map +1 -1
  513. package/dist/esm/common/schema/schema.js +6 -5
  514. package/dist/esm/common/schema/schema.test.js +9 -15
  515. package/dist/esm/common/schema/sets.d.ts +6 -2
  516. package/dist/esm/common/schema/sets.d.ts.map +1 -1
  517. package/dist/esm/common/schema/sets.js +16 -6
  518. package/dist/esm/common/schema/url.d.ts +21 -0
  519. package/dist/esm/common/schema/url.d.ts.map +1 -1
  520. package/dist/esm/common/schema/url.js +45 -0
  521. package/dist/esm/common/schema/url.test.js +11 -1
  522. package/dist/esm/customer/organization/schema.d.ts +59 -46
  523. package/dist/esm/customer/organization/schema.d.ts.map +1 -1
  524. package/dist/esm/customer/organization/schema.js +43 -26
  525. package/dist/esm/customer/schema.d.ts +7 -6
  526. package/dist/esm/customer/schema.d.ts.map +1 -1
  527. package/dist/esm/customer/schema.js +9 -3
  528. package/dist/esm/customer/users/resources.d.ts +7 -7
  529. package/dist/esm/customer/users/resources.d.ts.map +1 -1
  530. package/dist/esm/customer/users/resources.js +8 -8
  531. package/dist/esm/customer/users/schema.d.ts +213 -104
  532. package/dist/esm/customer/users/schema.d.ts.map +1 -1
  533. package/dist/esm/customer/users/schema.js +107 -55
  534. package/dist/esm/customer/users/schema.test.js +592 -61
  535. package/dist/esm/customer/users/utils.d.ts +3 -2
  536. package/dist/esm/customer/users/utils.d.ts.map +1 -1
  537. package/dist/esm/customer/users/utils.test.js +1 -1
  538. package/dist/esm/identity/schema.d.ts +5 -1
  539. package/dist/esm/identity/schema.d.ts.map +1 -1
  540. package/dist/esm/identity/schema.js +5 -2
  541. package/dist/esm/identity/schema.test.js +21 -16
  542. package/dist/esm/oauth/authorize/schema/grants/authorization-code.d.ts +34 -28
  543. package/dist/esm/oauth/authorize/schema/grants/authorization-code.d.ts.map +1 -1
  544. package/dist/esm/oauth/authorize/schema/grants/authorization-code.js +60 -38
  545. package/dist/esm/oauth/authorize/schema/grants/authorization-code.test.js +48 -49
  546. package/dist/esm/oauth/authorize/schema/grants/common.d.ts +6 -0
  547. package/dist/esm/oauth/authorize/schema/grants/common.d.ts.map +1 -0
  548. package/dist/esm/oauth/authorize/schema/grants/common.js +11 -0
  549. package/dist/esm/oauth/authorize/schema/grants/implicit.d.ts +18 -10
  550. package/dist/esm/oauth/authorize/schema/grants/implicit.d.ts.map +1 -1
  551. package/dist/esm/oauth/authorize/schema/grants/implicit.js +22 -10
  552. package/dist/esm/oauth/authorize/schema/schema.d.ts +48 -36
  553. package/dist/esm/oauth/authorize/schema/schema.d.ts.map +1 -1
  554. package/dist/esm/oauth/authorize/schema/schema.js +4 -3
  555. package/dist/esm/oauth/common/schema.d.ts +24 -7
  556. package/dist/esm/oauth/common/schema.d.ts.map +1 -1
  557. package/dist/esm/oauth/common/schema.js +25 -7
  558. package/dist/esm/oauth/common/schema.test.js +23 -31
  559. package/dist/esm/oauth/index.d.ts +3 -3
  560. package/dist/esm/oauth/index.d.ts.map +1 -1
  561. package/dist/esm/oauth/index.js +3 -3
  562. package/dist/esm/oauth/token/schema/grants/authorization-code.d.ts +16 -9
  563. package/dist/esm/oauth/token/schema/grants/authorization-code.d.ts.map +1 -1
  564. package/dist/esm/oauth/token/schema/grants/authorization-code.js +32 -11
  565. package/dist/esm/oauth/token/schema/grants/client-credentials.d.ts +16 -17
  566. package/dist/esm/oauth/token/schema/grants/client-credentials.d.ts.map +1 -1
  567. package/dist/esm/oauth/token/schema/grants/client-credentials.js +19 -15
  568. package/dist/esm/oauth/token/schema/grants/common.d.ts +6 -0
  569. package/dist/esm/oauth/token/schema/grants/common.d.ts.map +1 -0
  570. package/dist/esm/oauth/token/schema/grants/common.js +16 -0
  571. package/dist/esm/oauth/token/schema/grants/refresh-token.d.ts +15 -8
  572. package/dist/esm/oauth/token/schema/grants/refresh-token.d.ts.map +1 -1
  573. package/dist/esm/oauth/token/schema/grants/refresh-token.js +23 -10
  574. package/dist/esm/oauth/token/schema/schema.d.ts +48 -21
  575. package/dist/esm/oauth/token/schema/schema.d.ts.map +1 -1
  576. package/dist/esm/oauth/token/schema/schema.js +59 -4
  577. package/dist/esm/oauth/token/schema/schema.test.js +45 -29
  578. package/dist/esm/workspace/authorization/schema.d.ts +62 -27
  579. package/dist/esm/workspace/authorization/schema.d.ts.map +1 -1
  580. package/dist/esm/workspace/authorization/schema.js +27 -15
  581. package/dist/esm/workspace/branding/schema.d.ts +47 -37
  582. package/dist/esm/workspace/branding/schema.d.ts.map +1 -1
  583. package/dist/esm/workspace/branding/schema.js +29 -17
  584. package/dist/esm/workspace/membership/schema.d.ts +42 -20
  585. package/dist/esm/workspace/membership/schema.d.ts.map +1 -1
  586. package/dist/esm/workspace/membership/schema.js +14 -7
  587. package/dist/esm/workspace/registration/schema.d.ts +41 -27
  588. package/dist/esm/workspace/registration/schema.d.ts.map +1 -1
  589. package/dist/esm/workspace/registration/schema.js +32 -16
  590. package/dist/esm/workspace/settings/schema.d.ts +20 -19
  591. package/dist/esm/workspace/settings/schema.d.ts.map +1 -1
  592. package/dist/esm/workspace/settings/schema.js +16 -9
  593. package/dist/esm/workspace/settings/schema.test.js +18 -19
  594. package/dist/esm/workspace/tenant/schema.d.ts +88 -57
  595. package/dist/esm/workspace/tenant/schema.d.ts.map +1 -1
  596. package/dist/esm/workspace/tenant/schema.js +26 -13
  597. package/dist/esm/workspace/tenant/schema.test.d.ts +2 -0
  598. package/dist/esm/workspace/tenant/schema.test.d.ts.map +1 -0
  599. package/dist/esm/workspace/tenant/schema.test.js +233 -0
  600. package/dist/esm/workspace/user/notifications/schema.d.ts +70 -56
  601. package/dist/esm/workspace/user/notifications/schema.d.ts.map +1 -1
  602. package/dist/esm/workspace/user/notifications/schema.js +42 -29
  603. package/dist/esm/workspace/user/preferences/schema.d.ts +29 -25
  604. package/dist/esm/workspace/user/preferences/schema.d.ts.map +1 -1
  605. package/dist/esm/workspace/user/preferences/schema.js +25 -13
  606. package/package.json +3 -3
  607. package/dist/cjs/action/schema/operations/set-password.d.ts +0 -31
  608. package/dist/cjs/action/schema/operations/set-password.d.ts.map +0 -1
  609. package/dist/cjs/action/schema/operations/set-password.js +0 -18
  610. package/dist/cjs/action/schema/operations/set-password.test.d.ts +0 -2
  611. package/dist/cjs/action/schema/operations/set-password.test.d.ts.map +0 -1
  612. package/dist/cjs/action/schema/operations/set-password.test.js +0 -167
  613. package/dist/cjs/authentication/strategies/schema/types/password.d.ts +0 -132
  614. package/dist/cjs/authentication/strategies/schema/types/password.d.ts.map +0 -1
  615. package/dist/cjs/authentication/strategies/schema/types/password.js +0 -52
  616. package/dist/cjs/common/schema/sets.test.d.ts +0 -2
  617. package/dist/cjs/common/schema/sets.test.d.ts.map +0 -1
  618. package/dist/cjs/common/schema/sets.test.js +0 -84
  619. package/dist/esm/action/schema/operations/set-password.d.ts +0 -31
  620. package/dist/esm/action/schema/operations/set-password.d.ts.map +0 -1
  621. package/dist/esm/action/schema/operations/set-password.js +0 -15
  622. package/dist/esm/action/schema/operations/set-password.test.d.ts +0 -2
  623. package/dist/esm/action/schema/operations/set-password.test.d.ts.map +0 -1
  624. package/dist/esm/action/schema/operations/set-password.test.js +0 -165
  625. package/dist/esm/authentication/strategies/schema/types/password.d.ts +0 -132
  626. package/dist/esm/authentication/strategies/schema/types/password.d.ts.map +0 -1
  627. package/dist/esm/authentication/strategies/schema/types/password.js +0 -49
  628. package/dist/esm/common/schema/sets.test.d.ts +0 -2
  629. package/dist/esm/common/schema/sets.test.d.ts.map +0 -1
  630. package/dist/esm/common/schema/sets.test.js +0 -82
@@ -1,84 +1,276 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const arktype_1 = require("arktype");
4
3
  const vitest_1 = require("vitest");
5
4
  const schema_js_1 = require("../schema.js");
6
5
  const schema_js_2 = require("./schema.js");
7
6
  (0, vitest_1.describe)('Customer - User', () => {
7
+ (0, vitest_1.describe)('VerifiableAttribute', () => {
8
+ (0, vitest_1.test)('should have correct constants', () => {
9
+ (0, vitest_1.expect)(schema_js_2.VerifiableAttribute.EMAIL).toBe('email');
10
+ (0, vitest_1.expect)(schema_js_2.VerifiableAttribute.PHONE_NUMBER).toBe('phoneNumber');
11
+ });
12
+ });
13
+ (0, vitest_1.describe)('UserStatus', () => {
14
+ (0, vitest_1.test)('should have correct constants', () => {
15
+ (0, vitest_1.expect)(schema_js_2.UserStatus.ACTIVE).toBe('active');
16
+ (0, vitest_1.expect)(schema_js_2.UserStatus.SUSPENDED).toBe('suspended');
17
+ (0, vitest_1.expect)(schema_js_2.UserStatus.UNVERIFIED).toBe('unverified');
18
+ });
19
+ (0, vitest_1.test)('should parse valid status values', () => {
20
+ (0, vitest_1.expect)(schema_js_2.UserStatusSchema.safeParse('active').success).toBe(true);
21
+ (0, vitest_1.expect)(schema_js_2.UserStatusSchema.safeParse('suspended').success).toBe(true);
22
+ (0, vitest_1.expect)(schema_js_2.UserStatusSchema.safeParse('unverified').success).toBe(true);
23
+ });
24
+ (0, vitest_1.test)('should reject invalid status values', () => {
25
+ (0, vitest_1.expect)(schema_js_2.UserStatusSchema.safeParse('invalid').success).toBe(false);
26
+ (0, vitest_1.expect)(schema_js_2.UserStatusSchema.safeParse('').success).toBe(false);
27
+ });
28
+ });
29
+ (0, vitest_1.describe)('UserNamePropertiesSchema', () => {
30
+ (0, vitest_1.test)('should parse valid name properties', () => {
31
+ const result = schema_js_2.UserNamePropertiesSchema.safeParse({
32
+ givenName: 'John',
33
+ middleName: 'Robert',
34
+ familyName: 'Doe',
35
+ honorificPrefix: 'Dr.',
36
+ honorificSuffix: 'Jr.',
37
+ });
38
+ (0, vitest_1.expect)(result.success).toBe(true);
39
+ if (result.success) {
40
+ (0, vitest_1.expect)(result.data.givenName).toBe('John');
41
+ (0, vitest_1.expect)(result.data.familyName).toBe('Doe');
42
+ }
43
+ });
44
+ (0, vitest_1.test)('should transform null values to undefined', () => {
45
+ const result = schema_js_2.UserNamePropertiesSchema.safeParse({
46
+ givenName: null,
47
+ familyName: null,
48
+ });
49
+ (0, vitest_1.expect)(result.success).toBe(true);
50
+ if (result.success) {
51
+ (0, vitest_1.expect)(result.data.givenName).toBeUndefined();
52
+ (0, vitest_1.expect)(result.data.familyName).toBeUndefined();
53
+ }
54
+ });
55
+ (0, vitest_1.test)('should allow empty object', () => {
56
+ const result = schema_js_2.UserNamePropertiesSchema.safeParse({});
57
+ (0, vitest_1.expect)(result.success).toBe(true);
58
+ });
59
+ });
60
+ (0, vitest_1.describe)('UpdateUserNamePropertiesSchema', () => {
61
+ (0, vitest_1.test)('should parse valid name properties', () => {
62
+ const result = schema_js_2.UpdateUserNamePropertiesSchema.safeParse({
63
+ givenName: 'Jane',
64
+ familyName: 'Smith',
65
+ });
66
+ (0, vitest_1.expect)(result.success).toBe(true);
67
+ });
68
+ (0, vitest_1.test)('should allow null values without transforming', () => {
69
+ const result = schema_js_2.UpdateUserNamePropertiesSchema.safeParse({
70
+ givenName: null,
71
+ familyName: 'Smith',
72
+ });
73
+ (0, vitest_1.expect)(result.success).toBe(true);
74
+ if (result.success) {
75
+ (0, vitest_1.expect)(result.data.givenName).toBeNull();
76
+ }
77
+ });
78
+ });
79
+ (0, vitest_1.describe)('VerifiedEmailOrPhonePropertiesSchema', () => {
80
+ (0, vitest_1.test)('should parse valid verified email', () => {
81
+ const result = schema_js_2.VerifiedEmailOrPhonePropertiesSchema.safeParse({
82
+ verifiedEmail: 'test@example.com',
83
+ });
84
+ (0, vitest_1.expect)(result.success).toBe(true);
85
+ if (result.success) {
86
+ (0, vitest_1.expect)(result.data.verifiedEmail).toBe('test@example.com');
87
+ }
88
+ });
89
+ (0, vitest_1.test)('should parse valid verified phone number', () => {
90
+ const result = schema_js_2.VerifiedEmailOrPhonePropertiesSchema.safeParse({
91
+ verifiedPhoneNumber: '+1234567890',
92
+ });
93
+ (0, vitest_1.expect)(result.success).toBe(true);
94
+ if (result.success) {
95
+ (0, vitest_1.expect)(result.data.verifiedPhoneNumber).toBe('+1234567890');
96
+ }
97
+ });
98
+ (0, vitest_1.test)('should parse both fields together', () => {
99
+ const result = schema_js_2.VerifiedEmailOrPhonePropertiesSchema.safeParse({
100
+ verifiedEmail: 'verified@example.com',
101
+ verifiedPhoneNumber: '+1111111111',
102
+ });
103
+ (0, vitest_1.expect)(result.success).toBe(true);
104
+ if (result.success) {
105
+ (0, vitest_1.expect)(result.data.verifiedEmail).toBe('verified@example.com');
106
+ (0, vitest_1.expect)(result.data.verifiedPhoneNumber).toBe('+1111111111');
107
+ }
108
+ });
109
+ (0, vitest_1.test)('should transform null values to undefined', () => {
110
+ const result = schema_js_2.VerifiedEmailOrPhonePropertiesSchema.safeParse({
111
+ verifiedEmail: null,
112
+ verifiedPhoneNumber: null,
113
+ });
114
+ (0, vitest_1.expect)(result.success).toBe(true);
115
+ if (result.success) {
116
+ (0, vitest_1.expect)(result.data.verifiedEmail).toBeUndefined();
117
+ (0, vitest_1.expect)(result.data.verifiedPhoneNumber).toBeUndefined();
118
+ }
119
+ });
120
+ (0, vitest_1.test)('should reject invalid email format', () => {
121
+ const result = schema_js_2.VerifiedEmailOrPhonePropertiesSchema.safeParse({
122
+ verifiedEmail: 'not-an-email',
123
+ });
124
+ (0, vitest_1.expect)(result.success).toBe(false);
125
+ });
126
+ (0, vitest_1.test)('should allow empty object', () => {
127
+ const result = schema_js_2.VerifiedEmailOrPhonePropertiesSchema.safeParse({});
128
+ (0, vitest_1.expect)(result.success).toBe(true);
129
+ });
130
+ });
131
+ (0, vitest_1.describe)('UnverifiedEmailOrPhonePropertiesSchema', () => {
132
+ (0, vitest_1.test)('should parse valid unverified email', () => {
133
+ const result = schema_js_2.UnverifiedEmailOrPhonePropertiesSchema.safeParse({
134
+ unverifiedEmail: 'pending@example.com',
135
+ });
136
+ (0, vitest_1.expect)(result.success).toBe(true);
137
+ if (result.success) {
138
+ (0, vitest_1.expect)(result.data.unverifiedEmail).toBe('pending@example.com');
139
+ }
140
+ });
141
+ (0, vitest_1.test)('should parse valid unverified phone number', () => {
142
+ const result = schema_js_2.UnverifiedEmailOrPhonePropertiesSchema.safeParse({
143
+ unverifiedPhoneNumber: '+1987654321',
144
+ });
145
+ (0, vitest_1.expect)(result.success).toBe(true);
146
+ if (result.success) {
147
+ (0, vitest_1.expect)(result.data.unverifiedPhoneNumber).toBe('+1987654321');
148
+ }
149
+ });
150
+ (0, vitest_1.test)('should parse both fields together', () => {
151
+ const result = schema_js_2.UnverifiedEmailOrPhonePropertiesSchema.safeParse({
152
+ unverifiedEmail: 'pending@example.com',
153
+ unverifiedPhoneNumber: '+2222222222',
154
+ });
155
+ (0, vitest_1.expect)(result.success).toBe(true);
156
+ if (result.success) {
157
+ (0, vitest_1.expect)(result.data.unverifiedEmail).toBe('pending@example.com');
158
+ (0, vitest_1.expect)(result.data.unverifiedPhoneNumber).toBe('+2222222222');
159
+ }
160
+ });
161
+ (0, vitest_1.test)('should transform null values to undefined', () => {
162
+ const result = schema_js_2.UnverifiedEmailOrPhonePropertiesSchema.safeParse({
163
+ unverifiedEmail: null,
164
+ unverifiedPhoneNumber: null,
165
+ });
166
+ (0, vitest_1.expect)(result.success).toBe(true);
167
+ if (result.success) {
168
+ (0, vitest_1.expect)(result.data.unverifiedEmail).toBeUndefined();
169
+ (0, vitest_1.expect)(result.data.unverifiedPhoneNumber).toBeUndefined();
170
+ }
171
+ });
172
+ (0, vitest_1.test)('should reject invalid unverified email format', () => {
173
+ const result = schema_js_2.UnverifiedEmailOrPhonePropertiesSchema.safeParse({
174
+ unverifiedEmail: 'also-not-an-email',
175
+ });
176
+ (0, vitest_1.expect)(result.success).toBe(false);
177
+ });
178
+ (0, vitest_1.test)('should allow empty object', () => {
179
+ const result = schema_js_2.UnverifiedEmailOrPhonePropertiesSchema.safeParse({});
180
+ (0, vitest_1.expect)(result.success).toBe(true);
181
+ });
182
+ });
183
+ (0, vitest_1.describe)('EmailOrPhonePropertiesSchema', () => {
184
+ (0, vitest_1.test)('should parse email and phone number', () => {
185
+ const result = schema_js_2.EmailOrPhonePropertiesSchema.safeParse({
186
+ email: 'test@example.com',
187
+ phoneNumber: '+1234567890',
188
+ });
189
+ (0, vitest_1.expect)(result.success).toBe(true);
190
+ if (result.success) {
191
+ (0, vitest_1.expect)(result.data.email).toBe('test@example.com');
192
+ (0, vitest_1.expect)(result.data.phoneNumber).toBe('+1234567890');
193
+ }
194
+ });
195
+ (0, vitest_1.test)('should transform null values to undefined', () => {
196
+ const result = schema_js_2.EmailOrPhonePropertiesSchema.safeParse({
197
+ email: null,
198
+ phoneNumber: null,
199
+ });
200
+ (0, vitest_1.expect)(result.success).toBe(true);
201
+ if (result.success) {
202
+ (0, vitest_1.expect)(result.data.email).toBeUndefined();
203
+ (0, vitest_1.expect)(result.data.phoneNumber).toBeUndefined();
204
+ }
205
+ });
206
+ });
8
207
  (0, vitest_1.describe)('User Payload', () => {
9
208
  (0, vitest_1.test)('should parse attributes successfully', async () => {
10
209
  const item = {
11
210
  foo: 'bar',
12
211
  id: (0, schema_js_1.generateUserId)(),
13
- phoneNumber: '123',
212
+ verifiedPhoneNumber: '+12025551234',
14
213
  status: schema_js_2.UserStatus.ACTIVE,
15
214
  createdAt: new Date(),
16
215
  updatedAt: new Date(),
17
216
  };
18
- const result = (0, schema_js_2.UserPayloadSchema)(item);
19
- if (result instanceof arktype_1.type.errors) {
20
- console.log(result.summary);
217
+ const result = schema_js_2.UserPayloadSchema.safeParse(item);
218
+ (0, vitest_1.expect)(result.success).toBe(true);
219
+ if (result.success) {
220
+ (0, vitest_1.expect)(result.data.metadata).toBeUndefined();
21
221
  }
22
- (0, vitest_1.expect)(result).not.toBeInstanceOf(arktype_1.type.errors);
23
- (0, vitest_1.expect)(result?.metadata).to.undefined;
24
222
  });
25
- });
26
- (0, vitest_1.describe)('Insert User Payload', () => {
27
- (0, vitest_1.test)('should parse attributes successfully', async () => {
223
+ (0, vitest_1.test)('should parse with all verified and unverified email/phone properties', async () => {
28
224
  const item = {
29
- foo: 'bar',
30
225
  id: (0, schema_js_1.generateUserId)(),
31
- familyName: 'Foo',
32
- phoneNumber: '123',
226
+ verifiedEmail: 'verified@example.com',
227
+ unverifiedEmail: 'pending@example.com',
228
+ verifiedPhoneNumber: '+1234567890',
229
+ unverifiedPhoneNumber: '+1987654321',
230
+ status: schema_js_2.UserStatus.ACTIVE,
231
+ createdAt: new Date(),
232
+ updatedAt: new Date(),
33
233
  };
34
- const result = (0, schema_js_2.InsertUserPayloadSchema)(item);
35
- if (result instanceof arktype_1.type.errors) {
36
- console.log(result.summary);
234
+ const result = schema_js_2.UserPayloadSchema.safeParse(item);
235
+ (0, vitest_1.expect)(result.success).toBe(true);
236
+ if (result.success) {
237
+ (0, vitest_1.expect)(result.data.verifiedEmail).toBe('verified@example.com');
238
+ (0, vitest_1.expect)(result.data.unverifiedEmail).toBe('pending@example.com');
239
+ (0, vitest_1.expect)(result.data.verifiedPhoneNumber).toBe('+1234567890');
240
+ (0, vitest_1.expect)(result.data.unverifiedPhoneNumber).toBe('+1987654321');
37
241
  }
38
- (0, vitest_1.expect)(result).not.toBeInstanceOf(arktype_1.type.errors);
39
- (0, vitest_1.expect)(result?.metadata).to.undefined;
40
- (0, vitest_1.expect)(result?.familyName).to.equal(item.familyName);
41
242
  });
42
- (0, vitest_1.test)('should serialize successfully', async () => {
243
+ (0, vitest_1.test)('should provide email alias for verifiedEmail', async () => {
43
244
  const item = {
44
- foo: 'bar',
45
245
  id: (0, schema_js_1.generateUserId)(),
46
- phoneNumber: '123',
47
- metadata: new Map(),
48
- // status: UserStatus.ACTIVE,
49
- // createdAt: new Date(),
50
- // updatedAt: new Date(),
246
+ verifiedEmail: 'verified@example.com',
247
+ status: schema_js_2.UserStatus.ACTIVE,
248
+ createdAt: new Date(),
249
+ updatedAt: new Date(),
51
250
  };
52
- const result = (0, schema_js_2.InsertUserPayloadSchema)(item);
53
- if (result instanceof arktype_1.type.errors) {
54
- console.log(result.summary);
251
+ const result = schema_js_2.UserPayloadSchema.safeParse(item);
252
+ (0, vitest_1.expect)(result.success).toBe(true);
253
+ if (result.success) {
254
+ (0, vitest_1.expect)(result.data.email).toBe('verified@example.com');
255
+ (0, vitest_1.expect)(result.data.verifiedEmail).toBe('verified@example.com');
55
256
  }
56
- (0, vitest_1.expect)(result).not.toBeInstanceOf(arktype_1.type.errors);
57
- (0, vitest_1.expect)(result?.metadata).to.null;
58
257
  });
59
- (0, vitest_1.test)('should serialize nulls successfully', async () => {
60
- const payload = {
258
+ (0, vitest_1.test)('should provide phoneNumber alias for verifiedPhoneNumber', async () => {
259
+ const item = {
61
260
  id: (0, schema_js_1.generateUserId)(),
62
- status: 'unverified',
63
- givenName: null,
64
- middleName: null,
65
- familyName: null,
66
- honorificPrefix: null,
67
- honorificSuffix: null,
68
- email: null,
69
- verifiedEmail: null,
70
- phoneNumber: null,
71
- verifiedPhoneNumber: null,
72
- createdAt: '2025-04-02T03:50:40.812Z',
73
- updatedAt: '2025-04-02T03:50:40.812Z',
261
+ verifiedPhoneNumber: '+1234567890',
262
+ status: schema_js_2.UserStatus.ACTIVE,
263
+ createdAt: new Date(),
264
+ updatedAt: new Date(),
74
265
  };
75
- const result = (0, schema_js_2.UserPayloadSchema)(payload);
76
- if (result instanceof arktype_1.type.errors) {
77
- console.log(result.summary);
266
+ const result = schema_js_2.UserPayloadSchema.safeParse(item);
267
+ (0, vitest_1.expect)(result.success).toBe(true);
268
+ if (result.success) {
269
+ (0, vitest_1.expect)(result.data.phoneNumber).toBe('+1234567890');
270
+ (0, vitest_1.expect)(result.data.verifiedPhoneNumber).toBe('+1234567890');
78
271
  }
79
- (0, vitest_1.expect)(result).not.toBeInstanceOf(arktype_1.type.errors);
80
272
  });
81
- (0, vitest_1.test)('should serialize nulls successfully', async () => {
273
+ (0, vitest_1.test)('should serialize nulls to undefined', async () => {
82
274
  const payload = {
83
275
  id: (0, schema_js_1.generateUserId)(),
84
276
  status: 'unverified',
@@ -87,23 +279,362 @@ const schema_js_2 = require("./schema.js");
87
279
  familyName: null,
88
280
  honorificPrefix: null,
89
281
  honorificSuffix: null,
90
- email: null,
91
282
  verifiedEmail: null,
92
- phoneNumber: null,
283
+ unverifiedEmail: null,
93
284
  verifiedPhoneNumber: null,
285
+ unverifiedPhoneNumber: null,
94
286
  createdAt: '2025-04-02T03:50:40.812Z',
95
287
  updatedAt: '2025-04-02T03:50:40.812Z',
96
288
  };
97
- const test = (0, arktype_1.type)({
98
- foo: 'string.numeric.parse',
99
- bar: 'number',
100
- baz: 'string.date.iso.parse',
289
+ const result = schema_js_2.UserPayloadSchema.safeParse(payload);
290
+ (0, vitest_1.expect)(result.success).toBe(true);
291
+ if (result.success) {
292
+ (0, vitest_1.expect)(result.data.verifiedEmail).toBeUndefined();
293
+ (0, vitest_1.expect)(result.data.unverifiedEmail).toBeUndefined();
294
+ (0, vitest_1.expect)(result.data.verifiedPhoneNumber).toBeUndefined();
295
+ (0, vitest_1.expect)(result.data.unverifiedPhoneNumber).toBeUndefined();
296
+ (0, vitest_1.expect)(result.data.email).toBeUndefined();
297
+ (0, vitest_1.expect)(result.data.phoneNumber).toBeUndefined();
298
+ }
299
+ });
300
+ });
301
+ (0, vitest_1.describe)('User Schema', () => {
302
+ (0, vitest_1.test)('should parse complete user object', async () => {
303
+ const user = {
304
+ id: (0, schema_js_1.generateUserId)(),
305
+ givenName: 'John',
306
+ familyName: 'Doe',
307
+ verifiedEmail: 'john@example.com',
308
+ verifiedPhoneNumber: '+1234567890',
309
+ status: schema_js_2.UserStatus.ACTIVE,
310
+ lastLogin: new Date(),
311
+ createdAt: new Date(),
312
+ updatedAt: new Date(),
313
+ };
314
+ const result = schema_js_2.UserSchema.safeParse(user);
315
+ (0, vitest_1.expect)(result.success).toBe(true);
316
+ if (result.success) {
317
+ (0, vitest_1.expect)(result.data.givenName).toBe('John');
318
+ (0, vitest_1.expect)(result.data.verifiedEmail).toBe('john@example.com');
319
+ (0, vitest_1.expect)(result.data.verifiedPhoneNumber).toBe('+1234567890');
320
+ }
321
+ });
322
+ (0, vitest_1.test)('should provide email alias for verifiedEmail', async () => {
323
+ const user = {
324
+ id: (0, schema_js_1.generateUserId)(),
325
+ verifiedEmail: 'john@example.com',
326
+ status: schema_js_2.UserStatus.ACTIVE,
327
+ createdAt: new Date(),
328
+ updatedAt: new Date(),
329
+ };
330
+ const result = schema_js_2.UserSchema.safeParse(user);
331
+ (0, vitest_1.expect)(result.success).toBe(true);
332
+ if (result.success) {
333
+ (0, vitest_1.expect)(result.data.email).toBe('john@example.com');
334
+ (0, vitest_1.expect)(result.data.verifiedEmail).toBe('john@example.com');
335
+ }
336
+ });
337
+ (0, vitest_1.test)('should provide phoneNumber alias for verifiedPhoneNumber', async () => {
338
+ const user = {
339
+ id: (0, schema_js_1.generateUserId)(),
340
+ verifiedPhoneNumber: '+1234567890',
341
+ status: schema_js_2.UserStatus.ACTIVE,
342
+ createdAt: new Date(),
343
+ updatedAt: new Date(),
344
+ };
345
+ const result = schema_js_2.UserSchema.safeParse(user);
346
+ (0, vitest_1.expect)(result.success).toBe(true);
347
+ if (result.success) {
348
+ (0, vitest_1.expect)(result.data.phoneNumber).toBe('+1234567890');
349
+ (0, vitest_1.expect)(result.data.verifiedPhoneNumber).toBe('+1234567890');
350
+ }
351
+ });
352
+ (0, vitest_1.test)('should have undefined aliases when verified fields are undefined', async () => {
353
+ const user = {
354
+ id: (0, schema_js_1.generateUserId)(),
355
+ status: schema_js_2.UserStatus.ACTIVE,
356
+ createdAt: new Date(),
357
+ updatedAt: new Date(),
358
+ };
359
+ const result = schema_js_2.UserSchema.safeParse(user);
360
+ (0, vitest_1.expect)(result.success).toBe(true);
361
+ if (result.success) {
362
+ (0, vitest_1.expect)(result.data.email).toBeUndefined();
363
+ (0, vitest_1.expect)(result.data.phoneNumber).toBeUndefined();
364
+ (0, vitest_1.expect)(result.data.verifiedEmail).toBeUndefined();
365
+ (0, vitest_1.expect)(result.data.verifiedPhoneNumber).toBeUndefined();
366
+ }
367
+ });
368
+ (0, vitest_1.test)('should parse user with deletedAt and deactivatedAt', async () => {
369
+ const user = {
370
+ id: (0, schema_js_1.generateUserId)(),
371
+ status: schema_js_2.UserStatus.SUSPENDED,
372
+ createdAt: new Date(),
373
+ updatedAt: new Date(),
374
+ deletedAt: new Date(),
375
+ deactivatedAt: new Date(),
376
+ };
377
+ const result = schema_js_2.UserSchema.safeParse(user);
378
+ (0, vitest_1.expect)(result.success).toBe(true);
379
+ if (result.success) {
380
+ (0, vitest_1.expect)(result.data.deletedAt).toBeInstanceOf(Date);
381
+ (0, vitest_1.expect)(result.data.deactivatedAt).toBeInstanceOf(Date);
382
+ }
383
+ });
384
+ (0, vitest_1.test)('should include unverified fields alongside aliases', async () => {
385
+ const user = {
386
+ id: (0, schema_js_1.generateUserId)(),
387
+ verifiedEmail: 'verified@example.com',
388
+ unverifiedEmail: 'pending@example.com',
389
+ verifiedPhoneNumber: '+1111111111',
390
+ unverifiedPhoneNumber: '+2222222222',
391
+ status: schema_js_2.UserStatus.ACTIVE,
392
+ createdAt: new Date(),
393
+ updatedAt: new Date(),
394
+ };
395
+ const result = schema_js_2.UserSchema.safeParse(user);
396
+ (0, vitest_1.expect)(result.success).toBe(true);
397
+ if (result.success) {
398
+ (0, vitest_1.expect)(result.data.email).toBe('verified@example.com');
399
+ (0, vitest_1.expect)(result.data.verifiedEmail).toBe('verified@example.com');
400
+ (0, vitest_1.expect)(result.data.unverifiedEmail).toBe('pending@example.com');
401
+ (0, vitest_1.expect)(result.data.phoneNumber).toBe('+1111111111');
402
+ (0, vitest_1.expect)(result.data.verifiedPhoneNumber).toBe('+1111111111');
403
+ (0, vitest_1.expect)(result.data.unverifiedPhoneNumber).toBe('+2222222222');
404
+ }
405
+ });
406
+ });
407
+ (0, vitest_1.describe)('Insert User Payload', () => {
408
+ (0, vitest_1.test)('should parse attributes successfully', async () => {
409
+ const item = {
410
+ foo: 'bar',
411
+ id: (0, schema_js_1.generateUserId)(),
412
+ familyName: 'Foo',
413
+ verifiedPhoneNumber: '+12025551234',
414
+ };
415
+ const result = schema_js_2.InsertUserPayloadSchema.safeParse(item);
416
+ (0, vitest_1.expect)(result.success).toBe(true);
417
+ if (result.success) {
418
+ (0, vitest_1.expect)(result.data.metadata).toBeUndefined();
419
+ (0, vitest_1.expect)(result.data.familyName).toBe(item.familyName);
420
+ }
421
+ });
422
+ (0, vitest_1.test)('should parse with all verified and unverified email/phone properties', async () => {
423
+ const item = {
424
+ id: (0, schema_js_1.generateUserId)(),
425
+ verifiedEmail: 'verified@example.com',
426
+ unverifiedEmail: 'pending@example.com',
427
+ verifiedPhoneNumber: '+1234567890',
428
+ unverifiedPhoneNumber: '+1987654321',
429
+ };
430
+ const result = schema_js_2.InsertUserPayloadSchema.safeParse(item);
431
+ (0, vitest_1.expect)(result.success).toBe(true);
432
+ if (result.success) {
433
+ (0, vitest_1.expect)(result.data.verifiedEmail).toBe('verified@example.com');
434
+ (0, vitest_1.expect)(result.data.unverifiedEmail).toBe('pending@example.com');
435
+ (0, vitest_1.expect)(result.data.verifiedPhoneNumber).toBe('+1234567890');
436
+ (0, vitest_1.expect)(result.data.unverifiedPhoneNumber).toBe('+1987654321');
437
+ }
438
+ });
439
+ (0, vitest_1.test)('should serialize empty Map to null', async () => {
440
+ const item = {
441
+ foo: 'bar',
442
+ id: (0, schema_js_1.generateUserId)(),
443
+ verifiedPhoneNumber: '+12025551234',
444
+ metadata: new Map(),
445
+ };
446
+ const result = schema_js_2.InsertUserPayloadSchema.safeParse(item);
447
+ (0, vitest_1.expect)(result.success).toBe(true);
448
+ if (result.success) {
449
+ (0, vitest_1.expect)(result.data.metadata).toBeNull();
450
+ }
451
+ });
452
+ (0, vitest_1.test)('should allow optional id and status', async () => {
453
+ const item = {
454
+ verifiedEmail: 'test@example.com',
455
+ };
456
+ const result = schema_js_2.InsertUserPayloadSchema.safeParse(item);
457
+ (0, vitest_1.expect)(result.success).toBe(true);
458
+ if (result.success) {
459
+ (0, vitest_1.expect)(result.data.id).toBeUndefined();
460
+ (0, vitest_1.expect)(result.data.status).toBeUndefined();
461
+ }
462
+ });
463
+ (0, vitest_1.test)('should parse with roles association', async () => {
464
+ const item = {
465
+ id: (0, schema_js_1.generateUserId)(),
466
+ verifiedEmail: 'test@example.com',
467
+ roles: [
468
+ 'rol_2NfYOTzVqhCHgWFzUL0WPfRRuhH',
469
+ 'rol_2NfYOTzVqhCHgWFzUL0WPfRRuhI',
470
+ ],
471
+ };
472
+ const result = schema_js_2.InsertUserPayloadSchema.safeParse(item);
473
+ (0, vitest_1.expect)(result.success).toBe(true);
474
+ if (result.success) {
475
+ (0, vitest_1.expect)(result.data.roles).toEqual([
476
+ 'rol_2NfYOTzVqhCHgWFzUL0WPfRRuhH',
477
+ 'rol_2NfYOTzVqhCHgWFzUL0WPfRRuhI',
478
+ ]);
479
+ }
480
+ });
481
+ (0, vitest_1.test)('should reject when no email or phone number is provided', async () => {
482
+ const item = {
483
+ id: (0, schema_js_1.generateUserId)(),
484
+ familyName: 'Doe',
485
+ };
486
+ const result = schema_js_2.InsertUserPayloadSchema.safeParse(item);
487
+ (0, vitest_1.expect)(result.success).toBe(false);
488
+ if (!result.success) {
489
+ const paths = result.error.issues.map((issue) => issue.path[0]);
490
+ (0, vitest_1.expect)(paths).toContain('verifiedEmail');
491
+ (0, vitest_1.expect)(paths).toContain('verifiedPhoneNumber');
492
+ (0, vitest_1.expect)(paths).toContain('unverifiedEmail');
493
+ (0, vitest_1.expect)(paths).toContain('unverifiedPhoneNumber');
494
+ }
495
+ });
496
+ (0, vitest_1.test)('should accept with only verifiedEmail', async () => {
497
+ const item = {
498
+ verifiedEmail: 'test@example.com',
499
+ };
500
+ const result = schema_js_2.InsertUserPayloadSchema.safeParse(item);
501
+ (0, vitest_1.expect)(result.success).toBe(true);
502
+ if (result.success) {
503
+ (0, vitest_1.expect)(result.data.verifiedEmail).toBe('test@example.com');
504
+ }
505
+ });
506
+ (0, vitest_1.test)('should accept with only verifiedPhoneNumber', async () => {
507
+ const item = {
508
+ verifiedPhoneNumber: '+12025551234',
509
+ };
510
+ const result = schema_js_2.InsertUserPayloadSchema.safeParse(item);
511
+ (0, vitest_1.expect)(result.success).toBe(true);
512
+ if (result.success) {
513
+ (0, vitest_1.expect)(result.data.verifiedPhoneNumber).toBe('+12025551234');
514
+ }
515
+ });
516
+ (0, vitest_1.test)('should succeed with only unverifiedEmail', async () => {
517
+ const item = {
518
+ unverifiedEmail: 'test@example.com',
519
+ unverifiedPhoneNumber: null,
520
+ };
521
+ const result = schema_js_2.InsertUserPayloadSchema.safeParse(item);
522
+ (0, vitest_1.expect)(result.success).toBe(true);
523
+ if (result.success) {
524
+ (0, vitest_1.expect)(result.data.unverifiedEmail).toBe('test@example.com');
525
+ (0, vitest_1.expect)(result.data.unverifiedPhoneNumber).toBeNull();
526
+ (0, vitest_1.expect)(result.data.verifiedEmail).toBeUndefined();
527
+ (0, vitest_1.expect)(result.data.verifiedPhoneNumber).toBeUndefined();
528
+ }
529
+ });
530
+ (0, vitest_1.test)('should succeed with only unverifiedPhoneNumber', async () => {
531
+ const item = {
532
+ unverifiedEmail: null,
533
+ unverifiedPhoneNumber: '+12025551234',
534
+ };
535
+ const result = schema_js_2.InsertUserPayloadSchema.safeParse(item);
536
+ (0, vitest_1.expect)(result.success).toBe(true);
537
+ if (result.success) {
538
+ (0, vitest_1.expect)(result.data.unverifiedPhoneNumber).toBe('+12025551234');
539
+ (0, vitest_1.expect)(result.data.unverifiedEmail).toBeNull();
540
+ (0, vitest_1.expect)(result.data.verifiedEmail).toBeUndefined();
541
+ (0, vitest_1.expect)(result.data.verifiedPhoneNumber).toBeUndefined();
542
+ }
543
+ });
544
+ });
545
+ (0, vitest_1.describe)('Update User Payload', () => {
546
+ (0, vitest_1.test)('should parse suspended flag', async () => {
547
+ const result = schema_js_2.UpdateUserPayloadSchema.safeParse({
548
+ suspended: true,
101
549
  });
102
- const result = (0, schema_js_2.UserPayloadSchema)(payload);
103
- if (result instanceof arktype_1.type.errors) {
104
- console.log(result.summary);
550
+ (0, vitest_1.expect)(result.success).toBe(true);
551
+ if (result.success) {
552
+ (0, vitest_1.expect)(result.data.suspended).toBe(true);
105
553
  }
106
- (0, vitest_1.expect)(result).not.toBeInstanceOf(arktype_1.type.errors);
554
+ });
555
+ (0, vitest_1.test)('should parse name updates', async () => {
556
+ const result = schema_js_2.UpdateUserPayloadSchema.safeParse({
557
+ givenName: 'Jane',
558
+ familyName: null,
559
+ });
560
+ (0, vitest_1.expect)(result.success).toBe(true);
561
+ if (result.success) {
562
+ (0, vitest_1.expect)(result.data.givenName).toBe('Jane');
563
+ (0, vitest_1.expect)(result.data.familyName).toBeNull();
564
+ }
565
+ });
566
+ (0, vitest_1.test)('should parse verified and unverified email/phone updates', async () => {
567
+ const result = schema_js_2.UpdateUserPayloadSchema.safeParse({
568
+ verifiedEmail: 'newemail@example.com',
569
+ unverifiedEmail: 'pending@example.com',
570
+ verifiedPhoneNumber: '+9999999999',
571
+ unverifiedPhoneNumber: '+8888888888',
572
+ });
573
+ (0, vitest_1.expect)(result.success).toBe(true);
574
+ if (result.success) {
575
+ (0, vitest_1.expect)(result.data.verifiedEmail).toBe('newemail@example.com');
576
+ (0, vitest_1.expect)(result.data.unverifiedEmail).toBe('pending@example.com');
577
+ (0, vitest_1.expect)(result.data.verifiedPhoneNumber).toBe('+9999999999');
578
+ (0, vitest_1.expect)(result.data.unverifiedPhoneNumber).toBe('+8888888888');
579
+ }
580
+ });
581
+ (0, vitest_1.test)('should parse metadata updates', async () => {
582
+ const result = schema_js_2.UpdateUserPayloadSchema.safeParse({
583
+ metadata: { key: 'value' },
584
+ });
585
+ (0, vitest_1.expect)(result.success).toBe(true);
586
+ if (result.success) {
587
+ (0, vitest_1.expect)(result.data.metadata).toEqual({ key: 'value' });
588
+ }
589
+ });
590
+ (0, vitest_1.test)('should allow empty object', async () => {
591
+ const result = schema_js_2.UpdateUserPayloadSchema.safeParse({});
592
+ (0, vitest_1.expect)(result.success).toBe(true);
593
+ });
594
+ });
595
+ (0, vitest_1.describe)('UserAssociationReferenceSchema', () => {
596
+ (0, vitest_1.test)('should parse valid association reference', () => {
597
+ const result = schema_js_2.UserAssociationReferenceSchema.safeParse({
598
+ id: (0, schema_js_1.generateUserId)(),
599
+ givenName: 'John',
600
+ familyName: 'Doe',
601
+ email: 'john@example.com',
602
+ phoneNumber: '+1234567890',
603
+ model: 'User',
604
+ });
605
+ (0, vitest_1.expect)(result.success).toBe(true);
606
+ if (result.success) {
607
+ (0, vitest_1.expect)(result.data.model).toBe('User');
608
+ (0, vitest_1.expect)(result.data.status).toBe('unverified');
609
+ }
610
+ });
611
+ (0, vitest_1.test)('should default status to unverified', () => {
612
+ const result = schema_js_2.UserAssociationReferenceSchema.safeParse({
613
+ id: (0, schema_js_1.generateUserId)(),
614
+ model: 'User',
615
+ });
616
+ (0, vitest_1.expect)(result.success).toBe(true);
617
+ if (result.success) {
618
+ (0, vitest_1.expect)(result.data.status).toBe('unverified');
619
+ }
620
+ });
621
+ (0, vitest_1.test)('should allow custom status', () => {
622
+ const result = schema_js_2.UserAssociationReferenceSchema.safeParse({
623
+ id: (0, schema_js_1.generateUserId)(),
624
+ status: 'active',
625
+ model: 'User',
626
+ });
627
+ (0, vitest_1.expect)(result.success).toBe(true);
628
+ if (result.success) {
629
+ (0, vitest_1.expect)(result.data.status).toBe('active');
630
+ }
631
+ });
632
+ (0, vitest_1.test)('should reject invalid model literal', () => {
633
+ const result = schema_js_2.UserAssociationReferenceSchema.safeParse({
634
+ id: (0, schema_js_1.generateUserId)(),
635
+ model: 'Organization',
636
+ });
637
+ (0, vitest_1.expect)(result.success).toBe(false);
107
638
  });
108
639
  });
109
640
  });