authing_ruby 1.0.6

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 (505) hide show
  1. checksums.yaml +7 -0
  2. data/authing_ruby.gemspec +30 -0
  3. data/lib/authing_ruby/GraphQLAPI.rb +151 -0
  4. data/lib/authing_ruby/authentication/AuthenticationClient.rb +801 -0
  5. data/lib/authing_ruby/authentication/AuthenticationTokenProvider.rb +42 -0
  6. data/lib/authing_ruby/authentication/BaseAuthenticationClient.rb +28 -0
  7. data/lib/authing_ruby/common/GraphqlClient.rb +39 -0
  8. data/lib/authing_ruby/common/HttpClient.rb +247 -0
  9. data/lib/authing_ruby/common/PublicKeyManager.rb +42 -0
  10. data/lib/authing_ruby/graphql/mutations/bindPhone.gql +53 -0
  11. data/lib/authing_ruby/graphql/mutations/createUser.gql +54 -0
  12. data/lib/authing_ruby/graphql/mutations/deleteUser.gql +6 -0
  13. data/lib/authing_ruby/graphql/mutations/deleteUsers.gql +6 -0
  14. data/lib/authing_ruby/graphql/mutations/loginByEmail.gql +54 -0
  15. data/lib/authing_ruby/graphql/mutations/loginByPhoneCode.gql +54 -0
  16. data/lib/authing_ruby/graphql/mutations/loginByPhonePassword.gql +54 -0
  17. data/lib/authing_ruby/graphql/mutations/loginByUsername.gql +54 -0
  18. data/lib/authing_ruby/graphql/mutations/refreshAccessToken.gql +7 -0
  19. data/lib/authing_ruby/graphql/mutations/registerByEmail.gql +54 -0
  20. data/lib/authing_ruby/graphql/mutations/registerByPhoneCode.gql +54 -0
  21. data/lib/authing_ruby/graphql/mutations/registerByUsername.gql +54 -0
  22. data/lib/authing_ruby/graphql/mutations/resetPassword.gql +6 -0
  23. data/lib/authing_ruby/graphql/mutations/sendEmail.gql +6 -0
  24. data/lib/authing_ruby/graphql/mutations/updatePassword.gql +53 -0
  25. data/lib/authing_ruby/graphql/mutations/updateUser.gql +54 -0
  26. data/lib/authing_ruby/graphql/queries/accessToken.gql +7 -0
  27. data/lib/authing_ruby/graphql/queries/checkLoginStatus.gql +14 -0
  28. data/lib/authing_ruby/graphql/queries/checkPasswordStrength.gql +6 -0
  29. data/lib/authing_ruby/graphql/queries/findUser.gql +64 -0
  30. data/lib/authing_ruby/graphql/queries/isUserExists.gql +13 -0
  31. data/lib/authing_ruby/graphql/queries/user.gql +63 -0
  32. data/lib/authing_ruby/graphql/queries/users.gql +57 -0
  33. data/lib/authing_ruby/management/AclManagementClient.rb +47 -0
  34. data/lib/authing_ruby/management/ApplicationsManagementClient.rb +79 -0
  35. data/lib/authing_ruby/management/ManagementClient.rb +66 -0
  36. data/lib/authing_ruby/management/ManagementTokenProvider.rb +92 -0
  37. data/lib/authing_ruby/management/RolesManagementClient.rb +38 -0
  38. data/lib/authing_ruby/management/UserpoolManagementClient.rb +15 -0
  39. data/lib/authing_ruby/management/UsersManagementClient.rb +161 -0
  40. data/lib/authing_ruby/management/WhitelistManagementClient.rb +1 -0
  41. data/lib/authing_ruby/test/RSA.rb +18 -0
  42. data/lib/authing_ruby/test/helper.rb +15 -0
  43. data/lib/authing_ruby/test/js_sdk_test/1.buildAuthorizeUrl.js +43 -0
  44. data/lib/authing_ruby/test/js_sdk_test/2.buildAuthorizeUrl_PKCE.js +47 -0
  45. data/lib/authing_ruby/test/js_sdk_test/README.md +5 -0
  46. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/CONTRIBUTION.md +23 -0
  47. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/LICENSE +21 -0
  48. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/README.md +303 -0
  49. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/browser/index.min.js +2 -0
  50. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/browser/index.min.js.LICENSE.txt +91 -0
  51. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/index.d.ts +7 -0
  52. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/index.js +20 -0
  53. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/AuthenticationClient.d.ts +1078 -0
  54. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/AuthenticationClient.js +2801 -0
  55. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/AuthenticationTokenProvider.d.ts +13 -0
  56. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/AuthenticationTokenProvider.js +56 -0
  57. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/BaseAuthenticationClient.d.ts +6 -0
  58. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/BaseAuthenticationClient.js +31 -0
  59. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/EnterpriseAuthenticationClient.d.ts +92 -0
  60. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/EnterpriseAuthenticationClient.js +250 -0
  61. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/MfaAuthenticationClient.d.ts +303 -0
  62. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/MfaAuthenticationClient.js +665 -0
  63. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/QrCodeAuthenticationClient.d.ts +232 -0
  64. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/QrCodeAuthenticationClient.js +619 -0
  65. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/SocialAuthenticationClient.d.ts +100 -0
  66. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/SocialAuthenticationClient.js +179 -0
  67. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/types.d.ts +331 -0
  68. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/types.js +69 -0
  69. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/common/GraphqlClient.d.ts +14 -0
  70. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/common/GraphqlClient.js +125 -0
  71. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/common/HttpClient.d.ts +19 -0
  72. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/common/HttpClient.js +149 -0
  73. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/common/PublicKeyManager.d.ts +18 -0
  74. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/common/PublicKeyManager.js +81 -0
  75. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/graphqlapi.d.ts +110 -0
  76. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/graphqlapi.js +1812 -0
  77. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/AclManagementClient.d.ts +236 -0
  78. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/AclManagementClient.js +863 -0
  79. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/AgreementManagementClient.d.ts +65 -0
  80. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/AgreementManagementClient.js +195 -0
  81. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/ApplicationsManagementClient.d.ts +216 -0
  82. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/ApplicationsManagementClient.js +531 -0
  83. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/GroupsManagementClient.d.ts +184 -0
  84. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/GroupsManagementClient.js +386 -0
  85. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/MFAManagementClient.d.ts +58 -0
  86. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/MFAManagementClient.js +126 -0
  87. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/ManagementClient.d.ts +74 -0
  88. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/ManagementClient.js +190 -0
  89. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/ManagementTokenProvider.d.ts +39 -0
  90. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/ManagementTokenProvider.js +159 -0
  91. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/OrgManagementClient.d.ts +488 -0
  92. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/OrgManagementClient.js +772 -0
  93. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/PoliciesManagementClient.d.ts +304 -0
  94. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/PoliciesManagementClient.js +512 -0
  95. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/RolesManagementClient.d.ts +291 -0
  96. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/RolesManagementClient.js +676 -0
  97. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/StatisticsManagementClient.d.ts +56 -0
  98. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/StatisticsManagementClient.js +198 -0
  99. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/UdfManagementClient.d.ts +146 -0
  100. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/UdfManagementClient.js +264 -0
  101. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/UserActionManagementClient.d.ts +44 -0
  102. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/UserActionManagementClient.js +106 -0
  103. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/UserpoolManagementClient.d.ts +142 -0
  104. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/UserpoolManagementClient.js +241 -0
  105. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/UsersManagementClient.d.ts +753 -0
  106. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/UsersManagementClient.js +1114 -0
  107. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/WhitelistManagementClient.d.ts +114 -0
  108. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/WhitelistManagementClient.js +259 -0
  109. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/types.d.ts +982 -0
  110. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/types.js +96 -0
  111. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/platform/express/index.d.ts +30 -0
  112. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/platform/express/index.js +126 -0
  113. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/testing-helper.d.ts +31 -0
  114. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/testing-helper.js +67 -0
  115. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/utils.d.ts +53 -0
  116. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/utils.js +343 -0
  117. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/version.d.ts +1 -0
  118. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/version.js +5 -0
  119. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/types/graphql.v2.d.ts +5612 -0
  120. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/types/graphql.v2.js +240 -0
  121. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/types/index.d.ts +7 -0
  122. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/types/index.js +3 -0
  123. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/index.d.ts +7 -0
  124. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/index.js +8 -0
  125. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/AuthenticationClient.d.ts +1078 -0
  126. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/AuthenticationClient.js +2795 -0
  127. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/AuthenticationTokenProvider.d.ts +13 -0
  128. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/AuthenticationTokenProvider.js +53 -0
  129. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/BaseAuthenticationClient.d.ts +6 -0
  130. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/BaseAuthenticationClient.js +28 -0
  131. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/EnterpriseAuthenticationClient.d.ts +92 -0
  132. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/EnterpriseAuthenticationClient.js +247 -0
  133. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/MfaAuthenticationClient.d.ts +303 -0
  134. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/MfaAuthenticationClient.js +662 -0
  135. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/QrCodeAuthenticationClient.d.ts +232 -0
  136. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/QrCodeAuthenticationClient.js +616 -0
  137. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/SocialAuthenticationClient.d.ts +100 -0
  138. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/SocialAuthenticationClient.js +176 -0
  139. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/types.d.ts +331 -0
  140. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/types.js +66 -0
  141. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/common/GraphqlClient.d.ts +14 -0
  142. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/common/GraphqlClient.js +119 -0
  143. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/common/HttpClient.d.ts +19 -0
  144. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/common/HttpClient.js +143 -0
  145. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/common/PublicKeyManager.d.ts +18 -0
  146. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/common/PublicKeyManager.js +78 -0
  147. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/graphqlapi.d.ts +110 -0
  148. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/graphqlapi.js +1809 -0
  149. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/AclManagementClient.d.ts +236 -0
  150. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/AclManagementClient.js +860 -0
  151. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/AgreementManagementClient.d.ts +65 -0
  152. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/AgreementManagementClient.js +192 -0
  153. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/ApplicationsManagementClient.d.ts +216 -0
  154. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/ApplicationsManagementClient.js +528 -0
  155. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/GroupsManagementClient.d.ts +184 -0
  156. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/GroupsManagementClient.js +383 -0
  157. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/MFAManagementClient.d.ts +58 -0
  158. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/MFAManagementClient.js +123 -0
  159. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/ManagementClient.d.ts +74 -0
  160. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/ManagementClient.js +184 -0
  161. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/ManagementTokenProvider.d.ts +39 -0
  162. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/ManagementTokenProvider.js +153 -0
  163. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/OrgManagementClient.d.ts +488 -0
  164. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/OrgManagementClient.js +750 -0
  165. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/PoliciesManagementClient.d.ts +304 -0
  166. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/PoliciesManagementClient.js +509 -0
  167. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/RolesManagementClient.d.ts +291 -0
  168. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/RolesManagementClient.js +673 -0
  169. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/StatisticsManagementClient.d.ts +56 -0
  170. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/StatisticsManagementClient.js +195 -0
  171. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/UdfManagementClient.d.ts +146 -0
  172. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/UdfManagementClient.js +261 -0
  173. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/UserActionManagementClient.d.ts +44 -0
  174. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/UserActionManagementClient.js +103 -0
  175. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/UserpoolManagementClient.d.ts +142 -0
  176. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/UserpoolManagementClient.js +238 -0
  177. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/UsersManagementClient.d.ts +753 -0
  178. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/UsersManagementClient.js +1111 -0
  179. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/WhitelistManagementClient.d.ts +114 -0
  180. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/WhitelistManagementClient.js +256 -0
  181. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/types.d.ts +982 -0
  182. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/types.js +93 -0
  183. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/platform/express/index.d.ts +30 -0
  184. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/platform/express/index.js +123 -0
  185. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/testing-helper.d.ts +31 -0
  186. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/testing-helper.js +62 -0
  187. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/utils.d.ts +53 -0
  188. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/utils.js +336 -0
  189. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/version.d.ts +1 -0
  190. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/version.js +2 -0
  191. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/types/graphql.v2.d.ts +5612 -0
  192. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/types/graphql.v2.js +237 -0
  193. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/types/index.d.ts +7 -0
  194. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/types/index.js +1 -0
  195. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/index.d.ts +7 -0
  196. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/index.js +30 -0
  197. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/AuthenticationClient.d.ts +1078 -0
  198. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/AuthenticationClient.js +2811 -0
  199. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/AuthenticationTokenProvider.d.ts +13 -0
  200. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/AuthenticationTokenProvider.js +66 -0
  201. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/BaseAuthenticationClient.d.ts +6 -0
  202. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/BaseAuthenticationClient.js +41 -0
  203. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/EnterpriseAuthenticationClient.d.ts +92 -0
  204. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/EnterpriseAuthenticationClient.js +260 -0
  205. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/MfaAuthenticationClient.d.ts +303 -0
  206. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/MfaAuthenticationClient.js +675 -0
  207. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/QrCodeAuthenticationClient.d.ts +232 -0
  208. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/QrCodeAuthenticationClient.js +629 -0
  209. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/SocialAuthenticationClient.d.ts +100 -0
  210. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/SocialAuthenticationClient.js +189 -0
  211. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/types.d.ts +331 -0
  212. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/types.js +79 -0
  213. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/common/GraphqlClient.d.ts +14 -0
  214. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/common/GraphqlClient.js +135 -0
  215. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/common/HttpClient.d.ts +19 -0
  216. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/common/HttpClient.js +159 -0
  217. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/common/PublicKeyManager.d.ts +18 -0
  218. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/common/PublicKeyManager.js +91 -0
  219. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/graphqlapi.d.ts +110 -0
  220. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/graphqlapi.js +1822 -0
  221. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/AclManagementClient.d.ts +236 -0
  222. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/AclManagementClient.js +873 -0
  223. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/AgreementManagementClient.d.ts +65 -0
  224. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/AgreementManagementClient.js +205 -0
  225. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/ApplicationsManagementClient.d.ts +216 -0
  226. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/ApplicationsManagementClient.js +541 -0
  227. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/GroupsManagementClient.d.ts +184 -0
  228. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/GroupsManagementClient.js +396 -0
  229. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/MFAManagementClient.d.ts +58 -0
  230. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/MFAManagementClient.js +136 -0
  231. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/ManagementClient.d.ts +74 -0
  232. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/ManagementClient.js +200 -0
  233. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/ManagementTokenProvider.d.ts +39 -0
  234. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/ManagementTokenProvider.js +169 -0
  235. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/OrgManagementClient.d.ts +488 -0
  236. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/OrgManagementClient.js +782 -0
  237. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/PoliciesManagementClient.d.ts +304 -0
  238. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/PoliciesManagementClient.js +522 -0
  239. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/RolesManagementClient.d.ts +291 -0
  240. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/RolesManagementClient.js +686 -0
  241. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/StatisticsManagementClient.d.ts +56 -0
  242. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/StatisticsManagementClient.js +208 -0
  243. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/UdfManagementClient.d.ts +146 -0
  244. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/UdfManagementClient.js +274 -0
  245. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/UserActionManagementClient.d.ts +44 -0
  246. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/UserActionManagementClient.js +116 -0
  247. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/UserpoolManagementClient.d.ts +142 -0
  248. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/UserpoolManagementClient.js +251 -0
  249. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/UsersManagementClient.d.ts +753 -0
  250. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/UsersManagementClient.js +1124 -0
  251. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/WhitelistManagementClient.d.ts +114 -0
  252. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/WhitelistManagementClient.js +269 -0
  253. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/types.d.ts +982 -0
  254. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/types.js +106 -0
  255. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/platform/express/index.d.ts +30 -0
  256. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/platform/express/index.js +136 -0
  257. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/testing-helper.d.ts +31 -0
  258. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/testing-helper.js +77 -0
  259. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/utils.d.ts +53 -0
  260. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/utils.js +353 -0
  261. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/version.d.ts +1 -0
  262. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/version.js +15 -0
  263. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/types/graphql.v2.d.ts +5612 -0
  264. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/types/graphql.v2.js +250 -0
  265. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/types/index.d.ts +7 -0
  266. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/types/index.js +13 -0
  267. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build-doc.js +520 -0
  268. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/CHANGELOG.md +413 -0
  269. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/LICENSE +19 -0
  270. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/README.md +709 -0
  271. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/UPGRADE_GUIDE.md +162 -0
  272. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/dist/axios.js +1715 -0
  273. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/dist/axios.map +1 -0
  274. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/dist/axios.min.js +3 -0
  275. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/dist/axios.min.map +1 -0
  276. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/index.d.ts +157 -0
  277. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/index.js +1 -0
  278. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/adapters/README.md +37 -0
  279. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/adapters/http.js +279 -0
  280. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/adapters/xhr.js +180 -0
  281. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/axios.js +53 -0
  282. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/cancel/Cancel.js +19 -0
  283. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/cancel/CancelToken.js +57 -0
  284. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/cancel/isCancel.js +5 -0
  285. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/Axios.js +94 -0
  286. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/InterceptorManager.js +52 -0
  287. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/README.md +7 -0
  288. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/buildFullPath.js +20 -0
  289. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/createError.js +18 -0
  290. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/dispatchRequest.js +79 -0
  291. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/enhanceError.js +42 -0
  292. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/mergeConfig.js +73 -0
  293. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/settle.js +25 -0
  294. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/transformData.js +20 -0
  295. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/defaults.js +97 -0
  296. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/README.md +7 -0
  297. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/bind.js +11 -0
  298. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/buildURL.js +71 -0
  299. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/combineURLs.js +14 -0
  300. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/cookies.js +53 -0
  301. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/deprecatedMethod.js +24 -0
  302. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/isAbsoluteURL.js +14 -0
  303. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/isURLSameOrigin.js +68 -0
  304. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/normalizeHeaderName.js +12 -0
  305. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/parseHeaders.js +53 -0
  306. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/spread.js +27 -0
  307. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/utils.js +344 -0
  308. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/package.json +84 -0
  309. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/follow-redirects/LICENSE +18 -0
  310. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/follow-redirects/README.md +155 -0
  311. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/follow-redirects/http.js +1 -0
  312. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/follow-redirects/https.js +1 -0
  313. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/follow-redirects/index.js +322 -0
  314. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/follow-redirects/package.json +60 -0
  315. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/package.json +129 -0
  316. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/tests/index.html +21 -0
  317. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/tsconfig.brower.json +45 -0
  318. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/tsconfig.node.json +0 -0
  319. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/webpack.config.js +41 -0
  320. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/CHANGELOG.md +685 -0
  321. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/LICENSE +19 -0
  322. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/README.md +800 -0
  323. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/UPGRADE_GUIDE.md +162 -0
  324. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/dist/axios.js +1756 -0
  325. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/dist/axios.map +1 -0
  326. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/dist/axios.min.js +3 -0
  327. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/dist/axios.min.map +1 -0
  328. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/index.d.ts +161 -0
  329. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/index.js +1 -0
  330. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/adapters/README.md +37 -0
  331. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/adapters/http.js +303 -0
  332. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/adapters/xhr.js +179 -0
  333. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/axios.js +56 -0
  334. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/cancel/Cancel.js +19 -0
  335. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/cancel/CancelToken.js +57 -0
  336. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/cancel/isCancel.js +5 -0
  337. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/Axios.js +95 -0
  338. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/InterceptorManager.js +52 -0
  339. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/README.md +7 -0
  340. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/buildFullPath.js +20 -0
  341. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/createError.js +18 -0
  342. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/dispatchRequest.js +79 -0
  343. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/enhanceError.js +42 -0
  344. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/mergeConfig.js +87 -0
  345. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/settle.js +25 -0
  346. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/transformData.js +20 -0
  347. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/defaults.js +98 -0
  348. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/README.md +7 -0
  349. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/bind.js +11 -0
  350. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/buildURL.js +70 -0
  351. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/combineURLs.js +14 -0
  352. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/cookies.js +53 -0
  353. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/deprecatedMethod.js +24 -0
  354. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/isAbsoluteURL.js +14 -0
  355. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/isAxiosError.js +11 -0
  356. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/isURLSameOrigin.js +68 -0
  357. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/normalizeHeaderName.js +12 -0
  358. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/parseHeaders.js +53 -0
  359. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/spread.js +27 -0
  360. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/utils.js +351 -0
  361. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/package.json +86 -0
  362. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/CONTRIBUTING.md +28 -0
  363. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/LICENSE +24 -0
  364. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/README.md +249 -0
  365. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/aes.js +234 -0
  366. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/bower.json +35 -0
  367. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/cipher-core.js +890 -0
  368. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/core.js +797 -0
  369. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/crypto-js.js +6059 -0
  370. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/docs/QuickStartGuide.wiki +470 -0
  371. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/enc-base64.js +136 -0
  372. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/enc-hex.js +18 -0
  373. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/enc-latin1.js +18 -0
  374. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/enc-utf16.js +149 -0
  375. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/enc-utf8.js +18 -0
  376. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/evpkdf.js +134 -0
  377. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/format-hex.js +66 -0
  378. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/format-openssl.js +18 -0
  379. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/hmac-md5.js +18 -0
  380. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/hmac-ripemd160.js +18 -0
  381. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/hmac-sha1.js +18 -0
  382. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/hmac-sha224.js +18 -0
  383. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/hmac-sha256.js +18 -0
  384. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/hmac-sha3.js +18 -0
  385. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/hmac-sha384.js +18 -0
  386. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/hmac-sha512.js +18 -0
  387. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/hmac.js +143 -0
  388. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/index.js +18 -0
  389. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/lib-typedarrays.js +76 -0
  390. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/md5.js +268 -0
  391. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/mode-cfb.js +80 -0
  392. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/mode-ctr-gladman.js +116 -0
  393. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/mode-ctr.js +58 -0
  394. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/mode-ecb.js +40 -0
  395. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/mode-ofb.js +54 -0
  396. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/package.json +38 -0
  397. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/pad-ansix923.js +49 -0
  398. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/pad-iso10126.js +44 -0
  399. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/pad-iso97971.js +40 -0
  400. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/pad-nopadding.js +30 -0
  401. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/pad-pkcs7.js +18 -0
  402. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/pad-zeropadding.js +47 -0
  403. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/pbkdf2.js +145 -0
  404. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/rabbit-legacy.js +190 -0
  405. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/rabbit.js +192 -0
  406. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/rc4.js +139 -0
  407. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/ripemd160.js +267 -0
  408. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/sha1.js +150 -0
  409. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/sha224.js +80 -0
  410. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/sha256.js +199 -0
  411. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/sha3.js +326 -0
  412. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/sha384.js +83 -0
  413. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/sha512.js +326 -0
  414. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/tripledes.js +779 -0
  415. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/x64-core.js +304 -0
  416. data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/CHANGELOG.md +395 -0
  417. data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/LICENSE +19 -0
  418. data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/Makefile +58 -0
  419. data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/README.md +368 -0
  420. data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/karma.conf.js +70 -0
  421. data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/node.js +1 -0
  422. data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/package.json +43 -0
  423. data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/src/browser.js +195 -0
  424. data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/src/debug.js +225 -0
  425. data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/src/index.js +10 -0
  426. data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/src/node.js +186 -0
  427. data/lib/authing_ruby/test/js_sdk_test/node_modules/follow-redirects/LICENSE +18 -0
  428. data/lib/authing_ruby/test/js_sdk_test/node_modules/follow-redirects/README.md +148 -0
  429. data/lib/authing_ruby/test/js_sdk_test/node_modules/follow-redirects/debug.js +14 -0
  430. data/lib/authing_ruby/test/js_sdk_test/node_modules/follow-redirects/http.js +1 -0
  431. data/lib/authing_ruby/test/js_sdk_test/node_modules/follow-redirects/https.js +1 -0
  432. data/lib/authing_ruby/test/js_sdk_test/node_modules/follow-redirects/index.js +535 -0
  433. data/lib/authing_ruby/test/js_sdk_test/node_modules/follow-redirects/package.json +59 -0
  434. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/LICENSE.txt +107 -0
  435. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/README.md +192 -0
  436. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/bin/jsencrypt.js +249 -0
  437. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/bin/jsencrypt.min.js +2 -0
  438. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/bin/jsencrypt.min.js.LICENSE.txt +8 -0
  439. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/JSEncrypt.d.ts +116 -0
  440. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/JSEncrypt.js +186 -0
  441. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/JSEncryptRSAKey.d.ts +142 -0
  442. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/JSEncryptRSAKey.js +315 -0
  443. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/index.d.ts +3 -0
  444. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/index.js +3 -0
  445. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/asn1.d.ts +51 -0
  446. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/asn1.js +565 -0
  447. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/base64.d.ts +5 -0
  448. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/base64.js +88 -0
  449. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/hex.d.ts +3 -0
  450. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/hex.js +64 -0
  451. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/int10.d.ts +9 -0
  452. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/int10.js +87 -0
  453. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/oids.d.ts +9778 -0
  454. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/oids.js +1962 -0
  455. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/base64.d.ts +3 -0
  456. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/base64.js +76 -0
  457. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/jsbn.d.ts +98 -0
  458. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/jsbn.js +1754 -0
  459. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/prng4.d.ts +10 -0
  460. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/prng4.js +46 -0
  461. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/rng.d.ts +3 -0
  462. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/rng.js +76 -0
  463. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/rsa.d.ts +23 -0
  464. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/rsa.js +373 -0
  465. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/util.d.ts +7 -0
  466. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/util.js +58 -0
  467. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsrsasign/asn1-1.0.js +1593 -0
  468. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsrsasign/yahoo.js +69 -0
  469. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/version.json +1 -0
  470. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/package.json +49 -0
  471. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/Gruntfile.js +78 -0
  472. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/LICENSE +21 -0
  473. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/README.md +55 -0
  474. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/bower.json +20 -0
  475. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/build/jwt-decode.js +125 -0
  476. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/build/jwt-decode.min.js +1 -0
  477. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/jwt-decode.html +2 -0
  478. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/lib/atob.js +38 -0
  479. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/lib/base64_url_decode.js +33 -0
  480. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/lib/index.js +26 -0
  481. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/package.json +37 -0
  482. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/standalone.js +16 -0
  483. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/test/tests.js +53 -0
  484. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/test_harness.html +29 -0
  485. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/testem.yml +46 -0
  486. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/testem_dev.yml +1 -0
  487. data/lib/authing_ruby/test/js_sdk_test/node_modules/ms/index.js +152 -0
  488. data/lib/authing_ruby/test/js_sdk_test/node_modules/ms/license.md +21 -0
  489. data/lib/authing_ruby/test/js_sdk_test/node_modules/ms/package.json +37 -0
  490. data/lib/authing_ruby/test/js_sdk_test/node_modules/ms/readme.md +51 -0
  491. data/lib/authing_ruby/test/js_sdk_test/package-lock.json +177 -0
  492. data/lib/authing_ruby/test/js_sdk_test/package.json +15 -0
  493. data/lib/authing_ruby/test/mini_test/TestApplicationsManagementClient.rb +85 -0
  494. data/lib/authing_ruby/test/mini_test/TestAuthenticationClient.rb +232 -0
  495. data/lib/authing_ruby/test/mini_test/TestAuthenticationClientProtocal.rb +238 -0
  496. data/lib/authing_ruby/test/mini_test/TestHttpClient.rb +53 -0
  497. data/lib/authing_ruby/test/mini_test/TestManagementClient.rb +193 -0
  498. data/lib/authing_ruby/test/mini_test/TestManagementTokenProvider.rb +49 -0
  499. data/lib/authing_ruby/test/mini_test/TestNaiveHttpClient.rb +33 -0
  500. data/lib/authing_ruby/test/mini_test/TestSMSandEmail.rb +101 -0
  501. data/lib/authing_ruby/test/mini_test/TestUtils.rb +35 -0
  502. data/lib/authing_ruby/utils/utils.rb +40 -0
  503. data/lib/authing_ruby/version.rb +6 -0
  504. data/lib/authing_ruby.rb +14 -0
  505. metadata +694 -0
