@workos-inc/node 8.4.0 → 8.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (331) hide show
  1. package/lib/{action.interface-D_DJMyrq.d.cts → action.interface-BAKF6gfV.d.cts} +2 -2
  2. package/lib/{action.serializer-CWhwCinS.cjs → action.serializer-DAcb-o-1.cjs} +2 -2
  3. package/lib/{action.serializer-CWhwCinS.cjs.map → action.serializer-DAcb-o-1.cjs.map} +1 -1
  4. package/lib/actions/actions.cjs +1 -1
  5. package/lib/actions/actions.d.cts +1 -1
  6. package/lib/actions/interfaces/action.interface.d.cts +1 -1
  7. package/lib/actions/interfaces/index.d.cts +1 -1
  8. package/lib/actions/serializers/action.serializer.cjs +1 -1
  9. package/lib/actions/serializers/action.serializer.d.cts +1 -1
  10. package/lib/{actions-CVHQXngv.cjs → actions-DRojhekm.cjs} +2 -2
  11. package/lib/{actions-CVHQXngv.cjs.map → actions-DRojhekm.cjs.map} +1 -1
  12. package/lib/{actions-Ci8wakLD.d.cts → actions-yS4tXCm5.d.cts} +2 -2
  13. package/lib/api-keys/api-keys.d.cts +1 -1
  14. package/lib/api-keys/interfaces/create-organization-api-key-options.interface.d.cts +1 -1
  15. package/lib/api-keys/interfaces/index.d.cts +2 -2
  16. package/lib/api-keys/interfaces/list-organization-api-keys-options.interface.d.cts +1 -1
  17. package/lib/api-keys/serializers/create-organization-api-key-options.serializer.d.cts +1 -1
  18. package/lib/api-keys/serializers/index.d.cts +1 -1
  19. package/lib/{api-keys-5t7nLnb5.d.cts → api-keys-CSDwj0TW.d.cts} +30 -30
  20. package/lib/audit-logs/audit-logs.d.cts +1 -1
  21. package/lib/{authentication-event.serializer-mddvaOjb.cjs → authentication-event.serializer-CqD91u8L.cjs} +2 -2
  22. package/lib/authentication-event.serializer-CqD91u8L.cjs.map +1 -0
  23. package/lib/authorization/authorization.cjs +1 -1
  24. package/lib/authorization/authorization.d.cts +1 -1
  25. package/lib/authorization/index.cjs +1 -1
  26. package/lib/authorization/index.d.cts +7 -7
  27. package/lib/authorization/interfaces/index.d.cts +6 -6
  28. package/lib/authorization/interfaces/list-authorization-resources-options.interface.d.cts +1 -1
  29. package/lib/authorization/interfaces/list-memberships-for-resource-by-external-id-options.interface.d.cts +1 -1
  30. package/lib/authorization/interfaces/list-memberships-for-resource-options.interface.d.cts +1 -1
  31. package/lib/authorization/interfaces/list-permissions-options.interface.d.cts +1 -1
  32. package/lib/authorization/interfaces/list-resources-for-membership-options.interface.d.cts +1 -1
  33. package/lib/authorization/interfaces/list-role-assignments-options.interface.d.cts +1 -1
  34. package/lib/authorization/serializers/index.cjs +2 -1
  35. package/lib/authorization/serializers/index.d.cts +5 -5
  36. package/lib/authorization/serializers/index.d.ts +2 -2
  37. package/lib/authorization/serializers/index.js +2 -2
  38. package/lib/authorization/serializers/list-authorization-resources-options.serializer.d.cts +1 -1
  39. package/lib/authorization/serializers/list-memberships-for-resource-options.serializer.d.cts +1 -1
  40. package/lib/authorization/serializers/list-resources-for-membership-options.serializer.d.cts +1 -1
  41. package/lib/authorization/serializers/organization-role.serializer.cjs +2 -1
  42. package/lib/authorization/serializers/organization-role.serializer.d.cts +2 -2
  43. package/lib/authorization/serializers/organization-role.serializer.d.ts +3 -2
  44. package/lib/authorization/serializers/organization-role.serializer.js +12 -1
  45. package/lib/authorization/serializers/organization-role.serializer.js.map +1 -1
  46. package/lib/{authorization-OoyFuyjE.cjs → authorization-Ccp2pNRF.cjs} +2 -2
  47. package/lib/{authorization-OoyFuyjE.cjs.map → authorization-Ccp2pNRF.cjs.map} +1 -1
  48. package/lib/{batch-write-resources-options.serializer-AOQbeleT.d.cts → batch-write-resources-options.serializer-GM8V5Aal.d.cts} +2 -2
  49. package/lib/{check-options.serializer-5pk3sfuU.d.cts → check-options.serializer-Cas9qPez.d.cts} +2 -2
  50. package/lib/{check.interface-CiNYxsPC.d.cts → check.interface-DChTIYQh.d.cts} +3 -3
  51. package/lib/common/interfaces/event.interface.d.cts +1 -1
  52. package/lib/common/interfaces/event.interface.d.ts +7 -8
  53. package/lib/common/interfaces/index.d.cts +3 -3
  54. package/lib/common/interfaces/list.interface.d.cts +1 -1
  55. package/lib/common/interfaces/list.interface.d.ts +4 -4
  56. package/lib/common/interfaces/pagination-options.interface.d.cts +1 -1
  57. package/lib/common/interfaces/pagination-options.interface.d.ts +2 -2
  58. package/lib/common/net/fetch-client.cjs +1 -1
  59. package/lib/common/net/http-client.cjs +1 -1
  60. package/lib/common/net/http-client.js +1 -1
  61. package/lib/common/net/http-client.js.map +1 -1
  62. package/lib/common/serializers/event.serializer.cjs +1 -1
  63. package/lib/common/serializers/event.serializer.d.cts +1 -1
  64. package/lib/common/serializers/event.serializer.js +2 -2
  65. package/lib/common/serializers/event.serializer.js.map +1 -1
  66. package/lib/common/serializers/index.cjs +1 -1
  67. package/lib/common/serializers/index.d.cts +3 -3
  68. package/lib/common/serializers/list.serializer.d.cts +1 -1
  69. package/lib/common/serializers/pagination-options.serializer.d.cts +1 -1
  70. package/lib/common/utils/fetch-and-deserialize.d.cts +3 -3
  71. package/lib/common/utils/pagination.d.cts +1 -1
  72. package/lib/common/utils/pagination.d.ts +2 -2
  73. package/lib/{connection.serializer-phS0D1t9.cjs → connection.serializer-sFgaPd28.cjs} +2 -2
  74. package/lib/connection.serializer-sFgaPd28.cjs.map +1 -0
  75. package/lib/{create-organization-api-key-options.serializer-qpnAhmcm.d.cts → create-organization-api-key-options.serializer-uJAPlCtK.d.cts} +2 -2
  76. package/lib/{create-organization-options.serializer-B5Jdypic.d.cts → create-organization-options.serializer-B6uBWIo2.d.cts} +2 -2
  77. package/lib/{create-resource-options.serializer-wt7jffzB.d.cts → create-resource-options.serializer-DvsMM37G.d.cts} +2 -2
  78. package/lib/{delete-resource-options.serializer-C_7j-llT.d.cts → delete-resource-options.serializer-B7q-mf-L.d.cts} +2 -2
  79. package/lib/directory-sync/directory-sync.cjs +1 -1
  80. package/lib/directory-sync/directory-sync.d.cts +1 -1
  81. package/lib/directory-sync/interfaces/directory-user.interface.d.cts +1 -1
  82. package/lib/directory-sync/interfaces/index.d.cts +4 -4
  83. package/lib/directory-sync/interfaces/list-directories-options.interface.d.cts +1 -1
  84. package/lib/directory-sync/interfaces/list-directory-users-options.interface.d.cts +1 -1
  85. package/lib/directory-sync/interfaces/list-groups-options.interface.d.cts +1 -1
  86. package/lib/directory-sync/serializers/directory-user.serializer.cjs +1 -1
  87. package/lib/directory-sync/serializers/directory-user.serializer.d.cts +1 -1
  88. package/lib/directory-sync/serializers/directory-user.serializer.js +4 -4
  89. package/lib/directory-sync/serializers/directory-user.serializer.js.map +1 -1
  90. package/lib/directory-sync/serializers/index.cjs +1 -1
  91. package/lib/directory-sync/serializers/index.d.cts +2 -2
  92. package/lib/directory-sync/serializers/list-directories-options.serializer.d.cts +1 -1
  93. package/lib/{directory-sync-BGWLeGge.cjs → directory-sync-ClseMB3c.cjs} +2 -2
  94. package/lib/{directory-sync-BGWLeGge.cjs.map → directory-sync-ClseMB3c.cjs.map} +1 -1
  95. package/lib/{directory-user.serializer-UTYCZSSB.cjs → directory-user.serializer-BSflXAKm.cjs} +5 -5
  96. package/lib/directory-user.serializer-BSflXAKm.cjs.map +1 -0
  97. package/lib/{directory-user.serializer-p5YxJzmY.d.cts → directory-user.serializer-XxQp-UAE.d.cts} +2 -2
  98. package/lib/{event.serializer-D23ulCkG.cjs → event.serializer-Cn5xAuN9.cjs} +9 -9
  99. package/lib/event.serializer-Cn5xAuN9.cjs.map +1 -0
  100. package/lib/{event.serializer-BU87BBSJ.d.cts → event.serializer-UUziUbH3.d.cts} +2 -2
  101. package/lib/events/events.cjs +1 -1
  102. package/lib/events/events.d.cts +1 -1
  103. package/lib/events/interfaces/index.d.cts +1 -1
  104. package/lib/events/interfaces/list-events-options.interface.d.cts +1 -1
  105. package/lib/events/serializers/index.d.cts +1 -1
  106. package/lib/events/serializers/list-event-options.serializer.d.cts +1 -1
  107. package/lib/{events-Bo4Mrn6L.cjs → events-DDmTI2cj.cjs} +2 -2
  108. package/lib/{events-Bo4Mrn6L.cjs.map → events-DDmTI2cj.cjs.map} +1 -1
  109. package/lib/{factory-BycQTqX_.cjs → factory-CzXPjI1E.cjs} +2 -2
  110. package/lib/{factory-BycQTqX_.cjs.map → factory-CzXPjI1E.cjs.map} +1 -1
  111. package/lib/factory.cjs +3 -3
  112. package/lib/factory.d.cts +1 -1
  113. package/lib/feature-flags/feature-flags.d.cts +1 -1
  114. package/lib/feature-flags/interfaces/index.d.cts +1 -1
  115. package/lib/feature-flags/interfaces/list-feature-flags-options.interface.d.cts +1 -1
  116. package/lib/{fetch-client-Br9ipQ8n.cjs → fetch-client-BGoo0snw.cjs} +2 -2
  117. package/lib/{fetch-client-Br9ipQ8n.cjs.map → fetch-client-BGoo0snw.cjs.map} +1 -1
  118. package/lib/fga/fga.d.cts +1 -1
  119. package/lib/fga/interfaces/check.interface.d.cts +1 -1
  120. package/lib/fga/interfaces/index.d.cts +4 -4
  121. package/lib/fga/interfaces/list.interface.d.cts +1 -1
  122. package/lib/fga/interfaces/query.interface.d.cts +1 -1
  123. package/lib/fga/interfaces/resource.interface.d.cts +1 -1
  124. package/lib/fga/interfaces/warrant.interface.d.cts +1 -1
  125. package/lib/fga/interfaces/warrant.interface.d.ts +2 -2
  126. package/lib/fga/serializers/batch-write-resources-options.serializer.d.cts +1 -1
  127. package/lib/fga/serializers/check-options.serializer.d.cts +1 -1
  128. package/lib/fga/serializers/create-resource-options.serializer.d.cts +1 -1
  129. package/lib/fga/serializers/delete-resource-options.serializer.d.cts +1 -1
  130. package/lib/fga/serializers/index.d.cts +12 -12
  131. package/lib/fga/serializers/list-resources-options.serializer.d.cts +1 -1
  132. package/lib/fga/serializers/list-warrants-options.serializer.d.cts +1 -1
  133. package/lib/fga/serializers/list.serializer.d.cts +1 -1
  134. package/lib/fga/serializers/query-options.serializer.d.cts +1 -1
  135. package/lib/fga/serializers/query-result.serializer.d.cts +1 -1
  136. package/lib/fga/serializers/resource.serializer.d.cts +1 -1
  137. package/lib/fga/serializers/warrant.serializer.d.cts +1 -1
  138. package/lib/fga/serializers/write-warrant-options.serializer.d.cts +1 -1
  139. package/lib/fga/utils/fetch-and-deserialize-list.d.cts +4 -4
  140. package/lib/fga/utils/fga-paginatable.d.cts +1 -1
  141. package/lib/fga/utils/interface-check.d.cts +2 -2
  142. package/lib/{fga-paginatable-DYGgFxzL.d.cts → fga-paginatable-joDdx-bk.d.cts} +4 -4
  143. package/lib/{generate-portal-link-intent.interface-BQMOkPft.d.cts → generate-portal-link-intent.interface-DM9FRX0P.d.cts} +2 -1
  144. package/lib/{generate-portal-link-intent.interface-CCKgsr2O.cjs → generate-portal-link-intent.interface-K2TgL9nP.cjs} +2 -1
  145. package/lib/generate-portal-link-intent.interface-K2TgL9nP.cjs.map +1 -0
  146. package/lib/{http-client-DZQxEd4J.cjs → http-client-DTfNcqaR.cjs} +2 -2
  147. package/lib/http-client-DTfNcqaR.cjs.map +1 -0
  148. package/lib/{index-BDMqzUe6.d.cts → index-DYVTG9fR.d.cts} +31 -9
  149. package/lib/index.cjs +7 -7
  150. package/lib/index.d.cts +31 -31
  151. package/lib/index.d.ts +2 -2
  152. package/lib/index.worker.cjs +7 -7
  153. package/lib/index.worker.d.cts +26 -26
  154. package/lib/index.worker.d.ts +2 -2
  155. package/lib/{list-authorization-resources-options.interface-DGEUHL6V.d.cts → list-authorization-resources-options.interface-Bi7-RuXa.d.cts} +2 -2
  156. package/lib/{list-authorization-resources-options.serializer-LWnyxV9R.d.cts → list-authorization-resources-options.serializer-Bcr7oINk.d.cts} +2 -2
  157. package/lib/{list-connections-options.interface-DVXp4re1.d.cts → list-connections-options.interface-DMjyCQNt.d.cts} +2 -2
  158. package/lib/{list-connections-options.serializer-oZKaQIbM.d.cts → list-connections-options.serializer-CrF1Ymfh.d.cts} +2 -2
  159. package/lib/{list-directories-options.interface-CcEf0ljy.d.cts → list-directories-options.interface-BQt9KBRx.d.cts} +2 -2
  160. package/lib/{list-directories-options.serializer-wDBlMx46.d.cts → list-directories-options.serializer-C9goOgkU.d.cts} +2 -2
  161. package/lib/{list-directory-users-options.interface-ByCIBUjA.d.cts → list-directory-users-options.interface-DoyU-KHK.d.cts} +2 -2
  162. package/lib/{list-event-options.serializer-DPhp3gKz.d.cts → list-event-options.serializer-C_A6oxeu.d.cts} +2 -2
  163. package/lib/{list-events-options.interface-DJVfXCA3.d.cts → list-events-options.interface-Iyr1CHB0.d.cts} +2 -2
  164. package/lib/{list-feature-flags-options.interface-BDzOTdye.d.cts → list-feature-flags-options.interface-BCSWpNdc.d.cts} +2 -2
  165. package/lib/{list-groups-options.interface-DjW5LHiP.d.cts → list-groups-options.interface-b3GVqSII.d.cts} +2 -2
  166. package/lib/{list-memberships-for-resource-by-external-id-options.interface-2SPYpjXz.d.cts → list-memberships-for-resource-by-external-id-options.interface-J1_qZirj.d.cts} +2 -2
  167. package/lib/{list-memberships-for-resource-options.interface-DYjL4T-O.d.cts → list-memberships-for-resource-options.interface-WKyR83kP.d.cts} +2 -2
  168. package/lib/{list-memberships-for-resource-options.serializer-CZyTun33.d.cts → list-memberships-for-resource-options.serializer-DNDxpu2K.d.cts} +3 -3
  169. package/lib/{list-organization-api-keys-options.interface-DP6NjvYw.d.cts → list-organization-api-keys-options.interface-CsxRRYj6.d.cts} +2 -2
  170. package/lib/{list-organization-feature-flags-options.interface-BuY-zNS_.d.cts → list-organization-feature-flags-options.interface-M3Jmv5_Z.d.cts} +2 -2
  171. package/lib/{list-organizations-options.interface-CR5m7YfR.d.cts → list-organizations-options.interface-n4qDIe17.d.cts} +2 -2
  172. package/lib/{list-resources-for-membership-options.interface-BxIdPPlj.d.cts → list-resources-for-membership-options.interface-CCuX2l-i.d.cts} +2 -2
  173. package/lib/{list-resources-for-membership-options.serializer-Cz9gPByQ.d.cts → list-resources-for-membership-options.serializer-L3x4ttf1.d.cts} +2 -2
  174. package/lib/{list-resources-options.serializer-rf5arsbR.d.cts → list-resources-options.serializer-BR7F9KEZ.d.cts} +2 -2
  175. package/lib/{list-role-assignments-options.interface-CitVe5-E.d.cts → list-role-assignments-options.interface-G1byAUOU.d.cts} +2 -2
  176. package/lib/{list-sessions-options.interface-rRvxj4no.d.cts → list-sessions-options.interface-CZdBtY49.d.cts} +2 -2
  177. package/lib/{list-sessions-options.serializer-Bt-16Y8Y.d.cts → list-sessions-options.serializer-BVgXGaUW.d.cts} +2 -2
  178. package/lib/{list-users-options.interface-BrZWq49H.d.cts → list-users-options.interface-Bmgojx_R.d.cts} +2 -2
  179. package/lib/{list-warrants-options.serializer-DXo_srPx.d.cts → list-warrants-options.serializer-C1T1ysdg.d.cts} +2 -2
  180. package/lib/{list.interface-BMsjwGOu.d.cts → list.interface-D2Q6nKBO.d.cts} +5 -5
  181. package/lib/{list.interface-BzCMY9Yg.d.cts → list.interface-dnxfqUTZ.d.cts} +2 -2
  182. package/lib/{list.serializer-BGYIG8Hl.d.cts → list.serializer-CvYFfpso.d.cts} +3 -3
  183. package/lib/{list.serializer-DPAtA6zK.d.cts → list.serializer-DQ9MJjpQ.d.cts} +2 -2
  184. package/lib/mfa/mfa.d.cts +1 -1
  185. package/lib/{organization-domain.serializer-BuecMdCg.cjs → organization-domain.serializer-DVylNcLm.cjs} +2 -2
  186. package/lib/organization-domain.serializer-DVylNcLm.cjs.map +1 -0
  187. package/lib/organization-domains/organization-domains.cjs +1 -1
  188. package/lib/organization-domains/organization-domains.d.cts +1 -1
  189. package/lib/organization-domains/serializers/organization-domain.serializer.cjs +1 -1
  190. package/lib/organization-domains/serializers/organization-domain.serializer.js +1 -1
  191. package/lib/organization-domains/serializers/organization-domain.serializer.js.map +1 -1
  192. package/lib/{organization-domains-BINLS8SW.cjs → organization-domains-DhcxuHzd.cjs} +2 -2
  193. package/lib/{organization-domains-BINLS8SW.cjs.map → organization-domains-DhcxuHzd.cjs.map} +1 -1
  194. package/lib/{organization-role.serializer-lsSLexV6.cjs → organization-role.serializer-DFNkyIDQ.cjs} +18 -1
  195. package/lib/organization-role.serializer-DFNkyIDQ.cjs.map +1 -0
  196. package/lib/organization-role.serializer-DTDhk4Nh.d.cts +10 -0
  197. package/lib/{organization.serializer-DM6Xkk2V.cjs → organization.serializer-CVNQSfQH.cjs} +2 -2
  198. package/lib/{organization.serializer-DM6Xkk2V.cjs.map → organization.serializer-CVNQSfQH.cjs.map} +1 -1
  199. package/lib/organizations/interfaces/create-organization-options.interface.d.cts +1 -1
  200. package/lib/organizations/interfaces/index.d.cts +3 -3
  201. package/lib/organizations/interfaces/list-organization-feature-flags-options.interface.d.cts +1 -1
  202. package/lib/organizations/interfaces/list-organizations-options.interface.d.cts +1 -1
  203. package/lib/organizations/organizations.cjs +1 -1
  204. package/lib/organizations/organizations.d.cts +1 -1
  205. package/lib/organizations/serializers/create-organization-options.serializer.d.cts +1 -1
  206. package/lib/organizations/serializers/index.cjs +1 -1
  207. package/lib/organizations/serializers/index.d.cts +1 -1
  208. package/lib/organizations/serializers/organization.serializer.cjs +1 -1
  209. package/lib/{organizations-BvnCc0n6.cjs → organizations-DBZSzZs0.cjs} +2 -2
  210. package/lib/{organizations-BvnCc0n6.cjs.map → organizations-DBZSzZs0.cjs.map} +1 -1
  211. package/lib/{pagination-DARFXAuP.d.cts → pagination-HWQZtuX6.d.cts} +5 -5
  212. package/lib/{pagination-options.interface--3MwpP52.d.cts → pagination-options.interface-BzIEA3yY.d.cts} +3 -3
  213. package/lib/{pagination-options.serializer-DmyeFigF.d.cts → pagination-options.serializer-uFxSSjyn.d.cts} +2 -2
  214. package/lib/passwordless/passwordless.d.cts +1 -1
  215. package/lib/pipes/pipes.d.cts +1 -1
  216. package/lib/portal/interfaces/generate-portal-link-intent.interface.cjs +1 -1
  217. package/lib/portal/interfaces/generate-portal-link-intent.interface.d.cts +1 -1
  218. package/lib/portal/interfaces/generate-portal-link-intent.interface.d.ts +1 -0
  219. package/lib/portal/interfaces/generate-portal-link-intent.interface.js +1 -0
  220. package/lib/portal/interfaces/generate-portal-link-intent.interface.js.map +1 -1
  221. package/lib/portal/interfaces/index.cjs +1 -1
  222. package/lib/portal/interfaces/index.d.cts +1 -1
  223. package/lib/portal/portal.d.cts +1 -1
  224. package/lib/{profile-and-token.serializer-93o4nX7v.d.cts → profile-and-token.serializer-BrOalmOt.d.cts} +2 -2
  225. package/lib/{profile-and-token.serializer-CUFdGpX3.cjs → profile-and-token.serializer-DfWI_L92.cjs} +2 -2
  226. package/lib/{profile-and-token.serializer-CUFdGpX3.cjs.map → profile-and-token.serializer-DfWI_L92.cjs.map} +1 -1
  227. package/lib/profile.serializer-DM0Zpbrc.cjs +26 -0
  228. package/lib/profile.serializer-DM0Zpbrc.cjs.map +1 -0
  229. package/lib/{profile.serializer-D9q7gLof.d.cts → profile.serializer-EDpJlY-r.d.cts} +2 -2
  230. package/lib/{query-options.serializer-Cjv6DV1k.d.cts → query-options.serializer-DrRDm7He.d.cts} +2 -2
  231. package/lib/{query-result.serializer-Dy0eBy0g.d.cts → query-result.serializer-CJnHUV8v.d.cts} +3 -3
  232. package/lib/{query.interface-BSHlqTYK.d.cts → query.interface-DvI8OOX6.d.cts} +3 -3
  233. package/lib/{read-object.interface-BwzjcSVm.d.cts → read-object.interface-bYptR15L.d.cts} +2 -2
  234. package/lib/{resource.interface-D-MMSzFn.d.cts → resource.interface-DSxkG9Jg.d.cts} +2 -2
  235. package/lib/{resource.serializer-CNYCg5zr.d.cts → resource.serializer-DbjYmqjL.d.cts} +2 -2
  236. package/lib/roles/interfaces/index.d.cts +2 -2
  237. package/lib/roles/interfaces/index.d.ts +2 -2
  238. package/lib/roles/interfaces/role.interface.d.cts +2 -2
  239. package/lib/roles/interfaces/role.interface.d.ts +23 -1
  240. package/lib/roles/serializers/role.serializer.d.cts +1 -1
  241. package/lib/{session.serializer-Dmj9Hm3q.cjs → session.serializer-B63NxvRH.cjs} +3 -3
  242. package/lib/session.serializer-B63NxvRH.cjs.map +1 -0
  243. package/lib/sso/interfaces/index.d.cts +2 -2
  244. package/lib/sso/interfaces/list-connections-options.interface.d.cts +1 -1
  245. package/lib/sso/interfaces/profile-and-token.interface.d.cts +1 -1
  246. package/lib/sso/interfaces/profile.interface.d.cts +1 -1
  247. package/lib/sso/serializers/connection.serializer.cjs +1 -1
  248. package/lib/sso/serializers/connection.serializer.js +1 -1
  249. package/lib/sso/serializers/connection.serializer.js.map +1 -1
  250. package/lib/sso/serializers/index.cjs +3 -3
  251. package/lib/sso/serializers/index.d.cts +3 -3
  252. package/lib/sso/serializers/list-connections-options.serializer.d.cts +1 -1
  253. package/lib/sso/serializers/profile-and-token.serializer.cjs +1 -1
  254. package/lib/sso/serializers/profile-and-token.serializer.d.cts +1 -1
  255. package/lib/sso/serializers/profile.serializer.cjs +1 -1
  256. package/lib/sso/serializers/profile.serializer.d.cts +1 -1
  257. package/lib/sso/serializers/profile.serializer.js +8 -8
  258. package/lib/sso/serializers/profile.serializer.js.map +1 -1
  259. package/lib/sso/sso.cjs +1 -1
  260. package/lib/sso/sso.d.cts +1 -1
  261. package/lib/{sso-FWyObHDp.cjs → sso-CagxPT-U.cjs} +4 -4
  262. package/lib/{sso-FWyObHDp.cjs.map → sso-CagxPT-U.cjs.map} +1 -1
  263. package/lib/user-management/interfaces/index.d.cts +3 -3
  264. package/lib/user-management/interfaces/list-auth-factors-options.interface.d.cts +1 -1
  265. package/lib/user-management/interfaces/list-invitations-options.interface.d.cts +1 -1
  266. package/lib/user-management/interfaces/list-organization-memberships-options.interface.d.cts +1 -1
  267. package/lib/user-management/interfaces/list-sessions-options.interface.d.cts +1 -1
  268. package/lib/user-management/interfaces/list-user-feature-flags-options.interface.d.cts +1 -1
  269. package/lib/user-management/interfaces/list-users-options.interface.d.cts +1 -1
  270. package/lib/user-management/interfaces/organization-membership.interface.d.cts +1 -1
  271. package/lib/user-management/serializers/authentication-event.serializer.cjs +1 -1
  272. package/lib/user-management/serializers/authentication-event.serializer.js +1 -1
  273. package/lib/user-management/serializers/authentication-event.serializer.js.map +1 -1
  274. package/lib/user-management/serializers/index.cjs +2 -2
  275. package/lib/user-management/serializers/index.d.cts +1 -1
  276. package/lib/user-management/serializers/list-invitations-options.serializer.d.cts +1 -1
  277. package/lib/user-management/serializers/list-organization-memberships-options.serializer.d.cts +1 -1
  278. package/lib/user-management/serializers/list-sessions-options.serializer.d.cts +1 -1
  279. package/lib/user-management/serializers/list-users-options.serializer.d.cts +1 -1
  280. package/lib/user-management/serializers/organization-membership.serializer.d.cts +1 -1
  281. package/lib/user-management/serializers/role.serializer.d.cts +1 -1
  282. package/lib/user-management/serializers/session.serializer.cjs +1 -1
  283. package/lib/user-management/serializers/session.serializer.js +2 -2
  284. package/lib/user-management/serializers/session.serializer.js.map +1 -1
  285. package/lib/user-management/session.d.cts +1 -1
  286. package/lib/user-management/user-management.cjs +1 -1
  287. package/lib/user-management/user-management.d.cts +1 -1
  288. package/lib/{user-management-CTQFnn4h.cjs → user-management-DEOOSelF.cjs} +2 -2
  289. package/lib/{user-management-CTQFnn4h.cjs.map → user-management-DEOOSelF.cjs.map} +1 -1
  290. package/lib/vault/interfaces/index.d.cts +1 -1
  291. package/lib/vault/interfaces/object/read-object.interface.d.cts +1 -1
  292. package/lib/vault/interfaces/object/read-object.interface.d.ts +1 -1
  293. package/lib/vault/serializers/vault-object.serializer.cjs +1 -1
  294. package/lib/vault/serializers/vault-object.serializer.d.cts +2 -2
  295. package/lib/vault/serializers/vault-object.serializer.js +3 -3
  296. package/lib/vault/serializers/vault-object.serializer.js.map +1 -1
  297. package/lib/vault/vault.cjs +1 -1
  298. package/lib/vault/vault.d.cts +1 -1
  299. package/lib/{vault-tqn3i5Ms.cjs → vault-BR8gbCEq.cjs} +2 -2
  300. package/lib/{vault-tqn3i5Ms.cjs.map → vault-BR8gbCEq.cjs.map} +1 -1
  301. package/lib/{vault-object.serializer-CwmJwCnO.cjs → vault-object.serializer-Cx7rAuca.cjs} +4 -4
  302. package/lib/vault-object.serializer-Cx7rAuca.cjs.map +1 -0
  303. package/lib/{warrant.interface-DPnDplf7.d.cts → warrant.interface-DgQN4yxm.d.cts} +4 -4
  304. package/lib/{warrant.serializer-DSuf7fH7.d.cts → warrant.serializer-BX6Tonfl.d.cts} +2 -2
  305. package/lib/webhooks/webhooks.cjs +1 -1
  306. package/lib/webhooks/webhooks.d.cts +1 -1
  307. package/lib/{webhooks-DvyWO-Zh.d.cts → webhooks-2-hbZwWC.d.cts} +2 -2
  308. package/lib/{webhooks-CSlaxQ9R.cjs → webhooks-DX8LtZMD.cjs} +2 -2
  309. package/lib/{webhooks-CSlaxQ9R.cjs.map → webhooks-DX8LtZMD.cjs.map} +1 -1
  310. package/lib/widgets/widgets.d.cts +1 -1
  311. package/lib/{workos-DndBTCon.cjs → workos-CEha64Qs.cjs} +14 -14
  312. package/lib/{workos-DndBTCon.cjs.map → workos-CEha64Qs.cjs.map} +1 -1
  313. package/lib/workos.cjs +2 -2
  314. package/lib/workos.d.cts +1 -1
  315. package/lib/workos.js +1 -1
  316. package/lib/workos.js.map +1 -1
  317. package/lib/{write-warrant-options.serializer-BVsqqyjn.d.cts → write-warrant-options.serializer-Bk5t0x2w.d.cts} +2 -2
  318. package/package.json +1 -1
  319. package/lib/authentication-event.serializer-mddvaOjb.cjs.map +0 -1
  320. package/lib/connection.serializer-phS0D1t9.cjs.map +0 -1
  321. package/lib/directory-user.serializer-UTYCZSSB.cjs.map +0 -1
  322. package/lib/event.serializer-D23ulCkG.cjs.map +0 -1
  323. package/lib/generate-portal-link-intent.interface-CCKgsr2O.cjs.map +0 -1
  324. package/lib/http-client-DZQxEd4J.cjs.map +0 -1
  325. package/lib/organization-domain.serializer-BuecMdCg.cjs.map +0 -1
  326. package/lib/organization-role.serializer-4Qp0ZjZH.d.cts +0 -9
  327. package/lib/organization-role.serializer-lsSLexV6.cjs.map +0 -1
  328. package/lib/profile.serializer-BDlm0TRU.cjs +0 -26
  329. package/lib/profile.serializer-BDlm0TRU.cjs.map +0 -1
  330. package/lib/session.serializer-Dmj9Hm3q.cjs.map +0 -1
  331. package/lib/vault-object.serializer-CwmJwCnO.cjs.map +0 -1
