authing_ruby 1.1.0 → 1.1.5

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