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

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