@@ -8,34 +8,34 @@ const require_unauthorized_exception = require('./unauthorized.exception-hTKkIjP
8
8
  const require_unprocessable_entity_exception = require('./unprocessable-entity.exception-BdCyQCYX.cjs');
9
9
  const require_pkce = require('./pkce-Bu_KcDMw.cjs');
10
10
  const require_api_keys = require('./api-keys-DpNACVjB.cjs');
11
- const require_directory_sync = require('./directory-sync-BGWLeGge.cjs');
12
- const require_events = require('./events-Bo4Mrn6L.cjs');
13
- const require_organizations = require('./organizations-BvnCc0n6.cjs');
14
- const require_organization_domains = require('./organization-domains-BINLS8SW.cjs');
11
+ const require_directory_sync = require('./directory-sync-ClseMB3c.cjs');
12
+ const require_events = require('./events-DDmTI2cj.cjs');
13
+ const require_organizations = require('./organizations-DBZSzZs0.cjs');
14
+ const require_organization_domains = require('./organization-domains-DhcxuHzd.cjs');
15
15
  const require_passwordless = require('./passwordless-Cbbfvvgq.cjs');
16
16
  const require_pipes = require('./pipes-C6PJAgY4.cjs');
17
17
  const require_portal = require('./portal-Bw4FWwRi.cjs');
18
- const require_sso = require('./sso-FWyObHDp.cjs');
19
- const require_webhooks = require('./webhooks-CSlaxQ9R.cjs');
18
+ const require_sso = require('./sso-CagxPT-U.cjs');
19
+ const require_webhooks = require('./webhooks-DX8LtZMD.cjs');
20
20
  const require_mfa = require('./mfa-Ck3-dTm_.cjs');
21
21
  const require_audit_logs = require('./audit-logs-BXPMHkYl.cjs');
22
22
  const require_env = require('./env-CFSscuz_.cjs');
23
- const require_user_management = require('./user-management-CTQFnn4h.cjs');
23
+ const require_user_management = require('./user-management-DEOOSelF.cjs');
24
24
  const require_fga = require('./fga-BXWRwaKi.cjs');
25
25
  const require_feature_flags = require('./feature-flags-D0BnuozI.cjs');
26
- const require_http_client = require('./http-client-DZQxEd4J.cjs');
26
+ const require_http_client = require('./http-client-DTfNcqaR.cjs');
27
27
  const require_subtle_crypto_provider = require('./subtle-crypto-provider-RQC7QPlf.cjs');
28
28
  const require_parse_error = require('./parse-error-Dr-zK4Ai.cjs');
29
- const require_fetch_client = require('./fetch-client-Br9ipQ8n.cjs');
29
+ const require_fetch_client = require('./fetch-client-BGoo0snw.cjs');
30
30
  const require_widgets = require('./widgets-BckzS1Py.cjs');
31
- const require_actions = require('./actions-CVHQXngv.cjs');
32
- const require_authorization = require('./authorization-OoyFuyjE.cjs');
33
- const require_vault = require('./vault-tqn3i5Ms.cjs');
31
+ const require_actions = require('./actions-DRojhekm.cjs');
32
+ const require_authorization = require('./authorization-Ccp2pNRF.cjs');
33
+ const require_vault = require('./vault-BR8gbCEq.cjs');
34
34
  const require_conflict_exception = require('./conflict.exception-DNThkhe4.cjs');
35
35
  const require_runtime_info = require('./runtime-info-D11Gtx8I.cjs');
36
36
 
37
37
  //#region src/workos.ts
38
- const VERSION = "8.4.0";
38
+ const VERSION = "8.6.0";
39
39
  const DEFAULT_HOSTNAME = "api.workos.com";
40
40
  const HEADER_AUTHORIZATION = "Authorization";
41
41
  const HEADER_IDEMPOTENCY_KEY = "Idempotency-Key";
@@ -341,4 +341,4 @@ Object.defineProperty(exports, 'WorkOS', {
341
341
  return WorkOS;
342
342
  }
343
343
  });
