@workos-inc/node 8.0.0-beta.3 → 8.0.0-beta.4

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 (246) hide show
  1. package/lib/cjs/audit-logs/audit-logs.d.cts +3 -2
  2. package/lib/cjs/client/index.cjs +42 -0
  3. package/lib/cjs/client/index.cjs.map +1 -0
  4. package/lib/cjs/client/index.d.cts +3 -0
  5. package/lib/cjs/client/sso.cjs +65 -0
  6. package/lib/cjs/client/sso.cjs.map +1 -0
  7. package/lib/cjs/client/sso.d.cts +2 -0
  8. package/lib/cjs/client/user-management.cjs +110 -0
  9. package/lib/cjs/client/user-management.cjs.map +1 -0
  10. package/lib/cjs/client/user-management.d.cts +1 -0
  11. package/lib/cjs/client/utils.cjs +49 -0
  12. package/lib/cjs/client/utils.cjs.map +1 -0
  13. package/lib/cjs/client/utils.d.cts +7 -0
  14. package/lib/cjs/common/decorators/public-method.cjs +48 -0
  15. package/lib/cjs/common/decorators/public-method.cjs.map +1 -0
  16. package/lib/cjs/common/decorators/public-method.d.cts +12 -0
  17. package/lib/cjs/common/interfaces/event.interface.cjs.map +1 -1
  18. package/lib/cjs/common/interfaces/event.interface.d.cts +19 -3
  19. package/lib/cjs/common/interfaces/index.d.cts +1 -1
  20. package/lib/cjs/common/interfaces/workos-options.interface.cjs.map +1 -1
  21. package/lib/cjs/common/interfaces/workos-options.interface.d.cts +1 -0
  22. package/lib/cjs/common/net/fetch-client.cjs +67 -36
  23. package/lib/cjs/common/net/fetch-client.cjs.map +1 -1
  24. package/lib/cjs/common/net/fetch-client.d.cts +5 -2
  25. package/lib/cjs/common/serializers/event.serializer.cjs +2 -0
  26. package/lib/cjs/common/serializers/event.serializer.cjs.map +1 -1
  27. package/lib/cjs/common/utils/fetch-and-deserialize.d.cts +3 -2
  28. package/lib/cjs/common/utils/pagination.cjs +2 -4
  29. package/lib/cjs/common/utils/pagination.cjs.map +1 -1
  30. package/lib/cjs/common/utils/runtime-info.cjs +73 -0
  31. package/lib/cjs/common/utils/runtime-info.cjs.map +1 -0
  32. package/lib/cjs/common/utils/runtime-info.d.cts +22 -0
  33. package/lib/cjs/directory-sync/directory-sync.d.cts +4 -3
  34. package/lib/cjs/events/events.d.cts +3 -2
  35. package/lib/cjs/fga/fga.d.cts +4 -3
  36. package/lib/cjs/fga/utils/fetch-and-deserialize-list.d.cts +3 -2
  37. package/lib/cjs/index.cjs +2 -0
  38. package/lib/cjs/index.cjs.map +1 -1
  39. package/lib/cjs/index.client.cjs +42 -0
  40. package/lib/cjs/index.client.cjs.map +1 -0
  41. package/lib/cjs/index.client.d.cts +3 -0
  42. package/lib/cjs/index.d.cts +3 -2
  43. package/lib/cjs/index.public.cjs +52 -0
  44. package/lib/cjs/index.public.cjs.map +1 -0
  45. package/lib/cjs/index.public.d.cts +36 -0
  46. package/lib/cjs/index.worker.d.cts +3 -2
  47. package/lib/cjs/mfa/mfa.d.cts +3 -2
  48. package/lib/cjs/organization-domains/organization-domains.d.cts +3 -2
  49. package/lib/cjs/organizations/interfaces/list-organization-feature-flags-options.interface.cjs.map +1 -1
  50. package/lib/cjs/organizations/interfaces/list-organization-feature-flags-options.interface.d.cts +3 -1
  51. package/lib/cjs/organizations/organizations.cjs +15 -5
  52. package/lib/cjs/organizations/organizations.cjs.map +1 -1
  53. package/lib/cjs/organizations/organizations.d.cts +4 -3
  54. package/lib/cjs/passwordless/passwordless.d.cts +3 -2
  55. package/lib/cjs/portal/portal.d.cts +3 -2
  56. package/lib/cjs/public/index.cjs +42 -0
  57. package/lib/cjs/public/index.cjs.map +1 -0
  58. package/lib/cjs/public/index.d.cts +2 -0
  59. package/lib/cjs/public/sso.cjs +65 -0
  60. package/lib/cjs/public/sso.cjs.map +1 -0
  61. package/lib/cjs/public/sso.d.cts +1 -0
  62. package/lib/cjs/public/user-management.cjs +110 -0
  63. package/lib/cjs/public/user-management.cjs.map +1 -0
  64. package/lib/cjs/public/user-management.d.cts +1 -0
  65. package/lib/cjs/public/utils.cjs +49 -0
  66. package/lib/cjs/public/utils.cjs.map +1 -0
  67. package/lib/cjs/public/utils.d.cts +7 -0
  68. package/lib/cjs/sso/interfaces/authorization-url-options.interface.cjs.map +1 -1
  69. package/lib/cjs/sso/interfaces/authorization-url-options.interface.d.cts +19 -4
  70. package/lib/cjs/sso/interfaces/connection-type.enum.cjs +1 -0
  71. package/lib/cjs/sso/interfaces/connection-type.enum.cjs.map +1 -1
  72. package/lib/cjs/sso/interfaces/connection-type.enum.d.cts +1 -0
  73. package/lib/cjs/sso/interfaces/index.d.cts +1 -0
  74. package/lib/cjs/sso/interfaces/profile-and-token.interface.cjs.map +1 -1
  75. package/lib/cjs/sso/interfaces/profile-and-token.interface.d.cts +3 -0
  76. package/lib/cjs/sso/serializers/index.d.cts +1 -0
  77. package/lib/cjs/sso/serializers/profile-and-token.serializer.cjs +3 -1
  78. package/lib/cjs/sso/serializers/profile-and-token.serializer.cjs.map +1 -1
  79. package/lib/cjs/sso/serializers/profile-and-token.serializer.d.cts +1 -0
  80. package/lib/cjs/sso/sso.cjs +15 -37
  81. package/lib/cjs/sso/sso.cjs.map +1 -1
  82. package/lib/cjs/sso/sso.d.cts +2 -1
  83. package/lib/cjs/sso-BkBnkcTC.d.cts +22 -0
  84. package/lib/cjs/sso-Cdnhezcz.d.cts +31 -0
  85. package/lib/cjs/sso-DwRz-nPM.d.cts +31 -0
  86. package/lib/cjs/user-management/interfaces/authenticate-with-session-cookie.interface.cjs.map +1 -1
  87. package/lib/cjs/user-management/interfaces/authenticate-with-session-cookie.interface.d.cts +2 -0
  88. package/lib/cjs/user-management/interfaces/authentication-response.interface.cjs.map +1 -1
  89. package/lib/cjs/user-management/interfaces/authentication-response.interface.d.cts +1 -1
  90. package/lib/cjs/user-management/interfaces/create-organization-membership-options.interface.cjs.map +1 -1
  91. package/lib/cjs/user-management/interfaces/create-organization-membership-options.interface.d.cts +2 -0
  92. package/lib/cjs/user-management/interfaces/identity.interface.cjs.map +1 -1
  93. package/lib/cjs/user-management/interfaces/identity.interface.d.cts +2 -2
  94. package/lib/cjs/user-management/interfaces/list-sessions-options.interface.cjs.map +1 -1
  95. package/lib/cjs/user-management/interfaces/organization-membership.interface.cjs.map +1 -1
  96. package/lib/cjs/user-management/interfaces/organization-membership.interface.d.cts +2 -0
  97. package/lib/cjs/user-management/interfaces/update-organization-membership-options.interface.cjs.map +1 -1
  98. package/lib/cjs/user-management/interfaces/update-organization-membership-options.interface.d.cts +2 -0
  99. package/lib/cjs/user-management/serializers/create-organization-membership-options.serializer.cjs +2 -1
  100. package/lib/cjs/user-management/serializers/create-organization-membership-options.serializer.cjs.map +1 -1
  101. package/lib/cjs/user-management/serializers/organization-membership.serializer.cjs +2 -1
  102. package/lib/cjs/user-management/serializers/organization-membership.serializer.cjs.map +1 -1
  103. package/lib/cjs/user-management/serializers/update-organization-membership-options.serializer.cjs +2 -1
  104. package/lib/cjs/user-management/serializers/update-organization-membership-options.serializer.cjs.map +1 -1
  105. package/lib/cjs/user-management/session.cjs +4 -0
  106. package/lib/cjs/user-management/session.cjs.map +1 -1
  107. package/lib/cjs/user-management/session.d.cts +2 -1
  108. package/lib/cjs/user-management/user-management.cjs +13 -81
  109. package/lib/cjs/user-management/user-management.cjs.map +1 -1
  110. package/lib/cjs/user-management/user-management.d.cts +3 -2
  111. package/lib/cjs/user-management-B-71OTAR.d.cts +401 -0
  112. package/lib/cjs/user-management-B38wNrIN.d.cts +68 -0
  113. package/lib/cjs/user-management-Dh73wyCr.d.cts +68 -0
  114. package/lib/cjs/vault/vault.d.cts +3 -2
  115. package/lib/cjs/widgets/interfaces/get-token.cjs.map +1 -1
  116. package/lib/cjs/widgets/interfaces/get-token.d.cts +5 -5
  117. package/lib/cjs/widgets/widgets.d.cts +3 -2
  118. package/lib/cjs/workos-BEHZtxw8.d.cts +401 -0
  119. package/lib/cjs/workos-Bt8QqzZV.d.cts +395 -0
  120. package/lib/cjs/workos-C6IZ2mAH.d.cts +402 -0
  121. package/lib/cjs/workos-C7eLbzyK.d.cts +398 -0
  122. package/lib/cjs/workos-C9Z7mAdD.d.cts +399 -0
  123. package/lib/cjs/workos-CUh2oD_o.d.cts +396 -0
  124. package/lib/cjs/workos-Cuegztvg.d.cts +397 -0
  125. package/lib/cjs/workos-DiEirbod.d.cts +397 -0
  126. package/lib/cjs/workos-jsQjZHfV.d.cts +395 -0
  127. package/lib/cjs/workos.cjs +2 -1
  128. package/lib/cjs/workos.cjs.map +1 -1
  129. package/lib/cjs/workos.d.cts +3 -2
  130. package/lib/common/interfaces/event.interface.d.ts +18 -2
  131. package/lib/common/interfaces/workos-options.interface.d.ts +1 -0
  132. package/lib/common/net/fetch-client.d.ts +6 -2
  133. package/lib/common/net/fetch-client.js +67 -31
  134. package/lib/common/net/fetch-client.spec.js +71 -0
  135. package/lib/common/serializers/event.serializer.js +2 -0
  136. package/lib/common/utils/pagination.js +1 -1
  137. package/lib/esm/audit-logs/audit-logs.d.ts +3 -2
  138. package/lib/esm/client/index.d.ts +3 -0
  139. package/lib/esm/client/index.js +7 -0
  140. package/lib/esm/client/index.js.map +1 -0
  141. package/lib/esm/client/sso.d.ts +2 -0
  142. package/lib/esm/client/sso.js +42 -0
  143. package/lib/esm/client/sso.js.map +1 -0
  144. package/lib/esm/client/user-management.d.ts +1 -0
  145. package/lib/esm/client/user-management.js +85 -0
  146. package/lib/esm/client/user-management.js.map +1 -0
  147. package/lib/esm/client/utils.d.ts +7 -0
  148. package/lib/esm/client/utils.js +16 -0
  149. package/lib/esm/client/utils.js.map +1 -0
  150. package/lib/esm/common/interfaces/event.interface.d.ts +19 -3
  151. package/lib/esm/common/interfaces/index.d.ts +1 -1
  152. package/lib/esm/common/interfaces/workos-options.interface.d.ts +1 -0
  153. package/lib/esm/common/net/fetch-client.d.ts +5 -2
  154. package/lib/esm/common/net/fetch-client.js +67 -36
  155. package/lib/esm/common/net/fetch-client.js.map +1 -1
  156. package/lib/esm/common/serializers/event.serializer.js +2 -0
  157. package/lib/esm/common/serializers/event.serializer.js.map +1 -1
  158. package/lib/esm/common/utils/fetch-and-deserialize.d.ts +3 -2
  159. package/lib/esm/common/utils/pagination.js +2 -4
  160. package/lib/esm/common/utils/pagination.js.map +1 -1
  161. package/lib/esm/directory-sync/directory-sync.d.ts +4 -3
  162. package/lib/esm/events/events.d.ts +3 -2
  163. package/lib/esm/fga/fga.d.ts +4 -3
  164. package/lib/esm/fga/utils/fetch-and-deserialize-list.d.ts +3 -2
  165. package/lib/esm/index.client.d.ts +3 -0
  166. package/lib/esm/index.client.js +7 -0
  167. package/lib/esm/index.client.js.map +1 -0
  168. package/lib/esm/index.d.ts +3 -2
  169. package/lib/esm/index.js +2 -0
  170. package/lib/esm/index.js.map +1 -1
  171. package/lib/esm/index.worker.d.ts +3 -2
  172. package/lib/esm/mfa/mfa.d.ts +3 -2
  173. package/lib/esm/organization-domains/organization-domains.d.ts +3 -2
  174. package/lib/esm/organizations/interfaces/list-organization-feature-flags-options.interface.d.ts +3 -1
  175. package/lib/esm/organizations/organizations.d.ts +4 -3
  176. package/lib/esm/organizations/organizations.js +15 -5
  177. package/lib/esm/organizations/organizations.js.map +1 -1
  178. package/lib/esm/passwordless/passwordless.d.ts +3 -2
  179. package/lib/esm/portal/portal.d.ts +3 -2
  180. package/lib/esm/sso/interfaces/authorization-url-options.interface.d.ts +19 -4
  181. package/lib/esm/sso/interfaces/connection-type.enum.d.ts +1 -0
  182. package/lib/esm/sso/interfaces/connection-type.enum.js +1 -0
  183. package/lib/esm/sso/interfaces/connection-type.enum.js.map +1 -1
  184. package/lib/esm/sso/interfaces/index.d.ts +1 -0
  185. package/lib/esm/sso/interfaces/profile-and-token.interface.d.ts +3 -0
  186. package/lib/esm/sso/serializers/index.d.ts +1 -0
  187. package/lib/esm/sso/serializers/profile-and-token.serializer.d.ts +1 -0
  188. package/lib/esm/sso/serializers/profile-and-token.serializer.js +3 -1
  189. package/lib/esm/sso/serializers/profile-and-token.serializer.js.map +1 -1
  190. package/lib/esm/sso/sso.d.ts +2 -1
  191. package/lib/esm/sso/sso.js +5 -37
  192. package/lib/esm/sso/sso.js.map +1 -1
  193. package/lib/esm/sso-nFEQz_Js.d.ts +22 -0
  194. package/lib/esm/user-management/interfaces/authenticate-with-session-cookie.interface.d.ts +2 -0
  195. package/lib/esm/user-management/interfaces/authenticate-with-session-cookie.interface.js.map +1 -1
  196. package/lib/esm/user-management/interfaces/authentication-response.interface.d.ts +1 -1
  197. package/lib/esm/user-management/interfaces/create-organization-membership-options.interface.d.ts +2 -0
  198. package/lib/esm/user-management/interfaces/identity.interface.d.ts +2 -2
  199. package/lib/esm/user-management/interfaces/organization-membership.interface.d.ts +2 -0
  200. package/lib/esm/user-management/interfaces/update-organization-membership-options.interface.d.ts +2 -0
  201. package/lib/esm/user-management/serializers/create-organization-membership-options.serializer.js +2 -1
  202. package/lib/esm/user-management/serializers/create-organization-membership-options.serializer.js.map +1 -1
  203. package/lib/esm/user-management/serializers/organization-membership.serializer.js +2 -1
  204. package/lib/esm/user-management/serializers/organization-membership.serializer.js.map +1 -1
  205. package/lib/esm/user-management/serializers/update-organization-membership-options.serializer.js +2 -1
  206. package/lib/esm/user-management/serializers/update-organization-membership-options.serializer.js.map +1 -1
  207. package/lib/esm/user-management/session.d.ts +2 -1
  208. package/lib/esm/user-management/session.js +4 -0
  209. package/lib/esm/user-management/session.js.map +1 -1
  210. package/lib/esm/user-management/user-management.d.ts +3 -2
  211. package/lib/esm/user-management/user-management.js +13 -81
  212. package/lib/esm/user-management/user-management.js.map +1 -1
  213. package/lib/esm/user-management-B38wNrIN.d.ts +68 -0
  214. package/lib/esm/vault/vault.d.ts +3 -2
  215. package/lib/esm/widgets/interfaces/get-token.d.ts +5 -5
  216. package/lib/esm/widgets/interfaces/get-token.js.map +1 -1
  217. package/lib/esm/widgets/widgets.d.ts +3 -2
  218. package/lib/esm/{workos-DGRMJ65Z.d.ts → workos-EX3jNkYH.d.ts} +5 -7
  219. package/lib/esm/workos.d.ts +3 -2
  220. package/lib/esm/workos.js +2 -1
  221. package/lib/esm/workos.js.map +1 -1
  222. package/lib/index.js +1 -1
  223. package/lib/organizations/interfaces/list-organization-feature-flags-options.interface.d.ts +2 -1
  224. package/lib/organizations/organizations.d.ts +1 -2
  225. package/lib/organizations/organizations.js +2 -4
  226. package/lib/organizations/organizations.spec.js +46 -1
  227. package/lib/sso/interfaces/authorization-url-options.interface.d.ts +2 -0
  228. package/lib/sso/interfaces/profile-and-token.interface.d.ts +3 -0
  229. package/lib/sso/serializers/profile-and-token.serializer.js +2 -0
  230. package/lib/sso/sso.d.ts +1 -1
  231. package/lib/sso/sso.js +14 -10
  232. package/lib/sso/sso.spec.js +131 -0
  233. package/lib/user-management/interfaces/authenticate-with-session-cookie.interface.d.ts +2 -0
  234. package/lib/user-management/interfaces/create-organization-membership-options.interface.d.ts +2 -0
  235. package/lib/user-management/interfaces/organization-membership.interface.d.ts +2 -0
  236. package/lib/user-management/interfaces/update-organization-membership-options.interface.d.ts +2 -0
  237. package/lib/user-management/serializers/create-organization-membership-options.serializer.js +1 -0
  238. package/lib/user-management/serializers/organization-membership.serializer.js +1 -11
  239. package/lib/user-management/serializers/update-organization-membership-options.serializer.js +1 -0
  240. package/lib/user-management/session.js +4 -2
  241. package/lib/user-management/session.spec.js +4 -2
  242. package/lib/user-management/user-management.js +2 -1
  243. package/lib/user-management/user-management.spec.js +33 -0
  244. package/lib/widgets/interfaces/get-token.d.ts +5 -5
  245. package/lib/workos.js +2 -2
  246. package/package.json +10 -5
