authing_ruby 1.1.4 → 1.1.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (462) hide show
  1. checksums.yaml +4 -4
  2. data/authing_ruby.gemspec +4 -2
  3. data/lib/authing_ruby/common/PublicKeyManager.rb +12 -1
  4. data/lib/authing_ruby/version.rb +1 -1
  5. metadata +10 -467
  6. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/CONTRIBUTION.md +0 -23
  7. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/LICENSE +0 -21
  8. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/README.md +0 -303
  9. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build-doc.js +0 -520
  10. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/browser/index.min.js +0 -2
  11. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/browser/index.min.js.LICENSE.txt +0 -91
  12. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/index.d.ts +0 -7
  13. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/index.js +0 -20
  14. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/AuthenticationClient.d.ts +0 -1118
  15. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/AuthenticationClient.js +0 -2859
  16. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/AuthenticationTokenProvider.d.ts +0 -13
  17. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/AuthenticationTokenProvider.js +0 -56
  18. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/BaseAuthenticationClient.d.ts +0 -6
  19. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/BaseAuthenticationClient.js +0 -31
  20. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/EnterpriseAuthenticationClient.d.ts +0 -92
  21. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/EnterpriseAuthenticationClient.js +0 -250
  22. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/MfaAuthenticationClient.d.ts +0 -303
  23. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/MfaAuthenticationClient.js +0 -665
  24. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/QrCodeAuthenticationClient.d.ts +0 -232
  25. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/QrCodeAuthenticationClient.js +0 -622
  26. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/SocialAuthenticationClient.d.ts +0 -104
  27. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/SocialAuthenticationClient.js +0 -180
  28. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/types.d.ts +0 -341
  29. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/types.js +0 -69
  30. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/common/GraphqlClient.d.ts +0 -14
  31. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/common/GraphqlClient.js +0 -127
  32. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/common/HttpClient.d.ts +0 -19
  33. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/common/HttpClient.js +0 -151
  34. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/common/PublicKeyManager.d.ts +0 -18
  35. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/common/PublicKeyManager.js +0 -81
  36. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/graphqlapi.d.ts +0 -121
  37. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/graphqlapi.js +0 -2002
  38. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/AclManagementClient.d.ts +0 -236
  39. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/AclManagementClient.js +0 -863
  40. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/AgreementManagementClient.d.ts +0 -65
  41. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/AgreementManagementClient.js +0 -195
  42. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/ApplicationsManagementClient.d.ts +0 -216
  43. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/ApplicationsManagementClient.js +0 -533
  44. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/GroupsManagementClient.d.ts +0 -188
  45. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/GroupsManagementClient.js +0 -404
  46. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/MFAManagementClient.d.ts +0 -58
  47. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/MFAManagementClient.js +0 -126
  48. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/ManagementClient.d.ts +0 -79
  49. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/ManagementClient.js +0 -203
  50. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/ManagementTokenProvider.d.ts +0 -39
  51. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/ManagementTokenProvider.js +0 -159
  52. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/OrgManagementClient.d.ts +0 -521
  53. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/OrgManagementClient.js +0 -840
  54. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/PoliciesManagementClient.d.ts +0 -304
  55. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/PoliciesManagementClient.js +0 -512
  56. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/RolesManagementClient.d.ts +0 -296
  57. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/RolesManagementClient.js +0 -711
  58. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/StatisticsManagementClient.d.ts +0 -56
  59. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/StatisticsManagementClient.js +0 -198
  60. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/UdfManagementClient.d.ts +0 -146
  61. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/UdfManagementClient.js +0 -264
  62. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/UserActionManagementClient.d.ts +0 -44
  63. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/UserActionManagementClient.js +0 -106
  64. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/UserpoolManagementClient.d.ts +0 -142
  65. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/UserpoolManagementClient.js +0 -241
  66. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/UsersManagementClient.d.ts +0 -784
  67. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/UsersManagementClient.js +0 -1251
  68. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/WhitelistManagementClient.d.ts +0 -114
  69. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/WhitelistManagementClient.js +0 -259
  70. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/types.d.ts +0 -992
  71. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/types.js +0 -96
  72. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/platform/express/index.d.ts +0 -30
  73. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/platform/express/index.js +0 -126
  74. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/testing-helper.d.ts +0 -31
  75. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/testing-helper.js +0 -67
  76. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/utils.d.ts +0 -53
  77. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/utils.js +0 -343
  78. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/version.d.ts +0 -1
  79. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/version.js +0 -5
  80. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/types/graphql.v2.d.ts +0 -6241
  81. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/types/graphql.v2.js +0 -251
  82. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/types/index.d.ts +0 -7
  83. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/types/index.js +0 -3
  84. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/index.d.ts +0 -7
  85. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/index.js +0 -8
  86. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/AuthenticationClient.d.ts +0 -1118
  87. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/AuthenticationClient.js +0 -2853
  88. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/AuthenticationTokenProvider.d.ts +0 -13
  89. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/AuthenticationTokenProvider.js +0 -53
  90. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/BaseAuthenticationClient.d.ts +0 -6
  91. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/BaseAuthenticationClient.js +0 -28
  92. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/EnterpriseAuthenticationClient.d.ts +0 -92
  93. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/EnterpriseAuthenticationClient.js +0 -247
  94. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/MfaAuthenticationClient.d.ts +0 -303
  95. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/MfaAuthenticationClient.js +0 -662
  96. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/QrCodeAuthenticationClient.d.ts +0 -232
  97. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/QrCodeAuthenticationClient.js +0 -619
  98. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/SocialAuthenticationClient.d.ts +0 -104
  99. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/SocialAuthenticationClient.js +0 -177
  100. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/types.d.ts +0 -341
  101. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/types.js +0 -66
  102. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/common/GraphqlClient.d.ts +0 -14
  103. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/common/GraphqlClient.js +0 -121
  104. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/common/HttpClient.d.ts +0 -19
  105. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/common/HttpClient.js +0 -145
  106. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/common/PublicKeyManager.d.ts +0 -18
  107. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/common/PublicKeyManager.js +0 -78
  108. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/graphqlapi.d.ts +0 -121
  109. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/graphqlapi.js +0 -1999
  110. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/AclManagementClient.d.ts +0 -236
  111. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/AclManagementClient.js +0 -860
  112. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/AgreementManagementClient.d.ts +0 -65
  113. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/AgreementManagementClient.js +0 -192
  114. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/ApplicationsManagementClient.d.ts +0 -216
  115. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/ApplicationsManagementClient.js +0 -530
  116. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/GroupsManagementClient.d.ts +0 -188
  117. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/GroupsManagementClient.js +0 -401
  118. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/MFAManagementClient.d.ts +0 -58
  119. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/MFAManagementClient.js +0 -123
  120. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/ManagementClient.d.ts +0 -79
  121. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/ManagementClient.js +0 -197
  122. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/ManagementTokenProvider.d.ts +0 -39
  123. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/ManagementTokenProvider.js +0 -153
  124. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/OrgManagementClient.d.ts +0 -521
  125. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/OrgManagementClient.js +0 -818
  126. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/PoliciesManagementClient.d.ts +0 -304
  127. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/PoliciesManagementClient.js +0 -509
  128. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/RolesManagementClient.d.ts +0 -296
  129. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/RolesManagementClient.js +0 -708
  130. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/StatisticsManagementClient.d.ts +0 -56
  131. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/StatisticsManagementClient.js +0 -195
  132. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/UdfManagementClient.d.ts +0 -146
  133. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/UdfManagementClient.js +0 -261
  134. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/UserActionManagementClient.d.ts +0 -44
  135. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/UserActionManagementClient.js +0 -103
  136. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/UserpoolManagementClient.d.ts +0 -142
  137. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/UserpoolManagementClient.js +0 -238
  138. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/UsersManagementClient.d.ts +0 -784
  139. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/UsersManagementClient.js +0 -1248
  140. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/WhitelistManagementClient.d.ts +0 -114
  141. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/WhitelistManagementClient.js +0 -256
  142. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/types.d.ts +0 -992
  143. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/types.js +0 -93
  144. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/platform/express/index.d.ts +0 -30
  145. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/platform/express/index.js +0 -123
  146. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/testing-helper.d.ts +0 -31
  147. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/testing-helper.js +0 -62
  148. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/utils.d.ts +0 -53
  149. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/utils.js +0 -336
  150. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/version.d.ts +0 -1
  151. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/version.js +0 -2
  152. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/types/graphql.v2.d.ts +0 -6241
  153. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/types/graphql.v2.js +0 -248
  154. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/types/index.d.ts +0 -7
  155. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/types/index.js +0 -1
  156. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/index.d.ts +0 -7
  157. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/index.js +0 -30
  158. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/AuthenticationClient.d.ts +0 -1118
  159. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/AuthenticationClient.js +0 -2869
  160. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/AuthenticationTokenProvider.d.ts +0 -13
  161. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/AuthenticationTokenProvider.js +0 -66
  162. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/BaseAuthenticationClient.d.ts +0 -6
  163. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/BaseAuthenticationClient.js +0 -41
  164. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/EnterpriseAuthenticationClient.d.ts +0 -92
  165. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/EnterpriseAuthenticationClient.js +0 -260
  166. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/MfaAuthenticationClient.d.ts +0 -303
  167. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/MfaAuthenticationClient.js +0 -675
  168. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/QrCodeAuthenticationClient.d.ts +0 -232
  169. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/QrCodeAuthenticationClient.js +0 -632
  170. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/SocialAuthenticationClient.d.ts +0 -104
  171. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/SocialAuthenticationClient.js +0 -190
  172. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/types.d.ts +0 -341
  173. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/types.js +0 -79
  174. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/common/GraphqlClient.d.ts +0 -14
  175. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/common/GraphqlClient.js +0 -137
  176. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/common/HttpClient.d.ts +0 -19
  177. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/common/HttpClient.js +0 -161
  178. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/common/PublicKeyManager.d.ts +0 -18
  179. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/common/PublicKeyManager.js +0 -91
  180. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/graphqlapi.d.ts +0 -121
  181. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/graphqlapi.js +0 -2012
  182. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/AclManagementClient.d.ts +0 -236
  183. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/AclManagementClient.js +0 -873
  184. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/AgreementManagementClient.d.ts +0 -65
  185. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/AgreementManagementClient.js +0 -205
  186. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/ApplicationsManagementClient.d.ts +0 -216
  187. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/ApplicationsManagementClient.js +0 -543
  188. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/GroupsManagementClient.d.ts +0 -188
  189. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/GroupsManagementClient.js +0 -414
  190. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/MFAManagementClient.d.ts +0 -58
  191. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/MFAManagementClient.js +0 -136
  192. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/ManagementClient.d.ts +0 -79
  193. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/ManagementClient.js +0 -213
  194. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/ManagementTokenProvider.d.ts +0 -39
  195. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/ManagementTokenProvider.js +0 -169
  196. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/OrgManagementClient.d.ts +0 -521
  197. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/OrgManagementClient.js +0 -850
  198. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/PoliciesManagementClient.d.ts +0 -304
  199. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/PoliciesManagementClient.js +0 -522
  200. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/RolesManagementClient.d.ts +0 -296
  201. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/RolesManagementClient.js +0 -721
  202. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/StatisticsManagementClient.d.ts +0 -56
  203. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/StatisticsManagementClient.js +0 -208
  204. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/UdfManagementClient.d.ts +0 -146
  205. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/UdfManagementClient.js +0 -274
  206. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/UserActionManagementClient.d.ts +0 -44
  207. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/UserActionManagementClient.js +0 -116
  208. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/UserpoolManagementClient.d.ts +0 -142
  209. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/UserpoolManagementClient.js +0 -251
  210. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/UsersManagementClient.d.ts +0 -784
  211. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/UsersManagementClient.js +0 -1261
  212. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/WhitelistManagementClient.d.ts +0 -114
  213. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/WhitelistManagementClient.js +0 -269
  214. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/types.d.ts +0 -992
  215. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/types.js +0 -106
  216. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/platform/express/index.d.ts +0 -30
  217. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/platform/express/index.js +0 -136
  218. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/testing-helper.d.ts +0 -31
  219. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/testing-helper.js +0 -77
  220. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/utils.d.ts +0 -53
  221. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/utils.js +0 -353
  222. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/version.d.ts +0 -1
  223. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/version.js +0 -15
  224. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/types/graphql.v2.d.ts +0 -6241
  225. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/types/graphql.v2.js +0 -261
  226. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/types/index.d.ts +0 -7
  227. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/types/index.js +0 -13
  228. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/CHANGELOG.md +0 -413
  229. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/LICENSE +0 -19
  230. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/README.md +0 -709
  231. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/UPGRADE_GUIDE.md +0 -162
  232. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/dist/axios.js +0 -1715
  233. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/dist/axios.map +0 -1
  234. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/dist/axios.min.js +0 -3
  235. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/dist/axios.min.map +0 -1
  236. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/index.d.ts +0 -157
  237. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/index.js +0 -1
  238. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/adapters/README.md +0 -37
  239. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/adapters/http.js +0 -279
  240. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/adapters/xhr.js +0 -180
  241. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/axios.js +0 -53
  242. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/cancel/Cancel.js +0 -19
  243. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/cancel/CancelToken.js +0 -57
  244. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/cancel/isCancel.js +0 -5
  245. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/Axios.js +0 -94
  246. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/InterceptorManager.js +0 -52
  247. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/README.md +0 -7
  248. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/buildFullPath.js +0 -20
  249. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/createError.js +0 -18
  250. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/dispatchRequest.js +0 -79
  251. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/enhanceError.js +0 -42
  252. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/mergeConfig.js +0 -73
  253. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/settle.js +0 -25
  254. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/transformData.js +0 -20
  255. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/defaults.js +0 -97
  256. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/README.md +0 -7
  257. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/bind.js +0 -11
  258. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/buildURL.js +0 -71
  259. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/combineURLs.js +0 -14
  260. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/cookies.js +0 -53
  261. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/deprecatedMethod.js +0 -24
  262. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/isAbsoluteURL.js +0 -14
  263. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/isURLSameOrigin.js +0 -68
  264. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/normalizeHeaderName.js +0 -12
  265. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/parseHeaders.js +0 -53
  266. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/spread.js +0 -27
  267. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/utils.js +0 -344
  268. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/package.json +0 -84
  269. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/follow-redirects/LICENSE +0 -18
  270. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/follow-redirects/README.md +0 -155
  271. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/follow-redirects/http.js +0 -1
  272. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/follow-redirects/https.js +0 -1
  273. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/follow-redirects/index.js +0 -322
  274. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/follow-redirects/package.json +0 -60
  275. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/package.json +0 -129
  276. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/tests/index.html +0 -21
  277. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/tsconfig.brower.json +0 -45
  278. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/tsconfig.node.json +0 -0
  279. data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/webpack.config.js +0 -41
  280. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/CHANGELOG.md +0 -685
  281. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/LICENSE +0 -19
  282. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/README.md +0 -800
  283. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/UPGRADE_GUIDE.md +0 -162
  284. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/dist/axios.js +0 -1756
  285. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/dist/axios.map +0 -1
  286. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/dist/axios.min.js +0 -3
  287. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/dist/axios.min.map +0 -1
  288. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/index.d.ts +0 -161
  289. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/index.js +0 -1
  290. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/adapters/README.md +0 -37
  291. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/adapters/http.js +0 -303
  292. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/adapters/xhr.js +0 -179
  293. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/axios.js +0 -56
  294. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/cancel/Cancel.js +0 -19
  295. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/cancel/CancelToken.js +0 -57
  296. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/cancel/isCancel.js +0 -5
  297. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/Axios.js +0 -95
  298. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/InterceptorManager.js +0 -52
  299. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/README.md +0 -7
  300. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/buildFullPath.js +0 -20
  301. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/createError.js +0 -18
  302. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/dispatchRequest.js +0 -79
  303. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/enhanceError.js +0 -42
  304. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/mergeConfig.js +0 -87
  305. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/settle.js +0 -25
  306. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/transformData.js +0 -20
  307. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/defaults.js +0 -98
  308. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/README.md +0 -7
  309. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/bind.js +0 -11
  310. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/buildURL.js +0 -70
  311. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/combineURLs.js +0 -14
  312. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/cookies.js +0 -53
  313. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/deprecatedMethod.js +0 -24
  314. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/isAbsoluteURL.js +0 -14
  315. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/isAxiosError.js +0 -11
  316. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/isURLSameOrigin.js +0 -68
  317. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/normalizeHeaderName.js +0 -12
  318. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/parseHeaders.js +0 -53
  319. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/spread.js +0 -27
  320. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/utils.js +0 -351
  321. data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/package.json +0 -86
  322. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/CONTRIBUTING.md +0 -28
  323. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/LICENSE +0 -24
  324. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/README.md +0 -249
  325. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/aes.js +0 -234
  326. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/bower.json +0 -35
  327. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/cipher-core.js +0 -890
  328. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/core.js +0 -797
  329. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/crypto-js.js +0 -6059
  330. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/docs/QuickStartGuide.wiki +0 -470
  331. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/enc-base64.js +0 -136
  332. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/enc-hex.js +0 -18
  333. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/enc-latin1.js +0 -18
  334. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/enc-utf16.js +0 -149
  335. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/enc-utf8.js +0 -18
  336. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/evpkdf.js +0 -134
  337. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/format-hex.js +0 -66
  338. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/format-openssl.js +0 -18
  339. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/hmac-md5.js +0 -18
  340. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/hmac-ripemd160.js +0 -18
  341. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/hmac-sha1.js +0 -18
  342. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/hmac-sha224.js +0 -18
  343. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/hmac-sha256.js +0 -18
  344. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/hmac-sha3.js +0 -18
  345. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/hmac-sha384.js +0 -18
  346. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/hmac-sha512.js +0 -18
  347. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/hmac.js +0 -143
  348. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/index.js +0 -18
  349. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/lib-typedarrays.js +0 -76
  350. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/md5.js +0 -268
  351. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/mode-cfb.js +0 -80
  352. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/mode-ctr-gladman.js +0 -116
  353. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/mode-ctr.js +0 -58
  354. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/mode-ecb.js +0 -40
  355. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/mode-ofb.js +0 -54
  356. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/package.json +0 -38
  357. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/pad-ansix923.js +0 -49
  358. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/pad-iso10126.js +0 -44
  359. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/pad-iso97971.js +0 -40
  360. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/pad-nopadding.js +0 -30
  361. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/pad-pkcs7.js +0 -18
  362. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/pad-zeropadding.js +0 -47
  363. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/pbkdf2.js +0 -145
  364. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/rabbit-legacy.js +0 -190
  365. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/rabbit.js +0 -192
  366. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/rc4.js +0 -139
  367. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/ripemd160.js +0 -267
  368. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/sha1.js +0 -150
  369. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/sha224.js +0 -80
  370. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/sha256.js +0 -199
  371. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/sha3.js +0 -326
  372. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/sha384.js +0 -83
  373. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/sha512.js +0 -326
  374. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/tripledes.js +0 -779
  375. data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/x64-core.js +0 -304
  376. data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/CHANGELOG.md +0 -395
  377. data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/LICENSE +0 -19
  378. data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/Makefile +0 -58
  379. data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/README.md +0 -368
  380. data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/karma.conf.js +0 -70
  381. data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/node.js +0 -1
  382. data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/package.json +0 -43
  383. data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/src/browser.js +0 -195
  384. data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/src/debug.js +0 -225
  385. data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/src/index.js +0 -10
  386. data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/src/node.js +0 -186
  387. data/lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/CHANGELOG.md +0 -210
  388. data/lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/LICENSE +0 -23
  389. data/lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/README.md +0 -275
  390. data/lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/config.js +0 -11
  391. data/lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/lib/cli-options.js +0 -13
  392. data/lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/lib/env-options.js +0 -18
  393. data/lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/lib/main.js +0 -118
  394. data/lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/package.json +0 -57
  395. data/lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/types/index.d.ts +0 -59
  396. data/lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/types/test.ts +0 -19
  397. data/lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/types/tsconfig.json +0 -15
  398. data/lib/authing_ruby/test/js_sdk_test/node_modules/dotenv/types/tslint.json +0 -6
  399. data/lib/authing_ruby/test/js_sdk_test/node_modules/follow-redirects/LICENSE +0 -18
  400. data/lib/authing_ruby/test/js_sdk_test/node_modules/follow-redirects/README.md +0 -148
  401. data/lib/authing_ruby/test/js_sdk_test/node_modules/follow-redirects/debug.js +0 -14
  402. data/lib/authing_ruby/test/js_sdk_test/node_modules/follow-redirects/http.js +0 -1
  403. data/lib/authing_ruby/test/js_sdk_test/node_modules/follow-redirects/https.js +0 -1
  404. data/lib/authing_ruby/test/js_sdk_test/node_modules/follow-redirects/index.js +0 -531
  405. data/lib/authing_ruby/test/js_sdk_test/node_modules/follow-redirects/package.json +0 -59
  406. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/LICENSE.txt +0 -107
  407. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/README.md +0 -192
  408. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/bin/jsencrypt.js +0 -249
  409. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/bin/jsencrypt.min.js +0 -2
  410. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/bin/jsencrypt.min.js.LICENSE.txt +0 -8
  411. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/JSEncrypt.d.ts +0 -116
  412. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/JSEncrypt.js +0 -186
  413. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/JSEncryptRSAKey.d.ts +0 -142
  414. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/JSEncryptRSAKey.js +0 -315
  415. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/index.d.ts +0 -3
  416. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/index.js +0 -3
  417. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/asn1.d.ts +0 -51
  418. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/asn1.js +0 -565
  419. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/base64.d.ts +0 -5
  420. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/base64.js +0 -88
  421. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/hex.d.ts +0 -3
  422. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/hex.js +0 -64
  423. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/int10.d.ts +0 -9
  424. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/int10.js +0 -87
  425. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/oids.d.ts +0 -9778
  426. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/oids.js +0 -1962
  427. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/base64.d.ts +0 -3
  428. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/base64.js +0 -76
  429. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/jsbn.d.ts +0 -98
  430. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/jsbn.js +0 -1754
  431. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/prng4.d.ts +0 -10
  432. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/prng4.js +0 -46
  433. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/rng.d.ts +0 -3
  434. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/rng.js +0 -76
  435. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/rsa.d.ts +0 -23
  436. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/rsa.js +0 -373
  437. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/util.d.ts +0 -7
  438. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/util.js +0 -58
  439. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsrsasign/asn1-1.0.js +0 -1593
  440. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsrsasign/yahoo.js +0 -69
  441. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/version.json +0 -1
  442. data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/package.json +0 -49
  443. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/Gruntfile.js +0 -78
  444. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/LICENSE +0 -21
  445. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/README.md +0 -55
  446. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/bower.json +0 -20
  447. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/build/jwt-decode.js +0 -125
  448. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/build/jwt-decode.min.js +0 -1
  449. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/jwt-decode.html +0 -2
  450. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/lib/atob.js +0 -38
  451. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/lib/base64_url_decode.js +0 -33
  452. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/lib/index.js +0 -26
  453. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/package.json +0 -37
  454. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/standalone.js +0 -16
  455. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/test/tests.js +0 -53
  456. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/test_harness.html +0 -29
  457. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/testem.yml +0 -46
  458. data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/testem_dev.yml +0 -1
  459. data/lib/authing_ruby/test/js_sdk_test/node_modules/ms/index.js +0 -152
  460. data/lib/authing_ruby/test/js_sdk_test/node_modules/ms/license.md +0 -21
  461. data/lib/authing_ruby/test/js_sdk_test/node_modules/ms/package.json +0 -37
  462. data/lib/authing_ruby/test/js_sdk_test/node_modules/ms/readme.md +0 -51