344
- //# sourceMappingURL=workos-DndBTCon.cjs.map
344
+ //# sourceMappingURL=workos-CEha64Qs.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"workos-DndBTCon.cjs","names":["ApiKeys","AuditLogs","Authorization","DirectorySync","Events","FeatureFlags","FGA","Mfa","Organizations","OrganizationDomains","Passwordless","Pipes","Portal","SSO","Vault","Widgets","getEnv","protocol: string","apiHostname: string","port: number | undefined","PKCE","UserManagement","userAgent: string","getRuntimeInfo","Webhooks","Actions","SubtleCryptoProvider","headers: Record<string, string>","FetchHttpClient","ApiKeyRequiredException","requestHeaders: Record<string, string>","res: HttpClientResponseInterface","ParseError","HttpClientError","UnauthorizedException","ConflictException","UnprocessableEntityException","NotFoundException","RateLimitExceededException","error","OauthException","BadRequestException","GenericServerException"],"sources":["../src/workos.ts"],"sourcesContent":["import {\n ApiKeyRequiredException,\n GenericServerException,\n NotFoundException,\n UnauthorizedException,\n UnprocessableEntityException,\n OauthException,\n RateLimitExceededException,\n} from './common/exceptions';\nimport { PKCE } from './pkce/pkce';\nimport {\n GetOptions,\n HttpClientResponseInterface,\n PatchOptions,\n PostOptions,\n PutOptions,\n WorkOSOptions,\n WorkOSResponseError,\n} from './common/interfaces';\nimport { ApiKeys } from './api-keys/api-keys';\nimport { DirectorySync } from './directory-sync/directory-sync';\nimport { Events } from './events/events';\nimport { Organizations } from './organizations/organizations';\nimport { OrganizationDomains } from './organization-domains/organization-domains';\nimport { Passwordless } from './passwordless/passwordless';\nimport { Pipes } from './pipes/pipes';\nimport { Portal } from './portal/portal';\nimport { SSO } from './sso/sso';\nimport { Webhooks } from './webhooks/webhooks';\nimport { Mfa } from './mfa/mfa';\nimport { AuditLogs } from './audit-logs/audit-logs';\nimport { UserManagement } from './user-management/user-management';\nimport { FGA } from './fga/fga';\nimport { BadRequestException } from './common/exceptions/bad-request.exception';\nimport { FeatureFlags } from './feature-flags/feature-flags';\n\nimport { HttpClient, HttpClientError } from './common/net/http-client';\nimport { SubtleCryptoProvider } from './common/crypto/subtle-crypto-provider';\nimport { FetchHttpClient } from './common/net/fetch-client';\nimport { Widgets } from './widgets/widgets';\nimport { Actions } from './actions/actions';\nimport { Authorization } from './authorization/authorization';\nimport { Vault } from './vault/vault';\nimport { ConflictException } from './common/exceptions/conflict.exception';\nimport { CryptoProvider } from './common/crypto/crypto-provider';\nimport { ParseError } from './common/exceptions/parse-error';\nimport { getEnv } from './common/utils/env';\nimport { getRuntimeInfo } from './common/utils/runtime-info';\n\nconst VERSION = '8.4.0';\n\nconst DEFAULT_HOSTNAME = 'api.workos.com';\n\nconst HEADER_AUTHORIZATION = 'Authorization';\nconst HEADER_IDEMPOTENCY_KEY = 'Idempotency-Key';\nconst HEADER_WARRANT_TOKEN = 'Warrant-Token';\n\nexport class WorkOS {\n readonly baseURL: string;\n readonly client: HttpClient;\n readonly clientId?: string;\n readonly key?: string;\n readonly options: WorkOSOptions;\n readonly pkce: PKCE;\n\n private readonly hasApiKey: boolean;\n\n readonly actions: Actions;\n readonly apiKeys = new ApiKeys(this);\n readonly auditLogs = new AuditLogs(this);\n readonly authorization = new Authorization(this);\n readonly directorySync = new DirectorySync(this);\n readonly events = new Events(this);\n readonly featureFlags = new FeatureFlags(this);\n readonly fga = new FGA(this);\n readonly mfa = new Mfa(this);\n readonly organizations = new Organizations(this);\n readonly organizationDomains = new OrganizationDomains(this);\n readonly passwordless = new Passwordless(this);\n readonly pipes = new Pipes(this);\n readonly portal = new Portal(this);\n readonly sso = new SSO(this);\n readonly userManagement: UserManagement;\n readonly vault = new Vault(this);\n readonly webhooks: Webhooks;\n readonly widgets = new Widgets(this);\n\n /**\n * Create a new WorkOS client.\n *\n * @param keyOrOptions - API key string, or options object\n * @param maybeOptions - Options when first argument is API key\n *\n * @example\n * // Server-side with API key (string)\n * const workos = new WorkOS('sk_...');\n *\n * @example\n * // Server-side with API key (object)\n * const workos = new WorkOS({ apiKey: 'sk_...', clientId: 'client_...' });\n *\n * @example\n * // PKCE/public client (no API key)\n * const workos = new WorkOS({ clientId: 'client_...' });\n */\n constructor(\n keyOrOptions?: string | WorkOSOptions,\n maybeOptions?: WorkOSOptions,\n ) {\n if (typeof keyOrOptions === 'object') {\n this.key = keyOrOptions.apiKey;\n this.options = keyOrOptions;\n } else {\n this.key = keyOrOptions;\n this.options = maybeOptions ?? {};\n }\n\n if (!this.key) {\n this.key = getEnv('WORKOS_API_KEY');\n }\n\n this.hasApiKey = !!this.key;\n\n if (this.options.https === undefined) {\n this.options.https = true;\n }\n\n this.clientId = this.options.clientId;\n if (!this.clientId) {\n this.clientId = getEnv('WORKOS_CLIENT_ID');\n }\n\n if (!this.hasApiKey && !this.clientId) {\n throw new Error(\n 'WorkOS requires either an API key or a clientId. ' +\n 'For server-side: new WorkOS(\"sk_...\") or new WorkOS({ apiKey: \"sk_...\" }). ' +\n 'For PKCE/public clients: new WorkOS({ clientId: \"client_...\" })',\n );\n }\n\n const protocol: string = this.options.https ? 'https' : 'http';\n const apiHostname: string = this.options.apiHostname || DEFAULT_HOSTNAME;\n const port: number | undefined = this.options.port;\n this.baseURL = `${protocol}://${apiHostname}`;\n\n if (port) {\n this.baseURL = this.baseURL + `:${port}`;\n }\n\n this.pkce = new PKCE();\n\n this.webhooks = this.createWebhookClient();\n this.actions = this.createActionsClient();\n\n // Must initialize UserManagement after baseURL is configured\n this.userManagement = new UserManagement(this);\n\n const userAgent = this.createUserAgent(this.options);\n\n this.client = this.createHttpClient(this.options, userAgent);\n }\n\n private createUserAgent(options: WorkOSOptions): string {\n let userAgent: string = `workos-node/${VERSION}`;\n\n const { name: runtimeName, version: runtimeVersion } = getRuntimeInfo();\n userAgent += ` (${runtimeName}${runtimeVersion ? `/${runtimeVersion}` : ''})`;\n\n if (options.appInfo) {\n const { name, version } = options.appInfo;\n userAgent += ` ${name}: ${version}`;\n }\n\n return userAgent;\n }\n\n createWebhookClient() {\n return new Webhooks(this.getCryptoProvider());\n }\n\n createActionsClient() {\n return new Actions(this.getCryptoProvider());\n }\n\n getCryptoProvider(): CryptoProvider {\n return new SubtleCryptoProvider();\n }\n\n createHttpClient(options: WorkOSOptions, userAgent: string) {\n const headers: Record<string, string> = {\n 'User-Agent': userAgent,\n };\n\n const configHeaders = options.config?.headers;\n if (\n configHeaders &&\n typeof configHeaders === 'object' &&\n !Array.isArray(configHeaders) &&\n !(configHeaders instanceof Headers)\n ) {\n Object.assign(headers, configHeaders);\n }\n\n if (this.key) {\n headers['Authorization'] = `Bearer ${this.key}`;\n }\n\n return new FetchHttpClient(this.baseURL, {\n ...options.config,\n timeout: options.timeout,\n headers,\n }) as HttpClient;\n }\n\n get version() {\n return VERSION;\n }\n\n /**\n * Require API key for methods that need it.\n * @param methodName - Name of the method requiring API key (for error message)\n * @throws ApiKeyRequiredException if no API key was provided\n */\n requireApiKey(methodName: string): void {\n if (!this.hasApiKey) {\n throw new ApiKeyRequiredException(methodName);\n }\n }\n\n async post<Result = any, Entity = any>(\n path: string,\n entity: Entity,\n options: PostOptions = {},\n ): Promise<{ data: Result }> {\n if (!options.skipApiKeyCheck) {\n this.requireApiKey(path);\n }\n\n const requestHeaders: Record<string, string> = {};\n\n if (options.idempotencyKey) {\n requestHeaders[HEADER_IDEMPOTENCY_KEY] = options.idempotencyKey;\n }\n\n if (options.warrantToken) {\n requestHeaders[HEADER_WARRANT_TOKEN] = options.warrantToken;\n }\n\n let res: HttpClientResponseInterface;\n\n try {\n res = await this.client.post<Entity>(path, entity, {\n params: options.query,\n headers: requestHeaders,\n });\n } catch (error) {\n this.handleHttpError({ path, error });\n throw error;\n }\n\n try {\n return { data: await res.toJSON() };\n } catch (error) {\n await this.handleParseError(error, res);\n throw error;\n }\n }\n\n async get<Result = any>(\n path: string,\n options: GetOptions = {},\n ): Promise<{ data: Result }> {\n if (!options.skipApiKeyCheck) {\n this.requireApiKey(path);\n }\n\n const requestHeaders: Record<string, string> = {};\n\n if (options.accessToken) {\n requestHeaders[HEADER_AUTHORIZATION] = `Bearer ${options.accessToken}`;\n }\n\n if (options.warrantToken) {\n requestHeaders[HEADER_WARRANT_TOKEN] = options.warrantToken;\n }\n\n let res: HttpClientResponseInterface;\n try {\n res = await this.client.get(path, {\n params: options.query,\n headers: requestHeaders,\n });\n } catch (error) {\n this.handleHttpError({ path, error });\n\n throw error;\n }\n\n try {\n return { data: await res.toJSON() };\n } catch (error) {\n await this.handleParseError(error, res);\n throw error;\n }\n }\n\n async put<Result = any, Entity = any>(\n path: string,\n entity: Entity,\n options: PutOptions = {},\n ): Promise<{ data: Result }> {\n if (!options.skipApiKeyCheck) {\n this.requireApiKey(path);\n }\n\n const requestHeaders: Record<string, string> = {};\n\n if (options.idempotencyKey) {\n requestHeaders[HEADER_IDEMPOTENCY_KEY] = options.idempotencyKey;\n }\n\n let res: HttpClientResponseInterface;\n\n try {\n res = await this.client.put<Entity>(path, entity, {\n params: options.query,\n headers: requestHeaders,\n });\n } catch (error) {\n this.handleHttpError({ path, error });\n\n throw error;\n }\n\n try {\n return { data: await res.toJSON() };\n } catch (error) {\n await this.handleParseError(error, res);\n throw error;\n }\n }\n\n async patch<Result = any, Entity = any>(\n path: string,\n entity: Entity,\n options: PatchOptions = {},\n ): Promise<{ data: Result }> {\n if (!options.skipApiKeyCheck) {\n this.requireApiKey(path);\n }\n\n const requestHeaders: Record<string, string> = {};\n\n if (options.idempotencyKey) {\n requestHeaders[HEADER_IDEMPOTENCY_KEY] = options.idempotencyKey;\n }\n\n let res: HttpClientResponseInterface;\n\n try {\n res = await this.client.patch<Entity>(path, entity, {\n params: options.query,\n headers: requestHeaders,\n });\n } catch (error) {\n this.handleHttpError({ path, error });\n\n throw error;\n }\n\n try {\n return { data: await res.toJSON() };\n } catch (error) {\n await this.handleParseError(error, res);\n throw error;\n }\n }\n\n async delete(path: string, query?: any): Promise<void> {\n this.requireApiKey(path);\n\n try {\n await this.client.delete(path, {\n params: query,\n });\n } catch (error) {\n this.handleHttpError({ path, error });\n\n throw error;\n }\n }\n\n async deleteWithBody<Entity = any>(\n path: string,\n entity: Entity,\n ): Promise<void> {\n this.requireApiKey(path);\n\n try {\n await this.client.deleteWithBody(path, entity, {});\n } catch (error) {\n this.handleHttpError({ path, error });\n\n throw error;\n }\n }\n\n emitWarning(warning: string) {\n // tslint:disable-next-line:no-console\n console.warn(`WorkOS: ${warning}`);\n }\n\n private async handleParseError(\n error: unknown,\n res: HttpClientResponseInterface,\n ) {\n if (error instanceof SyntaxError) {\n const rawResponse = res.getRawResponse() as Response;\n const requestID = rawResponse.headers.get('X-Request-ID') ?? '';\n const rawStatus = rawResponse.status;\n const rawBody = await rawResponse.text();\n throw new ParseError({\n message: error.message,\n rawBody,\n rawStatus,\n requestID,\n });\n }\n }\n\n private handleHttpError({ path, error }: { path: string; error: unknown }) {\n if (!(error instanceof HttpClientError)) {\n throw new Error(`Unexpected error: ${error}`, { cause: error });\n }\n\n const { response } = error as HttpClientError<WorkOSResponseError>;\n\n if (response) {\n const { status, data, headers } = response;\n\n const requestID = headers['X-Request-ID'] ?? '';\n const {\n code,\n error_description: errorDescription,\n error,\n errors,\n message,\n } = data;\n\n switch (status) {\n case 401: {\n throw new UnauthorizedException(requestID);\n }\n case 409: {\n throw new ConflictException({ requestID, message, error });\n }\n case 422: {\n throw new UnprocessableEntityException({\n code,\n errors,\n message,\n requestID,\n });\n }\n case 404: {\n throw new NotFoundException({\n code,\n message,\n path,\n requestID,\n });\n }\n case 429: {\n const retryAfter = headers.get('Retry-After');\n\n throw new RateLimitExceededException(\n data.message,\n requestID,\n retryAfter ? Number(retryAfter) : null,\n );\n }\n default: {\n if (error || errorDescription) {\n throw new OauthException(\n status,\n requestID,\n error,\n errorDescription,\n data,\n );\n } else if (code && errors) {\n // Note: ideally this should be mapped directly with a `400` status code.\n // However, this would break existing logic for the `OauthException` exception.\n throw new BadRequestException({\n code,\n errors,\n message,\n requestID,\n });\n } else {\n throw new GenericServerException(\n status,\n data.message,\n data,\n requestID,\n );\n }\n }\n }\n }\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"workos-CEha64Qs.cjs","names":["ApiKeys","AuditLogs","Authorization","DirectorySync","Events","FeatureFlags","FGA","Mfa","Organizations","OrganizationDomains","Passwordless","Pipes","Portal","SSO","Vault","Widgets","getEnv","protocol: string","apiHostname: string","port: number | undefined","PKCE","UserManagement","userAgent: string","getRuntimeInfo","Webhooks","Actions","SubtleCryptoProvider","headers: Record<string, string>","FetchHttpClient","ApiKeyRequiredException","requestHeaders: Record<string, string>","res: HttpClientResponseInterface","ParseError","HttpClientError","UnauthorizedException","ConflictException","UnprocessableEntityException","NotFoundException","RateLimitExceededException","error","OauthException","BadRequestException","GenericServerException"],"sources":["../src/workos.ts"],"sourcesContent":["import {\n ApiKeyRequiredException,\n GenericServerException,\n NotFoundException,\n UnauthorizedException,\n UnprocessableEntityException,\n OauthException,\n RateLimitExceededException,\n} from './common/exceptions';\nimport { PKCE } from './pkce/pkce';\nimport {\n GetOptions,\n HttpClientResponseInterface,\n PatchOptions,\n PostOptions,\n PutOptions,\n WorkOSOptions,\n WorkOSResponseError,\n} from './common/interfaces';\nimport { ApiKeys } from './api-keys/api-keys';\nimport { DirectorySync } from './directory-sync/directory-sync';\nimport { Events } from './events/events';\nimport { Organizations } from './organizations/organizations';\nimport { OrganizationDomains } from './organization-domains/organization-domains';\nimport { Passwordless } from './passwordless/passwordless';\nimport { Pipes } from './pipes/pipes';\nimport { Portal } from './portal/portal';\nimport { SSO } from './sso/sso';\nimport { Webhooks } from './webhooks/webhooks';\nimport { Mfa } from './mfa/mfa';\nimport { AuditLogs } from './audit-logs/audit-logs';\nimport { UserManagement } from './user-management/user-management';\nimport { FGA } from './fga/fga';\nimport { BadRequestException } from './common/exceptions/bad-request.exception';\nimport { FeatureFlags } from './feature-flags/feature-flags';\n\nimport { HttpClient, HttpClientError } from './common/net/http-client';\nimport { SubtleCryptoProvider } from './common/crypto/subtle-crypto-provider';\nimport { FetchHttpClient } from './common/net/fetch-client';\nimport { Widgets } from './widgets/widgets';\nimport { Actions } from './actions/actions';\nimport { Authorization } from './authorization/authorization';\nimport { Vault } from './vault/vault';\nimport { ConflictException } from './common/exceptions/conflict.exception';\nimport { CryptoProvider } from './common/crypto/crypto-provider';\nimport { ParseError } from './common/exceptions/parse-error';\nimport { getEnv } from './common/utils/env';\nimport { getRuntimeInfo } from './common/utils/runtime-info';\n\nconst VERSION = '8.6.0';\n\nconst DEFAULT_HOSTNAME = 'api.workos.com';\n\nconst HEADER_AUTHORIZATION = 'Authorization';\nconst HEADER_IDEMPOTENCY_KEY = 'Idempotency-Key';\nconst HEADER_WARRANT_TOKEN = 'Warrant-Token';\n\nexport class WorkOS {\n readonly baseURL: string;\n readonly client: HttpClient;\n readonly clientId?: string;\n readonly key?: string;\n readonly options: WorkOSOptions;\n readonly pkce: PKCE;\n\n private readonly hasApiKey: boolean;\n\n readonly actions: Actions;\n readonly apiKeys = new ApiKeys(this);\n readonly auditLogs = new AuditLogs(this);\n readonly authorization = new Authorization(this);\n readonly directorySync = new DirectorySync(this);\n readonly events = new Events(this);\n readonly featureFlags = new FeatureFlags(this);\n readonly fga = new FGA(this);\n readonly mfa = new Mfa(this);\n readonly organizations = new Organizations(this);\n readonly organizationDomains = new OrganizationDomains(this);\n readonly passwordless = new Passwordless(this);\n readonly pipes = new Pipes(this);\n readonly portal = new Portal(this);\n readonly sso = new SSO(this);\n readonly userManagement: UserManagement;\n readonly vault = new Vault(this);\n readonly webhooks: Webhooks;\n readonly widgets = new Widgets(this);\n\n /**\n * Create a new WorkOS client.\n *\n * @param keyOrOptions - API key string, or options object\n * @param maybeOptions - Options when first argument is API key\n *\n * @example\n * // Server-side with API key (string)\n * const workos = new WorkOS('sk_...');\n *\n * @example\n * // Server-side with API key (object)\n * const workos = new WorkOS({ apiKey: 'sk_...', clientId: 'client_...' });\n *\n * @example\n * // PKCE/public client (no API key)\n * const workos = new WorkOS({ clientId: 'client_...' });\n */\n constructor(\n keyOrOptions?: string | WorkOSOptions,\n maybeOptions?: WorkOSOptions,\n ) {\n if (typeof keyOrOptions === 'object') {\n this.key = keyOrOptions.apiKey;\n this.options = keyOrOptions;\n } else {\n this.key = keyOrOptions;\n this.options = maybeOptions ?? {};\n }\n\n if (!this.key) {\n this.key = getEnv('WORKOS_API_KEY');\n }\n\n this.hasApiKey = !!this.key;\n\n if (this.options.https === undefined) {\n this.options.https = true;\n }\n\n this.clientId = this.options.clientId;\n if (!this.clientId) {\n this.clientId = getEnv('WORKOS_CLIENT_ID');\n }\n\n if (!this.hasApiKey && !this.clientId) {\n throw new Error(\n 'WorkOS requires either an API key or a clientId. ' +\n 'For server-side: new WorkOS(\"sk_...\") or new WorkOS({ apiKey: \"sk_...\" }). ' +\n 'For PKCE/public clients: new WorkOS({ clientId: \"client_...\" })',\n );\n }\n\n const protocol: string = this.options.https ? 'https' : 'http';\n const apiHostname: string = this.options.apiHostname || DEFAULT_HOSTNAME;\n const port: number | undefined = this.options.port;\n this.baseURL = `${protocol}://${apiHostname}`;\n\n if (port) {\n this.baseURL = this.baseURL + `:${port}`;\n }\n\n this.pkce = new PKCE();\n\n this.webhooks = this.createWebhookClient();\n this.actions = this.createActionsClient();\n\n // Must initialize UserManagement after baseURL is configured\n this.userManagement = new UserManagement(this);\n\n const userAgent = this.createUserAgent(this.options);\n\n this.client = this.createHttpClient(this.options, userAgent);\n }\n\n private createUserAgent(options: WorkOSOptions): string {\n let userAgent: string = `workos-node/${VERSION}`;\n\n const { name: runtimeName, version: runtimeVersion } = getRuntimeInfo();\n userAgent += ` (${runtimeName}${runtimeVersion ? `/${runtimeVersion}` : ''})`;\n\n if (options.appInfo) {\n const { name, version } = options.appInfo;\n userAgent += ` ${name}: ${version}`;\n }\n\n return userAgent;\n }\n\n createWebhookClient() {\n return new Webhooks(this.getCryptoProvider());\n }\n\n createActionsClient() {\n return new Actions(this.getCryptoProvider());\n }\n\n getCryptoProvider(): CryptoProvider {\n return new SubtleCryptoProvider();\n }\n\n createHttpClient(options: WorkOSOptions, userAgent: string) {\n const headers: Record<string, string> = {\n 'User-Agent': userAgent,\n };\n\n const configHeaders = options.config?.headers;\n if (\n configHeaders &&\n typeof configHeaders === 'object' &&\n !Array.isArray(configHeaders) &&\n !(configHeaders instanceof Headers)\n ) {\n Object.assign(headers, configHeaders);\n }\n\n if (this.key) {\n headers['Authorization'] = `Bearer ${this.key}`;\n }\n\n return new FetchHttpClient(this.baseURL, {\n ...options.config,\n timeout: options.timeout,\n headers,\n }) as HttpClient;\n }\n\n get version() {\n return VERSION;\n }\n\n /**\n * Require API key for methods that need it.\n * @param methodName - Name of the method requiring API key (for error message)\n * @throws ApiKeyRequiredException if no API key was provided\n */\n requireApiKey(methodName: string): void {\n if (!this.hasApiKey) {\n throw new ApiKeyRequiredException(methodName);\n }\n }\n\n async post<Result = any, Entity = any>(\n path: string,\n entity: Entity,\n options: PostOptions = {},\n ): Promise<{ data: Result }> {\n if (!options.skipApiKeyCheck) {\n this.requireApiKey(path);\n }\n\n const requestHeaders: Record<string, string> = {};\n\n if (options.idempotencyKey) {\n requestHeaders[HEADER_IDEMPOTENCY_KEY] = options.idempotencyKey;\n }\n\n if (options.warrantToken) {\n requestHeaders[HEADER_WARRANT_TOKEN] = options.warrantToken;\n }\n\n let res: HttpClientResponseInterface;\n\n try {\n res = await this.client.post<Entity>(path, entity, {\n params: options.query,\n headers: requestHeaders,\n });\n } catch (error) {\n this.handleHttpError({ path, error });\n throw error;\n }\n\n try {\n return { data: await res.toJSON() };\n } catch (error) {\n await this.handleParseError(error, res);\n throw error;\n }\n }\n\n async get<Result = any>(\n path: string,\n options: GetOptions = {},\n ): Promise<{ data: Result }> {\n if (!options.skipApiKeyCheck) {\n this.requireApiKey(path);\n }\n\n const requestHeaders: Record<string, string> = {};\n\n if (options.accessToken) {\n requestHeaders[HEADER_AUTHORIZATION] = `Bearer ${options.accessToken}`;\n }\n\n if (options.warrantToken) {\n requestHeaders[HEADER_WARRANT_TOKEN] = options.warrantToken;\n }\n\n let res: HttpClientResponseInterface;\n try {\n res = await this.client.get(path, {\n params: options.query,\n headers: requestHeaders,\n });\n } catch (error) {\n this.handleHttpError({ path, error });\n\n throw error;\n }\n\n try {\n return { data: await res.toJSON() };\n } catch (error) {\n await this.handleParseError(error, res);\n throw error;\n }\n }\n\n async put<Result = any, Entity = any>(\n path: string,\n entity: Entity,\n options: PutOptions = {},\n ): Promise<{ data: Result }> {\n if (!options.skipApiKeyCheck) {\n this.requireApiKey(path);\n }\n\n const requestHeaders: Record<string, string> = {};\n\n if (options.idempotencyKey) {\n requestHeaders[HEADER_IDEMPOTENCY_KEY] = options.idempotencyKey;\n }\n\n let res: HttpClientResponseInterface;\n\n try {\n res = await this.client.put<Entity>(path, entity, {\n params: options.query,\n headers: requestHeaders,\n });\n } catch (error) {\n this.handleHttpError({ path, error });\n\n throw error;\n }\n\n try {\n return { data: await res.toJSON() };\n } catch (error) {\n await this.handleParseError(error, res);\n throw error;\n }\n }\n\n async patch<Result = any, Entity = any>(\n path: string,\n entity: Entity,\n options: PatchOptions = {},\n ): Promise<{ data: Result }> {\n if (!options.skipApiKeyCheck) {\n this.requireApiKey(path);\n }\n\n const requestHeaders: Record<string, string> = {};\n\n if (options.idempotencyKey) {\n requestHeaders[HEADER_IDEMPOTENCY_KEY] = options.idempotencyKey;\n }\n\n let res: HttpClientResponseInterface;\n\n try {\n res = await this.client.patch<Entity>(path, entity, {\n params: options.query,\n headers: requestHeaders,\n });\n } catch (error) {\n this.handleHttpError({ path, error });\n\n throw error;\n }\n\n try {\n return { data: await res.toJSON() };\n } catch (error) {\n await this.handleParseError(error, res);\n throw error;\n }\n }\n\n async delete(path: string, query?: any): Promise<void> {\n this.requireApiKey(path);\n\n try {\n await this.client.delete(path, {\n params: query,\n });\n } catch (error) {\n this.handleHttpError({ path, error });\n\n throw error;\n }\n }\n\n async deleteWithBody<Entity = any>(\n path: string,\n entity: Entity,\n ): Promise<void> {\n this.requireApiKey(path);\n\n try {\n await this.client.deleteWithBody(path, entity, {});\n } catch (error) {\n this.handleHttpError({ path, error });\n\n throw error;\n }\n }\n\n emitWarning(warning: string) {\n // tslint:disable-next-line:no-console\n console.warn(`WorkOS: ${warning}`);\n }\n\n private async handleParseError(\n error: unknown,\n res: HttpClientResponseInterface,\n ) {\n if (error instanceof SyntaxError) {\n const rawResponse = res.getRawResponse() as Response;\n const requestID = rawResponse.headers.get('X-Request-ID') ?? '';\n const rawStatus = rawResponse.status;\n const rawBody = await rawResponse.text();\n throw new ParseError({\n message: error.message,\n rawBody,\n rawStatus,\n requestID,\n });\n }\n }\n\n private handleHttpError({ path, error }: { path: string; error: unknown }) {\n if (!(error instanceof HttpClientError)) {\n throw new Error(`Unexpected error: ${error}`, { cause: error });\n }\n\n const { response } = error as HttpClientError<WorkOSResponseError>;\n\n if (response) {\n const { status, data, headers } = response;\n\n const requestID = headers['X-Request-ID'] ?? '';\n const {\n code,\n error_description: errorDescription,\n error,\n errors,\n message,\n } = data;\n\n switch (status) {\n case 401: {\n throw new UnauthorizedException(requestID);\n }\n case 409: {\n throw new ConflictException({ requestID, message, error });\n }\n case 422: {\n throw new UnprocessableEntityException({\n code,\n errors,\n message,\n requestID,\n });\n }\n case 404: {\n throw new NotFoundException({\n code,\n message,\n path,\n requestID,\n });\n }\n case 429: {\n const retryAfter = headers.get('Retry-After');\n\n throw new RateLimitExceededException(\n data.message,\n requestID,\n retryAfter ? Number(retryAfter) : null,\n );\n }\n default: {\n if (error || errorDescription) {\n throw new OauthException(\n status,\n requestID,\n error,\n errorDescription,\n data,\n );\n } else if (code && errors) {\n // Note: ideally this should be mapped directly with a `400` status code.\n // However, this would break existing logic for the `OauthException` exception.\n throw new BadRequestException({\n code,\n errors,\n message,\n requestID,\n });\n } else {\n throw new GenericServerException(\n status,\n data.message,\n data,\n requestID,\n );\n }\n }\n }\n }\n }\n}\n"],"mappings":"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"}
package/lib/workos.cjs CHANGED
@@ -1,7 +1,7 @@
1
1
  require('./jose-BhyqkBqW.cjs');