@@ -1,4 +1,4 @@
1
- export { a as OrganizationDomains } from '../workos-DGRMJ65Z.js';
1
+ export { a as OrganizationDomains } from '../workos-EX3jNkYH.js';
2
2
  import './interfaces/create-organization-domain-options.interface.js';
3
3
  import './interfaces/organization-domain.interface.js';
4
4
  import '../common/interfaces/get-options.interface.js';
@@ -45,6 +45,7 @@ import '../sso/interfaces/get-profile-options.interface.js';
45
45
  import '../sso/interfaces/get-profile-and-token-options.interface.js';
46
46
  import '../sso/interfaces/list-connections-options.interface.js';
47
47
  import '../sso/interfaces/profile-and-token.interface.js';
48
+ import '../user-management/interfaces/oauth-tokens.interface.js';
48
49
  import '../sso/interfaces/profile.interface.js';
49
50
  import '../webhooks/webhooks.js';
50
51
  import '../common/crypto/crypto-provider.js';
@@ -61,6 +62,7 @@ import '../audit-logs/interfaces/audit-log-export.interface.js';
61
62
  import '../audit-logs/interfaces/create-audit-log-event-options.interface.js';
62
63
  import '../audit-logs/interfaces/create-audit-log-schema-options.interface.js';
63
64
  import 'jose';
65
+ import '../user-management-B38wNrIN.js';
64
66
  import '../user-management/interfaces/authenticate-with-code-options.interface.js';
65
67
  import '../user-management/interfaces/authenticate-with-options-base.interface.js';
66
68
  import '../user-management/interfaces/authenticate-with-code-and-verifier-options.interface.js';
@@ -71,7 +73,6 @@ import '../user-management/interfaces/authenticate-with-password-options.interfa
71
73
  import '../user-management/interfaces/authenticate-with-refresh-token-options.interface.js';
72
74
  import '../user-management/interfaces/authenticate-with-session-cookie.interface.js';
73
75
  import '../user-management/interfaces/authentication-response.interface.js';
74
- import '../user-management/interfaces/oauth-tokens.interface.js';
75
76
  import '../user-management/interfaces/authenticate-with-totp-options.interface.js';
76
77
  import '../user-management/interfaces/authorization-url-options.interface.js';
77
78
  import '../user-management/interfaces/create-magic-auth-options.interface.js';
