authing_ruby 1.1.0 → 1.1.5

Sign up to get free protection for your applications and to get access to all the features.
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,232 +0,0 @@
1
- /// <reference types="node" />
2
- import { AuthenticationTokenProvider } from './AuthenticationTokenProvider';
3
- import { AuthenticationClientOptions, QRCodeGenarateResult, QRCodeStatus, QRCodeUserInfo } from './types';
4
- import { User } from '../../types/graphql.v2';
5
- import { HttpClient } from '../common/HttpClient';
6
- import { BaseAuthenticationClient } from './BaseAuthenticationClient';
7
- /**
8
- * @class QrCodeAuthenticationClient 扫码登录模块
9
- * @description 此模块用于进行扫码登录,扫码登录分为两种小程序扫码登录(wxqrcode)和 APP 扫码登录(qrcode)。两种扫码登录方式 API 完全一致。
10
- *
11
- * 使用小程序扫码登录:
12
- *
13
- * \`\`\`javascript
14
- * import { AuthenticationClient } from "authing-js-sdk"
15
- * const authenticationClient = new AuthenticationClient({
16
- * appId: "YOUR_APP_ID",
17
- * })
18
- * authenticationClient.wxqrcode.startScanning() # 开始扫码登录
19
- * \`\`\`
20
- *
21
- * 使用 APP 扫码登录
22
- *
23
- * \`\`\`javascript
24
- * import { AuthenticationClient } from "authing-js-sdk"
25
- * const authenticationClient = new AuthenticationClient({
26
- * appId: "YOUR_APP_ID",
27
- * })
28
- * authenticationClient.qrcode.startScanning() # 开始扫码登录
29
- * \`\`\`
30
- *
31
- * @name QrCodeAuthenticationClient
32
- */
33
- export declare class QrCodeAuthenticationClient {
34
- options: AuthenticationClientOptions;
35
- tokenProvider: AuthenticationTokenProvider;
36
- scene: string;
37
- httpClient: HttpClient;
38
- baseClient: BaseAuthenticationClient;
39
- constructor(options: AuthenticationClientOptions, tokenProvider: AuthenticationTokenProvider, httpClient: HttpClient, scene: 'WXAPP_AUTH' | 'APP_AUTH');
40
- /**
41
- * @name startScanning
42
- * @name_zh 一键开始扫码
43
- * @description 一键开始扫码
44
- *
45
- * @param {string} domId DOM 元素的 ID。
46
- * @param {Object} options
47
- * @param {boolean} options.autoExchangeUserInfo 是否自定义使用 ticket 换取用户信息
48
- * @param {number} options.interval 间隔时间,单位为毫秒,默认为 800 毫秒
49
- * @param {Function} options.onStart 开始轮询的事件回调函数, 第一个参数为 setInterval 返回的计时器,可以用 clearInterval 取消此计时器
50
- * @param {Function} options.onResult 获取到二维码最新状态事件回调函数,第一个参数为的类型为 QRCodeStatus。
51
- * @param {Function} options.onScanned 用户首次扫码事件回调函数。此时用户还没有授权,回调的用户信息中通仅包含昵称和头像,用作展示目的。
52
- * 出于安全性考虑,默认情况下,userInfo 只会包含昵称(nickname)和头像(photo)两个字段,开发者也可以在后台配置使其返回完整用户信息,
53
- * @param {Function} options.onSuccess 用户同意授权事件回调函数。该函数只会回调一次,之后轮询结束。第一个参数为 userInfo 用户信息,第二个参数为 ticket,用于换取用户的详情。
54
- * 详情见 https://docs.authing.co/scan-qrcode/app-qrcode/customize.html。
55
- * ticket 可以用来换取完整的用户信息,相关接口见 https://docs.authing.co/scan-qrcode/app-qrcode/full-api-list.html。
56
- * @param {Function} options.onCancel 用户取消授权事件回调函数。该事件只会回调一次,之后轮询结束。
57
- * @param {Function} options.onError 获取二维码状态失败事件回调函数。常见原因为网络失败等,每次查询失败时都会回调。回调参数 data 示例如 {"code": 2241,"message": "二维码不存在" }
58
- * @param {Function} options.onExpired 二维码失效时被回调,只回调一次,之后轮询结束。
59
- * @param {Function} options.onCodeShow 二维码首次成功显示的事件。
60
- * @param {Function} options.onCodeLoaded 二维码首次成功 Load 的事件。
61
- * @param {Function} options.onCodeLoadFailed 二维码加载失败的事件。
62
- * @param {Function} options.onCodeDestroyed 二维码被销毁的事件。
63
- * @param {Object} options.size 二维码图片大小,默认为 240 * 240,单位为 px 。
64
- * @param {number} options.size.height 高度
65
- * @param {number} options.size.width 宽度
66
- * @param {Object} options.containerSize DOM 容器大小,默认为 300 * 300,单位为 px 。
67
- * @param {number} options.containerSize.height 高度
68
- * @param {number} options.containerSize.width 宽度
69
- * @param {Object} options.tips 自定义提示信息
70
- * @param {number} options.tips.title
71
- * @param {number} options.tips.scanned
72
- * @param {Object} options.tips.succeed
73
- * @param {number} options.tips.canceled
74
- * @param {number} options.tips.expired
75
- * @param {number} options.tips.retry
76
- * @param {number} options.tips.failed
77
- *
78
- * @example
79
- *
80
- * authenticationClient.wxqrcode.startScanning("qrcode", {
81
- * onSuccess: (userInfo, ticket) => {
82
- * console.log(userInfo, ticket)
83
- * },
84
- * onError: (message) => onFail && onFail(`${message}`),
85
- * });
86
- *
87
- * @returns {null}
88
- * @memberof QrCodeAuthenticationClient
89
- *
90
- */
91
- startScanning(domId: string, options?: {
92
- autoExchangeUserInfo?: boolean;
93
- size?: {
94
- height: number;
95
- width: number;
96
- };
97
- containerSize?: {
98
- height: number;
99
- width: number;
100
- };
101
- interval?: number;
102
- onStart?: (timer: any) => any;
103
- onResult?: (data: QRCodeStatus) => any;
104
- onScanned?: (userInfo: QRCodeUserInfo) => any;
105
- onSuccess?: (userInfo: QRCodeUserInfo, ticket: string) => any;
106
- onCancel?: () => any;
107
- onError?: (message: string) => any;
108
- onExpired?: () => any;
109
- onCodeShow?: (random: string, url: string) => any;
110
- onCodeLoaded?: (random: string, url: string) => any;
111
- onCodeLoadFailed?: (message: string) => any;
112
- onCodeDestroyed?: (random: string) => any;
113
- tips?: {
114
- title?: string;
115
- scanned?: string;
116
- succeed?: string;
117
- canceled?: string;
118
- expired?: string;
119
- retry?: string;
120
- failed?: string;
121
- };
122
- /**
123
- * @description 将会写入配置的用户自定义字段
124
- */
125
- customData?: {
126
- [x: string]: any;
127
- };
128
- /**
129
- * @description 请求上下文,将会传递到 Pipeline 中
130
- */
131
- context?: {
132
- [x: string]: any;
133
- };
134
- }): Promise<void>;
135
- /**
136
- * @name geneCode
137
- * @name_zh 生成二维码
138
- * @description 生成二维码
139
- *
140
- * @example
141
- * const authenticationClient = new AuthenticationClient({
142
- * appId: "YOUR_APP_ID",
143
- * })
144
- * const { url, random } = await authenticationClient.wxqrcode.geneCode()
145
- *
146
- * # random 二维码唯一 ID
147
- * # url 二维码链接
148
- *
149
- * @returns {Promise<QRCodeGenarateResult>}
150
- * @memberof QrCodeAuthenticationClient
151
- */
152
- geneCode(options?: {
153
- context?: {
154
- [x: string]: any;
155
- };
156
- customData?: {
157
- [x: string]: any;
158
- };
159
- }): Promise<QRCodeGenarateResult>;
160
- /**
161
- * @name checkStatus
162
- * @name_zh 检测扫码状态
163
- * @description 检测扫码状态
164
- *
165
- * @param {string} random
166
- *
167
- * @example
168
- *
169
- * const authenticationClient = new AuthenticationClient({
170
- * appId: "YOUR_APP_ID",
171
- * })
172
- * const { random, status, ticket, userInfo } = await authenticationClient.wxqrcode.checkStatus('RANDOM')
173
- * # status: 二维码状态: 0 - 未使用, 1 - 已扫码, 2 - 已授权, 3 - 取消授权, -1 - 已过期
174
- * # ticket: 用于换取用户信息的一个随机字符串
175
- * # userInfo: 用户信息
176
- *
177
- * @returns {Promise<QRCodeStatus>}
178
- * @memberof QrCodeAuthenticationClient
179
- */
180
- checkStatus(random: string): Promise<QRCodeStatus>;
181
- /**
182
- * @name exchangeUserInfo
183
- * @name_zh 使用 ticket 交换用户信息
184
- * @description 使用 ticket 交换用户信息
185
- *
186
- * @example
187
- *
188
- * const authenticationClient = new AuthenticationClient({
189
- * appId: "YOUR_APP_ID",
190
- * })
191
- * const user = await authenticationClient.wxqrcode.exchangeUserInfo('TICKET')
192
- * # user: 完整的用户信息,其中 user.token 为用户的登录凭证。
193
- *
194
- * @param {string} ticket ticket
195
- * @returns {Promise<Partial<User>>}
196
- * @memberof QrCodeAuthenticationClient
197
- */
198
- exchangeUserInfo(ticket: string): Promise<Partial<User>>;
199
- /**
200
- * @name startPolling
201
- * @name_zh 开始轮询二维码状态
202
- * @description 开始轮询二维码状态
203
- *
204
- * @param {string} random 二维码唯一 ID
205
- * @param {Object} options
206
- * @param {number} options.interval 间隔时间,单位为毫秒,默认为 800 毫秒
207
- * @param {Function} options.onStart 开始轮询的事件回调函数, 第一个参数为 setInterval 返回的计时器,可以用 clearInterval 取消此计时器
208
- * @param {Function} options.onResult 获取到二维码最新状态事件回调函数,第一个参数为的类型为 QRCodeStatus。
209
- * @param {Function} options.onScanned 用户首次扫码事件回调函数。此时用户还没有授权,回调的用户信息中通仅包含昵称和头像,用作展示目的。
210
- * 出于安全性考虑,默认情况下,userInfo 只会包含昵称(nickname)和头像(photo)两个字段,开发者也可以在后台配置使其返回完整用户信息,
211
- * @param {Function} options.onSuccess 用户同意授权事件回调函数。该函数只会回调一次,之后轮询结束。第一个参数为 userInfo 用户信息,第二个参数为 ticket,用于换取用户的详情。
212
- * 详情见 https://docs.authing.co/scan-qrcode/app-qrcode/customize.html。
213
- * ticket 可以用来换取完整的用户信息,相关接口见 https://docs.authing.co/scan-qrcode/app-qrcode/full-api-list.html。
214
- * @param {Function} options.onCancel 用户取消授权事件回调函数。该事件只会回调一次,之后轮询结束。
215
- * @param {Function} options.onError 获取二维码状态失败事件回调函数。常见原因为网络失败等,每次查询失败时都会回调。回调参数 data 示例如 {"code": 2241,"message": "二维码不存在" }
216
- * @param {Function} options.onExpired 二维码失效时被回调,只回调一次,之后轮询结束。
217
- *
218
- * @returns {null}
219
- * @memberof QrCodeAuthenticationClient
220
- */
221
- startPolling(random: string, options?: {
222
- interval?: number;
223
- onStart?: (timer: any) => any;
224
- onResult?: (data: QRCodeStatus) => any;
225
- onScanned?: (userInfo: QRCodeUserInfo) => any;
226
- onSuccess?: (userInfo: QRCodeUserInfo, ticket: string) => any;
227
- onCancel?: () => any;
228
- onError?: (message: string) => any;
229
- onExpired?: () => any;
230
- }): Promise<NodeJS.Timeout>;
231
- stopPolling(timer: any): Promise<void>;
232
- }
@@ -1,632 +0,0 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- var __generator = (this && this.__generator) || function (thisArg, body) {
11
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
12
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13
- function verb(n) { return function (v) { return step([n, v]); }; }
14
- function step(op) {
15
- if (f) throw new TypeError("Generator is already executing.");
16
- while (_) try {
17
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
18
- if (y = 0, t) op = [op[0] & 2, t.value];
19
- switch (op[0]) {
20
- case 0: case 1: t = op; break;
21
- case 4: _.label++; return { value: op[1], done: false };
22
- case 5: _.label++; y = op[1]; op = [0]; continue;
23
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
24
- default:
25
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29
- if (t[2]) _.ops.pop();
30
- _.trys.pop(); continue;
31
- }
32
- op = body.call(thisArg, _);
33
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
- }
36
- };
37
- (function (factory) {
38
- if (typeof module === "object" && typeof module.exports === "object") {
39
- var v = factory(require, exports);
40
- if (v !== undefined) module.exports = v;
41
- }
42
- else if (typeof define === "function" && define.amd) {
43
- define(["require", "exports", "../utils", "./BaseAuthenticationClient"], factory);
44
- }
45
- })(function (require, exports) {
46
- "use strict";
47
- Object.defineProperty(exports, "__esModule", { value: true });
48
- exports.QrCodeAuthenticationClient = void 0;
49
- var utils_1 = require("../utils");
50
- var BaseAuthenticationClient_1 = require("./BaseAuthenticationClient");
51
- /**
52
- * @class QrCodeAuthenticationClient 扫码登录模块
53
- * @description 此模块用于进行扫码登录,扫码登录分为两种小程序扫码登录(wxqrcode)和 APP 扫码登录(qrcode)。两种扫码登录方式 API 完全一致。
54
- *
55
- * 使用小程序扫码登录:
56
- *
57
- * \`\`\`javascript
58
- * import { AuthenticationClient } from "authing-js-sdk"
59
- * const authenticationClient = new AuthenticationClient({
60
- * appId: "YOUR_APP_ID",
61
- * })
62
- * authenticationClient.wxqrcode.startScanning() # 开始扫码登录
63
- * \`\`\`
64
- *
65
- * 使用 APP 扫码登录
66
- *
67
- * \`\`\`javascript
68
- * import { AuthenticationClient } from "authing-js-sdk"
69
- * const authenticationClient = new AuthenticationClient({
70
- * appId: "YOUR_APP_ID",
71
- * })
72
- * authenticationClient.qrcode.startScanning() # 开始扫码登录
73
- * \`\`\`
74
- *
75
- * @name QrCodeAuthenticationClient
76
- */
77
- var QrCodeAuthenticationClient = /** @class */ (function () {
78
- function QrCodeAuthenticationClient(options, tokenProvider, httpClient, scene) {
79
- this.options = options;
80
- this.tokenProvider = tokenProvider;
81
- this.httpClient = httpClient;
82
- this.scene = scene;
83
- this.baseClient = new BaseAuthenticationClient_1.BaseAuthenticationClient(options);
84
- }
85
- /**
86
- * @name startScanning
87
- * @name_zh 一键开始扫码
88
- * @description 一键开始扫码
89
- *
90
- * @param {string} domId DOM 元素的 ID。
91
- * @param {Object} options
92
- * @param {boolean} options.autoExchangeUserInfo 是否自定义使用 ticket 换取用户信息
93
- * @param {number} options.interval 间隔时间,单位为毫秒,默认为 800 毫秒
94
- * @param {Function} options.onStart 开始轮询的事件回调函数, 第一个参数为 setInterval 返回的计时器,可以用 clearInterval 取消此计时器
95
- * @param {Function} options.onResult 获取到二维码最新状态事件回调函数,第一个参数为的类型为 QRCodeStatus。
96
- * @param {Function} options.onScanned 用户首次扫码事件回调函数。此时用户还没有授权,回调的用户信息中通仅包含昵称和头像,用作展示目的。
97
- * 出于安全性考虑,默认情况下,userInfo 只会包含昵称(nickname)和头像(photo)两个字段,开发者也可以在后台配置使其返回完整用户信息,
98
- * @param {Function} options.onSuccess 用户同意授权事件回调函数。该函数只会回调一次,之后轮询结束。第一个参数为 userInfo 用户信息,第二个参数为 ticket,用于换取用户的详情。
99
- * 详情见 https://docs.authing.co/scan-qrcode/app-qrcode/customize.html。
100
- * ticket 可以用来换取完整的用户信息,相关接口见 https://docs.authing.co/scan-qrcode/app-qrcode/full-api-list.html。
101
- * @param {Function} options.onCancel 用户取消授权事件回调函数。该事件只会回调一次,之后轮询结束。
102
- * @param {Function} options.onError 获取二维码状态失败事件回调函数。常见原因为网络失败等,每次查询失败时都会回调。回调参数 data 示例如 {"code": 2241,"message": "二维码不存在" }
103
- * @param {Function} options.onExpired 二维码失效时被回调,只回调一次,之后轮询结束。
104
- * @param {Function} options.onCodeShow 二维码首次成功显示的事件。
105
- * @param {Function} options.onCodeLoaded 二维码首次成功 Load 的事件。
106
- * @param {Function} options.onCodeLoadFailed 二维码加载失败的事件。
107
- * @param {Function} options.onCodeDestroyed 二维码被销毁的事件。
108
- * @param {Object} options.size 二维码图片大小,默认为 240 * 240,单位为 px 。
109
- * @param {number} options.size.height 高度
110
- * @param {number} options.size.width 宽度
111
- * @param {Object} options.containerSize DOM 容器大小,默认为 300 * 300,单位为 px 。
112
- * @param {number} options.containerSize.height 高度
113
- * @param {number} options.containerSize.width 宽度
114
- * @param {Object} options.tips 自定义提示信息
115
- * @param {number} options.tips.title
116
- * @param {number} options.tips.scanned
117
- * @param {Object} options.tips.succeed
118
- * @param {number} options.tips.canceled
119
- * @param {number} options.tips.expired
120
- * @param {number} options.tips.retry
121
- * @param {number} options.tips.failed
122
- *
123
- * @example
124
- *
125
- * authenticationClient.wxqrcode.startScanning("qrcode", {
126
- * onSuccess: (userInfo, ticket) => {
127
- * console.log(userInfo, ticket)
128
- * },
129
- * onError: (message) => onFail && onFail(`${message}`),
130
- * });
131
- *
132
- * @returns {null}
133
- * @memberof QrCodeAuthenticationClient
134
- *
135
- */
136
- QrCodeAuthenticationClient.prototype.startScanning = function (domId, options) {
137
- return __awaiter(this, void 0, void 0, function () {
138
- function genRetry(qrcodeElm, tipText, retryId) {
139
- var tip = genTip(tipText);
140
- nodeWrapper = document.createElement('div');
141
- nodeWrapper.id = 'authing__qrcode-wrapper';
142
- nodeWrapper.style.textAlign = 'center';
143
- nodeWrapper.style.position = 'relative';
144
- // TODO: 这里换一个二维码
145
- var qrcodeImage = genImage('https://usercontents.authing.cn/0ab3a1bf19c0d7106673e494d532f91a.png');
146
- if (!needGenerate) {
147
- qrcodeImage.style.marginTop = '12px';
148
- }
149
- else {
150
- qrcodeImage.style.marginTop = '16px';
151
- }
152
- qrcodeImage.onload = function () {
153
- unloading();
154
- };
155
- var shadow = genShadow(retry, function () {
156
- start();
157
- }, retryId || '__authing_retry_btn');
158
- nodeWrapper.appendChild(qrcodeImage);
159
- nodeWrapper.appendChild(shadow);
160
- nodeWrapper.appendChild(tip);
161
- qrcodeElm.appendChild(nodeWrapper);
162
- }
163
- var _a, autoExchangeUserInfo, _b, size, _c, containerSize, _d, interval, onStart, onResult, onScanned, onExpired, onSuccess, onCancel, onError, onCodeShow, onCodeLoaded, onCodeLoadFailed, _e,
164
- // onCodeDestroyed,
165
- tips, context, customData, lang, nowLang, _f, title, _g,
166
- // scanned = '用户已扫码,等待确认',
167
- canceled, _h, expired, _j, succeed, _k, retry, node, nodeWrapper, needGenerate, styleNode, style, loading, unloading, genTip, genImage, genShadow, displayScannedUser, start;
168
- var _this = this;
169
- return __generator(this, function (_l) {
170
- options = options || {};
171
- _a = options.autoExchangeUserInfo, autoExchangeUserInfo = _a === void 0 ? false : _a, _b = options.size, size = _b === void 0 ? {
172
- height: 240,
173
- width: 240
174
- } : _b, _c = options.containerSize, containerSize = _c === void 0 ? {
175
- height: 300,
176
- width: 300
177
- } : _c, _d = options.interval, interval = _d === void 0 ? 800 : _d, onStart = options.onStart, onResult = options.onResult, onScanned = options.onScanned, onExpired = options.onExpired, onSuccess = options.onSuccess, onCancel = options.onCancel, onError = options.onError, onCodeShow = options.onCodeShow, onCodeLoaded = options.onCodeLoaded, onCodeLoadFailed = options.onCodeLoadFailed, _e = options.tips, tips = _e === void 0 ? {} : _e, context = options.context, customData = options.customData;
178
- lang = this.options.lang;
179
- nowLang = lang === 'zh-CN';
180
- _f = tips.title, title = _f === void 0 ? nowLang ? "\u4F7F\u7528 <strong> " + (this.scene === 'WXAPP_AUTH' ? '微信' : 'APP') + " </strong> \u626B\u7801\u767B\u5F55" : "use <strong> " + (this.scene === 'WXAPP_AUTH' ? 'Wechat' : 'APP') + " </strong> scan code login" : _f, _g = tips.canceled, canceled = _g === void 0 ? nowLang ? '用户取消授权' : 'User cancel authorization' : _g, _h = tips.expired, expired = _h === void 0 ? nowLang ? '二维码已过期' : 'QR code has expired' : _h, _j = tips.succeed, succeed = _j === void 0 ? nowLang ? '扫码成功' : 'Scan code successfully' : _j, _k = tips.retry, retry = _k === void 0 ? nowLang ? '重试' : 'Retry' : _k;
181
- node = document.getElementById(domId);
182
- needGenerate = false;
183
- if (!node) {
184
- node = document.createElement('div');
185
- node.id = domId;
186
- utils_1.createCssClassStyleSheet('__authing-qrcode-node-mount', "z-index: 65535;position: fixed;background: #fff;width: " + containerSize.width + "px;height: " + containerSize.height + "px;left: 50%;margin-left: -" + containerSize.width /
187
- 2 + "px;display: flex;justify-content: center;align-items: center;top: 50%;margin-top: -" + containerSize.height /
188
- 2 + "px;border: 1px solid #ccc;");
189
- node.classList.add('__authing-qrcode-node-mount');
190
- document.getElementsByTagName('body')[0].appendChild(node);
191
- needGenerate = true;
192
- }
193
- else {
194
- node.style.position = 'relative';
195
- }
196
- styleNode = document.createElement('style');
197
- style = '#authing__retry a:hover{outline:0px;text-decoration:none;}#authing__spinner{position:absolute;left:50%;margin-left:-6px;}.spinner{margin:100px auto;width:20px;height:20px;position:relative}.container1>div,.container2>div,.container3>div{width:6px;height:6px;background-color:#00a1ea;border-radius:100%;position:absolute;-webkit-animation:bouncedelay 1.2s infinite ease-in-out;animation:bouncedelay 1.2s infinite ease-in-out;-webkit-animation-fill-mode:both;animation-fill-mode:both}.spinner .spinner-container{position:absolute;width:100%;height:100%}.container2{-webkit-transform:rotateZ(45deg);transform:rotateZ(45deg)}.container3{-webkit-transform:rotateZ(90deg);transform:rotateZ(90deg)}.circle1{top:0;left:0}.circle2{top:0;right:0}.circle3{right:0;bottom:0}.circle4{left:0;bottom:0}.container2 .circle1{-webkit-animation-delay:-1.1s;animation-delay:-1.1s}.container3 .circle1{-webkit-animation-delay:-1.0s;animation-delay:-1.0s}.container1 .circle2{-webkit-animation-delay:-0.9s;animation-delay:-0.9s}.container2 .circle2{-webkit-animation-delay:-0.8s;animation-delay:-0.8s}.container3 .circle2{-webkit-animation-delay:-0.7s;animation-delay:-0.7s}.container1 .circle3{-webkit-animation-delay:-0.6s;animation-delay:-0.6s}.container2 .circle3{-webkit-animation-delay:-0.5s;animation-delay:-0.5s}.container3 .circle3{-webkit-animation-delay:-0.4s;animation-delay:-0.4s}.container1 .circle4{-webkit-animation-delay:-0.3s;animation-delay:-0.3s}.container2 .circle4{-webkit-animation-delay:-0.2s;animation-delay:-0.2s}.container3 .circle4{-webkit-animation-delay:-0.1s;animation-delay:-0.1s}@-webkit-keyframes bouncedelay{0%,80%,100%{-webkit-transform:scale(0.0)}40%{-webkit-transform:scale(1.0)}}@keyframes bouncedelay{0%,80%,100%{transform:scale(0.0);-webkit-transform:scale(0.0)}40%{transform:scale(1.0);-webkit-transform:scale(1.0)}}';
198
- styleNode.type = 'text/css';
199
- if (styleNode.style) {
200
- styleNode.style.cssText = style;
201
- }
202
- else {
203
- styleNode.innerHTML = style;
204
- }
205
- document.getElementsByTagName('head')[0].appendChild(styleNode);
206
- loading = function () {
207
- node.innerHTML =
208
- '<div id="authing__spinner" class="spinner"><div class="spinner-container container1"><div class="circle1"></div><div class="circle2"></div><div class="circle3"></div><div class="circle4"></div></div><div class="spinner-container container2"><div class="circle1"></div><div class="circle2"></div><div class="circle3"></div><div class="circle4"></div></div><div class="spinner-container container3"><div class="circle1"></div><div class="circle2"></div><div class="circle3"></div><div class="circle4"></div></div></div>';
209
- };
210
- unloading = function () {
211
- var child = document.getElementById('authing__spinner');
212
- if (child)
213
- node.removeChild(child);
214
- };
215
- genTip = function (text) {
216
- var formattedText;
217
- try {
218
- formattedText = JSON.parse(text).message || text;
219
- }
220
- catch (e) {
221
- formattedText = text;
222
- }
223
- var tip = document.createElement('span');
224
- tip.className = 'authing__heading-subtitle';
225
- if (!needGenerate) {
226
- utils_1.createCssClassStyleSheet('__authing__heading-subtitle-style', 'display: block;font-weight: 400;font-size: 15px;color: #888;line-height: 48px;');
227
- tip.classList.add('__authing__heading-subtitle-style');
228
- }
229
- else {
230
- utils_1.createCssClassStyleSheet('__authing__heading-subtitle-style', 'display: block;font-weight: 400;font-size: 12px;color: #888;');
231
- tip.classList.add('__authing__heading-subtitle-style');
232
- }
233
- tip.innerHTML = formattedText;
234
- return tip;
235
- };
236
- genImage = function (src) {
237
- var qrcodeImage = document.createElement('img');
238
- qrcodeImage.className = 'authing__qrcode';
239
- qrcodeImage.src = src;
240
- qrcodeImage.width = size.width;
241
- qrcodeImage.height = size.height;
242
- return qrcodeImage;
243
- };
244
- genShadow = function (text, aOnClick, shadowAId) {
245
- var shadowId = 'authing__retry';
246
- if (document.getElementById(shadowId)) {
247
- document.getElementById(shadowId).remove();
248
- }
249
- var shadow = document.createElement('div');
250
- shadow.id = shadowId;
251
- utils_1.createCssClassStyleSheet('__authing-shadow-style', "text-align:center;width: " + size.width + "px;height: " + size.height + "px;position: absolute;left: 50%;top: 0px;margin-left: -" + size.width /
252
- 2 + "px;background-color: rgba(0,0,0, 0.5);line-height:" + size.height + "px;color:#fff;font-weight:600;");
253
- shadow.classList.add('__authing-shadow-style');
254
- var shadowA = document.createElement('a');
255
- shadowA.innerHTML = text;
256
- shadowA.style.color = '#fff';
257
- shadowA.style.borderBottom = '1px solid #fff';
258
- shadowA.style.cursor = 'pointer';
259
- if (aOnClick) {
260
- shadowA.addEventListener('click', aOnClick);
261
- }
262
- shadowA.id = shadowAId;
263
- shadow.appendChild(shadowA);
264
- return shadow;
265
- };
266
- displayScannedUser = function (_, photo) {
267
- var shadowId = 'authing__retry';
268
- if (document.getElementById(shadowId)) {
269
- document.getElementById(shadowId).remove();
270
- }
271
- var shadow = document.createElement('div');
272
- utils_1.createCssClassStyleSheet('__authing-shadow-style-position', "text-align:center;width: " + size.width + "px;height: " + size.height + "px;position: absolute;left: 50%;top: 0px;margin-left: -" + size.width /
273
- 2 + "px;line-height:" + size.height + "px;color:#fff;font-weight:600;display: flex;\n align-items: center; /*\u5782\u76F4\u5C45\u4E2D*/\n justify-content: center; /*\u6C34\u5E73\u5C45\u4E2D*/");
274
- shadow.classList.add('__authing-shadow-style-position');
275
- shadow.id = shadowId;
276
- var img = document.createElement('img');
277
- img.id = 'authing__scanned-user';
278
- img.src = photo;
279
- img.style.width = '100px';
280
- img.style.height = '100px';
281
- shadow.appendChild(img);
282
- return shadow;
283
- };
284
- start = function () { return __awaiter(_this, void 0, void 0, function () {
285
- var random, url, data, error_1, qrcodeImage;
286
- var _this = this;
287
- return __generator(this, function (_a) {
288
- switch (_a.label) {
289
- case 0:
290
- loading();
291
- random = null;
292
- url = null;
293
- _a.label = 1;
294
- case 1:
295
- _a.trys.push([1, 3, , 4]);
296
- return [4 /*yield*/, this.geneCode({
297
- context: context,
298
- customData: customData
299
- })];
300
- case 2:
301
- data = _a.sent();
302
- random = data.random;
303
- url = data.url;
304
- return [3 /*break*/, 4];
305
- case 3:
306
- error_1 = _a.sent();
307
- error_1 = error_1;
308
- genRetry(node, error_1.message);
309
- if (onCodeLoadFailed) {
310
- onCodeLoadFailed(error_1);
311
- }
312
- return [2 /*return*/];
313
- case 4:
314
- if (onCodeLoaded) {
315
- onCodeLoaded(random, url);
316
- }
317
- nodeWrapper = document.createElement('div');
318
- nodeWrapper.id = 'authing__qrcode-wrapper';
319
- nodeWrapper.style.textAlign = 'center';
320
- nodeWrapper.style.position = 'relative';
321
- qrcodeImage = genImage(url);
322
- qrcodeImage.onload = function () {
323
- unloading();
324
- if (onCodeShow) {
325
- onCodeShow(random, url);
326
- }
327
- // 需要对用户的 onSuccess, onScanned, onExpired, onCancel 进行加工从而在页面上展示相关提示
328
- var decoratedOnSuccess = function (userInfo, ticket) {
329
- var shadow = genShadow(succeed, null, '__authing_success_tip');
330
- nodeWrapper.appendChild(shadow);
331
- if (onSuccess) {
332
- if (autoExchangeUserInfo) {
333
- var token = userInfo.token;
334
- if (!token) {
335
- // 轮询接口不会返回完整用户信息,需要使用 ticket 换取
336
- _this.exchangeUserInfo(ticket).then(function (userInfo) {
337
- // @ts-ignore
338
- _this.tokenProvider.setUser(userInfo);
339
- // @ts-ignore
340
- onSuccess(userInfo, ticket);
341
- });
342
- }
343
- }
344
- else {
345
- onSuccess(userInfo, ticket);
346
- }
347
- }
348
- };
349
- var decoratedOnScanned = function (userInfo) {
350
- var shadow = displayScannedUser(userInfo.nickname, userInfo.photo);
351
- nodeWrapper.appendChild(shadow);
352
- if (onScanned) {
353
- onScanned(userInfo);
354
- }
355
- };
356
- var decoratedOnCancel = function () {
357
- var shadow = genShadow(canceled, null, '__authing_success_tip');
358
- nodeWrapper.appendChild(shadow);
359
- if (onCancel) {
360
- onCancel();
361
- }
362
- };
363
- var decoratedOnExpired = function () {
364
- var shadow = genShadow(expired, function () {
365
- nodeWrapper.innerHTML = '';
366
- start();
367
- }, '__authing_success_tip');
368
- nodeWrapper.appendChild(shadow);
369
- if (onExpired) {
370
- onExpired();
371
- }
372
- };
373
- var decoratedOnError = function (data) {
374
- var message = data.message;
375
- if (onError) {
376
- onError(message);
377
- }
378
- };
379
- // 开始轮询
380
- _this.startPolling(random, {
381
- interval: interval,
382
- onStart: onStart,
383
- onResult: onResult,
384
- onScanned: decoratedOnScanned,
385
- onExpired: decoratedOnExpired,
386
- onSuccess: decoratedOnSuccess,
387
- onCancel: decoratedOnCancel,
388
- onError: decoratedOnError
389
- });
390
- var tip = genTip(title);
391
- nodeWrapper.appendChild(qrcodeImage);
392
- nodeWrapper.appendChild(tip);
393
- node.appendChild(nodeWrapper);
394
- };
395
- return [2 /*return*/];
396
- }
397
- });
398
- }); };
399
- start();
400
- return [2 /*return*/];
401
- });
402
- });
403
- };
404
- /**
405
- * @name geneCode
406
- * @name_zh 生成二维码
407
- * @description 生成二维码
408
- *
409
- * @example
410
- * const authenticationClient = new AuthenticationClient({
411
- * appId: "YOUR_APP_ID",
412
- * })
413
- * const { url, random } = await authenticationClient.wxqrcode.geneCode()
414
- *
415
- * # random 二维码唯一 ID
416
- * # url 二维码链接
417
- *
418
- * @returns {Promise<QRCodeGenarateResult>}
419
- * @memberof QrCodeAuthenticationClient
420
- */
421
- QrCodeAuthenticationClient.prototype.geneCode = function (options) {
422
- return __awaiter(this, void 0, void 0, function () {
423
- var _a, context, customData, api, data;
424
- return __generator(this, function (_b) {
425
- switch (_b.label) {
426
- case 0:
427
- _a = options || {}, context = _a.context, customData = _a.customData;
428
- api = this.baseClient.appHost + "/api/v2/qrcode/gene";
429
- return [4 /*yield*/, this.httpClient.request({
430
- method: 'POST',
431
- url: api,
432
- data: {
433
- scene: this.scene,
434
- context: context,
435
- params: customData
436
- }
437
- })];
438
- case 1:
439
- data = _b.sent();
440
- return [2 /*return*/, data];
441
- }
442
- });
443
- });
444
- };
445
- /**
446
- * @name checkStatus
447
- * @name_zh 检测扫码状态
448
- * @description 检测扫码状态
449
- *
450
- * @param {string} random
451
- *
452
- * @example
453
- *
454
- * const authenticationClient = new AuthenticationClient({
455
- * appId: "YOUR_APP_ID",
456
- * })
457
- * const { random, status, ticket, userInfo } = await authenticationClient.wxqrcode.checkStatus('RANDOM')
458
- * # status: 二维码状态: 0 - 未使用, 1 - 已扫码, 2 - 已授权, 3 - 取消授权, -1 - 已过期
459
- * # ticket: 用于换取用户信息的一个随机字符串
460
- * # userInfo: 用户信息
461
- *
462
- * @returns {Promise<QRCodeStatus>}
463
- * @memberof QrCodeAuthenticationClient
464
- */
465
- QrCodeAuthenticationClient.prototype.checkStatus = function (random) {
466
- return __awaiter(this, void 0, void 0, function () {
467
- var api, data;
468
- return __generator(this, function (_a) {
469
- switch (_a.label) {
470
- case 0:
471
- api = this.baseClient.appHost + "/api/v2/qrcode/check?random=" + random;
472
- return [4 /*yield*/, this.httpClient.request({
473
- method: 'GET',
474
- url: api
475
- })];
476
- case 1:
477
- data = _a.sent();
478
- return [2 /*return*/, data];
479
- }
480
- });
481
- });
482
- };
483
- /**
484
- * @name exchangeUserInfo
485
- * @name_zh 使用 ticket 交换用户信息
486
- * @description 使用 ticket 交换用户信息
487
- *
488
- * @example
489
- *
490
- * const authenticationClient = new AuthenticationClient({
491
- * appId: "YOUR_APP_ID",
492
- * })
493
- * const user = await authenticationClient.wxqrcode.exchangeUserInfo('TICKET')
494
- * # user: 完整的用户信息,其中 user.token 为用户的登录凭证。
495
- *
496
- * @param {string} ticket ticket
497
- * @returns {Promise<Partial<User>>}
498
- * @memberof QrCodeAuthenticationClient
499
- */
500
- QrCodeAuthenticationClient.prototype.exchangeUserInfo = function (ticket) {
501
- return __awaiter(this, void 0, void 0, function () {
502
- var api, userInfo;
503
- return __generator(this, function (_a) {
504
- switch (_a.label) {
505
- case 0:
506
- api = this.baseClient.appHost + "/api/v2/qrcode/userinfo";
507
- return [4 /*yield*/, this.httpClient.request({
508
- method: 'POST',
509
- url: api,
510
- data: {
511
- ticket: ticket
512
- }
513
- })];
514
- case 1:
515
- userInfo = _a.sent();
516
- return [2 /*return*/, userInfo];
517
- }
518
- });
519
- });
520
- };
521
- /**
522
- * @name startPolling
523
- * @name_zh 开始轮询二维码状态
524
- * @description 开始轮询二维码状态
525
- *
526
- * @param {string} random 二维码唯一 ID
527
- * @param {Object} options
528
- * @param {number} options.interval 间隔时间,单位为毫秒,默认为 800 毫秒
529
- * @param {Function} options.onStart 开始轮询的事件回调函数, 第一个参数为 setInterval 返回的计时器,可以用 clearInterval 取消此计时器
530
- * @param {Function} options.onResult 获取到二维码最新状态事件回调函数,第一个参数为的类型为 QRCodeStatus。
531
- * @param {Function} options.onScanned 用户首次扫码事件回调函数。此时用户还没有授权,回调的用户信息中通仅包含昵称和头像,用作展示目的。
532
- * 出于安全性考虑,默认情况下,userInfo 只会包含昵称(nickname)和头像(photo)两个字段,开发者也可以在后台配置使其返回完整用户信息,
533
- * @param {Function} options.onSuccess 用户同意授权事件回调函数。该函数只会回调一次,之后轮询结束。第一个参数为 userInfo 用户信息,第二个参数为 ticket,用于换取用户的详情。
534
- * 详情见 https://docs.authing.co/scan-qrcode/app-qrcode/customize.html。
535
- * ticket 可以用来换取完整的用户信息,相关接口见 https://docs.authing.co/scan-qrcode/app-qrcode/full-api-list.html。
536
- * @param {Function} options.onCancel 用户取消授权事件回调函数。该事件只会回调一次,之后轮询结束。
537
- * @param {Function} options.onError 获取二维码状态失败事件回调函数。常见原因为网络失败等,每次查询失败时都会回调。回调参数 data 示例如 {"code": 2241,"message": "二维码不存在" }
538
- * @param {Function} options.onExpired 二维码失效时被回调,只回调一次,之后轮询结束。
539
- *
540
- * @returns {null}
541
- * @memberof QrCodeAuthenticationClient
542
- */
543
- QrCodeAuthenticationClient.prototype.startPolling = function (random, options) {
544
- return __awaiter(this, void 0, void 0, function () {
545
- var _a, interval, onStart, onResult, onScanned, onExpired, onSuccess, onCancel, onError, calledOnScanned, callOnPoolingStart, timer;
546
- var _this = this;
547
- return __generator(this, function (_b) {
548
- options = options || {};
549
- _a = options.interval, interval = _a === void 0 ? 800 : _a, onStart = options.onStart, onResult = options.onResult, onScanned = options.onScanned, onExpired = options.onExpired, onSuccess = options.onSuccess, onCancel = options.onCancel, onError = options.onError;
550
- calledOnScanned = false;
551
- callOnPoolingStart = false;
552
- timer = setInterval(function () { return __awaiter(_this, void 0, void 0, function () {
553
- var data, status_1, ticket, userInfo, error_2;
554
- return __generator(this, function (_a) {
555
- switch (_a.label) {
556
- case 0:
557
- // 开始轮询时回调 onPollingStart
558
- if (onStart && !callOnPoolingStart) {
559
- onStart(timer);
560
- callOnPoolingStart = true;
561
- }
562
- _a.label = 1;
563
- case 1:
564
- _a.trys.push([1, 3, , 4]);
565
- return [4 /*yield*/, this.checkStatus(random)];
566
- case 2:
567
- data = _a.sent();
568
- status_1 = data.status, ticket = data.ticket, userInfo = data.userInfo;
569
- // 每次获取到数据都回调 onResult 函数
570
- if (onResult) {
571
- onResult(data);
572
- }
573
- // 过期
574
- if (status_1 === -1) {
575
- clearInterval(timer);
576
- if (onExpired) {
577
- onExpired();
578
- }
579
- }
580
- // 未扫码
581
- if (status_1 === 0) {
582
- }
583
- // 已扫码
584
- if (status_1 === 1) {
585
- if (onScanned && !calledOnScanned) {
586
- onScanned(userInfo);
587
- calledOnScanned = true;
588
- }
589
- }
590
- // 已授权
591
- if (status_1 === 2) {
592
- clearInterval(timer);
593
- if (onSuccess) {
594
- onSuccess(userInfo, ticket);
595
- }
596
- }
597
- // 已取消
598
- if (status_1 === 3) {
599
- clearInterval(timer);
600
- if (onCancel) {
601
- onCancel();
602
- }
603
- }
604
- return [3 /*break*/, 4];
605
- case 3:
606
- error_2 = _a.sent();
607
- if (onError) {
608
- onError(error_2);
609
- }
610
- clearInterval(timer);
611
- return [2 /*return*/];
612
- case 4: return [2 /*return*/];
613
- }
614
- });
615
- }); }, interval);
616
- return [2 /*return*/, timer];
617
- });
618
- });
619
- };
620
- QrCodeAuthenticationClient.prototype.stopPolling = function (timer) {
621
- return __awaiter(this, void 0, void 0, function () {
622
- return __generator(this, function (_a) {
623
- clearInterval(timer);
624
- return [2 /*return*/];
625
- });
626
- });
627
- };
628
- return QrCodeAuthenticationClient;
629
- }());
630
- exports.QrCodeAuthenticationClient = QrCodeAuthenticationClient;
631
- });
632
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUXJDb2RlQXV0aGVudGljYXRpb25DbGllbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL2F1dGhlbnRpY2F0aW9uL1FyQ29kZUF1dGhlbnRpY2F0aW9uQ2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQU9BLGtDQUFvRDtJQUdwRCx1RUFBc0U7SUFFdEU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0F5Qkc7SUFDSDtRQU9FLG9DQUNFLE9BQW9DLEVBQ3BDLGFBQTBDLEVBQzFDLFVBQXNCLEVBQ3RCLEtBQWdDO1lBRWhDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDO1lBQ25DLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1lBQzdCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1lBQ25CLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxtREFBd0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMxRCxDQUFDO1FBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O1dBa0RHO1FBQ0csa0RBQWEsR0FBbkIsVUFDRSxLQUFhLEVBQ2IsT0F1Q0M7O2dCQW9NRCxTQUFTLFFBQVEsQ0FBQyxTQUFjLEVBQUUsT0FBZSxFQUFFLE9BQWdCO29CQUNqRSxJQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7b0JBRTVCLFdBQVcsR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO29CQUM1QyxXQUFXLENBQUMsRUFBRSxHQUFHLHlCQUF5QixDQUFDO29CQUMzQyxXQUFXLENBQUMsS0FBSyxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUM7b0JBQ3ZDLFdBQVcsQ0FBQyxL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