2
2
  require('./session-Beigw6Nc.cjs');
3
- require('./user-management-CTQFnn4h.cjs');
3
+ require('./user-management-DEOOSelF.cjs');
4
4
  require('./subtle-crypto-provider-RQC7QPlf.cjs');
5
- const require_workos = require('./workos-DndBTCon.cjs');
5
+ const require_workos = require('./workos-CEha64Qs.cjs');
6
6
 
7
7
  exports.WorkOS = require_workos.WorkOS;
package/lib/workos.d.cts CHANGED
@@ -1,2 +1,2 @@
1
- import { n as WorkOS } from "./api-keys-5t7nLnb5.cjs";
1
+ import { n as WorkOS } from "./api-keys-CSDwj0TW.cjs";
2
2
  export { WorkOS };
package/lib/workos.js CHANGED
@@ -35,7 +35,7 @@ import { ConflictException } from "./common/exceptions/conflict.exception.js";
35
35
  import { getRuntimeInfo } from "./common/utils/runtime-info.js";
36
36
 
37
37
  //#region src/workos.ts
38
- const VERSION = "8.4.0";
38
+ const VERSION = "8.6.0";
39
39
  const DEFAULT_HOSTNAME = "api.workos.com";
40
40
  const HEADER_AUTHORIZATION = "Authorization";