@@ -1,4 +1,6 @@
1
- interface ListOrganizationFeatureFlagsOptions {
1
+ import { PaginationOptions } from '../../common/interfaces/pagination-options.interface.js';
2
+
3
+ interface ListOrganizationFeatureFlagsOptions extends PaginationOptions {
2
4
  organizationId: string;
3
5
  }
4
6
 
@@ -1,5 +1,5 @@
1
1
  import '../common/utils/pagination.js';
2
- export { O as Organizations } from '../workos-DGRMJ65Z.js';
2
+ export { O as Organizations } from '../workos-EX3jNkYH.js';
3
3
  import './interfaces/create-organization-options.interface.js';
4
4
  import './interfaces/feature-flag.interface.js';
5
5
  import './interfaces/list-organization-feature-flags-options.interface.js';
@@ -7,9 +7,9 @@ import './interfaces/list-organizations-options.interface.js';
7
7
  import './interfaces/organization.interface.js';
8
8
  import './interfaces/update-organization-options.interface.js';
9
9
  import '../roles/interfaces/role.interface.js';
10
- import '../common/interfaces/list.interface.js';
11
10
  import './interfaces/list-organization-roles-options.interface.js';
12
11
  import '../common/interfaces/pagination-options.interface.js';
12
+ import '../common/interfaces/list.interface.js';
13
13
  import '../common/interfaces/get-options.interface.js';
14
14
  import '../common/interfaces/post-options.interface.js';
15
15
  import '../common/interfaces/put-options.interface.js';
@@ -44,6 +44,7 @@ import '../sso/interfaces/get-profile-options.interface.js';
44
44
  import '../sso/interfaces/get-profile-and-token-options.interface.js';
45
45
  import '../sso/interfaces/list-connections-options.interface.js';
46
46
  import '../sso/interfaces/profile-and-token.interface.js';
47
+ import '../user-management/interfaces/oauth-tokens.interface.js';
47
48
  import '../sso/interfaces/profile.interface.js';
48
49
  import '../webhooks/webhooks.js';
49
50
  import '../common/crypto/crypto-provider.js';
@@ -60,6 +61,7 @@ import '../audit-logs/interfaces/audit-log-export.interface.js';
60
61
  import '../audit-logs/interfaces/create-audit-log-event-options.interface.js';
61
62
  import '../audit-logs/interfaces/create-audit-log-schema-options.interface.js';
62
63
  import 'jose';
64
+ import '../user-management-B38wNrIN.js';
63
65
  import '../user-management/interfaces/authenticate-with-code-options.interface.js';
64
66
  import '../user-management/interfaces/authenticate-with-options-base.interface.js';
65
67
  import '../user-management/interfaces/authenticate-with-code-and-verifier-options.interface.js';
@@ -70,7 +72,6 @@ import '../user-management/interfaces/authenticate-with-password-options.interfa
70
72
  import '../user-management/interfaces/authenticate-with-refresh-token-options.interface.js';
71
73
  import '../user-management/interfaces/authenticate-with-session-cookie.interface.js';
72
74
  import '../user-management/interfaces/authentication-response.interface.js';
73
- import '../user-management/interfaces/oauth-tokens.interface.js';
74
75
  import '../user-management/interfaces/authenticate-with-totp-options.interface.js';
75
76
  import '../user-management/interfaces/authorization-url-options.interface.js';
76
77
  import '../user-management/interfaces/create-magic-auth-options.interface.js';
@@ -7,7 +7,6 @@ import {
7
7
  serializeUpdateOrganizationOptions
8
8
  } from "./serializers/index.js";
9
9
  import { fetchAndDeserialize } from "../common/utils/fetch-and-deserialize.js";
10
- import { deserializeList } from "../common/serializers/index.js";
11
10
  import { deserializeRole } from "../roles/serializers/role.serializer.js";
12
11
  import { deserializeFeatureFlag } from "./serializers/feature-flag.serializer.js";
13
12
  class Organizations {
@@ -76,11 +75,22 @@ class Organizations {
76
75
  };
77
76
  }
78
77
  async listOrganizationFeatureFlags(options) {
79
- const { organizationId } = options;
80
- const { data } = await this.workos.get(
81
- `/organizations/${organizationId}/feature_flags`
78
+ const { organizationId, ...paginationOptions } = options;
79
+ return new AutoPaginatable(
80
+ await fetchAndDeserialize(
81
+ this.workos,
82
+ `/organizations/${organizationId}/feature-flags`,
83
+ deserializeFeatureFlag,
84
+ paginationOptions
85
+ ),
86
+ (params) => fetchAndDeserialize(
87
+ this.workos,
88
+ `/organizations/${organizationId}/feature-flags`,
89
+ deserializeFeatureFlag,
90
+ params
91
+ ),
92
+ options
82
93
  );
83
- return deserializeList(data, deserializeFeatureFlag);
84
94
  }
85
95
  }
86
96
  export {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/organizations/organizations.ts"],"sourcesContent":["import { AutoPaginatable } from '../common/utils/pagination';\nimport { WorkOS } from '../workos';\nimport {\n CreateOrganizationOptions,\n CreateOrganizationRequestOptions,\n ListOrganizationsOptions,\n Organization,\n OrganizationResponse,\n UpdateOrganizationOptions,\n} from './interfaces';\nimport {\n FeatureFlag,\n FeatureFlagResponse,\n} from './interfaces/feature-flag.interface';\nimport {\n deserializeOrganization,\n serializeCreateOrganizationOptions,\n serializeUpdateOrganizationOptions,\n} from './serializers';\n\nimport { fetchAndDeserialize } from '../common/utils/fetch-and-deserialize';\nimport { List, ListResponse } from '../common/interfaces';\nimport { deserializeList } from '../common/serializers';\nimport { ListOrganizationRolesResponse, RoleList } from '../roles/interfaces';\nimport { deserializeRole } from '../roles/serializers/role.serializer';\nimport { ListOrganizationRolesOptions } from './interfaces/list-organization-roles-options.interface';\nimport { ListOrganizationFeatureFlagsOptions } from './interfaces/list-organization-feature-flags-options.interface';\nimport { deserializeFeatureFlag } from './serializers/feature-flag.serializer';\n\nexport class Organizations {\n constructor(private readonly workos: WorkOS) {}\n\n async listOrganizations(\n options?: ListOrganizationsOptions,\n ): Promise<AutoPaginatable<Organization, ListOrganizationsOptions>> {\n return new AutoPaginatable(\n await fetchAndDeserialize<OrganizationResponse, Organization>(\n this.workos,\n '/organizations',\n deserializeOrganization,\n options,\n ),\n (params) =>\n fetchAndDeserialize<OrganizationResponse, Organization>(\n this.workos,\n '/organizations',\n deserializeOrganization,\n params,\n ),\n options,\n );\n }\n\n async createOrganization(\n payload: CreateOrganizationOptions,\n requestOptions: CreateOrganizationRequestOptions = {},\n ): Promise<Organization> {\n const { data } = await this.workos.post<OrganizationResponse>(\n '/organizations',\n serializeCreateOrganizationOptions(payload),\n requestOptions,\n );\n\n return deserializeOrganization(data);\n }\n\n async deleteOrganization(id: string) {\n await this.workos.delete(`/organizations/${id}`);\n }\n\n async getOrganization(id: string): Promise<Organization> {\n const { data } = await this.workos.get<OrganizationResponse>(\n `/organizations/${id}`,\n );\n\n return deserializeOrganization(data);\n }\n\n async getOrganizationByExternalId(externalId: string): Promise<Organization> {\n const { data } = await this.workos.get<OrganizationResponse>(\n `/organizations/external_id/${externalId}`,\n );\n\n return deserializeOrganization(data);\n }\n\n async updateOrganization(\n options: UpdateOrganizationOptions,\n ): Promise<Organization> {\n const { organization: organizationId, ...payload } = options;\n\n const { data } = await this.workos.put<OrganizationResponse>(\n `/organizations/${organizationId}`,\n serializeUpdateOrganizationOptions(payload),\n );\n\n return deserializeOrganization(data);\n }\n\n async listOrganizationRoles(\n options: ListOrganizationRolesOptions,\n ): Promise<RoleList> {\n const { organizationId } = options;\n\n const { data: response } =\n await this.workos.get<ListOrganizationRolesResponse>(\n `/organizations/${organizationId}/roles`,\n );\n\n return {\n object: 'list',\n data: response.data.map((role) => deserializeRole(role)),\n };\n }\n\n async listOrganizationFeatureFlags(\n options: ListOrganizationFeatureFlagsOptions,\n ): Promise<List<FeatureFlag>> {\n const { organizationId } = options;\n\n const { data } = await this.workos.get<ListResponse<FeatureFlagResponse>>(\n `/organizations/${organizationId}/feature_flags`,\n );\n\n return deserializeList(data, deserializeFeatureFlag);\n }\n}\n"],"mappings":";;AAAA,SAAS,uBAAuB;AAchC;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP,SAAS,2BAA2B;AAEpC,SAAS,uBAAuB;AAEhC,SAAS,uBAAuB;AAGhC,SAAS,8BAA8B;AAEhC,MAAM,cAAc;AAAA,EACzB,YAA6B,QAAgB;AAAhB;AAAA,EAAiB;AAAA,EA9BhD,OA6B2B;AAAA;AAAA;AAAA,EAGzB,MAAM,kBACJ,SACkE;AAClE,WAAO,IAAI;AAAA,MACT,MAAM;AAAA,QACJ,KAAK;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,MACA,CAAC,WACC;AAAA,QACE,KAAK;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAAA,EAEA,MAAM,mBACJ,SACA,iBAAmD,CAAC,GAC7B;AACvB,UAAM,EAAE,KAAK,IAAI,MAAM,KAAK,OAAO;AAAA,MACjC;AAAA,MACA,mCAAmC,OAAO;AAAA,MAC1C;AAAA,IACF;AAEA,WAAO,wBAAwB,IAAI;AAAA,EACrC;AAAA,EAEA,MAAM,mBAAmB,IAAY;AACnC,UAAM,KAAK,OAAO,OAAO,kBAAkB,EAAE,EAAE;AAAA,EACjD;AAAA,EAEA,MAAM,gBAAgB,IAAmC;AACvD,UAAM,EAAE,KAAK,IAAI,MAAM,KAAK,OAAO;AAAA,MACjC,kBAAkB,EAAE;AAAA,IACtB;AAEA,WAAO,wBAAwB,IAAI;AAAA,EACrC;AAAA,EAEA,MAAM,4BAA4B,YAA2C;AAC3E,UAAM,EAAE,KAAK,IAAI,MAAM,KAAK,OAAO;AAAA,MACjC,8BAA8B,UAAU;AAAA,IAC1C;AAEA,WAAO,wBAAwB,IAAI;AAAA,EACrC;AAAA,EAEA,MAAM,mBACJ,SACuB;AACvB,UAAM,EAAE,cAAc,gBAAgB,GAAG,QAAQ,IAAI;AAErD,UAAM,EAAE,KAAK,IAAI,MAAM,KAAK,OAAO;AAAA,MACjC,kBAAkB,cAAc;AAAA,MAChC,mCAAmC,OAAO;AAAA,IAC5C;AAEA,WAAO,wBAAwB,IAAI;AAAA,EACrC;AAAA,EAEA,MAAM,sBACJ,SACmB;AACnB,UAAM,EAAE,eAAe,IAAI;AAE3B,UAAM,EAAE,MAAM,SAAS,IACrB,MAAM,KAAK,OAAO;AAAA,MAChB,kBAAkB,cAAc;AAAA,IAClC;AAEF,WAAO;AAAA,MACL,QAAQ;AAAA,MACR,MAAM,SAAS,KAAK,IAAI,CAAC,SAAS,gBAAgB,IAAI,CAAC;AAAA,IACzD;AAAA,EACF;AAAA,EAEA,MAAM,6BACJ,SAC4B;AAC5B,UAAM,EAAE,eAAe,IAAI;AAE3B,UAAM,EAAE,KAAK,IAAI,MAAM,KAAK,OAAO;AAAA,MACjC,kBAAkB,cAAc;AAAA,IAClC;AAEA,WAAO,gBAAgB,MAAM,sBAAsB;AAAA,EACrD;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/organizations/organizations.ts"],"sourcesContent":["import { AutoPaginatable } from '../common/utils/pagination';\nimport { WorkOS } from '../workos';\nimport {\n CreateOrganizationOptions,\n CreateOrganizationRequestOptions,\n ListOrganizationsOptions,\n Organization,\n OrganizationResponse,\n UpdateOrganizationOptions,\n} from './interfaces';\nimport {\n FeatureFlag,\n FeatureFlagResponse,\n} from './interfaces/feature-flag.interface';\nimport {\n deserializeOrganization,\n serializeCreateOrganizationOptions,\n serializeUpdateOrganizationOptions,\n} from './serializers';\n\nimport { fetchAndDeserialize } from '../common/utils/fetch-and-deserialize';\nimport { ListOrganizationRolesResponse, RoleList } from '../roles/interfaces';\nimport { deserializeRole } from '../roles/serializers/role.serializer';\nimport { ListOrganizationRolesOptions } from './interfaces/list-organization-roles-options.interface';\nimport { ListOrganizationFeatureFlagsOptions } from './interfaces/list-organization-feature-flags-options.interface';\nimport { deserializeFeatureFlag } from './serializers/feature-flag.serializer';\n\nexport class Organizations {\n constructor(private readonly workos: WorkOS) {}\n\n async listOrganizations(\n options?: ListOrganizationsOptions,\n ): Promise<AutoPaginatable<Organization, ListOrganizationsOptions>> {\n return new AutoPaginatable(\n await fetchAndDeserialize<OrganizationResponse, Organization>(\n this.workos,\n '/organizations',\n deserializeOrganization,\n options,\n ),\n (params) =>\n fetchAndDeserialize<OrganizationResponse, Organization>(\n this.workos,\n '/organizations',\n deserializeOrganization,\n params,\n ),\n options,\n );\n }\n\n async createOrganization(\n payload: CreateOrganizationOptions,\n requestOptions: CreateOrganizationRequestOptions = {},\n ): Promise<Organization> {\n const { data } = await this.workos.post<OrganizationResponse>(\n '/organizations',\n serializeCreateOrganizationOptions(payload),\n requestOptions,\n );\n\n return deserializeOrganization(data);\n }\n\n async deleteOrganization(id: string) {\n await this.workos.delete(`/organizations/${id}`);\n }\n\n async getOrganization(id: string): Promise<Organization> {\n const { data } = await this.workos.get<OrganizationResponse>(\n `/organizations/${id}`,\n );\n\n return deserializeOrganization(data);\n }\n\n async getOrganizationByExternalId(externalId: string): Promise<Organization> {\n const { data } = await this.workos.get<OrganizationResponse>(\n `/organizations/external_id/${externalId}`,\n );\n\n return deserializeOrganization(data);\n }\n\n async updateOrganization(\n options: UpdateOrganizationOptions,\n ): Promise<Organization> {\n const { organization: organizationId, ...payload } = options;\n\n const { data } = await this.workos.put<OrganizationResponse>(\n `/organizations/${organizationId}`,\n serializeUpdateOrganizationOptions(payload),\n );\n\n return deserializeOrganization(data);\n }\n\n async listOrganizationRoles(\n options: ListOrganizationRolesOptions,\n ): Promise<RoleList> {\n const { organizationId } = options;\n\n const { data: response } =\n await this.workos.get<ListOrganizationRolesResponse>(\n `/organizations/${organizationId}/roles`,\n );\n\n return {\n object: 'list',\n data: response.data.map((role) => deserializeRole(role)),\n };\n }\n\n async listOrganizationFeatureFlags(\n options: ListOrganizationFeatureFlagsOptions,\n ): Promise<\n AutoPaginatable<FeatureFlag, ListOrganizationFeatureFlagsOptions>\n > {\n const { organizationId, ...paginationOptions } = options;\n\n return new AutoPaginatable(\n await fetchAndDeserialize<FeatureFlagResponse, FeatureFlag>(\n this.workos,\n `/organizations/${organizationId}/feature-flags`,\n deserializeFeatureFlag,\n paginationOptions,\n ),\n (params) =>\n fetchAndDeserialize<FeatureFlagResponse, FeatureFlag>(\n this.workos,\n `/organizations/${organizationId}/feature-flags`,\n deserializeFeatureFlag,\n params,\n ),\n options,\n );\n }\n}\n"],"mappings":";;AAAA,SAAS,uBAAuB;AAchC;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP,SAAS,2BAA2B;AAEpC,SAAS,uBAAuB;AAGhC,SAAS,8BAA8B;AAEhC,MAAM,cAAc;AAAA,EACzB,YAA6B,QAAgB;AAAhB;AAAA,EAAiB;AAAA,EA5BhD,OA2B2B;AAAA;AAAA;AAAA,EAGzB,MAAM,kBACJ,SACkE;AAClE,WAAO,IAAI;AAAA,MACT,MAAM;AAAA,QACJ,KAAK;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,MACA,CAAC,WACC;AAAA,QACE,KAAK;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAAA,EAEA,MAAM,mBACJ,SACA,iBAAmD,CAAC,GAC7B;AACvB,UAAM,EAAE,KAAK,IAAI,MAAM,KAAK,OAAO;AAAA,MACjC;AAAA,MACA,mCAAmC,OAAO;AAAA,MAC1C;AAAA,IACF;AAEA,WAAO,wBAAwB,IAAI;AAAA,EACrC;AAAA,EAEA,MAAM,mBAAmB,IAAY;AACnC,UAAM,KAAK,OAAO,OAAO,kBAAkB,EAAE,EAAE;AAAA,EACjD;AAAA,EAEA,MAAM,gBAAgB,IAAmC;AACvD,UAAM,EAAE,KAAK,IAAI,MAAM,KAAK,OAAO;AAAA,MACjC,kBAAkB,EAAE;AAAA,IACtB;AAEA,WAAO,wBAAwB,IAAI;AAAA,EACrC;AAAA,EAEA,MAAM,4BAA4B,YAA2C;AAC3E,UAAM,EAAE,KAAK,IAAI,MAAM,KAAK,OAAO;AAAA,MACjC,8BAA8B,UAAU;AAAA,IAC1C;AAEA,WAAO,wBAAwB,IAAI;AAAA,EACrC;AAAA,EAEA,MAAM,mBACJ,SACuB;AACvB,UAAM,EAAE,cAAc,gBAAgB,GAAG,QAAQ,IAAI;AAErD,UAAM,EAAE,KAAK,IAAI,MAAM,KAAK,OAAO;AAAA,MACjC,kBAAkB,cAAc;AAAA,MAChC,mCAAmC,OAAO;AAAA,IAC5C;AAEA,WAAO,wBAAwB,IAAI;AAAA,EACrC;AAAA,EAEA,MAAM,sBACJ,SACmB;AACnB,UAAM,EAAE,eAAe,IAAI;AAE3B,UAAM,EAAE,MAAM,SAAS,IACrB,MAAM,KAAK,OAAO;AAAA,MAChB,kBAAkB,cAAc;AAAA,IAClC;AAEF,WAAO;AAAA,MACL,QAAQ;AAAA,MACR,MAAM,SAAS,KAAK,IAAI,CAAC,SAAS,gBAAgB,IAAI,CAAC;AAAA,IACzD;AAAA,EACF;AAAA,EAEA,MAAM,6BACJ,SAGA;AACA,UAAM,EAAE,gBAAgB,GAAG,kBAAkB,IAAI;AAEjD,WAAO,IAAI;AAAA,MACT,MAAM;AAAA,QACJ,KAAK;AAAA,QACL,kBAAkB,cAAc;AAAA,QAChC;AAAA,QACA;AAAA,MACF;AAAA,MACA,CAAC,WACC;AAAA,QACE,KAAK;AAAA,QACL,kBAAkB,cAAc;AAAA,QAChC;AAAA,QACA;AAAA,MACF;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;","names":[]}
@@ -1,4 +1,4 @@
1
- export { P as Passwordless } from '../workos-DGRMJ65Z.js';
1
+ export { P as Passwordless } from '../workos-EX3jNkYH.js';
2
2
  import './interfaces/passwordless-session.interface.js';
3
3
  import './interfaces/create-passwordless-session-options.interface.js';
4
4
  import './interfaces/send-session-response.interface.js';
@@ -45,6 +45,7 @@ import '../sso/interfaces/get-profile-options.interface.js';
45
45
  import '../sso/interfaces/get-profile-and-token-options.interface.js';
46
46
  import '../sso/interfaces/list-connections-options.interface.js';
47
47
  import '../sso/interfaces/profile-and-token.interface.js';
48
+ import '../user-management/interfaces/oauth-tokens.interface.js';
48
49
  import '../sso/interfaces/profile.interface.js';
49
50
  import '../webhooks/webhooks.js';
50
51
  import '../common/crypto/crypto-provider.js';
@@ -61,6 +62,7 @@ import '../audit-logs/interfaces/audit-log-export.interface.js';
61
62
  import '../audit-logs/interfaces/create-audit-log-event-options.interface.js';
62
63
  import '../audit-logs/interfaces/create-audit-log-schema-options.interface.js';
63
64
  import 'jose';
65
+ import '../user-management-B38wNrIN.js';
64
66
  import '../user-management/interfaces/authenticate-with-code-options.interface.js';
65
67
  import '../user-management/interfaces/authenticate-with-options-base.interface.js';
66
68
  import '../user-management/interfaces/authenticate-with-code-and-verifier-options.interface.js';
@@ -71,7 +73,6 @@ import '../user-management/interfaces/authenticate-with-password-options.interfa
71
73
  import '../user-management/interfaces/authenticate-with-refresh-token-options.interface.js';
72
74
  import '../user-management/interfaces/authenticate-with-session-cookie.interface.js';
73
75
  import '../user-management/interfaces/authentication-response.interface.js';
74
- import '../user-management/interfaces/oauth-tokens.interface.js';
75
76
  import '../user-management/interfaces/authenticate-with-totp-options.interface.js';
76
77
  import '../user-management/interfaces/authorization-url-options.interface.js';
77
78
  import '../user-management/interfaces/create-magic-auth-options.interface.js';
@@ -1,4 +1,4 @@
1
- export { b as Portal } from '../workos-DGRMJ65Z.js';
1
+ export { b as Portal } from '../workos-EX3jNkYH.js';
2
2
  import './interfaces/generate-portal-link-intent.interface.js';
3
3
  import '../common/interfaces/get-options.interface.js';
4
4
  import '../common/interfaces/post-options.interface.js';
@@ -45,6 +45,7 @@ import '../sso/interfaces/get-profile-options.interface.js';
45
45
  import '../sso/interfaces/get-profile-and-token-options.interface.js';
46
46
  import '../sso/interfaces/list-connections-options.interface.js';
47
47
  import '../sso/interfaces/profile-and-token.interface.js';
48
+ import '../user-management/interfaces/oauth-tokens.interface.js';
48
49
  import '../sso/interfaces/profile.interface.js';
49
50
  import '../webhooks/webhooks.js';
50
51
  import '../common/crypto/crypto-provider.js';
@@ -61,6 +62,7 @@ import '../audit-logs/interfaces/audit-log-export.interface.js';
61
62
  import '../audit-logs/interfaces/create-audit-log-event-options.interface.js';
62
63
  import '../audit-logs/interfaces/create-audit-log-schema-options.interface.js';
63
64
  import 'jose';
65
+ import '../user-management-B38wNrIN.js';
64
66
  import '../user-management/interfaces/authenticate-with-code-options.interface.js';
65
67
  import '../user-management/interfaces/authenticate-with-options-base.interface.js';
66
68
  import '../user-management/interfaces/authenticate-with-code-and-verifier-options.interface.js';
@@ -71,7 +73,6 @@ import '../user-management/interfaces/authenticate-with-password-options.interfa
71
73
  import '../user-management/interfaces/authenticate-with-refresh-token-options.interface.js';
72
74
  import '../user-management/interfaces/authenticate-with-session-cookie.interface.js';
73
75
  import '../user-management/interfaces/authentication-response.interface.js';
74
- import '../user-management/interfaces/oauth-tokens.interface.js';
75
76
  import '../user-management/interfaces/authenticate-with-totp-options.interface.js';
76
77
  import '../user-management/interfaces/authorization-url-options.interface.js';
77
78
  import '../user-management/interfaces/create-magic-auth-options.interface.js';
@@ -1,12 +1,27 @@
1
- interface SSOAuthorizationURLOptions {
1
+ interface SSOAuthorizationURLBase {
2
2
  clientId: string;
3
- connection?: string;
4
- organization?: string;
5
3
  domainHint?: string;
6
4
  loginHint?: string;
7
- provider?: string;
5
+ providerQueryParams?: Record<string, string | boolean | number>;
6
+ providerScopes?: string[];
8
7
  redirectUri: string;
9
8
  state?: string;
10
9
  }
10
+ interface SSOWithConnection extends SSOAuthorizationURLBase {
11
+ connection: string;
12
+ organization?: never;
13
+ provider?: never;
14
+ }
15
+ interface SSOWithOrganization extends SSOAuthorizationURLBase {
16
+ organization: string;
17
+ connection?: never;
18
+ provider?: never;
19
+ }
20
+ interface SSOWithProvider extends SSOAuthorizationURLBase {
21
+ provider: string;
22
+ connection?: never;
23
+ organization?: never;
24
+ }
25
+ type SSOAuthorizationURLOptions = SSOWithConnection | SSOWithOrganization | SSOWithProvider;
11
26
 
12
27
  export type { SSOAuthorizationURLOptions };
@@ -28,6 +28,7 @@ declare enum ConnectionType {
28
28
  PingFederateSAML = "PingFederateSAML",
29
29
  PingOneSAML = "PingOneSAML",
30
30
  RipplingSAML = "RipplingSAML",
31
+ SalesforceOAuth = "SalesforceOAuth",
31
32
  SalesforceSAML = "SalesforceSAML",
32
33
  ShibbolethGenericSAML = "ShibbolethGenericSAML",
33
34
  ShibbolethSAML = "ShibbolethSAML",
@@ -28,6 +28,7 @@ var ConnectionType = /* @__PURE__ */ ((ConnectionType2) => {
28
28
  ConnectionType2["PingFederateSAML"] = "PingFederateSAML";
29
29
  ConnectionType2["PingOneSAML"] = "PingOneSAML";
30
30
  ConnectionType2["RipplingSAML"] = "RipplingSAML";
31
+ ConnectionType2["SalesforceOAuth"] = "SalesforceOAuth";
31
32
  ConnectionType2["SalesforceSAML"] = "SalesforceSAML";
32
33
  ConnectionType2["ShibbolethGenericSAML"] = "ShibbolethGenericSAML";
33
34
  ConnectionType2["ShibbolethSAML"] = "ShibbolethSAML";
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/sso/interfaces/connection-type.enum.ts"],"sourcesContent":["export enum ConnectionType {\n ADFSSAML = 'ADFSSAML',\n AdpOidc = 'AdpOidc',\n AppleOAuth = 'AppleOAuth',\n Auth0SAML = 'Auth0SAML',\n AzureSAML = 'AzureSAML',\n CasSAML = 'CasSAML',\n ClassLinkSAML = 'ClassLinkSAML',\n CloudflareSAML = 'CloudflareSAML',\n CyberArkSAML = 'CyberArkSAML',\n DuoSAML = 'DuoSAML',\n GenericOIDC = 'GenericOIDC',\n GenericSAML = 'GenericSAML',\n GitHubOAuth = 'GitHubOAuth',\n GoogleOAuth = 'GoogleOAuth',\n GoogleSAML = 'GoogleSAML',\n JumpCloudSAML = 'JumpCloudSAML',\n KeycloakSAML = 'KeycloakSAML',\n LastPassSAML = 'LastPassSAML',\n LoginGovOidc = 'LoginGovOidc',\n MagicLink = 'MagicLink',\n MicrosoftOAuth = 'MicrosoftOAuth',\n MiniOrangeSAML = 'MiniOrangeSAML',\n NetIqSAML = 'NetIqSAML',\n OktaSAML = 'OktaSAML',\n OneLoginSAML = 'OneLoginSAML',\n OracleSAML = 'OracleSAML',\n PingFederateSAML = 'PingFederateSAML',\n PingOneSAML = 'PingOneSAML',\n RipplingSAML = 'RipplingSAML',\n SalesforceSAML = 'SalesforceSAML',\n ShibbolethGenericSAML = 'ShibbolethGenericSAML',\n ShibbolethSAML = 'ShibbolethSAML',\n SimpleSamlPhpSAML = 'SimpleSamlPhpSAML',\n VMwareSAML = 'VMwareSAML',\n}\n"],"mappings":"AAAO,IAAK,iBAAL,kBAAKA,oBAAL;AACL,EAAAA,gBAAA,cAAW;AACX,EAAAA,gBAAA,aAAU;AACV,EAAAA,gBAAA,gBAAa;AACb,EAAAA,gBAAA,eAAY;AACZ,EAAAA,gBAAA,eAAY;AACZ,EAAAA,gBAAA,aAAU;AACV,EAAAA,gBAAA,mBAAgB;AAChB,EAAAA,gBAAA,oBAAiB;AACjB,EAAAA,gBAAA,kBAAe;AACf,EAAAA,gBAAA,aAAU;AACV,EAAAA,gBAAA,iBAAc;AACd,EAAAA,gBAAA,iBAAc;AACd,EAAAA,gBAAA,iBAAc;AACd,EAAAA,gBAAA,iBAAc;AACd,EAAAA,gBAAA,gBAAa;AACb,EAAAA,gBAAA,mBAAgB;AAChB,EAAAA,gBAAA,kBAAe;AACf,EAAAA,gBAAA,kBAAe;AACf,EAAAA,gBAAA,kBAAe;AACf,EAAAA,gBAAA,eAAY;AACZ,EAAAA,gBAAA,oBAAiB;AACjB,EAAAA,gBAAA,oBAAiB;AACjB,EAAAA,gBAAA,eAAY;AACZ,EAAAA,gBAAA,cAAW;AACX,EAAAA,gBAAA,kBAAe;AACf,EAAAA,gBAAA,gBAAa;AACb,EAAAA,gBAAA,sBAAmB;AACnB,EAAAA,gBAAA,iBAAc;AACd,EAAAA,gBAAA,kBAAe;AACf,EAAAA,gBAAA,oBAAiB;AACjB,EAAAA,gBAAA,2BAAwB;AACxB,EAAAA,gBAAA,oBAAiB;AACjB,EAAAA,gBAAA,uBAAoB;AACpB,EAAAA,gBAAA,gBAAa;AAlCH,SAAAA;AAAA,GAAA;","names":["ConnectionType"]}
1
+ {"version":3,"sources":["../../../../src/sso/interfaces/connection-type.enum.ts"],"sourcesContent":["export enum ConnectionType {\n ADFSSAML = 'ADFSSAML',\n AdpOidc = 'AdpOidc',\n AppleOAuth = 'AppleOAuth',\n Auth0SAML = 'Auth0SAML',\n AzureSAML = 'AzureSAML',\n CasSAML = 'CasSAML',\n ClassLinkSAML = 'ClassLinkSAML',\n CloudflareSAML = 'CloudflareSAML',\n CyberArkSAML = 'CyberArkSAML',\n DuoSAML = 'DuoSAML',\n GenericOIDC = 'GenericOIDC',\n GenericSAML = 'GenericSAML',\n GitHubOAuth = 'GitHubOAuth',\n GoogleOAuth = 'GoogleOAuth',\n GoogleSAML = 'GoogleSAML',\n JumpCloudSAML = 'JumpCloudSAML',\n KeycloakSAML = 'KeycloakSAML',\n LastPassSAML = 'LastPassSAML',\n LoginGovOidc = 'LoginGovOidc',\n MagicLink = 'MagicLink',\n MicrosoftOAuth = 'MicrosoftOAuth',\n MiniOrangeSAML = 'MiniOrangeSAML',\n NetIqSAML = 'NetIqSAML',\n OktaSAML = 'OktaSAML',\n OneLoginSAML = 'OneLoginSAML',\n OracleSAML = 'OracleSAML',\n PingFederateSAML = 'PingFederateSAML',\n PingOneSAML = 'PingOneSAML',\n RipplingSAML = 'RipplingSAML',\n SalesforceOAuth = 'SalesforceOAuth',\n SalesforceSAML = 'SalesforceSAML',\n ShibbolethGenericSAML = 'ShibbolethGenericSAML',\n ShibbolethSAML = 'ShibbolethSAML',\n SimpleSamlPhpSAML = 'SimpleSamlPhpSAML',\n VMwareSAML = 'VMwareSAML',\n}\n"],"mappings":"AAAO,IAAK,iBAAL,kBAAKA,oBAAL;AACL,EAAAA,gBAAA,cAAW;AACX,EAAAA,gBAAA,aAAU;AACV,EAAAA,gBAAA,gBAAa;AACb,EAAAA,gBAAA,eAAY;AACZ,EAAAA,gBAAA,eAAY;AACZ,EAAAA,gBAAA,aAAU;AACV,EAAAA,gBAAA,mBAAgB;AAChB,EAAAA,gBAAA,oBAAiB;AACjB,EAAAA,gBAAA,kBAAe;AACf,EAAAA,gBAAA,aAAU;AACV,EAAAA,gBAAA,iBAAc;AACd,EAAAA,gBAAA,iBAAc;AACd,EAAAA,gBAAA,iBAAc;AACd,EAAAA,gBAAA,iBAAc;AACd,EAAAA,gBAAA,gBAAa;AACb,EAAAA,gBAAA,mBAAgB;AAChB,EAAAA,gBAAA,kBAAe;AACf,EAAAA,gBAAA,kBAAe;AACf,EAAAA,gBAAA,kBAAe;AACf,EAAAA,gBAAA,eAAY;AACZ,EAAAA,gBAAA,oBAAiB;AACjB,EAAAA,gBAAA,oBAAiB;AACjB,EAAAA,gBAAA,eAAY;AACZ,EAAAA,gBAAA,cAAW;AACX,EAAAA,gBAAA,kBAAe;AACf,EAAAA,gBAAA,gBAAa;AACb,EAAAA,gBAAA,sBAAmB;AACnB,EAAAA,gBAAA,iBAAc;AACd,EAAAA,gBAAA,kBAAe;AACf,EAAAA,gBAAA,qBAAkB;AAClB,EAAAA,gBAAA,oBAAiB;AACjB,EAAAA,gBAAA,2BAAwB;AACxB,EAAAA,gBAAA,oBAAiB;AACjB,EAAAA,gBAAA,uBAAoB;AACpB,EAAAA,gBAAA,gBAAa;AAnCH,SAAAA;AAAA,GAAA;","names":["ConnectionType"]}
@@ -8,4 +8,5 @@ export { ProfileAndToken, ProfileAndTokenResponse } from './profile-and-token.in
8
8
  export { Profile, ProfileResponse } from './profile.interface.js';
9
9
  import '../../common/interfaces/pagination-options.interface.js';
10
10
  import '../../common/interfaces/unknown-record.interface.js';
11
+ import '../../user-management/interfaces/oauth-tokens.interface.js';
11
12
  import '../../roles/interfaces/role.interface.js';
@@ -1,4 +1,5 @@
1
1
  import { UnknownRecord } from '../../common/interfaces/unknown-record.interface.js';
2
+ import { OauthTokens, OauthTokensResponse } from '../../user-management/interfaces/oauth-tokens.interface.js';
2
3
  import { Profile, ProfileResponse } from './profile.interface.js';
3
4
  import '../../roles/interfaces/role.interface.js';
4
5
  import './connection-type.enum.js';
@@ -6,10 +7,12 @@ import './connection-type.enum.js';
6
7
  interface ProfileAndToken<CustomAttributesType extends UnknownRecord> {
7
8
  accessToken: string;
8
9
  profile: Profile<CustomAttributesType>;
10
+ oauthTokens?: OauthTokens;
9
11
  }
10
12
  interface ProfileAndTokenResponse<CustomAttributesType extends UnknownRecord> {
11
13
  access_token: string;
12
14
  profile: ProfileResponse<CustomAttributesType>;
15
+ oauth_tokens?: OauthTokensResponse;
13
16
  }
14
17
 
15
18
  export type { ProfileAndToken, ProfileAndTokenResponse };
@@ -8,5 +8,6 @@ import '../interfaces/list-connections-options.interface.js';
8
8
  import '../../common/interfaces/pagination-options.interface.js';
9
9
  import '../../common/interfaces/unknown-record.interface.js';
10
10
  import '../interfaces/profile-and-token.interface.js';
11
+ import '../../user-management/interfaces/oauth-tokens.interface.js';
11
12
  import '../interfaces/profile.interface.js';
12
13
  import '../../roles/interfaces/role.interface.js';
@@ -1,5 +1,6 @@
1
1
  import { UnknownRecord } from '../../common/interfaces/unknown-record.interface.js';
2
2
  import { ProfileAndTokenResponse, ProfileAndToken } from '../interfaces/profile-and-token.interface.js';
3
+ import '../../user-management/interfaces/oauth-tokens.interface.js';
3
4
  import '../interfaces/profile.interface.js';
4
5
  import '../../roles/interfaces/role.interface.js';
5
6
  import '../interfaces/connection-type.enum.js';
@@ -1,9 +1,11 @@
1
1
  var __defProp = Object.defineProperty;
2
2
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import { deserializeOauthTokens } from "../../user-management/serializers/oauth-tokens.serializer.js";
3
4
  import { deserializeProfile } from "./profile.serializer.js";
4
5
  const deserializeProfileAndToken = /* @__PURE__ */ __name((profileAndToken) => ({
5
6
  accessToken: profileAndToken.access_token,
6
- profile: deserializeProfile(profileAndToken.profile)
7
+ profile: deserializeProfile(profileAndToken.profile),
8
+ oauthTokens: deserializeOauthTokens(profileAndToken.oauth_tokens)
7
9
  }), "deserializeProfileAndToken");
8
10
  export {
9
11
  deserializeProfileAndToken
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/sso/serializers/profile-and-token.serializer.ts"],"sourcesContent":["import { UnknownRecord } from '../../common/interfaces/unknown-record.interface';\nimport { ProfileAndToken, ProfileAndTokenResponse } from '../interfaces';\nimport { deserializeProfile } from './profile.serializer';\n\nexport const deserializeProfileAndToken = <\n CustomAttributesType extends UnknownRecord,\n>(\n profileAndToken: ProfileAndTokenResponse<CustomAttributesType>,\n): ProfileAndToken<CustomAttributesType> => ({\n accessToken: profileAndToken.access_token,\n profile: deserializeProfile(profileAndToken.profile),\n});\n"],"mappings":";;AAEA,SAAS,0BAA0B;AAE5B,MAAM,6BAA6B,wBAGxC,qBAC2C;AAAA,EAC3C,aAAa,gBAAgB;AAAA,EAC7B,SAAS,mBAAmB,gBAAgB,OAAO;AACrD,IAP0C;","names":[]}
1
+ {"version":3,"sources":["../../../../src/sso/serializers/profile-and-token.serializer.ts"],"sourcesContent":["import { UnknownRecord } from '../../common/interfaces/unknown-record.interface';\nimport { deserializeOauthTokens } from '../../user-management/serializers/oauth-tokens.serializer';\nimport { ProfileAndToken, ProfileAndTokenResponse } from '../interfaces';\nimport { deserializeProfile } from './profile.serializer';\n\nexport const deserializeProfileAndToken = <\n CustomAttributesType extends UnknownRecord,\n>(\n profileAndToken: ProfileAndTokenResponse<CustomAttributesType>,\n): ProfileAndToken<CustomAttributesType> => ({\n accessToken: profileAndToken.access_token,\n profile: deserializeProfile(profileAndToken.profile),\n oauthTokens: deserializeOauthTokens(profileAndToken.oauth_tokens),\n});\n"],"mappings":";;AACA,SAAS,8BAA8B;AAEvC,SAAS,0BAA0B;AAE5B,MAAM,6BAA6B,wBAGxC,qBAC2C;AAAA,EAC3C,aAAa,gBAAgB;AAAA,EAC7B,SAAS,mBAAmB,gBAAgB,OAAO;AAAA,EACnD,aAAa,uBAAuB,gBAAgB,YAAY;AAClE,IAR0C;","names":[]}
@@ -1,6 +1,6 @@
1
1
  import '../common/interfaces/unknown-record.interface.js';
2
2
  import '../common/utils/pagination.js';
3
- export { S as SSO } from '../workos-DGRMJ65Z.js';
3
+ export { S as SSO } from '../workos-EX3jNkYH.js';
4
4
  import './interfaces/authorization-url-options.interface.js';
5
5
  import './interfaces/connection.interface.js';
6
6
  import './interfaces/get-profile-options.interface.js';
@@ -61,6 +61,7 @@ import '../audit-logs/interfaces/audit-log-export.interface.js';
61
61
  import '../audit-logs/interfaces/create-audit-log-event-options.interface.js';
62
62
  import '../audit-logs/interfaces/create-audit-log-schema-options.interface.js';
63
63
  import 'jose';
64
+ import '../user-management-B38wNrIN.js';
64
65
  import '../user-management/interfaces/authenticate-with-code-options.interface.js';
65
66
  import '../user-management/interfaces/authenticate-with-options-base.interface.js';
66
67
  import '../user-management/interfaces/authenticate-with-code-and-verifier-options.interface.js';
@@ -1,5 +1,6 @@
1
1
  var __defProp = Object.defineProperty;
2
2
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
+ import * as clientSSO from "../client/sso.js";
3
4
  import { fetchAndDeserialize } from "../common/utils/fetch-and-deserialize.js";
4
5
  import { AutoPaginatable } from "../common/utils/pagination.js";
5
6
  import {
@@ -8,17 +9,6 @@ import {
8
9
  deserializeProfileAndToken,
9
10
  serializeListConnectionsOptions
10
11
  } from "./serializers/index.js";
11
- const toQueryString = /* @__PURE__ */ __name((options) => {
12
- const searchParams = new URLSearchParams();
13
- const keys = Object.keys(options).sort();
14
- for (const key of keys) {
15
- const value = options[key];
16
- if (value) {
17
- searchParams.append(key, value);
18
- }
19
- }
20
- return searchParams.toString();
21
- }, "toQueryString");
22
12
  class SSO {
23
13
  constructor(workos) {
24
14
  this.workos = workos;
@@ -46,33 +36,11 @@ class SSO {
46
36
  async deleteConnection(id) {
47
37
  await this.workos.delete(`/connections/${id}`);
48
38
  }
49
- getAuthorizationUrl({
50
- connection,
51
- clientId,
52
- domainHint,
53
- loginHint,
54
- organization,
55
- provider,
56
- redirectUri,
57
- state
58
- }) {
59
- if (!provider && !connection && !organization) {
60
- throw new Error(
61
- `Incomplete arguments. Need to specify either a 'connection', 'organization', or 'provider'.`
62
- );
63
- }
64
- const query = toQueryString({
65
- connection,
66
- organization,
67
- domain_hint: domainHint,
68
- login_hint: loginHint,
69
- provider,
70
- client_id: clientId,
71
- redirect_uri: redirectUri,
72
- response_type: "code",
73
- state
39
+ getAuthorizationUrl(options) {
40
+ return clientSSO.getAuthorizationUrl({
41
+ ...options,
42
+ baseURL: this.workos.baseURL
74
43
  });
75
- return `${this.workos.baseURL}/sso/authorize?${query}`;
76
44
  }
77
45
  async getConnection(id) {
78
46
  const { data } = await this.workos.get(
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/sso/sso.ts"],"sourcesContent":["import { UnknownRecord } from '../common/interfaces/unknown-record.interface';\nimport { fetchAndDeserialize } from '../common/utils/fetch-and-deserialize';\nimport { AutoPaginatable } from '../common/utils/pagination';\nimport { WorkOS } from '../workos';\nimport {\n Connection,\n ConnectionResponse,\n GetProfileAndTokenOptions,\n GetProfileOptions,\n ListConnectionsOptions,\n Profile,\n ProfileAndToken,\n ProfileAndTokenResponse,\n ProfileResponse,\n SSOAuthorizationURLOptions,\n SerializedListConnectionsOptions,\n} from './interfaces';\nimport {\n deserializeConnection,\n deserializeProfile,\n deserializeProfileAndToken,\n serializeListConnectionsOptions,\n} from './serializers';\n\nconst toQueryString = (options: Record<string, string | undefined>): string => {\n const searchParams = new URLSearchParams();\n const keys = Object.keys(options).sort();\n\n for (const key of keys) {\n const value = options[key];\n\n if (value) {\n searchParams.append(key, value);\n }\n }\n\n return searchParams.toString();\n};\n\nexport class SSO {\n constructor(private readonly workos: WorkOS) {}\n\n async listConnections(\n options?: ListConnectionsOptions,\n ): Promise<AutoPaginatable<Connection, SerializedListConnectionsOptions>> {\n return new AutoPaginatable(\n await fetchAndDeserialize<ConnectionResponse, Connection>(\n this.workos,\n '/connections',\n deserializeConnection,\n options ? serializeListConnectionsOptions(options) : undefined,\n ),\n (params) =>\n fetchAndDeserialize<ConnectionResponse, Connection>(\n this.workos,\n '/connections',\n deserializeConnection,\n params,\n ),\n options ? serializeListConnectionsOptions(options) : undefined,\n );\n }\n async deleteConnection(id: string) {\n await this.workos.delete(`/connections/${id}`);\n }\n\n getAuthorizationUrl({\n connection,\n clientId,\n domainHint,\n loginHint,\n organization,\n provider,\n redirectUri,\n state,\n }: SSOAuthorizationURLOptions): string {\n if (!provider && !connection && !organization) {\n throw new Error(\n `Incomplete arguments. Need to specify either a 'connection', 'organization', or 'provider'.`,\n );\n }\n\n const query = toQueryString({\n connection,\n organization,\n domain_hint: domainHint,\n login_hint: loginHint,\n provider,\n client_id: clientId,\n redirect_uri: redirectUri,\n response_type: 'code',\n state,\n });\n\n return `${this.workos.baseURL}/sso/authorize?${query}`;\n }\n\n async getConnection(id: string): Promise<Connection> {\n const { data } = await this.workos.get<ConnectionResponse>(\n `/connections/${id}`,\n );\n\n return deserializeConnection(data);\n }\n\n async getProfileAndToken<\n CustomAttributesType extends UnknownRecord = UnknownRecord,\n >({\n code,\n clientId,\n }: GetProfileAndTokenOptions): Promise<\n ProfileAndToken<CustomAttributesType>\n > {\n const form = new URLSearchParams({\n client_id: clientId,\n client_secret: this.workos.key as string,\n grant_type: 'authorization_code',\n code,\n });\n\n const { data } = await this.workos.post<\n ProfileAndTokenResponse<CustomAttributesType>\n >('/sso/token', form);\n\n return deserializeProfileAndToken(data);\n }\n\n async getProfile<CustomAttributesType extends UnknownRecord = UnknownRecord>({\n accessToken,\n }: GetProfileOptions): Promise<Profile<CustomAttributesType>> {\n const { data } = await this.workos.get<\n ProfileResponse<CustomAttributesType>\n >('/sso/profile', {\n accessToken,\n });\n\n return deserializeProfile(data);\n }\n}\n"],"mappings":";;AACA,SAAS,2BAA2B;AACpC,SAAS,uBAAuB;AAehC;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP,MAAM,gBAAgB,wBAAC,YAAwD;AAC7E,QAAM,eAAe,IAAI,gBAAgB;AACzC,QAAM,OAAO,OAAO,KAAK,OAAO,EAAE,KAAK;AAEvC,aAAW,OAAO,MAAM;AACtB,UAAM,QAAQ,QAAQ,GAAG;AAEzB,QAAI,OAAO;AACT,mBAAa,OAAO,KAAK,KAAK;AAAA,IAChC;AAAA,EACF;AAEA,SAAO,aAAa,SAAS;AAC/B,GAbsB;AAef,MAAM,IAAI;AAAA,EACf,YAA6B,QAAgB;AAAhB;AAAA,EAAiB;AAAA,EAxChD,OAuCiB;AAAA;AAAA;AAAA,EAGf,MAAM,gBACJ,SACwE;AACxE,WAAO,IAAI;AAAA,MACT,MAAM;AAAA,QACJ,KAAK;AAAA,QACL;AAAA,QACA;AAAA,QACA,UAAU,gCAAgC,OAAO,IAAI;AAAA,MACvD;AAAA,MACA,CAAC,WACC;AAAA,QACE,KAAK;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,MACF,UAAU,gCAAgC,OAAO,IAAI;AAAA,IACvD;AAAA,EACF;AAAA,EACA,MAAM,iBAAiB,IAAY;AACjC,UAAM,KAAK,OAAO,OAAO,gBAAgB,EAAE,EAAE;AAAA,EAC/C;AAAA,EAEA,oBAAoB;AAAA,IAClB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GAAuC;AACrC,QAAI,CAAC,YAAY,CAAC,cAAc,CAAC,cAAc;AAC7C,YAAM,IAAI;AAAA,QACR;AAAA,MACF;AAAA,IACF;AAEA,UAAM,QAAQ,cAAc;AAAA,MAC1B;AAAA,MACA;AAAA,MACA,aAAa;AAAA,MACb,YAAY;AAAA,MACZ;AAAA,MACA,WAAW;AAAA,MACX,cAAc;AAAA,MACd,eAAe;AAAA,MACf;AAAA,IACF,CAAC;AAED,WAAO,GAAG,KAAK,OAAO,OAAO,kBAAkB,KAAK;AAAA,EACtD;AAAA,EAEA,MAAM,cAAc,IAAiC;AACnD,UAAM,EAAE,KAAK,IAAI,MAAM,KAAK,OAAO;AAAA,MACjC,gBAAgB,EAAE;AAAA,IACpB;AAEA,WAAO,sBAAsB,IAAI;AAAA,EACnC;AAAA,EAEA,MAAM,mBAEJ;AAAA,IACA;AAAA,IACA;AAAA,EACF,GAEE;AACA,UAAM,OAAO,IAAI,gBAAgB;AAAA,MAC/B,WAAW;AAAA,MACX,eAAe,KAAK,OAAO;AAAA,MAC3B,YAAY;AAAA,MACZ;AAAA,IACF,CAAC;AAED,UAAM,EAAE,KAAK,IAAI,MAAM,KAAK,OAAO,KAEjC,cAAc,IAAI;AAEpB,WAAO,2BAA2B,IAAI;AAAA,EACxC;AAAA,EAEA,MAAM,WAAuE;AAAA,IAC3E;AAAA,EACF,GAA8D;AAC5D,UAAM,EAAE,KAAK,IAAI,MAAM,KAAK,OAAO,IAEjC,gBAAgB;AAAA,MAChB;AAAA,IACF,CAAC;AAED,WAAO,mBAAmB,IAAI;AAAA,EAChC;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/sso/sso.ts"],"sourcesContent":["import * as clientSSO from '../client/sso';\nimport { UnknownRecord } from '../common/interfaces/unknown-record.interface';\nimport { fetchAndDeserialize } from '../common/utils/fetch-and-deserialize';\nimport { AutoPaginatable } from '../common/utils/pagination';\nimport { WorkOS } from '../workos';\nimport {\n Connection,\n ConnectionResponse,\n GetProfileAndTokenOptions,\n GetProfileOptions,\n ListConnectionsOptions,\n Profile,\n ProfileAndToken,\n ProfileAndTokenResponse,\n ProfileResponse,\n SSOAuthorizationURLOptions,\n SerializedListConnectionsOptions,\n} from './interfaces';\nimport {\n deserializeConnection,\n deserializeProfile,\n deserializeProfileAndToken,\n serializeListConnectionsOptions,\n} from './serializers';\n\nexport class SSO {\n constructor(private readonly workos: WorkOS) {}\n\n async listConnections(\n options?: ListConnectionsOptions,\n ): Promise<AutoPaginatable<Connection, SerializedListConnectionsOptions>> {\n return new AutoPaginatable(\n await fetchAndDeserialize<ConnectionResponse, Connection>(\n this.workos,\n '/connections',\n deserializeConnection,\n options ? serializeListConnectionsOptions(options) : undefined,\n ),\n (params) =>\n fetchAndDeserialize<ConnectionResponse, Connection>(\n this.workos,\n '/connections',\n deserializeConnection,\n params,\n ),\n options ? serializeListConnectionsOptions(options) : undefined,\n );\n }\n async deleteConnection(id: string) {\n await this.workos.delete(`/connections/${id}`);\n }\n\n getAuthorizationUrl(options: SSOAuthorizationURLOptions): string {\n // Delegate to client implementation\n return clientSSO.getAuthorizationUrl({\n ...options,\n baseURL: this.workos.baseURL,\n });\n }\n\n async getConnection(id: string): Promise<Connection> {\n const { data } = await this.workos.get<ConnectionResponse>(\n `/connections/${id}`,\n );\n\n return deserializeConnection(data);\n }\n\n async getProfileAndToken<\n CustomAttributesType extends UnknownRecord = UnknownRecord,\n >({\n code,\n clientId,\n }: GetProfileAndTokenOptions): Promise<\n ProfileAndToken<CustomAttributesType>\n > {\n const form = new URLSearchParams({\n client_id: clientId,\n client_secret: this.workos.key as string,\n grant_type: 'authorization_code',\n code,\n });\n\n const { data } = await this.workos.post<\n ProfileAndTokenResponse<CustomAttributesType>\n >('/sso/token', form);\n\n return deserializeProfileAndToken(data);\n }\n\n async getProfile<CustomAttributesType extends UnknownRecord = UnknownRecord>({\n accessToken,\n }: GetProfileOptions): Promise<Profile<CustomAttributesType>> {\n const { data } = await this.workos.get<\n ProfileResponse<CustomAttributesType>\n >('/sso/profile', {\n accessToken,\n });\n\n return deserializeProfile(data);\n }\n}\n"],"mappings":";;AAAA,YAAY,eAAe;AAE3B,SAAS,2BAA2B;AACpC,SAAS,uBAAuB;AAehC;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEA,MAAM,IAAI;AAAA,EACf,YAA6B,QAAgB;AAAhB;AAAA,EAAiB;AAAA,EA1BhD,OAyBiB;AAAA;AAAA;AAAA,EAGf,MAAM,gBACJ,SACwE;AACxE,WAAO,IAAI;AAAA,MACT,MAAM;AAAA,QACJ,KAAK;AAAA,QACL;AAAA,QACA;AAAA,QACA,UAAU,gCAAgC,OAAO,IAAI;AAAA,MACvD;AAAA,MACA,CAAC,WACC;AAAA,QACE,KAAK;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,MACF,UAAU,gCAAgC,OAAO,IAAI;AAAA,IACvD;AAAA,EACF;AAAA,EACA,MAAM,iBAAiB,IAAY;AACjC,UAAM,KAAK,OAAO,OAAO,gBAAgB,EAAE,EAAE;AAAA,EAC/C;AAAA,EAEA,oBAAoB,SAA6C;AAE/D,WAAO,UAAU,oBAAoB;AAAA,MACnC,GAAG;AAAA,MACH,SAAS,KAAK,OAAO;AAAA,IACvB,CAAC;AAAA,EACH;AAAA,EAEA,MAAM,cAAc,IAAiC;AACnD,UAAM,EAAE,KAAK,IAAI,MAAM,KAAK,OAAO;AAAA,MACjC,gBAAgB,EAAE;AAAA,IACpB;AAEA,WAAO,sBAAsB,IAAI;AAAA,EACnC;AAAA,EAEA,MAAM,mBAEJ;AAAA,IACA;AAAA,IACA;AAAA,EACF,GAEE;AACA,UAAM,OAAO,IAAI,gBAAgB;AAAA,MAC/B,WAAW;AAAA,MACX,eAAe,KAAK,OAAO;AAAA,MAC3B,YAAY;AAAA,MACZ;AAAA,IACF,CAAC;AAED,UAAM,EAAE,KAAK,IAAI,MAAM,KAAK,OAAO,KAEjC,cAAc,IAAI;AAEpB,WAAO,2BAA2B,IAAI;AAAA,EACxC;AAAA,EAEA,MAAM,WAAuE;AAAA,IAC3E;AAAA,EACF,GAA8D;AAC5D,UAAM,EAAE,KAAK,IAAI,MAAM,KAAK,OAAO,IAEjC,gBAAgB;AAAA,MAChB;AAAA,IACF,CAAC;AAED,WAAO,mBAAmB,IAAI;AAAA,EAChC;AACF;","names":[]}
@@ -0,0 +1,22 @@
1
+ import { SSOAuthorizationURLOptions as SSOAuthorizationURLOptions$1 } from './sso/interfaces/authorization-url-options.interface.js';
2
+
3
+ type SSOAuthorizationURLOptions = SSOAuthorizationURLOptions$1 & {
4
+ baseURL?: string;
5
+ };
6
+ /**
7
+ * Generates the authorization URL for SSO authentication.
8
+ * Does not require an API key, suitable for OAuth client operations.
9
+ *
10
+ * @param options - SSO authorization URL options
11
+ * @returns The authorization URL as a string
12
+ * @throws Error if required arguments are missing
13
+ */
14
+ declare function getAuthorizationUrl(options: SSOAuthorizationURLOptions): string;
15
+
16
+ type sso_SSOAuthorizationURLOptions = SSOAuthorizationURLOptions;
17
+ declare const sso_getAuthorizationUrl: typeof getAuthorizationUrl;
18
+ declare namespace sso {
19
+ export { type sso_SSOAuthorizationURLOptions as SSOAuthorizationURLOptions, sso_getAuthorizationUrl as getAuthorizationUrl };
20
+ }
21
+
22
+ export { type SSOAuthorizationURLOptions as S, getAuthorizationUrl as g, sso as s };
@@ -11,6 +11,7 @@ interface AccessToken {
11
11
  sid: string;
12
12
  org_id?: string;
13
13
  role?: string;
14
+ roles?: string[];
14
15
  permissions?: string[];
15
16
  entitlements?: string[];
16
17
  feature_flags?: string[];
@@ -30,6 +31,7 @@ type AuthenticateWithSessionCookieSuccessResponse = {
30
31
  sessionId: string;
31
32
  organizationId?: string;
32
33
  role?: string;
34
+ roles?: string[];
33
35
  permissions?: string[];
34
36
  entitlements?: string[];
35
37
  featureFlags?: string[];
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/user-management/interfaces/authenticate-with-session-cookie.interface.ts"],"sourcesContent":["import { AuthenticationResponse } from './authentication-response.interface';\nimport { Impersonator } from './impersonator.interface';\nimport { User } from './user.interface';\n\nexport interface AuthenticateWithSessionCookieOptions {\n sessionData: string;\n cookiePassword?: string;\n}\n\nexport interface AccessToken {\n sid: string;\n org_id?: string;\n role?: string;\n permissions?: string[];\n entitlements?: string[];\n feature_flags?: string[];\n}\n\nexport type SessionCookieData = Pick<\n AuthenticationResponse,\n 'accessToken' | 'impersonator' | 'organizationId' | 'refreshToken' | 'user'\n>;\n\nexport enum AuthenticateWithSessionCookieFailureReason {\n INVALID_JWT = 'invalid_jwt',\n INVALID_SESSION_COOKIE = 'invalid_session_cookie',\n NO_SESSION_COOKIE_PROVIDED = 'no_session_cookie_provided',\n}\n\nexport type AuthenticateWithSessionCookieFailedResponse = {\n authenticated: false;\n reason: AuthenticateWithSessionCookieFailureReason;\n};\n\nexport type AuthenticateWithSessionCookieSuccessResponse = {\n authenticated: true;\n sessionId: string;\n organizationId?: string;\n role?: string;\n permissions?: string[];\n entitlements?: string[];\n featureFlags?: string[];\n user: User;\n impersonator?: Impersonator;\n accessToken: string;\n};\n"],"mappings":"AAuBO,IAAK,6CAAL,kBAAKA,gDAAL;AACL,EAAAA,4CAAA,iBAAc;AACd,EAAAA,4CAAA,4BAAyB;AACzB,EAAAA,4CAAA,gCAA6B;AAHnB,SAAAA;AAAA,GAAA;","names":["AuthenticateWithSessionCookieFailureReason"]}
1
+ {"version":3,"sources":["../../../../src/user-management/interfaces/authenticate-with-session-cookie.interface.ts"],"sourcesContent":["import { AuthenticationResponse } from './authentication-response.interface';\nimport { Impersonator } from './impersonator.interface';\nimport { User } from './user.interface';\n\nexport interface AuthenticateWithSessionCookieOptions {\n sessionData: string;\n cookiePassword?: string;\n}\n\nexport interface AccessToken {\n sid: string;\n org_id?: string;\n role?: string;\n roles?: string[];\n permissions?: string[];\n entitlements?: string[];\n feature_flags?: string[];\n}\n\nexport type SessionCookieData = Pick<\n AuthenticationResponse,\n 'accessToken' | 'impersonator' | 'organizationId' | 'refreshToken' | 'user'\n>;\n\nexport enum AuthenticateWithSessionCookieFailureReason {\n INVALID_JWT = 'invalid_jwt',\n INVALID_SESSION_COOKIE = 'invalid_session_cookie',\n NO_SESSION_COOKIE_PROVIDED = 'no_session_cookie_provided',\n}\n\nexport type AuthenticateWithSessionCookieFailedResponse = {\n authenticated: false;\n reason: AuthenticateWithSessionCookieFailureReason;\n};\n\nexport type AuthenticateWithSessionCookieSuccessResponse = {\n authenticated: true;\n sessionId: string;\n organizationId?: string;\n role?: string;\n roles?: string[];\n permissions?: string[];\n entitlements?: string[];\n featureFlags?: string[];\n user: User;\n impersonator?: Impersonator;\n accessToken: string;\n};\n"],"mappings":"AAwBO,IAAK,6CAAL,kBAAKA,gDAAL;AACL,EAAAA,4CAAA,iBAAc;AACd,EAAAA,4CAAA,4BAAyB;AACzB,EAAAA,4CAAA,gCAA6B;AAHnB,SAAAA;AAAA,GAAA;","names":["AuthenticateWithSessionCookieFailureReason"]}
@@ -2,7 +2,7 @@ import { Impersonator, ImpersonatorResponse } from './impersonator.interface.js'
2
2
  import { OauthTokens, OauthTokensResponse } from './oauth-tokens.interface.js';
3
3
  import { User, UserResponse } from './user.interface.js';
4
4
 
5
- type AuthenticationMethod = 'SSO' | 'Password' | 'Passkey' | 'AppleOAuth' | 'GitHubOAuth' | 'GoogleOAuth' | 'MicrosoftOAuth' | 'MagicAuth' | 'Impersonation';
5
+ type AuthenticationMethod = 'SSO' | 'Password' | 'Passkey' | 'AppleOAuth' | 'GitHubOAuth' | 'GoogleOAuth' | 'MicrosoftOAuth' | 'SalesforceOAuth' | 'MagicAuth' | 'Impersonation';
6
6
  interface AuthenticationResponse {
7
7
  user: User;
8
8
  organizationId?: string;
@@ -2,11 +2,13 @@ interface CreateOrganizationMembershipOptions {
2
2
  organizationId: string;
3
3
  userId: string;
4
4
  roleSlug?: string;
5
+ roleSlugs?: string[];
5
6
  }
6
7
  interface SerializedCreateOrganizationMembershipOptions {
7
8
  organization_id: string;
8
9
  user_id: string;
9
10
  role_slug?: string;
11
+ role_slugs?: string[];
10
12
  }
11
13
 
12
14
  export type { CreateOrganizationMembershipOptions, SerializedCreateOrganizationMembershipOptions };
@@ -1,12 +1,12 @@
1
1
  interface Identity {
2
2
  idpId: string;
3
3
  type: 'OAuth';
4
- provider: 'AppleOAuth' | 'GoogleOAuth' | 'GitHubOAuth' | 'MicrosoftOAuth';
4
+ provider: 'AppleOAuth' | 'GoogleOAuth' | 'GitHubOAuth' | 'MicrosoftOAuth' | 'SalesforceOAuth';
5
5
  }
6
6
  interface IdentityResponse {
7
7
  idp_id: string;
8
8
  type: 'OAuth';
9
- provider: 'AppleOAuth' | 'GoogleOAuth' | 'GitHubOAuth' | 'MicrosoftOAuth';
9
+ provider: 'AppleOAuth' | 'GoogleOAuth' | 'GitHubOAuth' | 'MicrosoftOAuth' | 'SalesforceOAuth';
10
10
  }
11
11
 
12
12
  export type { Identity, IdentityResponse };
@@ -11,6 +11,7 @@ interface OrganizationMembership {
11
11
  createdAt: string;
12
12
  updatedAt: string;
13
13
  role: RoleResponse;
14
+ roles?: RoleResponse[];
14
15
  }
15
16
  interface OrganizationMembershipResponse {
16
17
  object: 'organization_membership';
@@ -22,6 +23,7 @@ interface OrganizationMembershipResponse {
22
23
  created_at: string;
23
24
  updated_at: string;
24
25
  role: RoleResponse;
26
+ roles?: RoleResponse[];
25
27
  }
26
28
 
27
29
  export type { OrganizationMembership, OrganizationMembershipResponse, OrganizationMembershipStatus };
@@ -1,8 +1,10 @@
1
1
  interface UpdateOrganizationMembershipOptions {
2
2
  roleSlug?: string;
3
+ roleSlugs?: string[];
3
4
  }
4
5
  interface SerializedUpdateOrganizationMembershipOptions {
5
6
  role_slug?: string;
7
+ role_slugs?: string[];
6
8
  }
7
9
 
8
10
  export type { SerializedUpdateOrganizationMembershipOptions, UpdateOrganizationMembershipOptions };
@@ -3,7 +3,8 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
3
3
  const serializeCreateOrganizationMembershipOptions = /* @__PURE__ */ __name((options) => ({
4
4
  organization_id: options.organizationId,
5
5
  user_id: options.userId,
6
- role_slug: options.roleSlug
6
+ role_slug: options.roleSlug,
7
+ role_slugs: options.roleSlugs
7
8
  }), "serializeCreateOrganizationMembershipOptions");
8
9
  export {
9
10
  serializeCreateOrganizationMembershipOptions
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/user-management/serializers/create-organization-membership-options.serializer.ts"],"sourcesContent":["import {\n CreateOrganizationMembershipOptions,\n SerializedCreateOrganizationMembershipOptions,\n} from '../interfaces/create-organization-membership-options.interface';\n\nexport const serializeCreateOrganizationMembershipOptions = (\n options: CreateOrganizationMembershipOptions,\n): SerializedCreateOrganizationMembershipOptions => ({\n organization_id: options.organizationId,\n user_id: options.userId,\n role_slug: options.roleSlug,\n});\n"],"mappings":";;AAKO,MAAM,+CAA+C,wBAC1D,aACmD;AAAA,EACnD,iBAAiB,QAAQ;AAAA,EACzB,SAAS,QAAQ;AAAA,EACjB,WAAW,QAAQ;AACrB,IAN4D;","names":[]}
1
+ {"version":3,"sources":["../../../../src/user-management/serializers/create-organization-membership-options.serializer.ts"],"sourcesContent":["import {\n CreateOrganizationMembershipOptions,\n SerializedCreateOrganizationMembershipOptions,\n} from '../interfaces/create-organization-membership-options.interface';\n\nexport const serializeCreateOrganizationMembershipOptions = (\n options: CreateOrganizationMembershipOptions,\n): SerializedCreateOrganizationMembershipOptions => ({\n organization_id: options.organizationId,\n user_id: options.userId,\n role_slug: options.roleSlug,\n role_slugs: options.roleSlugs,\n});\n"],"mappings":";;AAKO,MAAM,+CAA+C,wBAC1D,aACmD;AAAA,EACnD,iBAAiB,QAAQ;AAAA,EACzB,SAAS,QAAQ;AAAA,EACjB,WAAW,QAAQ;AAAA,EACnB,YAAY,QAAQ;AACtB,IAP4D;","names":[]}
@@ -9,7 +9,8 @@ const deserializeOrganizationMembership = /* @__PURE__ */ __name((organizationMe
9
9
  status: organizationMembership.status,
10
10
  createdAt: organizationMembership.created_at,
11
11
  updatedAt: organizationMembership.updated_at,
12
- role: organizationMembership.role
12
+ role: organizationMembership.role,
13
+ ...organizationMembership.roles && { roles: organizationMembership.roles }
13
14
  }), "deserializeOrganizationMembership");
14
15
  export {
15
16
  deserializeOrganizationMembership
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/user-management/serializers/organization-membership.serializer.ts"],"sourcesContent":["import {\n OrganizationMembership,\n OrganizationMembershipResponse,\n} from '../interfaces/organization-membership.interface';\n\nexport const deserializeOrganizationMembership = (\n organizationMembership: OrganizationMembershipResponse,\n): OrganizationMembership => ({\n object: organizationMembership.object,\n id: organizationMembership.id,\n userId: organizationMembership.user_id,\n organizationId: organizationMembership.organization_id,\n organizationName: organizationMembership.organization_name,\n status: organizationMembership.status,\n createdAt: organizationMembership.created_at,\n updatedAt: organizationMembership.updated_at,\n role: organizationMembership.role,\n});\n"],"mappings":";;AAKO,MAAM,oCAAoC,wBAC/C,4BAC4B;AAAA,EAC5B,QAAQ,uBAAuB;AAAA,EAC/B,IAAI,uBAAuB;AAAA,EAC3B,QAAQ,uBAAuB;AAAA,EAC/B,gBAAgB,uBAAuB;AAAA,EACvC,kBAAkB,uBAAuB;AAAA,EACzC,QAAQ,uBAAuB;AAAA,EAC/B,WAAW,uBAAuB;AAAA,EAClC,WAAW,uBAAuB;AAAA,EAClC,MAAM,uBAAuB;AAC/B,IAZiD;","names":[]}
1
+ {"version":3,"sources":["../../../../src/user-management/serializers/organization-membership.serializer.ts"],"sourcesContent":["import {\n OrganizationMembership,\n OrganizationMembershipResponse,\n} from '../interfaces/organization-membership.interface';\n\nexport const deserializeOrganizationMembership = (\n organizationMembership: OrganizationMembershipResponse,\n): OrganizationMembership => ({\n object: organizationMembership.object,\n id: organizationMembership.id,\n userId: organizationMembership.user_id,\n organizationId: organizationMembership.organization_id,\n organizationName: organizationMembership.organization_name,\n status: organizationMembership.status,\n createdAt: organizationMembership.created_at,\n updatedAt: organizationMembership.updated_at,\n role: organizationMembership.role,\n ...(organizationMembership.roles && { roles: organizationMembership.roles }),\n});\n"],"mappings":";;AAKO,MAAM,oCAAoC,wBAC/C,4BAC4B;AAAA,EAC5B,QAAQ,uBAAuB;AAAA,EAC/B,IAAI,uBAAuB;AAAA,EAC3B,QAAQ,uBAAuB;AAAA,EAC/B,gBAAgB,uBAAuB;AAAA,EACvC,kBAAkB,uBAAuB;AAAA,EACzC,QAAQ,uBAAuB;AAAA,EAC/B,WAAW,uBAAuB;AAAA,EAClC,WAAW,uBAAuB;AAAA,EAClC,MAAM,uBAAuB;AAAA,EAC7B,GAAI,uBAAuB,SAAS,EAAE,OAAO,uBAAuB,MAAM;AAC5E,IAbiD;","names":[]}