@@ -0,0 +1,1124 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ var __generator = (this && this.__generator) || function (thisArg, body) {
11
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
12
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13
+ function verb(n) { return function (v) { return step([n, v]); }; }
14
+ function step(op) {
15
+ if (f) throw new TypeError("Generator is already executing.");
16
+ while (_) try {
17
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
18
+ if (y = 0, t) op = [op[0] & 2, t.value];
19
+ switch (op[0]) {
20
+ case 0: case 1: t = op; break;
21
+ case 4: _.label++; return { value: op[1], done: false };
22
+ case 5: _.label++; y = op[1]; op = [0]; continue;
23
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
24
+ default:
25
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29
+ if (t[2]) _.ops.pop();
30
+ _.trys.pop(); continue;
31
+ }
32
+ op = body.call(thisArg, _);
33
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
+ }
36
+ };
37
+ (function (factory) {
38
+ if (typeof module === "object" && typeof module.exports === "object") {
39
+ var v = factory(require, exports);
40
+ if (v !== undefined) module.exports = v;
41
+ }
42
+ else if (typeof define === "function" && define.amd) {
43
+ define(["require", "exports", "../utils", "../graphqlapi", "../../types/graphql.v2", "../utils"], factory);
44
+ }
45
+ })(function (require, exports) {
46
+ "use strict";
47
+ Object.defineProperty(exports, "__esModule", { value: true });
48
+ exports.UsersManagementClient = void 0;
49
+ var utils_1 = require("../utils");
50
+ var graphqlapi_1 = require("../graphqlapi");
51
+ var graphql_v2_1 = require("../../types/graphql.v2");
52
+ var utils_2 = require("../utils");
53
+ /**
54
+ * @name UsersManagementClient
55
+ * @description Authing 用户管理模块。
56
+ *
57
+ * 此模块可以进行用户目录增删改查、搜索用户、刷新用户 token、管理用户分组、管理用户角色、管理用户策略授权等操作。
58
+ *
59
+ * 该模块发出的所有操作都将以管理员身份进行,所以不需要进行建议短信验证码等操作,如果你希望以普通用户的身份进行操作,请使用 AuthenticationClient 。
60
+ *
61
+ * @example
62
+ *
63
+ * 请使用以下方式使用该模块:
64
+ * \`\`\`javascript
65
+ * import { ManagementClient } from "authing-js-sdk"
66
+ * const managementClient = new ManagementClient({
67
+ * userPoolId: "YOUR_USERPOOL_ID",
68
+ * secret: "YOUR_USERPOOL_SECRET",
69
+ * })
70
+ *
71
+ * managementClient.users.list // 获取用户列表
72
+ * managementClient.users.create // 创建用户
73
+ * managementClient.users.listRoles // 获取用户角色列表
74
+ * managementClient.users.search // 搜索用户
75
+ * \`\`\`
76
+ *
77
+ * @class UsersManagementClient 管理用户
78
+ */
79
+ var UsersManagementClient = /** @class */ (function () {
80
+ function UsersManagementClient(options, graphqlClient, httpClient, tokenProvider, publickKeyManager) {
81
+ this.options = options;
82
+ this.graphqlClient = graphqlClient;
83
+ this.tokenProvider = tokenProvider;
84
+ this.httpClient = httpClient;
85
+ this.publickKeyManager = publickKeyManager;
86
+ }
87
+ /**
88
+ * @name create
89
+ * @name_zh 创建用户
90
+ * @description 此接口将以管理员身份创建用户,不需要进行手机号验证码检验等安全检测。
91
+ *
92
+ * @param {CreateUserInput} userInfo 用户资料
93
+ * @param {string} userInfo.email 邮箱,用户池内唯一
94
+ * @param {boolean} userInfo.emailVerified 邮箱是否已验证
95
+ * @param {string} userInfo.phone 手机号
96
+ * @param {boolean} userInfo.phoneVerified 手机号是否验证
97
+ * @param {string} userInfo.unionid 以社会化登录的用户该字段为用户在第三方社会化登录服务商中的唯一 ID
98
+ * @param {string} userInfo.openid 微信登录返回的 openid
99
+ * @param {string} userInfo.password 密码
100
+ * @param {string} userInfo.registerSource 注册来源,可以多选
101
+ * @param {string} userInfo.username 用户名
102
+ * @param {string} userInfo.nickname 昵称
103
+ * @param {string} userInfo.photo 头像
104
+ * @param {string} userInfo.company 公司
105
+ * @param {string} userInfo.browser 浏览器
106
+ * @param {number} userInfo.loginsCount 登录次数,当你从原有用户系统迁移到 Authing 时可以设置该字段。
107
+ * @param {string} userInfo.lastLogin 上次登录时间, 符合 ISO8601 格式的时间字符串。(如 "2017-06-07T14:34:08.700Z", "2017-06-07T14:34:08.700 or "2017-06-07T14:34:08+04:00")
108
+ * @param {string} userInfo.lastIP 用户最近一次登录(或其他活动)的 IP
109
+ * @param {string} userInfo.signedUp 注册时间,符合 ISO8601 格式的时间字符串。(如 "2017-06-07T14:34:08.700Z", "2017-06-07T14:34:08.700 or "2017-06-07T14:34:08+04:00")
110
+ * @param {boolean} userInfo.blocked 账号是否被禁用
111
+ * @param {boolean} userInfo.isDeleted 标记账号是否被删除
112
+ * @param {string} userInfo.device 设备
113
+ * @param {string} userInfo.lastIP 最近登录的 IP
114
+ * @param {string} userInfo.name Name
115
+ * @param {string} userInfo.givenName Given Name
116
+ * @param {string} userInfo.familyName Family Name
117
+ * @param {string} userInfo.middleName Middle Name
118
+ * @param {string} userInfo.profile Profile Url
119
+ * @param {string} userInfo.preferredUsername Preferred Name
120
+ * @param {string} userInfo.website 个人网站
121
+ * @param {string} userInfo.gender 性别, F 表示男性、W 表示女性、未知表示 U
122
+ * @param {string} userInfo.birthdate 生日
123
+ * @param {string} userInfo.zoneinfo 时区
124
+ * @param {string} userInfo.locale 语言
125
+ * @param {string} userInfo.address 地址
126
+ * @param {string} userInfo.streetAddress 街道地址
127
+ * @param {string} userInfo.locality
128
+ * @param {string} userInfo.region 地域
129
+ * @param {string} userInfo.postalCode 邮编
130
+ * @param {string} userInfo.city 城市
131
+ * @param {string} userInfo.province 省份
132
+ * @param {string} userInfo.country 国家
133
+ *
134
+ * @example
135
+ *
136
+ * const user = await managementClient.users.create({
137
+ * username: 'bob',
138
+ * password: 'passw0rd'
139
+ * })
140
+ *
141
+ * @example
142
+ *
143
+ * const user = await managementClient.users.create({
144
+ * nickname: 'Nick',
145
+ * phone: '176xxxx7041', // 由于是管理员操作,所以检验手机号验证码, 如果你需要检验,请使用 AuthenticationClient
146
+ * loginsCount: 2 // 原有用户系统记录的用户登录次数
147
+ * signedUp: '2020-10-15T17:55:37+08:00' // 原有用户系统记录的用户注册时间
148
+ * })
149
+ *
150
+ * @returns {Promise<User>}
151
+ * @memberof UsersManagementClient
152
+ */
153
+ UsersManagementClient.prototype.create = function (userInfo, options) {
154
+ return __awaiter(this, void 0, void 0, function () {
155
+ var _a, keepPassword, _b, _c, _d, _e, user;
156
+ return __generator(this, function (_f) {
157
+ switch (_f.label) {
158
+ case 0:
159
+ _a = (options || {}).keepPassword, keepPassword = _a === void 0 ? false : _a;
160
+ if (!(userInfo === null || userInfo === void 0 ? void 0 : userInfo.password)) return [3 /*break*/, 3];
161
+ _b = userInfo;
162
+ _d = (_c = this.options).encryptFunction;
163
+ _e = [userInfo.password];
164
+ return [4 /*yield*/, this.publickKeyManager.getPublicKey()];
165
+ case 1: return [4 /*yield*/, _d.apply(_c, _e.concat([_f.sent()]))];
166
+ case 2:
167
+ _b.password = _f.sent();
168
+ _f.label = 3;
169
+ case 3: return [4 /*yield*/, graphqlapi_1.createUser(this.graphqlClient, this.tokenProvider, {
170
+ userInfo: userInfo,
171
+ keepPassword: keepPassword
172
+ })];
173
+ case 4:
174
+ user = (_f.sent()).createUser;
175
+ return [2 /*return*/, user];
176
+ }
177
+ });
178
+ });
179
+ };
180
+ /**
181
+ * @name update
182
+ * @name_zh 修改用户资料
183
+ * @description 修改用户资料
184
+ *
185
+ * @param {string} id 用户 ID
186
+ * @param {UpdateUserInput} updates 修改的用户资料
187
+ * @param {string} updates.email 邮箱
188
+ * @param {boolean} updates.emailVerified 邮箱是否已验证
189
+ * @param {string} updates.phone 手机号
190
+ * @param {boolean} updates.phoneVerified 手机号是否验证
191
+ * @param {string} updates.unionid 以社会化登录的用户该字段为用户在第三方社会化登录服务商中的唯一 ID
192
+ * @param {string} updates.openid 微信登录返回的 openid
193
+ * @param {string} updates.password 密码
194
+ * @param {string} updates.registerSource 注册来源,可以多选
195
+ * @param {string} updates.tokenExpiredAt token 过期时间,符合 ISO8601 格式的时间字符串。(如 "2017-06-07T14:34:08.700Z", "2017-06-07T14:34:08.700 or "2017-06-07T14:34:08+04:00")。
196
+ * 将该字段设置为小于当前时间可以让用户的 token 失效。
197
+ * @param {string} updates.username 用户名
198
+ * @param {string} updates.nickname 昵称
199
+ * @param {string} updates.photo 头像
200
+ * @param {string} updates.company 公司
201
+ * @param {string} updates.browser 浏览器
202
+ * @param {number} updates.loginsCount 登录次数,当你从原有用户系统迁移到 Authing 时可以设置该字段。
203
+ * @param {string} updates.lastLogin 上次登录时间, 符合 ISO8601 格式的时间字符串。(如 "2017-06-07T14:34:08.700Z", "2017-06-07T14:34:08.700 or "2017-06-07T14:34:08+04:00")
204
+ * @param {string} updates.lastIP 用户最近一次登录(或其他活动)的 IP
205
+ * @param {string} updates.signedUp 注册时间,符合 ISO8601 格式的时间字符串。(如 "2017-06-07T14:34:08.700Z", "2017-06-07T14:34:08.700 or "2017-06-07T14:34:08+04:00")
206
+ * @param {boolean} updates.blocked 账号是否被禁用
207
+ * @param {string} updates.device 设备
208
+ * @param {string} updates.lastIP 最近登录的 IP
209
+ * @param {string} updates.name Name
210
+ * @param {string} updates.givenName Given Name
211
+ * @param {string} updates.familyName Family Name
212
+ * @param {string} updates.middleName Middle Name
213
+ * @param {string} updates.profile Profile Url
214
+ * @param {string} updates.preferredUsername Preferred Name
215
+ * @param {string} updates.website 个人网站
216
+ * @param {string} updates.gender 性别, F 表示男性、W 表示女性、未知表示 U
217
+ * @param {string} updates.birthdate 生日
218
+ * @param {string} updates.zoneinfo 时区
219
+ * @param {string} updates.locale 语言
220
+ * @param {string} updates.address 地址
221
+ * @param {string} updates.streetAddress 街道地址
222
+ * @param {string} updates.locality
223
+ * @param {string} updates.region 地域
224
+ * @param {string} updates.postalCode 邮编
225
+ * @param {string} updates.city 城市
226
+ * @param {string} updates.province 省份
227
+ * @param {string} updates.country 国家
228
+ *
229
+ * @example
230
+ *
231
+ * const user = await managementClient.users.update("USERID", {
232
+ * nickname: "Nick"
233
+ * })
234
+ *
235
+ * @example
236
+ *
237
+ * const user = await managementClient.users.update("USERID" ,{
238
+ * nickname: 'Nick',
239
+ * phone: '176xxxx7041', // 由于是管理员操作,所以检验手机号验证码, 如果你需要检验,请使用 AuthenticationClient
240
+ * tokenExpiredAt: '2020-10-15T17:55:37+08:00'
241
+ * })
242
+ *
243
+ * @returns {Promise<User>}
244
+ * @memberof UsersManagementClient *
245
+ */
246
+ UsersManagementClient.prototype.update = function (id, updates) {
247
+ return __awaiter(this, void 0, void 0, function () {
248
+ var _a, _b, _c, _d, user;
249
+ return __generator(this, function (_e) {
250
+ switch (_e.label) {
251
+ case 0:
252
+ if (!(updates && updates.password)) return [3 /*break*/, 3];
253
+ _a = updates;
254
+ _c = (_b = this.options).encryptFunction;
255
+ _d = [updates.password];
256
+ return [4 /*yield*/, this.publickKeyManager.getPublicKey()];
257
+ case 1: return [4 /*yield*/, _c.apply(_b, _d.concat([_e.sent()]))];
258
+ case 2:
259
+ _a.password = _e.sent();
260
+ _e.label = 3;
261
+ case 3: return [4 /*yield*/, graphqlapi_1.updateUser(this.graphqlClient, this.tokenProvider, {
262
+ id: id,
263
+ input: updates
264
+ })];
265
+ case 4:
266
+ user = (_e.sent()).updateUser;
267
+ return [2 /*return*/, user];
268
+ }
269
+ });
270
+ });
271
+ };
272
+ /**
273
+ * @name detail
274
+ * @name_zh 获取用户详情
275
+ * @description 通过用户 ID 获取用户详情,如果你想通过 token 获取用户详情,请使用 AuthenticationClient SDK 。
276
+ *
277
+ * @param {string} userId 用户 ID
278
+ *
279
+ * @example
280
+ *
281
+ * const user = await managementClient.users.detail('USERID');
282
+ *
283
+ * @returns {Promise<User>}
284
+ * @memberof UsersManagementClient
285
+ */
286
+ UsersManagementClient.prototype.detail = function (userId) {
287
+ return __awaiter(this, void 0, void 0, function () {
288
+ var data;
289
+ return __generator(this, function (_a) {
290
+ switch (_a.label) {
291
+ case 0: return [4 /*yield*/, graphqlapi_1.user(this.graphqlClient, this.tokenProvider, {
292
+ id: userId
293
+ })];
294
+ case 1:
295
+ data = (_a.sent()).user;
296
+ return [2 /*return*/, data];
297
+ }
298
+ });
299
+ });
300
+ };
301
+ /**
302
+ * @name delete
303
+ * @name_zh 删除用户
304
+ * @description 删除用户
305
+ *
306
+ * @param {string} userId 用户 ID
307
+ *
308
+ * @example
309
+ *
310
+ * const user = await managementClient.users.delete('USERID');
311
+ *
312
+ * @returns {Promise<CommonMessage>}
313
+ * @memberof UsersManagementClient
314
+ */
315
+ UsersManagementClient.prototype.delete = function (userId) {
316
+ return __awaiter(this, void 0, void 0, function () {
317
+ var data;
318
+ return __generator(this, function (_a) {
319
+ switch (_a.label) {
320
+ case 0: return [4 /*yield*/, graphqlapi_1.deleteUser(this.graphqlClient, this.tokenProvider, {
321
+ id: userId
322
+ })];
323
+ case 1:
324
+ data = (_a.sent()).deleteUser;
325
+ return [2 /*return*/, data];
326
+ }
327
+ });
328
+ });
329
+ };
330
+ /**
331
+ * @name deleteMany
332
+ * @name_zh 批量删除用户
333
+ * @description 批量删除用户
334
+ *
335
+ * @param {string[]} userIds 用户 ID 列表
336
+ *
337
+ * @example
338
+ *
339
+ * const user = await managementClient.users.deleteMany(['USERID']);
340
+ *
341
+ * @returns {Promise<CommonMessage>}
342
+ * @memberof UsersManagementClient
343
+ */
344
+ UsersManagementClient.prototype.deleteMany = function (userIds) {
345
+ return __awaiter(this, void 0, void 0, function () {
346
+ var data;
347
+ return __generator(this, function (_a) {
348
+ switch (_a.label) {
349
+ case 0: return [4 /*yield*/, graphqlapi_1.deleteUsers(this.graphqlClient, this.tokenProvider, {
350
+ ids: userIds
351
+ })];
352
+ case 1:
353
+ data = (_a.sent()).deleteUsers;
354
+ return [2 /*return*/, data];
355
+ }
356
+ });
357
+ });
358
+ };
359
+ /**
360
+ * @name batch
361
+ * @name_zh 批量获取用户
362
+ * @description 通过 ID、username、email、phone、email、externalId 批量获取用户详情
363
+ *
364
+ * @param {string[]} identifiers 需要查询的数据列表,如 用户 ID 列表
365
+ * @param {string} [type] 列表类型,可选值为 'id' ,'username' ,'phone' ,'email', 'externalId',默认为 'id'
366
+ *
367
+ * @example
368
+ *
369
+ * const users = await managementClient.users.batch(['USERID'], options);
370
+ *
371
+ * @returns {Promise<CommonMessage>}
372
+ * @memberof UsersManagementClient
373
+ */
374
+ UsersManagementClient.prototype.batch = function (ids, options) {
375
+ return __awaiter(this, void 0, void 0, function () {
376
+ var _a, queryField, users;
377
+ return __generator(this, function (_b) {
378
+ switch (_b.label) {
379
+ case 0:
380
+ _a = (options || {}).queryField, queryField = _a === void 0 ? 'id' : _a;
381
+ return [4 /*yield*/, this.httpClient.request({
382
+ url: this.options.host + "/api/v2/users/batch",
383
+ method: 'POST',
384
+ data: {
385
+ ids: ids,
386
+ type: queryField
387
+ }
388
+ })];
389
+ case 1:
390
+ users = _b.sent();
391
+ return [2 /*return*/, users];
392
+ }
393
+ });
394
+ });
395
+ };
396
+ /**
397
+ * @name list
398
+ * @name_zh 获取用户列表
399
+ * @description 获取用户池用户列表
400
+ *
401
+ * @param {number} [page=1] 页码数, 从 1 开始
402
+ * @param {number} [limit=10] 每页包含的用户数
403
+ *
404
+ * @example
405
+ *
406
+ * const user = await managementClient.users.list();
407
+ *
408
+ * @returns
409
+ * @memberof UsersManagementClient
410
+ */
411
+ UsersManagementClient.prototype.list = function (page, limit) {
412
+ if (page === void 0) { page = 1; }
413
+ if (limit === void 0) { limit = 10; }
414
+ return __awaiter(this, void 0, void 0, function () {
415
+ var data;
416
+ return __generator(this, function (_a) {
417
+ switch (_a.label) {
418
+ case 0: return [4 /*yield*/, graphqlapi_1.users(this.graphqlClient, this.tokenProvider, {
419
+ page: page,
420
+ limit: limit
421
+ })];
422
+ case 1:
423
+ data = (_a.sent()).users;
424
+ return [2 /*return*/, data];
425
+ }
426
+ });
427
+ });
428
+ };
429
+ /**
430
+ * @name listArchivedUsers
431
+ * @name_zh 获取已归档用户列表
432
+ * @description 获取已归档用户列表
433
+ *
434
+ * @param {number} [page=1] 页码数, 从 1 开始
435
+ * @param {number} [limit=10] 每页包含的用户数
436
+ *
437
+ * @example
438
+ *
439
+ * const user = await managementClient.users.listArchivedUsers();
440
+ *
441
+ * @returns
442
+ * @memberof UsersManagementClient
443
+ */
444
+ UsersManagementClient.prototype.listArchivedUsers = function (page, limit) {
445
+ if (page === void 0) { page = 1; }
446
+ if (limit === void 0) { limit = 10; }
447
+ return __awaiter(this, void 0, void 0, function () {
448
+ var data;
449
+ return __generator(this, function (_a) {
450
+ switch (_a.label) {
451
+ case 0: return [4 /*yield*/, graphqlapi_1.archivedUsers(this.graphqlClient, this.tokenProvider, {
452
+ page: page,
453
+ limit: limit
454
+ })];
455
+ case 1:
456
+ data = (_a.sent()).archivedUsers;
457
+ return [2 /*return*/, data];
458
+ }
459
+ });
460
+ });
461
+ };
462
+ /**
463
+ * @name exists
464
+ * @name_zh 检查用户是否存在
465
+ * @description 检查用户是否存在,目前可检测的字段有用户名、邮箱、手机号。
466
+ *
467
+ *
468
+ * @param {Object} options
469
+ * @param {string} [options.username] 用户名,区分大小写。
470
+ * @param {string} [options.email] 邮箱,邮箱不区分大小写。
471
+ * @param {string} [options.phone] 手机号
472
+ *
473
+ * @example
474
+ *
475
+ * const exists = await managementClient.users.exists({
476
+ * username: "bob"
477
+ * });
478
+ *
479
+ * @returns {Promise<boolean>}
480
+ * @memberof UsersManagementClient
481
+ */
482
+ UsersManagementClient.prototype.exists = function (options) {
483
+ return __awaiter(this, void 0, void 0, function () {
484
+ var username, email, phone, externalId, data;
485
+ return __generator(this, function (_a) {
486
+ switch (_a.label) {
487
+ case 0:
488
+ username = options.username, email = options.email, phone = options.phone, externalId = options.externalId;
489
+ return [4 /*yield*/, graphqlapi_1.isUserExists(this.graphqlClient, this.tokenProvider, {
490
+ username: username,
491
+ email: email,
492
+ phone: phone,
493
+ externalId: externalId
494
+ })];
495
+ case 1:
496
+ data = (_a.sent()).isUserExists;
497
+ return [2 /*return*/, data];
498
+ }
499
+ });
500
+ });
501
+ };
502
+ /**
503
+ * @name find
504
+ * @name_zh 查找用户
505
+ * @description 通过用户名、邮箱、手机号查找用户
506
+ *
507
+ * @param {Object} options
508
+ * @param {string} [options.username] 用户名,区分大小写。
509
+ * @param {string} [options.email] 邮箱,邮箱不区分大小写。
510
+ * @param {string} [options.phone] 手机号
511
+ * @param {string} [options.externalId] externalId
512
+ *
513
+ * @memberof UsersManagementClient
514
+ */
515
+ UsersManagementClient.prototype.find = function (options) {
516
+ return __awaiter(this, void 0, void 0, function () {
517
+ var username, email, phone, externalId, user;
518
+ return __generator(this, function (_a) {
519
+ switch (_a.label) {
520
+ case 0:
521
+ username = options.username, email = options.email, phone = options.phone, externalId = options.externalId;
522
+ return [4 /*yield*/, graphqlapi_1.findUser(this.graphqlClient, this.tokenProvider, {
523
+ username: username,
524
+ email: email,
525
+ phone: phone,
526
+ externalId: externalId
527
+ })];
528
+ case 1:
529
+ user = (_a.sent()).findUser;
530
+ return [2 /*return*/, user];
531
+ }
532
+ });
533
+ });
534
+ };
535
+ /**
536
+ * @name search
537
+ * @name_zh 搜索用户
538
+ * @description 根据关键字搜索用户
539
+ *
540
+ * @param query 搜索内容
541
+ * @param options 选项
542
+ * @param {string[]} [options.fields] 搜索用户字段,如果不指定,默认会从 username、nickname、email、phone、company、name、givenName、familyName、middleName、profile、preferredUsername 这些字段进行模糊搜索。
543
+ * 如果你需要精确查找,请使用 find 方法。
544
+ * @param {number} [options.page=1]
545
+ * @param {number} [options.limit=10]
546
+ * @param {Object} [options.departmentOpts] 限制条件,用户所在的部门
547
+ * @param {string} [options.departmentOpts.departmentId] 部门 ID
548
+ * @param {string} [options.departmentOpts.includeChildrenDepartments] 是否包含此部门的子部门
549
+ *
550
+ * @example
551
+ *
552
+ * const { totalCount, list } = await managementClient.users.search("Bob");
553
+ *
554
+ * @returns {Promise<PaginatedUsers>}
555
+ * @memberof UsersManagementClient
556
+ */
557
+ UsersManagementClient.prototype.search = function (query, options) {
558
+ return __awaiter(this, void 0, void 0, function () {
559
+ var fields, _a, page, _b, limit, departmentOpts, groupOpts, roleOpts, data;
560
+ return __generator(this, function (_c) {
561
+ switch (_c.label) {
562
+ case 0:
563
+ options = options || {};
564
+ fields = options.fields, _a = options.page, page = _a === void 0 ? 1 : _a, _b = options.limit, limit = _b === void 0 ? 10 : _b, departmentOpts = options.departmentOpts, groupOpts = options.groupOpts, roleOpts = options.roleOpts;
565
+ return [4 /*yield*/, graphqlapi_1.searchUser(this.graphqlClient, this.tokenProvider, {
566
+ query: query,
567
+ fields: fields,
568
+ page: page,
569
+ limit: limit,
570
+ departmentOpts: departmentOpts,
571
+ groupOpts: groupOpts,
572
+ roleOpts: roleOpts
573
+ })];
574
+ case 1:
575
+ data = (_c.sent()).searchUser;
576
+ return [2 /*return*/, data];
577
+ }
578
+ });
579
+ });
580
+ };
581
+ /**
582
+ * @name refreshToken
583
+ * @name_zh 刷新用户 token
584
+ * @description 刷新用户 token
585
+ *
586
+ * @param {string} id 用户 ID
587
+ *
588
+ * @example
589
+ *
590
+ * const { token } = await managementClient.users.refreshToken("USERID");
591
+ *
592
+ * // 检测 token 的最新状态,能够获取到该用户对应的 token
593
+ *
594
+ * const data = await managementClient.checkLoginStatus(token, {
595
+ * fetchUserDetail: true
596
+ * });
597
+ *
598
+ * @returns {Promise<RefreshToken>}
599
+ * @memberof UsersManagementClient
600
+ */
601
+ UsersManagementClient.prototype.refreshToken = function (id) {
602
+ return __awaiter(this, void 0, void 0, function () {
603
+ var data;
604
+ return __generator(this, function (_a) {
605
+ switch (_a.label) {
606
+ case 0: return [4 /*yield*/, graphqlapi_1.refreshToken(this.graphqlClient, this.tokenProvider, {
607
+ id: id
608
+ })];
609
+ case 1:
610
+ data = (_a.sent()).refreshToken;
611
+ return [2 /*return*/, data];
612
+ }
613
+ });
614
+ });
615
+ };
616
+ /**
617
+ * @name listGroups
618
+ * @name_zh 获取用户分组列表
619
+ * @description 获取用户的分组列表
620
+ *
621
+ * @param {string} userId 用户 ID
622
+ *
623
+ * @example
624
+ *
625
+ * const { list, totalCount} = await managementClient.users.listGroups("USERID");
626
+ *
627
+ * @returns {Promise<DeepPartial<PaginatedGroups>>}
628
+ * @memberof UsersManagementClient
629
+ */
630
+ UsersManagementClient.prototype.listGroups = function (userId) {
631
+ return __awaiter(this, void 0, void 0, function () {
632
+ var user;
633
+ return __generator(this, function (_a) {
634
+ switch (_a.label) {
635
+ case 0: return [4 /*yield*/, graphqlapi_1.getUserGroups(this.graphqlClient, this.tokenProvider, {
636
+ id: userId
637
+ })];
638
+ case 1:
639
+ user = (_a.sent()).user;
640
+ return [2 /*return*/, user.groups];
641
+ }
642
+ });
643
+ });
644
+ };
645
+ /**
646
+ * @name addGroup
647
+ * @name_zh 加入分组
648
+ * @description 将用户加入分组
649
+ *
650
+ * @param {string} userId 用户 ID
651
+ * @param {string} group 分组 code
652
+ *
653
+ * @example
654
+ *
655
+ * const { code, message } = await managementClient.users.addGroup("USERID", "GROUP_CODE");
656
+ *
657
+ * @returns {Promise<CommonMessage>}
658
+ * @memberof UsersManagementClient
659
+ */
660
+ UsersManagementClient.prototype.addGroup = function (userId, group) {
661
+ return __awaiter(this, void 0, void 0, function () {
662
+ var res;
663
+ return __generator(this, function (_a) {
664
+ switch (_a.label) {
665
+ case 0: return [4 /*yield*/, graphqlapi_1.addUserToGroup(this.graphqlClient, this.tokenProvider, {
666
+ userIds: [userId],
667
+ code: group
668
+ })];
669
+ case 1:
670
+ res = _a.sent();
671
+ return [2 /*return*/, res.addUserToGroup];
672
+ }
673
+ });
674
+ });
675
+ };
676
+ /**
677
+ * @name removeGroup
678
+ * @name_zh 退出分组
679
+ * @description 退出分组
680
+ *
681
+ * @param {string} userId 用户 ID
682
+ * @param {string} group 分组 code
683
+ *
684
+ * @example
685
+ *
686
+ * const { code, message } = await managementClient.users.removeGroup("USERID", "GROUP_CODE");
687
+ *
688
+ * @returns {Promise<CommonMessage>}
689
+ * @memberof UsersManagementClient
690
+ */
691
+ UsersManagementClient.prototype.removeGroup = function (userId, group) {
692
+ return __awaiter(this, void 0, void 0, function () {
693
+ var res;
694
+ return __generator(this, function (_a) {
695
+ switch (_a.label) {
696
+ case 0: return [4 /*yield*/, graphqlapi_1.removeUserFromGroup(this.graphqlClient, this.tokenProvider, {
697
+ code: group,
698
+ userIds: [userId]
699
+ })];
700
+ case 1:
701
+ res = _a.sent();
702
+ return [2 /*return*/, res.removeUserFromGroup];
703
+ }
704
+ });
705
+ });
706
+ };
707
+ /**
708
+ * @name listRoles
709
+ * @name_zh 获取用户角色列表
710
+ * @description 获取用户的角色列表
711
+ *
712
+ * @param {string} userId 用户 ID
713
+ * @param {string} namespace 权限组命名空间
714
+ *
715
+ * @example
716
+ *
717
+ * const { list, totalCount} = await managementClient.users.listRoles("USERID");
718
+ *
719
+ * @returns {Promise<DeepPartial<PaginatedRoles>>}
720
+ * @memberof UsersManagementClient
721
+ */
722
+ UsersManagementClient.prototype.listRoles = function (userId, namespace) {
723
+ return __awaiter(this, void 0, void 0, function () {
724
+ var user;
725
+ return __generator(this, function (_a) {
726
+ switch (_a.label) {
727
+ case 0: return [4 /*yield*/, graphqlapi_1.getUserRoles(this.graphqlClient, this.tokenProvider, {
728
+ id: userId,
729
+ namespace: namespace
730
+ })];
731
+ case 1:
732
+ user = (_a.sent()).user;
733
+ if (!user) {
734
+ throw new Error('用户不存在!');
735
+ }
736
+ return [2 /*return*/, user.roles];
737
+ }
738
+ });
739
+ });
740
+ };
741
+ /**
742
+ * @name addRoles
743
+ * @name_zh 添加角色
744
+ * @description 将用户加入角色
745
+ *
746
+ * @param {string} userId 用户 ID
747
+ * @param {string} roles 角色 code 列表
748
+ * @param {string} namespace 权限组命名空间
749
+ *
750
+ * @example
751
+ *
752
+ * const { code, message } = await managementClient.users.addRoles("USERID", ["ROLEA"]);
753
+ *
754
+ * @returns {Promise<CommonMessage>}
755
+ * @memberof UsersManagementClient
756
+ */
757
+ UsersManagementClient.prototype.addRoles = function (userId, roles, namespace) {
758
+ return __awaiter(this, void 0, void 0, function () {
759
+ var data;
760
+ return __generator(this, function (_a) {
761
+ switch (_a.label) {
762
+ case 0: return [4 /*yield*/, graphqlapi_1.assignRole(this.graphqlClient, this.tokenProvider, {
763
+ roleCodes: roles,
764
+ userIds: [userId],
765
+ namespace: namespace
766
+ })];
767
+ case 1:
768
+ data = (_a.sent()).assignRole;
769
+ return [2 /*return*/, data];
770
+ }
771
+ });
772
+ });
773
+ };
774
+ /**
775
+ * @name removeRoles
776
+ * @name_zh 移除角色
777
+ * @description 将用户从角色中移除
778
+ *
779
+ * @param {string} userId 用户 ID
780
+ * @param {string} roles 角色 code 列表
781
+ * @param {string} namespace 权限分组 code
782
+ *
783
+ * @example
784
+ *
785
+ * const { code, message } = await managementClient.users.removeRoles("USERID", ["ROLEA"]);
786
+ *
787
+ * @returns {Promise<CommonMessage>}
788
+ * @memberof UsersManagementClient
789
+ */
790
+ UsersManagementClient.prototype.removeRoles = function (userId, roles, namespace) {
791
+ return __awaiter(this, void 0, void 0, function () {
792
+ var data;
793
+ return __generator(this, function (_a) {
794
+ switch (_a.label) {
795
+ case 0: return [4 /*yield*/, graphqlapi_1.revokeRole(this.graphqlClient, this.tokenProvider, {
796
+ roleCodes: roles,
797
+ userIds: [userId],
798
+ namespace: namespace
799
+ })];
800
+ case 1:
801
+ data = (_a.sent()).revokeRole;
802
+ return [2 /*return*/, data];
803
+ }
804
+ });
805
+ });
806
+ };
807
+ /**
808
+ * @name listOrg
809
+ * @name_zh 获取用户所在组织机构
810
+ * @description 获取用户所在组织机构,以及他在该组织机构内的的节点路径。
811
+ *
812
+ * @param {string} userId 用户 ID
813
+ *
814
+ * @example
815
+ *
816
+ * const data = await managementClient.users.listOrgs("USERID");
817
+ *
818
+ * @returns {Promise<UserOrgList>}
819
+ *
820
+ * @memberof UsersManagementClient
821
+ */
822
+ UsersManagementClient.prototype.listOrgs = function (userId) {
823
+ return __awaiter(this, void 0, void 0, function () {
824
+ return __generator(this, function (_a) {
825
+ switch (_a.label) {
826
+ case 0: return [4 /*yield*/, this.httpClient.request({
827
+ method: 'GET',
828
+ url: this.options.host + "/api/v2/users/" + userId + "/orgs"
829
+ })];
830
+ case 1: return [2 /*return*/, _a.sent()];
831
+ }
832
+ });
833
+ });
834
+ };
835
+ /**
836
+ * @name listDepartment
837
+ * @name_zh 获取用户所在部门
838
+ * @description 获取用户所在部门列表
839
+ *
840
+ * @param {string} userId 用户 ID
841
+ *
842
+ * @example
843
+ *
844
+ * const data = await managementClient.users.listDepartment("USERID");
845
+ *
846
+ * @returns {Promise<UserDepartmentList>}
847
+ *
848
+ * @memberof UsersManagementClient
849
+ */
850
+ UsersManagementClient.prototype.listDepartment = function (userId) {
851
+ return __awaiter(this, void 0, void 0, function () {
852
+ var departments;
853
+ return __generator(this, function (_a) {
854
+ switch (_a.label) {
855
+ case 0: return [4 /*yield*/, graphqlapi_1.getUserDepartments(this.graphqlClient, this.tokenProvider, {
856
+ id: userId
857
+ })];
858
+ case 1:
859
+ departments = (_a.sent()).user.departments;
860
+ return [2 /*return*/, departments];
861
+ }
862
+ });
863
+ });
864
+ };
865
+ /**
866
+ * @description 获取用户被授权的所有资源
867
+ *
868
+ * @param userId
869
+ * @param namespace
870
+ */
871
+ UsersManagementClient.prototype.listAuthorizedResources = function (userId, namespace, options) {
872
+ return __awaiter(this, void 0, void 0, function () {
873
+ var resourceType, user, _a, list, totalCount;
874
+ return __generator(this, function (_b) {
875
+ switch (_b.label) {
876
+ case 0:
877
+ resourceType = (options || {}).resourceType;
878
+ return [4 /*yield*/, graphqlapi_1.listUserAuthorizedResources(this.graphqlClient, this.tokenProvider, {
879
+ id: userId,
880
+ namespace: namespace,
881
+ resourceType: resourceType
882
+ })];
883
+ case 1:
884
+ user = (_b.sent()).user;
885
+ if (!user) {
886
+ throw new Error('用户不存在');
887
+ }
888
+ _a = user.authorizedResources, list = _a.list, totalCount = _a.totalCount;
889
+ list = utils_2.formatAuthorizedResources(list);
890
+ return [2 /*return*/, {
891
+ list: list,
892
+ totalCount: totalCount
893
+ }];
894
+ }
895
+ });
896
+ });
897
+ };
898
+ /**
899
+ * @description 获取某个用户的所有自定义数据
900
+ * @param userId: 用户 ID
901
+ *
902
+ */
903
+ UsersManagementClient.prototype.getUdfValue = function (userId) {
904
+ return __awaiter(this, void 0, void 0, function () {
905
+ var list;
906
+ return __generator(this, function (_a) {
907
+ switch (_a.label) {
908
+ case 0: return [4 /*yield*/, graphqlapi_1.udv(this.graphqlClient, this.tokenProvider, {
909
+ targetType: graphql_v2_1.UdfTargetType.User,
910
+ targetId: userId
911
+ })];
912
+ case 1:
913
+ list = (_a.sent()).udv;
914
+ return [2 /*return*/, utils_2.convertUdvToKeyValuePair(list)];
915
+ }
916
+ });
917
+ });
918
+ };
919
+ /**
920
+ * @description 批量获取多个用户的自定义数据
921
+ *
922
+ * @param userIds: 用户 ID 列表
923
+ */
924
+ UsersManagementClient.prototype.getUdfValueBatch = function (userIds) {
925
+ return __awaiter(this, void 0, void 0, function () {
926
+ var result, ret, _i, result_1, _a, targetId, data;
927
+ return __generator(this, function (_b) {
928
+ switch (_b.label) {
929
+ case 0:
930
+ if (userIds.length === 0) {
931
+ throw new Error('empty user id list');
932
+ }
933
+ return [4 /*yield*/, graphqlapi_1.udfValueBatch(this.graphqlClient, this.tokenProvider, {
934
+ targetType: graphql_v2_1.UdfTargetType.User,
935
+ targetIds: userIds
936
+ })];
937
+ case 1:
938
+ result = (_b.sent()).udfValueBatch;
939
+ ret = {};
940
+ for (_i = 0, result_1 = result; _i < result_1.length; _i++) {
941
+ _a = result_1[_i], targetId = _a.targetId, data = _a.data;
942
+ ret[targetId] = utils_2.convertUdvToKeyValuePair(data);
943
+ }
944
+ return [2 /*return*/, ret];
945
+ }
946
+ });
947
+ });
948
+ };
949
+ /**
950
+ * @description 设置某个用户的自定义数据
951
+ *
952
+ * @param userId
953
+ * @param data
954
+ */
955
+ UsersManagementClient.prototype.setUdfValue = function (userId, data) {
956
+ return __awaiter(this, void 0, void 0, function () {
957
+ return __generator(this, function (_a) {
958
+ switch (_a.label) {
959
+ case 0:
960
+ if (Object.keys(data).length === 0) {
961
+ throw new Error('empty udf value list');
962
+ }
963
+ return [4 /*yield*/, graphqlapi_1.setUdvBatch(this.graphqlClient, this.tokenProvider, {
964
+ targetType: graphql_v2_1.UdfTargetType.User,
965
+ targetId: userId,
966
+ udvList: Object.keys(data).map(function (key) { return ({
967
+ key: key,
968
+ value: JSON.stringify(data[key])
969
+ }); })
970
+ })];
971
+ case 1:
972
+ _a.sent();
973
+ return [2 /*return*/];
974
+ }
975
+ });
976
+ });
977
+ };
978
+ /**
979
+ * @description 批量设置自定义数据
980
+ *
981
+ */
982
+ UsersManagementClient.prototype.setUdfValueBatch = function (input) {
983
+ return __awaiter(this, void 0, void 0, function () {
984
+ var params;
985
+ return __generator(this, function (_a) {
986
+ switch (_a.label) {
987
+ case 0:
988
+ if (input.length === 0) {
989
+ throw new Error('empty input list');
990
+ }
991
+ params = [];
992
+ input.forEach(function (_a) {
993
+ var userId = _a.userId, data = _a.data;
994
+ for (var _i = 0, _b = Object.keys(data); _i < _b.length; _i++) {
995
+ var key = _b[_i];
996
+ params.push({
997
+ targetId: userId,
998
+ key: key,
999
+ value: JSON.stringify(data[key])
1000
+ });
1001
+ }
1002
+ });
1003
+ return [4 /*yield*/, graphqlapi_1.setUdfValueBatch(this.graphqlClient, this.tokenProvider, {
1004
+ targetType: graphql_v2_1.UdfTargetType.User,
1005
+ input: params
1006
+ })];
1007
+ case 1:
1008
+ _a.sent();
1009
+ return [2 /*return*/];
1010
+ }
1011
+ });
1012
+ });
1013
+ };
1014
+ /**
1015
+ * @description 清除用户的自定义数据
1016
+ *
1017
+ */
1018
+ UsersManagementClient.prototype.removeUdfValue = function (userId, key) {
1019
+ return __awaiter(this, void 0, void 0, function () {
1020
+ return __generator(this, function (_a) {
1021
+ switch (_a.label) {
1022
+ case 0: return [4 /*yield*/, graphqlapi_1.removeUdv(this.graphqlClient, this.tokenProvider, {
1023
+ targetType: graphql_v2_1.UdfTargetType.User,
1024
+ targetId: userId,
1025
+ key: key
1026
+ })];
1027
+ case 1:
1028
+ _a.sent();
1029
+ return [2 /*return*/];
1030
+ }
1031
+ });
1032
+ });
1033
+ };
1034
+ /**
1035
+ * 判断用户是否有某个角色
1036
+ * @param userId 用户 ID
1037
+ * @param roleCode 角色 Code
1038
+ * @param namespace 权限分组 ID
1039
+ */
1040
+ UsersManagementClient.prototype.hasRole = function (userId, roleCode, namespace) {
1041
+ return __awaiter(this, void 0, void 0, function () {
1042
+ var roleList, hasRole;
1043
+ return __generator(this, function (_a) {
1044
+ switch (_a.label) {
1045
+ case 0: return [4 /*yield*/, this.listRoles(userId, namespace)];
1046
+ case 1:
1047
+ roleList = _a.sent();
1048
+ if (roleList.totalCount < 1) {
1049
+ return [2 /*return*/, false];
1050
+ }
1051
+ hasRole = false;
1052
+ roleList.list.forEach(function (item) {
1053
+ if (item.code === roleCode) {
1054
+ hasRole = true;
1055
+ }
1056
+ });
1057
+ return [2 /*return*/, hasRole];
1058
+ }
1059
+ });
1060
+ });
1061
+ };
1062
+ /**
1063
+ * @description 强制一批用户下线
1064
+ */
1065
+ UsersManagementClient.prototype.kick = function (userIds) {
1066
+ return __awaiter(this, void 0, void 0, function () {
1067
+ return __generator(this, function (_a) {
1068
+ switch (_a.label) {
1069
+ case 0: return [4 /*yield*/, this.httpClient.request({
1070
+ url: this.options.host + "/api/v2/users/kick",
1071
+ method: 'POST',
1072
+ data: {
1073
+ userIds: userIds
1074
+ }
1075
+ })];
1076
+ case 1:
1077
+ _a.sent();
1078
+ return [2 /*return*/, { code: 200, message: '强制下线成功' }];
1079
+ }
1080
+ });
1081
+ });
1082
+ };
1083
+ /**
1084
+ * 审计日志列表
1085
+ * @param options.page 当前页数
1086
+ * @param options.limit 每页显示条数
1087
+ * @param options.clientIp 客户端 IP 地址
1088
+ * @param options.operationName 操作类型
1089
+ * @param options.operatoArn 用户 Arn 通过 searchUser 方法获得
1090
+ * @returns Promise<UserActions>
1091
+ */
1092
+ UsersManagementClient.prototype.listUserActions = function (options) {
1093
+ var _a, _b;
1094
+ if (options === void 0) { options = {
1095
+ page: 1,
1096
+ limit: 10
1097
+ }; }
1098
+ return __awaiter(this, void 0, void 0, function () {
1099
+ var result;
1100
+ return __generator(this, function (_c) {
1101
+ switch (_c.label) {
1102
+ case 0: return [4 /*yield*/, this.httpClient.request({
1103
+ method: 'GET',
1104
+ url: this.options.host + "/api/v2/analysis/user-action" +
1105
+ utils_1.objectToQueryString({
1106
+ page: (_a = options.page) === null || _a === void 0 ? void 0 : _a.toString(),
1107
+ limit: (_b = options.limit) === null || _b === void 0 ? void 0 : _b.toString(),
1108
+ clientip: options.clientIp,
1109
+ operation_name: options.operationName,
1110
+ operator_arn: options.operatoArn
1111
+ })
1112
+ })];
1113
+ case 1:
1114
+ result = _c.sent();
1115
+ return [2 /*return*/, result];
1116
+ }
1117
+ });
1118
+ });
1119
+ };
1120
+ return UsersManagementClient;
1121
+ }());
1122
+ exports.UsersManagementClient = UsersManagementClient;
1123
+ });
1124
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVXNlcnNNYW5hZ2VtZW50Q2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9tYW5hZ2VtZW50L1VzZXJzTWFuYWdlbWVudENsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFHQSxrQ0FBK0M7SUFDL0MsNENBeUJ1QjtJQUN2QixxREFjZ0M7SUFJaEMsa0NBQStFO0lBRS9FOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BeUJHO0lBQ0g7UUFPRSwrQkFDRSxPQUFnQyxFQUNoQyxhQUE0QixFQUM1QixVQUFzQixFQUN0QixhQUFzQyxFQUN0QyxpQkFBbUM7WUFFbkMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7WUFDdkIsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7WUFDbkMsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7WUFDbkMsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7WUFDN0IsSUFBSSxDQUFDLGlCQUFpQixHQUFHLGlCQUFpQixDQUFDO1FBQzdDLENBQUM7UUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7V0FpRUc7UUFDRyxzQ0FBTSxHQUFaLFVBQ0UsUUFBeUIsRUFDekIsT0FFQzs7Ozs7OzRCQUVPLEtBQXlCLENBQUEsT0FBTyxJQUFJLEVBQUUsQ0FBQSxhQUFsQixFQUFwQixZQUFZLG1CQUFHLEtBQUssS0FBQSxDQUFtQjtrQ0FDM0MsUUFBUSxhQUFSLFFBQVEsdUJBQVIsUUFBUSxDQUFFLFFBQVE7NEJBQ3BCLEtBQUEsUUFBUSxDQUFBOzRCQUFrQixLQUFBLENBQUEsS0FBQSxJQUFJLENBQUMsT0FBTyxDQUFBLENBQUMsZUFBZSxDQUFBO2tDQUNwRCxRQUFRLENBQUMsUUFBUTs0QkFD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