41
41
  const HEADER_IDEMPOTENCY_KEY = "Idempotency-Key";
package/lib/workos.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"workos.js","names":["protocol: string","apiHostname: string","port: number | undefined","userAgent: string","headers: Record<string, string>","requestHeaders: Record<string, string>","res: HttpClientResponseInterface","error"],"sources":["../src/workos.ts"],"sourcesContent":["import {\n ApiKeyRequiredException,\n GenericServerException,\n NotFoundException,\n UnauthorizedException,\n UnprocessableEntityException,\n OauthException,\n RateLimitExceededException,\n} from './common/exceptions';\nimport { PKCE } from './pkce/pkce';\nimport {\n GetOptions,\n HttpClientResponseInterface,\n PatchOptions,\n PostOptions,\n PutOptions,\n WorkOSOptions,\n WorkOSResponseError,\n} from './common/interfaces';\nimport { ApiKeys } from './api-keys/api-keys';\nimport { DirectorySync } from './directory-sync/directory-sync';\nimport { Events } from './events/events';\nimport { Organizations } from './organizations/organizations';\nimport { OrganizationDomains } from './organization-domains/organization-domains';\nimport { Passwordless } from './passwordless/passwordless';\nimport { Pipes } from './pipes/pipes';\nimport { Portal } from './portal/portal';\nimport { SSO } from './sso/sso';\nimport { Webhooks } from './webhooks/webhooks';\nimport { Mfa } from './mfa/mfa';\nimport { AuditLogs } from './audit-logs/audit-logs';\nimport { UserManagement } from './user-management/user-management';\nimport { FGA } from './fga/fga';\nimport { BadRequestException } from './common/exceptions/bad-request.exception';\nimport { FeatureFlags } from './feature-flags/feature-flags';\n\nimport { HttpClient, HttpClientError } from './common/net/http-client';\nimport { SubtleCryptoProvider } from './common/crypto/subtle-crypto-provider';\nimport { FetchHttpClient } from './common/net/fetch-client';\nimport { Widgets } from './widgets/widgets';\nimport { Actions } from './actions/actions';\nimport { Authorization } from './authorization/authorization';\nimport { Vault } from './vault/vault';\nimport { ConflictException } from './common/exceptions/conflict.exception';\nimport { CryptoProvider } from './common/crypto/crypto-provider';\nimport { ParseError } from './common/exceptions/parse-error';\nimport { getEnv } from './common/utils/env';\nimport { getRuntimeInfo } from './common/utils/runtime-info';\n\nconst VERSION = '8.4.0';\n\nconst DEFAULT_HOSTNAME = 'api.workos.com';\n\nconst HEADER_AUTHORIZATION = 'Authorization';\nconst HEADER_IDEMPOTENCY_KEY = 'Idempotency-Key';\nconst HEADER_WARRANT_TOKEN = 'Warrant-Token';\n\nexport class WorkOS {\n readonly baseURL: string;\n readonly client: HttpClient;\n readonly clientId?: string;\n readonly key?: string;\n readonly options: WorkOSOptions;\n readonly pkce: PKCE;\n\n private readonly hasApiKey: boolean;\n\n readonly actions: Actions;\n readonly apiKeys = new ApiKeys(this);\n readonly auditLogs = new AuditLogs(this);\n readonly authorization = new Authorization(this);\n readonly directorySync = new DirectorySync(this);\n readonly events = new Events(this);\n readonly featureFlags = new FeatureFlags(this);\n readonly fga = new FGA(this);\n readonly mfa = new Mfa(this);\n readonly organizations = new Organizations(this);\n readonly organizationDomains = new OrganizationDomains(this);\n readonly passwordless = new Passwordless(this);\n readonly pipes = new Pipes(this);\n readonly portal = new Portal(this);\n readonly sso = new SSO(this);\n readonly userManagement: UserManagement;\n readonly vault = new Vault(this);\n readonly webhooks: Webhooks;\n readonly widgets = new Widgets(this);\n\n /**\n * Create a new WorkOS client.\n *\n * @param keyOrOptions - API key string, or options object\n * @param maybeOptions - Options when first argument is API key\n *\n * @example\n * // Server-side with API key (string)\n * const workos = new WorkOS('sk_...');\n *\n * @example\n * // Server-side with API key (object)\n * const workos = new WorkOS({ apiKey: 'sk_...', clientId: 'client_...' });\n *\n * @example\n * // PKCE/public client (no API key)\n * const workos = new WorkOS({ clientId: 'client_...' });\n */\n constructor(\n keyOrOptions?: string | WorkOSOptions,\n maybeOptions?: WorkOSOptions,\n ) {\n if (typeof keyOrOptions === 'object') {\n this.key = keyOrOptions.apiKey;\n this.options = keyOrOptions;\n } else {\n this.key = keyOrOptions;\n this.options = maybeOptions ?? {};\n }\n\n if (!this.key) {\n this.key = getEnv('WORKOS_API_KEY');\n }\n\n this.hasApiKey = !!this.key;\n\n if (this.options.https === undefined) {\n this.options.https = true;\n }\n\n this.clientId = this.options.clientId;\n if (!this.clientId) {\n this.clientId = getEnv('WORKOS_CLIENT_ID');\n }\n\n if (!this.hasApiKey && !this.clientId) {\n throw new Error(\n 'WorkOS requires either an API key or a clientId. ' +\n 'For server-side: new WorkOS(\"sk_...\") or new WorkOS({ apiKey: \"sk_...\" }). ' +\n 'For PKCE/public clients: new WorkOS({ clientId: \"client_...\" })',\n );\n }\n\n const protocol: string = this.options.https ? 'https' : 'http';\n const apiHostname: string = this.options.apiHostname || DEFAULT_HOSTNAME;\n const port: number | undefined = this.options.port;\n this.baseURL = `${protocol}://${apiHostname}`;\n\n if (port) {\n this.baseURL = this.baseURL + `:${port}`;\n }\n\n this.pkce = new PKCE();\n\n this.webhooks = this.createWebhookClient();\n this.actions = this.createActionsClient();\n\n // Must initialize UserManagement after baseURL is configured\n this.userManagement = new UserManagement(this);\n\n const userAgent = this.createUserAgent(this.options);\n\n this.client = this.createHttpClient(this.options, userAgent);\n }\n\n private createUserAgent(options: WorkOSOptions): string {\n let userAgent: string = `workos-node/${VERSION}`;\n\n const { name: runtimeName, version: runtimeVersion } = getRuntimeInfo();\n userAgent += ` (${runtimeName}${runtimeVersion ? `/${runtimeVersion}` : ''})`;\n\n if (options.appInfo) {\n const { name, version } = options.appInfo;\n userAgent += ` ${name}: ${version}`;\n }\n\n return userAgent;\n }\n\n createWebhookClient() {\n return new Webhooks(this.getCryptoProvider());\n }\n\n createActionsClient() {\n return new Actions(this.getCryptoProvider());\n }\n\n getCryptoProvider(): CryptoProvider {\n return new SubtleCryptoProvider();\n }\n\n createHttpClient(options: WorkOSOptions, userAgent: string) {\n const headers: Record<string, string> = {\n 'User-Agent': userAgent,\n };\n\n const configHeaders = options.config?.headers;\n if (\n configHeaders &&\n typeof configHeaders === 'object' &&\n !Array.isArray(configHeaders) &&\n !(configHeaders instanceof Headers)\n ) {\n Object.assign(headers, configHeaders);\n }\n\n if (this.key) {\n headers['Authorization'] = `Bearer ${this.key}`;\n }\n\n return new FetchHttpClient(this.baseURL, {\n ...options.config,\n timeout: options.timeout,\n headers,\n }) as HttpClient;\n }\n\n get version() {\n return VERSION;\n }\n\n /**\n * Require API key for methods that need it.\n * @param methodName - Name of the method requiring API key (for error message)\n * @throws ApiKeyRequiredException if no API key was provided\n */\n requireApiKey(methodName: string): void {\n if (!this.hasApiKey) {\n throw new ApiKeyRequiredException(methodName);\n }\n }\n\n async post<Result = any, Entity = any>(\n path: string,\n entity: Entity,\n options: PostOptions = {},\n ): Promise<{ data: Result }> {\n if (!options.skipApiKeyCheck) {\n this.requireApiKey(path);\n }\n\n const requestHeaders: Record<string, string> = {};\n\n if (options.idempotencyKey) {\n requestHeaders[HEADER_IDEMPOTENCY_KEY] = options.idempotencyKey;\n }\n\n if (options.warrantToken) {\n requestHeaders[HEADER_WARRANT_TOKEN] = options.warrantToken;\n }\n\n let res: HttpClientResponseInterface;\n\n try {\n res = await this.client.post<Entity>(path, entity, {\n params: options.query,\n headers: requestHeaders,\n });\n } catch (error) {\n this.handleHttpError({ path, error });\n throw error;\n }\n\n try {\n return { data: await res.toJSON() };\n } catch (error) {\n await this.handleParseError(error, res);\n throw error;\n }\n }\n\n async get<Result = any>(\n path: string,\n options: GetOptions = {},\n ): Promise<{ data: Result }> {\n if (!options.skipApiKeyCheck) {\n this.requireApiKey(path);\n }\n\n const requestHeaders: Record<string, string> = {};\n\n if (options.accessToken) {\n requestHeaders[HEADER_AUTHORIZATION] = `Bearer ${options.accessToken}`;\n }\n\n if (options.warrantToken) {\n requestHeaders[HEADER_WARRANT_TOKEN] = options.warrantToken;\n }\n\n let res: HttpClientResponseInterface;\n try {\n res = await this.client.get(path, {\n params: options.query,\n headers: requestHeaders,\n });\n } catch (error) {\n this.handleHttpError({ path, error });\n\n throw error;\n }\n\n try {\n return { data: await res.toJSON() };\n } catch (error) {\n await this.handleParseError(error, res);\n throw error;\n }\n }\n\n async put<Result = any, Entity = any>(\n path: string,\n entity: Entity,\n options: PutOptions = {},\n ): Promise<{ data: Result }> {\n if (!options.skipApiKeyCheck) {\n this.requireApiKey(path);\n }\n\n const requestHeaders: Record<string, string> = {};\n\n if (options.idempotencyKey) {\n requestHeaders[HEADER_IDEMPOTENCY_KEY] = options.idempotencyKey;\n }\n\n let res: HttpClientResponseInterface;\n\n try {\n res = await this.client.put<Entity>(path, entity, {\n params: options.query,\n headers: requestHeaders,\n });\n } catch (error) {\n this.handleHttpError({ path, error });\n\n throw error;\n }\n\n try {\n return { data: await res.toJSON() };\n } catch (error) {\n await this.handleParseError(error, res);\n throw error;\n }\n }\n\n async patch<Result = any, Entity = any>(\n path: string,\n entity: Entity,\n options: PatchOptions = {},\n ): Promise<{ data: Result }> {\n if (!options.skipApiKeyCheck) {\n this.requireApiKey(path);\n }\n\n const requestHeaders: Record<string, string> = {};\n\n if (options.idempotencyKey) {\n requestHeaders[HEADER_IDEMPOTENCY_KEY] = options.idempotencyKey;\n }\n\n let res: HttpClientResponseInterface;\n\n try {\n res = await this.client.patch<Entity>(path, entity, {\n params: options.query,\n headers: requestHeaders,\n });\n } catch (error) {\n this.handleHttpError({ path, error });\n\n throw error;\n }\n\n try {\n return { data: await res.toJSON() };\n } catch (error) {\n await this.handleParseError(error, res);\n throw error;\n }\n }\n\n async delete(path: string, query?: any): Promise<void> {\n this.requireApiKey(path);\n\n try {\n await this.client.delete(path, {\n params: query,\n });\n } catch (error) {\n this.handleHttpError({ path, error });\n\n throw error;\n }\n }\n\n async deleteWithBody<Entity = any>(\n path: string,\n entity: Entity,\n ): Promise<void> {\n this.requireApiKey(path);\n\n try {\n await this.client.deleteWithBody(path, entity, {});\n } catch (error) {\n this.handleHttpError({ path, error });\n\n throw error;\n }\n }\n\n emitWarning(warning: string) {\n // tslint:disable-next-line:no-console\n console.warn(`WorkOS: ${warning}`);\n }\n\n private async handleParseError(\n error: unknown,\n res: HttpClientResponseInterface,\n ) {\n if (error instanceof SyntaxError) {\n const rawResponse = res.getRawResponse() as Response;\n const requestID = rawResponse.headers.get('X-Request-ID') ?? '';\n const rawStatus = rawResponse.status;\n const rawBody = await rawResponse.text();\n throw new ParseError({\n message: error.message,\n rawBody,\n rawStatus,\n requestID,\n });\n }\n }\n\n private handleHttpError({ path, error }: { path: string; error: unknown }) {\n if (!(error instanceof HttpClientError)) {\n throw new Error(`Unexpected error: ${error}`, { cause: error });\n }\n\n const { response } = error as HttpClientError<WorkOSResponseError>;\n\n if (response) {\n const { status, data, headers } = response;\n\n const requestID = headers['X-Request-ID'] ?? '';\n const {\n code,\n error_description: errorDescription,\n error,\n errors,\n message,\n } = data;\n\n switch (status) {\n case 401: {\n throw new UnauthorizedException(requestID);\n }\n case 409: {\n throw new ConflictException({ requestID, message, error });\n }\n case 422: {\n throw new UnprocessableEntityException({\n code,\n errors,\n message,\n requestID,\n });\n }\n case 404: {\n throw new NotFoundException({\n code,\n message,\n path,\n requestID,\n });\n }\n case 429: {\n const retryAfter = headers.get('Retry-After');\n\n throw new RateLimitExceededException(\n data.message,\n requestID,\n retryAfter ? Number(retryAfter) : null,\n );\n }\n default: {\n if (error || errorDescription) {\n throw new OauthException(\n status,\n requestID,\n error,\n errorDescription,\n data,\n );\n } else if (code && errors) {\n // Note: ideally this should be mapped directly with a `400` status code.\n // However, this would break existing logic for the `OauthException` exception.\n throw new BadRequestException({\n code,\n errors,\n message,\n requestID,\n });\n } else {\n throw new GenericServerException(\n status,\n data.message,\n data,\n requestID,\n );\n }\n }\n }\n }\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"workos.js","names":["protocol: string","apiHostname: string","port: number | undefined","userAgent: string","headers: Record<string, string>","requestHeaders: Record<string, string>","res: HttpClientResponseInterface","error"],"sources":["../src/workos.ts"],"sourcesContent":["import {\n ApiKeyRequiredException,\n GenericServerException,\n NotFoundException,\n UnauthorizedException,\n UnprocessableEntityException,\n OauthException,\n RateLimitExceededException,\n} from './common/exceptions';\nimport { PKCE } from './pkce/pkce';\nimport {\n GetOptions,\n HttpClientResponseInterface,\n PatchOptions,\n PostOptions,\n PutOptions,\n WorkOSOptions,\n WorkOSResponseError,\n} from './common/interfaces';\nimport { ApiKeys } from './api-keys/api-keys';\nimport { DirectorySync } from './directory-sync/directory-sync';\nimport { Events } from './events/events';\nimport { Organizations } from './organizations/organizations';\nimport { OrganizationDomains } from './organization-domains/organization-domains';\nimport { Passwordless } from './passwordless/passwordless';\nimport { Pipes } from './pipes/pipes';\nimport { Portal } from './portal/portal';\nimport { SSO } from './sso/sso';\nimport { Webhooks } from './webhooks/webhooks';\nimport { Mfa } from './mfa/mfa';\nimport { AuditLogs } from './audit-logs/audit-logs';\nimport { UserManagement } from './user-management/user-management';\nimport { FGA } from './fga/fga';\nimport { BadRequestException } from './common/exceptions/bad-request.exception';\nimport { FeatureFlags } from './feature-flags/feature-flags';\n\nimport { HttpClient, HttpClientError } from './common/net/http-client';\nimport { SubtleCryptoProvider } from './common/crypto/subtle-crypto-provider';\nimport { FetchHttpClient } from './common/net/fetch-client';\nimport { Widgets } from './widgets/widgets';\nimport { Actions } from './actions/actions';\nimport { Authorization } from './authorization/authorization';\nimport { Vault } from './vault/vault';\nimport { ConflictException } from './common/exceptions/conflict.exception';\nimport { CryptoProvider } from './common/crypto/crypto-provider';\nimport { ParseError } from './common/exceptions/parse-error';\nimport { getEnv } from './common/utils/env';\nimport { getRuntimeInfo } from './common/utils/runtime-info';\n\nconst VERSION = '8.6.0';\n\nconst DEFAULT_HOSTNAME = 'api.workos.com';\n\nconst HEADER_AUTHORIZATION = 'Authorization';\nconst HEADER_IDEMPOTENCY_KEY = 'Idempotency-Key';\nconst HEADER_WARRANT_TOKEN = 'Warrant-Token';\n\nexport class WorkOS {\n readonly baseURL: string;\n readonly client: HttpClient;\n readonly clientId?: string;\n readonly key?: string;\n readonly options: WorkOSOptions;\n readonly pkce: PKCE;\n\n private readonly hasApiKey: boolean;\n\n readonly actions: Actions;\n readonly apiKeys = new ApiKeys(this);\n readonly auditLogs = new AuditLogs(this);\n readonly authorization = new Authorization(this);\n readonly directorySync = new DirectorySync(this);\n readonly events = new Events(this);\n readonly featureFlags = new FeatureFlags(this);\n readonly fga = new FGA(this);\n readonly mfa = new Mfa(this);\n readonly organizations = new Organizations(this);\n readonly organizationDomains = new OrganizationDomains(this);\n readonly passwordless = new Passwordless(this);\n readonly pipes = new Pipes(this);\n readonly portal = new Portal(this);\n readonly sso = new SSO(this);\n readonly userManagement: UserManagement;\n readonly vault = new Vault(this);\n readonly webhooks: Webhooks;\n readonly widgets = new Widgets(this);\n\n /**\n * Create a new WorkOS client.\n *\n * @param keyOrOptions - API key string, or options object\n * @param maybeOptions - Options when first argument is API key\n *\n * @example\n * // Server-side with API key (string)\n * const workos = new WorkOS('sk_...');\n *\n * @example\n * // Server-side with API key (object)\n * const workos = new WorkOS({ apiKey: 'sk_...', clientId: 'client_...' });\n *\n * @example\n * // PKCE/public client (no API key)\n * const workos = new WorkOS({ clientId: 'client_...' });\n */\n constructor(\n keyOrOptions?: string | WorkOSOptions,\n maybeOptions?: WorkOSOptions,\n ) {\n if (typeof keyOrOptions === 'object') {\n this.key = keyOrOptions.apiKey;\n this.options = keyOrOptions;\n } else {\n this.key = keyOrOptions;\n this.options = maybeOptions ?? {};\n }\n\n if (!this.key) {\n this.key = getEnv('WORKOS_API_KEY');\n }\n\n this.hasApiKey = !!this.key;\n\n if (this.options.https === undefined) {\n this.options.https = true;\n }\n\n this.clientId = this.options.clientId;\n if (!this.clientId) {\n this.clientId = getEnv('WORKOS_CLIENT_ID');\n }\n\n if (!this.hasApiKey && !this.clientId) {\n throw new Error(\n 'WorkOS requires either an API key or a clientId. ' +\n 'For server-side: new WorkOS(\"sk_...\") or new WorkOS({ apiKey: \"sk_...\" }). ' +\n 'For PKCE/public clients: new WorkOS({ clientId: \"client_...\" })',\n );\n }\n\n const protocol: string = this.options.https ? 'https' : 'http';\n const apiHostname: string = this.options.apiHostname || DEFAULT_HOSTNAME;\n const port: number | undefined = this.options.port;\n this.baseURL = `${protocol}://${apiHostname}`;\n\n if (port) {\n this.baseURL = this.baseURL + `:${port}`;\n }\n\n this.pkce = new PKCE();\n\n this.webhooks = this.createWebhookClient();\n this.actions = this.createActionsClient();\n\n // Must initialize UserManagement after baseURL is configured\n this.userManagement = new UserManagement(this);\n\n const userAgent = this.createUserAgent(this.options);\n\n this.client = this.createHttpClient(this.options, userAgent);\n }\n\n private createUserAgent(options: WorkOSOptions): string {\n let userAgent: string = `workos-node/${VERSION}`;\n\n const { name: runtimeName, version: runtimeVersion } = getRuntimeInfo();\n userAgent += ` (${runtimeName}${runtimeVersion ? `/${runtimeVersion}` : ''})`;\n\n if (options.appInfo) {\n const { name, version } = options.appInfo;\n userAgent += ` ${name}: ${version}`;\n }\n\n return userAgent;\n }\n\n createWebhookClient() {\n return new Webhooks(this.getCryptoProvider());\n }\n\n createActionsClient() {\n return new Actions(this.getCryptoProvider());\n }\n\n getCryptoProvider(): CryptoProvider {\n return new SubtleCryptoProvider();\n }\n\n createHttpClient(options: WorkOSOptions, userAgent: string) {\n const headers: Record<string, string> = {\n 'User-Agent': userAgent,\n };\n\n const configHeaders = options.config?.headers;\n if (\n configHeaders &&\n typeof configHeaders === 'object' &&\n !Array.isArray(configHeaders) &&\n !(configHeaders instanceof Headers)\n ) {\n Object.assign(headers, configHeaders);\n }\n\n if (this.key) {\n headers['Authorization'] = `Bearer ${this.key}`;\n }\n\n return new FetchHttpClient(this.baseURL, {\n ...options.config,\n timeout: options.timeout,\n headers,\n }) as HttpClient;\n }\n\n get version() {\n return VERSION;\n }\n\n /**\n * Require API key for methods that need it.\n * @param methodName - Name of the method requiring API key (for error message)\n * @throws ApiKeyRequiredException if no API key was provided\n */\n requireApiKey(methodName: string): void {\n if (!this.hasApiKey) {\n throw new ApiKeyRequiredException(methodName);\n }\n }\n\n async post<Result = any, Entity = any>(\n path: string,\n entity: Entity,\n options: PostOptions = {},\n ): Promise<{ data: Result }> {\n if (!options.skipApiKeyCheck) {\n this.requireApiKey(path);\n }\n\n const requestHeaders: Record<string, string> = {};\n\n if (options.idempotencyKey) {\n requestHeaders[HEADER_IDEMPOTENCY_KEY] = options.idempotencyKey;\n }\n\n if (options.warrantToken) {\n requestHeaders[HEADER_WARRANT_TOKEN] = options.warrantToken;\n }\n\n let res: HttpClientResponseInterface;\n\n try {\n res = await this.client.post<Entity>(path, entity, {\n params: options.query,\n headers: requestHeaders,\n });\n } catch (error) {\n this.handleHttpError({ path, error });\n throw error;\n }\n\n try {\n return { data: await res.toJSON() };\n } catch (error) {\n await this.handleParseError(error, res);\n throw error;\n }\n }\n\n async get<Result = any>(\n path: string,\n options: GetOptions = {},\n ): Promise<{ data: Result }> {\n if (!options.skipApiKeyCheck) {\n this.requireApiKey(path);\n }\n\n const requestHeaders: Record<string, string> = {};\n\n if (options.accessToken) {\n requestHeaders[HEADER_AUTHORIZATION] = `Bearer ${options.accessToken}`;\n }\n\n if (options.warrantToken) {\n requestHeaders[HEADER_WARRANT_TOKEN] = options.warrantToken;\n }\n\n let res: HttpClientResponseInterface;\n try {\n res = await this.client.get(path, {\n params: options.query,\n headers: requestHeaders,\n });\n } catch (error) {\n this.handleHttpError({ path, error });\n\n throw error;\n }\n\n try {\n return { data: await res.toJSON() };\n } catch (error) {\n await this.handleParseError(error, res);\n throw error;\n }\n }\n\n async put<Result = any, Entity = any>(\n path: string,\n entity: Entity,\n options: PutOptions = {},\n ): Promise<{ data: Result }> {\n if (!options.skipApiKeyCheck) {\n this.requireApiKey(path);\n }\n\n const requestHeaders: Record<string, string> = {};\n\n if (options.idempotencyKey) {\n requestHeaders[HEADER_IDEMPOTENCY_KEY] = options.idempotencyKey;\n }\n\n let res: HttpClientResponseInterface;\n\n try {\n res = await this.client.put<Entity>(path, entity, {\n params: options.query,\n headers: requestHeaders,\n });\n } catch (error) {\n this.handleHttpError({ path, error });\n\n throw error;\n }\n\n try {\n return { data: await res.toJSON() };\n } catch (error) {\n await this.handleParseError(error, res);\n throw error;\n }\n }\n\n async patch<Result = any, Entity = any>(\n path: string,\n entity: Entity,\n options: PatchOptions = {},\n ): Promise<{ data: Result }> {\n if (!options.skipApiKeyCheck) {\n this.requireApiKey(path);\n }\n\n const requestHeaders: Record<string, string> = {};\n\n if (options.idempotencyKey) {\n requestHeaders[HEADER_IDEMPOTENCY_KEY] = options.idempotencyKey;\n }\n\n let res: HttpClientResponseInterface;\n\n try {\n res = await this.client.patch<Entity>(path, entity, {\n params: options.query,\n headers: requestHeaders,\n });\n } catch (error) {\n this.handleHttpError({ path, error });\n\n throw error;\n }\n\n try {\n return { data: await res.toJSON() };\n } catch (error) {\n await this.handleParseError(error, res);\n throw error;\n }\n }\n\n async delete(path: string, query?: any): Promise<void> {\n this.requireApiKey(path);\n\n try {\n await this.client.delete(path, {\n params: query,\n });\n } catch (error) {\n this.handleHttpError({ path, error });\n\n throw error;\n }\n }\n\n async deleteWithBody<Entity = any>(\n path: string,\n entity: Entity,\n ): Promise<void> {\n this.requireApiKey(path);\n\n try {\n await this.client.deleteWithBody(path, entity, {});\n } catch (error) {\n this.handleHttpError({ path, error });\n\n throw error;\n }\n }\n\n emitWarning(warning: string) {\n // tslint:disable-next-line:no-console\n console.warn(`WorkOS: ${warning}`);\n }\n\n private async handleParseError(\n error: unknown,\n res: HttpClientResponseInterface,\n ) {\n if (error instanceof SyntaxError) {\n const rawResponse = res.getRawResponse() as Response;\n const requestID = rawResponse.headers.get('X-Request-ID') ?? '';\n const rawStatus = rawResponse.status;\n const rawBody = await rawResponse.text();\n throw new ParseError({\n message: error.message,\n rawBody,\n rawStatus,\n requestID,\n });\n }\n }\n\n private handleHttpError({ path, error }: { path: string; error: unknown }) {\n if (!(error instanceof HttpClientError)) {\n throw new Error(`Unexpected error: ${error}`, { cause: error });\n }\n\n const { response } = error as HttpClientError<WorkOSResponseError>;\n\n if (response) {\n const { status, data, headers } = response;\n\n const requestID = headers['X-Request-ID'] ?? '';\n const {\n code,\n error_description: errorDescription,\n error,\n errors,\n message,\n } = data;\n\n switch (status) {\n case 401: {\n throw new UnauthorizedException(requestID);\n }\n case 409: {\n throw new ConflictException({ requestID, message, error });\n }\n case 422: {\n throw new UnprocessableEntityException({\n code,\n errors,\n message,\n requestID,\n });\n }\n case 404: {\n throw new NotFoundException({\n code,\n message,\n path,\n requestID,\n });\n }\n case 429: {\n const retryAfter = headers.get('Retry-After');\n\n throw new RateLimitExceededException(\n data.message,\n requestID,\n retryAfter ? Number(retryAfter) : null,\n );\n }\n default: {\n if (error || errorDescription) {\n throw new OauthException(\n status,\n requestID,\n error,\n errorDescription,\n data,\n );\n } else if (code && errors) {\n // Note: ideally this should be mapped directly with a `400` status code.\n // However, this would break existing logic for the `OauthException` exception.\n throw new BadRequestException({\n code,\n errors,\n message,\n requestID,\n });\n } else {\n throw new GenericServerException(\n status,\n data.message,\n data,\n requestID,\n );\n }\n }\n }\n }\n }\n}\n"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- import { o as SerializedWriteWarrantOptions, u as WriteWarrantOptions } from "./warrant.interface-DPnDplf7.cjs";
1
+ import { o as SerializedWriteWarrantOptions, u as WriteWarrantOptions } from "./warrant.interface-DgQN4yxm.cjs";
2
2
 
3
3
  //#region src/fga/serializers/write-warrant-options.serializer.d.ts
4
4
  declare const serializeWriteWarrantOptions: (warrant: WriteWarrantOptions) => SerializedWriteWarrantOptions;
5
5
  //#endregion
6
6
  export { serializeWriteWarrantOptions as t };
7
- //# sourceMappingURL=write-warrant-options.serializer-BVsqqyjn.d.cts.map
7
+ //# sourceMappingURL=write-warrant-options.serializer-Bk5t0x2w.d.cts.map
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "8.4.0",
2
+ "version": "8.6.0",
3
3
  "name": "@workos-inc/node",
4
4
  "author": "WorkOS",
5
5
  "description": "A Node wrapper for the WorkOS API",
@@ -1 +0,0 @@
1
- {"version":3,"file":"authentication-event.serializer-mddvaOjb.cjs","names":[],"sources":["../src/user-management/serializers/authentication-event.serializer.ts"],"sourcesContent":["import {\n AuthenticationEvent,\n AuthenticationEventResponse,\n} from '../interfaces';\n\nexport const deserializeAuthenticationEvent = (\n authenticationEvent: AuthenticationEventResponse,\n): AuthenticationEvent => ({\n email: authenticationEvent.email,\n error: authenticationEvent.error,\n ipAddress: authenticationEvent.ip_address,\n status: authenticationEvent.status,\n type: authenticationEvent.type,\n userAgent: authenticationEvent.user_agent,\n userId: authenticationEvent.user_id,\n});\n"],"mappings":";;AAKA,MAAa,kCACX,yBACyB;CACzB,OAAO,oBAAoB;CAC3B,OAAO,oBAAoB;CAC3B,WAAW,oBAAoB;CAC/B,QAAQ,oBAAoB;CAC5B,MAAM,oBAAoB;CAC1B,WAAW,oBAAoB;CAC/B,QAAQ,oBAAoB;CAC7B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"connection.serializer-phS0D1t9.cjs","names":[],"sources":["../src/sso/serializers/connection.serializer.ts"],"sourcesContent":["import { Connection, ConnectionResponse } from '../interfaces';\n\nexport const deserializeConnection = (\n connection: ConnectionResponse,\n): Connection => ({\n object: connection.object,\n id: connection.id,\n organizationId: connection.organization_id,\n name: connection.name,\n type: connection.connection_type,\n state: connection.state,\n domains: connection.domains,\n createdAt: connection.created_at,\n updatedAt: connection.updated_at,\n});\n"],"mappings":";;AAEA,MAAa,yBACX,gBACgB;CAChB,QAAQ,WAAW;CACnB,IAAI,WAAW;CACf,gBAAgB,WAAW;CAC3B,MAAM,WAAW;CACjB,MAAM,WAAW;CACjB,OAAO,WAAW;CAClB,SAAS,WAAW;CACpB,WAAW,WAAW;CACtB,WAAW,WAAW;CACvB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"directory-user.serializer-UTYCZSSB.cjs","names":["deserializeDirectoryGroup"],"sources":["../src/directory-sync/serializers/directory-user.serializer.ts"],"sourcesContent":["import {\n DefaultCustomAttributes,\n DirectoryUser,\n DirectoryUserResponse,\n DirectoryUserWithGroups,\n DirectoryUserWithGroupsResponse,\n} from '../interfaces';\nimport { deserializeDirectoryGroup } from './directory-group.serializer';\n\nexport const deserializeDirectoryUser = <\n TCustomAttributes extends object = DefaultCustomAttributes,\n>(\n directoryUser:\n | DirectoryUserResponse<TCustomAttributes>\n | DirectoryUserWithGroupsResponse<TCustomAttributes>,\n): DirectoryUser<TCustomAttributes> => ({\n object: directoryUser.object,\n id: directoryUser.id,\n directoryId: directoryUser.directory_id,\n organizationId: directoryUser.organization_id,\n rawAttributes: directoryUser.raw_attributes,\n customAttributes: directoryUser.custom_attributes,\n idpId: directoryUser.idp_id,\n firstName: directoryUser.first_name,\n email: directoryUser.email,\n lastName: directoryUser.last_name,\n state: directoryUser.state,\n role: directoryUser.role,\n roles: directoryUser.roles,\n createdAt: directoryUser.created_at,\n updatedAt: directoryUser.updated_at,\n});\n\nexport const deserializeDirectoryUserWithGroups = <\n TCustomAttributes extends object = DefaultCustomAttributes,\n>(\n directoryUserWithGroups: DirectoryUserWithGroupsResponse<TCustomAttributes>,\n): DirectoryUserWithGroups<TCustomAttributes> => ({\n ...deserializeDirectoryUser(directoryUserWithGroups),\n groups: directoryUserWithGroups.groups.map(deserializeDirectoryGroup),\n});\n\nexport const deserializeUpdatedEventDirectoryUser = (\n directoryUser: DirectoryUserResponse & Record<'previous_attributes', any>,\n): DirectoryUser & Record<'previousAttributes', any> => ({\n object: 'directory_user',\n id: directoryUser.id,\n directoryId: directoryUser.directory_id,\n organizationId: directoryUser.organization_id,\n rawAttributes: directoryUser.raw_attributes,\n customAttributes: directoryUser.custom_attributes,\n idpId: directoryUser.idp_id,\n firstName: directoryUser.first_name,\n email: directoryUser.email,\n lastName: directoryUser.last_name,\n state: directoryUser.state,\n role: directoryUser.role,\n roles: directoryUser.roles,\n createdAt: directoryUser.created_at,\n updatedAt: directoryUser.updated_at,\n previousAttributes: directoryUser.previous_attributes,\n});\n"],"mappings":";;;AASA,MAAa,4BAGX,mBAGsC;CACtC,QAAQ,cAAc;CACtB,IAAI,cAAc;CAClB,aAAa,cAAc;CAC3B,gBAAgB,cAAc;CAC9B,eAAe,cAAc;CAC7B,kBAAkB,cAAc;CAChC,OAAO,cAAc;CACrB,WAAW,cAAc;CACzB,OAAO,cAAc;CACrB,UAAU,cAAc;CACxB,OAAO,cAAc;CACrB,MAAM,cAAc;CACpB,OAAO,cAAc;CACrB,WAAW,cAAc;CACzB,WAAW,cAAc;CAC1B;AAED,MAAa,sCAGX,6BACgD;CAChD,GAAG,yBAAyB,wBAAwB;CACpD,QAAQ,wBAAwB,OAAO,IAAIA,6DAA0B;CACtE;AAED,MAAa,wCACX,mBACuD;CACvD,QAAQ;CACR,IAAI,cAAc;CAClB,aAAa,cAAc;CAC3B,gBAAgB,cAAc;CAC9B,eAAe,cAAc;CAC7B,kBAAkB,cAAc;CAChC,OAAO,cAAc;CACrB,WAAW,cAAc;CACzB,OAAO,cAAc;CACrB,UAAU,cAAc;CACxB,OAAO,cAAc;CACrB,MAAM,cAAc;CACpB,OAAO,cAAc;CACrB,WAAW,cAAc;CACzB,WAAW,cAAc;CACzB,oBAAoB,cAAc;CACnC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"event.serializer-D23ulCkG.cjs","names":["eventBase: EventBase","deserializeAuthenticationEvent","deserializeAuthenticationRadarRiskDetectedEvent","deserializeConnection","deserializeEventDirectory","deserializeDeletedEventDirectory","deserializeDirectoryGroup","deserializeUpdatedEventDirectoryGroup","deserializeDirectoryUser","deserializeUpdatedEventDirectoryUser","deserializeEmailVerificationEvent","deserializeInvitationEvent","deserializeMagicAuthEvent","deserializePasswordResetEvent","deserializeUser","deserializeOrganizationMembership","deserializeRoleEvent","deserializeOrganizationRole","deserializePermission","deserializeSession","deserializeOrganization","deserializeOrganizationDomain","deserializeApiKey"],"sources":["../src/common/serializers/event.serializer.ts"],"sourcesContent":["import {\n deserializeDeletedEventDirectory,\n deserializeDirectoryUser,\n deserializeEventDirectory,\n deserializeDirectoryGroup,\n deserializeUpdatedEventDirectoryGroup,\n deserializeUpdatedEventDirectoryUser,\n} from '../../directory-sync/serializers';\nimport { deserializeOrganization } from '../../organizations/serializers';\nimport { deserializeConnection } from '../../sso/serializers';\nimport {\n deserializeAuthenticationEvent,\n deserializeEmailVerificationEvent,\n deserializeInvitationEvent,\n deserializeMagicAuthEvent,\n deserializePasswordResetEvent,\n deserializeUser,\n} from '../../user-management/serializers';\nimport { deserializeOrganizationDomain } from '../../organization-domains/serializers/organization-domain.serializer';\nimport { deserializeOrganizationMembership } from '../../user-management/serializers/organization-membership.serializer';\nimport { deserializeRoleEvent } from '../../user-management/serializers/role.serializer';\nimport { deserializeSession } from '../../user-management/serializers/session.serializer';\nimport { Event, EventBase, EventResponse } from '../interfaces';\nimport { deserializeAuthenticationRadarRiskDetectedEvent } from '../../user-management/serializers/authentication-radar-risk-event-serializer';\nimport { deserializeApiKey } from '../../api-keys/serializers/api-key.serializer';\nimport { deserializeOrganizationRole } from '../../authorization/serializers/organization-role.serializer';\nimport { deserializePermission } from '../../authorization/serializers/permission.serializer';\n\nexport const deserializeEvent = (event: EventResponse): Event => {\n const eventBase: EventBase = {\n id: event.id,\n createdAt: event.created_at,\n context: event.context,\n };\n\n switch (event.event) {\n case 'authentication.email_verification_succeeded':\n case 'authentication.magic_auth_failed':\n case 'authentication.magic_auth_succeeded':\n case 'authentication.mfa_succeeded':\n case 'authentication.oauth_failed':\n case 'authentication.oauth_succeeded':\n case 'authentication.passkey_failed':\n case 'authentication.passkey_succeeded':\n case 'authentication.password_failed':\n case 'authentication.password_succeeded':\n case 'authentication.sso_failed':\n case 'authentication.sso_succeeded':\n return {\n ...eventBase,\n event: event.event,\n data: deserializeAuthenticationEvent(event.data),\n };\n case 'authentication.radar_risk_detected':\n return {\n ...eventBase,\n event: event.event,\n data: deserializeAuthenticationRadarRiskDetectedEvent(event.data),\n };\n case 'connection.activated':\n case 'connection.deactivated':\n case 'connection.deleted':\n return {\n ...eventBase,\n event: event.event,\n data: deserializeConnection(event.data),\n };\n case 'dsync.activated':\n return {\n ...eventBase,\n event: event.event,\n data: deserializeEventDirectory(event.data),\n };\n case 'dsync.deleted':\n return {\n ...eventBase,\n event: event.event,\n data: deserializeDeletedEventDirectory(event.data),\n };\n case 'dsync.group.created':\n case 'dsync.group.deleted':\n return {\n ...eventBase,\n event: event.event,\n data: deserializeDirectoryGroup(event.data),\n };\n case 'dsync.group.updated':\n return {\n ...eventBase,\n event: event.event,\n data: deserializeUpdatedEventDirectoryGroup(event.data),\n };\n case 'dsync.group.user_added':\n case 'dsync.group.user_removed':\n return {\n ...eventBase,\n event: event.event,\n data: {\n directoryId: event.data.directory_id,\n user: deserializeDirectoryUser(event.data.user),\n group: deserializeDirectoryGroup(event.data.group),\n },\n };\n case 'dsync.user.created':\n case 'dsync.user.deleted':\n return {\n ...eventBase,\n event: event.event,\n data: deserializeDirectoryUser(event.data),\n };\n case 'dsync.user.updated':\n return {\n ...eventBase,\n event: event.event,\n data: deserializeUpdatedEventDirectoryUser(event.data),\n };\n case 'email_verification.created':\n return {\n ...eventBase,\n event: event.event,\n data: deserializeEmailVerificationEvent(event.data),\n };\n case 'invitation.accepted':\n case 'invitation.created':\n case 'invitation.revoked':\n case 'invitation.resent':\n return {\n ...eventBase,\n event: event.event,\n data: deserializeInvitationEvent(event.data),\n };\n case 'magic_auth.created':\n return {\n ...eventBase,\n event: event.event,\n data: deserializeMagicAuthEvent(event.data),\n };\n case 'password_reset.created':\n case 'password_reset.succeeded':\n return {\n ...eventBase,\n event: event.event,\n data: deserializePasswordResetEvent(event.data),\n };\n case 'user.created':\n case 'user.updated':\n case 'user.deleted':\n return {\n ...eventBase,\n event: event.event,\n data: deserializeUser(event.data),\n };\n case 'organization_membership.created':\n case 'organization_membership.deleted':\n case 'organization_membership.updated':\n return {\n ...eventBase,\n event: event.event,\n data: deserializeOrganizationMembership(event.data),\n };\n case 'role.created':\n case 'role.deleted':\n case 'role.updated':\n return {\n ...eventBase,\n event: event.event,\n data: deserializeRoleEvent(event.data),\n };\n case 'organization_role.created':\n case 'organization_role.updated':\n case 'organization_role.deleted':\n return {\n ...eventBase,\n event: event.event,\n data: deserializeOrganizationRole(event.data),\n };\n case 'permission.created':\n case 'permission.updated':\n case 'permission.deleted':\n return {\n ...eventBase,\n event: event.event,\n data: deserializePermission(event.data),\n };\n case 'session.created':\n case 'session.revoked':\n return {\n ...eventBase,\n event: event.event,\n data: deserializeSession(event.data),\n };\n case 'organization.created':\n case 'organization.updated':\n case 'organization.deleted':\n return {\n ...eventBase,\n event: event.event,\n data: deserializeOrganization(event.data),\n };\n case 'organization_domain.verified':\n case 'organization_domain.verification_failed':\n case 'organization_domain.created':\n case 'organization_domain.updated':\n case 'organization_domain.deleted':\n return {\n ...eventBase,\n event: event.event,\n data: deserializeOrganizationDomain(event.data),\n };\n case 'api_key.created':\n case 'api_key.revoked':\n return {\n ...eventBase,\n event: event.event,\n data: deserializeApiKey(event.data),\n };\n }\n};\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-portal-link-intent.interface-CCKgsr2O.cjs","names":[],"sources":["../src/portal/interfaces/generate-portal-link-intent.interface.ts"],"sourcesContent":["export enum GeneratePortalLinkIntent {\n AuditLogs = 'audit_logs',\n DomainVerification = 'domain_verification',\n DSync = 'dsync',\n LogStreams = 'log_streams',\n SSO = 'sso',\n CertificateRenewal = 'certificate_renewal',\n}\n"],"mappings":";;AAAA,IAAY,gFAAL;AACL;AACA;AACA;AACA;AACA;AACA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"http-client-DZQxEd4J.cjs","names":["baseURL: string","options?: RequestInit","sanitizedQueryObj: Record<string, any>"],"sources":["../src/common/net/http-client.ts"],"sourcesContent":["import {\n HttpClientInterface,\n HttpClientResponseInterface,\n RequestHeaders,\n RequestOptions,\n ResponseHeaders,\n} from '../interfaces/http-client.interface';\n\nexport abstract class HttpClient implements HttpClientInterface {\n readonly MAX_RETRY_ATTEMPTS = 3;\n readonly BACKOFF_MULTIPLIER = 1.5;\n readonly MINIMUM_SLEEP_TIME_IN_MILLISECONDS = 500;\n readonly RETRY_STATUS_CODES = [408, 500, 502, 504];\n\n constructor(\n readonly baseURL: string,\n readonly options?: RequestInit,\n ) {}\n\n /** The HTTP client name used for diagnostics */\n getClientName(): string {\n throw new Error('getClientName not implemented');\n }\n\n abstract get(\n path: string,\n options: RequestOptions,\n ): Promise<HttpClientResponseInterface>;\n\n abstract post<Entity = any>(\n path: string,\n entity: Entity,\n options: RequestOptions,\n ): Promise<HttpClientResponseInterface>;\n\n abstract put<Entity = any>(\n path: string,\n entity: Entity,\n options: RequestOptions,\n ): Promise<HttpClientResponseInterface>;\n\n abstract patch<Entity = any>(\n path: string,\n entity: Entity,\n options: RequestOptions,\n ): Promise<HttpClientResponseInterface>;\n\n abstract delete(\n path: string,\n options: RequestOptions,\n ): Promise<HttpClientResponseInterface>;\n\n abstract deleteWithBody<Entity = any>(\n path: string,\n entity: Entity,\n options: RequestOptions,\n ): Promise<HttpClientResponseInterface>;\n\n addClientToUserAgent(userAgent: string): string {\n if (userAgent.indexOf(' ') > -1) {\n return userAgent.replace(/\\b\\s/, `/${this.getClientName()} `);\n } else {\n return (userAgent += `/${this.getClientName()}`);\n }\n }\n\n static getResourceURL(\n baseURL: string,\n path: string,\n params?: Record<string, any>,\n ) {\n const queryString = HttpClient.getQueryString(params);\n const url = new URL([path, queryString].filter(Boolean).join('?'), baseURL);\n return url.toString();\n }\n\n static getQueryString(queryObj?: Record<string, any>) {\n if (!queryObj) return undefined;\n\n const sanitizedQueryObj: Record<string, any> = {};\n\n Object.entries(queryObj).forEach(([param, value]) => {\n if (value !== '' && value !== undefined) sanitizedQueryObj[param] = value;\n });\n\n return new URLSearchParams(sanitizedQueryObj).toString();\n }\n\n static getContentTypeHeader(entity: any): RequestHeaders | undefined {\n if (entity instanceof URLSearchParams) {\n return {\n 'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8',\n };\n }\n return undefined;\n }\n\n static getBody(entity: any): BodyInit | null | undefined {\n if (entity === null || entity instanceof URLSearchParams) {\n return entity;\n }\n\n return JSON.stringify(entity);\n }\n\n static isPathRetryable(path: string): boolean {\n return (\n path.startsWith('/fga/') ||\n path.startsWith('/vault/') ||\n path.startsWith('/audit_logs/events')\n );\n }\n\n private getSleepTimeInMilliseconds(retryAttempt: number): number {\n const sleepTime =\n this.MINIMUM_SLEEP_TIME_IN_MILLISECONDS *\n Math.pow(this.BACKOFF_MULTIPLIER, retryAttempt);\n const jitter = Math.random() + 0.5;\n return sleepTime * jitter;\n }\n\n sleep = (retryAttempt: number) =>\n new Promise((resolve) =>\n setTimeout(resolve, this.getSleepTimeInMilliseconds(retryAttempt)),\n );\n}\n\n// tslint:disable-next-line\nexport abstract class HttpClientResponse implements HttpClientResponseInterface {\n _statusCode: number;\n _headers: ResponseHeaders;\n\n constructor(statusCode: number, headers: ResponseHeaders) {\n this._statusCode = statusCode;\n this._headers = headers;\n }\n\n getStatusCode(): number {\n return this._statusCode;\n }\n\n getHeaders(): ResponseHeaders {\n return this._headers;\n }\n\n abstract getRawResponse(): unknown;\n\n abstract toJSON(): any | null;\n}\n\n// tslint:disable-next-line\nexport class HttpClientError<T> extends Error {\n readonly name: string = 'HttpClientError';\n readonly message: string = 'The request could not be completed.';\n readonly response: { status: number; headers: any; data: T };\n\n constructor({\n message,\n response,\n }: {\n message: string;\n readonly response: HttpClientError<T>['response'];\n }) {\n super(message);\n this.message = message;\n this.response = response;\n }\n}\n"],"mappings":";;AAQA,IAAsB,aAAtB,MAAsB,WAA0C;CAC9D,AAAS,qBAAqB;CAC9B,AAAS,qBAAqB;CAC9B,AAAS,qCAAqC;CAC9C,AAAS,qBAAqB;EAAC;EAAK;EAAK;EAAK;EAAI;CAElD,YACE,AAASA,SACT,AAASC,SACT;EAFS;EACA;;;CAIX,gBAAwB;AACtB,QAAM,IAAI,MAAM,gCAAgC;;CAqClD,qBAAqB,WAA2B;AAC9C,MAAI,UAAU,QAAQ,IAAI,GAAG,GAC3B,QAAO,UAAU,QAAQ,QAAQ,IAAI,KAAK,eAAe,CAAC,GAAG;MAE7D,QAAQ,aAAa,IAAI,KAAK,eAAe;;CAIjD,OAAO,eACL,SACA,MACA,QACA;EACA,MAAM,cAAc,WAAW,eAAe,OAAO;AAErD,SADY,IAAI,IAAI,CAAC,MAAM,YAAY,CAAC,OAAO,QAAQ,CAAC,KAAK,IAAI,EAAE,QAAQ,CAChE,UAAU;;CAGvB,OAAO,eAAe,UAAgC;AACpD,MAAI,CAAC,SAAU,QAAO;EAEtB,MAAMC,oBAAyC,EAAE;AAEjD,SAAO,QAAQ,SAAS,CAAC,SAAS,CAAC,OAAO,WAAW;AACnD,OAAI,UAAU,MAAM,UAAU,OAAW,mBAAkB,SAAS;IACpE;AAEF,SAAO,IAAI,gBAAgB,kBAAkB,CAAC,UAAU;;CAG1D,OAAO,qBAAqB,QAAyC;AACnE,MAAI,kBAAkB,gBACpB,QAAO,EACL,gBAAgB,mDACjB;;CAKL,OAAO,QAAQ,QAA0C;AACvD,MAAI,WAAW,QAAQ,kBAAkB,gBACvC,QAAO;AAGT,SAAO,KAAK,UAAU,OAAO;;CAG/B,OAAO,gBAAgB,MAAuB;AAC5C,SACE,KAAK,WAAW,QAAQ,IACxB,KAAK,WAAW,UAAU,IAC1B,KAAK,WAAW,qBAAqB;;CAIzC,AAAQ,2BAA2B,cAA8B;AAK/D,SAHE,KAAK,qCACL,KAAK,IAAI,KAAK,oBAAoB,aAAa,IAClC,KAAK,QAAQ,GAAG;;CAIjC,SAAS,iBACP,IAAI,SAAS,YACX,WAAW,SAAS,KAAK,2BAA2B,aAAa,CAAC,CACnE;;AAIL,IAAsB,qBAAtB,MAAgF;CAC9E;CACA;CAEA,YAAY,YAAoB,SAA0B;AACxD,OAAK,cAAc;AACnB,OAAK,WAAW;;CAGlB,gBAAwB;AACtB,SAAO,KAAK;;CAGd,aAA8B;AAC5B,SAAO,KAAK;;;AAShB,IAAa,kBAAb,cAAwC,MAAM;CAC5C,AAAS,OAAe;CACxB,AAAS,UAAkB;CAC3B,AAAS;CAET,YAAY,EACV,SACA,YAIC;AACD,QAAM,QAAQ;AACd,OAAK,UAAU;AACf,OAAK,WAAW"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"organization-domain.serializer-BuecMdCg.cjs","names":[],"sources":["../src/organization-domains/serializers/organization-domain.serializer.ts"],"sourcesContent":["import { OrganizationDomain, OrganizationDomainResponse } from '../interfaces';\n\nexport const deserializeOrganizationDomain = (\n organizationDomain: OrganizationDomainResponse,\n): OrganizationDomain => ({\n object: organizationDomain.object,\n id: organizationDomain.id,\n domain: organizationDomain.domain,\n organizationId: organizationDomain.organization_id,\n state: organizationDomain.state,\n verificationToken: organizationDomain.verification_token,\n verificationStrategy: organizationDomain.verification_strategy,\n createdAt: organizationDomain.created_at,\n updatedAt: organizationDomain.updated_at,\n});\n"],"mappings":";;AAEA,MAAa,iCACX,wBACwB;CACxB,QAAQ,mBAAmB;CAC3B,IAAI,mBAAmB;CACvB,QAAQ,mBAAmB;CAC3B,gBAAgB,mBAAmB;CACnC,OAAO,mBAAmB;CAC1B,mBAAmB,mBAAmB;CACtC,sBAAsB,mBAAmB;CACzC,WAAW,mBAAmB;CAC9B,WAAW,mBAAmB;CAC/B"}
@@ -1,9 +0,0 @@
1
- import { t as OrganizationRole } from "./organization-role.interface-DXjTJ0Z5.cjs";
2
- import { Xn as OrganizationRoleResponse, Zn as Role } from "./index-BDMqzUe6.cjs";
3
-
4
- //#region src/authorization/serializers/organization-role.serializer.d.ts
5
- declare const deserializeRole: (role: OrganizationRoleResponse) => Role;
6
- declare const deserializeOrganizationRole: (role: OrganizationRoleResponse) => OrganizationRole;
7
- //#endregion
8
- export { deserializeRole as n, deserializeOrganizationRole as t };
9
- //# sourceMappingURL=organization-role.serializer-4Qp0ZjZH.d.cts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"organization-role.serializer-lsSLexV6.cjs","names":[],"sources":["../src/authorization/serializers/organization-role.serializer.ts"],"sourcesContent":["import { Role, OrganizationRoleResponse } from '../../roles/interfaces';\nimport { OrganizationRole } from '../interfaces';\n\nexport const deserializeRole = (role: OrganizationRoleResponse): Role => ({\n object: role.object,\n id: role.id,\n name: role.name,\n slug: role.slug,\n description: role.description,\n permissions: role.permissions,\n type: role.type,\n createdAt: role.created_at,\n updatedAt: role.updated_at,\n});\n\nexport const deserializeOrganizationRole = (\n role: OrganizationRoleResponse,\n): OrganizationRole => ({\n object: role.object,\n id: role.id,\n name: role.name,\n slug: role.slug,\n description: role.description,\n permissions: role.permissions,\n type: 'OrganizationRole',\n createdAt: role.created_at,\n updatedAt: role.updated_at,\n});\n"],"mappings":";;AAGA,MAAa,mBAAmB,UAA0C;CACxE,QAAQ,KAAK;CACb,IAAI,KAAK;CACT,MAAM,KAAK;CACX,MAAM,KAAK;CACX,aAAa,KAAK;CAClB,aAAa,KAAK;CAClB,MAAM,KAAK;CACX,WAAW,KAAK;CAChB,WAAW,KAAK;CACjB;AAED,MAAa,+BACX,UACsB;CACtB,QAAQ,KAAK;CACb,IAAI,KAAK;CACT,MAAM,KAAK;CACX,MAAM,KAAK;CACX,aAAa,KAAK;CAClB,aAAa,KAAK;CAClB,MAAM;CACN,WAAW,KAAK;CAChB,WAAW,KAAK;CACjB"}
@@ -1,26 +0,0 @@
1
-
2
- //#region src/sso/serializers/profile.serializer.ts
3
- const deserializeProfile = (profile) => ({
4
- id: profile.id,
5
- idpId: profile.idp_id,
6
- organizationId: profile.organization_id,
7
- connectionId: profile.connection_id,
8
- connectionType: profile.connection_type,
9
- email: profile.email,
10
- firstName: profile.first_name,
11
- lastName: profile.last_name,
12
- role: profile.role,
13
- roles: profile.roles,
14
- groups: profile.groups,
15
- customAttributes: profile.custom_attributes,
16
- rawAttributes: profile.raw_attributes
17
- });
18
-
19
- //#endregion
20
- Object.defineProperty(exports, 'deserializeProfile', {
21
- enumerable: true,
22
- get: function () {
23
- return deserializeProfile;
24
- }
25
- });
26
- //# sourceMappingURL=profile.serializer-BDlm0TRU.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"profile.serializer-BDlm0TRU.cjs","names":[],"sources":["../src/sso/serializers/profile.serializer.ts"],"sourcesContent":["import { UnknownRecord } from '../../common/interfaces/unknown-record.interface';\nimport { Profile, ProfileResponse } from '../interfaces';\n\nexport const deserializeProfile = <CustomAttributesType extends UnknownRecord>(\n profile: ProfileResponse<CustomAttributesType>,\n): Profile<CustomAttributesType> => ({\n id: profile.id,\n idpId: profile.idp_id,\n organizationId: profile.organization_id,\n connectionId: profile.connection_id,\n connectionType: profile.connection_type,\n email: profile.email,\n firstName: profile.first_name,\n lastName: profile.last_name,\n role: profile.role,\n roles: profile.roles,\n groups: profile.groups,\n customAttributes: profile.custom_attributes,\n rawAttributes: profile.raw_attributes,\n});\n"],"mappings":";;AAGA,MAAa,sBACX,aACmC;CACnC,IAAI,QAAQ;CACZ,OAAO,QAAQ;CACf,gBAAgB,QAAQ;CACxB,cAAc,QAAQ;CACtB,gBAAgB,QAAQ;CACxB,OAAO,QAAQ;CACf,WAAW,QAAQ;CACnB,UAAU,QAAQ;CAClB,MAAM,QAAQ;CACd,OAAO,QAAQ;CACf,QAAQ,QAAQ;CAChB,kBAAkB,QAAQ;CAC1B,eAAe,QAAQ;CACxB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"session.serializer-Dmj9Hm3q.cjs","names":[],"sources":["../src/user-management/serializers/session.serializer.ts"],"sourcesContent":["import { Session, SessionResponse } from '../interfaces';\n\nexport const deserializeSession = (session: SessionResponse): Session => ({\n object: 'session',\n id: session.id,\n userId: session.user_id,\n ipAddress: session.ip_address,\n userAgent: session.user_agent,\n organizationId: session.organization_id,\n impersonator: session.impersonator,\n authMethod: session.auth_method,\n status: session.status,\n expiresAt: session.expires_at,\n endedAt: session.ended_at,\n createdAt: session.created_at,\n updatedAt: session.updated_at,\n});\n"],"mappings":";;AAEA,MAAa,sBAAsB,aAAuC;CACxE,QAAQ;CACR,IAAI,QAAQ;CACZ,QAAQ,QAAQ;CAChB,WAAW,QAAQ;CACnB,WAAW,QAAQ;CACnB,gBAAgB,QAAQ;CACxB,cAAc,QAAQ;CACtB,YAAY,QAAQ;CACpB,QAAQ,QAAQ;CAChB,WAAW,QAAQ;CACnB,SAAS,QAAQ;CACjB,WAAW,QAAQ;CACnB,WAAW,QAAQ;CACpB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"vault-object.serializer-CwmJwCnO.cjs","names":[],"sources":["../src/vault/serializers/vault-object.serializer.ts"],"sourcesContent":["import { List, ListResponse } from '../../common/interfaces';\nimport {\n ReadObjectMetadataResponse,\n ReadObjectResponse,\n UpdateObjectOptions,\n UpdateObjectEntity,\n ObjectMetadata,\n VaultObject,\n ObjectVersionResponse,\n ObjectVersion,\n CreateObjectOptions,\n CreateObjectEntity,\n ObjectDigestResponse,\n ObjectDigest,\n ListObjectVersionsResponse,\n} from '../interfaces';\n\nexport const deserializeObjectMetadata = (\n metadata: ReadObjectMetadataResponse,\n): ObjectMetadata => ({\n context: metadata.context,\n environmentId: metadata.environment_id,\n id: metadata.id,\n keyId: metadata.key_id,\n updatedAt: new Date(Date.parse(metadata.updated_at)),\n updatedBy: metadata.updated_by,\n versionId: metadata.version_id,\n});\n\nexport const deserializeObject = (object: ReadObjectResponse): VaultObject => ({\n id: object.id,\n name: object.name,\n value: object.value,\n metadata: deserializeObjectMetadata(object.metadata),\n});\n\nconst deserializeObjectDigest = (\n digest: ObjectDigestResponse,\n): ObjectDigest => ({\n id: digest.id,\n name: digest.name,\n updatedAt: new Date(Date.parse(digest.updated_at)),\n});\n\nexport const deserializeListObjects = (\n list: ListResponse<ObjectDigestResponse>,\n): List<ObjectDigest> => ({\n object: 'list',\n data: list.data.map(deserializeObjectDigest),\n listMetadata: {\n after: list.list_metadata.after ?? undefined,\n before: list.list_metadata.before ?? undefined,\n },\n});\n\nexport const desrializeListObjectVersions = (\n list: ListObjectVersionsResponse,\n): ObjectVersion[] => list.data.map(deserializeObjectVersion);\n\nconst deserializeObjectVersion = (\n version: ObjectVersionResponse,\n): ObjectVersion => ({\n createdAt: new Date(Date.parse(version.created_at)),\n currentVersion: version.current_version,\n id: version.id,\n});\n\nexport const serializeCreateObjectEntity = (\n options: CreateObjectOptions,\n): CreateObjectEntity => ({\n name: options.name,\n value: options.value,\n key_context: options.context,\n});\n\nexport const serializeUpdateObjectEntity = (\n options: UpdateObjectOptions,\n): UpdateObjectEntity => ({\n value: options.value,\n version_check: options.versionCheck,\n});\n"],"mappings":";;AAiBA,MAAa,6BACX,cACoB;CACpB,SAAS,SAAS;CAClB,eAAe,SAAS;CACxB,IAAI,SAAS;CACb,OAAO,SAAS;CAChB,WAAW,IAAI,KAAK,KAAK,MAAM,SAAS,WAAW,CAAC;CACpD,WAAW,SAAS;CACpB,WAAW,SAAS;CACrB;AAED,MAAa,qBAAqB,YAA6C;CAC7E,IAAI,OAAO;CACX,MAAM,OAAO;CACb,OAAO,OAAO;CACd,UAAU,0BAA0B,OAAO,SAAS;CACrD;AAED,MAAM,2BACJ,YACkB;CAClB,IAAI,OAAO;CACX,MAAM,OAAO;CACb,WAAW,IAAI,KAAK,KAAK,MAAM,OAAO,WAAW,CAAC;CACnD;AAED,MAAa,0BACX,UACwB;CACxB,QAAQ;CACR,MAAM,KAAK,KAAK,IAAI,wBAAwB;CAC5C,cAAc;EACZ,OAAO,KAAK,cAAc,SAAS;EACnC,QAAQ,KAAK,cAAc,UAAU;EACtC;CACF;AAED,MAAa,gCACX,SACoB,KAAK,KAAK,IAAI,yBAAyB;AAE7D,MAAM,4BACJ,aACmB;CACnB,WAAW,IAAI,KAAK,KAAK,MAAM,QAAQ,WAAW,CAAC;CACnD,gBAAgB,QAAQ;CACxB,IAAI,QAAQ;CACb;AAED,MAAa,+BACX,aACwB;CACxB,MAAM,QAAQ;CACd,OAAO,QAAQ;CACf,aAAa,QAAQ;CACtB;AAED,MAAa,+BACX,aACwB;CACxB,OAAO,QAAQ;CACf,eAAe,QAAQ;CACxB"}