@@ -1,236 +0,0 @@
1
- import { GraphqlClient } from './../common/GraphqlClient';
2
- import { ManagementTokenProvider } from './ManagementTokenProvider';
3
- import { IAppAccessPolicy, IAppAccessPolicyQueryFilter, IApplication, IApplicationAccessPolicies, IResourceDto, IResourceQueryFilter, IResourceResponse, IResourceUpdateDto, ManagementClientOptions, Namespace, Namespaces, ProgrammaticAccessAccount, ProgrammaticAccessAccountList } from './types';
4
- import { AuthorizeResourceOpt, CommonMessage, PaginatedAuthorizedResources, PolicyAssignmentTargetType, ResourceType } from '../../types/graphql.v2';
5
- import { HttpClient } from '../common/HttpClient';
6
- /**
7
- * @class AclManagementClient 管理权限、访问控制
8
- * @description Authing 基于 PBAC(Policy Based Access Control,基于策略的访问控制)构建权限模型,
9
- * 可以和 RBAC (Role Based Access Control,基于角色的访问控制)结合,实现非常灵活、精细化的权限控制。
10
- * 此模块将此模型抽象成了两个方法: allow, isAllowed。
11
- *
12
- * @example
13
- *
14
- * 请使用以下方式使用该模块,而不要直接初始化该模块:
15
- *
16
- * \`\`\`javascript
17
- * import { ManagementClient } from "authing-js-sdk"
18
- * const managementClient = new ManagementClient({
19
- * userPoolId: "YOUR_USERPOOL_ID",
20
- * secret: "YOUR_USERPOOL_SECRET",
21
- * })
22
- * managementClient.acl.allow // 允许某个用户对某个资源进行某个操作
23
- * managementClient.acl.isAllowed // 判断某个用户是否对某个资源有某个操作权限
24
- * \`\`\`
25
- *
26
- * @name AclManagementClient
27
- */
28
- export declare class AclManagementClient {
29
- options: ManagementClientOptions;
30
- graphqlClient: GraphqlClient;
31
- httpClient: HttpClient;
32
- tokenProvider: ManagementTokenProvider;
33
- constructor(options: ManagementClientOptions, graphqlClient: GraphqlClient, httpClient: HttpClient, tokenProvider: ManagementTokenProvider);
34
- /**
35
- * 生成随机字符串
36
- * @param randomLenth 随机长度
37
- * @returns string
38
- */
39
- static randomString(randomLenth?: number): string;
40
- /**
41
- * @name allow
42
- * @name_zh 允许某个用户对某个资源进行某个操作
43
- *
44
- * @description 允许某个用户对某个资源进行某个操作
45
- *
46
- * @param {string} userId 用户 ID
47
- * @param {string} action 操作名称,推荐使用 \<resourceType\>:\<actionName\> 的格式,如 `books:edit`, `books:list`
48
- * @param {string} resource 资源名称, 必须为 \<resourceType\>:\<resourceId\> 格式或者为 *, 如 `*`, `books:123`, `books:*`
49
- * @example
50
- * managementClient.acl.allow('USERID1', 'books:123', 'books:read')
51
- * managementClient.acl.isAllowed('USERID1', 'books:123', 'books:read') // true
52
- * managementClient.acl.isAllowed('USERID1', 'books:123', 'books:edit') // false
53
- *
54
- * @example
55
- * managementClient.acl.allow('USERID2', 'books:*', 'books:*')
56
- * managementClient.acl.isAllowed('USERID2', 'books:123', 'books:read') // true
57
- * managementClient.acl.isAllowed('USERID2', 'books:124', 'books:edit') // true
58
- *
59
- * @returns {Promise<CommonMessage>}
60
- * @memberof AclManagementClient
61
- */
62
- allow(userId: string, resource: string, action: string, namespace: string): Promise<CommonMessage>;
63
- /**
64
- * @name isAllowed
65
- * @name_zh 判断某个用户是否对某个资源有某个操作权限
66
- *
67
- * @description 判断某个用户是否对某个资源有某个操作权限
68
- *
69
- * @param {string} userId 用户ID
70
- * @param {string} action 操作名称,推荐使用 \<resourceType\>:\<actionName\> 的格式,如 `books:edit`, `books:list`
71
- * @param {string} resource 资源名称, 必须为 \<resourceType\>:\<resourceId\> 格式或者为 *, 如 `*`, `books:123`, `books:*`
72
- * @example
73
- * managementClient.acl.isAllowed('USERID', 'books:*', 'books:edit')
74
- *
75
- * @returns {Promise<boolean>} 是否具备操作权限
76
- * @memberof AclManagementClient
77
- *
78
- */
79
- isAllowed(userId: string, resource: string, action: string, opts?: {
80
- namespace?: string;
81
- }): Promise<boolean>;
82
- /**
83
- * @description 获取用户被授权的所有资源
84
- *
85
- * @param userId
86
- * @param namespace
87
- */
88
- listAuthorizedResources(targetType: PolicyAssignmentTargetType, targetIdentifier: string, namespace: string, options?: {
89
- resourceType?: ResourceType;
90
- }): Promise<PaginatedAuthorizedResources>;
91
- /**
92
- * @description 将一个(类)资源授权给用户、角色、分组、组织机构,且可以分别指定不同的操作权限。
93
- *
94
- */
95
- authorizeResource(params: {
96
- namespace: string;
97
- resource: string;
98
- opts: AuthorizeResourceOpt[];
99
- }): Promise<CommonMessage>;
100
- /**
101
- * @description 获取具备某个(类)资源操作权限的用户、分组、角色、组织机构。
102
- * @param namespace {string} 权限分组标识
103
- * @param resource {string} 资源标识
104
- * @param actions {string[]} 资源操作标识
105
- * @param targetType {string} 筛选项,指定返回主体的类型,可选值为 'USER'、'ROLE'、'ORG'、'GROUP'
106
- */
107
- getAuthorizedTargets(options: {
108
- namespace: string;
109
- resource: string;
110
- resourceType: 'BUTTON' | 'UI' | 'MENU' | 'API' | 'DATA';
111
- actions?: {
112
- op: 'AND' | 'OR';
113
- list: string[];
114
- };
115
- targetType?: 'USER' | 'ROLE' | 'ORG' | 'GROUP';
116
- }): Promise<{
117
- totalCount?: number;
118
- list?: {
119
- targetType?: PolicyAssignmentTargetType;
120
- targetIdentifier?: string;
121
- actions?: string[];
122
- }[];
123
- }>;
124
- listResources(options?: IResourceQueryFilter): Promise<any>;
125
- /**
126
- * @deprecated use listResources
127
- * @param options
128
- */
129
- getResources(options?: IResourceQueryFilter): Promise<any>;
130
- createResource(options: IResourceDto): Promise<IResourceResponse>;
131
- updateResource(code: string, options: IResourceUpdateDto): Promise<IResourceResponse>;
132
- deleteResource(code: string, namespace: string): Promise<boolean>;
133
- getApplicationAccessPolicies(options: IAppAccessPolicyQueryFilter): Promise<IApplicationAccessPolicies>;
134
- enableApplicationAccessPolicy(options: IAppAccessPolicy): Promise<{
135
- code: number;
136
- message: string;
137
- }>;
138
- disableApplicationAccessPolicy(options: IAppAccessPolicy): Promise<{
139
- code: number;
140
- message: string;
141
- }>;
142
- deleteApplicationAccessPolicy(options: IAppAccessPolicy): Promise<{
143
- code: number;
144
- message: string;
145
- }>;
146
- allowAccessApplication(options: IAppAccessPolicy): Promise<{
147
- code: number;
148
- message: string;
149
- }>;
150
- denyAccessApplication(options: IAppAccessPolicy): Promise<{
151
- code: number;
152
- message: string;
153
- }>;
154
- updateDefaultApplicationAccessPolicy(options: {
155
- defaultStrategy: 'ALLOW_ALL' | 'DENY_ALL';
156
- appId: string;
157
- }): Promise<IApplication>;
158
- /**
159
- * 编程访问账号列表
160
- * @param appId 应用 ID
161
- * @param page 当前页数
162
- * @param limit 每页显示条数
163
- * @returns Promise<ProgrammaticAccessAccountList>
164
- */
165
- programmaticAccessAccountList(appId: string, page?: number, limit?: number): Promise<ProgrammaticAccessAccountList>;
166
- /**
167
- * 添加编程访问账号
168
- * @param appId 应用 ID
169
- * @param options.tokenLifetime AccessToken 过期时间(秒)
170
- * @param options.remarks 备注
171
- * @returns Promise<ProgrammaticAccessAccount>
172
- */
173
- createProgrammaticAccessAccount(appId: string, options?: {
174
- tokenLifetime: number;
175
- remarks?: string;
176
- }): Promise<ProgrammaticAccessAccount>;
177
- /**
178
- * 添加编程访问账号
179
- * @param programmaticAccessAccountId 编程访问账号 ID
180
- * @returns Promise<boolean>
181
- */
182
- deleteProgrammaticAccessAccount(programmaticAccessAccountId: string): Promise<boolean>;
183
- /**
184
- * 刷新编程访问账号密钥
185
- * @param programmaticAccessAccountId 编程访问账号 ID
186
- * @param programmaticAccessAccountSecret 编程访问账号 Secret
187
- * @returns Promise<ProgrammaticAccessAccount>
188
- */
189
- refreshProgrammaticAccessAccountSecret(programmaticAccessAccountId: string, programmaticAccessAccountSecret?: string): Promise<ProgrammaticAccessAccount>;
190
- /**
191
- * 启用编程访问账号
192
- * @param programmaticAccessAccountId 编程访问账号 ID
193
- * @returns Promise<ProgrammaticAccessAccount>
194
- */
195
- enableProgrammaticAccessAccount(programmaticAccessAccountId: string): Promise<ProgrammaticAccessAccount>;
196
- /**
197
- * 禁用编程访问账号
198
- * @param programmaticAccessAccountId 编程访问账号 ID
199
- * @returns Promise<ProgrammaticAccessAccount>
200
- */
201
- disableProgrammaticAccessAccount(programmaticAccessAccountId: string): Promise<ProgrammaticAccessAccount>;
202
- /**
203
- * 权限分组列表
204
- * @param page 当前页数
205
- * @param limit 每页显示条数
206
- * @returns Promise<Resources>
207
- */
208
- listNamespaces(page?: number, limit?: number): Promise<Namespaces>;
209
- /**
210
- * 删除权限分组
211
- * @param code 权限分组 Code
212
- * @returns Promise<boolean>
213
- */
214
- deleteNamespace(code: string): Promise<boolean>;
215
- /**
216
- * 创建权限分组
217
- * @param code 权限分组 Code
218
- * @param name 权限分组名称
219
- * @param description 权限分组描述
220
- * @returns Promise<boolean>
221
- */
222
- createNamespace(code: string, name: string, description?: string): Promise<Namespace>;
223
- /**
224
- * 修改权限分组
225
- * @param code 权限分组 Code
226
- * @param name 权限分组名称
227
- * @param code 权限分组 Code
228
- * @param description 权限分组描述
229
- * @returns Promise<boolean>
230
- */
231
- updateNamespace(code: string, updates: {
232
- name?: string;
233
- code?: string;
234
- description?: string;
235
- }): Promise<Namespace>;
236
- }
@@ -1,860 +0,0 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
13
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
14
- return new (P || (P = Promise))(function (resolve, reject) {
15
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
16
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
17
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
18
- step((generator = generator.apply(thisArg, _arguments || [])).next());
19
- });
20
- };
21
- var __generator = (this && this.__generator) || function (thisArg, body) {
22
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
23
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
24
- function verb(n) { return function (v) { return step([n, v]); }; }
25
- function step(op) {
26
- if (f) throw new TypeError("Generator is already executing.");
27
- while (_) try {
28
- 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;
29
- if (y = 0, t) op = [op[0] & 2, t.value];
30
- switch (op[0]) {
31
- case 0: case 1: t = op; break;
32
- case 4: _.label++; return { value: op[1], done: false };
33
- case 5: _.label++; y = op[1]; op = [0]; continue;
34
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
35
- default:
36
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
37
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
38
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
39
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
40
- if (t[2]) _.ops.pop();
41
- _.trys.pop(); continue;
42
- }
43
- op = body.call(thisArg, _);
44
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
45
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
46
- }
47
- };
48
- import { allow, authorizeResource, isAllowed, listAuthorizedResources, authorizedTargets } from '../graphqlapi';
49
- import { formatAuthorizedResources, objectToQueryString } from '../utils';
50
- /**
51
- * @class AclManagementClient 管理权限、访问控制
52
- * @description Authing 基于 PBAC(Policy Based Access Control,基于策略的访问控制)构建权限模型,
53
- * 可以和 RBAC (Role Based Access Control,基于角色的访问控制)结合,实现非常灵活、精细化的权限控制。
54
- * 此模块将此模型抽象成了两个方法: allow, isAllowed。
55
- *
56
- * @example
57
- *
58
- * 请使用以下方式使用该模块,而不要直接初始化该模块:
59
- *
60
- * \`\`\`javascript
61
- * import { ManagementClient } from "authing-js-sdk"
62
- * const managementClient = new ManagementClient({
63
- * userPoolId: "YOUR_USERPOOL_ID",
64
- * secret: "YOUR_USERPOOL_SECRET",
65
- * })
66
- * managementClient.acl.allow // 允许某个用户对某个资源进行某个操作
67
- * managementClient.acl.isAllowed // 判断某个用户是否对某个资源有某个操作权限
68
- * \`\`\`
69
- *
70
- * @name AclManagementClient
71
- */
72
- var AclManagementClient = /** @class */ (function () {
73
- function AclManagementClient(options, graphqlClient, httpClient, tokenProvider) {
74
- this.options = options;
75
- this.graphqlClient = graphqlClient;
76
- this.httpClient = httpClient;
77
- this.tokenProvider = tokenProvider;
78
- }
79
- /**
80
- * 生成随机字符串
81
- * @param randomLenth 随机长度
82
- * @returns string
83
- */
84
- AclManagementClient.randomString = function (randomLenth) {
85
- if (randomLenth === void 0) { randomLenth = 32; }
86
- randomLenth = randomLenth || 32;
87
- var t = 'abcdefhijkmnprstwxyz2345678';
88
- var a = t.length;
89
- var n = '';
90
- for (var i = 0; i < randomLenth; i++) {
91
- n += t.charAt(Math.floor(Math.random() * a));
92
- }
93
- return n;
94
- };
95
- /**
96
- * @name allow
97
- * @name_zh 允许某个用户对某个资源进行某个操作
98
- *
99
- * @description 允许某个用户对某个资源进行某个操作
100
- *
101
- * @param {string} userId 用户 ID
102
- * @param {string} action 操作名称,推荐使用 \<resourceType\>:\<actionName\> 的格式,如 `books:edit`, `books:list`
103
- * @param {string} resource 资源名称, 必须为 \<resourceType\>:\<resourceId\> 格式或者为 *, 如 `*`, `books:123`, `books:*`
104
- * @example
105
- * managementClient.acl.allow('USERID1', 'books:123', 'books:read')
106
- * managementClient.acl.isAllowed('USERID1', 'books:123', 'books:read') // true
107
- * managementClient.acl.isAllowed('USERID1', 'books:123', 'books:edit') // false
108
- *
109
- * @example
110
- * managementClient.acl.allow('USERID2', 'books:*', 'books:*')
111
- * managementClient.acl.isAllowed('USERID2', 'books:123', 'books:read') // true
112
- * managementClient.acl.isAllowed('USERID2', 'books:124', 'books:edit') // true
113
- *
114
- * @returns {Promise<CommonMessage>}
115
- * @memberof AclManagementClient
116
- */
117
- AclManagementClient.prototype.allow = function (userId, resource, action, namespace) {
118
- return __awaiter(this, void 0, void 0, function () {
119
- var data;
120
- return __generator(this, function (_a) {
121
- switch (_a.label) {
122
- case 0: return [4 /*yield*/, allow(this.graphqlClient, this.tokenProvider, {
123
- resource: resource,
124
- action: action,
125
- userId: userId,
126
- namespace: namespace
127
- })];
128
- case 1:
129
- data = (_a.sent()).allow;
130
- return [2 /*return*/, data];
131
- }
132
- });
133
- });
134
- };
135
- /**
136
- * @name isAllowed
137
- * @name_zh 判断某个用户是否对某个资源有某个操作权限
138
- *
139
- * @description 判断某个用户是否对某个资源有某个操作权限
140
- *
141
- * @param {string} userId 用户ID
142
- * @param {string} action 操作名称,推荐使用 \<resourceType\>:\<actionName\> 的格式,如 `books:edit`, `books:list`
143
- * @param {string} resource 资源名称, 必须为 \<resourceType\>:\<resourceId\> 格式或者为 *, 如 `*`, `books:123`, `books:*`
144
- * @example
145
- * managementClient.acl.isAllowed('USERID', 'books:*', 'books:edit')
146
- *
147
- * @returns {Promise<boolean>} 是否具备操作权限
148
- * @memberof AclManagementClient
149
- *
150
- */
151
- AclManagementClient.prototype.isAllowed = function (userId, resource, action, opts) {
152
- return __awaiter(this, void 0, void 0, function () {
153
- var namespace, isActionAllowed;
154
- return __generator(this, function (_a) {
155
- switch (_a.label) {
156
- case 0:
157
- namespace = (opts || {}).namespace;
158
- return [4 /*yield*/, isAllowed(this.graphqlClient, this.tokenProvider, {
159
- resource: resource,
160
- action: action,
161
- userId: userId,
162
- namespace: namespace
163
- })];
164
- case 1:
165
- isActionAllowed = (_a.sent()).isActionAllowed;
166
- return [2 /*return*/, isActionAllowed];
167
- }
168
- });
169
- });
170
- };
171
- /**
172
- * @description 获取用户被授权的所有资源
173
- *
174
- * @param userId
175
- * @param namespace
176
- */
177
- AclManagementClient.prototype.listAuthorizedResources = function (targetType, targetIdentifier, namespace, options) {
178
- return __awaiter(this, void 0, void 0, function () {
179
- var resourceType, _a, list, totalCount;
180
- return __generator(this, function (_b) {
181
- switch (_b.label) {
182
- case 0:
183
- resourceType = (options || {}).resourceType;
184
- return [4 /*yield*/, listAuthorizedResources(this.graphqlClient, this.tokenProvider, {
185
- targetType: targetType,
186
- targetIdentifier: targetIdentifier,
187
- namespace: namespace,
188
- resourceType: resourceType
189
- })];
190
- case 1:
191
- _a = (_b.sent()).authorizedResources, list = _a.list, totalCount = _a.totalCount;
192
- list = formatAuthorizedResources(list);
193
- return [2 /*return*/, {
194
- list: list,
195
- totalCount: totalCount
196
- }];
197
- }
198
- });
199
- });
200
- };
201
- /**
202
- * @description 将一个(类)资源授权给用户、角色、分组、组织机构,且可以分别指定不同的操作权限。
203
- *
204
- */
205
- AclManagementClient.prototype.authorizeResource = function (params) {
206
- return __awaiter(this, void 0, void 0, function () {
207
- var namespace, resource, opts, data;
208
- return __generator(this, function (_a) {
209
- switch (_a.label) {
210
- case 0:
211
- namespace = params.namespace, resource = params.resource, opts = params.opts;
212
- return [4 /*yield*/, authorizeResource(this.graphqlClient, this.tokenProvider, {
213
- namespace: namespace,
214
- resource: resource,
215
- opts: opts
216
- })];
217
- case 1:
218
- data = (_a.sent()).authorizeResource;
219
- return [2 /*return*/, data];
220
- }
221
- });
222
- });
223
- };
224
- /**
225
- * @description 获取具备某个(类)资源操作权限的用户、分组、角色、组织机构。
226
- * @param namespace {string} 权限分组标识
227
- * @param resource {string} 资源标识
228
- * @param actions {string[]} 资源操作标识
229
- * @param targetType {string} 筛选项,指定返回主体的类型,可选值为 'USER'、'ROLE'、'ORG'、'GROUP'
230
- */
231
- AclManagementClient.prototype.getAuthorizedTargets = function (options) {
232
- return __awaiter(this, void 0, void 0, function () {
233
- var data;
234
- return __generator(this, function (_a) {
235
- switch (_a.label) {
236
- case 0:
237
- if (!options) {
238
- throw new Error('请传入 options.namespace、options.resource、options.actions,含义为权限分组标识、资源标识、资源操作标识');
239
- }
240
- if (!options.namespace) {
241
- throw new Error('请传入 options.namespace,含义为权限分组标识');
242
- }
243
- if (!options.resource) {
244
- throw new Error('请传入 options.resource,含义为资源标识');
245
- }
246
- if (!options.resourceType) {
247
- throw new Error('请传入 options.resourceType,含义为资源类型');
248
- }
249
- return [4 /*yield*/, authorizedTargets(this.graphqlClient, this.tokenProvider, {
250
- namespace: options.namespace,
251
- resourceType: options.resourceType,
252
- resource: options.resource,
253
- targetType: options.targetType,
254
- actions: options.actions
255
- })];
256
- case 1:
257
- data = (_a.sent()).authorizedTargets;
258
- return [2 /*return*/, data];
259
- }
260
- });
261
- });
262
- };
263
- AclManagementClient.prototype.listResources = function (options) {
264
- return __awaiter(this, void 0, void 0, function () {
265
- return __generator(this, function (_a) {
266
- switch (_a.label) {
267
- case 0: return [4 /*yield*/, this.httpClient.request({
268
- method: 'GET',
269
- url: this.options.host + "/api/v2/resources",
270
- params: {
271
- namespace: (options === null || options === void 0 ? void 0 : options.namespace) || (options === null || options === void 0 ? void 0 : options.namespaceCode),
272
- type: options === null || options === void 0 ? void 0 : options.type,
273
- limit: (options === null || options === void 0 ? void 0 : options.limit) || 10,
274
- page: (options === null || options === void 0 ? void 0 : options.page) || 1
275
- }
276
- })];
277
- case 1: return [2 /*return*/, _a.sent()];
278
- }
279
- });
280
- });
281
- };
282
- /**
283
- * @deprecated use listResources
284
- * @param options
285
- */
286
- AclManagementClient.prototype.getResources = function (options) {
287
- return __awaiter(this, void 0, void 0, function () {
288
- return __generator(this, function (_a) {
289
- switch (_a.label) {
290
- case 0: return [4 /*yield*/, this.listResources(options)];
291
- case 1: return [2 /*return*/, _a.sent()];
292
- }
293
- });
294
- });
295
- };
296
- AclManagementClient.prototype.createResource = function (options) {
297
- return __awaiter(this, void 0, void 0, function () {
298
- return __generator(this, function (_a) {
299
- switch (_a.label) {
300
- case 0:
301
- if (!options) {
302
- throw new Error('请传入资源数据');
303
- }
304
- if (!options.code) {
305
- throw new Error('请为资源设定一个资源标识符');
306
- }
307
- if (!options.actions || (options === null || options === void 0 ? void 0 : options.actions.length) === 0) {
308
- throw new Error('请至少定义一个资源操作');
309
- }
310
- if (!options.namespace) {
311
- throw new Error('请传入权限分组标识符');
312
- }
313
- return [4 /*yield*/, this.httpClient.request({
314
- method: 'POST',
315
- url: this.options.host + "/api/v2/resources",
316
- data: options
317
- })];
318
- case 1: return [2 /*return*/, _a.sent()];
319
- }
320
- });
321
- });
322
- };
323
- AclManagementClient.prototype.updateResource = function (code, options) {
324
- return __awaiter(this, void 0, void 0, function () {
325
- return __generator(this, function (_a) {
326
- switch (_a.label) {
327
- case 0:
328
- if (!code) {
329
- throw new Error('请传入资源标识符');
330
- }
331
- return [4 /*yield*/, this.httpClient.request({
332
- method: 'POST',
333
- url: this.options.host + "/api/v2/resources/" + code,
334
- data: options
335
- })];
336
- case 1: return [2 /*return*/, _a.sent()];
337
- }
338
- });
339
- });
340
- };
341
- AclManagementClient.prototype.deleteResource = function (code, namespace) {
342
- return __awaiter(this, void 0, void 0, function () {
343
- return __generator(this, function (_a) {
344
- switch (_a.label) {
345
- case 0:
346
- if (!code) {
347
- throw new Error('请传入资源标识符');
348
- }
349
- if (!namespace) {
350
- throw new Error('请传入权限分组标识符');
351
- }
352
- return [4 /*yield*/, this.httpClient.request({
353
- method: 'DELETE',
354
- url: this.options.host + "/api/v2/resources/" + code,
355
- params: {
356
- namespace: namespace
357
- }
358
- })];
359
- case 1:
360
- _a.sent();
361
- return [2 /*return*/, true];
362
- }
363
- });
364
- });
365
- };
366
- AclManagementClient.prototype.getApplicationAccessPolicies = function (options) {
367
- return __awaiter(this, void 0, void 0, function () {
368
- var appId, page, limit;
369
- return __generator(this, function (_a) {
370
- switch (_a.label) {
371
- case 0:
372
- if (!(options === null || options === void 0 ? void 0 : options.appId)) {
373
- throw new Error('请传入 appId');
374
- }
375
- appId = options.appId, page = options.page, limit = options.limit;
376
- return [4 /*yield*/, this.httpClient.request({
377
- method: 'GET',
378
- url: this.options.host + "/api/v2/applications/" + appId + "/authorization/records",
379
- params: {
380
- page: page,
381
- limit: limit
382
- }
383
- })];
384
- case 1: return [2 /*return*/, _a.sent()];
385
- }
386
- });
387
- });
388
- };
389
- AclManagementClient.prototype.enableApplicationAccessPolicy = function (options) {
390
- return __awaiter(this, void 0, void 0, function () {
391
- var namespace, targetIdentifiers, targetType, appId, inheritByChildren;
392
- return __generator(this, function (_a) {
393
- switch (_a.label) {
394
- case 0:
395
- if (!(options === null || options === void 0 ? void 0 : options.appId)) {
396
- throw new Error('请传入 appId');
397
- }
398
- if (!(options === null || options === void 0 ? void 0 : options.targetType)) {
399
- throw new Error('请传入主体类型,可选值为 USER、ROLE、ORG、GROUP,含义为用户、角色、组织机构节点、用户分组');
400
- }
401
- if (!(options === null || options === void 0 ? void 0 : options.targetIdentifiers)) {
402
- throw new Error('请传入主体 id');
403
- }
404
- namespace = options.namespace, targetIdentifiers = options.targetIdentifiers, targetType = options.targetType, appId = options.appId, inheritByChildren = options.inheritByChildren;
405
- return [4 /*yield*/, this.httpClient.request({
406
- method: 'POST',
407
- url: this.options.host + "/api/v2/applications/" + appId + "/authorization/enable-effect",
408
- data: {
409
- targetType: targetType,
410
- namespace: namespace,
411
- targetIdentifiers: targetIdentifiers,
412
- inheritByChildren: inheritByChildren
413
- }
414
- })];
415
- case 1:
416
- _a.sent();
417
- return [2 /*return*/, { code: 200, message: '启用应用访问控制策略成功' }];
418
- }
419
- });
420
- });
421
- };
422
- AclManagementClient.prototype.disableApplicationAccessPolicy = function (options) {
423
- return __awaiter(this, void 0, void 0, function () {
424
- var namespace, targetIdentifiers, targetType, appId, inheritByChildren;
425
- return __generator(this, function (_a) {
426
- switch (_a.label) {
427
- case 0:
428
- if (!(options === null || options === void 0 ? void 0 : options.appId)) {
429
- throw new Error('请传入 appId');
430
- }
431
- if (!(options === null || options === void 0 ? void 0 : options.targetType)) {
432
- throw new Error('请传入主体类型,可选值为 USER、ROLE、ORG、GROUP,含义为用户、角色、组织机构节点、用户分组');
433
- }
434
- if (!(options === null || options === void 0 ? void 0 : options.targetIdentifiers)) {
435
- throw new Error('请传入主体 id');
436
- }
437
- namespace = options.namespace, targetIdentifiers = options.targetIdentifiers, targetType = options.targetType, appId = options.appId, inheritByChildren = options.inheritByChildren;
438
- return [4 /*yield*/, this.httpClient.request({
439
- method: 'POST',
440
- url: this.options.host + "/api/v2/applications/" + appId + "/authorization/disable-effect",
441
- data: {
442
- targetType: targetType,
443
- namespace: namespace,
444
- targetIdentifiers: targetIdentifiers,
445
- inheritByChildren: inheritByChildren
446
- }
447
- })];
448
- case 1:
449
- _a.sent();
450
- return [2 /*return*/, { code: 200, message: '停用应用访问控制策略成功' }];
451
- }
452
- });
453
- });
454
- };
455
- AclManagementClient.prototype.deleteApplicationAccessPolicy = function (options) {
456
- return __awaiter(this, void 0, void 0, function () {
457
- var namespace, targetIdentifiers, targetType, appId, inheritByChildren;
458
- return __generator(this, function (_a) {
459
- switch (_a.label) {
460
- case 0:
461
- if (!(options === null || options === void 0 ? void 0 : options.appId)) {
462
- throw new Error('请传入 appId');
463
- }
464
- if (!(options === null || options === void 0 ? void 0 : options.targetType)) {
465
- throw new Error('请传入主体类型,可选值为 USER、ROLE、ORG、GROUP,含义为用户、角色、组织机构节点、用户分组');
466
- }
467
- if (!(options === null || options === void 0 ? void 0 : options.targetIdentifiers)) {
468
- throw new Error('请传入主体 id');
469
- }
470
- namespace = options.namespace, targetIdentifiers = options.targetIdentifiers, targetType = options.targetType, appId = options.appId, inheritByChildren = options.inheritByChildren;
471
- return [4 /*yield*/, this.httpClient.request({
472
- method: 'POST',
473
- url: this.options.host + "/api/v2/applications/" + appId + "/authorization/revoke",
474
- data: {
475
- targetType: targetType,
476
- namespace: namespace,
477
- targetIdentifiers: targetIdentifiers,
478
- inheritByChildren: inheritByChildren
479
- }
480
- })];
481
- case 1:
482
- _a.sent();
483
- return [2 /*return*/, { code: 200, message: '删除应用访问控制策略成功' }];
484
- }
485
- });
486
- });
487
- };
488
- AclManagementClient.prototype.allowAccessApplication = function (options) {
489
- return __awaiter(this, void 0, void 0, function () {
490
- var namespace, targetIdentifiers, targetType, appId, inheritByChildren;
491
- return __generator(this, function (_a) {
492
- switch (_a.label) {
493
- case 0:
494
- if (!(options === null || options === void 0 ? void 0 : options.appId)) {
495
- throw new Error('请传入 appId');
496
- }
497
- if (!(options === null || options === void 0 ? void 0 : options.targetType)) {
498
- throw new Error('请传入主体类型,可选值为 USER、ROLE、ORG、GROUP,含义为用户、角色、组织机构节点、用户分组');
499
- }
500
- if (!(options === null || options === void 0 ? void 0 : options.targetIdentifiers)) {
501
- throw new Error('请传入主体 id');
502
- }
503
- namespace = options.namespace, targetIdentifiers = options.targetIdentifiers, targetType = options.targetType, appId = options.appId, inheritByChildren = options.inheritByChildren;
504
- return [4 /*yield*/, this.httpClient.request({
505
- method: 'POST',
506
- url: this.options.host + "/api/v2/applications/" + appId + "/authorization/allow",
507
- data: {
508
- targetType: targetType,
509
- namespace: namespace,
510
- targetIdentifiers: targetIdentifiers,
511
- inheritByChildren: inheritByChildren
512
- }
513
- })];
514
- case 1:
515
- _a.sent();
516
- return [2 /*return*/, { code: 200, message: '允许主体访问应用的策略配置已生效' }];
517
- }
518
- });
519
- });
520
- };
521
- AclManagementClient.prototype.denyAccessApplication = function (options) {
522
- return __awaiter(this, void 0, void 0, function () {
523
- var namespace, targetIdentifiers, targetType, appId, inheritByChildren;
524
- return __generator(this, function (_a) {
525
- switch (_a.label) {
526
- case 0:
527
- if (!(options === null || options === void 0 ? void 0 : options.appId)) {
528
- throw new Error('请传入 appId');
529
- }
530
- if (!(options === null || options === void 0 ? void 0 : options.targetType)) {
531
- throw new Error('请传入主体类型,可选值为 USER、ROLE、ORG、GROUP,含义为用户、角色、组织机构节点、用户分组');
532
- }
533
- if (!(options === null || options === void 0 ? void 0 : options.targetIdentifiers)) {
534
- throw new Error('请传入主体 id');
535
- }
536
- namespace = options.namespace, targetIdentifiers = options.targetIdentifiers, targetType = options.targetType, appId = options.appId, inheritByChildren = options.inheritByChildren;
537
- return [4 /*yield*/, this.httpClient.request({
538
- method: 'POST',
539
- url: this.options.host + "/api/v2/applications/" + appId + "/authorization/deny",
540
- data: {
541
- targetType: targetType,
542
- namespace: namespace,
543
- targetIdentifiers: targetIdentifiers,
544
- inheritByChildren: inheritByChildren
545
- }
546
- })];
547
- case 1:
548
- _a.sent();
549
- return [2 /*return*/, { code: 200, message: '拒绝主体访问应用的策略配置已生效' }];
550
- }
551
- });
552
- });
553
- };
554
- AclManagementClient.prototype.updateDefaultApplicationAccessPolicy = function (options) {
555
- return __awaiter(this, void 0, void 0, function () {
556
- return __generator(this, function (_a) {
557
- switch (_a.label) {
558
- case 0:
559
- if (!(options === null || options === void 0 ? void 0 : options.appId)) {
560
- throw new Error('请传入应用 id');
561
- }
562
- if (!(options === null || options === void 0 ? void 0 : options.defaultStrategy)) {
563
- throw new Error('请传入默认策略,可选值为 ALLOW_ALL、DENY_ALL,含义为默认允许所有用户登录应用、默认拒绝所有用户登录应用');
564
- }
565
- return [4 /*yield*/, this.httpClient.request({
566
- method: 'POST',
567
- url: this.options.host + "/api/v2/applications/" + options.appId,
568
- data: {
569
- permissionStrategy: { defaultStrategy: options.defaultStrategy }
570
- }
571
- })];
572
- case 1: return [2 /*return*/, _a.sent()];
573
- }
574
- });
575
- });
576
- };
577
- /**
578
- * 编程访问账号列表
579
- * @param appId 应用 ID
580
- * @param page 当前页数
581
- * @param limit 每页显示条数
582
- * @returns Promise<ProgrammaticAccessAccountList>
583
- */
584
- AclManagementClient.prototype.programmaticAccessAccountList = function (appId, page, limit) {
585
- if (page === void 0) { page = 1; }
586
- if (limit === void 0) { limit = 10; }
587
- return __awaiter(this, void 0, void 0, function () {
588
- var result;
589
- return __generator(this, function (_a) {
590
- switch (_a.label) {
591
- case 0: return [4 /*yield*/, this.httpClient.request({
592
- method: 'GET',
593
- url: this.options.host + "/api/v2/applications/" + appId + "/programmatic-access-accounts?limit=" + limit + "&page=" + page
594
- })];
595
- case 1:
596
- result = _a.sent();
597
- return [2 /*return*/, result];
598
- }
599
- });
600
- });
601
- };
602
- /**
603
- * 添加编程访问账号
604
- * @param appId 应用 ID
605
- * @param options.tokenLifetime AccessToken 过期时间(秒)
606
- * @param options.remarks 备注
607
- * @returns Promise<ProgrammaticAccessAccount>
608
- */
609
- AclManagementClient.prototype.createProgrammaticAccessAccount = function (appId, options) {
610
- if (options === void 0) { options = {
611
- tokenLifetime: 600
612
- }; }
613
- return __awaiter(this, void 0, void 0, function () {
614
- var result;
615
- return __generator(this, function (_a) {
616
- switch (_a.label) {
617
- case 0: return [4 /*yield*/, this.httpClient.request({
618
- method: 'POST',
619
- url: this.options.host + "/api/v2/applications/" + appId + "/programmatic-access-accounts",
620
- data: __assign({}, options)
621
- })];
622
- case 1:
623
- result = _a.sent();
624
- return [2 /*return*/, result];
625
- }
626
- });
627
- });
628
- };
629
- /**
630
- * 添加编程访问账号
631
- * @param programmaticAccessAccountId 编程访问账号 ID
632
- * @returns Promise<boolean>
633
- */
634
- AclManagementClient.prototype.deleteProgrammaticAccessAccount = function (programmaticAccessAccountId) {
635
- return __awaiter(this, void 0, void 0, function () {
636
- var error_1;
637
- return __generator(this, function (_a) {
638
- switch (_a.label) {
639
- case 0:
640
- _a.trys.push([0, 2, , 3]);
641
- return [4 /*yield*/, this.httpClient.request({
642
- method: 'DELETE',
643
- url: this.options.host + "/api/v2/applications/programmatic-access-accounts?id=" + programmaticAccessAccountId
644
- })];
645
- case 1:
646
- _a.sent();
647
- return [2 /*return*/, true];
648
- case 2:
649
- error_1 = _a.sent();
650
- throw error_1;
651
- case 3: return [2 /*return*/];
652
- }
653
- });
654
- });
655
- };
656
- /**
657
- * 刷新编程访问账号密钥
658
- * @param programmaticAccessAccountId 编程访问账号 ID
659
- * @param programmaticAccessAccountSecret 编程访问账号 Secret
660
- * @returns Promise<ProgrammaticAccessAccount>
661
- */
662
- AclManagementClient.prototype.refreshProgrammaticAccessAccountSecret = function (programmaticAccessAccountId, programmaticAccessAccountSecret) {
663
- if (programmaticAccessAccountSecret === void 0) { programmaticAccessAccountSecret = AclManagementClient.randomString(32); }
664
- return __awaiter(this, void 0, void 0, function () {
665
- var result;
666
- return __generator(this, function (_a) {
667
- switch (_a.label) {
668
- case 0: return [4 /*yield*/, this.httpClient.request({
669
- method: 'PATCH',
670
- url: this.options.host + "/api/v2/applications/programmatic-access-accounts",
671
- data: {
672
- id: programmaticAccessAccountId,
673
- secret: programmaticAccessAccountSecret
674
- }
675
- })];
676
- case 1:
677
- result = _a.sent();
678
- return [2 /*return*/, result];
679
- }
680
- });
681
- });
682
- };
683
- /**
684
- * 启用编程访问账号
685
- * @param programmaticAccessAccountId 编程访问账号 ID
686
- * @returns Promise<ProgrammaticAccessAccount>
687
- */
688
- AclManagementClient.prototype.enableProgrammaticAccessAccount = function (programmaticAccessAccountId) {
689
- return __awaiter(this, void 0, void 0, function () {
690
- var result;
691
- return __generator(this, function (_a) {
692
- switch (_a.label) {
693
- case 0: return [4 /*yield*/, this.httpClient.request({
694
- method: 'PATCH',
695
- url: this.options.host + "/api/v2/applications/programmatic-access-accounts",
696
- data: {
697
- id: programmaticAccessAccountId,
698
- enabled: true
699
- }
700
- })];
701
- case 1:
702
- result = _a.sent();
703
- return [2 /*return*/, result];
704
- }
705
- });
706
- });
707
- };
708
- /**
709
- * 禁用编程访问账号
710
- * @param programmaticAccessAccountId 编程访问账号 ID
711
- * @returns Promise<ProgrammaticAccessAccount>
712
- */
713
- AclManagementClient.prototype.disableProgrammaticAccessAccount = function (programmaticAccessAccountId) {
714
- return __awaiter(this, void 0, void 0, function () {
715
- var result;
716
- return __generator(this, function (_a) {
717
- switch (_a.label) {
718
- case 0: return [4 /*yield*/, this.httpClient.request({
719
- method: 'PATCH',
720
- url: this.options.host + "/api/v2/applications/programmatic-access-accounts",
721
- data: {
722
- id: programmaticAccessAccountId,
723
- enabled: false
724
- }
725
- })];
726
- case 1:
727
- result = _a.sent();
728
- return [2 /*return*/, result];
729
- }
730
- });
731
- });
732
- };
733
- /**
734
- * 权限分组列表
735
- * @param page 当前页数
736
- * @param limit 每页显示条数
737
- * @returns Promise<Resources>
738
- */
739
- AclManagementClient.prototype.listNamespaces = function (page, limit) {
740
- if (page === void 0) { page = 1; }
741
- if (limit === void 0) { limit = 10; }
742
- return __awaiter(this, void 0, void 0, function () {
743
- var result;
744
- return __generator(this, function (_a) {
745
- switch (_a.label) {
746
- case 0: return [4 /*yield*/, this.httpClient.request({
747
- method: 'GET',
748
- url: this.options.host + "/api/v2/resource-namespace/" + this.options.userPoolId +
749
- objectToQueryString({
750
- page: page === null || page === void 0 ? void 0 : page.toString(),
751
- limit: limit === null || limit === void 0 ? void 0 : limit.toString()
752
- })
753
- })];
754
- case 1:
755
- result = _a.sent();
756
- return [2 /*return*/, result];
757
- }
758
- });
759
- });
760
- };
761
- /**
762
- * 删除权限分组
763
- * @param code 权限分组 Code
764
- * @returns Promise<boolean>
765
- */
766
- AclManagementClient.prototype.deleteNamespace = function (code) {
767
- return __awaiter(this, void 0, void 0, function () {
768
- var error_2;
769
- return __generator(this, function (_a) {
770
- switch (_a.label) {
771
- case 0:
772
- _a.trys.push([0, 2, , 3]);
773
- return [4 /*yield*/, this.httpClient.request({
774
- method: 'DELETE',
775
- url: this.options.host + "/api/v2/resource-namespace/" + this.options.userPoolId + "/code/" + code
776
- })];
777
- case 1:
778
- _a.sent();
779
- return [2 /*return*/, true];
780
- case 2:
781
- error_2 = _a.sent();
782
- throw error_2;
783
- case 3: return [2 /*return*/];
784
- }
785
- });
786
- });
787
- };
788
- /**
789
- * 创建权限分组
790
- * @param code 权限分组 Code
791
- * @param name 权限分组名称
792
- * @param description 权限分组描述
793
- * @returns Promise<boolean>
794
- */
795
- AclManagementClient.prototype.createNamespace = function (code, name, description) {
796
- return __awaiter(this, void 0, void 0, function () {
797
- var data, error_3;
798
- return __generator(this, function (_a) {
799
- switch (_a.label) {
800
- case 0:
801
- _a.trys.push([0, 2, , 3]);
802
- return [4 /*yield*/, this.httpClient.request({
803
- method: 'POST',
804
- url: this.options.host + "/api/v2/resource-namespace/" + this.options.userPoolId,
805
- data: {
806
- name: name,
807
- code: code,
808
- description: description
809
- }
810
- })];
811
- case 1:
812
- data = _a.sent();
813
- return [2 /*return*/, data];
814
- case 2:
815
- error_3 = _a.sent();
816
- throw error_3;
817
- case 3: return [2 /*return*/];
818
- }
819
- });
820
- });
821
- };
822
- /**
823
- * 修改权限分组
824
- * @param code 权限分组 Code
825
- * @param name 权限分组名称
826
- * @param code 权限分组 Code
827
- * @param description 权限分组描述
828
- * @returns Promise<boolean>
829
- */
830
- AclManagementClient.prototype.updateNamespace = function (code, updates) {
831
- return __awaiter(this, void 0, void 0, function () {
832
- var data, error_4;
833
- return __generator(this, function (_a) {
834
- switch (_a.label) {
835
- case 0:
836
- _a.trys.push([0, 2, , 3]);
837
- return [4 /*yield*/, this.httpClient.request({
838
- method: 'PUT',
839
- url: this.options.host + "/api/v2/resource-namespace/" + this.options.userPoolId + "/code/" + code,
840
- data: {
841
- name: updates.name,
842
- code: updates.code,
843
- description: updates.description
844
- }
845
- })];
846
- case 1:
847
- data = _a.sent();
848
- return [2 /*return*/, data];
849
- case 2:
850
- error_4 = _a.sent();
851
- throw error_4;
852
- case 3: return [2 /*return*/];
853
- }
854
- });
855
- });
856
- };
857
- return AclManagementClient;
858
- }());
859
- export { AclManagementClient };
860
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWNsTWFuYWdlbWVudENsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvbWFuYWdlbWVudC9BY2xNYW5hZ2VtZW50Q2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBaUJBLE9BQU8sRUFDTCxLQUFLLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBUXZCLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUcxRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBcUJHO0FBQ0g7SUFNRSw2QkFDRSxPQUFnQyxFQUNoQyxhQUE0QixFQUM1QixVQUFzQixFQUN0QixhQUFzQztRQUV0QyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUN2QixJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztRQUNuQyxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztRQUM3QixJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztJQUNyQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNXLGdDQUFZLEdBQTFCLFVBQTJCLFdBQXdCO1FBQXhCLDRCQUFBLEVBQUEsZ0JBQXdCO1FBQ2pELFdBQVcsR0FBRyxXQUFXLElBQUksRUFBRSxDQUFDO1FBRWhDLElBQU0sQ0FBQyxHQUFHLDZCQUE2QixDQUFDO1FBQ3hDLElBQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFDbkIsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBRVgsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFdBQVcsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUNwQyxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FB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